搭建MCDR原版Fabric服务端

发布于 2021-05-23  938 次阅读


搭建MCDR原版Fabric服务端

MCDR

MCDReforged(以下简称 MCDR)是一个可以在完全不对 Minecraft 服务端进行修改的情况下,通过可自定义的插件系统,提供对服务端的管理能力的工具,由@Fallen_Breath开发,使用Python作为运行环境。

依赖

MCDR 依赖 python3 运行环境。请确保你的 python 版本大于 3.6。

安装

MCDR 在 pypi 中可用。它可以通过 pip 命令安装:

pip install mcdreforged

启动

假设你想在 mcdr_server 文件夹中运行 MCDR,那么你可以运行以下指令:

cd mcdr_server
python -m mcdreforged

在首次启动时,MCDR 会生成默认的配置文件、权限文件,以及一些默认的文件夹。此时的路径结构将会如下所示:

mcdr_server/
 ├─ config/
 ├─ logs/
 │   └─ MCDR.log
 ├─ plugins/
 ├─ server/
 ├─ config.yml
 └─ permission.yml

现在,把你的服务端文件放入服务端文件夹里(默认为 server 文件夹),然后修改配置文件 config.yml 。完成后,你可以再次启动 MCDR,这次它将正确地启动并操控服务器运行了。

python -m mcdreforged

更新

在 pypi 的帮助下,MCDR 可以轻松地通过这个命令升级:

pip install mcdreforged --upgrade

从源码启动

除了借助 pypi 进行安装,你还可以直接从源代码执行 MCDR。

在 Github 发布页面 中下载 MCDR 源代码,并解压到你的服务器文件夹,解压后结构目录如下:

mcdr_server/
 ├─ mcdreforged/
 │   └─ ..
 ├─ MCDReforged.py
 ├─ config/
 ├─ logs/
 │   └─ MCDR.log
 ├─ plugins/
 ├─ server/
 ├─ config.yml
 └─ permission.yml

然后就可以使用和同上所述的指令启动 MCDR:

python -m mcdreforged

当然你也可以通过运行 MCDReforged.py 来启动 MCDR:

python MCDReforged.py

运行 MCDReforged.py 同样适用于从 pypi 安装的 MCDR。

对于 Windows 用户,如果你已将 *.py 文件的打开方式绑定到了一个正确的 Python 解释器,那么你也可以双击 MCDReforged.py 来启动 MCDR。

配置

MCDR 的配置文件是 config.yml

在启动时,MCDR 将尝试加载配置文件,并将缺失的选项(如果有)添加到你的配置文件末尾。如果配置文件不存在,MCDR 则将生成默认配置文件并退出。

打开config.yml文件,里面有所有我们需要调整的MCDR参数

有以下配置项

# MCDR 用于输出信息的语言。
# 可用选项:en_us , zh_cn
language: en_us

# 服务端的工作目录。你应该将所有与服务器相关的文件放入此目录。
# 默认值:server
working_directory: server

# 启动服务器的控制台命令。
start_command: java -Xms1G -Xmx2G -jar minecraft_server.jar nogui

# 处理器确定解析服务器标准输出文本的特定方法,并使用正确的命令控制服务端。
# vanilla_handler用于 原版 / Carpet / Fabric 服务端
# beta18_handler用于 beta 1.8 版本的原版服务端。可能适用于其它 beta 版本的服务端,但只在 beta 1.8.1 版本中进行了测试
# bukkit_handler用于 1.14 版本以下的 Bukkit / Spigot 服务器
# bukkit14_handler用于 1.14 或以上版本的 Bukkit / Spigot 服务端。
# forge_handler用于 Forge 服务端
# cat_server_handler适用于 CatServer 服务端
# bungeecord_handler用于 BungeeCord 服务端。请在启动命令的 -jar 参数之前添加 -Djline.terminal=jline.UnsupportedTerminal 参数以支持 MCDR。详见 此处 。
# waterfall_handler用于 WaterFall 服务端。
# basic_handler不进行任何分析并返回原始文本的处理器。 除非你想使用 MCDR 启动非 Minecraft 相关的服务器,否则无需使用。
handler: vanilla_handler

# 用于解码服务端标准输出流的文本的编码格式。
# 留空以让 MCDR 自动检测编码格式。如果它不起作用(例如游戏中出现了乱码),则需要根据你的操作系统和语言手动进行指定。
encoding:
decoding:

# MCDR 搜索将要加载插件的目录列表。
plugin_directories:
- plugins

# rcon 设置。若启用 rcon,则在 Minecraft rcon 服务端启动后,MCDR将自动连接到 rcon 服务端。这样插件就可以通过 rcon 向服务端发送命令。
rcon:
  enable: false    # rcon 开关
  address: 127.0.0.1    # 用于 rcon 连接的地址。
  port: 25575    # 用于 rcon 连接的端口。
  password: password    # 用于 rcon 连接的密码。

# 如果设置为 true,MCDR将会每隔24小时执行一次更新检测。
check_update: true

当 MCDR 运行时,你可以使用 !!MCDR reload config` 命令(或其缩写 `!!MCDR r cfg)来重载配置文件。

插件

首先你需要MCDR插件库中文)下载插件,文件应该是一个xxx.py文件,有的插件会带有一个xxx.json的配置文件

将xxx.py文件放入plugins文件夹,将xxx.json放入config文件夹即可

如果你的服务器正在运行,可以使用!!MCDR reload plugin来重载插件


Satxm,一个正在肝地球Online的人。