配置文件指南
本页面帮助您了解如何正确编辑 .yml (.yaml) 文件。我的所有插件都使用 .yml 配置文件,如果您编辑不当,它们将自行重置或停止工作。
下面您将找到每种配置条目类型以及在修改任何值时应如何格式化它们。
如何编辑 .yml 文件
文件以 .yml 文件格式存储,Notepad++ 是推荐用于配置工作的文件编辑软件。当然,您也可以使用您选择的任何其他文本编辑器。
Boolean
Boolean 值为 true 或 false。它们看起来像这样:
value1: true
value2: false
Boolean 只接受 true 或 false 值。它们通常用于打开或关闭特定功能。
String
String 值通常只是普通文本。强烈建议您在引号之间创建 String 值,遵循以下格式:
value: "String"
虽然这并非总是必需的,但对于任何包含颜色代码的字符串都是必需的,特别是如果第一个字符以颜色代码开头。颜色代码遵循游戏内颜色代码格式,这意味着 "&aTest" 将生成绿色文本。彩色文本的可用性因配置设置而异。查看此页面了解颜色代码。
Details
为什么?
配置字符串可以接受特殊字符,例如&。如果这些特殊字符占据第一个字符,例如在 value: "&aString" 中,如果 String 不在引号之间,值将被清除,配置选项将重置为默认值。这是 Spigot 使用的配置系统的限制。Serialized Location
Serialized Location 是一种特定类型的 String,看起来像这样:
location: world,1.0,2.0,3.0,4.0,5.0
它们用于存储和配置位置。遵循以下格式:worldName,X,Y,Z,YAW,PITCH。Yaw 和 pitch 决定玩家正在看的方向,使用与 Minecraft 位置相同的取值。
Multiplier
Multiplier 值将插件值乘以该数字。这些值永远不应该在引号之间。这是一个例子:
damageMultiplier: 1.0
在这种情况下,伤害倍数将乘以 1,这意味着与默认值没有变化。如果 Multiplier 为 2.0,则值将乘以 2.0。如果为 0.5,则将乘以 0.5。
对于那些不擅长分数的人,乘以 0.5 与除以 2 相同。Multiplier 值应始终大于 0(0.0001 有效),并且往往没有上限。
Integer
Integer 值只是整数。例如:
value: 10
您可以使用 ~ 为脚本随机化这些值。例如:
value: 1~10
关于 Integer 值的主要事情是它们必须是整数。这意味着 10.1 无效。
Double
Double 是无理数。例如:
value: 10.01
您可以使用 ~ 为脚本随机化这些值。例如:
value: 1.0~10.01
Double 也可以是像整数一样的整数,例如 10.0 或甚至表示为 10。
Float
Float 是 32 位的小数,精度低于 Double。例如:
value: 10.42452
您可以使用 ~ 为脚本随机化这些值。例如:
value: 1.0~10.42452
Float 也可以是整数,例如 10.0 或甚至表示为 10。
String List
String List 是 String 值的列表。这些往往是最难配置的值,因为它们需要非常特定的配置格式:
valuesList:
- "value,1"
- "value,2"
- "value,3"
与 String 一样,建议将值保留在引号之间。每个 String List 都有自己的格式,因此您必须找到您正在编辑的特定格式;但是,从全局来看,整体格式应该是这样的。
Map List
'Map List' 是 'Map' 值的列表。这些仅在精英脚本中使用,并需要此配置格式:
parentMap:
- Map1:
key: value
- Map2:
key: value
keyForList:
- "value1"
- "value2"
如您所见,Map Lists 可以包含任何类型的格式,但如果您在脚本中使用它们,则需要参考文档以查看不同映射的有效键和值。
Color Codes
您还可以使用以下修饰符分配颜色或使文本加粗:
| 代码 | 颜色 | 示例 |
|---|---|---|
| &4 | 深红色 | &4深红色示例。 |
| &c | 红色 | &c红色示例。 |
| &6 | 橙色 | &6橙色示例。 |
| &e | 黄色 | &e黄色示例。 |
| &2 | 深绿色 | &2深绿色示例。 |
| &a | 绿色 | &a绿色示例。 |
| &b | 水蓝色 | &b水蓝色示例。 |
| &3 | 深水蓝色 | &3深水蓝色示例。 |
| &1 | 深蓝色 | &1深蓝色示例。 |
| &9 | 蓝色 | &9蓝色示例。 |
| &d | 亮紫色 | &d亮紫色示例。 |
| &5 | 深紫色 | &5深紫色示例。 |
| &f | 白色 | &f白色示例。 |
| &7 | 灰色 | &7灰色示例。 |
| &8 | 深灰色 | &8深灰色示例。 |
| &0 | 黑色 | &0黑色示例。 |
| &r | 重置颜色 | &r重置示例。 |
| &l | 粗体 | &l粗体示例。 |
| &o | 斜体 | &o斜体示例。 |
| &n | 下划线 | &n下划线示例。 |
| &m | 删除线 | |
| &k | 随机 | &k &f示例。 |
正如您在示例中看到的,修饰符遵循常规 Minecraft 语法,但在与 EliteMobs 一起使用时,§ 被替换为 &。您可以使用它来修改大多数 EliteMobs 文本,例如怪物名称、任务文本、地牢名称等。
请注意,当正常工作时,修饰符本身不会显示在您的文本中。它们仅出于演示目的在此处显示。
还可以组合颜色和其他文本修饰符。例如,您可以这样做:
如果我们希望我们的自定义怪物有一个漂亮的彩色名称,我们会这样做:
name: $normalBossLevel &aScary &dDragon
从 EliteMobs 10 起,你还可以为任何 EliteMobs 文本使用颜色渐变,如下例所示:
name: "&cNormal Red Text <gradient:#FF6B00:#FFD700:#FFFF00> Cool Gradient Text </gradient>"
在这个例子中:
&c applies standard red formatting to the text before the gradient.<gradient:...> starts the gradient definition.#FF6B00, #FFD700, and #FFFF00 are the colors used in the gradient.Cool Gradient Text is the text affected by the gradient.</gradient> ends the gradient section.
只有渐变标签内部的文本会受影响;标签之外的格式保持不变。
渐变已经不再是 EliteMobs 独有的功能。文本解析器位于 MagmaCore 中,因此同样的语法在所有随它一起发布的插件的配置文件中都能使用,MiniMessage 的其余标签集也一样(<rainbow>、<#RRGGBB>、诸如 <red> 的具名颜色、诸如 <bold> 的装饰等等)。完整列表请参阅 Color Codes。
Material
Material 值只是您可以在 MineCraft 中找到的 Materials,例如 IRON_CHESTPLATE。有关有效 Material 列表,请参阅此页面。
helmet: IRON_HELMET
Material 在多种设置中用作值,例如怪物装备、战利品掉落、任务奖励等。
Filename
Filename 值只是格式化为与 MagmaGuy 的插件一起使用的 .yml 配置文件。这些可以是从物品到任务的任何东西。
uniqueLootList:
- filename: magmaguys_toothpick.yml
修剪世界
有时,您可能需要减小 Minecraft 世界的大小,使其更轻便,从而更容易分发。这可以通过使用 WorldBorder 插件来实现。尽管该插件页面显示的是较旧版本的支持信息,WorldBorder 通常在当前的 MineCraft 版本上都能正常工作。请在你自己的环境中测试以确认兼容性。
Details
提示
如果您是第一次执行此操作,最好创建世界的备份,以防出现问题。安装插件后,导航到世界的中心或您希望修剪的特定区域。然后,执行命令 /wb set x,其中 x 代表您想要的区域的大致半径大小。
Details
提示
如果/wb 对您不起作用,请尝试 /worldborder:wb。执行此命令后,飞到世界的边缘,以验证世界边界已正确设置并覆盖预期大小。当您被推回并在聊天中收到消息时,您将认识到到达了世界边界边缘。

在上图中,我们的目标是修剪紫色方块周围的世界,只在它们周围留下几个区块。为了实现这一点,我们站在红色方块上紫色区域的中间,并执行 /wb set 50,将世界边界设置在紫色区域之外。
接下来,我们使用 /wb trim [freq] [pad] 命令,频率设置为 200,pad 设置为 20。pad 确定应在世界边界(紫色区域)周围留下多少区块,频率确定每秒应处理多少区块。运行 /wb trim 200 20 后,我们将被提示通过执行 /wb trim confirm 来确认。我们确认操作,一段时间后,我们的世界将被修剪,缩小其大小并使其更便于分发。
现在,您可以使用 /wb clear all 删除世界边界,或者如果您愿意,也可以保留它。
修剪世界文件夹
停止服务器,并在备份副本上操作。不要删除除 region、raids.dat 和 level.dat 之外的所有内容:地形、实体、兴趣点和维度数据都可能是必需的。保留服务器和插件实际使用的目录结构。
旧版 Vanilla 世界的下界使用 DIM-1,末地使用 DIM1。Vanilla 26.1 的默认维度已移至 dimensions/minecraft/overworld、dimensions/minecraft/the_nether 和 dimensions/minecraft/the_end,其中包含各自的 region、entities 和 poi 文件夹。所需结构取决于服务器软件及版本。分发前,请在另一台服务器上导入副本并检查世界。