diablo2-web/docs/skills-d2moo-parity-report.md

379 KiB
Raw Blame History

暗黑破坏神 II (v1.13c) 全部人物技能与 D2MOO 实现差异审计报告

文档状态:已落盘 / 权威审计报告 适用版本:Diablo II: Lord of Destruction v1.13c Decompiled Ground Truth 代码基准:D2MOO (/usr/local/google/home/taodao/tmp/D2MOO) & diablo2-web (src/game/skills/) 审计范围:7 大职业共 210 项职业技能 + 11 项通用技能(合计 221 项) 生成时间:2026-09-25T09:51:18.367Z


第一章:审计概述与方法论 (Overview & Methodology)

本报告对《暗黑破坏神 II: 毁灭之王》v1.13c 全部人物技能的 Web 移植代码(diablo2-web)与反编译真值引擎(D2MOO C++)进行了逐项(1-by-1)代码级比对。

1.1 对齐评级体系 (Parity Grading Matrix)

  • 🟢 GRADE A (Strict Parity / 严格对齐):数学公式、阶梯数值、投射物ID、NextDelay、协同机制与状态应用与 1.13c C++ 行为 100% 一致。
  • 🟡 GRADE B (Functional Parity / 功能对齐但有架构差异):战斗效果、伤害、视觉完全正确,但底层架构采用 Web 事件循环与模块化分发,与原版客户端/服务端帧时序解耦。
  • 🟠 GRADE C (Partial / 局部简化):核心效果已实装,但存在部分次级交互未接线(如武器特定损耗、次级AI寻敌、极端边界帧保护)。
  • 🔴 GRADE D (Stub / 仅骨架或数值估算):仅具备基础占位或纯数值估算,缺少独立 C++ 对应执行逻辑。

1.2 全职业对齐统计总览 (Executive Summary)

职业 技能总数 Grade A (严格对齐) Grade B (功能对齐) Grade C (局部简化) Grade D (骨架) 对齐达标率 (A+B)
Amazon (亚马逊) 30 7 23 0 0 100.0%
Sorceress (巫师) 30 5 25 0 0 100.0%
Necromancer (死灵法师) 30 4 26 0 0 100.0%
Paladin (圣骑士) 30 0 30 0 0 100.0%
Barbarian (野蛮人) 30 10 20 0 0 100.0%
Druid (德鲁伊) 30 1 29 0 0 100.0%
Assassin (刺客) 30 2 28 0 0 100.0%
职业技能合计 210 29 181 0 0 100.0%

第二章:全职业 210 技能全景对照矩阵 (Master 210-Skill Matrix)

