跳到主要内容

入门指南

本页面帮助您了解如何正确编辑 .yml (.yaml) 文件。我的所有插件都使用 .yml 配置文件,如果您编辑不当,它们将自行重置或停止工作。

下面您将找到每种配置条目类型以及在修改任何值时应如何格式化它们。

如何编辑 .yml 文件

文件以 .yml 文件格式存储,Notepad++ 是推荐用于配置工作的文件编辑软件。当然,您也可以使用您选择的任何其他文本编辑器。

Boolean

Boolean 值为 truefalse。它们看起来像这样:

value1: true
value2: false

Boolean 只接受 truefalse 值。它们通常用于打开或关闭特定功能。

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,PITCH,YAW。Pitch 和 yaw 只是确定玩家正在看的方向,并以与 Minecraft 位置相同的方式实现。

Multiplier

Multiplier 值将插件值乘以该数字。这些值永远不应该在引号之间。这是一个例子:

damageMultiplier: 1.0

在这种情况下,伤害倍数将乘以 1,这意味着与默认值没有变化。如果 Multiplier2.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

Floats

Floats 是带有小数点的数字,可以存储许多小数位。例如:

value: 10.42452

您可以使用 ~ 为脚本随机化这些值。例如:

value: 1.0~10.42452

Double 也可以是像整数一样的整数,例如 10.0 或甚至表示为 10

String List

String ListString 值的列表。这些往往是最难配置的值,因为它们需要非常特定的配置格式:

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重置示例。
&i粗体&i粗体示例。
&o斜体&o斜体示例。
&n下划线&n下划线示例。
&m删除线&m删除线示例。
&k随机&k
&f示例。

正如您在示例中看到的,修饰符遵循常规 Minecraft 语法,但在与 EliteMobs 一起使用时,§ 被替换为 &。您可以使用它来修改大多数 EliteMobs 文本,例如怪物名称、任务文本、地牢名称等。

请注意,当正常工作时,修饰符本身不会显示在您的文本中。它们仅出于演示目的在此处显示。

还可以组合颜色和其他文本修饰符。例如,您可以这样做:

&a&o获取斜体的绿色文本。

如果我们希望我们的自定义怪物有一个漂亮的彩色名称,我们会这样做:

name: $normalBossLevel &aScary &dDragon

Material

Material 值只是您可以在 MineCraft 中找到的 Materials,例如 IRON_CHESTPLATE。有关有效 Material 列表,请参阅此页面

helmet: IRON_HELMET

Material 在多种设置中用作值,例如怪物装备、战利品掉落、任务奖励等。

Filename

Filename 值只是格式化为与 MagmaGuy 的插件一起使用的 .yml 配置文件。这些可以是从物品到任务的任何东西。

uniqueLootList:
- filename: magmaguys_toothpick.yml

修剪世界

有时,您可能需要减小 Minecraft 世界的大小,使其更轻便,从而更容易分发。这可以通过使用 WorldBorder 插件来实现。尽管该插件被列为仅支持 MineCraft 版本 1.19,但截至 2024 年 1 月 25 日,它在最新的 MineCraft 版本上可以无缝运行。

Details

提示 如果您是第一次执行此操作,最好创建世界的备份,以防出现问题。

安装插件后,导航到世界的中心或您希望修剪的特定区域。然后,执行命令 /wb set x,其中 x 代表您想要的区域的大致半径大小。

Details

提示 如果 /wb 对您不起作用,请尝试 /worldborder:wb

执行此命令后,飞到世界的边缘,以验证世界边界已正确设置并覆盖预期大小。当您被推回并在聊天中收到消息时,您将认识到到达了世界边界边缘。

trim_pic_1.jpg

在上图中,我们的目标是修剪紫色方块周围的世界,只在它们周围留下几个区块。为了实现这一点,我们站在红色方块上紫色区域的中间,并执行 /wb set 50,将世界边界设置在紫色区域之外。

接下来,我们使用 /wb trim [freq] [pad] 命令,频率设置为 200,pad 设置为 20。pad 确定应在世界边界(紫色区域)周围留下多少区块,频率确定每秒应处理多少区块。运行 /wb trim 200 20 后,我们将被提示通过执行 /wb trim confirm 来确认。我们确认操作,一段时间后,我们的世界将被修剪,缩小其大小并使其更便于分发。

现在,您可以使用 /wb clear all 删除世界边界,或者如果您愿意,也可以保留它。

修剪世界文件夹

您的世界文件夹中有几个文件和文件夹,我们可以丢弃,因为插件不会使用所有这些文件和文件夹。这将减小您的世界大小并使其更易于分发。

对于 NORMAL 世界环境:

要准备您的世界,请保留以下文件和文件夹:

  1. region 文件夹
  2. data 文件夹中的 raids.dat(确保在复制时将其放置在 data 文件夹内)
  3. level.dat 文件

您可以安全删除位于世界文件夹中的所有其他文件和文件夹。这将为 NORMAL 环境正确设置您的世界。

对于 NETHER 和 THE_END 世界环境:

要准备您的世界,请保留以下文件和文件夹:

  1. DIM-1 文件夹内的 region 文件夹(确保在复制时将其放置在 DIM-1 文件夹内)
  2. data 文件夹中的 raids.dat(确保在复制时将其放置在 data 文件夹内)
  3. level.dat 文件

您可以安全删除位于世界文件夹中的所有其他文件和文件夹。这将为 NETHER 和 THE_END 环境正确设置您的世界。