资讯动态

用CommandAPI零代码命令转换:让第三方插件命令秒变/execute兼容

发布时间:2026/8/23 12:36:44 来源:尧图企业网站定制
用CommandAPI零代码命令转换让第三方插件命令秒变/execute兼容【免费下载链接】CommandAPIA Bukkit/Spigot API for the command UI introduced in Minecraft 1.13项目地址: https://gitcode.com/gh_mirrors/co/CommandAPICommandAPI是一款免费开源的 Bukkit/Spigot 插件命令 API它能使用 Minecraft 1.13 引入的新版命令 UI。其中最实用的亮点是内置的零代码命令转换器——只需几行 YAML 配置就能把 Essentials、WorldEdit 等第三方插件的命令改造成/execute兼容命令无需编写任何 Java 代码。一、为什么需要 CommandAPI 命令转换器在 Minecraft 1.13 之后原版/execute命令、命令方块和数据包函数只能调用注册在原生命令树中的命令。而绝大多数 Bukkit 插件的命令仍通过plugin.yml声明走的是旧版 Bukkit 命令系统——它们无法被/execute as ... run调用也无法放进数据包函数里。CommandAPI 的命令转换器Command Converter正是为此而生它在服务器启动时读取其他插件plugin.yml中的命令声明自动注册一份功能等价的 CommandAPI 命令从而让老命令秒变/execute兼容。核心转换逻辑位于 Converter.java转换后的命令会原样转发给原插件执行行为完全一致。二、两种转换方式简单转换 vs 高级转换 转换器提供两档配置强度按需选择1. 简单转换整个插件一键接入把插件名写入plugins-to-convert列表不指定具体命令时该插件plugin.yml中声明的全部命令都会被转换。插件的别名aliases、描述、权限节点也会被自动保留无需你操心。2. 高级转换自定义参数结构若你希望转换后的命令拥有参数提示、范围校验等新版命令 UI 体验可以用高级转换语法描述参数。解析器 AdvancedConverter.java 支持三类写法语法示例含义参数名[类型]target[minecraft:game_profile]指定参数类型玩家、位置、附魔等 50 种参数名[范围]speed[0..10]数值范围限制(A\|B\|C)(walk\|fly)字面量分支相当于子命令官方 README 中的经典示例——把 Essentials 的速度命令转换成带校验的/execute命令plugins-to-convert: - Essentials: - speed speed[0..10] - speed target[minecraft:game_profile] - speed (walk|fly) speed[0..10] - speed (walk|fly) speed[0..10] target[minecraft:game_profile]三、最快配置方法3 步完成命令转换⚡ 整个过程不写一行代码全程只需编辑插件配置文件第 1 步下载 CommandAPI 的 Paper 或 Spigot 插件包放入服务器plugins/文件夹并重启。第 2 步打开生成的plugins/CommandAPI/config.yml找到命令转换配置段默认模板见 config.yml# 转换指定插件的命令插件名后记得加冒号 plugins-to-convert: - Essentials: # 转换不在 plugin.yml 中声明的命令如 WorldEdit 的 //set other-commands-to-convert: [] # 遇到插件兼容问题时把插件名加到这里跳过发送者代理 skip-sender-proxy: []第 3 步重启服务器。控制台会打印Converting commands for Essentials:之类的日志确认转换成功即可。⚠️ 易错提醒插件名后面必须加冒号:否则插件主类 CommandAPIMain.java 会在控制台提示 Did you miss a colon (:) after a plugin name? 并跳过转换。四、转换后的命令能做什么✅ 转换完成后你的插件命令立即获得原版命令的全部能力/execute调用/execute as a run essentials:speed 10等组合操作成为可能命令方块 数据包函数老命令可以写进函数脚本随数据包分发参数提示与校验高级转换的命令在聊天框输入时自动弹出提示输入越界数值会直接报错而不是静默失败值得一提的是转换命令通过NativeProxyCommandSender机制执行当命令经由/execute as 某实体运行时Converter.java 会把实体的位置与原玩家的权限合并成一个代理发送者传给原插件保证speed这类需要真实玩家的命令依然正确生效。五、常见问题清单Q命令转换需要修改第三方插件吗不需要。转换完全在服务器端完成第三方插件无需感知 CommandAPI 的存在。Q//set这类没写在plugin.yml里的命令怎么办放进other-commands-to-convert列表即可高级语法同样适用。Q转换后个别插件报错将该插件名加入skip-sender-proxy列表可跳过发送者代理改用原始调用者多数兼容性问题由此解决。Q支持哪些版本覆盖 Minecraft 1.13 至 26.1最新版 CommandAPI 支持 1.20 ~ 26.11.13–1.19 请使用 8.x 旧版本版本对照表见项目 README.md。只需一份 YAML 配置你的服务器命令体系就完成了新老世代的无缝升级——这正是 CommandAPI 零代码命令转换的魅力所在。【免费下载链接】CommandAPIA Bukkit/Spigot API for the command UI introduced in Minecraft 1.13项目地址: https://gitcode.com/gh_mirrors/co/CommandAPI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价