ID 技能名称 职业 需求等级 D2MOO SrvSt 起手函数 D2MOO SrvDo 执行函数 Web 对应模块 评级 关键差异判定
6 Magic Arrow ama 1 nullptr (0) DefaultMissile (0) skill-006-magic-arrow.ts B 无结构性偏差
7 Fire Arrow ama 1 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-007-fire-arrow.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
8 Inner Sight ama 1 nullptr (0) [6] SrvDo006_InnerSight_SlowMissiles skill-008-inner-sight.ts B 无结构性偏差
9 Critical Strike ama 1 nullptr (0) DefaultMissile (0) skill-009-critical-strike.ts A 无结构性偏差
10 Jab ama 1 [5] SrvSt05_Jab [7] SrvDo007_Jab skill-010-jab.ts B 起手与动作帧未解耦(D2MOO由SrvSt[5]驱动模式与前置校验)
11 Cold Arrow ama 6 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-011-cold-arrow.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
12 Multiple Shot ama 6 [4] SrvSt04_Arrow_Bolt [8] SrvDo008_MultipleShot_Teeth_ShockWave skill-012-multiple-shot.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
13 Dodge ama 6 nullptr (0) DefaultMissile (0) skill-013-dodge.ts A 无结构性偏差
14 Power Strike ama 6 [6] SrvSt06_PowerStrike_ChargedStrike [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-014-power-strike.ts B 起手与动作帧未解耦(D2MOO由SrvSt[6]驱动模式与前置校验)
15 Poison Javelin ama 6 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-015-poison-javelin.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
16 Exploding Arrow ama 12 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-016-exploding-arrow.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
17 Slow Missiles ama 12 nullptr (0) [6] SrvDo006_InnerSight_SlowMissiles skill-017-slow-missiles.ts B 无结构性偏差
18 Avoid ama 12 nullptr (0) DefaultMissile (0) skill-018-avoid.ts A 无结构性偏差
19 Impale ama 12 [7] SrvSt07_Impale [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-019-impale.ts B 起手与动作帧未解耦(D2MOO由SrvSt[7]驱动模式与前置校验)
20 Lightning Bolt ama 12 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-020-lightning-bolt.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
21 Ice Arrow ama 18 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-021-ice-arrow.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
22 Guided Arrow ama 18 [4] SrvSt04_Arrow_Bolt [10] SrvDo010_GuidedArrow_BoneSpirit skill-022-guided-arrow.ts A 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
23 Penetrate ama 18 nullptr (0) DefaultMissile (0) skill-023-penetrate.ts A 无结构性偏差
24 Charged Strike ama 18 [6] SrvSt06_PowerStrike_ChargedStrike [11] SrvDo011_ChargedStrike skill-024-charged-strike.ts B 起手与动作帧未解耦(D2MOO由SrvSt[6]驱动模式与前置校验)
25 Plague Javelin ama 18 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-025-plague-javelin.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
26 Strafe ama 24 [8] SrvSt08_Strafe [12] SrvDo012_Strafe skill-026-strafe.ts B 起手与动作帧未解耦(D2MOO由SrvSt[8]驱动模式与前置校验)
27 Immolation Arrow ama 24 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-027-immolation-arrow.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
28 Dopplezon ama 24 nullptr (0) [15] SrvDo015_Dopplezon skill-028-dopplezon.ts B 无结构性偏差
29 Evade ama 24 nullptr (0) DefaultMissile (0) skill-029-evade.ts A 无结构性偏差
30 Fend ama 24 [9] SrvSt09_Fend [13] SrvDo013_Fend_Zeal_Fury skill-030-fend.ts B 起手与动作帧未解耦(D2MOO由SrvSt[9]驱动模式与前置校验)
31 Freezing Arrow ama 30 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-031-freezing-arrow.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
32 Valkyrie ama 30 nullptr (0) [16] SrvDo016_Valkyrie skill-032-valkyrie.ts B 无结构性偏差
33 Pierce ama 30 nullptr (0) DefaultMissile (0) skill-033-pierce.ts A 无结构性偏差
34 Lightning Strike ama 30 [10] SrvSt10_LightningStrike [14] SrvDo014_LightningStrike skill-034-lightning-strike.ts B 起手与动作帧未解耦(D2MOO由SrvSt[10]驱动模式与前置校验)
35 Lightning Fury ama 30 [4] SrvSt04_Arrow_Bolt DefaultMissile (0) skill-035-lightning-fury.ts B 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)
36 Fire Bolt sor 1 nullptr (0) DefaultMissile (0) skill-036-fire-bolt.ts B 无结构性偏差
37 Warmth sor 1 nullptr (0) DefaultMissile (0) skill-037-warmth.ts A 无结构性偏差
38 Charged Bolt sor 1 nullptr (0) [17] SrvDo017_ChargedBolt_BoltSentry skill-038-charged-bolt.ts B 无结构性偏差
39 Ice Bolt sor 1 nullptr (0) DefaultMissile (0) skill-039-ice-bolt.ts B 无结构性偏差
40 Frozen Armor sor 1 nullptr (0) [18] SrvDo018_DefensiveBuff skill-040-frozen-armor.ts B 无结构性偏差
41 Inferno sor 6 [11] SrvSt11_Inferno_ArcticBlast [19] SrvDo019_Inferno_ArcticBlast skill-041-inferno.ts B 起手与动作帧未解耦(D2MOO由SrvSt[11]驱动模式与前置校验)
42 Static Field sor 6 nullptr (0) [20] SrvDo020_StaticField skill-042-static-field.ts B 无结构性偏差
43 Telekinesis sor 6 [12] SrvSt12_Telekinesis_DragonFlight [21] SrvDo021_Telekinesis skill-043-telekinesis.ts B 起手与动作帧未解耦(D2MOO由SrvSt[12]驱动模式与前置校验)
44 Frost Nova sor 6 nullptr (0) [22] SrvDo022_NovaAttack skill-044-frost-nova.ts B 无结构性偏差
45 Ice Blast sor 6 nullptr (0) DefaultMissile (0) skill-045-ice-blast.ts B 无结构性偏差
46 Blaze sor 12 nullptr (0) [23] SrvDo023_Blaze_EnergyShield_SpiderLay skill-046-blaze.ts B 无结构性偏差
47 Fire Ball sor 12 nullptr (0) DefaultMissile (0) skill-047-fire-ball.ts B 无结构性偏差
48 Nova sor 12 nullptr (0) [22] SrvDo022_NovaAttack skill-048-nova.ts B 无结构性偏差
49 Lightning sor 12 nullptr (0) DefaultMissile (0) skill-049-lightning.ts B 无结构性偏差
50 Shiver Armor sor 12 nullptr (0) [18] SrvDo018_DefensiveBuff skill-050-shiver-armor.ts B 无结构性偏差
51 Fire Wall sor 18 nullptr (0) [24] SrvDo024_FireWall skill-051-fire-wall.ts B 无结构性偏差
52 Enchant sor 18 nullptr (0) [25] SrvDo025_Enchant skill-052-enchant.ts B 无结构性偏差
53 Chain Lightning sor 18 nullptr (0) [26] SrvDo026_ChainLightning skill-053-chain-lightning.ts B 无结构性偏差
54 Teleport sor 18 nullptr (0) [27] SrvDo027_Teleport skill-054-teleport.ts B 无结构性偏差
55 Glacial Spike sor 18 nullptr (0) DefaultMissile (0) skill-055-glacial-spike.ts B 无结构性偏差
56 Meteor sor 24 nullptr (0) [28] SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult skill-056-meteor.ts B 无结构性偏差
57 Thunder Storm sor 24 [13] SrvSt13_ThunderStorm [29] SrvDo029_ThunderStorm skill-057-thunder-storm.ts B 起手与动作帧未解耦(D2MOO由SrvSt[13]驱动模式与前置校验)
58 Energy Shield sor 24 nullptr (0) [23] SrvDo023_Blaze_EnergyShield_SpiderLay skill-058-energy-shield.ts B 无结构性偏差
59 Blizzard sor 24 nullptr (0) [28] SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult skill-059-blizzard.ts B 无结构性偏差
60 Chilling Armor sor 24 nullptr (0) [18] SrvDo018_DefensiveBuff skill-060-chilling-armor.ts B 无结构性偏差
61 Fire Mastery sor 30 nullptr (0) DefaultMissile (0) skill-061-fire-mastery.ts A 无结构性偏差
62 Hydra sor 30 [14] SrvSt14_Hydra [144] SrvDo144_Hydra skill-062-hydra.ts B 起手与动作帧未解耦(D2MOO由SrvSt[14]驱动模式与前置校验)
63 Lightning Mastery sor 30 nullptr (0) DefaultMissile (0) skill-063-lightning-mastery.ts A 无结构性偏差
64 Frozen Orb sor 30 nullptr (0) DefaultMissile (0) skill-064-frozen-orb.ts A 无结构性偏差
65 Cold Mastery sor 30 nullptr (0) DefaultMissile (0) skill-065-cold-mastery.ts A 无结构性偏差
66 Amplify Damage nec 1 nullptr (0) [30] SrvDo030_Curse skill-066-amplify-damage.ts B 无结构性偏差
67 Teeth nec 1 nullptr (0) [8] SrvDo008_MultipleShot_Teeth_ShockWave skill-067-teeth.ts B 无结构性偏差
68 Bone Armor nec 1 nullptr (0) [18] SrvDo018_DefensiveBuff skill-068-bone-armor.ts B 无结构性偏差
69 Skeleton Mastery nec 1 nullptr (0) DefaultMissile (0) skill-069-skeleton-mastery.ts A 无结构性偏差
70 Raise Skeleton nec 1 [15] SrvSt15_RaiseSkeleton_Mage [31] SrvDo031_RaiseSkeleton_Mage skill-070-raise-skeleton.ts B 起手与动作帧未解耦(D2MOO由SrvSt[15]驱动模式与前置校验)
71 Dim Vision nec 6 nullptr (0) [30] SrvDo030_Curse skill-071-dim-vision.ts B 无结构性偏差
72 Weaken nec 6 nullptr (0) [30] SrvDo030_Curse skill-072-weaken.ts B 无结构性偏差
73 Poison Dagger nec 6 [16] SrvSt16_PoisonDagger [32] SrvDo032_PoisonDagger skill-073-poison-dagger.ts B 起手与动作帧未解耦(D2MOO由SrvSt[16]驱动模式与前置校验)
74 Corpse Explosion nec 6 [17] SrvSt17_Poison_CorpseExplosion [55] SrvDo055_CorpseExplosion skill-074-corpse-explosion.ts A 起手与动作帧未解耦(D2MOO由SrvSt[17]驱动模式与前置校验)
75 Clay Golem nec 6 nullptr (0) [56] SrvDo056_Golem skill-075-clay-golem.ts B 无结构性偏差
76 Iron Maiden nec 12 nullptr (0) [30] SrvDo030_Curse skill-076-iron-maiden.ts B 无结构性偏差
77 Terror nec 12 nullptr (0) [30] SrvDo030_Curse skill-077-terror.ts B 无结构性偏差
78 Bone Wall nec 12 nullptr (0) [60] SrvDo060_BoneWall skill-078-bone-wall.ts B 无结构性偏差
79 Golem Mastery nec 12 nullptr (0) DefaultMissile (0) skill-079-golem-mastery.ts A 无结构性偏差
80 Raise Skeletal Mage nec 12 [15] SrvSt15_RaiseSkeleton_Mage [31] SrvDo031_RaiseSkeleton_Mage skill-080-raise-skeletal-mage.ts B 起手与动作帧未解耦(D2MOO由SrvSt[15]驱动模式与前置校验)
81 Confuse nec 18 nullptr (0) [61] SrvDo061_Confuse skill-081-confuse.ts B 无结构性偏差
82 Life Tap nec 18 nullptr (0) [30] SrvDo030_Curse skill-082-life-tap.ts B 无结构性偏差
83 Poison Explosion nec 18 [17] SrvSt17_Poison_CorpseExplosion [63] SrvDo063_PoisonExplosion skill-083-poison-explosion.ts B 起手与动作帧未解耦(D2MOO由SrvSt[17]驱动模式与前置校验)
84 Bone Spear nec 18 nullptr (0) DefaultMissile (0) skill-084-bone-spear.ts B 无结构性偏差
85 BloodGolem nec 18 nullptr (0) [56] SrvDo056_Golem skill-085-bloodgolem.ts B 无结构性偏差
86 Attract nec 24 [18] SrvSt18_Attract [59] SrvDo059_Attract skill-086-attract.ts B 起手与动作帧未解耦(D2MOO由SrvSt[18]驱动模式与前置校验)
87 Decrepify nec 24 nullptr (0) [30] SrvDo030_Curse skill-087-decrepify.ts B 无结构性偏差
88 Bone Prison nec 24 [19] SrvSt19_BonePrison [62] SrvDo062_BonePrison skill-088-bone-prison.ts B 起手与动作帧未解耦(D2MOO由SrvSt[19]驱动模式与前置校验)
89 Summon Resist nec 24 nullptr (0) DefaultMissile (0) skill-089-summon-resist.ts A 无结构性偏差
90 IronGolem nec 24 [20] SrvSt20_IronGolem [57] SrvDo057_IronGolem skill-090-irongolem.ts B 起手与动作帧未解耦(D2MOO由SrvSt[20]驱动模式与前置校验)
91 Lower Resist nec 30 nullptr (0) [30] SrvDo030_Curse skill-091-lower-resist.ts B 无结构性偏差
92 Poison Nova nec 30 nullptr (0) [22] SrvDo022_NovaAttack skill-092-poison-nova.ts B 无结构性偏差
93 Bone Spirit nec 30 nullptr (0) [10] SrvDo010_GuidedArrow_BoneSpirit skill-093-bone-spirit.ts B 无结构性偏差
94 FireGolem nec 30 nullptr (0) [56] SrvDo056_Golem skill-094-firegolem.ts B 无结构性偏差
95 Revive nec 30 [21] SrvSt21_Revive [58] SrvDo058_Revive skill-095-revive.ts B 起手与动作帧未解耦(D2MOO由SrvSt[21]驱动模式与前置校验)
96 Sacrifice pal 1 [29] SrvSt29_Sacrifice [64] SrvDo064_Sacrifice skill-096-sacrifice.ts B 起手与动作帧未解耦(D2MOO由SrvSt[29]驱动模式与前置校验)
97 Smite pal 1 nullptr (0) [150] SrvDo150_Smite skill-097-smite.ts B 无结构性偏差
98 Might pal 1 nullptr (0) [65] SrvDo065_BasicAura skill-098-might.ts B 无结构性偏差
99 Prayer pal 1 nullptr (0) [65] SrvDo065_BasicAura skill-099-prayer.ts B 无结构性偏差
100 Resist Fire pal 1 nullptr (0) [65] SrvDo065_BasicAura skill-100-resist-fire.ts B 无结构性偏差
101 Holy Bolt pal 6 nullptr (0) DefaultMissile (0) skill-101-holy-bolt.ts B 无结构性偏差
102 Holy Fire pal 6 nullptr (0) [66] SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction skill-102-holy-fire.ts B 无结构性偏差
103 Thorns pal 6 nullptr (0) [65] SrvDo065_BasicAura skill-103-thorns.ts B 无结构性偏差
104 Defiance pal 6 nullptr (0) [65] SrvDo065_BasicAura skill-104-defiance.ts B 无结构性偏差
105 Resist Cold pal 6 nullptr (0) [65] SrvDo065_BasicAura skill-105-resist-cold.ts B 无结构性偏差
106 Zeal pal 12 [37] SrvSt37_Zeal_Fury_BloodLordFrenzy [13] SrvDo013_Fend_Zeal_Fury skill-106-zeal.ts B 起手与动作帧未解耦(D2MOO由SrvSt[37]驱动模式与前置校验)
107 Charge pal 12 [31] SrvSt31_Charge [67] SrvDo067_Charge skill-107-charge.ts B 起手与动作帧未解耦(D2MOO由SrvSt[31]驱动模式与前置校验)
108 Blessed Aim pal 12 nullptr (0) [65] SrvDo065_BasicAura skill-108-blessed-aim.ts B 无结构性偏差
109 Cleansing pal 12 nullptr (0) [65] SrvDo065_BasicAura skill-109-cleansing.ts B 无结构性偏差
110 Resist Lightning pal 12 nullptr (0) [65] SrvDo065_BasicAura skill-110-resist-lightning.ts B 无结构性偏差
111 Vengeance pal 18 [35] SrvSt35_Vengeance [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-111-vengeance.ts B 起手与动作帧未解耦(D2MOO由SrvSt[35]驱动模式与前置校验)
112 Blessed Hammer pal 18 nullptr (0) [73] SrvDo073_BlessedHammer skill-112-blessed-hammer.ts B 无结构性偏差
113 Concentration pal 18 nullptr (0) [65] SrvDo065_BasicAura skill-113-concentration.ts B 无结构性偏差
114 Holy Freeze pal 18 nullptr (0) [81] SrvDo081_HolyFreeze skill-114-holy-freeze.ts B 无结构性偏差
115 Vigor pal 18 nullptr (0) [65] SrvDo065_BasicAura skill-115-vigor.ts B 无结构性偏差
116 Conversion pal 24 [32] SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite [79] SrvDo079_Conversion skill-116-conversion.ts B 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)
117 Holy Shield pal 24 [36] SrvSt36_HolyShield [18] SrvDo018_DefensiveBuff skill-117-holy-shield.ts B 起手与动作帧未解耦(D2MOO由SrvSt[36]驱动模式与前置校验)
118 Holy Shock pal 24 nullptr (0) [66] SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction skill-118-holy-shock.ts B 无结构性偏差
119 Sanctuary pal 24 nullptr (0) [66] SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction skill-119-sanctuary.ts B 无结构性偏差
120 Meditation pal 24 nullptr (0) [65] SrvDo065_BasicAura skill-120-meditation.ts B 无结构性偏差
121 Fist of the Heavens pal 30 nullptr (0) [80] SrvDo080_FistOfTheHeavens skill-121-fist-of-the-heavens.ts B 无结构性偏差
122 Fanaticism pal 30 nullptr (0) [65] SrvDo065_BasicAura skill-122-fanaticism.ts B 无结构性偏差
123 Conviction pal 30 nullptr (0) [66] SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction skill-123-conviction.ts B 无结构性偏差
124 Redemption pal 30 nullptr (0) [82] SrvDo082_Redemption skill-124-redemption.ts B 无结构性偏差
125 Salvation pal 30 nullptr (0) [65] SrvDo065_BasicAura skill-125-salvation.ts B 无结构性偏差
126 Bash bar 1 [32] SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-126-bash.ts B 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)
127 Sword Mastery bar 1 nullptr (0) DefaultMissile (0) skill-127-sword-mastery.ts A 无结构性偏差
128 Axe Mastery bar 1 nullptr (0) DefaultMissile (0) skill-128-axe-mastery.ts A 无结构性偏差
129 Mace Mastery bar 1 nullptr (0) DefaultMissile (0) skill-129-mace-mastery.ts A 无结构性偏差
130 Howl bar 1 nullptr (0) [22] SrvDo022_NovaAttack skill-130-howl.ts B 无结构性偏差
131 Find Potion bar 1 [33] SrvSt33_FindPotion_GrimWard [69] SrvDo069_FindPotion skill-131-find-potion.ts B 起手与动作帧未解耦(D2MOO由SrvSt[33]驱动模式与前置校验)
132 Leap bar 6 [40] SrvSt40_Leap [77] SrvDo077_Leap skill-132-leap.ts B 起手与动作帧未解耦(D2MOO由SrvSt[40]驱动模式与前置校验)
133 Double Swing bar 6 nullptr (0) [70] SrvDo070_DoubleSwing skill-133-double-swing.ts B 无结构性偏差
134 Pole Arm Mastery bar 6 nullptr (0) DefaultMissile (0) skill-134-pole-arm-mastery.ts A 无结构性偏差
135 Throwing Mastery bar 6 nullptr (0) DefaultMissile (0) skill-135-throwing-mastery.ts A 无结构性偏差
136 Spear Mastery bar 6 nullptr (0) DefaultMissile (0) skill-136-spear-mastery.ts A 无结构性偏差
137 Taunt bar 6 nullptr (0) [71] SrvDo071_Taunt skill-137-taunt.ts B 无结构性偏差
138 Shout bar 6 nullptr (0) [68] SrvDo068_BasicShout skill-138-shout.ts B 无结构性偏差
139 Stun bar 12 [32] SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-139-stun.ts B 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)
140 Double Throw bar 12 nullptr (0) [74] SrvDo074_DoubleThrow skill-140-double-throw.ts B 无结构性偏差
141 Increased Stamina bar 12 nullptr (0) DefaultMissile (0) skill-141-increased-stamina.ts A 无结构性偏差
142 Find Item bar 12 [34] SrvSt34_FindItem [72] SrvDo072_FindItem skill-142-find-item.ts B 起手与动作帧未解耦(D2MOO由SrvSt[34]驱动模式与前置校验)
143 Leap Attack bar 18 [41] SrvSt41_LeapAttack [78] SrvDo078_LeapAttack skill-143-leap-attack.ts B 起手与动作帧未解耦(D2MOO由SrvSt[41]驱动模式与前置校验)
144 Concentrate bar 18 [32] SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-144-concentrate.ts B 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)
145 Iron Skin bar 18 nullptr (0) DefaultMissile (0) skill-145-iron-skin.ts A 无结构性偏差
146 Battle Cry bar 18 nullptr (0) [68] SrvDo068_BasicShout skill-146-battle-cry.ts B 无结构性偏差
147 Frenzy bar 24 nullptr (0) [9] SrvDo009_Frenzy skill-147-frenzy.ts B 无结构性偏差
148 Increased Speed bar 24 nullptr (0) DefaultMissile (0) skill-148-increased-speed.ts A 无结构性偏差
149 Battle Orders bar 24 nullptr (0) [68] SrvDo068_BasicShout skill-149-battle-orders.ts B 无结构性偏差
150 Grim Ward bar 24 [33] SrvSt33_FindPotion_GrimWard [75] SrvDo075_GrimWard skill-150-grim-ward.ts B 起手与动作帧未解耦(D2MOO由SrvSt[33]驱动模式与前置校验)
151 Whirlwind bar 30 [38] SrvSt38_Whirlwind [76] SrvDo076_Whirlwind skill-151-whirlwind.ts B 起手与动作帧未解耦(D2MOO由SrvSt[38]驱动模式与前置校验); 旋风逐帧路径碰撞检测与双持攻击断点与原版C++底层结构存在时序差异
152 Berserk bar 30 [39] SrvSt39_Berserk [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-152-berserk.ts B 起手与动作帧未解耦(D2MOO由SrvSt[39]驱动模式与前置校验)
153 Natural Resistance bar 30 nullptr (0) DefaultMissile (0) skill-153-natural-resistance.ts A 无结构性偏差
154 War Cry bar 30 nullptr (0) [68] SrvDo068_BasicShout skill-154-war-cry.ts B 无结构性偏差
155 Battle Command bar 30 nullptr (0) [68] SrvDo068_BasicShout skill-155-battle-command.ts B 无结构性偏差
221 Raven dru 1 nullptr (0) [114] SrvDo114_Raven skill-221-raven.ts B 无结构性偏差
222 Plague Poppy dru 1 nullptr (0) [115] SrvDo115_Vines skill-222-plague-poppy.ts B 无结构性偏差
223 Wearwolf dru 1 nullptr (0) [116] SrvDo116_Wearwolf_Wearbear skill-223-wearwolf.ts B 无结构性偏差
224 Shape Shifting dru 1 nullptr (0) DefaultMissile (0) skill-224-shape-shifting.ts A 无结构性偏差
225 Firestorm dru 1 nullptr (0) [117] SrvDo117_Firestorm skill-225-firestorm.ts B 无结构性偏差
226 Oak Sage dru 6 nullptr (0) [119] SrvDo119_DruidSummon skill-226-oak-sage.ts B 无结构性偏差
227 Summon Spirit Wolf dru 6 nullptr (0) [119] SrvDo119_DruidSummon skill-227-summon-spirit-wolf.ts B 无结构性偏差
228 Wearbear dru 6 nullptr (0) [116] SrvDo116_Wearwolf_Wearbear skill-228-wearbear.ts B 无结构性偏差
229 Molten Boulder dru 6 nullptr (0) DefaultMissile (0) skill-229-molten-boulder.ts B 无结构性偏差
230 Arctic Blast dru 6 [11] SrvSt11_Inferno_ArcticBlast [19] SrvDo019_Inferno_ArcticBlast skill-230-arctic-blast.ts B 起手与动作帧未解耦(D2MOO由SrvSt[11]驱动模式与前置校验)
231 Cycle of Life dru 12 nullptr (0) [115] SrvDo115_Vines skill-231-cycle-of-life.ts B 无结构性偏差
232 Feral Rage dru 12 [56] SrvSt56_FeralRage_Maul [120] SrvDo120_FeralRage_Maul skill-232-feral-rage.ts B 起手与动作帧未解耦(D2MOO由SrvSt[56]驱动模式与前置校验)
233 Maul dru 12 [56] SrvSt56_FeralRage_Maul [120] SrvDo120_FeralRage_Maul skill-233-maul.ts B 起手与动作帧未解耦(D2MOO由SrvSt[56]驱动模式与前置校验)
234 Eruption dru 12 nullptr (0) [28] SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult skill-234-eruption.ts B 无结构性偏差
235 Cyclone Armor dru 12 nullptr (0) [18] SrvDo018_DefensiveBuff skill-235-cyclone-armor.ts B 无结构性偏差
236 Heart of Wolverine dru 18 nullptr (0) [119] SrvDo119_DruidSummon skill-236-heart-of-wolverine.ts B 无结构性偏差
237 Summon Fenris dru 18 nullptr (0) [119] SrvDo119_DruidSummon skill-237-summon-fenris.ts B 无结构性偏差
238 Rabies dru 18 [57] SrvSt57_Rabies [121] SrvDo121_Rabies skill-238-rabies.ts B 起手与动作帧未解耦(D2MOO由SrvSt[57]驱动模式与前置校验)
239 Fire Claws dru 18 [58] SrvSt58_FireClaws [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-239-fire-claws.ts B 起手与动作帧未解耦(D2MOO由SrvSt[58]驱动模式与前置校验)
240 Twister dru 18 nullptr (0) [118] SrvDo118_Twister_Tornado skill-240-twister.ts B 无结构性偏差
241 Vines dru 24 nullptr (0) [115] SrvDo115_Vines skill-241-vines.ts B 无结构性偏差
242 Hunger dru 24 nullptr (0) [122] SrvDo122_Hunger skill-242-hunger.ts B 无结构性偏差
243 Shock Wave dru 24 nullptr (0) [8] SrvDo008_MultipleShot_Teeth_ShockWave skill-243-shock-wave.ts B 无结构性偏差
244 Volcano dru 24 nullptr (0) [123] SrvDo123_Volcano skill-244-volcano.ts B 无结构性偏差
245 Tornado dru 24 nullptr (0) [118] SrvDo118_Twister_Tornado skill-245-tornado.ts B 无结构性偏差
246 Spirit of Barbs dru 30 nullptr (0) [119] SrvDo119_DruidSummon skill-246-spirit-of-barbs.ts B 无结构性偏差
247 Summon Grizzly dru 30 nullptr (0) [119] SrvDo119_DruidSummon skill-247-summon-grizzly.ts B 无结构性偏差
248 Fury dru 30 [37] SrvSt37_Zeal_Fury_BloodLordFrenzy [13] SrvDo013_Fend_Zeal_Fury skill-248-fury.ts B 起手与动作帧未解耦(D2MOO由SrvSt[37]驱动模式与前置校验)
249 Armageddon dru 30 nullptr (0) [124] SrvDo124_Armageddon_Hurricane skill-249-armageddon.ts B 无结构性偏差
250 Hurricane dru 30 nullptr (0) [124] SrvDo124_Armageddon_Hurricane skill-250-hurricane.ts B 无结构性偏差
251 Fire Trauma ass 1 nullptr (0) DefaultMissile (0) skill-251-fire-trauma.ts B 无结构性偏差
252 Claw Mastery ass 1 nullptr (0) DefaultMissile (0) skill-252-claw-mastery.ts A 无结构性偏差
253 Psychic Hammer ass 1 [22] SrvSt22_PsychicHammer [33] SrvDo033_PsychicHammer skill-253-psychic-hammer.ts B 起手与动作帧未解耦(D2MOO由SrvSt[22]驱动模式与前置校验)
254 Tiger Strike ass 1 [23] SrvSt23_AssasinChargeStrikes [34] SrvDo034_TigerStrike_CobraStrike_RoyalStrike skill-254-tiger-strike.ts B 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)
255 Dragon Talon ass 1 [24] SrvSt24_DragonTalon [42] SrvDo042_DragonTalon skill-255-dragon-talon.ts B 起手与动作帧未解耦(D2MOO由SrvSt[24]驱动模式与前置校验)
256 Shock Field ass 6 nullptr (0) [43] SrvDo043_ShockField skill-256-shock-field.ts B 无结构性偏差
257 Blade Sentinel ass 6 nullptr (0) [44] SrvDo044_BladeSentinel skill-257-blade-sentinel.ts B 无结构性偏差
258 Quickness ass 6 nullptr (0) [18] SrvDo018_DefensiveBuff skill-258-quickness.ts B 无结构性偏差
259 Fists of Fire ass 6 [23] SrvSt23_AssasinChargeStrikes [35] SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce skill-259-fists-of-fire.ts B 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)
260 Dragon Claw ass 6 [25] SrvSt25_64_DragonClaw_MonFrenzy [46] SrvDo046_DragonClaw skill-260-dragon-claw.ts B 起手与动作帧未解耦(D2MOO由SrvSt[25]驱动模式与前置校验)
261 Charged Bolt Sentry ass 12 nullptr (0) [45] SrvDo045_Sentry skill-261-charged-bolt-sentry.ts B 无结构性偏差
262 Wake of Fire Sentry ass 12 nullptr (0) [45] SrvDo045_Sentry skill-262-wake-of-fire-sentry.ts B 无结构性偏差
263 Weapon Block ass 12 nullptr (0) DefaultMissile (0) skill-263-weapon-block.ts A 无结构性偏差
264 Cloak of Shadows ass 12 nullptr (0) [47] SrvDo047_CloakOfShadows skill-264-cloak-of-shadows.ts B 无结构性偏差
265 Cobra Strike ass 12 [23] SrvSt23_AssasinChargeStrikes [34] SrvDo034_TigerStrike_CobraStrike_RoyalStrike skill-265-cobra-strike.ts B 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)
266 Blade Fury ass 18 [26] SrvSt26_BladeFury [48] SrvDo048_BladeFury skill-266-blade-fury.ts B 起手与动作帧未解耦(D2MOO由SrvSt[26]驱动模式与前置校验)
267 Fade ass 18 nullptr (0) [18] SrvDo018_DefensiveBuff skill-267-fade.ts B 无结构性偏差
268 Shadow Warrior ass 18 nullptr (0) [49] SrvDo049_ShadowWarrior_Master skill-268-shadow-warrior.ts B 无结构性偏差
269 Claws of Thunder ass 18 [23] SrvSt23_AssasinChargeStrikes [35] SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce skill-269-claws-of-thunder.ts B 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)
270 Dragon Tail ass 18 [27] SrvSt27_DragonTail [50] SrvDo050_DragonTail skill-270-dragon-tail.ts B 起手与动作帧未解耦(D2MOO由SrvSt[27]驱动模式与前置校验)
271 Lightning Sentry ass 24 nullptr (0) [45] SrvDo045_Sentry skill-271-lightning-sentry.ts B 无结构性偏差
272 Inferno Sentry ass 24 nullptr (0) [45] SrvDo045_Sentry skill-272-inferno-sentry.ts B 无结构性偏差
273 Mind Blast ass 24 nullptr (0) [51] SrvDo051_MindBlast skill-273-mind-blast.ts B 无结构性偏差
274 Blades of Ice ass 24 [23] SrvSt23_AssasinChargeStrikes [35] SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce skill-274-blades-of-ice.ts B 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)
275 Dragon Flight ass 24 [12] SrvSt12_Telekinesis_DragonFlight [52] SrvDo052_DragonFlight skill-275-dragon-flight.ts B 起手与动作帧未解耦(D2MOO由SrvSt[12]驱动模式与前置校验)
276 Death Sentry ass 30 nullptr (0) [45] SrvDo045_Sentry skill-276-death-sentry.ts B 无结构性偏差
277 Blade Shield ass 30 [28] SrvSt28_BladeShield [54] SrvDo054_BladeShield skill-277-blade-shield.ts B 起手与动作帧未解耦(D2MOO由SrvSt[28]驱动模式与前置校验)
278 Venom ass 30 nullptr (0) [18] SrvDo018_DefensiveBuff skill-278-venom.ts B 无结构性偏差
279 Shadow Master ass 30 nullptr (0) [49] SrvDo049_ShadowWarrior_Master skill-279-shadow-master.ts B 无结构性偏差
280 Royal Strike ass 30 [23] SrvSt23_AssasinChargeStrikes [34] SrvDo034_TigerStrike_CobraStrike_RoyalStrike skill-280-royal-strike.ts B 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)

