Jump to content

Fixpack makes Moon Dog Sight affect the party


Recommended Posts

At the moment, the Improved Spell Animations component of the fixpack makes Moon Dog Sight (SPIN696.SPL) into an area effect spell by making it use CDDETEVL.PRO instead of BIGNAREA.PRO which it had in the unmodded game. In effect, this makes the party susceptible to the illusion removal effect of this ability which should not be the case. Commenting this spell out of the relevant batch seams like the most reasonable solution:

 

COPY_EXISTING ~spcl212.spl~ ~override~ // detect evil (paladin innate)
		  ~spin120.spl~ ~override~ // detect evil (bhaalspawn innate)
//			~spin696.spl~ ~override~ // moon dog sight
		  ~sppr104.spl~ ~override~ // detect evil (cleric spell)
		  ~spwi202.spl~ ~override~ // detect evil (mage spell)
 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 // loop through abilities
WRITE_BYTE  ("%abil_off%" + 0x0e + ("%index%" * 0x28)) 5			// target: caster
WRITE_SHORT ("%abil_off%" + 0x26 + ("%index%" * 0x28)) "%CDDETEVL%" // custom projectile
READ_SHORT  ("%abil_off%" + 0x1e + ("%index%" * 0x28)) "abil_fx_num"
READ_SHORT  ("%abil_off%" + 0x20 + ("%index%" * 0x28)) "abil_fx_idx"
FOR (index2 = 0; index2 < abil_fx_num; index2 = index2 + 1) BEGIN // looks for effects for abilities
  READ_SHORT  ("%fx_off%" +		(("%abil_fx_idx%" + "%index2%") * 0x30)) "opcode"
  PATCH_IF ("%opcode%" = 115) BEGIN // detect alignment
	WRITE_SHORT ("%fx_off%" +		(("%abil_fx_idx%" + "%index2%") * 0x30)) 146		// opcode: cast spell
	WRITE_BYTE  ("%fx_off%" + 0x02 + (("%abil_fx_idx%" + "%index2%") * 0x30)) 2		  // target: preset target
	WRITE_BYTE  ("%fx_off%" + 0x03 + (("%abil_fx_idx%" + "%index2%") * 0x30)) 0		  // power
	WRITE_LONG  ("%fx_off%" + 0x04 + (("%abil_fx_idx%" + "%index2%") * 0x30)) 1		  // cast at level
	WRITE_LONG  ("%fx_off%" + 0x08 + (("%abil_fx_idx%" + "%index2%") * 0x30)) 1		  // cast instantly: yes
	WRITE_ASCII ("%fx_off%" + 0x14 + (("%abil_fx_idx%" + "%index2%") * 0x30)) ~cddetevl~ // spell to cast
  END
END
 END
 BUT_ONLY_IF_IT_CHANGES

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...