Minecraft服务器进程间通信库。
mcipc的Python项目详细描述
MCIPC
一个minecraft进程间通信api,实现rcon和查询协议。
用法
查询协议
查询
protcol用于查询minecraft服务器的服务器信息。
minecraft查询协议有两种查询模式:基本统计信息和完整统计信息
基本统计
要从minecraft服务器获取基本统计信息,它必须启用查询
协议。
您可以通过在minecraft服务器的server.properties
文件中设置enable query=true
在minecraft服务器上启用查询协议。
要指定偏差端口,可以在同一文件中设置query.port=<;port>;
。
以下示例假设服务器在127.0.0.1
和默认查询端口25565
上运行:
from mcipc.query import Client
with Client('127.0.0.1', 25565) as client:
basic_stats = client.basic_stats
print(basic_stats)
basic_stats
的类型是具有以下属性的命名元组:
类型
:数据包类型(类型
,协议信息)。会话id
:查询的会话id(int
,协议信息)。motd
:服务器当天的消息(str
)。游戏类型
:游戏类型(str
)。映射
:当前映射(str
)。玩家数量
:在线玩家数量(int
)。最大玩家数
:最大允许玩家数(int
)。主机端口
:服务器端口(int
)。主机IP
:服务器的IP地址(ip address.ipv4address
)。
完整状态
要检索服务器的完整状态,同样的前提条件适用。
from mcipc.query import Client
with Client('127.0.0.1', 25565) as client:
full_stats = client.full_stats
print(full_stats)
full_stats
的类型是具有以下属性的命名元组:
类型
:数据包类型(类型
,协议信息)。会话id
:查询的会话id(int
,协议信息)。主机名
:服务器当天的消息(str
,与basicstats.motd相同)。游戏类型
:游戏类型(str
)。游戏ID
:游戏ID(str
)。版本
:游戏版本(str
)。插件
:使用的插件(dict
)。映射
:当前映射(str
)。玩家数量
:在线玩家数量(int
)。最大玩家数
:最大允许玩家数(int
)。主机端口
:服务器端口(int
)。主机IP
:服务器的IP地址(ip address.ipv4address
)。播放器
:在线播放器的名称(tuple
ofstr
)。
RCON协议
rcon
协议用于远程控制minecraft服务器,即执行
在minecraft服务器上执行命令并接收相应的结果。
要在minecraft服务器上启用rcon
,必须在
服务器的server.properties
文件。
此外,您需要通过设置rcon.port=<;port>;
在同一个文件中设置rcon.password=<;password>;
的密码。
下面的示例假设服务器运行在127.0.0.1
和rcon端口5000
上,使用密码'mysecretpassword'
:
from mcipc.rcon import Client
with Client('127.0.0.1', 5000) as client:
client.login('mysecretpassword') # Perform initial login.
seed = client.seed # Get the server's seed.
players = client.players # Get the server's players info.
mansion = client.locate('Mansion') # Get the next mansion's location.
print(seed)
print(players)
print(mansion)
seed
的类型是从int
派生的seed
,可以像后者一样使用。玩家的类型是
玩家,命名元组:
在线
:在线玩家的数量(int
)。max
:允许的最大玩家数量(int
)。名称
:在线播放器的名称(元组
的str
)。
大厦的类型是
位置,它描述下一个定位对象的x-y-z位置。
x
:x坐标(int
)。y
:y坐标(int
或none
)。z
:z坐标(int
)。
提示:一个位置的y分量可以是none
,它表示特殊的minectaft向量分量'~'
脚本
这个库还提供了两个脚本作为概念证明。
rconclt
:一个rcon
客户端。rcon shell
:一个交互式的rcon
shell。
rconclt
脚本rconclt是一个rcon客户端脚本,用于使用shell与minecraft服务器通信。
调用预定义的服务器配置(请参见下文):
rconclt my_server <command> [<args>...] [options]
配置
版权所有(c)2018 Richard Neumann<;Richard Dash Neumann Period de>; MCIPC是免费软件:您可以重新分发和/或修改它
根据由
自由软件基金会,或者许可证的第3版,或者
(由您选择)任何更高版本。 MCIPC的发布是希望它能有用,
但没有任何保证;甚至没有
适销性为特定目的的适销性或适合性见
GNU通用公共许可证了解更多详细信息。 你应该收到GNU通用公共许可证的副本
以及MCIPC。如果没有,请参见http://www.gnu.org/licenses/" rel="nofollow">http://www.gnu.org/licenses/ Minecraft内容和材料是
Mojang及其许可人。保留所有权利。
此程序是免费软件,不隶属于Mojang。rconclt
可以在/etc/mcipc.d/rcon.conf中配置
[my_server]
host = 127.0.0.1
port = 5000
passwd = mysecretpassword
passwd
条目是可选的。许可证
法律
推荐PyPI第三方库