功能

KingdomsX致力于相比Factions和Towny等插件提供更多核心玩法和自定义性。KingdomsX主要适合于PVP服务器，虽然pvp是玩法最核心，最好玩的部分，但去除pvp内容，你也可以享受其他核心玩法。

以下是插件主要功能的简单列举，这只是主功能的概括，关于特定细节请参考百科中为该项设立的主词条。

注意：老版本服务器可能无法使用插件的某些功能。KingdomsX的开发是为了将最新的Minecraft特性最大化利用。如果技术上允许且便捷，新功能也可能适用于旧版本服务器。

## 多数据库支持

KingdomsX支持多种常见数据库类型，如JSON，YAML（此两者并不算作严格的“数据库”），SQLite，H2，MySQL，MariaDB，PostgreSQL，与MongoDB。

它定义了不同的设置，以在不同环境中为你的服务器配置最佳连接。如果服务器允许，它也支持外部数据库备份导入。它也利用最佳数据类型来提高数据库空间的性能与效率。

入侵
--

KingdomsX主要以其pvp系统闻名，包括入侵系统与炮塔系统。入侵是一种获取其他王国土地的办法。王国成员需要在入侵其他王国时制定战术，通力合作，并充分准备基地。战术使用斗士，炮塔，和设施会更容易施行。

## 炮塔&设施

炮塔是一种固定方块，可以帮助你的王国击退入侵者，起到保护作用。部分炮塔对怪物也起作用。

炮塔拥有等级和弹药，它们的攻击对象等行为可以使用王国外交关系设置和控制器更改。你甚至可以自行设计炮塔设置与界面，自创炮塔。

设施也是一种固定方块。它们可以行使不同的职能，如保护王国土地，生产资源点，以及从中购买物品。

## 可交互的帮助界面&地图

这是KingdomsX最棒的核心功能之一。`/k help` 指令弹出的帮助界面是可交互的。这些界面设计基于Google的页数排版。

可交互指你可以将光标悬浮在字上显示补充说明，如同背包中的物品一样。

王国地图也是可交互的。你不需要使用复杂的图标表示地图上的不同区块。只要将光标放在一个区块上，你就可以看到信息。你甚至可以通过与地图交互占领土地！每个玩家可以设定自己的地图大小。

## 更新检查器

KingdomsX有一个异步更新检查器。插件更新是一个很简单的过程，且语言文件的新项会被自动添加。

配置中的新项会被设为默认值以防止出错。

## 配置自动更新器

KingdomsX是第一个在可靠地保留注释的同时自动更新插件配置的Minecraft插件。它也会*尽力*保留选项的原格式：

```
#它会辨别不同的格式，并保留它们。
option: hello
option: 'hello'
option: "Hello"

```
但这有时会失效。

此特性唯一的缺点是它不会保留你自己更改的注释，因为插件不具有区分旧版配置注释与手动更改注释的功能。

此系统不会更改界面，因为界面是100%可自定义的。插件无法辨别界面中的选项是否为手动添加或更改，因此界面更新需要手动完成。默认和最新版界面可以在这里找到。当必要时请自行更改。

插件也具备一个配置迁移系统，可以基于上次的更新版本对不同配置项执行多种任务。如果你应知道，出于技术原因，globals.yml文件的缺失会使插件认定当前配置为全新，并不执行任何配置迁移操作。有时配置迁移的更改程度可能与删除整个配置文件相当，也可能重新定位一个配置项或将其设为默认值。

配置自动更新器不会尝试更新在新版本中含义/格式更改的配置项。

```
#举例：若旧版本支持带"%"的数学运算等式：
option: "100 \* %level%"

#插件无法将其更新为新版格式：
option: "100 \* level"
#这会使插件无法识别并报错。

```
此项的更改方式位于此处。

界面
--

插件的界面是100%可自定义的，且部分提供Javascript支持，几乎仅有本插件拥有此功能。

界面类型，物品格，音效，信息，可交互格，高级物品属性等均可以在各种界面中编辑。

## 区块指示器

当土地所属权更改时，插件使用假方块显示区块边界。不同外交关系的王国边界显示方式与形状可以在配置中更改。

配置中也有一项可以禁用指示器，或对玩家始终显示。

## 土地恢复

插件可以将区块信息储存在一个压缩程度很高的文件中，以便在这块土地被放弃后恢复其原来的样子。恢复过程为逐个区块恢复，以防止服务器卡顿。

备份
--

插件每天会自动备份，并将文件存至插件文件夹中的Backups文件夹。

如果你的运营商不允许自动备份也无需担心。插件会在数周后自动删除旧的备份文件。所有备份设置都可以在配置中更改。

## 自动重置