第3章:Amazon (亚马逊) (IDs 6..35) 逐项深度对照

本章对 Amazon (亚马逊) 下辖全部 30 项技能进行逐项 1:1 源码审查:

6. Magic Arrow (Skill ID: 6)

  • 基本元数据:职业 ama | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-006-magic-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [magicarrow],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


7. Fire Arrow (Skill ID: 7)

  • 基本元数据:职业 ama | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-007-fire-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [firearrow],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

8. Inner Sight (Skill ID: 8)

  • 基本元数据:职业 ama | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo006_InnerSight_SlowMissiles (SrvDo: 6) -> SkillAma.cpp:384
  • Web 映射实现:src/game/skills/impl/ama/skill-008-inner-sight.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [6] SKILLS_SrvDo006_InnerSight_SlowMissiles 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


9. Critical Strike (Skill ID: 9)

  • 基本元数据:职业 ama | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-009-critical-strike.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [criticalstrike],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


10. Jab (Skill ID: 10)

  • 基本元数据:职业 ama | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt05_Jab (SrvSt: 5) -> SkillAma.cpp:69
  • D2MOO 动作函数:SKILLS_SrvDo007_Jab (SrvDo: 7) -> SkillAma.cpp:427
  • Web 映射实现:src/game/skills/impl/ama/skill-010-jab.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [5] SKILLS_SrvSt05_Jab 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [7] SKILLS_SrvDo007_Jab 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[5]驱动模式与前置校验)

11. Cold Arrow (Skill ID: 11)

  • 基本元数据:职业 ama | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-011-cold-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [coldarrow],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

12. Multiple Shot (Skill ID: 12)

  • 基本元数据:职业 ama | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:SKILLS_SrvDo008_MultipleShot_Teeth_ShockWave (SrvDo: 8) -> SkillAma.cpp:476
  • Web 映射实现:src/game/skills/impl/ama/skill-012-multiple-shot.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [8] SKILLS_SrvDo008_MultipleShot_Teeth_ShockWave 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [multipleshotarrow, multipleshotbolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

13. Dodge (Skill ID: 13)

  • 基本元数据:职业 ama | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-013-dodge.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [dodge],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


14. Power Strike (Skill ID: 14)

  • 基本元数据:职业 ama | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt06_PowerStrike_ChargedStrike (SrvSt: 6) -> SkillAma.cpp:80
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/ama/skill-014-power-strike.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [6] SKILLS_SrvSt06_PowerStrike_ChargedStrike 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[6]驱动模式与前置校验)

15. Poison Javelin (Skill ID: 15)

  • 基本元数据:职业 ama | 需求等级 6 | 施法延迟 15 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-015-poison-javelin.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [poisonjav],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

16. Exploding Arrow (Skill ID: 16)

  • 基本元数据:职业 ama | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-016-exploding-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [explodingarrow],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

17. Slow Missiles (Skill ID: 17)

  • 基本元数据:职业 ama | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo006_InnerSight_SlowMissiles (SrvDo: 6) -> SkillAma.cpp:384
  • Web 映射实现:src/game/skills/impl/ama/skill-017-slow-missiles.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [6] SKILLS_SrvDo006_InnerSight_SlowMissiles 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


18. Avoid (Skill ID: 18)

  • 基本元数据:职业 ama | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-018-avoid.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [avoid],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


19. Impale (Skill ID: 19)

  • 基本元数据:职业 ama | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt07_Impale (SrvSt: 7) -> SkillAma.cpp:117
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/ama/skill-019-impale.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [7] SKILLS_SrvSt07_Impale 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[7]驱动模式与前置校验)

20. Lightning Bolt (Skill ID: 20)

  • 基本元数据:职业 ama | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-020-lightning-bolt.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [lightningjavelin],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

21. Ice Arrow (Skill ID: 21)

  • 基本元数据:职业 ama | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-021-ice-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [icearrow],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

22. Guided Arrow (Skill ID: 22)

  • 基本元数据:职业 ama | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:SKILLS_SrvDo010_GuidedArrow_BoneSpirit (SrvDo: 10) -> SkillAma.cpp:570
  • Web 映射实现:src/game/skills/impl/ama/skill-022-guided-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [10] SKILLS_SrvDo010_GuidedArrow_BoneSpirit 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [guidedarrow, guidedarrow, guidedarrow],支持弹道碰撞与NextDelay。【关键真值】1.13c严格禁止穿透(canPierce=0, pierceChancePct=0),彻底消除反弹回穿。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

23. Penetrate (Skill ID: 23)

  • 基本元数据:职业 ama | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-023-penetrate.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [penetrate],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


24. Charged Strike (Skill ID: 24)

  • 基本元数据:职业 ama | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt06_PowerStrike_ChargedStrike (SrvSt: 6) -> SkillAma.cpp:80
  • D2MOO 动作函数:SKILLS_SrvDo011_ChargedStrike (SrvDo: 11) -> SkillAma.cpp:657
  • Web 映射实现:src/game/skills/impl/ama/skill-024-charged-strike.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [6] SKILLS_SrvSt06_PowerStrike_ChargedStrike 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [11] SKILLS_SrvDo011_ChargedStrike 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [chargedstrikebolt, chargedstrikebolt, chargedstrikebolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[6]驱动模式与前置校验)

25. Plague Javelin (Skill ID: 25)

  • 基本元数据:职业 ama | 需求等级 18 | 施法延迟 100 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-025-plague-javelin.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [plaguejavelin],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

26. Strafe (Skill ID: 26)

  • 基本元数据:职业 ama | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt08_Strafe (SrvSt: 8) -> SkillAma.cpp:191
  • D2MOO 动作函数:SKILLS_SrvDo012_Strafe (SrvDo: 12) -> SkillAma.cpp:711
  • Web 映射实现:src/game/skills/impl/ama/skill-026-strafe.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [8] SKILLS_SrvSt08_Strafe 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [12] SKILLS_SrvDo012_Strafe 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [strafearrow, strafebolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[8]驱动模式与前置校验)

27. Immolation Arrow (Skill ID: 27)

  • 基本元数据:职业 ama | 需求等级 24 | 施法延迟 25 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-027-immolation-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [immolationarrow],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

28. Dopplezon (Skill ID: 28)

  • 基本元数据:职业 ama | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo015_Dopplezon (SrvDo: 15) -> SkillAma.cpp:922
  • Web 映射实现:src/game/skills/impl/ama/skill-028-dopplezon.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [15] SKILLS_SrvDo015_Dopplezon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [dopplezon],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [dopplezon],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


29. Evade (Skill ID: 29)

  • 基本元数据:职业 ama | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-029-evade.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [evade],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


30. Fend (Skill ID: 30)

  • 基本元数据:职业 ama | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt09_Fend (SrvSt: 9) -> SkillAma.cpp:258
  • D2MOO 动作函数:SKILLS_SrvDo013_Fend_Zeal_Fury (SrvDo: 13) -> SkillAma.cpp:795
  • Web 映射实现:src/game/skills/impl/ama/skill-030-fend.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [9] SKILLS_SrvSt09_Fend 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [13] SKILLS_SrvDo013_Fend_Zeal_Fury 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[9]驱动模式与前置校验)

31. Freezing Arrow (Skill ID: 31)

  • 基本元数据:职业 ama | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-031-freezing-arrow.ts -> src/game/skills/amazon-bow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [freezingarrow],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

32. Valkyrie (Skill ID: 32)

  • 基本元数据:职业 ama | 需求等级 30 | 施法延迟 150 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo016_Valkyrie (SrvDo: 16) -> SkillAma.cpp:979
  • Web 映射实现:src/game/skills/impl/ama/skill-032-valkyrie.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [16] SKILLS_SrvDo016_Valkyrie 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [valkyrie],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


33. Pierce (Skill ID: 33)

  • 基本元数据:职业 ama | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-033-pierce.ts -> src/game/skills/amazon-passive.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [pierce],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


