Blood Arsenal
[!INFO] Git Commit:
890824b(tag1.5.12) | Updated: 2026-10-02
Blood Arsenal 是 GTNH 整合包中的血液主题工具/武器/护甲模组,
作者 Arcratus,仓库 GTNewHorizons/BloodArsenal。
官方描述:"Blood-themed tools, weapons, armor and much more!"
| 属性 | 实测值 |
|---|---|
| modid | BloodArsenal(混合大小写) |
| 资源域 | bloodarsenal(全小写,与 modid 不一致) |
| modName | Blood Arsenal(BloodArsenal.java:50) |
| 版本字段 | BATags.VERSION(间接常量,BloodArsenal.java:56) |
| 主包 | com.arc.bloodarsenal |
| Java 文件 | 136 |
| 注册方块 | 19(经本地 registerBlock 辅助方法) |
| 注册 TileEntity | 5 |
| 注册物品 | 57(经本地 registerItem 辅助方法) |
| 实体 | 1(EntityBloodTNT) |
| 配方 | 17(6 条绑定 + 11 条普通) |
| 语言文件 | 5(zh_CN / en_US / ru_RU / zh_TW / de_DE) |
| 硬依赖 | required-after:AWWayofTime |
| 软依赖 | NotEnoughItems、Baubles、guideapi、TConstruct、Waila、ForbiddenMagic |
[!IMPORTANT] 裁定:硬依赖是
AWWayofTime,不是 Blood Magic@Mod的依赖串(BloodArsenal.java:51)是:required-after:AWWayofTime;after:NotEnoughItems;after:Baubles;after:guideapi;after:TConstruct;after:Waila;after:ForbiddenMagicBlood Magic 全仓只出现 2 次,且都不是运行时依赖:
dependencies.gradle:5——api("com.github.GTNewHorizons:BloodMagic:1.9.0:dev"),编译期库README.md:7—— 相关项目链接Blood Arsenal 是从 WayofTime 系血脉魔法代码分叉出来的独立模组, 运行时依赖
AWWayofTime,把 Blood Magic 当作编译期代码库使用。 说它是「Blood Magic 配套 mod」不准确。
[!WARNING]
mcmod.info的dependencies是空数组mcmod.info写的是"dependencies": [], 完全漏报了硬依赖AWWayofTime和 6 个软依赖。 必须以@Mod注解为准。modid/name/version/mcversion全是${modId}/${modName}/${modVersion}/${minecraftVersion}占位符,同样不可用。
[!IMPORTANT] 数量必须数本地辅助方法,不能数
GameRegistry.*本 mod 自己定义了ModBlocks.registerBlock(ModBlocks.java:78、:99) 和ModItems.registerItem(ModItems.java:238)三个重载, 真正调用GameRegistry.registerBlock的只有 2 处。 直接grep GameRegistry.registerBlock会得到 2, 真实方块数是 19。物品同理:grep GameRegistry.registerItem得 3, 真实物品数是 57。这是本 mod 最容易出错的地方。
依赖关系
硬依赖
AWWayofTime—— 配方系统直接调用其BindingRegistry.registerRecipe(BloodArsenalRecipes.java:112起),且为required-after。
软依赖
NotEnoughItems、Baubles、Guide-API、TinkersConstruct、Waila、ForbiddenMagic。
编译期库(非运行时依赖)
| 依赖 | 声明位置 | 作用域 |
|---|---|---|
| Baubles-Expanded | dependencies.gradle:4 |
api |
| BloodMagic | dependencies.gradle:5 |
api |
| TinkersConstruct | :6 |
compileOnly |
| AppleCore | :7 |
compileOnly |
| Thaumcraft | :8 |
compileOnly |
| Guide-API | :9 |
compileOnlyApi |
BloodMagic、Baubles-Expanded 与 Guide-API 不在本 wiki 收录范围 (
relation.md无对应行),故不建分类、不加链接。 Thaumcraft / TinkersConstruct 已收录: Thaumcraft、Tinkers Construct。
注册机制:配置可禁用
两个本地辅助方法都支持通过配置跳过注册:
| 配置项 | 默认值 | 作用 |
|---|---|---|
BloodArsenalConfig.blocksToBeDisabled |
new String[] { "" }(BloodArsenalConfig.java:108–:111) |
跳过指定方块的注册 |
BloodArsenalConfig.itemsToBeDisabled |
空列表(:45) |
跳过指定物品的注册 |
默认值是单个空字符串,因此默认状态下 19 方块与 57 物品全部注册。 但配置可让数量下降,写「共 N 个」时必须注明这是默认值下的数量。
方块列表
共 19 个方块,全部在 ModBlocks.init()(ModBlocks.java:45–:68)注册。
- 血石 - 5 张贴图自绘,唯一没有设置方块名的方块
- 血肉 TNT - 爆炸方块
- 血染玻璃 - 装饰
- 血浸原木 / 血浸木板 - 建材
- 血染冰 / 血染浮冰 - 冰系
- 血浸铁块 - 建材
- 血蛋糕 - 食物,不进创造模式物品栏
- 血火把 - 光源
- 血浸萤石 - 光源
- 血灯 - 光源
- 血浸钻石块 - 建材
- 便携祭坛 - 有 ItemBlock 类 + TileEntity
- 生命注入器 - 有 TileEntity
- 压实器 - 有 TileEntity
- LP 物质化器 - 有 TileEntity
- 压实 MRS - 有 ItemBlock 类 + TileEntity
- 焦化之线 - 不进创造模式物品栏
物品列表
共 57 个物品,全部在 ModItems.init()(ModItems.java:137–:195)注册。
规模较大,按用途分组:
- 绑定与吸血鬼装备 - 绑定弓/镰刀/剪/点火器、吸血鬼披风等
- 血橙与消耗品 - 食物与药剂类
- 血浸工具与武器 - 木/铁/钻石工具套装(没有绿宝石级)
- 护甲套装 - 4 种护甲材质 + 4 种工具材质
- 符文 - 5 个符文,含耗能差异
- 饰品(Baubles) - 5 件,
postInit软依赖注册
药剂效果
- 血与仪式药剂 - 4 个药水效果 + 1.7.10 数组扩容补丁
仪式
- 仪式 - 5 个 AWWayofTime 炼金仪式
集成
- 泰姆craft 集成 - 2 个魔杖材料 + 3 个组件 + 3 条研究
- 工业 2 集成 - 熔融血浸铁流体、魂绑定修饰符
- 力量握持 - 自建网络通道
"AugmentedHolding" - Guide-API 集成 - 焚血宝典,1 分类 / 2 条目 + 血宝珠配方
配方列表
- 配方系统 - 17 条配方,6 条走 AWWayofTime 绑定系统
实体列表
- 血肉 TNT 实体 - 本 mod 唯一被注册的实体
[!WARNING]
EntityBloodHound是死代码,不是覆盖缺口CommonProxy.java:31-32里它的注册被注释掉了:// EntityRegistry.registerModEntity(EntityBloodHound.class, "BloodHound", 3, BloodArsenal.instance, 96, // 3, true);类文件
common/entity/mob/EntityBloodHound.java与客户端渲染器client/renderer/entity/RenderEntityBloodHound.java都存在, 且BoundShears.java:229会spawnEntityInWorld(new EntityBloodHound(world))—— 但实体没有注册 ID、也没有网络生成, 且CommonProxy.initRendering()是空的// TODO Auto-generated stub, 渲染器从未接线。故实体数量是 1,不是 2。
快速导航
- Thaumcraft - 编译期依赖(
compileOnly) - Tinkers Construct - 编译期依赖(
compileOnly)