创建宝箱
宝箱是一项让管理员能够制作箱子的功能,这些箱子既可以掉落战利品,也可以生成一个拟态(敌对)Boss。
取值
isEnabled
设置宝箱是否启用。
| 键 | 取值 | 默认值 |
|---|---|---|
isEnabled | 布尔值 | false |
被禁用的箱子会被完全跳过:它们不会被放置到世界中,也不会被 /em place treasureChest 提供或接受。在尝试放置箱子之前请把它设为 true。
示例
isEnabled: true
chestType
设置箱子材质的类型。
| 键 | 取值 | 默认值 |
|---|---|---|
chestType | 材质 | CHEST |
示例
chestType: CHEST
这必须是有效的箱子材质,例如 CHEST 或 BARREL。

facing
设置箱子的朝向。
| 键 | 取值 | 默认值 |
|---|---|---|
facing | 特殊 [1] | NORTH |
示例
facing: NORTH
这设置箱子面向的方向。有效值为 NORTH、SOUTH、EAST 或 WEST。
特殊 [1]
展开表格
| 朝向 |
|---|
NORTH |
SOUTH |
WEST |
EAST |
dropStyle
设置箱子是为一名玩家还是为多名玩家掉落的。
SINGLE 箱子会被第一个打开它的玩家消耗掉:方块被替换为空气,写入一个 restockTime,并在经过 restockTimer 分钟后重新出现。它没有按玩家分别追踪,因此谁先到谁就拿走整个箱子。
GROUP 箱子永远不会从世界中被移除。取而代之的是,每个打开它的玩家都会进入各自的冷却,因此每名玩家在每个补货周期内都可以搜刮该箱子一次。这些冷却保存在 restockTimers 字段中,插件会替你把它写入文件。
| 键 | 取值 | 默认值 |
|---|---|---|
dropStyle | SINGLE / GROUP | SINGLE |
示例
dropStyle: SINGLE
lootList
列出宝箱被打开时应当掉落的战利品。
| 键 | 取值 | 默认值 |
|---|---|---|
lootList | EM 战利品表 | 无 |
示例
lootList:
- filename=elite_scrap_tiny.yml:chance=0.90
- filename=magmaguys_toothpick.yml:chance=1.0
如果列表中没有任何条目通过它的 chance 判定,玩家会收到来自 config.yml 的 treasureChestNoDropMessage,这样箱子就不会毫无提示地什么都不给。冷却仍然会被消耗。
mimicChance
设置生成敌对 Boss 而不是掉落战利品的几率。
| 键 | 取值 | 默认值 |
|---|---|---|
mimicChance | 双精度浮点数 | 0 |
判定在每次交互时进行,且发生在生成任何战利品之前。判定成功时,拟态会代替战利品掉落而生成——箱子绝不会两者兼有。无论哪种情况,箱子的冷却都会被消耗。
示例
mimicChance: 0.5
mimicCustomBossesList
指定可用于生成的敌对 Boss 列表。系统会从该列表中随机选择一个 Boss 进行生成。
该列表还支持权重系统,你可以用它来确保某些 Boss 被选中的频率高于其他 Boss。
| 键 | 取值 | 默认值 |
|---|---|---|
mimicCustomBossesList | 字符串列表 | 无 |
示例
mimicCustomBossesList:
- my_cool_mimic_boss.yml
- weak_mimic_boss.yml
如果你希望为这些 Boss 分配权重,列表应按如下格式书写:
mimicCustomBossesList:
- my_cool_mimic_boss.yml:60
- weak_mimic_boss.yml:40
在这个配置中,my_cool_mimic_boss.yml 比 weak_mimic_boss.yml 更有可能被选中生成。
没有权重后缀的条目,以及权重无法被解析为数字的条目,都会回退为权重 1。
拟态会以什么等级生成?
这取决于你所指向的 Boss 文件,而不是箱子:
拟态 Boss 的 level | 它生成时的等级 |
|---|---|
| 固定数字 | chestTier × 10,再加上 0-10 的随机值 |
动态副本内的 dynamic(-1) | 该副本所选的等级,±1 |
其他任何地方的 dynamic(-1) | 打开箱子玩家的自然生成等级,±1 |
如果找不到列表中指定的 Boss 文件,则不会生成拟态,并且会记录一条警告——玩家什么都得不到,也拿不到战利品。
restockTimer
设置箱子重新填充战利品之前需要经过的时间(分钟)。
| 键 | 取值 | 默认值 |
|---|---|---|
restockTimer | 整数 | 0 |
对于 SINGLE 箱子,这是方块消失后到被放回之前的时长。对于 GROUP 箱子,这是每名玩家在能够再次搜刮该箱子之前必须等待的时长。
保持默认值 0 实际上意味着完全没有冷却,因此箱子可以被反复刷取。请为任何掉落有价值物品的箱子设置一个真实的数值。
示例
restockTimer: 30
effects
注意: 此设置目前不起任何作用。该键仍然会从配置文件中被读取而不会报错,也仍然会与其他默认值一起写出,但插件中没有任何地方消费解析后的值,因此宝箱永远不会生成粒子。
如果你希望在箱子周围有粒子,目前请从其他来源生成它们。
| 键 | 取值 | 默认值 |
|---|---|---|
effects | 字符串列表 | 无 |
locations
设置宝箱将会生成的位置。
可以在站到目标位置时使用 /em place treasureChest <treasurechestfilename.yml> 来添加位置。该命令会自动把你当前的位置加入箱子的位置列表并更新配置文件。
| 键 | 取值 | 默认值 |
|---|---|---|
locations | 字符串列表 | 无 |
每个条目使用 worldName,x,y,z,yaw,pitch 格式。较短的 worldName,x,y,z 形式同样被接受,此时 yaw 和 pitch 均视为 0。
条目可以带有 :unixTimestamp 后缀,这是 EliteMobs 存储该处箱子补货时间的方式。当一个 SINGLE 箱子被搜刮后,插件会自己写入这个后缀——你不需要添加它,并且你可以删除它来让箱子立即可用。
一个文件可以包含任意多个位置,每个位置都会成为一个独立的箱子,拥有各自的补货计时器。
示例
locations:
- my_world,10,50,10,0,0
- my_nether_world,12,58,12,0,0
- my_world,80,64,-30,0,0:1707394380
chestTier
设置箱子的层级,它是箱子所掉落战利品等级的基准。基准等级为 chestTier * 10。
| 键 | 取值 | 默认值 |
|---|---|---|
chestTier | 整数 | 0 |
chestTier 实际上有多重要,取决于箱子所在的位置以及战利品表中是哪类物品:
| 情况 | 战利品掉落时的等级 |
|---|---|
| 在任何实例之外打开的箱子 | scalable 精英物品跟随打开箱子玩家的等级,±1。其他一切使用 chestTier * 10。 |
| 动态副本内的箱子 | 一切都使用该副本所选的等级,其中 scalable 精英物品获得 ±1。chestTier 会被忽略。 |
| 其他任何实例内的箱子 | 一切都使用 chestTier * 10。 |
因此在普通的生存世界中,chestTier 主要决定你的 fixed 和 limited 物品的等级,而 scalable 物品则跟随打开箱子的玩家。注意拟态使用的是另一套公式——参见 mimicCustomBossesList。
保持默认值 0 会得到基准战利品等级 0。
示例
chestTier: 3
instanced
设置箱子是否应当是实例化的(供实例副本使用)。 当箱子被放置在副本中时,所有补货计时器都会被禁用。
请勿手动设置此值。
| 键 | 取值 | 默认值 |
|---|---|---|
instanced | 布尔值 | false |
示例
instanced: true
restockTime
在箱子被搜刮之后,插件会写入这个键来追踪补货时间。
它只被旧的单箱子格式使用,在那种格式中箱子的位置存放在 location 键里而不是 locations 列表中。只要文件中有任何 locations 条目,补货时间就会改为以 :unixTimestamp 后缀写在对应的 locations 条目上,而这个键会被保持不变。
请勿手动设置此值。
| 键 | 取值 | 默认值 |
|---|---|---|
restockTime | Unix 时间戳 | 0 |
示例
restockTime: 1707394380
restockTimers
存储 GROUP 模式箱子的按玩家冷却数据。插件会自动写入它,并在读取时清除已过期的条目。
实例化的箱子不使用这个列表——在实例内部,按玩家的冷却只会在该实例的生命周期内保存在内存中。
请勿手动设置此值。
| 键 | 取值 | 默认值 |
|---|---|---|
restockTimers | 字符串列表 | 无 |
示例
restockTimers:
- '1234567890-abcd-efgh-ijkl-123456789012:1707394380'
- '0987654321-zyxw-vutr-sqpo-098765432109:1707395000'
每个条目包含一个玩家 UUID 和一个 Unix 时间戳,用冒号分隔。
宝箱配置示例
isEnabled: true
chestType: CHEST
facing: NORTH
chestTier: 3
dropStyle: GROUP
lootList:
- filename=elite_scrap_tiny.yml:chance=0.90
- filename=magmaguys_toothpick.yml:chance=0.95
mimicChance: 0.50
mimicCustomBossesList:
- balrog.yml
- killer_rabbit_of_caerbannog.yml
restockTimer: 1
locations:
- world,0.0,-60.0,-14.0,0.0,0.0
注意上面每一个战利品条目都使用了 filename= 前缀。如果写成 magmaguys_toothpick.yml:chance=0.95,它会被当作旧式的 filename.yml:chance 格式来读取,而 chance=0.95 并不是一个数字,因此该条目会在每次启动时记录一条解析警告。

