[(BG2) bug] Color spray
Color spray is supposed to have a range of visual (30 feet) but was set to 15. It was also imposing a save penalty and was not fanning out over 60 degrees, both contrary to its descript.
// color spray fixes - range is wrong, removes undocumented save penalty
COPY_EXISTING ~spin937.spl~ ~override~ // mephit version
~spwi105.spl~ ~override~ // regular mage version
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 // fix existing effects
WRITE_SHORT ("%abil_off%" + 0x0e + ("%index%" * 0x28)) 30 // corrects range
READ_SHORT ("%abil_off%" + 0x1e) "abil_fx_num"
READ_SHORT ("%abil_off%" + 0x20) "abil_fx_idx"
FOR ("index2" = 0; "%index2%" < "%abil_fx_num%"; "index2" = ("%index2%" + 1)) BEGIN
WRITE_LONG ("%fx_off%" + 0x28 + (0x30 * ("%abil_fx_idx%" + "%index2%"))) 0 // set save bonus to 0
END
END
BUT_ONLY_IF_IT_CHANGES
// color spray arc fix
COPY_EXISTING ~cspray.pro~ ~override~
WRITE_SHORT 0x206 256
BUT_ONLY_IF_IT_CHANGES
Post edited by Tanthalas on
0
Comments
Notifying @Nathan so he can test it earlier.
It is - 'Too high of level for Color Spray' - so, another string bug.
You intended to fix the Arc of color spray, but that is 0x224 not 0x206.
You didn't break it much, because 0x206 is the effect radius. 256 is tad small, though it should be the 426 i wrote about.
On the other hand, 60 (0x3c) was correctly set as arc at position 0x224. So the arc need not be touched.
Here is the field break down (as per IELISTER)
0200h AOE section
0200h AOE flags 00000800
0204h Trigger radius 00fa
0206h Effect radius 00fa
0208h Explosion sound
0210h Delay 0009
0212h Animation ID 0000
0214h Projectile ID 0000
0216h Explosion count 01
0217h Explosion type ff
0218h Explosion colour 0043
021ah Another projecti 004f
021ch VVC
0224h Cone width 003c
// color spray distance fix
COPY_EXISTING ~cspray.pro~ ~override~
WRITE_SHORT 0x206 426
BUT_ONLY_IF_IT_CHANGES
Potentially fixed - @Avenger_teambg's fix has been added