管理员文档 · 功能清单
从领地边界到数据库与跨服,按职责了解 Dominion 的功能。
功能总览
Dominion 集中管理三维区域中的行为。领地边界、访客权限、成员权限、权限组、环境规则和数据库数据彼此关联,但属于不同配置层。按下面的层次规划服务器规则,再决定向玩家开放的按钮和 flag。
| 能力 | 作用 | 主要入口 |
|---|---|---|
| 领地边界 | 创建、扩展、收缩、删除、重命名、设置传送点和地图颜色 | 玩家命令、ChestUI、Dialog |
| 子领地 | 在父领地内划出权限不同的区域 | create_sub、UI |
| 玩家权限 | 区分访客、成员、组成员执行放置、破坏、交互、传送等动作的权限 | flags.yml、UI |
| 环境规则 | 控制生物生成、爆炸、火焰、液体流动、活塞、农作物等世界行为 | flags.yml、UI |
| 权限组与模板 | 为多人服务器批量保存和套用一组 flag | group/template 命令、UI |
| 经济与限制 | 按权限组控制数量、尺寸、费用、传送和高度 | limitations/*.yml |
| 世界级规则 | 为未认领区域设置默认环境和交互行为 | world-wide/*.yml |
| 数据存储 | 使用 SQLite、MySQL、MariaDB 或 PostgreSQL 保存领地数据 | config.yml |
| 运维工具 | 重载配置、导出、导入、语言更新和 Residence 迁移 | 管理员命令 |
| 外部集成 | 对接 Vault、PlaceholderAPI、WorldGuard 和多服数据 | 可选依赖与配置 |
边界和领地生命周期
玩家可以通过选点创建领地,也可以使用自动创建。领地是带世界信息的三维长方体,除了水平 X/Z 范围,还会记录 Y 轴上下限。管理员可以限制最小和最大尺寸、最大高度、最深子领地层级、每个玩家或世界的领地数量。
领地创建后可以继续调整边界、设置传送点、修改进入/离开消息、重命名、设置地图颜色,或在确认没有数据需求后删除。根领地和子领地的命令权限不同:子领地操作受 create_sub、resize_sub、rename_sub、delete_sub 等 flag 约束。
权限和环境是两套规则
权限 flag
权限 flag 描述玩家在领地内执行动作的权限,例如 place、break、container、door、craft、pvp 和 animal_killing。它们通常影响当前玩家的操作判定。
环境 flag
环境 flag 描述允许发生的世界事件,例如 tnt_explode、fire_spread、monster_spawn、hopper_outside、piston_outside 和 show_border。它们通常影响事件或区块行为,而不是某一个玩家的按钮操作。
生效顺序
在领地内,插件会先检查当前玩家的管理员状态。管理员绕过开启时直接放行。权限组成员使用组 flag,普通成员使用成员 flag,访客使用访客 flag。成员被添加时会以当时的访客权限创建初始设置。之后修改访客设置不会自动覆盖已经保存的成员设置。
界面与数据库
插件同时提供 ChestUI 与 Dialog 两种界面。玩家可以使用 /dominion ui chest、/dominion ui dialog 或 /dominion ui default 切换。UI 是命令的可视化入口。权限限制、尺寸限制和数据库校验仍由服务端逻辑统一执行。切换服务端核心后,请检查启动日志,并测试 Dialog、事件、权限、创建和传送流程。
数据和运维能力
- SQLite 适合单服和轻量部署;MySQL、MariaDB、PostgreSQL 适合需要外部数据库管理或多服共享数据的场景。
- 多服模式要求每个实例拥有唯一且稳定的
server-id与server-name;SQLite 不支持多服模式。 - 管理员可以导出 MCA 或数据库备份,也可以在明确确认后导入数据库。
- Residence 迁移是一次性迁移工具,启用迁移开关后按命令执行,完成后应关闭开关并核对领地数量与边界。
- PlaceholderAPI 可以把当前领地、成员、组和 flag 信息提供给记分板、聊天或其他插件。
与玩家沟通时应说明的边界
Dominion 只会处理它能够识别并接管的事件。其他插件若在更早阶段取消事件、直接修改方块,或以管理员身份执行操作,最终效果可能与单独测试 Dominion 不同。遇到冲突时,应使用普通账号、单独测试领地和最小化插件集复现,并保留启动日志与配置快照。