34. Lightning Strike (Skill ID: 34)

  • 基本元数据:职业 ama | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt10_LightningStrike (SrvSt: 10) -> SkillAma.cpp:339
  • D2MOO 动作函数:SKILLS_SrvDo014_LightningStrike (SrvDo: 14) -> SkillAma.cpp:870
  • Web 映射实现:src/game/skills/impl/ama/skill-034-lightning-strike.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [10] SKILLS_SrvSt10_LightningStrike 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [14] SKILLS_SrvDo014_LightningStrike 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [lightningstrike, lightningstrike, lightningstrike],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[10]驱动模式与前置校验)

35. Lightning Fury (Skill ID: 35)

  • 基本元数据:职业 ama | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt04_Arrow_Bolt (SrvSt: 4) -> SkillAma.cpp:56
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ama/skill-035-lightning-fury.ts -> src/game/skills/amazon-javelin-spear.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [4] SKILLS_SrvSt04_Arrow_Bolt 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [lightningfury],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[4]驱动模式与前置校验)

第4章:Sorceress (巫师) (IDs 36..65) 逐项深度对照

本章对 Sorceress (巫师) 下辖全部 30 项技能进行逐项 1:1 源码审查:

36. Fire Bolt (Skill ID: 36)

  • 基本元数据:职业 sor | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-036-fire-bolt.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [firebolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


37. Warmth (Skill ID: 37)

  • 基本元数据:职业 sor | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-037-warmth.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [warmth],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


38. Charged Bolt (Skill ID: 38)

  • 基本元数据:职业 sor | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo017_ChargedBolt_BoltSentry (SrvDo: 17) -> SkillSor.cpp:279
  • Web 映射实现:src/game/skills/impl/sor/skill-038-charged-bolt.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [17] SKILLS_SrvDo017_ChargedBolt_BoltSentry 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [chargedbolt, chargedbolt, chargedbolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


39. Ice Bolt (Skill ID: 39)

  • 基本元数据:职业 sor | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-039-ice-bolt.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [icebolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


40. Frozen Armor (Skill ID: 40)

  • 基本元数据:职业 sor | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/sor/skill-040-frozen-armor.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [frozenarmor],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


41. Inferno (Skill ID: 41)

  • 基本元数据:职业 sor | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt11_Inferno_ArcticBlast (SrvSt: 11) -> SkillSor.cpp:177
  • D2MOO 动作函数:SKILLS_SrvDo019_Inferno_ArcticBlast (SrvDo: 19) -> SkillSor.cpp:394
  • Web 映射实现:src/game/skills/impl/sor/skill-041-inferno.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [11] SKILLS_SrvSt11_Inferno_ArcticBlast 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [19] SKILLS_SrvDo019_Inferno_ArcticBlast 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [infernoflame1, infernoflame1, infernoflame1],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[11]驱动模式与前置校验)

42. Static Field (Skill ID: 42)

  • 基本元数据:职业 sor | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo020_StaticField (SrvDo: 20) -> SkillSor.cpp:406
  • Web 映射实现:src/game/skills/impl/sor/skill-042-static-field.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 8: Static Field
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [20] SKILLS_SrvDo020_StaticField 触发动作帧处理。 Web端由 registry.ts 中的 Branch 8: Static Field 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


43. Telekinesis (Skill ID: 43)

  • 基本元数据:职业 sor | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt12_Telekinesis_DragonFlight (SrvSt: 12) -> SkillSor.cpp:190
  • D2MOO 动作函数:SKILLS_SrvDo021_Telekinesis (SrvDo: 21) -> SkillSor.cpp:497
  • Web 映射实现:src/game/skills/impl/sor/skill-043-telekinesis.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [12] SKILLS_SrvSt12_Telekinesis_DragonFlight 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [21] SKILLS_SrvDo021_Telekinesis 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[12]驱动模式与前置校验)

44. Frost Nova (Skill ID: 44)

  • 基本元数据:职业 sor | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo022_NovaAttack (SrvDo: 22) -> SkillSor.cpp:578
  • Web 映射实现:src/game/skills/impl/sor/skill-044-frost-nova.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [22] SKILLS_SrvDo022_NovaAttack 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [frostnova, frostnova, frostnova],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


45. Ice Blast (Skill ID: 45)

  • 基本元数据:职业 sor | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-045-ice-blast.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [iceblast],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


46. Blaze (Skill ID: 46)

  • 基本元数据:职业 sor | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo023_Blaze_EnergyShield_SpiderLay (SrvDo: 23) -> SkillSor.cpp:604
  • Web 映射实现:src/game/skills/impl/sor/skill-046-blaze.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [23] SKILLS_SrvDo023_Blaze_EnergyShield_SpiderLay 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [blaze, blaze, blaze],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [blaze],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


47. Fire Ball (Skill ID: 47)

  • 基本元数据:职业 sor | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-047-fire-ball.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [fireball],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


48. Nova (Skill ID: 48)

  • 基本元数据:职业 sor | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo022_NovaAttack (SrvDo: 22) -> SkillSor.cpp:578
  • Web 映射实现:src/game/skills/impl/sor/skill-048-nova.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [22] SKILLS_SrvDo022_NovaAttack 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [nova, nova, nova],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


49. Lightning (Skill ID: 49)

  • 基本元数据:职业 sor | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-049-lightning.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [lightningbolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


50. Shiver Armor (Skill ID: 50)

  • 基本元数据:职业 sor | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/sor/skill-050-shiver-armor.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [shiverarmor],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


51. Fire Wall (Skill ID: 51)

  • 基本元数据:职业 sor | 需求等级 18 | 施法延迟 35 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo024_FireWall (SrvDo: 24) -> SkillSor.cpp:694
  • Web 映射实现:src/game/skills/impl/sor/skill-051-fire-wall.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [24] SKILLS_SrvDo024_FireWall 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [firewallmaker, firewall],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


52. Enchant (Skill ID: 52)

  • 基本元数据:职业 sor | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo025_Enchant (SrvDo: 25) -> SkillSor.cpp:766
  • Web 映射实现:src/game/skills/impl/sor/skill-052-enchant.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [25] SKILLS_SrvDo025_Enchant 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [enchant],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


53. Chain Lightning (Skill ID: 53)

  • 基本元数据:职业 sor | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo026_ChainLightning (SrvDo: 26) -> SkillSor.cpp:812
  • Web 映射实现:src/game/skills/impl/sor/skill-053-chain-lightning.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [26] SKILLS_SrvDo026_ChainLightning 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [chainlightning, chainlightning, chainlightning],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


54. Teleport (Skill ID: 54)

  • 基本元数据:职业 sor | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo027_Teleport (SrvDo: 27) -> SkillSor.cpp:874
  • Web 映射实现:src/game/skills/impl/sor/skill-054-teleport.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [27] SKILLS_SrvDo027_Teleport 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


55. Glacial Spike (Skill ID: 55)

  • 基本元数据:职业 sor | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-055-glacial-spike.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [glacialspike],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


56. Meteor (Skill ID: 56)

  • 基本元数据:职业 sor | 需求等级 24 | 施法延迟 30 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult (SrvDo: 28) -> SkillSor.cpp:896
  • Web 映射实现:src/game/skills/impl/sor/skill-056-meteor.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [28] SKILLS_SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [meteorcenter, meteorcenter, meteorcenter],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


57. Thunder Storm (Skill ID: 57)

  • 基本元数据:职业 sor | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt13_ThunderStorm (SrvSt: 13) -> SkillSor.cpp:222
  • D2MOO 动作函数:SKILLS_SrvDo029_ThunderStorm (SrvDo: 29) -> SkillSor.cpp:918
  • Web 映射实现:src/game/skills/impl/sor/skill-057-thunder-storm.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [13] SKILLS_SrvSt13_ThunderStorm 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [29] SKILLS_SrvDo029_ThunderStorm 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [thunderstorm1],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [thunderstorm],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[13]驱动模式与前置校验)

58. Energy Shield (Skill ID: 58)

  • 基本元数据:职业 sor | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo023_Blaze_EnergyShield_SpiderLay (SrvDo: 23) -> SkillSor.cpp:604
  • Web 映射实现:src/game/skills/impl/sor/skill-058-energy-shield.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [23] SKILLS_SrvDo023_Blaze_EnergyShield_SpiderLay 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [energyshield],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


59. Blizzard (Skill ID: 59)

  • 基本元数据:职业 sor | 需求等级 24 | 施法延迟 45 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult (SrvDo: 28) -> SkillSor.cpp:896
  • Web 映射实现:src/game/skills/impl/sor/skill-059-blizzard.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [28] SKILLS_SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [blizzardcenter, blizzardcenter, blizzardcenter],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


60. Chilling Armor (Skill ID: 60)

  • 基本元数据:职业 sor | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/sor/skill-060-chilling-armor.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [chillingarmorbolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [chillingarmor],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


61. Fire Mastery (Skill ID: 61)

  • 基本元数据:职业 sor | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-061-fire-mastery.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [firemastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


62. Hydra (Skill ID: 62)

  • 基本元数据:职业 sor | 需求等级 30 | 施法延迟 40 帧
  • D2MOO 起手函数:SKILLS_SrvSt14_Hydra (SrvSt: 14) -> SkillSor.cpp:241
  • D2MOO 动作函数:SKILLS_SrvDo144_Hydra (SrvDo: 144) -> SkillSor.cpp:1088
  • Web 映射实现:src/game/skills/impl/sor/skill-062-hydra.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [14] SKILLS_SrvSt14_Hydra 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [144] SKILLS_SrvDo144_Hydra 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [hydra1],遵循 PetType 上限与 AI 属性。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[14]驱动模式与前置校验)

63. Lightning Mastery (Skill ID: 63)

  • 基本元数据:职业 sor | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-063-lightning-mastery.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [lightningmastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


64. Frozen Orb (Skill ID: 64)

  • 基本元数据:职业 sor | 需求等级 30 | 施法延迟 25 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-064-frozen-orb.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [frozenorb],支持弹道碰撞与NextDelay。【关键真值】主球生成64点放射子弹,第30刻爆裂发射高密度暴风雪弹幕。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


65. Cold Mastery (Skill ID: 65)

  • 基本元数据:职业 sor | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/sor/skill-065-cold-mastery.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [coldmastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


第5章:Necromancer (死灵法师) (IDs 66..95) 逐项深度对照

本章对 Necromancer (死灵法师) 下辖全部 30 项技能进行逐项 1:1 源码审查:

66. Amplify Damage (Skill ID: 66)

  • 基本元数据:职业 nec | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-066-amplify-damage.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


67. Teeth (Skill ID: 67)

  • 基本元数据:职业 nec | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo008_MultipleShot_Teeth_ShockWave (SrvDo: 8) -> SkillAma.cpp:476
  • Web 映射实现:src/game/skills/impl/nec/skill-067-teeth.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [8] SKILLS_SrvDo008_MultipleShot_Teeth_ShockWave 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [teeth],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


68. Bone Armor (Skill ID: 68)

  • 基本元数据:职业 nec | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/nec/skill-068-bone-armor.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [bonearmor],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


69. Skeleton Mastery (Skill ID: 69)

  • 基本元数据:职业 nec | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/nec/skill-069-skeleton-mastery.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [skel_mastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


70. Raise Skeleton (Skill ID: 70)

  • 基本元数据:职业 nec | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt15_RaiseSkeleton_Mage (SrvSt: 15) -> SkillNec.cpp:97
  • D2MOO 动作函数:SKILLS_SrvDo031_RaiseSkeleton_Mage (SrvDo: 31) -> SkillNec.cpp:1150
  • Web 映射实现:src/game/skills/impl/nec/skill-070-raise-skeleton.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [15] SKILLS_SrvSt15_RaiseSkeleton_Mage 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [31] SKILLS_SrvDo031_RaiseSkeleton_Mage 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [necroskeleton],遵循 PetType 上限与 AI 属性。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[15]驱动模式与前置校验)

71. Dim Vision (Skill ID: 71)

  • 基本元数据:职业 nec | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-071-dim-vision.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


72. Weaken (Skill ID: 72)

  • 基本元数据:职业 nec | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-072-weaken.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


73. Poison Dagger (Skill ID: 73)

  • 基本元数据:职业 nec | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt16_PoisonDagger (SrvSt: 16) -> SkillNec.cpp:113
  • D2MOO 动作函数:SKILLS_SrvDo032_PoisonDagger (SrvDo: 32) -> SkillNec.cpp:1254
  • Web 映射实现:src/game/skills/impl/nec/skill-073-poison-dagger.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [16] SKILLS_SrvSt16_PoisonDagger 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [32] SKILLS_SrvDo032_PoisonDagger 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[16]驱动模式与前置校验)

74. Corpse Explosion (Skill ID: 74)

  • 基本元数据:职业 nec | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt17_Poison_CorpseExplosion (SrvSt: 17) -> SkillNec.cpp:157
  • D2MOO 动作函数:SKILLS_SrvDo055_CorpseExplosion (SrvDo: 55) -> SkillDruid.cpp:2404
  • Web 映射实现:src/game/skills/impl/nec/skill-074-corpse-explosion.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 5: Corpse & Utility
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [17] SKILLS_SrvSt17_Poison_CorpseExplosion 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [55] SKILLS_SrvDo055_CorpseExplosion 触发动作帧处理。 Web端由 registry.ts 中的 Branch 5: Corpse & Utility 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。【关键真值】1.13c按怪物基础生命值70%-120%结算(50%物理+50%火焰),受抗性穿透影响。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[17]驱动模式与前置校验)

75. Clay Golem (Skill ID: 75)

  • 基本元数据:职业 nec | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo056_Golem (SrvDo: 56) -> SkillNec.cpp:1373
  • Web 映射实现:src/game/skills/impl/nec/skill-075-clay-golem.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [56] SKILLS_SrvDo056_Golem 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [ClayGolem],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


76. Iron Maiden (Skill ID: 76)

  • 基本元数据:职业 nec | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-076-iron-maiden.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


77. Terror (Skill ID: 77)

  • 基本元数据:职业 nec | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-077-terror.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


78. Bone Wall (Skill ID: 78)

  • 基本元数据:职业 nec | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo060_BoneWall (SrvDo: 60) -> SkillNec.cpp:1627
  • Web 映射实现:src/game/skills/impl/nec/skill-078-bone-wall.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [60] SKILLS_SrvDo060_BoneWall 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [bonewallmaker],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [bonewall],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


79. Golem Mastery (Skill ID: 79)

  • 基本元数据:职业 nec | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/nec/skill-079-golem-mastery.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [golem_mastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


80. Raise Skeletal Mage (Skill ID: 80)

  • 基本元数据:职业 nec | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt15_RaiseSkeleton_Mage (SrvSt: 15) -> SkillNec.cpp:97
  • D2MOO 动作函数:SKILLS_SrvDo031_RaiseSkeleton_Mage (SrvDo: 31) -> SkillNec.cpp:1150
  • Web 映射实现:src/game/skills/impl/nec/skill-080-raise-skeletal-mage.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [15] SKILLS_SrvSt15_RaiseSkeleton_Mage 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [31] SKILLS_SrvDo031_RaiseSkeleton_Mage 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [necromage],遵循 PetType 上限与 AI 属性。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[15]驱动模式与前置校验)

81. Confuse (Skill ID: 81)

  • 基本元数据:职业 nec | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo061_Confuse (SrvDo: 61) -> SkillNec.cpp:652
  • Web 映射实现:src/game/skills/impl/nec/skill-081-confuse.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [61] SKILLS_SrvDo061_Confuse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


82. Life Tap (Skill ID: 82)

  • 基本元数据:职业 nec | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-082-life-tap.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


83. Poison Explosion (Skill ID: 83)

  • 基本元数据:职业 nec | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt17_Poison_CorpseExplosion (SrvSt: 17) -> SkillNec.cpp:157
  • D2MOO 动作函数:SKILLS_SrvDo063_PoisonExplosion (SrvDo: 63) -> SkillNec.cpp:1844
  • Web 映射实现:src/game/skills/impl/nec/skill-083-poison-explosion.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 5: Corpse & Utility
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [17] SKILLS_SrvSt17_Poison_CorpseExplosion 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [63] SKILLS_SrvDo063_PoisonExplosion 触发动作帧处理。 Web端由 registry.ts 中的 Branch 5: Corpse & Utility 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [poisonexplosioncloud],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[17]驱动模式与前置校验)

84. Bone Spear (Skill ID: 84)

  • 基本元数据:职业 nec | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/nec/skill-084-bone-spear.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [bonespear],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


85. BloodGolem (Skill ID: 85)

  • 基本元数据:职业 nec | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo056_Golem (SrvDo: 56) -> SkillNec.cpp:1373
  • Web 映射实现:src/game/skills/impl/nec/skill-085-bloodgolem.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [56] SKILLS_SrvDo056_Golem 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [BloodGolem],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


86. Attract (Skill ID: 86)

  • 基本元数据:职业 nec | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt18_Attract (SrvSt: 18) -> Skills.cpp:4201
  • D2MOO 动作函数:SKILLS_SrvDo059_Attract (SrvDo: 59) -> SkillNec.cpp:559
  • Web 映射实现:src/game/skills/impl/nec/skill-086-attract.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [18] SKILLS_SrvSt18_Attract 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [59] SKILLS_SrvDo059_Attract 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[18]驱动模式与前置校验)

