SpecialMobs
[!INFO] Git Commit:
a32b8c4| Updated: 2026-10-02 modid:SpecialMobs| 资源域:specialmobs| Forge10.13.4.1614/ MC 1.7.10
Special Mobs(特殊生物)由 FatherToast 维护,主类 toast.specialMobs._SpecialMobs(类名以下划线开头,用于规避某些排序问题)。
[!IMPORTANT] 它不添加任何新生物,而是把 12 种原版敌对生物各扩展为 1 个替换种 + N 个亚种变体,共 109 个注册实体(106 个来自双层循环 + 3 个单独注册)。没有方块、物品或 TileEntity。
核心机制
registerMobs() 用 MONSTER_KEY[](12 个原版生物)与 MONSTER_TYPES[][](94 个亚种名)两个字符串数组驱动双层循环 + 反射加载类名:
toast.specialMobs.entity.<key小写>.Entity_Special<Key> → "Special<Key>"
toast.specialMobs.entity.<key小数>.Entity<变体><Key> → "<变体><Key>"
[!WARNING] 统计陷阱:循环体内只有 1 处
EntityRegistry.registerModEntity调用,但实际注册 106 个实体。 naive grep 计数会得到 1-4,远少于真实值。mcmod.info的${modId}是占位符,真实 modid 来自gradle.properties:10modId = SpecialMobs。
依赖
mcmod.info 中 dependencies: [] —— 无硬依赖。
软兼容(全部为运行时 Class.forName 探测或 IMC,可缺失):
| 目标 | 方式 |
|---|---|
| WAILIA | IMC FMLInterModComms.sendMessage("Waila", "register", ...) |
| Spice of Life / AppleCore | 软依赖,方法体内 instanceof |
| Advanced Genetics | 反射 com.advGenetics.API.RegistrationHelper |
内容规模
| 类别 | 数量 |
|---|---|
| 注册实体 | 109(12 替换种 + 94 亚种 + FishHook + Spitball + LavaMonster) |
| 渲染器 | 16(12 基种 + FishHook + Spitball + LavaMonster) |
| 方块 / 物品 / TileEntity | 0 / 0 / 0 |
| 网络消息 | 2(均为 S→C) |
| 刷怪蛋 | 由反射抢占 id 生成,最多 109 个 |
| 语言文件 | 2 |
| 多方块结构 | 0 |
条目列表
生物
机制
- 配置项 - 6 个分类,14 个读取点
- 兼容适配 - WAILIA / Spice of Life / Advanced Genetics,含一处语义写反
- 网络消息 - 2 个 S→C 消息,服务端权威设计
跨分类引用
- Forbidden Magic —— 后者通过
Config.special兼容本 mod,为 WrathCage 生成特殊生物(单向依赖)