dpslog: fix DAMAGE_SPLIT aura offset (0x178->0x16C for client Spell.dbc), fix SPELL_EXTRA_ATTACKS count, DEFLECT note, EXHAUSTED note

This commit is contained in:
MarcelineVQ
2026-03-17 16:02:39 -07:00
parent aadd467976
commit 76f0691540
2 changed files with 3 additions and 3 deletions
+1 -1
View File
@@ -79,7 +79,7 @@ local SUBEVENTS = {
{ "ENVIRONMENTAL (LAVA)", "ENVIRONMENTAL_DAMAGE", 4, "LAVA" },
{ "ENVIRONMENTAL (SLIME)", "ENVIRONMENTAL_DAMAGE", 4, "SLIME" },
{ "ENVIRONMENTAL (FIRE)", "ENVIRONMENTAL_DAMAGE", 4, "FIRE" },
{ "ENVIRONMENTAL (EXHAUSTED)", "ENVIRONMENTAL_DAMAGE", 4, "EXHAUSTED" },
{ "ENVIRONMENTAL (EXHAUSTED)", "ENVIRONMENTAL_DAMAGE", 4, "EXHAUSTED" }, -- twow does not implement fatigue damage
-- Misses — swing
{ "SWING_MISSED (MISS)", "SWING_MISSED", 4, "MISS" },
{ "SWING_MISSED (DODGE)", "SWING_MISSED", 4, "DODGE" },
+2 -2
View File
@@ -1390,9 +1390,9 @@ fn isEnergizeEffect(e: u32) bool {
/// SPELL_AURA_SPLIT_DAMAGE_PCT=81, SPLIT_DAMAGE_FLAT=153, SPLIT_DAMAGE_GROUP_PCT=193
fn isDamageSplitSpell(spell_id: u32) bool {
if (getSpellRecord(spell_id)) |rec| {
// EffectApplyAuraName[0..2] at offset 0x178, 0x17C, 0x180
// EffectApplyAuraName[0..2] at offset 0x16C, 0x170, 0x174 (client Spell.dbc layout)
inline for (0..3) |i| {
const aura = hook.readMem(u32, rec + 0x178 + @as(u32, @intCast(i)) * 4);
const aura = hook.readMem(u32, rec + 0x16C + @as(u32, @intCast(i)) * 4);
if (aura == 81 or aura == 153 or aura == 193) return true;
}
}