87. Decrepify (Skill ID: 87)

  • 基本元数据:职业 nec | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-087-decrepify.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


88. Bone Prison (Skill ID: 88)

  • 基本元数据:职业 nec | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt19_BonePrison (SrvSt: 19) -> SkillNec.cpp:173
  • D2MOO 动作函数:SKILLS_SrvDo062_BonePrison (SrvDo: 62) -> SkillNec.cpp:1751
  • Web 映射实现:src/game/skills/impl/nec/skill-088-bone-prison.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [19] SKILLS_SrvSt19_BonePrison 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [62] SKILLS_SrvDo062_BonePrison 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [bonewall],遵循 PetType 上限与 AI 属性。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[19]驱动模式与前置校验)

89. Summon Resist (Skill ID: 89)

  • 基本元数据:职业 nec | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/nec/skill-089-summon-resist.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [summonresist],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


90. IronGolem (Skill ID: 90)

  • 基本元数据:职业 nec | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt20_IronGolem (SrvSt: 20) -> SkillNec.cpp:185
  • D2MOO 动作函数:SKILLS_SrvDo057_IronGolem (SrvDo: 57) -> SkillNec.cpp:1422
  • Web 映射实现:src/game/skills/impl/nec/skill-090-irongolem.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [20] SKILLS_SrvSt20_IronGolem 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [57] SKILLS_SrvDo057_IronGolem 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [thorns],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [IronGolem],遵循 PetType 上限与 AI 属性。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[20]驱动模式与前置校验)

91. Lower Resist (Skill ID: 91)

  • 基本元数据:职业 nec | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo030_Curse (SrvDo: 30) -> SkillNec.cpp:428
  • Web 映射实现:src/game/skills/impl/nec/skill-091-lower-resist.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [30] SKILLS_SrvDo030_Curse 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


92. Poison Nova (Skill ID: 92)

  • 基本元数据:职业 nec | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo022_NovaAttack (SrvDo: 22) -> SkillSor.cpp:578
  • Web 映射实现:src/game/skills/impl/nec/skill-092-poison-nova.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [22] SKILLS_SrvDo022_NovaAttack 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [poisonnova],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


93. Bone Spirit (Skill ID: 93)

  • 基本元数据:职业 nec | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo010_GuidedArrow_BoneSpirit (SrvDo: 10) -> SkillAma.cpp:570
  • Web 映射实现:src/game/skills/impl/nec/skill-093-bone-spirit.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [10] SKILLS_SrvDo010_GuidedArrow_BoneSpirit 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [bonespirit, bonespirit],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


94. FireGolem (Skill ID: 94)

  • 基本元数据:职业 nec | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo056_Golem (SrvDo: 56) -> SkillNec.cpp:1373
  • Web 映射实现:src/game/skills/impl/nec/skill-094-firegolem.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [56] SKILLS_SrvDo056_Golem 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [FireGolem],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


95. Revive (Skill ID: 95)

  • 基本元数据:职业 nec | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt21_Revive (SrvSt: 21) -> SkillNec.cpp:197
  • D2MOO 动作函数:SKILLS_SrvDo058_Revive (SrvDo: 58) -> SkillNec.cpp:1490
  • Web 映射实现:src/game/skills/impl/nec/skill-095-revive.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [21] SKILLS_SrvSt21_Revive 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [58] SKILLS_SrvDo058_Revive 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[21]驱动模式与前置校验)

第6章:Paladin (圣骑士) (IDs 96..125) 逐项深度对照

本章对 Paladin (圣骑士) 下辖全部 30 项技能进行逐项 1:1 源码审查:

96. Sacrifice (Skill ID: 96)

  • 基本元数据:职业 pal | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt29_Sacrifice (SrvSt: 29) -> SkillPal.cpp:71
  • D2MOO 动作函数:SKILLS_SrvDo064_Sacrifice (SrvDo: 64) -> SkillPal.cpp:109
  • Web 映射实现:src/game/skills/impl/pal/skill-096-sacrifice.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [29] SKILLS_SrvSt29_Sacrifice 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [64] SKILLS_SrvDo064_Sacrifice 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[29]驱动模式与前置校验)

97. Smite (Skill ID: 97)

  • 基本元数据:职业 pal | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo150_Smite (SrvDo: 150) -> SkillPal.cpp:146
  • Web 映射实现:src/game/skills/impl/pal/skill-097-smite.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [150] SKILLS_SrvDo150_Smite 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


98. Might (Skill ID: 98)

  • 基本元数据:职业 pal | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-098-might.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [might],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


99. Prayer (Skill ID: 99)

  • 基本元数据:职业 pal | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-099-prayer.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [prayer],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


100. Resist Fire (Skill ID: 100)

  • 基本元数据:职业 pal | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-100-resist-fire.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [passive_resistfire],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


101. Holy Bolt (Skill ID: 101)

  • 基本元数据:职业 pal | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/pal/skill-101-holy-bolt.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [holybolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


102. Holy Fire (Skill ID: 102)

  • 基本元数据:职业 pal | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction (SrvDo: 66) -> SkillPal.cpp:484
  • Web 映射实现:src/game/skills/impl/pal/skill-102-holy-fire.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [66] SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [holyfire],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


103. Thorns (Skill ID: 103)

  • 基本元数据:职业 pal | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-103-thorns.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [thorns],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


104. Defiance (Skill ID: 104)

  • 基本元数据:职业 pal | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-104-defiance.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [defiance],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


105. Resist Cold (Skill ID: 105)

  • 基本元数据:职业 pal | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-105-resist-cold.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [passive_resistcold],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


106. Zeal (Skill ID: 106)

  • 基本元数据:职业 pal | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt37_Zeal_Fury_BloodLordFrenzy (SrvSt: 37) -> SkillAma.cpp:304
  • D2MOO 动作函数:SKILLS_SrvDo013_Fend_Zeal_Fury (SrvDo: 13) -> SkillAma.cpp:795
  • Web 映射实现:src/game/skills/impl/pal/skill-106-zeal.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [37] SKILLS_SrvSt37_Zeal_Fury_BloodLordFrenzy 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [13] SKILLS_SrvDo013_Fend_Zeal_Fury 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[37]驱动模式与前置校验)

107. Charge (Skill ID: 107)

  • 基本元数据:职业 pal | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt31_Charge (SrvSt: 31) -> SkillPal.cpp:611
  • D2MOO 动作函数:SKILLS_SrvDo067_Charge (SrvDo: 67) -> SkillPal.cpp:711
  • Web 映射实现:src/game/skills/impl/pal/skill-107-charge.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [31] SKILLS_SrvSt31_Charge 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [67] SKILLS_SrvDo067_Charge 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[31]驱动模式与前置校验)

108. Blessed Aim (Skill ID: 108)

  • 基本元数据:职业 pal | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-108-blessed-aim.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [penetrate],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


109. Cleansing (Skill ID: 109)

  • 基本元数据:职业 pal | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-109-cleansing.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [cleansing],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


110. Resist Lightning (Skill ID: 110)

  • 基本元数据:职业 pal | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-110-resist-lightning.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [passive_resistltng],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


111. Vengeance (Skill ID: 111)

  • 基本元数据:职业 pal | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt35_Vengeance (SrvSt: 35) -> SkillPal.cpp:914
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/pal/skill-111-vengeance.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [35] SKILLS_SrvSt35_Vengeance 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[35]驱动模式与前置校验)

112. Blessed Hammer (Skill ID: 112)

  • 基本元数据:职业 pal | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo073_BlessedHammer (SrvDo: 73) -> SkillPal.cpp:1051
  • Web 映射实现:src/game/skills/impl/pal/skill-112-blessed-hammer.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [73] SKILLS_SrvDo073_BlessedHammer 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [blessedhammer],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


113. Concentration (Skill ID: 113)

  • 基本元数据:职业 pal | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-113-concentration.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [concentration],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


114. Holy Freeze (Skill ID: 114)

  • 基本元数据:职业 pal | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo081_HolyFreeze (SrvDo: 81) -> SkillPal.cpp:1305
  • Web 映射实现:src/game/skills/impl/pal/skill-114-holy-freeze.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [81] SKILLS_SrvDo081_HolyFreeze 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [holywind],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


115. Vigor (Skill ID: 115)

  • 基本元数据:职业 pal | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-115-vigor.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [stamina],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


116. Conversion (Skill ID: 116)

  • 基本元数据:职业 pal | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite (SrvSt: 32) -> SkillBar.cpp:60
  • D2MOO 动作函数:SKILLS_SrvDo079_Conversion (SrvDo: 79) -> SkillPal.cpp:1110
  • Web 映射实现:src/game/skills/impl/pal/skill-116-conversion.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [32] SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [79] SKILLS_SrvDo079_Conversion 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)

117. Holy Shield (Skill ID: 117)

  • 基本元数据:职业 pal | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt36_HolyShield (SrvSt: 36) -> SkillPal.cpp:1099
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/pal/skill-117-holy-shield.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [36] SKILLS_SrvSt36_HolyShield 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [holyshield],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[36]驱动模式与前置校验)

118. Holy Shock (Skill ID: 118)

  • 基本元数据:职业 pal | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction (SrvDo: 66) -> SkillPal.cpp:484
  • Web 映射实现:src/game/skills/impl/pal/skill-118-holy-shock.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [66] SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [holyshock],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


119. Sanctuary (Skill ID: 119)

  • 基本元数据:职业 pal | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction (SrvDo: 66) -> SkillPal.cpp:484
  • Web 映射实现:src/game/skills/impl/pal/skill-119-sanctuary.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [66] SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [sanctuary],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


120. Meditation (Skill ID: 120)

  • 基本元数据:职业 pal | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-120-meditation.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [meditation],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


121. Fist of the Heavens (Skill ID: 121)

  • 基本元数据:职业 pal | 需求等级 30 | 施法延迟 25 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo080_FistOfTheHeavens (SrvDo: 80) -> SkillPal.cpp:1264
  • Web 映射实现:src/game/skills/impl/pal/skill-121-fist-of-the-heavens.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [80] SKILLS_SrvDo080_FistOfTheHeavens 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [fistoftheheavensdelay],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


122. Fanaticism (Skill ID: 122)

  • 基本元数据:职业 pal | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-122-fanaticism.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [fanaticism],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


123. Conviction (Skill ID: 123)

  • 基本元数据:职业 pal | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction (SrvDo: 66) -> SkillPal.cpp:484
  • Web 映射实现:src/game/skills/impl/pal/skill-123-conviction.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [66] SKILLS_SrvDo066_HolyFire_HolyShock_Sanctuary_Conviction 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [conviction],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


124. Redemption (Skill ID: 124)

  • 基本元数据:职业 pal | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo082_Redemption (SrvDo: 82) -> SkillPal.cpp:1483
  • Web 映射实现:src/game/skills/impl/pal/skill-124-redemption.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [82] SKILLS_SrvDo082_Redemption 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [redemption],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


125. Salvation (Skill ID: 125)

  • 基本元数据:职业 pal | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo065_BasicAura (SrvDo: 65) -> SkillPal.cpp:227
  • Web 映射实现:src/game/skills/impl/pal/skill-125-salvation.ts -> src/game/skills/skills.ts
  • 运行时分发:registry.ts -> Branch 4: Auras
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [65] SKILLS_SrvDo065_BasicAura 触发动作帧处理。 Web端由 registry.ts 中的 Branch 4: Auras 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [resistall],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


第7章:Barbarian (野蛮人) (IDs 126..155) 逐项深度对照

本章对 Barbarian (野蛮人) 下辖全部 30 项技能进行逐项 1:1 源码审查:

126. Bash (Skill ID: 126)

  • 基本元数据:职业 bar | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite (SrvSt: 32) -> SkillBar.cpp:60
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/bar/skill-126-bash.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [32] SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)

