生成器动能

生成器动能

制作能追踪刷怪笼(以及怪物本身)的怪物部件罗盘。刷怪笼严格来说并没有动能,但它依然有效。

怪物

刷怪笼动能探测 (SKE)

探测。追踪。摧毁。

这是一个适用于 Minecraft 26.1.2 / 26.2 的服务端 Fabric 模组。用生物部件和一个回溯指南针合成,即可获得一个探测器,它会指向最近已知的该类生物刷怪笼。适用于原版 Java 客户端以及通过 Geyser 加入的 Bedrock 玩家——无需客户端模组,无需资源包。

在一位绝望的工程师的第二十七座骷髅农场因一个未标记的洞穴而毁于一旦后,他把一个僵尸的头用胶带绑在回溯指南针上,发明了刷怪笼动能探测领域。同行评审并不友好。评审员指出,刷怪笼是静止的,不具有任何动能。工程师拒绝解释它为何有效。但它就是有效。

探测器

无序合成:回溯指南针 + 生物部件(可配置)。默认目录涵盖75 种以上生物——每种具有合理特征物品的原版生物都有对应配方,从经典物品(僵尸的头、烈焰棒)到火药 → 苦力怕、羽毛 → 鸡、铁锭 → 铁傀儡、绿宝石 → 村民、幽匿催发体 → 循声守卫,甚至还有橡木原木 + 桶 → 硫磺立方体。部分亮点:

材料 探测器
僵尸的头 僵尸 SKE
骷髅头颅 骷髅 SKE
烈焰棒 烈焰人 SKE
火药 苦力怕 SKE
金苹果 僵尸村民 SKE
湿海绵 远古守卫者 SKE
曲奇 (用于合成。千万别喂给它。) 鹦鹉 SKE
骨头 + 骷髅头颅 骷髅马 SKE
鞍 + 僵尸的头 僵尸马 SKE
橡木原木 + 桶 硫磺立方体 SKE

完整列表位于 config/ske/detectors.json,每种生物对应一个带有注释的条目。组合配方(合成网格中的三个物品)绝不会与单物品配方冲突。少数生物不会掉落任何可用物品,因此只能通过头部合成:蝙蝠、蝌蚪、骡、商旅羊驼。蝙蝠对科学毫无贡献。

指针会指向最近的匹配刷怪笼——包括试炼密室中的试炼刷怪笼(可通过配置开关)。如果该生物没有已知的刷怪笼,指针会回退到最近的该类活体生物(仅限已加载区块)——当它追踪的是生物而非刷怪笼时,仪表会显示绿色的LIVE标签。当有已知刷怪笼时,刷怪笼始终优先;每个条目的 mode 字段可以强制仅使用 "spawner" 或 "entity" 服务。如果完全找不到目标,指针会旋转。在范围内(默认 64 格)时,快捷栏上方会出现一个信号强度读数仪表,并伴有随着你接近而音调升高的提示音。

潜行 + 右键可将指针锁定在当前信号上(会出现金色的 LOCKED 标签),这样在你逐一清理地牢时,它就不会重新瞄准更近的目标;再次潜行点击可解除锁定。到达刷怪笼附近(4 格内,可配置)会播放一段提示音,并宣布“信号源已定位”,同时将指南针 lore 中的“已定位刷怪笼”计数增加一——每个探测器都保留自己的终身记录。

猎杀模式 & 实体黑名单

自定义条目将任意物品映射到 minecraft:player 即可制作玩家追踪指南针——即时开启猎杀游戏。另一方面:config.json 中的 "entity-blacklist" 允许管理员禁止追踪任何实体(玩家和循声守卫通常是重点对象)。被列入黑名单的生物无法合成对应探测器,它们已有的探测器也只会空转。

BlueMap

在使用 BlueMap?将 "bluemap-markers": true 设置为 true,则每个已索引的刷怪笼都会作为 POI 标记出现在“Spawners (SKE)”图层中(在地图 UI 中默认隐藏)。请注意,地图查看者可以自行开启该图层——如果刷怪笼位置需要保密,请勿启用此功能。SKE 在未安装 BlueMap 的情况下也能正常运行。

更多生物头颅 / 所有其他生物

启用自动头颅规则(默认开启)后,任何名为“<生物名> Head”的玩家头颅都可以合成对应生物的探测器——无需任何配置。如果你使用了 Vanilla Tweaks 的 More Mob Heads 数据包,这意味着游戏中每种生物的头颅掉落后都能立即合成可用的探测器:“Cow Head”追踪牛,“Warden Head”追踪循声守卫,变种名称也能正确识别(“Red Sheep Head” → 羊,“Farmer Villager Head” → 村民)。头颅名称会在合成时对照实时实体注册表进行解析,因此新的原版生物和模组生物会自动识别——一个“Troll Head”可以无需任何配置或 SKE 更新就能找到 somemod:troll。有刷怪笼的生物会指向刷怪笼;其他所有生物则追踪活体。

如果你在使用数据包并希望头颅继续作为有意义的门槛?将 config.json 中的 "more-mob-heads": true 设置为 true——生物掉落物配方会关闭(羽毛不再能追踪鸡),而真正的头/颅骨配方、组合配方以及你自己的自定义条目仍然有效。是的,一个铁砧和一个谎言就能骗过它。这个设备并不聪明。它只是有效。

探测原理

探测器只知道自 SKE 安装以来服务器至少加载过一次的区块中的刷怪笼——索引会随着玩家探索而填充,并随世界一起保存。两个管理员逃生舱口:

  • /ske scan [radius] 重新扫描你周围已加载的区块。
  • 配置中的 magic-x-ray: true 允许探测器在后台线程中悄悄扫描持有者周围的已生成区域文件。此过程不会加载或生成任何区块;它只是读取磁盘上已有的数据。

命令

  • /ske 或 /ske list — 探测器目录(所有人)
  • /ske stats — 每个维度的已索引刷怪笼数量(游戏管理员)
  • /ske scan [radius] — 重新扫描附近已加载区块(游戏管理员)
  • /ske give <players> <entity> — 发放探测器;支持选择器,适用于命令方块和任务奖励(游戏管理员)
  • /ske reload — 热重载配置、探测器和配方(管理员)

配置

首次运行时,config/ske/ 目录中会出现两个带注释的文件(允许注释——它们会保留,因为 SKE 从不重写你的文件):

  • config.json — 指针更新速率、探测范围、接近指示器、实体探测、自动头颅规则、魔法 X射线、自动保存。
  • detectors.json — 配方目录。可随意为模组生物添加条目:刷怪笼就是刷怪笼。将 item 指向模组的标志性掉落物,并将 entity 指向其生物 ID。可选的每条目字段:mode(auto/spawner/entity)和 head-name(用于共享物品玩家头颅的显示名称匹配)。

模组开发者

两种集成途径,无需硬性依赖:

  • 数据包:在你的模组 jar 中提供 data/<yournamespace>/ske_detectors/anything.json——一个与 detectors.json 格式相同的条目数组。它仅在 SKE 存在时被读取,否则无效。
  • Java 入口点:在 fabric.mod.json 的入口点中声明 "ske": ["com.example.MySkeHook"],并实现 com.ske.api.SkeEntrypoint。

服务器所有者可以在 config/ske/detectors.json 中按物品覆盖任一路径。

构建

./gradlew build

默认目标为 Minecraft 26.1.2。要为 26.2 构建,请交换 gradle.properties 顶部的版本块并重新构建。需要 JDK 25。

许可证

MIT