Avaritia
[!INFO] Minecraft 1.7.10 / Forge 10.13.4.1614 | modid
Avaritia
Avaritia(开发者 fox.spiteful)是 GTNH 的终局合成向功能模组,提供从「钻石晶格」一路 推到「无限装备」的长链条,以及奇点、终极合成台等高阶机器。
- modid:
Avaritia—— 首字母大写,不是全小写avaritia - 资源域:
avaritia - 创意标签:
avaritia(图标为resource,getIconItemDamage()固定返回 5) @Mod依赖:after:Thaumcraft;after:AWWayofTime;after:Botania;before:eternalsingularity@[1.4.0,)—— 全部为after软依赖,无required-after
多方块结构
本 mod 无多方块结构。 全部机器均为单方块(源码中 IMultiblock / multiblock 零命中)。
方块列表
- 终极合成台 - 9×9 合成矩阵;硬度 50.0 / 抗爆 2000.0;crafting-only 模式下唯一常驻方块
- 二倍压缩工作台 - 2×2 合成台;硬度 4.0;常驻
- 三倍压缩工作台 - 3×3 合成台;硬度 8.0;常驻
- 水晶矩阵 - 终极材料中转;硬度 50.0 / 抗爆 2000.0
- 终极材料块 - 2 个 metadata:终极中子块 / 无限块
- 中子集束器 - 制作终极中子锭;硬度 20.0
- 终极中子压缩器 - 产出奇点;2 槽
- 物质团开箱器 - 需同时安装 gtnhlib 与 modularui2 才注册
物品列表
- 终极之石 - 8 个 metadata,从钻石晶格到无限锭的主线
- 奇点 - 10 个 metadata:铁/金/青金石/红石/下界石英/铜/锡/铅/银/镍
- 无限镐 / 无限之剑 / 无限锹 / 无限斧
- 无限弓 - 发射天堂之箭;不属于无限套装判定
- 无限头盔 / 无限胸甲 / 无限护腿 / 无限靴 - 四件齐备时
isInfinite为真 - 骷髅之剑 - 击杀骷髅掉落其骷髅
- 终极之汤 - 再生 300 tick
- 终极肉丸 - 伤害增强 300 tick
- 终末珍珠 - 生成虚空凝视者
- 破碎矿石 - 默认不注册(
Fractured Ores默认 false) - 物质团 - 开箱器材料
实体列表
- 终末珍珠实体 - EntityID 1,更新 10 tick,追踪 64
- 虚空凝视者 - EntityID 2,更新 10 tick,追踪 256,不可被追踪
- 天堂之箭 - EntityID 3,更新 1 tick
- 天堂之箭(子) - EntityID 4,更新 2 tick
成就与设置
生命周期与内容开关
Avaritia 的三个阶段各自提前返回,Config.craftingOnly 会在每段跳过一部分注册:
| 事件 | craftingOnly = false 时执行 |
|---|---|
earlyGame (preInit) |
LudicrousItems.grind()、LudicrousBlocks.voxelize()、Compat.census()、LudicrousEntities |
midGame (init) |
Grinder.artsAndCrafts()、GUI handler、客户端渲染、LudicrousEvents |
endGame (postInit) |
Compat.compatify()、Gregorizer.balance()、Mincer、Achievements.achieve() |
Config.craftingOnly = true 时,仅保留 resource 物品、终极合成台、
二倍压缩工作台、三倍压缩工作台,
用于只需 CraftTweaker 配方的场景。
跨模组兼容内容(非 Avaritia 自有)
[!IMPORTANT]
LudicrousItems/LudicrousBlocks中有 5 个静态字段在grind()/voxelize()里 从不赋值,它们由兼容层按目标 mod 是否安装来创建。这些不是 Avaritia 的物品:
| 字段 | 实际创建位置 | 依赖 mod |
|---|---|---|
akashic_record |
compat/thaumcraft/Lucrum.java:43 |
thaumcraft |
bigPearl |
compat/thaumcraft/Lucrum.java:45(注册名 big_pearl) |
thaumcraft |
combs |
compat/forestry/Ranger.java:42 |
forestry |
beesource |
compat/forestry/Ranger.java:44(注册名 Beesource) |
forestry |
armok_orb |
compat/bloodmagic/Bloody.java:15 |
bloodmagic |
infinitato |
compat/botania/Tsundere.java:72 |
botania |
armok_orb 甚至是 armok 成就的图标——
该成就的注册条件正是 if (Compat.blood)。
[!NOTE]
LudicrousItems.morv_in_a_box与ItemMorvInABox在grind()中整行注释, 不是真实注册。同理EntityImmortalItem未走EntityRegistry,是掉落时直接 new 的EntityItem子类。
其他机制
- 矿物词典(
Grinder.artsAndCrafts()):blockCrystalMatrix、blockCosmicNeutronium、blockInfinity、ingotCrystalMatrix、ingotCosmicNeutronium、ingotInfinity - 合成催化剂:
Grinder.catalyst(ShapelessOreRecipe),供终极合成台反合成使用 - 无限装备:与 draconic-evolution 的无限装甲存在互斥,
由
InfinityArmorRuntimeHandler同时注册到 Forge 与 FML 两个事件总线处理