恶魔与元素精灵
基本信息
| 属性 | 值 |
|---|---|
| 实体总数 | 24 |
| 实体 ID 范围 | 20 – 43(连续无缺) |
| 注册位置 | AlchemicalWizardry.registerEntities 段,AlchemicalWizardry.java:1894-1953 |
| 注册 API | EntityRegistry.registerModEntity(Class, String name, int id, Object mod, int trackingRange, int updateFrequency, boolean sendsVelocityUpdates) |
| 中文名来源 | zh_CN.lang:313-336(entity.AWWayofTime.*) |
24 个实体分为 3 组:8 个恶魔/领主、6 个元素精灵、10 个小恶魔(格伦魔)。全部 sendsVelocityUpdates = true、updateFrequency = 3。
恶魔与领主(8 个,ID 20–27,跟踪距离 80)
| ID | 注册名 | 类 | 中文名 | 跟踪距离 |
|---|---|---|---|---|
| 20 | FallenAngel |
EntityFallenAngel |
堕天使 | 80 |
| 21 | LowerGuardian |
EntityLowerGuardian |
低等守护者 | 80 |
| 22 | BileDemon |
EntityBileDemon |
胆汁恶魔 | 80 |
| 23 | WingedFireDemon |
EntityWingedFireDemon |
火翼恶魔 | 80 |
| 24 | SmallEarthGolem |
EntitySmallEarthGolem |
小型土傀儡 | 80 |
| 25 | IceDemon |
EntityIceDemon |
冰霜恶魔 | 80 |
| 26 | BoulderFist |
EntityBoulderFist |
石猿 | 80 |
| 27 | Shade |
EntityShade |
影魔 | 80 |
元素精灵(6 个,ID 28–33,跟踪距离 120)
| ID | 注册名 | 类 | 中文名 | 跟踪距离 |
|---|---|---|---|---|
| 28 | AirElemental |
EntityAirElemental |
风之元素精灵 | 120 |
| 29 | WaterElemental |
EntityWaterElemental |
水之元素精灵 | 120 |
| 30 | EarthElemental |
EntityEarthElemental |
土之元素精灵 | 120 |
| 31 | FireElemental |
EntityFireElemental |
火之元素精灵 | 120 |
| 32 | ShadeElemental |
EntityShadeElemental |
暗黑元素精灵 | 120 |
| 33 | HolyElemental |
EntityHolyElemental |
神圣元素精灵 | 120 |
这 6 个是本模组中唯一跟踪距离为 120 的实体(其余 18 个均为 80),说明作者认为精灵类实体活动范围更大。
机器拉黑名单
AlchemicalWizardry.blacklistDemons()(:3379-3425)把 24 个实体名同时拉黑给三套刷怪系统,防止恶魔被自动化量产:
| 目标模组 | 消息类型 | 实体数 |
|---|---|---|
| MineFactoryReloaded | registerAutoSpawnerBlacklist |
24 |
| MineFactoryReloaded | registerGrinderBlacklist(反射调用私有 enqueueMessage) |
24 |
| EnderIO | poweredSpawner:blacklist:add |
24 |
被拉黑的名称由两个等长数组定义(:3380-3385 的 String[] mobs 与 :3386-3393 的 Class[] mobClasses)。已用脚本做双向集合核对:
| 核对项 | 结果 |
|---|---|
mobs[] 字符串数 |
24 |
mobClasses[] 类数 |
24 |
| 两数组是否等长对齐 | 是 |
mobs[] 中未注册的名称 |
0 |
已注册但不在 mobs[] 的实体 |
0 |
即黑名单精确覆盖全部 24 个已注册实体,无遗漏也无多余。
另有两个「加速器」拉黑(blacklistAccelerators(),:3360-3377):当 Torcherino 或 ChromatiCraft 存在时,把 TEAltar 与 TEMasterStone 标记为不可被加速 —— 前者用 FMLInterModComms 发送 blacklist-tile,后者用 Class.forName 反射调用 Reika.ChromatiCraft.API.AcceleratorBlacklist.addBlacklist,标记原因为 EXPLOIT(防利用)。
数值
| 数值名 | 值 |
|---|---|
| 注册实体总数 | 24 |
| 实体 ID 范围 | 20 – 43 |
| 跟踪距离 | 80(18 个)/ 120(6 个) |
| 更新频率 | 3(全部 24 个) |
| 速度更新 | 全部 true |
| 机器拉黑名单条目数 | 24(与注册实体数一致) |
| 加速器拉黑条目数 | 2(TEAltar、TEMasterStone) |