[(BG1, BG2) BUG] Wand of the heavens
The description of the wand of the heavens claims it causes 8d6 damage (save for half) as the spell flamestrike. The wand actually causes 12d4 damage (save for half) and uses visual effects different than the priest spell.
// Wand of heavens claims 8d6 damage; actually does 12d4; fix flame strike animation while we're hereedit: visuals weren't actually being fixed. They are now.
COPY_EXISTING ~wand11.itm~ ~override~
LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
opcode = "215" // display portrait icon
target = "2" // target preset target
timing = "1" // istant/perm
duration = "100" // duration
type = "3"
STR_VAR resource = spflast2
END
LAUNCH_PATCH_FUNCTION ~ADD_ITEM_EFFECT~ INT_VAR
opcode = "215" // display portrait icon
target = "2" // target preset target
timing = "1" // istant/perm
duration = "100" // duration
type = "3"
STR_VAR resource = spflsrin
END
READ_LONG 0x64 "abil_off"
READ_SHORT 0x68 "abil_num"
READ_LONG 0x6a "fx_off"
FOR (index = 0 ; index < abil_num ; index = index + 1) BEGIN
READ_BYTE ("%abil_off%" + (0x38 * "%index%")) "type"
PATCH_IF ("%type%" = 3) BEGIN // magical
READ_SHORT ("%abil_off%" + 0x1e + (0x38 * "%index%")) "abil_fx_num"
READ_SHORT ("%abil_off%" + 0x20 + (0x38 * "%index%")) "abil_fx_idx"
WRITE_SHORT ("%abil_off%" + 0x20 + (0x38 * "%index%")) ("%abil_fx_idx%")
WRITE_SHORT ("%abil_off%" + 0x2a + (0x38 * "%index%")) 1 // remove old flame strike projectile while we're here
FOR (index2 = 0 ; index2 < abil_fx_num ; index2 = index2 + 1) BEGIN
READ_SHORT ("%fx_off%" + (0x30 * ("%abil_fx_idx%" + "%index2%"))) "opcode"
PATCH_IF ("%opcode%" = 12) BEGIN // damage
WRITE_LONG ("%fx_off%" + 0x1c + (0x30 * ("%abil_fx_idx%" + "%index2%"))) 4 // number of dice; only half since damage is split for save
WRITE_LONG ("%fx_off%" + 0x20 + (0x30 * ("%abil_fx_idx%" + "%index2%"))) 6 // dice size
END
PATCH_IF ("%opcode%" = 215) BEGIN // visuals should always play
WRITE_BYTE ("%fx_off%" + 0x03 + (("%abil_fx_idx%" + "%index2%") * 0x30)) 0 // power
END ELSE BEGIN
WRITE_BYTE ("%fx_off%" + 0x03 + (("%abil_fx_idx%" + "%index2%") * 0x30)) 5 // power (damage)
END
END
END
END
BUT_ONLY_IF_IT_CHANGES
Post edited by Bhryaen on
2
Comments
note: DLTCEP doesn't like the permanent effects (2 animation effects) with duration.
Why would one want to fix it?
To lessen the noise in which you have to find the one or two cases where it is really a problem.
WAND11 now has 4d6(no save)/ 4d6(save v rods, etc).
Also confirmed what @Avenger_teambg noticed, but I assume from the OP that @CamDawg is on that one...