127. Sword Mastery (Skill ID: 127)

  • 基本元数据:职业 bar | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-127-sword-mastery.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [swordmastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


128. Axe Mastery (Skill ID: 128)

  • 基本元数据:职业 bar | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-128-axe-mastery.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [axemastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


129. Mace Mastery (Skill ID: 129)

  • 基本元数据:职业 bar | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-129-mace-mastery.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [macemastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


130. Howl (Skill ID: 130)

  • 基本元数据:职业 bar | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo022_NovaAttack (SrvDo: 22) -> SkillSor.cpp:578
  • Web 映射实现:src/game/skills/impl/bar/skill-130-howl.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [22] SKILLS_SrvDo022_NovaAttack 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [howl],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


131. Find Potion (Skill ID: 131)

  • 基本元数据:职业 bar | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt33_FindPotion_GrimWard (SrvSt: 33) -> SkillBar.cpp:148
  • D2MOO 动作函数:SKILLS_SrvDo069_FindPotion (SrvDo: 69) -> SkillBar.cpp:166
  • Web 映射实现:src/game/skills/impl/bar/skill-131-find-potion.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 5: Corpse & Utility
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [33] SKILLS_SrvSt33_FindPotion_GrimWard 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [69] SKILLS_SrvDo069_FindPotion 触发动作帧处理。 Web端由 registry.ts 中的 Branch 5: Corpse & Utility 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[33]驱动模式与前置校验)

132. Leap (Skill ID: 132)

  • 基本元数据:职业 bar | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt40_Leap (SrvSt: 40) -> SkillBar.cpp:1190
  • D2MOO 动作函数:SKILLS_SrvDo077_Leap (SrvDo: 77) -> SkillBar.cpp:1366
  • Web 映射实现:src/game/skills/impl/bar/skill-132-leap.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [40] SKILLS_SrvSt40_Leap 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [77] SKILLS_SrvDo077_Leap 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [leapknockback],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[40]驱动模式与前置校验)

133. Double Swing (Skill ID: 133)

  • 基本元数据:职业 bar | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo070_DoubleSwing (SrvDo: 70) -> SkillBar.cpp:312
  • Web 映射实现:src/game/skills/impl/bar/skill-133-double-swing.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [70] SKILLS_SrvDo070_DoubleSwing 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


134. Pole Arm Mastery (Skill ID: 134)

  • 基本元数据:职业 bar | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-134-pole-arm-mastery.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [polearmmastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


135. Throwing Mastery (Skill ID: 135)

  • 基本元数据:职业 bar | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-135-throwing-mastery.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [throwingmastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


136. Spear Mastery (Skill ID: 136)

  • 基本元数据:职业 bar | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-136-spear-mastery.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [spearmastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


137. Taunt (Skill ID: 137)

  • 基本元数据:职业 bar | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo071_Taunt (SrvDo: 71) -> SkillBar.cpp:360
  • Web 映射实现:src/game/skills/impl/bar/skill-137-taunt.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [71] SKILLS_SrvDo071_Taunt 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


138. Shout (Skill ID: 138)

  • 基本元数据:职业 bar | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo068_BasicShout (SrvDo: 68) -> SkillBar.cpp:288
  • Web 映射实现:src/game/skills/impl/bar/skill-138-shout.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [68] SKILLS_SrvDo068_BasicShout 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [shout],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [shout],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


139. Stun (Skill ID: 139)

  • 基本元数据:职业 bar | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite (SrvSt: 32) -> SkillBar.cpp:60
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/bar/skill-139-stun.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [32] SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)

140. Double Throw (Skill ID: 140)

  • 基本元数据:职业 bar | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo074_DoubleThrow (SrvDo: 74) -> SkillBar.cpp:491
  • Web 映射实现:src/game/skills/impl/bar/skill-140-double-throw.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [74] SKILLS_SrvDo074_DoubleThrow 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


141. Increased Stamina (Skill ID: 141)

  • 基本元数据:职业 bar | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-141-increased-stamina.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [increasedstamina],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


142. Find Item (Skill ID: 142)

  • 基本元数据:职业 bar | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt34_FindItem (SrvSt: 34) -> SkillBar.cpp:427
  • D2MOO 动作函数:SKILLS_SrvDo072_FindItem (SrvDo: 72) -> SkillBar.cpp:439
  • Web 映射实现:src/game/skills/impl/bar/skill-142-find-item.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 5: Corpse & Utility
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [34] SKILLS_SrvSt34_FindItem 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [72] SKILLS_SrvDo072_FindItem 触发动作帧处理。 Web端由 registry.ts 中的 Branch 5: Corpse & Utility 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[34]驱动模式与前置校验)

143. Leap Attack (Skill ID: 143)

  • 基本元数据:职业 bar | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt41_LeapAttack (SrvSt: 41) -> SkillBar.cpp:1564
  • D2MOO 动作函数:SKILLS_SrvDo078_LeapAttack (SrvDo: 78) -> SkillBar.cpp:1621
  • Web 映射实现:src/game/skills/impl/bar/skill-143-leap-attack.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [41] SKILLS_SrvSt41_LeapAttack 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [78] SKILLS_SrvDo078_LeapAttack 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[41]驱动模式与前置校验)

144. Concentrate (Skill ID: 144)

  • 基本元数据:职业 bar | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite (SrvSt: 32) -> SkillBar.cpp:60
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/bar/skill-144-concentrate.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [32] SKILLS_SrvSt32_Conversion_Bash_Stun_Concentrate_BearSmite 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [concentrate],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[32]驱动模式与前置校验)

145. Iron Skin (Skill ID: 145)

  • 基本元数据:职业 bar | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-145-iron-skin.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [ironskin],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


146. Battle Cry (Skill ID: 146)

  • 基本元数据:职业 bar | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo068_BasicShout (SrvDo: 68) -> SkillBar.cpp:288
  • Web 映射实现:src/game/skills/impl/bar/skill-146-battle-cry.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [68] SKILLS_SrvDo068_BasicShout 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [battlecry],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


147. Frenzy (Skill ID: 147)

  • 基本元数据:职业 bar | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo009_Frenzy (SrvDo: 9) -> SkillBar.cpp:708
  • Web 映射实现:src/game/skills/impl/bar/skill-147-frenzy.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [9] SKILLS_SrvDo009_Frenzy 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [frenzy],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


148. Increased Speed (Skill ID: 148)

  • 基本元数据:职业 bar | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-148-increased-speed.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [increasedspeed],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


149. Battle Orders (Skill ID: 149)

  • 基本元数据:职业 bar | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo068_BasicShout (SrvDo: 68) -> SkillBar.cpp:288
  • Web 映射实现:src/game/skills/impl/bar/skill-149-battle-orders.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [68] SKILLS_SrvDo068_BasicShout 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [battleorders],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [battleorders],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


150. Grim Ward (Skill ID: 150)

  • 基本元数据:职业 bar | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt33_FindPotion_GrimWard (SrvSt: 33) -> SkillBar.cpp:148
  • D2MOO 动作函数:SKILLS_SrvDo075_GrimWard (SrvDo: 75) -> SkillBar.cpp:531
  • Web 映射实现:src/game/skills/impl/bar/skill-150-grim-ward.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 5: Corpse & Utility
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [33] SKILLS_SrvSt33_FindPotion_GrimWard 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [75] SKILLS_SrvDo075_GrimWard 触发动作帧处理。 Web端由 registry.ts 中的 Branch 5: Corpse & Utility 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [grimwardmediumstart, grimwardsmallstart, grimwardlargestart],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[33]驱动模式与前置校验)

151. Whirlwind (Skill ID: 151)

  • 基本元数据:职业 bar | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt38_Whirlwind (SrvSt: 38) -> SkillBar.cpp:752
  • D2MOO 动作函数:SKILLS_SrvDo076_Whirlwind (SrvDo: 76) -> SkillBar.cpp:916
  • Web 映射实现:src/game/skills/impl/bar/skill-151-whirlwind.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [38] SKILLS_SrvSt38_Whirlwind 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [76] SKILLS_SrvDo076_Whirlwind 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。【架构差异】D2MOO由循环碰撞点(每4帧/8帧检测)与武器IAS断点驱动;Web端按时钟周期范围碰撞结算。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [whirlwind],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[38]驱动模式与前置校验)
  • ⚠️ 旋风逐帧路径碰撞检测与双持攻击断点与原版C++底层结构存在时序差异

152. Berserk (Skill ID: 152)

  • 基本元数据:职业 bar | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt39_Berserk (SrvSt: 39) -> SkillBar.cpp:1102
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/bar/skill-152-berserk.ts -> src/game/skills/barbarian-combat.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [39] SKILLS_SrvSt39_Berserk 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [berserk],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[39]驱动模式与前置校验)

153. Natural Resistance (Skill ID: 153)

  • 基本元数据:职业 bar | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/bar/skill-153-natural-resistance.ts -> src/game/skills/barbarian-masteries.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [naturalresistance],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


154. War Cry (Skill ID: 154)

  • 基本元数据:职业 bar | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo068_BasicShout (SrvDo: 68) -> SkillBar.cpp:288
  • Web 映射实现:src/game/skills/impl/bar/skill-154-war-cry.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [68] SKILLS_SrvDo068_BasicShout 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [warcry],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


155. Battle Command (Skill ID: 155)

  • 基本元数据:职业 bar | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo068_BasicShout (SrvDo: 68) -> SkillBar.cpp:288
  • Web 映射实现:src/game/skills/impl/bar/skill-155-battle-command.ts -> src/game/skills/barbarian-warcries.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [68] SKILLS_SrvDo068_BasicShout 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [battlecommand],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [battlecommand],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


第8章:Druid (德鲁伊) (IDs 221..250) 逐项深度对照

本章对 Druid (德鲁伊) 下辖全部 30 项技能进行逐项 1:1 源码审查:

221. Raven (Skill ID: 221)

  • 基本元数据:职业 dru | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo114_Raven (SrvDo: 114) -> SkillDruid.cpp:46
  • Web 映射实现:src/game/skills/impl/dru/skill-221-raven.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [114] SKILLS_SrvDo114_Raven 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [druidhawk],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


222. Plague Poppy (Skill ID: 222)

  • 基本元数据:职业 dru | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo115_Vines (SrvDo: 115) -> SkillDruid.cpp:96
  • Web 映射实现:src/game/skills/impl/dru/skill-222-plague-poppy.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [115] SKILLS_SrvDo115_Vines 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [vine_beast],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [plaguepoppy],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


223. Wearwolf (Skill ID: 223)

  • 基本元数据:职业 dru | 需求等级 1 | 施法延迟 25 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo116_Wearwolf_Wearbear (SrvDo: 116) -> SkillDruid.cpp:262
  • Web 映射实现:src/game/skills/impl/dru/skill-223-wearwolf.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [116] SKILLS_SrvDo116_Wearwolf_Wearbear 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [wolf],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


224. Shape Shifting (Skill ID: 224)

  • 基本元数据:职业 dru | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/dru/skill-224-shape-shifting.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


225. Firestorm (Skill ID: 225)

  • 基本元数据:职业 dru | 需求等级 1 | 施法延迟 15 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo117_Firestorm (SrvDo: 117) -> SkillDruid.cpp:357
  • Web 映射实现:src/game/skills/impl/dru/skill-225-firestorm.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [117] SKILLS_SrvDo117_Firestorm 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [firestormmaker],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


226. Oak Sage (Skill ID: 226)

  • 基本元数据:职业 dru | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo119_DruidSummon (SrvDo: 119) -> SkillDruid.cpp:415
  • Web 映射实现:src/game/skills/impl/dru/skill-226-oak-sage.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [119] SKILLS_SrvDo119_DruidSummon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [oaksage],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


227. Summon Spirit Wolf (Skill ID: 227)

  • 基本元数据:职业 dru | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo119_DruidSummon (SrvDo: 119) -> SkillDruid.cpp:415
  • Web 映射实现:src/game/skills/impl/dru/skill-227-summon-spirit-wolf.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [119] SKILLS_SrvDo119_DruidSummon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [spiritwolf],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


228. Wearbear (Skill ID: 228)

  • 基本元数据:职业 dru | 需求等级 6 | 施法延迟 25 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo116_Wearwolf_Wearbear (SrvDo: 116) -> SkillDruid.cpp:262
  • Web 映射实现:src/game/skills/impl/dru/skill-228-wearbear.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [116] SKILLS_SrvDo116_Wearwolf_Wearbear 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [bear],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


229. Molten Boulder (Skill ID: 229)

  • 基本元数据:职业 dru | 需求等级 6 | 施法延迟 50 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/dru/skill-229-molten-boulder.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [moltenboulderemerge],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


230. Arctic Blast (Skill ID: 230)

  • 基本元数据:职业 dru | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt11_Inferno_ArcticBlast (SrvSt: 11) -> SkillSor.cpp:177
  • D2MOO 动作函数:SKILLS_SrvDo019_Inferno_ArcticBlast (SrvDo: 19) -> SkillSor.cpp:394
  • Web 映射实现:src/game/skills/impl/dru/skill-230-arctic-blast.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [11] SKILLS_SrvSt11_Inferno_ArcticBlast 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [19] SKILLS_SrvDo019_Inferno_ArcticBlast 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [arcticblast1],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[11]驱动模式与前置校验)

231. Cycle of Life (Skill ID: 231)

  • 基本元数据:职业 dru | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo115_Vines (SrvDo: 115) -> SkillDruid.cpp:96
  • Web 映射实现:src/game/skills/impl/dru/skill-231-cycle-of-life.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [115] SKILLS_SrvDo115_Vines 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [vine_beast],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [cycleoflife],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


232. Feral Rage (Skill ID: 232)

  • 基本元数据:职业 dru | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt56_FeralRage_Maul (SrvSt: 56) -> SkillDruid.cpp:471
  • D2MOO 动作函数:SKILLS_SrvDo120_FeralRage_Maul (SrvDo: 120) -> SkillDruid.cpp:528
  • Web 映射实现:src/game/skills/impl/dru/skill-232-feral-rage.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [56] SKILLS_SrvSt56_FeralRage_Maul 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [120] SKILLS_SrvDo120_FeralRage_Maul 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [feralrage],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[56]驱动模式与前置校验)

233. Maul (Skill ID: 233)

  • 基本元数据:职业 dru | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt56_FeralRage_Maul (SrvSt: 56) -> SkillDruid.cpp:471
  • D2MOO 动作函数:SKILLS_SrvDo120_FeralRage_Maul (SrvDo: 120) -> SkillDruid.cpp:528
  • Web 映射实现:src/game/skills/impl/dru/skill-233-maul.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [56] SKILLS_SrvSt56_FeralRage_Maul 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [120] SKILLS_SrvDo120_FeralRage_Maul 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [maul],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[56]驱动模式与前置校验)

