
箱子战利品扩展器
扩展世界宝箱的战利品池 - 适用于模组创作者和玩家
查看大图从 1.0.0 迁移到 1.1.0+
ItemDropList 现在必须以 "Drop_LootExtender_" 开头,而非 "Drop_ChestLootExtender_"。
介绍
本模组面向以下人群
- 想要让物品出现在宝箱、生物和方块战利品池中的模组包创作者。
- 想要调整掉落战利品池的玩家。
工作原理
本插件能够通过使用 ItemDropList(物品掉落列表)来扩展战利品池,你可以在内置的资源编辑器中配置这些列表。
ItemDropList 只需要一个以 "Drop_LootExtender_" 开头的名称,以及一些附加的元数据来指定何时使用该 ItemDropList。
可以有任意数量的 ItemDropList,它们可以来自任意数量的模组。如果存在多个可用于给定场景的 ItemDropList,插件将简单地随机选择一个使用。
为什么不覆盖现有的 ItemDropList?
目前,在资源编辑器中没有原生方法来配置世界宝箱中会出现哪些物品。
对于生物和方块的其他掉落物,(据我所知)多个模组无法扩展同一个 ItemDropList。只有一个模组能够决定如何覆盖该 ItemDropList。
使用战利品扩展器,任意数量的模组都可以为来自同一个宝箱、生物或方块的掉落物添加额外物品,而不会发生冲突。
注意事项
默认情况下,此插件将扩展任何现有宝箱的战利品,包括你在安装插件之前放置的任何宝箱。
为了防止它向你自己的宝箱中添加额外物品,你可以在你的基地中使用 /le-exclude-nearby 命令,让插件忽略 100 格半径内的所有宝箱。
创建 ItemDropList
访问资源编辑器
- 按 Enter 键打开聊天,然后输入
/op self。 - 按 'O' 键切换到创造模式。
- 按 Tab 键打开物品栏。
- 点击 创造工具 > 资源 > 资源编辑器。
创建 ItemDropList
- 在资源编辑器中,点击 '...' 并选择 添加资源包(或者使用已有的资源包)。
- 点击 '+' 打开创建物品菜单。
- 将 资源类型 设置为 物品掉落列表,并使用一个以
"Drop_LootExtender_"开头的 ID,例如"Drop_LootExtender_YourMod_Chests"。 - 点击 创建。
- 在 源 选项卡中,将所有内容替换为以下内容:
{
"Container": {
"Type": "Choice",
"Containers": [
{
"Type": "Single",
"Weight": 0,
"Item": {
"Metadata": {
"ChestIds": [
"Furniture.*Chest.*"
]
}
}
},
{
"Type": "Empty",
"Weight": 10
},
{
"Type": "Single",
"Item": {
"ItemId": "Fish_Salmon_Item"
},
"Weight": 1
}
]
}
}
容器 0 - 用于元数据,指定你的物品掉落列表将用于哪些宝箱、生物或方块。
容器 1 - 用于指定宝箱中不添加额外物品的可能性。
其余容器可用于添加你想要的任何物品。
元数据
元数据可以包含一个或多个过滤器。
你需要至少包含 ChestIds、BlockIds 或 NPCIds 才能使你的 ItemDropList 生效。
ChestIds
这是一个 ID 列表,物品掉落列表将用于这些 ID。
ID 可以包含 RegEx(正则表达式),例如 "Furniture.*Chest.*" 用于选择所有宝箱。
"Furniture.*Chest.*" - 所有以单词 "Furniture" 开头且包含单词 "Chest" 的 ID。
如果你想定位两个特定的宝箱:
"ChestIds": [
"Furniture_Ancient_Chest_Small",
"Furniture_Temple_Dark_Chest_Small"
]
BlockIds
与 ChestIds 类似,但指定的是哪些方块在被破坏时将使用此 ItemDropList。
NPCIds
与 ChestIds 类似,但指定的是哪些生物在被击败时将使用此 ItemDropList。
ZoneNames
与 ChestIds 类似,但指定的是此 ItemDropList 应使用于哪些区域。
BiomeNames
与 ChestIds 类似,但指定的是此 ItemDropList 应使用于哪些生物群系。
MinY
玩家应使用此 ItemDropList 时的最小 Y 坐标。
MaxY
玩家应使用此 ItemDropList 时的最大 Y 坐标。
示例
"Metadata": {
"ChestIds": [
"Furniture.*Chest.*"
],
"BlockIds": [
"Soil_.*"
],
"NPCIds": [
"Skeleton_.*"
],
"ZoneNames": [
"Zone1_.*"
],
"BiomeNames": [
".*_Tier2"
],
"MaxY": 130,
"MinY": 90
}
通过此示例,当玩家在 Zone1 区域、生物群系 Tier2、且位于水面附近时,打开任何宝箱、破坏任何 Soil 方块或击杀任何 Skeleton 生物时,都将使用该物品掉落列表。
指令
这些指令是可选的,因为你不需要使用任何指令即可使用插件。
/le-reset-chests - 重置所有宝箱的状态,允许插件扩展任何被打开的宝箱的战利品。
/le-exclude-nearby - 防止 100 格半径内的宝箱获得扩展战利品。
/le-clear-cache - 清除基于场景选择 ItemDropList 的缓存。
/le-location - 为你提供玩家当前所在的区域、生物群系和 Y 坐标。
测试你的 ItemDropList
在对 ItemDropList 的元数据进行任何更改后,建议使用 /le-clear-cache 指令。
此外,在测试掉落列表时,将第二个容器的权重(Weight)降低到 0 会有所帮助,这样总会掉落一个物品。完成后请记得将其改回。
测试方块
确保你没有处于创造模式,然后破坏你在 BlockIds 元数据中指定的方块。
如果物品掉落,则说明其按预期工作。
测试生物
击杀你在 NPCIds 元数据中指定的生物。
如果物品掉落,则说明其按预期工作。
测试宝箱
- 放置一批宝箱。
- 使用
/le-reset-chests指令(清除宝箱的玩家放置状态)。 - 打开宝箱。
如果 ItemDropList 创建正确,你应该会看到来自你 ItemDropList 的物品出现在宝箱中。
要再次测试,你应该首先破坏这些宝箱,否则战利品会被扩展两次。
测试区域、生物群系和 Y 坐标
使用 /le-location 指令获取你当前的区域、生物群系和 Y 坐标。
如果你当前处于正确的区域、生物群系和 Y 坐标,并且物品掉落,则说明其按预期工作。
特色模组
Hytaria - Terraria 3D - Hytale Mods - CurseForge 由 Markebarca_Mods 制作。
使用 LootExtender 1.0.0 配置宝箱战利品。
正在加载版本记录…

正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。