基于NoneBot2的幻兽帕鲁 (Palworld) 服务器 REST API 插件
Project description
nonebot-plugin-palworld-sync
基于 Nonebot2 的幻兽帕鲁 (Palworld) 服务器 REST API 插件。
介绍
通过幻兽帕鲁官方 REST API 实现服务器状态监控与群内管理。支持群消息和游戏内互通、玩家踢出/封禁/解封、在线人数查询以及关机与存档等操作。
安装
推荐使用 nb-cli 安装:
nb plugin install nonebot-plugin-palworld-sync --upgrade
或使用包管理器
pip install nonebot-plugin-palworld-sync --upgrade
并在 pyproject.toml 或 bot.py 中加载插件:
plugins = ["nonebot_plugin_palworld_sync"]
1. 插件配置
服务端 PalDefender 扩展安装 (可选)
若需使用查包、发放道具/帕鲁、强拆据点等高级扩展功能,请先按照 PalDefender 官方指南 在您的幻兽帕鲁服务器上配置并运行该扩展。
幻兽帕鲁服务端配置 (PalWorldSettings.ini)
RESTAPIEnabled=True,RESTAPIPort=8212,AdminPassword="您的管理员密码"
Nonebot 环境变量配置 (.env)
# 基础配置 (官方 REST API)
PALWORLD_API_URL="http://<服务器IP>:8212"
PALWORLD_API_PASSWORD="您的管理员密码"
PALWORLD_QQ_GROUPS=["123456"] # 生效 QQ 群列表 (JSON 数组格式)
PALWORLD_FORWARD_GROUP_MSG=False # 是否转发 QQ 群消息到游戏内
PALWORLD_PLAYER_TRACKING=True # 是否广播玩家进出服通知
PALWORLD_PLAYER_TRACKING_INTERVAL=10 # 状态轮询间隔(秒)
# PalDefender 配置 (可选,用于查包/发物品奖励/强拆)
PALWORLD_PDAPI_ENABLED=True # 启用 API 扩展
PALWORLD_PDAPI_URL="http://<服务器IP>:17993"
PALWORLD_PDAPI_TOKEN="您的 Token"
# RCON 配置 (需服务端已配置并安装 PalDefender 以支持扩展 RCON 命令,用于 TPA 传送)
PALWORLD_RCON_HOST="<服务器IP>"
PALWORLD_RCON_PORT=25575
PALWORLD_TPA_TIMEOUT=60 # TPA 超时时间(秒)
2. 指令一览
玩家智能模糊匹配说明: 所有需要指定目标的指令(如踢出、封禁、传送、查包、发物品等),在匹配输入的目标昵称/ID时,采用精确匹配最优先,模糊匹配次之的逻辑。若检索到多名重名相似的玩家,为防止误伤,机器人将拒绝执行并列出备选重名列表供发起人细化。
帕鲁服务器命令
| 指令 | 参数要求 | 功能描述 | 权限要求 |
|---|---|---|---|
| /pw status | 无 | 查看服务器状态 (版本、FPS、在线人数、核心配置等) | 公共 |
| /pw players [目标] | [目标] 选填 (名字/SteamID) | 查看在线玩家,若指定目标则返回详细状态 | 公共 |
| /pw save | 无 | 保存当前游戏世界存盘 | 管理员 |
| /pw say <消息> | <消息> 广播消息 | 发送全局广播公告 | 管理员 |
| /pw shutdown [秒/force] [消息] | [秒/force] 选填 (关闭时间) [消息] 选填 (广播公告) |
关闭服务器 (定时关闭或强制停止) | 管理员 |
| /pw kick <目标> [原因] | <目标> 昵称/SteamID [原因] 选填 |
踢出指定玩家 | 管理员 |
| /pw ban <目标> [原因] | <目标> 昵称/SteamID [原因] 选填 |
封禁指定玩家 | 管理员 |
| /pw unban | SteamID | 解封指定玩家 | 管理员 |
PalDefender 扩展命令
| 指令 | 参数要求 | 功能描述 | 权限要求 |
|---|---|---|---|
| /pw bind <目标> | <目标> 必填 (游戏昵称/SteamID) | 绑定 QQ 与游戏角色 | 公共 |
| /pw unbind | 无 | 解除当前 QQ 绑定 | 公共 |
| /pw tpa <目标> | <目标> 必填 (昵称/QQ/@群友) | 申请传送到目标玩家身边 (TPA 交互,有效时间 60 秒) | 公共 |
| /pw tpaccept | 无 | 同意他人的 TPA 传送请求 | 公共 |
| /pw tpdeny | 无 | 拒绝他人的 TPA 传送请求 | 公共 |
| /pw items [目标] | [目标] 选填 (昵称/QQ/@群友) | 查看背包物品 (不填查看自己,需启用 PDAPI) | 公共 |
| /pw pals [目标] | [目标] 选填 (昵称/QQ/@群友) | 查看持有帕鲁详细属性、IV 值与被动词条 (需启用 PDAPI) | 公共 |
| /pw guilds | 无 | 查看服务器全部公会列表 (需启用 PDAPI) | 管理员 |
| /pw give <目标> <物品ID> [数量] | <目标> 玩家名/QQ/@群友 <物品ID> 物品ID [数量] 数量 (默认1) |
后台发放道具/武器/材料 (需启用 PDAPI) | 管理员 |
| /pw givepal <目标> <帕鲁ID> | <目标> 玩家名/QQ/@群友 <帕鲁ID> 帕鲁ID |
后台发放特定帕鲁实体 (需启用 PDAPI) | 管理员 |
| /pw deletebase <据点UUID> | <据点UUID> 据点UUID | 一键强拆销毁指定的玩家据点 (需启用 PDAPI) | 管理员 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nonebot_plugin_palworld_sync-0.1.5.tar.gz.
File metadata
- Download URL: nonebot_plugin_palworld_sync-0.1.5.tar.gz
- Upload date:
- Size: 15.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe3ba4b74f12d75d7512a76595515662077cd888cc1943cee9a70f9a1d6d1eab
|
|
| MD5 |
941a7d721fa043b3dbaab319df58389f
|
|
| BLAKE2b-256 |
ea08aba9751080b0a8d8b36ede2961d69dcc2b08abbb093be8301541858eaa6b
|
File details
Details for the file nonebot_plugin_palworld_sync-0.1.5-py3-none-any.whl.
File metadata
- Download URL: nonebot_plugin_palworld_sync-0.1.5-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b1c2a92f659bd111060d1f9b970a5cedb592fbbe7ac49747e8dd59db3c5268f
|
|
| MD5 |
f45bb006ec7ad26d7cd581e7a36fd309
|
|
| BLAKE2b-256 |
1a38cd5a1b99c6f3c54634532db36a9359479abe0f245d6e2eba05d2cca15d24
|