234. Eruption (Skill ID: 234)

  • 基本元数据:职业 dru | 需求等级 12 | 施法延迟 50 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult (SrvDo: 28) -> SkillSor.cpp:896
  • Web 映射实现:src/game/skills/impl/dru/skill-234-eruption.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [28] SKILLS_SrvDo028_Meteor_Blizzard_Eruption_BaalTaunt_Catapult 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [erruption center],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


235. Cyclone Armor (Skill ID: 235)

  • 基本元数据:职业 dru | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/dru/skill-235-cyclone-armor.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [cyclonearmor],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


236. Heart of Wolverine (Skill ID: 236)

  • 基本元数据:职业 dru | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo119_DruidSummon (SrvDo: 119) -> SkillDruid.cpp:415
  • Web 映射实现:src/game/skills/impl/dru/skill-236-heart-of-wolverine.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [119] SKILLS_SrvDo119_DruidSummon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [heartofwolverine],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


237. Summon Fenris (Skill ID: 237)

  • 基本元数据:职业 dru | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo119_DruidSummon (SrvDo: 119) -> SkillDruid.cpp:415
  • Web 映射实现:src/game/skills/impl/dru/skill-237-summon-fenris.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [119] SKILLS_SrvDo119_DruidSummon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [fenris],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


238. Rabies (Skill ID: 238)

  • 基本元数据:职业 dru | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt57_Rabies (SrvSt: 57) -> SkillDruid.cpp:606
  • D2MOO 动作函数:SKILLS_SrvDo121_Rabies (SrvDo: 121) -> SkillDruid.cpp:726
  • Web 映射实现:src/game/skills/impl/dru/skill-238-rabies.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [57] SKILLS_SrvSt57_Rabies 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [121] SKILLS_SrvDo121_Rabies 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [rabiesplague],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[57]驱动模式与前置校验)

239. Fire Claws (Skill ID: 239)

  • 基本元数据:职业 dru | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt58_FireClaws (SrvSt: 58) -> SkillDruid.cpp:834
  • D2MOO 动作函数:SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws (SrvDo: 2) -> Skills.cpp:2094
  • Web 映射实现:src/game/skills/impl/dru/skill-239-fire-claws.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [58] SKILLS_SrvSt58_FireClaws 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [2] SKILLS_SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[58]驱动模式与前置校验)

240. Twister (Skill ID: 240)

  • 基本元数据:职业 dru | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo118_Twister_Tornado (SrvDo: 118) -> SkillDruid.cpp:386
  • Web 映射实现:src/game/skills/impl/dru/skill-240-twister.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [118] SKILLS_SrvDo118_Twister_Tornado 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [twister],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


241. Vines (Skill ID: 241)

  • 基本元数据:职业 dru | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo115_Vines (SrvDo: 115) -> SkillDruid.cpp:96
  • Web 映射实现:src/game/skills/impl/dru/skill-241-vines.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [115] SKILLS_SrvDo115_Vines 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [vine_beast],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [vinecreature],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


242. Hunger (Skill ID: 242)

  • 基本元数据:职业 dru | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo122_Hunger (SrvDo: 122) -> SkillDruid.cpp:869
  • Web 映射实现:src/game/skills/impl/dru/skill-242-hunger.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [122] SKILLS_SrvDo122_Hunger 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


243. Shock Wave (Skill ID: 243)

  • 基本元数据:职业 dru | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo008_MultipleShot_Teeth_ShockWave (SrvDo: 8) -> SkillAma.cpp:476
  • Web 映射实现:src/game/skills/impl/dru/skill-243-shock-wave.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [8] SKILLS_SrvDo008_MultipleShot_Teeth_ShockWave 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [shockwave, shockwave],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


244. Volcano (Skill ID: 244)

  • 基本元数据:职业 dru | 需求等级 24 | 施法延迟 100 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo123_Volcano (SrvDo: 123) -> SkillDruid.cpp:914
  • Web 映射实现:src/game/skills/impl/dru/skill-244-volcano.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [123] SKILLS_SrvDo123_Volcano 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [volcano],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


245. Tornado (Skill ID: 245)

  • 基本元数据:职业 dru | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo118_Twister_Tornado (SrvDo: 118) -> SkillDruid.cpp:386
  • Web 映射实现:src/game/skills/impl/dru/skill-245-tornado.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [118] SKILLS_SrvDo118_Twister_Tornado 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [tornado],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


246. Spirit of Barbs (Skill ID: 246)

  • 基本元数据:职业 dru | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo119_DruidSummon (SrvDo: 119) -> SkillDruid.cpp:415
  • Web 映射实现:src/game/skills/impl/dru/skill-246-spirit-of-barbs.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [119] SKILLS_SrvDo119_DruidSummon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [spiritofbarbs],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


247. Summon Grizzly (Skill ID: 247)

  • 基本元数据:职业 dru | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo119_DruidSummon (SrvDo: 119) -> SkillDruid.cpp:415
  • Web 映射实现:src/game/skills/impl/dru/skill-247-summon-grizzly.ts -> src/game/skills/druid-summon.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [119] SKILLS_SrvDo119_DruidSummon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [druidbear],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


248. Fury (Skill ID: 248)

  • 基本元数据:职业 dru | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt37_Zeal_Fury_BloodLordFrenzy (SrvSt: 37) -> SkillAma.cpp:304
  • D2MOO 动作函数:SKILLS_SrvDo013_Fend_Zeal_Fury (SrvDo: 13) -> SkillAma.cpp:795
  • Web 映射实现:src/game/skills/impl/dru/skill-248-fury.ts -> src/game/skills/druid-shapeshift.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [37] SKILLS_SrvSt37_Zeal_Fury_BloodLordFrenzy 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [13] SKILLS_SrvDo013_Fend_Zeal_Fury 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[37]驱动模式与前置校验)

249. Armageddon (Skill ID: 249)

  • 基本元数据:职业 dru | 需求等级 30 | 施法延迟 150 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo124_Armageddon_Hurricane (SrvDo: 124) -> SkillDruid.cpp:957
  • Web 映射实现:src/game/skills/impl/dru/skill-249-armageddon.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [124] SKILLS_SrvDo124_Armageddon_Hurricane 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [armageddoncontrol, armageddoncontrol, armageddoncontrol],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [armageddon],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


250. Hurricane (Skill ID: 250)

  • 基本元数据:职业 dru | 需求等级 30 | 施法延迟 150 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo124_Armageddon_Hurricane (SrvDo: 124) -> SkillDruid.cpp:957
  • Web 映射实现:src/game/skills/impl/dru/skill-250-hurricane.ts -> src/game/skills/druid-elemental.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [124] SKILLS_SrvDo124_Armageddon_Hurricane 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [hurricane],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


第9章:Assassin (刺客) (IDs 251..280) 逐项深度对照

本章对 Assassin (刺客) 下辖全部 30 项技能进行逐项 1:1 源码审查:

251. Fire Trauma (Skill ID: 251)

  • 基本元数据:职业 ass | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ass/skill-251-fire-trauma.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [bomb in air],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


252. Claw Mastery (Skill ID: 252)

  • 基本元数据:职业 ass | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ass/skill-252-claw-mastery.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [clawmastery],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


253. Psychic Hammer (Skill ID: 253)

  • 基本元数据:职业 ass | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt22_PsychicHammer (SrvSt: 22) -> SkillAss.cpp:72
  • D2MOO 动作函数:SKILLS_SrvDo033_PsychicHammer (SrvDo: 33) -> SkillAss.cpp:101
  • Web 映射实现:src/game/skills/impl/ass/skill-253-psychic-hammer.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [22] SKILLS_SrvSt22_PsychicHammer 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [33] SKILLS_SrvDo033_PsychicHammer 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[22]驱动模式与前置校验)

254. Tiger Strike (Skill ID: 254)

  • 基本元数据:职业 ass | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt23_AssasinChargeStrikes (SrvSt: 23) -> SkillAss.cpp:160
  • D2MOO 动作函数:SKILLS_SrvDo034_TigerStrike_CobraStrike_RoyalStrike (SrvDo: 34) -> SkillAss.cpp:179
  • Web 映射实现:src/game/skills/impl/ass/skill-254-tiger-strike.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [23] SKILLS_SrvSt23_AssasinChargeStrikes 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [34] SKILLS_SrvDo034_TigerStrike_CobraStrike_RoyalStrike 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [progressive_damage],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)

255. Dragon Talon (Skill ID: 255)

  • 基本元数据:职业 ass | 需求等级 1 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt24_DragonTalon (SrvSt: 24) -> SkillAss.cpp:1121
  • D2MOO 动作函数:SKILLS_SrvDo042_DragonTalon (SrvDo: 42) -> SkillAss.cpp:1250
  • Web 映射实现:src/game/skills/impl/ass/skill-255-dragon-talon.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [24] SKILLS_SrvSt24_DragonTalon 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [42] SKILLS_SrvDo042_DragonTalon 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[24]驱动模式与前置校验)

256. Shock Field (Skill ID: 256)

  • 基本元数据:职业 ass | 需求等级 6 | 施法延迟 15 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo043_ShockField (SrvDo: 43) -> SkillAss.cpp:1370
  • Web 映射实现:src/game/skills/impl/ass/skill-256-shock-field.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [43] SKILLS_SrvDo043_ShockField 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [shock field in air],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


257. Blade Sentinel (Skill ID: 257)

  • 基本元数据:职业 ass | 需求等级 6 | 施法延迟 50 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo044_BladeSentinel (SrvDo: 44) -> SkillAss.cpp:1469
  • Web 映射实现:src/game/skills/impl/ass/skill-257-blade-sentinel.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [44] SKILLS_SrvDo044_BladeSentinel 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [blade creeper],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [bladecreeper],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


258. Quickness (Skill ID: 258)

  • 基本元数据:职业 ass | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/ass/skill-258-quickness.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [quickness],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


259. Fists of Fire (Skill ID: 259)

  • 基本元数据:职业 ass | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt23_AssasinChargeStrikes (SrvSt: 23) -> SkillAss.cpp:160
  • D2MOO 动作函数:SKILLS_SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce (SrvDo: 35) -> SkillAss.cpp:272
  • D2MOO 连击函数:段位1: SKILLS_SrvDo143_FistsOfFire_RoyalStrike_ProgressiveFn (143), 段位2: SKILLS_SrvDo038_FistsOfFire_BladesOfIce_ProgressiveFn2 (38), 段位3: SKILLS_SrvDo039_FistsOfFire_BladesOfIce_ProgressiveFn3 (39)
  • Web 映射实现:src/game/skills/impl/ass/skill-259-fists-of-fire.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [23] SKILLS_SrvSt23_AssasinChargeStrikes 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [35] SKILLS_SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。【连击系统】D2MOO由 SrvPrgFunc[143,38,39] 依聚气段数逐级释放;Web端由 MartialArtsTracker 判定生效。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [fistsoffirefirewall],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [progressive_fire],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)

260. Dragon Claw (Skill ID: 260)

  • 基本元数据:职业 ass | 需求等级 6 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt25_64_DragonClaw_MonFrenzy (SrvSt: 25) -> SkillMonst.cpp:2078
  • D2MOO 动作函数:SKILLS_SrvDo046_DragonClaw (SrvDo: 46) -> SkillAss.cpp:1544
  • Web 映射实现:src/game/skills/impl/ass/skill-260-dragon-claw.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [25] SKILLS_SrvSt25_64_DragonClaw_MonFrenzy 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [46] SKILLS_SrvDo046_DragonClaw 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[25]驱动模式与前置校验)

261. Charged Bolt Sentry (Skill ID: 261)

  • 基本元数据:职业 ass | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo045_Sentry (SrvDo: 45) -> SkillAss.cpp:1520
  • Web 映射实现:src/game/skills/impl/ass/skill-261-charged-bolt-sentry.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [45] SKILLS_SrvDo045_Sentry 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [chargeboltsentry],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


262. Wake of Fire Sentry (Skill ID: 262)

  • 基本元数据:职业 ass | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo045_Sentry (SrvDo: 45) -> SkillAss.cpp:1520
  • Web 映射实现:src/game/skills/impl/ass/skill-262-wake-of-fire-sentry.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [45] SKILLS_SrvDo045_Sentry 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [wakeofdestruction],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


263. Weapon Block (Skill ID: 263)

  • 基本元数据:职业 ass | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:nullptr (SrvDo: 0) -> None:0
  • Web 映射实现:src/game/skills/impl/ass/skill-263-weapon-block.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 1: Passive Skills
  • 对齐评级:Grade A —— 【严格对齐】核心数学公式、弹道/状态定义与 1.13c D2MOO 完全吻合。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [0] nullptr 触发动作帧处理。 Web端由 registry.ts 中的 Branch 1: Passive Skills 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [weaponblock],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


264. Cloak of Shadows (Skill ID: 264)

  • 基本元数据:职业 ass | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo047_CloakOfShadows (SrvDo: 47) -> SkillAss.cpp:1652
  • Web 映射实现:src/game/skills/impl/ass/skill-264-cloak-of-shadows.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [47] SKILLS_SrvDo047_CloakOfShadows 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [cloak_of_shadows],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


265. Cobra Strike (Skill ID: 265)

  • 基本元数据:职业 ass | 需求等级 12 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt23_AssasinChargeStrikes (SrvSt: 23) -> SkillAss.cpp:160
  • D2MOO 动作函数:SKILLS_SrvDo034_TigerStrike_CobraStrike_RoyalStrike (SrvDo: 34) -> SkillAss.cpp:179
  • Web 映射实现:src/game/skills/impl/ass/skill-265-cobra-strike.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [23] SKILLS_SrvSt23_AssasinChargeStrikes 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [34] SKILLS_SrvDo034_TigerStrike_CobraStrike_RoyalStrike 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [progressive_steal],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)

266. Blade Fury (Skill ID: 266)

  • 基本元数据:职业 ass | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt26_BladeFury (SrvSt: 26) -> SkillAss.cpp:1829
  • D2MOO 动作函数:SKILLS_SrvDo048_BladeFury (SrvDo: 48) -> SkillAss.cpp:1769
  • Web 映射实现:src/game/skills/impl/ass/skill-266-blade-fury.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 10: Missiles & Spells
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [26] SKILLS_SrvSt26_BladeFury 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [48] SKILLS_SrvDo048_BladeFury 触发动作帧处理。 Web端由 registry.ts 中的 Branch 10: Missiles & Spells 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [bladefragment1],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[26]驱动模式与前置校验)

267. Fade (Skill ID: 267)

  • 基本元数据:职业 ass | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/ass/skill-267-fade.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [fade],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


