我的世界RCON

作为一名mc腐竹, 管理好服务器也是一件头疼的事
在搭建服务器时必定会接触的配置文件server.properties
有着这么一个配置项enable-rcon=false #是否开启rcon监听
通过各种百科都可以知道: RCON是一种允许服务器管理员远程执行Minecraft命令的协议。在1.9pre4中引入,它基本上是Minecraft的Source RCON协议的实现。
于是, 我们为什么不用机器人在群里发送相应指令来管理服务器呢?
这也省下了我们去登陆后台的时间(就几秒钟)
说整就整, 打开服务器配置文件, 将
enable-rcon=false改为enable-rcon=true
添加(/修改)配置项rcon.port=[监听端口]
添加(/修改)配置项rcon.password=[rcon密码]

1.打开易语言(问就是方便), 新建Windows易语言模块, 引用精易模块

1.1

.版本 2
.支持库 sock
.支持库 eAPI

.程序集 程序集1
.程序集变量 客户, 网络客户端

.子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码


_临时子程序 ()  ' 在初始化代码执行完毕后调用测试代码
返回 (0)  ' 可以根据您的需要返回任意数值

.子程序 _临时子程序

' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。


.子程序 RCON_连接, 整数型, 公开, 返回值: 1成功   -1密码错误   -2无连接   -3意外错误
.参数 ip, 文本型
.参数 port, 整数型
.参数 psw, 文本型
.局部变量 post, 字节集
.局部变量 back, 字节集
.局部变量 temp_bool, 逻辑型

.判断开始 (客户.连接 (取IP地址 (ip), port))
    post = 到字节集 (到字节 (到整数 (取文本长度 (psw) + 9))) + { 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0 } + 到字节集 (psw) + { 0 }

    .判断开始 (客户.发送 (post, 0))
        back = 客户.接收 (0, temp_bool)
        .判断开始 (temp_bool)
            .判断开始 (back = { 10, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0 })
                返回 (1)
            .判断 (back = { 10, 0, 0, 0, 255, 255, 255, 255, 2, 0, 0, 0, 0, 0 })
                返回 (-1)
            .默认
                返回 (-3)
            .判断结束

        .默认
            返回 (-3)
        .判断结束

    .默认
        返回 (-2)
    .判断结束

.默认
    返回 (-2)
.判断结束


.子程序 RCON_发送, 文本型, 公开, 成功返回 命令执行后,服务器控制台返回的消息; 失败返回 null
.参数 ins, 文本型

.如果真 (取文本左边 (ins, 1) = “/” 或 取文本左边 (ins, 1) = “\”)
    ins = 取文本右边 (ins, 取文本长度 (ins) - 1)
.如果真结束
ins = 编码_gb2312到utf8 (ins)
客户.发送 (到字节集 (到字节 (到整数 (取文本长度 (ins)) + 9)) + { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0 } + 到字节集 (ins) + { 0 }, 0)
返回 (RCON_接收 ())


.子程序 RCON_接收, 文本型, , 请勿直接调用
.局部变量 back, 字节集
.局部变量 temp_bool, 逻辑型
.局部变量 temp_byte, 字节集, , "0"
.局部变量 temp_str, 文本型

back = 客户.接收 (0, temp_bool)
.判断开始 (temp_bool)
    temp_byte = 分割字节集 (back, { 0 }, )
    temp_str = 编码_utf8到gb2312 (到文本 (temp_byte [13 - 取字节集长度 (temp_byte [1])]))
    返回 (temp_str)
.默认
    返回 (“null”)
.判断结束


.子程序 RCON_断开, , 公开, 断开与RCON的连接

客户.断开 ()

1.2编译为模块

2.新建Windows窗口程序(/Windows动态链接库), 引用1.2编译的模块

2.1

以上便是mc rcon的食用方法了, 模块部分代码来自互联网, 并做部分修改编译成了现在的模块, 侵删
模块下载地址: https://f.hloli.cn/mc.rcon.re.e
想用机器人一键管理? 来康康NaNBot吧: https://d.nanbot.net/
按讚
  1. 自動引用通知: 我的世界RCON - 鱼木优品
  2. Maaii 辉小月表示:
    Google Chrome Windows 10
    已知问题: 多个指令发送过快/同时发送可能引起服务器的崩溃

發佈留言

電子郵件地址不會被公開。必填項已用 * 標註