Skip to content
Public template

About

mudcore框架基础Template,新MUD开发可直接使用此模版创建项目。

Topics

Resources

Stars

6 stars

Watchers

1 watching

Forks

Latest commit

 

History

30 Commits

Folders and files

Repository files navigation

MUDCORE 最小启动模板

本项目提供基于 MUDCORE 框架新建 MUD 游戏的最小可启动模板。框架使用说明文档:https://bbs.mud.ren/threads/66

项目安装

点击项目上的 Use this template 生成项目到自己的仓库,然后使用以下指令clone代码:

# 下载代码
git clone --recurse-submodules <你的项目地址>

如果你已经克隆了项目但忘记了 --recurse-submodules,那么可以在项目根目录中运行以下指令更新子模块:

# 更新子模块
git submodule update --init --recursive

如果需要保持框架为最新版,请在项目根目录中运行以下指令:

# 更新框架
git submodule update --remote

首次部署

对外开放注册前,请由运维先完成管理员账号的注册和密码设置,避免管理员 ID 被他人抢先注册。管理员 ID 由框架的 WIZARD 宏指定,模板沿用默认值 mudren;如果项目调整了该宏,请使用调整后的 ID 完成初始化。

启动游戏

模板仅引入 mudcore 框架子模块,默认通过 Telnet 端口 3166 连接。项目使用 config.cfg 作为精简运行时配置。如需了解更多配置项,可参考框架中的 mudcore/config.example.ini 和 mudcore/config.mini.ini。

Linux

build.sh 用于在 Ubuntu/Debian 系统上自动安装依赖、下载或更新 FluffOS 并编译驱动。请以普通用户执行,安装依赖和系统驱动时会使用 sudo;也支持直接由 root 执行。

# 编译驱动
bash build.sh

# 前台启动游戏,按 Ctrl+C 停止
bash run.sh

构建脚本保留 fluffos/build/ 以便增量编译,生成的驱动位于 fluffos/build/bin/driver,并安装到 /usr/local/games/driver。每次构建会通过 git checkout -- . 恢复 FluffOS 已跟踪文件,再执行 git pull --ff-only 更新源码;请勿在该目录中保存需要保留的驱动修改。

默认使用全部 CPU 核心编译,内存较少时可以限制线程数:

BUILD_JOBS=2 bash build.sh

run.sh 按顺序查找 fluffos/build/bin/driver、项目根目录的 driver、PATH 中的 driver 和 /usr/local/games/driver,自动切换到项目根目录启动。两个脚本都可以通过完整路径从其他目录调用;run.sh 后的参数会原样传给驱动,例如 bash run.sh -d。

Windows

推荐从 FluffOS 官方仓库 或 MUD.REN 社区 下载已编译的 Windows 驱动。将驱动解压到项目根目录,在该目录打开 PowerShell 并运行:

.\driver.exe .\config.cfg

Windows 使用预编译驱动即可,无需执行 Linux 构建脚本。

目录说明

目录 说明
.vscode Visual Studio Code 配置目录,方便开发调试
data 游戏存档目录,包括游戏配置文件示例.env.example
include 游戏代码头文件目录
log 游戏日志目录
mudcore MUDCORE框架子模块目录,请勿修改其中代码
system 游戏系统文件目录

其中 mudcore 目录为引入的框架子模块,不要改动其中的任何代码,使用帮助见mudcore/README.md,其它游戏目录为开发者自己定义的,可根据需要自由调整。

项目其它目录结构建议配置:

目录 说明
config 游戏各种特色设置配置文件目录,注意不得保存敏感数据
cmds 游戏动作指令目录
daemons 游戏守护进程目录,推荐放在system目录下
docs 游戏文档文件目录
inherit 必须继承使用的功能模块文件目录
obj 实体对象目录,继承标准对象使用
std 标准对象目录,具体对象继承使用
verbs 游戏谓词指令目录
world 游戏世界环境目录

关于环境配置

因为推荐使用git管理代码,有一些核心配置(如数据库密码)为了安全不建议直接写在代码中,MUDCORE 推荐的做法是在/data/目录中新建一个.env文件,重要配置在这里定义,在游戏中使用env()函数读取或写入。此文件不会提交到仓库中,具体可参考.env.example文件。

About

mudcore框架基础Template,新MUD开发可直接使用此模版创建项目。

Topics

Resources

Stars

6 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages