格利梅拉权限

格利梅拉权限

控制你的玩家能使用哪些命令。白名单或黑名单模式,支持子命令级别的精确控制。在游戏内实时管理权限——无需重启服务器。纯服务端实现,无需客户端模组。

实用

GlymeraPermissions - 命令访问控制

控制你的玩家可以使用哪些命令。白名单或黑名单模式,子命令级精准控制,游戏内即时管理——无需重启。

当前版本仅适用于 Hytale Stable 5! 不要错过我的其他精彩项目——请查看 GlymeraCraft 的主页 Discord: https://discord.gg/s5NRFWfxgy


什么是 GlymeraPermissions?

Hytale 没有内置的命令权限系统。默认情况下,任何插件注册的每条命令对所有玩家都是可用的——除非插件开发者手动添加了 OP 检查。如果他们忘记了,那么该命令就是完全开放的。

GlymeraPermissions 在服务器层面解决了这个问题。它在启动时扫描所有已注册的命令,并根据你的配置限制访问权限。被 GlymeraPermissions 阻止的命令需要 OP 状态才能执行。你列入白名单的命令则对所有玩家保持可用。

重要提示: GlymeraPermissions 是在现有插件之上添加了一个安全层。它可以阻止插件未加限制的命令,但无法覆盖插件内部强制执行的限制。如果某个插件内置了自己的 OP 检查,那么即使 GlymeraPermissions 允许该命令,该检查仍然会生效。可以把它想象成门前的一道闸门——GlymeraPermissions 可以关闭闸门,但无法打开门后那扇锁着的门。

纯服务端插件——无需客户端模组。


工作原理

在服务器启动时,GlymeraPermissions 会扫描所有已注册的命令(包括子命令)。根据你选择的模式:

  • 白名单模式(默认,推荐):所有未设置权限的命令对非 OP 玩家都会被阻止。只有你明确列入白名单的命令才对所有玩家开放。
  • 黑名单模式:所有命令保持开放。只有你明确列入黑名单的命令才会被限制为仅 OP 可用。

已经由插件自身设置了权限的命令不会被修改——它们已经有保护了。

无论 GlymeraPermissions 的设置如何,OP 始终对所有命令拥有完全访问权限。


命令

命令 描述
/perms 显示当前状态和统计信息
/perms mode whitelist|blacklist 在模式之间切换
/perms add <command> 将命令添加到活动列表(例如 tpptpp.set
/perms remove <command> 从活动列表中移除命令
/perms list 显示活动列表中的所有条目
/perms scan 重新扫描所有命令(例如在热重载之后)
/perms info <command> 显示某个命令的权限详情
/perms reload 从文件重新加载配置

所有 /perms 命令仅限 OP 使用。


子命令精准控制

你可以使用点号表示法在子命令级别控制访问权限:

  • /perms add tpp → 允许所有 /tpp 子命令(set、del、show、name)
  • /perms add tpp.set → 仅允许 /tpp set,其余保持阻止
  • /perms add tpp.show → 仅允许 /tpp show

此功能适用于任意深度的嵌套子命令。


配置

配置文件在首次启动时生成:

mods/de.glymera_GlymeraPermissions/config.json

{
  "mode": "whitelist",
  "whitelist": [
    "help",
    "tell",
    "msg",
    "w"
  ],
  "blacklist": [],
  "logBlocked": true
}
设置项 默认值 描述
mode "whitelist" "whitelist""blacklist"
whitelist ["help","tell","msg","w"] 对所有玩家可用的命令(白名单模式)
blacklist [] 限制为仅 OP 可用的命令(黑名单模式)
logBlocked true 扫描时将被限制的命令记录到控制台

通过 /perms 命令所做的更改会自动保存到配置文件中。


安装

  1. GlymeraPermissions-1.0.0.jar 放入服务器的 mods/ 文件夹
  2. 启动(或重启)服务器
  3. 完成!默认的白名单模式已生效。

特性

  • 两种模式 - 白名单(默认安全)或黑名单(默认开放)
  • 子命令精准控制 - 精确控制到单个子命令的访问权限
  • 实时管理 - 在游戏内添加/移除/切换模式,无需重启
  • 自动扫描 - 启动时查找所有来自所有插件的命令
  • 按需重新扫描 - 热重载插件后使用 /perms scan
  • 非破坏性 - 只添加限制,绝不会移除现有限制
  • OP 直通 - 管理员始终拥有完全访问权限
  • 控制台日志 - 准确查看哪些命令被限制了
  • 无需资源包 - 纯服务端,客户端无需下载任何内容

温馨提示

  • GlymeraPermissions 在启动后 3 秒执行扫描,以确保所有插件都已注册其命令
  • 已经由其自身插件设置权限的命令会被跳过
  • GlymeraPermissions 无法授予对源代码插件内部限制的命令的访问权限
  • /perms 命令本身始终为 OP 限定,不会被意外锁定
  • 与所有其他 Glymera 插件兼容

由 Glymera 为 Hytale 社区精心制作