aVENGER_(RR) Posted May 2, 2009 Share Posted May 2, 2009 The piece of tp2 code which fixes the Barkskin spell contains a small typo which currently causes the AC bonus to increment at wrong levels. This also results in the inability to obtain AC 1 at level 20. In order to correct this, this line: WRITE_LONG ("%fx_off%" + 0x04 + (("%abil_fx_idx%" + "%index2%") * 0x30)) (6 - (("%min_level%" - 1) / 4)) // ((6 - (caster level/4), per descript should read: WRITE_LONG ("%fx_off%" + 0x04 + (("%abil_fx_idx%" + "%index2%") * 0x30)) (6 - ("%min_level%" / 4)) // ((6 - (caster level/4), per descript And here's the entire block with the fix included: // barkskin AC bonus incorrect at higher levels COPY_EXISTING ~sppr202.spl~ ~override~ 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_SHORT ("%abil_off%" + 0x10 + (0x28 * "%index%")) "min_level" READ_SHORT ("%abil_off%" + 0x1e + (0x28 * "%index%")) "abil_fx_num" READ_SHORT ("%abil_off%" + 0x20 + (0x28 * "%index%")) "abil_fx_idx" FOR (index2 = 0; index2 < abil_fx_num; index2 = index2 + 1) BEGIN READ_SHORT ("%fx_off%" + (("%abil_fx_idx%" + "%index2%") * 0x30)) "opcode" PATCH_IF ("%opcode%" = 0) BEGIN // ac bonus WRITE_LONG ("%fx_off%" + 0x04 + (("%abil_fx_idx%" + "%index2%") * 0x30)) (6 - ("%min_level%" / 4)) // ((6 - (caster level/4), per descript END END END BUT_ONLY_IF_IT_CHANGES Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.