BloodMagic
[!INFO] Git Commit:
6776676| Updated: 2026-10-02
Blood Magic(模组名 Blood Magic: Alchemical Wizardry,代码名 Alchemical Wizardry)是 WayofTime 编写、GTNH 维护的 1.7.10 大型魔法模组。核心机制是生命点(Life Essence,简称 LP) 流体:玩家用 香炉 把可燃物转化为 LP,再通过 血之祭坛、仪式石结构 与 炼金煅烧炉 三套并列的配方系统把 LP 转化为装备、道具与效果。
模组同时提供 4 套相互独立的内容树:约束(绑定)系统把普通装备升级为 Blood Magic 护具;法术系统以 4 范式 × 4 类型 × 4 元素组合出 64 种法术效果;恶魔村庄维度可通过仪式 AW031Convocation 进入并遭遇 24 种自注册实体;陨石与压缩系统提供独立的自动化能力。
五个名字互不相同
本模组的modid、资源域、分类名、目录名、jar 名是五个互相独立的字符串,引用时务必区分:
| 名称 | 值 | 来源 |
|---|---|---|
| modid | AWWayofTime |
AlchemicalWizardry.java:302 的 @Mod(modid = "AWWayofTime", ...);与 gradle.properties 的 modId 一致 |
| 资源域 | alchemicalwizardry + alchemicalwizardrybooks |
src/main/resources/assets/ 下两个目录,共 2 个资源域;两者各带 lang/,alchemicalwizardry 有 9 种语言、alchemicalwizardrybooks 有 2 种 |
| 分类名 | bloodmagic |
本 wiki 的分类名(relation.md 指定) |
| 目录名 | BloodMagic |
/Users/evlos/a/mirror/BloodMagic/,首字母 B 与 M 均大写(用 os.listdir 验证,APFS 大小写不敏感,ls 不可靠) |
| jar 名 | BloodMagic-<版本>.jar |
gradle.properties:199 的 customArchiveBaseName = BloodMagic |
⚠️ modid ≠ 分类名:modid 是
AWWayofTime,不是bloodmagic。命令、配置文件名(AWWayofTime.cfg)、实体语言键(entity.AWWayofTime.*)与 IMCSender 字符串均用 modid,而非分类名。
版本与依赖
- MC 版本 1.7.10,证据形式 ①:
gradle.properties:24的minecraftVersion = 1.7.10;形式 ②:mcmod.info的"mcversion": "${minecraftVersion}"占位符回溯到同一行;形式 ③:@Mod注解未声明acceptedMinecraftVersions,故该形式无内容。 - Forge 版本
10.13.4.1614(gradle.properties)。 - 验证分支/标签:
master分支,HEAD =6776676ef209d8c142a1a159519c40d06c7e0bc7,且 HEAD 正好等于仓库唯一标签1.9.13(git rev-parse 1.9.13与git rev-parse HEAD相同)。git cat-file -t 6776676返回commit,引用有效。仓库中不存在其他 MC 版本的分支或标签,不存在跨版本合并问题(ROADMAP §0.11)。 - 依赖:硬依赖 CodeChickenLib 与 NotEnoughItems(均为
after:顺序依赖),api依赖 Waila 与 NEI,另有 11 个compileOnly软依赖。详见 依赖声明。
注册内容统计(仅 live 注册)
| 类型 | 数量 | 证据 |
|---|---|---|
| 方块 | 39 | ModBlocks.java:166-232,声明/赋值/注册三向交叉核对一致 |
| 物品 | 120 | ModItems.java:420-568 |
| 物品(Thaumcraft 条件) | 4 | AlchemicalWizardry.java:3254-3257 |
| 物品(guideapi 条件) | 1 | AlchemicalWizardry.java:3307 |
| TileEntity | 24 | AlchemicalWizardry.java:1479-1502(CommonProxy.registerTileEntities() 的另 2 处无调用点,为死代码,见法术与工具投射实体) |
| 实体(恶魔 / 元素精灵 / 小恶魔) | 24 | 实体 ID 20–43 连续无缺 |
| 实体(法术与工具弹道) | 18 | 实体 ID 0–17,注册于 CommonProxy.registerEntityTrackers()(由 AlchemicalWizardry.java:741 调用),见法术与工具投射实体 |
| 工作台配方 | 135 | 有序 125 + 无序 10,见工作台配方 |
| 成就 | 24 + 1 成就页 | ModAchievements.init(),见成就 |
| 血之祭坛(altar)配方 | 25 | initAltarRecipes() |
| 仪式(ritual) | 36 | initRituals(),AW001–AW036 无缺号 |
| 炼金(transmutation)配方 | 57 | AlchemyRecipeRegistry.registerRecipe |
| 炼金药水配方 | 26 | initAlchemyPotionRecipes() |
| 法术效果 | 64 | 4 范式 × 4 类型 × 4 元素;磁盘 CSE* 类数同为 64 |
| 印记 | 21 | 注册数与 common/items/sigil/ 类数一致 |
| 试剂 | 15 | ReagentRegistry |
| 配置字段 | 213 | 死配置 0 |
| 指令 | 1(4 子指令) | /bloodmagic |
| 加载检查点 | 18 | Loader.isModLoaded 去重计数 |
| 机器拉黑名单 | 24 实体 | 与注册实体数完全一致 |
已排除的死代码
| 死代码 | 证据 | 处理 |
|---|---|---|
focusBloodBlast、focusGravityWell、itemBloodFrame |
ModItems.java:258-260 声明,= new 与 registerItem 中均无出现 |
不计入 120 件物品 |
RitualEffectApiaryOverclock |
AlchemicalWizardry.java:4319 注册被整行注释 |
不计入 36 条仪式 |
RitualEffectAlphaPact |
全仓库仅自身文件引用该类名,无对应语言键 | 不计入 36 条仪式 |
CommandBind、CommandUnbind、CommandSN |
全仓库 registerServerCommand 仅 1 次且只注册 CommandBloodMagic;3 类在自身文件外 0 引用 |
不计入指令数 |
itemFluidSigil、itemAssassinSigil |
ModItems.java:339 注释标 // Unimplemented,但确实已注册 |
保留计数,并标注源码自述未实现 |
静默失败点
| 位置 | 现象 |
|---|---|
AlchemicalWizardry.java:728 |
catch (Exception ignored) {} —— 完全空的 catch,解压默认配置失败时无任何日志 |
BloodMagicConfiguration.java:62-64 |
配置加载异常时只记录固定字符串,异常对象 e 未被记录,无法定位原因;finally 仍会 config.save() |
AlchemicalWizardry.java:3291-3294 |
Thaumcraft 集成整段被 catch (Exception e) { e.printStackTrace(System.err); } 包裹,4 件装备会静默缺失 |
AlchemicalWizardry.java:3373-3375 |
ChromatiCraft 反射拉黑失败仅记日志,玩家无感知 |
方块列表
- 血之祭坛 - LP 转译主机器,附 5 种血符文与 4 个独立符文方块
- 香炉 - LP 的生产端,世界内方块与 GUI 结构
- 仪式石系统 - 承载 36 条仪式的 7 个结构方块
- 炼金试剂方块 - 煅烧炉、中续器、玻璃钟罩、炼金术台
- 约束装甲方块 - 血插槽与灵魂装甲锻造石
- 法术方块 - 4 范式 + 4 效应器 + 4 修饰符 + 15 附属
- 恶魔村庄方块 - 恶魔传送站、恶魔箱子、模拟方块
- 其他方块 - 砖石、碎片集晶、传送器、影桥、血光、图纸存储器
物品列表
- 气血宝珠 - 6 级宝珠,容量 5000 → 30000000 LP
- 印记 - 21 个印记,含 2 个源码标注 Unimplemented
- 约束装甲 - 基础 4 件套 + 4 元素欧米伽套装(16 件)
- 约束工具与传送核心 - 11 件武器工具 + 6 个传送/路由核心
- 仪式工具 - 6 个元素铭文、推测杖、拆解杖、激活水晶
- 合成材料 - 石板升级链、气血碎片、生命之桶
- 炼金消耗品 - 药瓶、催化剂、结合剂、填充剂、香
- 其他物品 - 牺牲匕首三件套、约束钥匙、法术水晶
方块实体列表
- 方块实体总览 - 24 个 TE 清单与三层继承结构
血之祭坛配方列表
- 血之祭坛配方 - 25 条 altar 配方的完整参数表
仪式列表
炼金列表
气血与生命之源列表
- 生命之源与气血网络 - LP 的生产、网络、陨石与压缩
法术列表
- 法术系统 - 64 = 4 范式 × 4 类型 × 4 元素的组合结构
实体列表
- 恶魔与元素精灵 - 8 个恶魔领主 + 6 个元素精灵,ID 20–33
- 小恶魔(格伦魔) - 10 个小恶魔与恶魔法阵封包,ID 34–43
- 法术与工具投射实体 - 18 个法术 / 工具弹道与掉落实体,ID 0–17(在服务端代理中单独注册)
成就列表
- 成就 - 24 条成就 + 1 个成就页,含 2 条不可达成就与 1 个死列表
工作台配方列表
- 工作台配方 - 135 条原版工作台配方(有序 125 / 无序 10)与 2 个自定义
RecipeSorter条目
集成列表
- 依赖声明 -
dependencies.gradle与@Mod依赖 - 运行时集成 - 18 个
Loader.isModLoaded检查点 - Thaumcraft 集成 - 唯一会注册装备的可选依赖
指令列表
- /bloodmagic 指令 - 1 主指令、4 别名、4 子指令
配置列表
- 配置总览 -
AWWayofTime.cfg的 19 个分类与 213 个字段
收录范围与未收录内容
本分类已覆盖 39 方块、120+5 条件物品、24 TileEntity、42 实体(ID 0–17 与 20–43 全覆盖)、135 工作台配方、24 成就、118 条并列配方(25 altar + 36 ritual + 57 alchemy)及 213 个配置字段的全量清单(以表格形式归并同类项)。未展开的内容及原因:
ItemComponents(baseItems)的全部 meta 语义:需逐分支追踪,本次只记录已核实的 5 个 meta。baseItemsmeta 29 作为demons成就的图标已登记在成就,但其物品含义未展开。api/soulNetwork包的衰减算法:网络容量衰减速率等未逐行核实。- 客户端渲染细节(
client/包 26 个文件):本次聚焦服务端注册内容与配置。 成就系统:已补全,24 条成就 + 成就页 + 触发机制 + 2 条不可达成就,见成就。单个工作台配方的逐条转写:已补全 135 条的产出全表,见工作台配方。配方的具体形状字符串与材料未逐条转写,仅登记产出、类型与配方类。