本插件还旨在具有更高的可定制性,并且(主要上)是开箱即用的解决方案。 ## 功能 - **管理工具**: 游戏模式管理、传送、时间/天气控制 - **经济系统**: 余额管理、付款、经济管理(需要 Vault) - **版主工具**: 封禁/静音系统、命令监视、隐身、清除聊天 - **实用工具**: 修复工具、垃圾桶、治疗、喂食 - **玩家实用工具**: 家园、传送点、套件、移动工作台访问 - **传送系统**: TPA 请求、回退命令、生成点管理 - **通讯**: 私人消息、团队聊天、广播系统 - **可点击的告示牌**: 用于各种功能的交互式告示牌 - **多语言支持**: 每位用户的语言支持,默认为玩家的区域设置(仅限英语、德语和斯洛文尼亚语) ## 要求 - **Minecraft 版本**: 1.21+ - **服务器软件**: Paper(或 Paper 衍生版本) - **Java 版本**: 21+ - **可选依赖**: - Vault (为其他插件提供通用的经济 API) - NBTAPI (用于加载/保存离线玩家数据) ## 安装 1. 下载最新的 ServerSystem JAR 文件 2. 将其放在服务器的 `plugins` 文件夹中 3. 重启服务器 4. 使用生成的配置文件配置插件 5. 重新加载或重启服务器以应用更改 ## 配置 插件生成了几个配置文件: - `config.yml` - 包含对于太小或过于通用的部分的配置 - `commands.yml` - 命令设置和别名 - `permissions.yml` - 权限定义 - `economy.yml` - 经济相关设置 - `moderation.yml` - 版主(封禁/静音)相关设置 - `messages/` - 不同区域设置的语言文件 ## 命令 (xy) = 可选参数
\[xy] = 必需参数
### 管理命令
管理命令
| 命令 | 别名 | 描述 | 权限 | |-----------------------------------|----------------|--------------------------------|------------------------------------------| | `/gamemode [模式] (玩家)` | `/gm` | 更改游戏模式 | `serversystem.admin.command.gamemode.use` | | `/gms (玩家)` | - | 设置生存模式 | `serversystem.admin.command.gamemode.survival` | | `/gmc (玩家)` | - | 设置创造模式 | `serversystem.admin.command.gamemode.creative` | | `/gma (玩家)` | - | 设置冒险模式 | `serversystem.admin.command.gamemode.adventure` | | `/gmsp (玩家)` | - | 设置旁观者模式 | `serversystem.admin.command.gamemode.spectator` | | `/time [时间] (世界)` | - | 设置世界时间 | `serversystem.admin.command.time.use` | | `/day (世界)` | - | 设置时间为白天 | `serversystem.admin.command.time.use` | | `/night (世界)` | - | 设置时间为夜晚 | `serversystem.admin.command.time.use` | | `/noon (世界)` | - | 设置时间为中午 | `serversystem.admin.command.time.use` | | `/midnight (世界)` | - | 设置时间为午夜 | `serversystem.admin.command.time.use` | | `/weather [类型] (世界)` | - | 更改天气 | `serversystem.admin.command.weather.use` | | `/sun (世界)` | - | 设置晴朗天气 | `serversystem.admin.command.weather.use` | | `/rain (世界)` | - | 设置下雨天气 | `serversystem.admin.command.weather.use` | | `/storm (世界)` | - | 设置雷暴天气 | `serversystem.admin.command.weather.use` | | `/sudo [玩家] [命令]` | - | 以其他玩家身份执行命令 | `serversystem.admin.command.sudo.use` | | `/unlimited (玩家)` | - | 切换无限物品 | `serversystem.admin.command.unlimited.use` | | `/speed [1-10] (玩家)` | - | 设置玩家速度 | `serversystem.admin.command.speed.use` | | `/flyspeed [1-10] (玩家)` | `/speedfly` | 设置飞行速度 | `serversystem.admin.command.speed.use` | | `/walkspeed [1-10] (玩家)` | `/speedwalk` | 设置行走速度 | `serversystem.admin.command.speed.use` | | `/lightning (玩家) (可见)` | `/thor`, `/smite` | 在目标身上击中闪电 | `serversystem.admin.command.lightning.use` |传送命令
| 命令 | 别名 | 描述 | 权限 | |-----------------------------------|---------|-----------------------------------|-----------------------------------------------| | `/teleport [玩家] (目标)` | `/tp` | 传送到玩家或地点 | `serversystem.support.command.teleport.use` | | `/tppos [x] [y] [z] (世界) (玩家)` | - | 传送到坐标 | `serversystem.support.command.teleportposition.use` | | `/tphere [玩家]` | - | 将玩家传送到你这里 | `serversystem.support.command.teleporthere.use` | | `/tpall (世界)` | - | 将所有玩家传送到你这里 | `serversystem.admin.command.teleportall.use` | | `/tpa [玩家]` | - | 请求传送到玩家 | `serversystem.command.teleportask.use` | | `/tpahere [玩家]` | - | 请求玩家传送到你这里 | `serversystem.command.teleporthereask.use` | | `/tpaccept` | - | 接受传送请求 | `serversystem.command.teleportaccept.use` | | `/tpdeny` | - | 拒绝传送请求 | `serversystem.command.teleportdeny.use` | | `/tptoggle (玩家)` | - | 切换传送请求 | `serversystem.command.teleporttoggle.use` | | `/back` | - | 返回上一个位置 | `serversystem.command.back.use` | | `/offlinetp [玩家]` | `/otp` | 传送到离线玩家的位置 | `serversystem.moderation.command.offlineteleport.use` | | `/offlinetphere [玩家]` | `/otphere`| 将离线玩家传送到你这里 | `serversystem.moderation.command.offlineteleporthere.use` |经济命令
| 命令 | 别名 | 描述 | 权限 | |-----------------------------------|----------|--------------|------------------------------------------| | `/balance (玩家)` | `/money` | 检查余额 | `serversystem.command.balance.use` | | `/balancetop` | `/baltop`| 查看余额排行榜 | `serversystem.command.baltop.use` | | `/pay [玩家] [金额]` | - | 给玩家发送金钱 | `serversystem.command.pay.use` | | `/economy [设置/给予/取出] [玩家] [金额]` | `/eco` | 管理玩家经济 | `serversystem.admin.command.economy.use` |版主命令
| 命令 | 别名 | 描述 | 权限 | |-------------------------------|-----------|-------------------------|--------------------------------------------| | `/ban [玩家] (原因)` | - | 封禁玩家 | `serversystem.moderation.ban.use` | | `/unban [玩家]` | `/pardon` | 解封玩家 | `serversystem.moderation.ban.remove` | | `/mute [玩家] (时间) (原因)` | - | 静音玩家 | `serversystem.moderation.mute.use` | | `/unmute [玩家]` | - | 解静音玩家 | `serversystem.moderation.mute.remove` | | `/shadowmute [玩家]` | - | 静音玩家 (阴影) | `serversystem.moderation.mute.shadow` | | `/vanish (玩家)` | `/v` | 切换隐身模式 | `serversystem.moderation.command.vanish.use` | | `/commandspy (玩家)` | - | 切换命令监视 | `serversystem.moderation.command.commandspy.use` | | `/clearchat` | `/cc` | 清除所有玩家的聊天 | `serversystem.moderation.command.clearchat.use` | | `/broadcast [信息]` | `/bc` | 向服务器广播信息 | `serversystem.moderation.command.broadcast.use` | | `/clearinventory (玩家)` | `/clear`, `/ci` | 清空玩家物品栏 | `serversystem.moderation.command.clearinventory.use` | | `/ip [玩家]` | - | 查看玩家 IP 地址 | `serversystem.moderation.command.ip.use` | | `/socialspy (玩家)` | - | 切换社交监视 | `serversystem.moderation.command.socialspy.use` |实用工具命令
| 命令 | 别名 | 描述 | 权限 | |----------------------------|------------|------------------------|-----------------------------------------------| | `/workbench` | `/craft`, `/wb` | 打开工作台 | `serversystem.command.workbench.use` | | `/anvil` | - | 打开铁砧界面 | `serversystem.command.anvil.use` | | `/smithing` | - | 打开锻造台 | `serversystem.command.smithing.use` | | `/loom` | - | 打开织布机界面 | `serversystem.command.loom.use` | | `/grindstone` | - | 打开磨石界面 | `serversystem.command.grindstone.use` | | `/cartography` | - | 打开地图制作桌 | `serversystem.command.cartography.use` | | `/stonecutter` | - | 打开石材切割机界面 | `serversystem.command.stonecutter.use` | | `/disposal` | `/trash`, `/trashcan` | 打开处理界面 | `serversystem.command.disposal.use` | | `/enderchest (玩家)` | `/ec` | 打开末影箱 | `serversystem.command.enderchest.use` | | `/offlineenderchest [玩家]` | `/oenderchest`, `/oec` | 打开离线玩家的末影箱 | `serversystem.admin.command.offlineenderchest.use` | | `/invsee [玩家]` | - | 查看玩家物品栏 | `serversystem.command.inventorysee.use` | | `/offlineinvsee [玩家]` | `/oinvsee` | 查看离线玩家物品栏 | `serversystem.admin.command.offlineinventorysee.use` | | `/smelt` | - | 熔炼物品 | `serversystem.command.smelt.use` | | `/stack` | - | 堆叠物品 | `serversystem.admin.command.stack.use` | | `/repair (全部)` | - | 修复物品(手持或全部) | `serversystem.admin.command.repair.use` | | `/skull (玩家)` | - | 获取玩家头颅 | `serversystem.admin.command.skull.use` | | `/ping (玩家)` | - | 检查延迟 | `serversystem.command.ping.use` | | `/seen [玩家]` | - | 查看玩家上次上线时间 | `serversystem.support.command.seen.use` | | `/god (玩家)` | - | 切换上帝模式 | `serversystem.support.command.god.use` | | `/fly (玩家)` | - | 切换飞行 | `serversystem.support.command.fly.use` | | `/heal (玩家)` | - | 治疗玩家 | `serversystem.support.command.heal.use` | | `/feed (玩家)` | - | 喂饱玩家 | `serversystem.support.command.feed.use` | | `/hat` | - | 将手持物品作为帽子 | `serversystem.command.hat.use` | | `/rename [名称]` | - | 重命名物品 | `serversystem.command.rename.use` | | `/sign [信息]` | - | 使用信息签名物品 | `serversystem.command.sign.use` | | `/unsign` | - | 移除物品签名 | `serversystem.command.unsign.use` |家园和传送点命令
| 命令 | 别名 | 描述 | 权限 | |------------------------------|------|--------------------|----------------------------------------| | `/spawn (玩家)` | - | 传送到出生点 | `serversystem.command.spawn.use` | | `/setspawn` | - | 设置服务器出生点 | `serversystem.admin.command.spawn.set` | | `/home [名称]` | - | 传送到家园 | `serversystem.command.home.use` | | `/sethome [名称]` | - | 设置家园位置 | `serversystem.command.home.set` | | `/delhome [名称]` | - | 删除家园 | `serversystem.command.home.delete` | | `/adminhome [玩家] [名称]` | - | 传送到玩家的家园 | `serversystem.moderation.command.home.use` | | `/adminsethome [玩家] [名称]` | - | 设置玩家的家园 | `serversystem.moderation.command.home.set` | | `/admindelhome [玩家] [名称]`| - | 删除玩家的家园 | `serversystem.moderation.command.home.delete` | | `/warp [名称]` | - | 传送到传送点 | `serversystem.command.warp.use` | | `/setwarp [名称]` | - | 创建传送点 | `serversystem.admin.command.warp.set` | | `/delwarp [名称]` | - | 删除传送点 | `serversystem.admin.command.warp.delete` |通讯命令
| 命令 | 别名 | 描述 | 权限 | |------------------------|----------|----------------------|----------------------------------------| | `/msg [玩家] [信息]` | `/tell`, `/whisper` | 发送私人消息 | `serversystem.command.privatemessage.use` | | `/reply [信息]` | `/r` | 回复上次消息 | `serversystem.command.privatemessage.use` | | `/msgtoggle (玩家)` | - | 切换私人消息 | `serversystem.command.messagetoggle.use` | | `/teamchat [信息]` | `/tc` | 发送团队聊天消息 | `serversystem.support.command.teamchat.use` | | `/ignore [玩家]` | - | 忽略玩家消息 | `serversystem.command.ignore.use` | | `/unignore [玩家]` | - | 取消忽略玩家消息 | `serversystem.command.unignore.use` |套件命令
| 命令 | 别名 | 描述 | 权限 | |---------------------|------|---------------------|----------------------------------| | `/kit [名称] (玩家)` | - | 给玩家提供套件 | `serversystem.command.kit.use` | | `/createkit [名称]` | - | 从物品栏创建套件 | `serversystem.admin.command.kit.create` | | `/deletekit [名称]` | - | 删除套件 | `serversystem.admin.command.kit.delete` |杂项命令
| 命令 | 别名 | 描述 | 权限 | |-------------------|------|--------------------------|--------------------------------------| | `/language [语言]` | - | 更改语言 | `serversystem.command.language.use` | | `/signcost` | - | 管理告示牌成本 | `serversystem.admin.command.signcost.use` | | `/drop (玩家)` | - | 在隐身时切换物品掉落 | `serversystem.moderation.command.vanish.use` | | `/pickup (玩家)` | - | 在隐身时切换物品拾取 | `serversystem.moderation.command.vanish.use` | | `/interact (玩家)` | - | 在隐身时切换方块交互 | `serversystem.moderation.command.vanish.use` | | `/message (玩家)` | - | 在隐身时切换消息能力 | `serversystem.moderation.command.vanish.use` |这意味着玩家可以在没有额外设置的情况下使用这些命令(例如 `/home`)
您可以在 `permissions.yml` 文件中将任何权限设置为(不)需要。
### 权限级别 - **管理员**: 全面服务器控制(游戏模式、时间、天气、经济等) - **版主**: 玩家管理(封禁、静音、隐身等) - **支持**: 助手工具(传送、治疗、上帝模式等) - **玩家**: 基本命令(家园、传送点、消息等) ### 特殊权限 - `serversystem.homes.unlimited` - 无限家园 - `serversystem.homes.<数量>` - 特定家园限制 - `serversystem.chat.colored` - 在聊天中使用颜色代码 - `serversystem.command.teleportask.instant` - 无延迟即时传送 ## 可点击的告示牌 该插件支持用于各种功能的交互式告示牌: - **给予告示牌**: 向玩家提供物品 - **套件告示牌**: 为玩家提供套件 - **时间告示牌**: 更改服务器时间 - **天气告示牌**: 更改服务器天气 - **传送点告示牌**: 传送到传送点 每种告示牌类型都有管理员创建/删除权限。 ## 数据迁移 虽然 Pre-Rewrite (2.x.x) ServerSystem 支持从或迁移到 Essentials,但 3.x.x(截至 2025 年 7 月 18 日)不支持。
原因很简单。我只是在认为插件已经准备好发布之前没有时间完成它。 ## PlaceholderAPI 此插件支持 PlaceholderAPI。您可以在 ServerSystem 的消息中使用其占位符,或者使用 ServerSystem 添加的占位符: - `%serversystem_onlineplayers%` -> 显示在线玩家数量,不包括隐身玩家,如果目标玩家看不到隐身玩家 - `%serversystem_balance%` (`%serversystem_balance_<玩家名>%`) -> 显示玩家的格式化余额 - `%serversystem_unformattedbalance%` (`%serversystem_unformattedbalance_<玩家名>%`) -> 显示玩家的*未格式化*余额 - `%serversystem_baltop_name_<数字>%` -> 显示 baltop 中第 <数字> 名玩家的名字(仅 1-10!) - `%serversystem_baltop_balance_<数字>%` -> 显示 baltop 中第 <数字> 名玩家的格式化余额(仅 1-10!) - `%serversystem_baltop_unformattedsbalance_<数字>%` -> 显示 baltop 中第 <数字> 名玩家的*未格式化*余额(仅 1-10!) ## 自动更新 作为用户,您可以禁用 `config.yml` 中的自动更新。 如果您是服务器主机或只想使用 JVM 标志,可以这样做: `java -Dserversystem.disable-auto-download=true -jar server.jar`