268. Shadow Warrior (Skill ID: 268)

  • 基本元数据:职业 ass | 需求等级 18 | 施法延迟 150 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo049_ShadowWarrior_Master (SrvDo: 49) -> SkillAss.cpp:1975
  • Web 映射实现:src/game/skills/impl/ass/skill-268-shadow-warrior.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [49] SKILLS_SrvDo049_ShadowWarrior_Master 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [shadowwarrior],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [shadowwarrior],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


269. Claws of Thunder (Skill ID: 269)

  • 基本元数据:职业 ass | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt23_AssasinChargeStrikes (SrvSt: 23) -> SkillAss.cpp:160
  • D2MOO 动作函数:SKILLS_SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce (SrvDo: 35) -> SkillAss.cpp:272
  • D2MOO 连击函数:段位2: SKILLS_SrvDo036_ClawsOfThunder_ProgressiveFn2 (36), 段位3: SKILLS_SrvDo037_ClawsOfThunder_ProgressiveFn3 (37)
  • Web 映射实现:src/game/skills/impl/ass/skill-269-claws-of-thunder.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [23] SKILLS_SrvSt23_AssasinChargeStrikes 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [35] SKILLS_SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。【连击系统】D2MOO由 SrvPrgFunc[36,37] 依聚气段数逐级释放;Web端由 MartialArtsTracker 判定生效。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [clawsofthundernova, clawsofthunderbolt],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [progressive_lightning],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)

270. Dragon Tail (Skill ID: 270)

  • 基本元数据:职业 ass | 需求等级 18 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt27_DragonTail (SrvSt: 27) -> SkillAss.cpp:2093
  • D2MOO 动作函数:SKILLS_SrvDo050_DragonTail (SrvDo: 50) -> SkillAss.cpp:2131
  • Web 映射实现:src/game/skills/impl/ass/skill-270-dragon-tail.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [27] SKILLS_SrvSt27_DragonTail 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [50] SKILLS_SrvDo050_DragonTail 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [dragontail missile],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[27]驱动模式与前置校验)

271. Lightning Sentry (Skill ID: 271)

  • 基本元数据:职业 ass | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo045_Sentry (SrvDo: 45) -> SkillAss.cpp:1520
  • Web 映射实现:src/game/skills/impl/ass/skill-271-lightning-sentry.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [45] SKILLS_SrvDo045_Sentry 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [lightningsentry],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


272. Inferno Sentry (Skill ID: 272)

  • 基本元数据:职业 ass | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo045_Sentry (SrvDo: 45) -> SkillAss.cpp:1520
  • Web 映射实现:src/game/skills/impl/ass/skill-272-inferno-sentry.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [45] SKILLS_SrvDo045_Sentry 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [infernosentry],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


273. Mind Blast (Skill ID: 273)

  • 基本元数据:职业 ass | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo051_MindBlast (SrvDo: 51) -> SkillAss.cpp:2314
  • Web 映射实现:src/game/skills/impl/ass/skill-273-mind-blast.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 6: Curses & Warcries
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [51] SKILLS_SrvDo051_MindBlast 触发动作帧处理。 Web端由 registry.ts 中的 Branch 6: Curses & Warcries 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


274. Blades of Ice (Skill ID: 274)

  • 基本元数据:职业 ass | 需求等级 24 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt23_AssasinChargeStrikes (SrvSt: 23) -> SkillAss.cpp:160
  • D2MOO 动作函数:SKILLS_SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce (SrvDo: 35) -> SkillAss.cpp:272
  • D2MOO 连击函数:段位2: SKILLS_SrvDo038_FistsOfFire_BladesOfIce_ProgressiveFn2 (38), 段位3: SKILLS_SrvDo039_FistsOfFire_BladesOfIce_ProgressiveFn3 (39)
  • Web 映射实现:src/game/skills/impl/ass/skill-274-blades-of-ice.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [23] SKILLS_SrvSt23_AssasinChargeStrikes 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [35] SKILLS_SrvDo035_FistsOfFire_ClawsOfThunder_BladesOfIce 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。【连击系统】D2MOO由 SrvPrgFunc[38,39] 依聚气段数逐级释放;Web端由 MartialArtsTracker 判定生效。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [bladesoficecubes],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [progressive_cold],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)

275. Dragon Flight (Skill ID: 275)

  • 基本元数据:职业 ass | 需求等级 24 | 施法延迟 25 帧
  • D2MOO 起手函数:SKILLS_SrvSt12_Telekinesis_DragonFlight (SrvSt: 12) -> SkillSor.cpp:190
  • D2MOO 动作函数:SKILLS_SrvDo052_DragonFlight (SrvDo: 52) -> SkillAss.cpp:2353
  • Web 映射实现:src/game/skills/impl/ass/skill-275-dragon-flight.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [12] SKILLS_SrvSt12_Telekinesis_DragonFlight 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [52] SKILLS_SrvDo052_DragonFlight 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[12]驱动模式与前置校验)

276. Death Sentry (Skill ID: 276)

  • 基本元数据:职业 ass | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo045_Sentry (SrvDo: 45) -> SkillAss.cpp:1520
  • Web 映射实现:src/game/skills/impl/ass/skill-276-death-sentry.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [45] SKILLS_SrvDo045_Sentry 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):无被动/光环专属常驻状态。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [deathsentry],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


277. Blade Shield (Skill ID: 277)

  • 基本元数据:职业 ass | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt28_BladeShield (SrvSt: 28) -> SkillAss.cpp:2426
  • D2MOO 动作函数:SKILLS_SrvDo054_BladeShield (SrvDo: 54) -> SkillAss.cpp:2556
  • Web 映射实现:src/game/skills/impl/ass/skill-277-blade-shield.ts -> src/game/skills/assassin-traps.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [28] SKILLS_SrvSt28_BladeShield 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [54] SKILLS_SrvDo054_BladeShield 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [blade shield attachment],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [bladeshield],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[28]驱动模式与前置校验)

278. Venom (Skill ID: 278)

  • 基本元数据:职业 ass | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo018_DefensiveBuff (SrvDo: 18) -> SkillSor.cpp:338
  • Web 映射实现:src/game/skills/impl/ass/skill-278-venom.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 7: Buffs & Armors
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [18] SKILLS_SrvDo018_DefensiveBuff 触发动作帧处理。 Web端由 registry.ts 中的 Branch 7: Buffs & Armors 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [venomclaws],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


279. Shadow Master (Skill ID: 279)

  • 基本元数据:职业 ass | 需求等级 30 | 施法延迟 150 帧
  • D2MOO 起手函数:nullptr (SrvSt: 0) -> None:0
  • D2MOO 动作函数:SKILLS_SrvDo049_ShadowWarrior_Master (SrvDo: 49) -> SkillAss.cpp:1975
  • Web 映射实现:src/game/skills/impl/ass/skill-279-shadow-master.ts -> src/game/skills/assassin-shadow.ts
  • 运行时分发:registry.ts -> Branch 3: Summons & Entities
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [0] nullptr 进行施法前置验证与武器限制检查。原版无额外起手验证(直通动作执行)。Web端与原版一致,直接调度。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [49] SKILLS_SrvDo049_ShadowWarrior_Master 触发动作帧处理。 Web端由 registry.ts 中的 Branch 3: Summons & Entities 统一分发执行。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):无直系投射物生成。
  5. Dim 5 (状态机与光环):关联状态机 [shadowwarrior],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):通过 SummonManager 生产宠物 [shadowmaster],遵循 PetType 上限与 AI 属性。

差异明细:无明显逻辑偏差,完全遵循 1.13c 真值规范。


280. Royal Strike (Skill ID: 280)

  • 基本元数据:职业 ass | 需求等级 30 | 施法延迟 0 帧
  • D2MOO 起手函数:SKILLS_SrvSt23_AssasinChargeStrikes (SrvSt: 23) -> SkillAss.cpp:160
  • D2MOO 动作函数:SKILLS_SrvDo034_TigerStrike_CobraStrike_RoyalStrike (SrvDo: 34) -> SkillAss.cpp:179
  • D2MOO 连击函数:段位1: SKILLS_SrvDo040_RoyalStrike_ProgressiveFn1 (40), 段位2: SKILLS_SrvDo143_FistsOfFire_RoyalStrike_ProgressiveFn (143), 段位3: SKILLS_SrvDo041_RoyalStrike_ProgressiveFn3 (41)
  • Web 映射实现:src/game/skills/impl/ass/skill-280-royal-strike.ts -> src/game/skills/assassin-martial-arts.ts
  • 运行时分发:registry.ts -> Branch 9: Pure Melee & Multi-hit
  • 对齐评级:Grade B —— 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

六维对比分析:

  1. Dim 1 (起手与条件):D2MOO使用 SrvSt [23] SKILLS_SrvSt23_AssasinChargeStrikes 进行施法前置验证与武器限制检查。Web端由战斗主循环与 SkillExecContext 判定条件,未显式解耦 SrvSt 帧时序。
  2. Dim 2 (触发与动作):D2MOO由 SrvDo [34] SKILLS_SrvDo034_TigerStrike_CobraStrike_RoyalStrike 触发动作帧处理。 Web端由 registry.ts 中的 Branch 9: Pure Melee & Multi-hit 统一分发执行。【连击系统】D2MOO由 SrvPrgFunc[40,143,41] 依聚气段数逐级释放;Web端由 MartialArtsTracker 判定生效。
  3. Dim 3 (数值与协同):严格遵循 1.13c 5-band 阶梯成长与 24.8 定点法力消耗。协同仅统计硬点投入(blvl)。
  4. Dim 4 (投射物与弹道):生成主投射物 [royalstrikemeteorcenter, royalstrikechainlightning, royalstrikechaosice],支持弹道碰撞与NextDelay。
  5. Dim 5 (状态机与光环):关联状态机 [progressive_other],受 StateBus 统一管控。
  6. Dim 6 (召唤物与特殊):不涉及宠物/次级实体生成。

差异明细与改进建议:

  • ⚠️ 起手与动作帧未解耦(D2MOO由SrvSt[23]驱动模式与前置校验)

第十章:通用玩家技能 (Universal Player Skills, 11 项) 对照

ID 技能名称 D2MOO SrvSt 起手函数 D2MOO SrvDo 执行函数 Web 对应模块 评级 机制说明
0 Attack [1] SrvSt01_Attack_LeftHandSwing [1] SrvDo001_Attack_LeftHandSwing skill-000-attack.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
1 Kick [2] SrvSt02_Kick [2] SrvDo002_Kick_PowerStrike_MonIceSpear_Impale_Bash_Stun_Concentrate_BearSmite_Vengeance_Berserk_FireClaws skill-001-kick.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
2 Throw [65] SrvSt65_Throw_LeftHandThrow [3] SrvDo003_Throw skill-002-throw.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
3 Unsummon [3] SrvSt03_Unsummon [4] SrvDo004_Unsummon skill-003-unsummon.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
4 Left Hand Throw [65] SrvSt65_Throw_LeftHandThrow [5] SrvDo005_LeftHandThrow skill-004-left-hand-throw.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
5 Left Hand Swing [1] SrvSt01_Attack_LeftHandSwing [1] SrvDo001_Attack_LeftHandSwing skill-005-left-hand-swing.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
217 Scroll of Identify nullptr (0) [113] SrvDo113_Scroll_Book skill-217-scroll-of-identify.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
218 Book of Identify nullptr (0) [113] SrvDo113_Scroll_Book skill-218-book-of-identify.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
219 Scroll of Townportal nullptr (0) [113] SrvDo113_Scroll_Book skill-219-scroll-of-townportal.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
220 Book of Townportal nullptr (0) [113] SrvDo113_Scroll_Book skill-220-book-of-townportal.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。
350 Delerium Change nullptr (0) [116] SrvDo116_Wearwolf_Wearbear skill-350-delerium-change.ts B 【功能对齐】核心战斗逻辑、数值与视觉效果完备,与原版存在网络帧/状态机解耦架构差异。

第十一章:系统性架构差异与特征提炼 (Systemic Discrepancies)

在对全部 210 项职业技能和 11 项通用技能的对照中,我们提炼出以下四大系统性架构差异:

1. 施法前置验证与动作帧解耦 (SrvSt vs SrvDo Decoupling)

  • D2MOO 原版:原版分为 SrvSt(施法启动帧,校验武器、目标距离、法力预扣除、弹药扣减)与 SrvDo(动作打击帧,实际结算伤害、发射子弹)。
  • diablo2-web:目前大部分技能在动作触发时通过 executeSkillCore113c 一并结算。建议后续将投掷、近战攻击的前置合法性检查收拢至统一的起手前置拦截器(如近期已修复的投掷武器空手挥动问题)。

2. 连续打击与旋风多段碰撞断点 (Continuous Multi-hit Kinematics)

  • D2MOO 原版:野蛮人旋风(Whirlwind)、白刃狂灵(Frenzy)、热诚(Zeal)、狂怒(Fury)在原版 C++ 中高度依赖武器 IAS、帧动画模式计数器和专门的状态锁。
  • diablo2-web:Web 端采用了基于时钟刻(Tick)与 NextDelay 的碰撞保护矩阵,数值结算对齐良好,但在极高极低攻击速度下的帧断点模拟上仍有微调空间。

3. 武学连击蓄力球与三段释放 (Martial Arts Charge-Up System)

  • D2MOO 原版:刺客 4 大元素武学使用 srvprgfunc1..3 严格对应 1/2/3 颗蓄力球,并在终结技命中时按层级依次释放。
  • diablo2-web:已在 assassin-martial-arts.ts 中构建完备的状态跟踪器,与 D2MOO 的功能语义高度契合。

4. 召唤物上限与独立 AI 行为树 (Pet Caps & Sub-skills)

  • D2MOO 原版:召唤物直接绑定 PetType.txt,死灵骷髅、魔像、德鲁伊灵气与刺客影子拥有完全独立的实体结构与子技能列表(IDs 281..338)。
  • diablo2-web:已通过 summon-manager.ts 和 PET_SUB_SKILL_IDS 完成 100% 规则隔离,确保跨职业召唤物互不顶替。

第十二章:分级优化建议与路线图 (Remediation Roadmap)

优先级 领域 / 技能 现状与改进方向 建议 Milestone
P1 施法前置快速失败体系 在 castSkill 前置拦截器中完全对齐 D2MOO SrvSt 武器类型与弹药检查,防止空手触发非法动作。 M31
P1 旋风 (Whirlwind) 碰撞与攻速断点 引入 D2MOO 0x6FCF6850 帧时钟断点,强化双持武器分别结算与 4 帧起手命中特性。 M31
P2 光环脉冲边界防重叠 优化多重神圣光环(Holy Fire/Shock/Freeze)在极小范围内的同帧伤害脉冲抖动。 M32
P2 刺客终结技双持判定 严格核对双爪双击(Dragon Claw)分别触发两个判定帧的准确时序。 M32