跳到正文

Fear of Anything

作者:Sylsatra

让指定生物远离可配置的方块和物品。你可以自定义受影响的实体及其惧怕的对象,还能通过冷却时间、距离检测和火焰相关设置优化性能。

收藏

介绍

介绍由机器翻译自 Modrinth 原页面,仅供参考。

对任何事物的恐惧

自定义生物AI,让任何生物害怕任何物品、方块或玩家。生物控制的终极工具,适用于自动化农场和创意基地防御。服务端运行、轻量级且完全可配置。


完全掌控生物AI。由你决定它们害怕什么。

你是否厌倦了可预测的生物行为?想建造真正独特的基地防御,或设计复杂的自动化生物农场?_Fear of Fire_ 的作者带来了Fear of Anything,将这个理念进化为强大的通用工具,让你完全掌控生物AI。

这个服务端模组允许你为游戏中的任何生物创建基于恐惧的规则,包括来自其他模组的生物。让苦力怕逃离花朵,让僵尸逃离手持金剑的玩家,甚至让强大的模组Boss从一块简单的羊毛旁退却。借助对NBT数据、方块状态的支持,以及现在通过数据包实现的基于阶段的创伤与繁殖,创意生物控制、自动化和玩法设计的可能性真正无穷无尽。

示例数据包(包括创伤和繁殖规则)可在此处获取:
https://github.com/Sylsatra/firefearmod/tree/3.0.0-1.20.1/datapacks


主要特性

  • 🧠 可自定义的生物AI:模组的核心。通过定义生物的恐惧来源,精确控制其行为。整合包作者和技术型玩家的必备之选。
  • 🎯 以任何生物为目标(支持NBT):将原版或模组中的任何生物加入恐惧组。可以针对所有僵尸,或仅针对具有特定名称或穿着特定盔甲的僵尸。
  • 🗡️ 对物品的恐惧(支持NBT):让生物逃离手持物品的玩家,或逃离地上的物品。这包括模组物品和特定NBT数据,可实现诸如“苦力怕驱赶棒”之类的独特工具。
  • 🧱 对方块的恐惧(支持方块状态):将任何方块指定为恐惧来源。系统足够智能,能检查特定方块状态,例如拉杆处于powered:true状态或栅栏处于waterlogged:true状态。
  • 📜 两种配置方式:TOML 与数据包:使用经典的firefearmod-common.toml来设置简单的全局恐惧规则,或启用新的代际创伤系统,通过JSON数据包驱动一切(非常适合整合包和服务器)。
  • 🚀 服务端运行且轻量级:模组完全在服务端运行,玩家无需安装。AI检查经过高度优化,性能影响极小,确保在任何服务器上都能流畅运行。
  • 🕵️ 可选的 Sound Attract 集成:如果安装了Sound Attract模组,Fear of Anything 将自动使用其视野和潜行检查,使恐惧行为能正确响应潜行移动和自定义视野锥。

v3.0.0 新增内容——代际创伤与繁殖

🧬 基于阶段的代际创伤(数据包驱动)

开启:

  • INTERGENERATIONAL_TRAUMA_ENABLED(默认:false)

……即可解锁由数据包控制的基于阶段的恐惧系统:

  • 生物现在拥有按组划分的创伤阶段。早期阶段较简单,后期阶段可以有条件。
  • 示例:一头牛在阶段0害怕火焰类方块。被玩家击中后,这头牛——以及附近的任何牛——可以解锁阶段1,此时它们会害怕玩家。
  • 创伤还可以传播和继承:
  • 经历:被特定来源伤害。
  • 目睹:看到附近发生不好的事情。
  • 继承:幼年生物可以从父母继承创伤阶段。
  • 每组最大阶段受以下限制:
  • MAX_TRAUMA_STAGES_PER_GROUP(默认:3)

所有这些都在数据包的 JSON 恐惧组中定义,因此整合包作者无需改动核心配置就能实现复杂行为。

👁️ 更智能的恐惧可见性模式

数据包系统为每个实体新增了可见性模式:

