VelocityCommandForward

将后端命令转发到代理!

资源图片
# VelocityCommandForward **Forward commands from backend to proxy!** ## ✨ 特点 * 自定义命令。 * 自定义消息。 * 可自定义发送的命令静默(不发送消息或控制台日志)。 * 玩家和控制台可以执行代理命令(向代理发送数据包以作为玩家或控制台执行)。 ## 📥 如何安装? / 安装 / 设置 非常简单,将 Velocity 和 Paper 插件都上传到其设计的服务器(代理/后端)。 1. 关闭你的代理 (Velocity) 和后端 (Paper) 服务器。 2. 下载 Velocity 和 Paper 版本的插件。 3. 将插件文件(适用于你的服务器版本)放入 `plugins` 文件夹。 4. 启动你的服务器。 ## 💡 注意事项 * 配置仅在后端服务器上生成! ## ❓ 这个有什么用? * 我的用例非常小众,我有一个 Discord 命令可以运行 Minecraft 命令(如果玩家在线), 并且问题是 Discord 机器人运行在后端服务器上,所以我决定制作一个插件来运行代理 命令,例如 `/skin`。 * 另一个常见用例是在 Velocity 上安装 TAB 插件并需要从后端服务器将命令发送到代理服务器时,例如 `/btab scoreboard` 以切换 TAB 的计分板。虽然手动执行效果很好,但如果你使用其他插件提供的绑定到此命令的自定义物品,命令可能会执行失败。在这种情况下,简单地依赖此插件的命令可以解决 TAB 命令无法运行的问题。 ## 🕹️ 命令用法 命令名称可以在后端插件配置中更改: ```yaml custom-command: proxyexec ``` | 命令 | 描述 | 权限 | |------------------------|------------------------------------------------------------------------------------------------------|-----------------------------------| | `/proxyexec reload` | 用于重新加载插件配置。更改 `custom-command` 需要服务器重启。 | velocitycommandforward.admin (op) | | `/proxyexec ` | 将命令转发到代理。例如:`/proxyexec tab reload` 在代理上执行 `/tab reload`。 | velocitycommandforward.send | 在示例中,我将命令更改为 `proxy`,我没有将其设置为默认值,因为我担心其他插件可能已经使用了此命令。 PixPin_2025-08-11_01-42-47 ## 在控制台中执行 如果你在控制台中执行命令,你将不会获得任何输出,而是它将在代理服务器日志中显示。 为了能够将命令数据包发送到代理,必须至少有一个在线玩家(插件消息通道是后端和代理之间的工作方式)。 后端服务器。 PixPin_2025-08-11_01-43-40 代理服务器。 PixPin_2025-08-11_01-44-22 ## 📄 默认配置 更改 `custom-command` 需要服务器重启。 ```yaml # VelocityCommandForward # 用于将命令转发到代理的命令。 # 更改需要重启服务器才能生效。 custom-command: proxyexec # 你可以在这里指定不会发送日志和消息的根命令。 filtered-commands: - example_command # {command} = 发送者发送的命令 # {sender} = 发送命令的玩家 # 如果设置为 '', 则不会发送消息。 messages: reload: '&aPlugin 消息和过滤器已重新加载!' command-sent-as-player: '&2命令已发送到代理 &7=> &a/{command}' command-sent-as-console: '&2命令已作为控制台发送到代理 &7=> &a/{command}' no-online-player: '&c必须至少有 1 名在线玩家才能执行代理控制台命令!' console-log: '[{sender}] 向代理发送命令数据包 => /{command}' velocity-log: '[{sender}] 收到代理命令数据包 => /{command}' ``` ## ✅ 要求 * Velocity 插件是用 `Java 17` 构建的,Paper 插件是 `Java 21`。 * 与版本 1.20.6 及更高版本兼容。 由于此插件使用 Brigadier(在 1.20.6 中添加)来构建命令,因此运行较低版本的服务器将出现错误。