
Mobs Use Shields
让怪物使用盾牌来格挡攻击
生物使用盾牌 (Mobs Use Shields)
此模组允许特定生物在战斗中主动使用盾牌,而不仅仅是将其作为装备持有。
当兼容的生物在副手装备盾牌时,它会获得一种 AI 行为,使其能够举起盾牌格挡来袭攻击,在恢复正常战斗前形成短暂的防御窗口。
设计目标是让盾牌使用感觉像是原版战斗的自然延伸,在不将生物变成永久格挡者的情况下增加防御时刻。
特性
- 生物可以举起盾牌来格挡攻击
- 格挡有可配置的持续时间和冷却时间
- 生物在格挡时面向其目标
- 盾牌格挡会播放正确的盾牌音效
- 被格挡攻击造成的击退效果减少
- 人形生物会显示正确的格挡动画
- 生物可以预判某些威胁并提前举起盾牌
- 斧头可以击破生物的盾牌,类似于玩家之间的盾牌互动
- 默认情况下,只有尸壳、僵尸、卫道士和凋灵骷髅有几率携带盾牌生成
- 用户可以自定义哪些生物可能携带盾牌生成
- 用户可以通过数据驱动的配置调整每个生物的盾牌行为
常规配置
可以配置若干全局行为:
<code>mobConsumeShieldDurability</code>生物在格挡时是否消耗盾牌耐久度。<code>mobAlwaysAnticipate</code>强制生物始终使用预判逻辑。如果设置为false,则预判逻辑仅在局部难度 × 近期生命值损失超过随机阈值时激活。
实体标签配置
您可以将不希望被此模组影响的实体类型添加到 mobsuseshields:disable_shield 标签中。这将禁用该模组对这些实体的盾牌行为注入。
这对于防止与已有自身盾牌使用目标的生物(例如警卫村民)产生 AI 冲突非常有用。
数据包配置
此模组通过 JSON 文件支持数据驱动的生物盾牌配置。
示例:https://www.curseforge.com/minecraft/data-packs/mobs-use-shield-expansion
您可以定义:
- 生物是否可能携带盾牌生成
- 携带盾牌生成的几率
- 所需的最低局部难度
- 使用哪种盾牌物品
- 持续格挡的时间
- 盾牌冷却时间持续多久
- 检查是否应继续格挡的频率
文件夹结构
将您的 JSON 文件放置在:
data/<命名空间>/mob_shield/<路径>.json
示例:
data/minecraft/mob_shield/zombie.json
data/minecraft/mob_shield/piglin.json
data/yourmod/mob_shield/custom_mob.json
这些文件通过路径解析为实体类型风格的 ID。例如:
data/minecraft/mob_shield/zombie.json -> minecraft:zombie
data/yourmod/mob_shield/foo/bar.json -> yourmod:foo/bar
实际上,这意味着文件路径应与您要配置的生物 ID 匹配。
JSON 示例
{
"use_duration": 60,
"cooldown_duration": 60,
"check_continue_to_use_interval": 30,
"shield_id": "minecraft:shield",
"shield_stack": "{id:\"minecraft:shield\",count:1}",
"chance": 0.15,
"min_difficulty": 2.25
}
字段说明
use_duration生物持续主动使用盾牌的时间。cooldown_duration生物在再次使用盾牌前需要等待的时间。check_continue_to_use_interval生物检查是否应继续格挡的频率。shield_id当生物携带盾牌生成时要装备的盾牌物品 ID。如果未提供shield_stack、提供无效或导致空物品堆叠,则模组使用此物品 ID 作为备用盾牌物品。如果该物品缺失或无效,模组将回退到minecraft:shield。shield_stack可选的完整 ItemStack SNBT 字符串,用于定义生物装备的确切盾牌堆叠。这允许自定义 NBT/组件数据,例如旗帜图案、名称、损坏值或当前 Minecraft 版本支持的其他物品数据。如果此字段存在且能解析为非空 ItemStack,则优先于shield_id。chance该生物在副手获得盾牌的生成几率。min_difficulty生物可能携带盾牌生成前所需的最低局部难度。
关于局部难度的说明
min_difficulty 使用 Minecraft 的有效局部难度,而不仅仅是所选的全局难度设置。
供参考:
- 和平模式下的原始区域难度始终为 0.0,简单模式下范围为 0.75 至 1.5,普通模式下为 1.5 至 4.0,困难模式下为 2.25 至 6.75。(参考:Minecraft Wiki)
- 较低的值允许盾牌更早或在更简单的条件下生成
- 较高的值使携带盾牌的生成更稀有,对游戏进度更敏感
兼容性
原版盾牌互动保持不变。
- 例如,疣猪兽和劫掠兽仍然使用其原版机制与盾牌互动。
Fresh Animations / EMF
- 使用 Fresh Animations 可以显示正确的格挡姿势。
- 此模组在使用盾牌时会覆盖 EMF 渲染管线中的实体手臂姿势。
Spartan Weaponry
- 具有
Shield Breach特性的武器可以使生物的盾牌失效,类似于原版斧头。
备注
盾牌行为围绕原版风格战斗流程设计,以僵尸作为时间和节奏的主要参考。
由于不同生物使用不同的原版 AI 结构,行为上的一些差异是预期的。兼容性改进和边缘情况修复可能会随时间继续添加。
如果您遇到生物盾牌行为异常损坏或不一致的情况,请随时报告。
支持
如果您想支持我的模组开发工作,包括维护、更新和兼容性工作,可以在 Patreon 上支持我:https://patreon.com/vomiter_scp
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。