{ "type": "entity", "id": "minecraft:ocelot", "fear_override": true, "visibility_mode": "ALWAYS" }
  • visibility_mode: "ALWAYS"生物只要看到目标就会恐惧它。在上面的示例中,生物一看到豹猫就会逃跑,而使用"fear_override": true时,即使该豹猫通常具有敌意,它也会拒绝仇恨该豹猫。
  • 默认(省略visibility_mode时)生物只有在双方都能看到彼此(相互视线)时才会恐惧目标。这非常适合更“决斗式”或社交性的遭遇。

这让你可以调节恐惧更像是“猎物一见捕食者就逃”,还是“只有真正互相瞪视时才恐慌”。

🍼 自然与强制繁殖系统(数据包驱动)

现在,你可以使用数据包为每个生物定义自然和强制繁殖规则:

  • 自然繁殖:同类型生物在范围内可以随时间自动产生后代,受附近幼年生物数量和每条规则冷却时间的限制。
  • 强制繁殖(物品触发):繁殖还可以要求父母之一持有特定物品。

示例:

{
  "enabled": true,
  "mob": "minecraft:skeleton",
  "child": "minecraft:skeleton",
  "partner_radius": 8.0,
  "cooldown_ticks": 3000,
  "max_nearby_children": 8,
  "consume_item": true,
  "require_held_item": "minecraft:bone"
}

在此示例中,如果两只骷髅相距 8 格以内,且至少有一只手持骨头,它们就可以繁殖。由于原版没有幼年骷髅,因此会生成成年骷髅。其他生物(包括模组生物)也可以通过数据包以相同方式配置。

你可以在这里找到即用型示例数据包(敌对生物、村民等):
https://github.com/Sylsatra/firefearmod/tree/3.0.0-1.20.1/datapacks


你会创造什么?

这是一个供你发挥创造力的沙盒。以下只是一些想法:

  • 终极防苦力怕:让苦力怕恐惧minecraft:poppy方块。终于,你可以随心所欲地建造,同时知道你美丽的花园也是你最好的防御。
  • 自动化刷怪场与放牧:利用恐惧设计路径和分拣系统,打造高级刷怪场。用特定物品作为“放牧魔杖”,将生物精确引导到你想要它们去的地方,实现高效养殖。
  • 沉浸式基地防御:创建契合你世界的主题防御。让掠夺者恐惧minecraft:emerald_block,无需一堵墙就能保护你的村民交易大厅。
  • 冒险地图与任务设计:构建复杂的任务和谜题。制作一个“神圣护符”,迫使强大的 Boss 逃跑,让玩家得以进入新区域。叙事潜力巨大。
  • 即时安全区:如果想要更简单的生存体验,可以让所有敌对生物恐惧minecraft:crafting_table,无论你走到哪里都能获得一个保证安全的区域。
  • 世代故事:让生物“记住”跨越世代的创伤事件。一个经历过袭击而幸存的村庄,可能会养育出对掠夺者和玩家永久保持警惕的孩子。

常见问题

问:如何配置生物及其恐惧?
答:如需使用经典行为,请编辑 配置文件:firefearmod-common.toml,它位于你的 config 文件夹中。若要使用全新的创伤和繁殖系统,则需要使用 JSON 数据包。你可以在此处获取示例数据包:
https://github.com/Sylsatra/firefearmod/tree/3.0.0-1.20.1/datapacks

问:这对其他模组中的生物和物品也有效吗?
答:完全有效。你可以使用 ID 指定任何已注册的生物、物品或方块(例如 thermal:blizz、ars_nouveau:source_gem)。对 NBT 和方块状态的支持确保了深度兼容性。

问:这是 Forge 版还是 Fabric 版?
答:该模组目前仅适用于 Forge。

问:这会让我的服务器卡顿吗?
答:不会。该模组将性能放在首位。AI 扫描高效且轻量,因此适用于各种规模的服务器。

常见问题

Fear of Anything 支持哪些 Minecraft 版本?

Fear of Anything 支持 Minecraft Java 版 1.18–1.20.1,共 9 个版本,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

Fear of Anything 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端和服务端都要装。

评论

登录后评论和评分

Sylsatra 的其他作品

查看全部 →