当你在配置中做出更改时插件会自动重置以加载配置。几乎所有配置，包括信息，界面，与其他主要配置均支持此方法，但部分复杂配置无法以此方式重置。

这是重置选项最稳定，便捷的方式。

文明
--

文明是王国插件的另一大功能，可以为其成员国提供加成。

当你加入一个文明，插件会有些更难理解。

## 王国飞行

玩家可以在本国和盟国的土地上飞行（这取决于两国的外交设置关系）。

若附近有敌人的时候则会自动禁用。

## 高级指令&权限

插件使用最新的高级指令自动补全功能，使玩家更易理解他们应输入什么。

大多数权限（多数为指令权限）以特定的规律注册，所以大多数时候你可以直接输入，无需查看百科。

也有些指令可以在更改配置之前测验特定功能。

## 聊天频道&进服信息

插件带有三种聊天频道：全球，王国，与盟友。聊天格式支持悬浮字信息与DiscordSRV。

聊天格式支持条件判定，如玩家是否在一个王国或文明内。

进服与退服消息同理，它们对同一王国的人会显示不同消息。

插件默认禁用Minecraft的聊天举报功能，若你想要一个更高级的插件专门管理此功能，你可以查看AntiPopup插件。

## 自定义

插件在多方面高度自由化，允许服主设立独一无二的机制，并为插件开发者提供了简易的API以应用自定义的功能。

插件甚至提供了使服主更轻易使用这些功能的不同方式。

## 自定义权限组&外交关系

你可以在文明与王国内创建自己的权限组！你可以为每个权限组设立特定的节点，名称，颜色，图标等等属性。

自定义的外交关系属性可以在王国/文明核心内更改。

## 核心设置

王国核心是更改王国设置的完美枢纽。在此界面上可以完成多种操作。

* 王国护盾
* 和平模式
* 外交关系属性
* 赋税

赋税
--

王国与文明支持赋税（前置插件为Vault）。你也可以为自己的王国和文明设定税收等式。

甚至还有一个免税的权限组权限！

## 保护告示牌

顾名思义，可以用告示牌保护容器。这基本上与LockettePro相同，但对王国插件有专门支持，功能也更加强大。

你可以迅速给箱子上锁，并使用多种保护方式保护箱子，只要选择对你来说最简单的就好！

此特性也可以更改允许打开箱子的王国/玩家，即使玩家与你不在同一王国。你也可以使用多种格式的**[everyone]**（可在config.yml中自定义格式）允许任何人打开箱子，箱子是否在王国土地上均有效。

前哨
--

与KoTH(King of The Hill)插件相同，但为王国插件专门编写且拥有更多功能。

## 兼容性

插件与许多广受欢迎的插件联动，如LuckPerms和Dynmap。

与Dynmap的联动尤其紧密，因为其配置十分强大，可以自定义你的服务器。王国可以设置在地图上显示的旗帜与土地颜色。

## 编译器

本插件是基于“编译器”运行的Minecraft插件。这意味着它有着能在服务器启动期间验证并优化配置的内置系统。这有着两个明显好处。

当配置在服务器启动时得到验证，若配置项无效或因为特定关键项无效导致插件启动失败，你会在控制台看到警告。这可以帮助服主在玩家遇到问题前先一步发现问题。有些验证十分严格，服主可能不会喜欢（因为亲身体验一堆报错）。验证有时甚至可以帮助服主并提示他们如何解决问题。

服务器启动时验证配置也允许插件深度优化使用的项，例如炮塔的大多数属性使用方程计算，若每次调用这些属性都需要重新计算，服务器会很卡顿。

其他
--

插件被深度优化，且提供多种设置以适应大服的运转。

插件提供非常简易且文档详细的API，任何有Java基础的人都可以使用其大多数功能。

点击此处获取更多支持。

### 彩蛋

插件有一些隐藏极深的彩蛋。有些彩蛋只有能打开配置文件的人才能发现，其他彩蛋则任何玩家都可能发现。这些彩蛋不会被记录，但它们不会造成任何伤害。当然其中有一些会限制玩家使用游戏内的一些功能，但其效果十分不明显。

## 更新循环

对插件的更新建议会以特定顺序添加到插件中。大多数建议会在Discord服务器中被讨论并最终添加，但这些功能不会逐个被添加。

当至少**一个月**内没有Bug汇报（无论bug有多小，甚至包括语言文件中打错了一个字），**更新循环**将会开始。在循环期间，所有通过的建议会被添加至插件，这通常需要至多*一个月*。

在更新循环期间，开发者不会修复Bug，即便危害程度极高，直至第一个Beta测试版本发布。一个月无Bug的开始条件即是为了防止此类事件的发生。

循环之外的时间里，Bug通常一周一修，除非其非常严重。

关于插件版本的总体稳定程度请查看稳定性词条。