Boss

基本信息

属性 值
Boss 实体类 4 个(2 个主 Boss + 2 个小 Boss)
注册位置 init/EntityList.java:60-63
实体类文件 entity/boss/(4 个文件,共 2065 行)
龙类实体 EntityBossDragon(923 行)是全模组最大单类

功能

实体注册表

实体 注册名 实体 ID 追踪范围 血量 位置
EntityBossDragon Dragon 8 320 250D + min(90, 死亡次数 × 15) + (opMobs ? 80 : 0) EntityList.java:60、EntityBossDragon.java:157-160
EntityBossEnderDemon EnderDemon 21 512 固定 400.0 EntityList.java:61、EntityBossEnderDemon.java:62
EntityMiniBossEnderEye EnderEye 11 256 opMobs ? 350 : 250 EntityList.java:62、EntityMiniBossEnderEye.java:72
EntityMiniBossFireFiend FireFiend 23 256 opMobs ? 380 : 300 EntityList.java:63、EntityMiniBossFireFiend.java:82

血量公式(末影龙,entity/boss/EntityBossDragon.java:157-160):

getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(
        250D + Math.min(90, WorldDataHandler.<DragonSavefile>get(DragonSavefile.class).getDragonDeathAmount() * 15)
                + (ModCommonProxy.opMobs ? 80D : 0D));

即每杀一次末影龙 +15 血,上限 +90;开启 overpoweredMobs 配置再加 80。

⚠️ 实体 ID 21 重复

EnderDemon 使用 ID 21(EntityList.java:61),LightningBoltDemon 也使用 ID 21(EntityList.java:109):

GameRegistryUtil.registerEntity(EntityWeatherLightningBoltDemon.class, "LightningBoltDemon", 21, 512, 1, false);

两行都在同一次 registerEntities() 调用中执行(EntityList.java:57-135),EntityList.java:135 的注释 // last: 53 说明作者知道 ID 已用到 53。运行时后果无法核实 —— FML 1.7.10 的 EntityRegistry.registerModEntity 对重复 ID 的处理依赖 FML 实现,而 FML 源码不在 mirror/ 范围内。仓库中没有 intent evidence(无测试、无注释、无 commit 提及该冲突),故仅记录事实,不断言为缺陷。

数值

末影龙(EntityBossDragon)

项 值 位置
基础血量 250.0 EntityBossDragon.java:158
每次死亡加成 +15,上限 +90 EntityBossDragon.java:158-159
opMobs 加成 +80 EntityBossDragon.java:160
回血 每 10 tick 回复 1 点(opMobs 时 2 点) EntityBossDragon.java:691-692
龙息范围 30F + 4F × 难度ID + (opMobs ? 8F : 0F) EntityBossDragon.java:696
能量价值 24.00 energyUnits(0.12F × 24 = 2.88) mechanics/energy/EnergyValues.java:68
受伤处理 击败末影龙时清除场上 EntityMobAngryEnderman(setHealth(0F)) EntityBossDragon.java:556
死亡持久化 WorldDataHandler.<DragonSavefile>get(DragonSavefile.class).getDragonDeathAmount() EntityBossDragon.java:159

末影恶魔(EntityBossEnderDemon)

项 值 位置
血量 400.0 EntityBossEnderDemon.java:62
自身增益 Potion.damageBoost id,600 tick,amplifier 2,环境消失 EntityBossEnderDemon.java:32
回血 lightningTarget == null 且 --healthRegenTimer < 0 且未满血时 setHealth(health + 1) EntityBossEnderDemon.java:73

末影之眼(EntityMiniBossEnderEye)

项 值 位置
血量 250 / 350(opMobs) EntityMiniBossEnderEye.java:72
回血间隔 7 - 难度ID tick EntityMiniBossEnderEye.java:80
能量价值 6.50 energyUnits mechanics/energy/EnergyValues.java:67
变体 被诅咒的末影之眼(overrideMobLists 中怪物列表条目) world/biome/BiomeGenHardcoreEnd.java:35

火焰恶魔(EntityMiniBossFireFiend)

项 值 位置
血量 300 / 380(opMobs) EntityMiniBossFireFiend.java:82
攻击阶段常量 ATTACK_NONE = 0, ATTACK_FIREBALLS = 1, ATTACK_FLAMES = 2 EntityMiniBossFireFiend.java:49
狂暴阈值 血量 ≤ 40% 时切换阶段 EntityMiniBossFireFiend.java:298
Mobs-Info API 实现 IMobInfoProvider(@Optional.Interface,EntityMiniBossFireFiend.java:45),提供 MobDrop EntityMiniBossFireFiend.java:24-25、312

交互

实体 相关机制
EntityBossDragon 生成 EntityBlockTempleDragonEgg(龙蛋实体,ID 7,追踪 420);末影水晶被替换为 EntityBlockEnderCrystal(EntityList.java:58);龙巢神殿由 world/feature/TempleGenerator.java 生成
EntityBossEnderDemon 释放闪电 EntityWeatherLightningBoltDemon(ID 21)与安全版 EntityWeatherLightningBoltSafe(ID 4),EntityList.java:108-109
EntityMiniBossEnderEye 替换原版 Items.ender_eye 投掷行为;RecipeList.java:358-361 让 enhanced_ender_pearl + 烈焰粉合成回原版末影之眼
EntityMiniBossFireFiend 投射物 EntityProjectileFiendFireball(ID 45)、爆炸包 C12FiendFireballExplosion

MiscEvents 注册为 IMobExtraInfoProvider(@Optional.Interface,mechanics/MiscEvents.java:35),为所有 Boss 提供 Mobs-Info 掉落信息。

合成配方

Boss 本身不可合成。相关可获得物品:

物品 获取方式 位置
Items.ender_eye ×1 无序:enhanced_ender_pearl + Items.blaze_powder mechanics/RecipeList.java:358-361
enderman_head 由 Boss / 末影人掉落 init/ItemList.java:288-291
ghost_amulet meta 1 DRAGON 精华转化 ghost_amulet meta 0,消耗 8 精华 mechanics/essence/handler/DragonEssenceHandler.java:46-49
temple_caller DRAGON 精华转化 Items.ender_eye,消耗 50 精华 DragonEssenceHandler.java:45

相关条目