Swarm Spider(群聚蜘蛛)

事实基准:/Users/evlos/a/mirror/twilightforest(minecraftVersion = 1.7.10)逐行读源码。

基本信息

属性 值 来源
注册实体名 TwilightForest:Swarm Spider TwilightForestMod.java:462-467
实体 ID 常量 idMobSwarmSpider = 181 TwilightForestMod.java:1085
蛋色 主 0x32022e / 副 0x17251e TwilightForestMod.java:465-466
注册形式 TFCreatures.registerTFCreature → 追踪 80 / 更新 3 TFCreatures.java:23、TwilightForestMod.java:462
类 twilightforest.entity.EntityTFSwarmSpider(199 行) entity/EntityTFSwarmSpider.java:16
父类 net.minecraft.entity.monster.EntitySpider 同上 :16
体型 setSize(0.8F, 0.4F) 同上 :27
所属结构 小树洞丘陵(特性 ID 1)与中树洞丘陵(特性 ID 2),各权重 10、4~4 只;不在任何群系刷怪表 TFFeature.java:135、:142

数值

属性 值 来源
maxHealth 3.0 EntityTFSwarmSpider.java:44
attackDamage 1.0 同上 :45
movementSpeed 源码中未设置,沿用 EntitySpider 的原版值(EntityTFSwarmSpider.java 全文检索 movementSpeed 无命中) 同上 :42-46
experienceValue(XP 值) 2 同上 :30
spiderScaleAmount 0.5F 同上 :53
getRenderSizeModifier 0.5F 同上 :61
单区块最大数量 getMaxSpawnedInChunk 16 同上 :196
getSoundPitch 1.5 + (rand - rand) × 0.2 同上 :189
追踪距离 / 更新频率 80 / 3 TFCreatures.java:23

AI 行为 / 特殊机制

分裂:onUpdate 在第一个 tick 生成 1 + rand.nextInt(2)(1~2 只)同类,每只失败再重试 一次;生成完即 setSpawnMore(false),因此一只只会分裂一次(:68-84)。子蛛生成在 posX ± 0.9 / posZ ± 0.9,getCanSpawnHere 不通过就 setDead(:114-128)。 分裂开关以 NBT 布尔键 SpawnMore 持久化(:156、:162)。

攻击节流:attackEntity 被覆写 —— 条件 attackTime <= 0 && (!isAirBorne || rand.nextInt(4) != 0) 成立时只把 attackTime 置 20 而不调用 super.attackEntity,条件不成立时才真正攻击(:89-96)。方法上方的 javadoc 写的是 「只有一部分时间造成伤害」,但分支走向与该描述相反,以代码为准。

不分昼夜:findPlayerToAttack 覆写为无条件取 16 格内最近的可攻击玩家,源码注释写 kill at all times!(:102-107)。

光照豁免:isValidLightLevel 覆写 —— 若最近特性是 hedgeMaze(树篱迷宫,特性 ID 4) 直接返回 true,否则走 EntitySpider 默认判定(:133-143)。

成就:在暮色森林维度内被玩家击杀触发 twilightHunter;若死亡点位于树篱迷宫内,额外触发 twilightHedge(:168-182)。

变形:ItemTFTransformPowder 中与 EntityCaveSpider 双向变形(ItemTFTransformPowder.java:67)。

被幻影骑士"戳爆":EntityTFLich.canPop 的可戳列表里含本类,但判定用的是 nearby.getClass() == pop,因此只有本体命中(EntityTFLich.java:627-635)。

子类:EntityTFTowerBroodling extends EntityTFSwarmSpider (7 生命 / 4 攻击,EntityTFTowerBroodling.java:23-27),用于黑暗高塔 刷怪表(TFFeature.java:176,darkTower 特性 ID 14)。

🔴 本节原写「它没有独立注册,在游戏内仍以 Swarm Spider 出现」——这是错的 (2026-10-02 复核订正)。它有独立注册: TFCreatures.registerTFCreature(EntityTFTowerBroodling.class, "Redscale Broodling", idMobTowerBroodling, …)(TwilightForestMod.java:652-657), 实体 ID 219(:1120 赋值),且带刷怪蛋。 ⇒ 游戏中它以 Redscale Broodling 独立出现,不是 Swarm Spider。 详见 Redscale Broodling(红鳞寄生虫)。

相关条目