故障排除

遇到问题?这里有一些常见的问题和解决方案

MCDR 无法启动

  • mcdreforged 不是内部或外部命令
    • 若你通过 pipx 安装了 MCDR,确保 pipx 应用程序目录在你的 PATH 中

    • 若你通过 pip 安装了 MCDR,尝试显式指定 Python 解释器来启动 MCDR:python -m mcdreforged,以避免出现使用了错误的 Python 解释器的情况

    • 若你通过 pip 全局安装了 MCDR,确保 pip 已安装脚本的目录在你的 PATH 中

    • 若你通过 pip 在 venv 中安装了 MCDR,确保你激活了 venv

    • 如果你通过系统包管理器安装了 MCDR... 不要通过系统包管理器安装 MCDR

  • Python 抛出错误
    • 请确保你正确地安装了 MCDR。不要从源码启动 MCDR

    • 尝试重新安装 MCDR,看看问题是否依然存在

    • 若你通过 pip 在 venv 中安装了 MCDR,确保你激活了 venv

    • 使用 which mcdreforged (Windows 下使用 where mcdreforged),看看调用了哪个可执行文件

服务器无法启动

  • 检查你的启动命令

  • 检查 Java 是否已安装并添加到 PATH 中

  • 尝试使用你配置的命令直接启动服务端

  • 如果你将启动命令指向批处理或 shell 脚本,尝试直接使用实际命令而不是脚本

详见 start_command 一节

乱码 / UnicodeDecodeError

这通常是控制台编解码异常引起的

MCDR 默认使用 UTF-8 编码和解码,不妨尝试在服务端相关的所有地方都使用 UTF-8。参见 encoding, decoding 一节

命令不工作

  • 所有命令在游戏内都不响应,但控制台里正常

  • 某些命令对特定玩家执行不正确

    MCDR 通过监听服务端控制台输出来处理命令,请确保你使用了正确的 服务端处理器

    你的服务端可能意外地与处理器不兼容:

    也许,你的服务端比较特别,内置处理器均不兼容

    也许,你的服务端输出与默认状态不同。例如,如果你允许非 Mojang 命名规则([A-Za-z0-9_]{3,16})的玩家名,处理器将无法识别。例如:

    [09:00:00] [Server thread/INFO]: <Steve.the.Warrior> Hello
    [09:00:00] [Server thread/INFO]: <史蒂夫> hello
    
    [09:00:00] [Server thread/INFO]: <Steve> Hello
    

    也许,你的服务端输出被插件或模组(例如:玩家称号/职业,更好的控制台)修改了,导致处理器无法识别。禁用所有插件和模组,看看问题是否解决。例如:

    [09:00:00] [Server thread/INFO]: <[Warrior]Steve> Hello
    (09:00:00) INFO | Steve: hello
    
    [09:00:00] [Server thread/INFO]: <Steve> Hello
    

    如果你的服务端存在上述问题之一,你可能需要 自定义服务端处理器

  • 某些插件命令在游戏和控制台中都无法使用

  • 某些插件命令在所有条件下都执行不正确

    检查插件是否正确启用和加载。检查日志,看看是否有与插件相关的错误或警告,若有则请仔细阅读相关输出

    查看插件的 README 或文档,看看它是否有任何特殊要求。有些插件可能需要额外权限或配置。检查并确保插件配置文件已被正确填写

    有些插件可能与其它插件冲突。尝试禁用其它插件,看看问题是否解决

    如果问题仍然存在,尝试向插件的作者或社区报告

使用 MCSManager 运行

警告

这部分内容可能过时。若你遇到任何问题,不要向 MCDR 报告

更多信息,请与 MCSManager 社区联系:Github 仓库MCSManager 文档

MCDR 并未专门适配 MCSManager

不过,如果你始终使用 UTF-8,并在 MCSManager 中启用 仿真终端,MCDR 应该能正常工作,并具有完整功能

若你关闭了 仿真终端,请将 advanced_console 设置为 false

联系我们

如果以上方案无法解决你的问题,请联系 我们可爱的社区

还请注意,在提问或报告问题之前,请:

  • 先尝试自己搜索并研究

  • 用一个简短的句子概括你的问题

  • 帮助他人重现问题:

    • 构建最小复现示例

    • 提供完整的日志和环境,不要提供非必要的图片。若日志太长,请将其作为附件发送,或使用 mclo.gs / Pastebin 等服务来提供。记得清理日志中的敏感信息

  • 提问之前校对你写的问题描述,确保语意清晰无歧义

  • 提问之后,积极回应他人反馈

参见

Stack Overflow: 如何正确地提问?