Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

Neverwinter Nights: Enhanced Edition has been released! Visit nwn.beamdog.com to make an order. NWN:EE FAQ is available.
Soundtracks for BG:EE, SoD, BG2:EE, IWD:EE, PST:EE are now available in the Beamdog store.
Attention, new and old users! Please read the new rules of conduct for the forums, and we hope you enjoy your stay!

[(BG2, BGEE) Bug] Spell casting speed

CamDawgCamDawg Member, Developer Posts: 3,373
edited August 2012 in Fixed
Various spells have casting speeds different than the speed listed in their descriptions. To fix them:
// casting speed fixes
COPY_EXISTING ~sppr310.spl~ ~override~ // miscast magic
~sppr311.spl~ ~override~ // rigid thinking
~sppr403.spl~ ~override~ // free action
~sppr717.spl~ ~override~ // creeping doom
~spwi504.spl~ ~override~ // mon summoning iii
~spwi522.spl~ ~override~ // minor spell turning
READ_LONG 0x64 "abil_off"
READ_SHORT 0x68 "abil_num"
FOR (index = 0 ; index < abil_num ; index = index + 1) BEGIN
WRITE_SHORT ("%abil_off%" + 0x12 + (0x28 * "%index%")) 5
END
BUT_ONLY_IF_IT_CHANGES

// casting speed fixes
COPY_EXISTING ~sppr104.spl~ ~override~ // detect evil
~sppr214.spl~ ~override~ // duhm divine
~spwi211.spl~ ~override~ // melf's acid arrow
~spwi505.spl~ ~override~ // shadow door
~spwi511.spl~ ~override~ // protection from normal weapons
READ_LONG 0x64 "abil_off"
READ_SHORT 0x68 "abil_num"
FOR (index = 0 ; index < abil_num ; index = index + 1) BEGIN
WRITE_SHORT ("%abil_off%" + 0x12 + (0x28 * "%index%")) 2
END
BUT_ONLY_IF_IT_CHANGES

// casting speed fixes
COPY_EXISTING ~spin104.spl~ ~override~ // innate lmd
~spwi402.spl~ ~override~ // dimension door
~spwi408.spl~ ~override~ // stoneskin
READ_LONG 0x64 "abil_off"
READ_SHORT 0x68 "abil_num"
FOR (index = 0 ; index < abil_num ; index = index + 1) BEGIN
WRITE_SHORT ("%abil_off%" + 0x12 + (0x28 * "%index%")) 1
END
BUT_ONLY_IF_IT_CHANGES

// casting speed fixes
COPY_EXISTING ~spwi214.spl~ ~override~ // strength
READ_LONG 0x64 "abil_off"
READ_SHORT 0x68 "abil_num"
FOR (index = 0 ; index < abil_num ; index = index + 1) BEGIN
WRITE_SHORT ("%abil_off%" + 0x12 + (0x28 * "%index%")) 9
END
BUT_ONLY_IF_IT_CHANGES

Post edited by Bhryaen on
AndreaColomboIgneous

Comments

Sign In or Register to comment.