CannaTale权限

CannaTale权限

Hytale的权限和聊天格式修改模组。

实用

CannaTalePermissions

CannaTalePermissions 是 Hytale 服务器的完整权限 + 聊天格式化解决方案,构建快速、简洁且对管理员友好。它直接作为提供程序插入 Hytale 的 PermissionsModule,因此其他模组可以依赖一个一致的权限系统。

亮点

  • SQLite 后端(启用 WAL) — 无需巨大的 JSON 文件,无需“配置垃圾”,编辑操作安全且一致。
  • 真正的允许/拒绝权限 — 节点可以显式地允许拒绝(拒绝在适用时优先)。
  • 通配符支持 — 权限检查按以下顺序回退:a.b.c.a.b.*a.**
  • 正确的用户组管理
    • 权重(用于确定玩家的主组
    • 默认组支持
    • 父组继承(组可以从其他组继承权限/元数据)
    • 直接组权限 + 直接用户权限
  • 聊天格式化(默认启用)
    • 全局格式 + 可选的按主组格式覆盖
    • 占位符: {GROUP}{PREFIX}{SUFFIX}{USERNAME}{MESSAGE}
    • 支持 Hytale 风格的颜色标签(例如:<GREEN><RED><#FFFFFF> 等)
  • 游戏内编辑器界面
    • 使用 /ctperm editor 打开完整的权限编辑器页面
    • 在单一界面中管理组/用户、权重/默认组、父组、成员、权限、前缀/后缀元数据和组聊天格式覆盖

存储/文件

在插件数据文件夹中创建:

  • ctperm-config.json — 配置文件(数据库文件名、默认组、聊天格式设置)
  • ctperm.db — SQLite 数据库(用户、组、成员关系、父组、权限、元数据)

重要行为说明

  • 支持离线编辑 仅限玩家至少加入过一次服务器后。
    • 如果没有存储的 UUID,命令将立即失败(不会创建“待处理用户”)。

命令

主命令:/ctperm(别名:/ctp

用户

  • user info <用户或UUID>
  • user permset <用户或UUID> <节点> [--value=True/False]
  • user permunset <用户或UUID> <节点>
  • user groupadd <用户或UUID> <组>
  • user groupremove <用户或UUID> <组>
  • user prefixset <用户或UUID> <优先级> <文本>
  • user prefixremove <用户或UUID> <优先级>
  • user suffixset <用户或UUID> <优先级> <文本>
  • user suffixremove <用户或UUID> <优先级>

  • group create <组> [--weight=]
  • group delete <组>
  • group rename <旧名称> <新名称>
  • group list
  • group info <组>
  • group permset <组> <节点> [--value=True/False]
  • group permunset <组> <节点>
  • group parentadd <组> <父组>
  • group parentremove <组> <父组>
  • group weightset <组> <权重>
  • group defaultset <组>
  • group prefixset <组> <优先级> <文本>
  • group prefixremove <组> <优先级>
  • group suffixset <组> <优先级> <文本>
  • group suffixremove <组> <优先级>

其他

  • editor
  • test <用户或UUID> <节点>
  • reload

权限节点(管理员访问控制)

  • cannatalepermissions.command.base
  • cannatalepermissions.command.reload
  • cannatalepermissions.command.test
  • cannatalepermissions.editor
  • cannatalepermissions.user.info
  • cannatalepermissions.user.perm
  • cannatalepermissions.user.group
  • cannatalepermissions.user.meta
  • cannatalepermissions.group.create
  • cannatalepermissions.group.delete
  • cannatalepermissions.group.rename
  • cannatalepermissions.group.list
  • cannatalepermissions.group.info
  • cannatalepermissions.group.perm
  • cannatalepermissions.group.parent
  • cannatalepermissions.group.weight
  • cannatalepermissions.group.default
  • cannatalepermissions.group.meta