Jump to content



Recommended Posts

The ice mephit fighting the shadow thief in AR0603 is assigned the clone's script (from the ARE) instead of WaitPC2.


We might think about extending NPCLevel out to Level 40. If the PC is above Level 24 the first time an NPC joins in SoA, the lowest-level CRE joins the party instead of the highest-level CRE.


Arnolinus (Shop02) is using "AR0700" for his variable instead of the area he's in. I think it ends up working, but it's a bit cheap.


Arnolinus (Shop02) and Ribald (Ribald) sell 6 +1 large shields. The first five of these should actually be normal large shields (Shld05), which they currently don't sell at all.

Link to comment

Fixed, moving to archives.


// NPCs joining level 25+ PCs in SoA would be at their minimum level, not max
COPY_EXISTING ~npclevel.2da~ ~override~
 REPLACE_TEXTUALLY ~^\([A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+[%tab% ]+[A-Za-z0-9*]+\)\([%tab% ]+[A-Za-z0-9*]+\)~
~\1\2\2\2\2\2\2\2\2\2\2\2\2\2\2\2\2\2~ // extends individual lines
 REPLACE_TEXTUALLY ~\(2[%tab% ]+3[%tab% ]+4[%tab% ]+5[%tab% ]+6[%tab% ]+7[%tab% ]+8[%tab% ]+9[%tab% ]+10[%tab% ]+11[%tab% ]+12[%tab% ]+13[%tab% ]+14[%tab% ]+15[%tab% ]+16[%tab% ]+17[%tab% ]+18[%tab% ]+19[%tab% ]+20[%tab% ]+21[%tab% ]+22[%tab% ]+23\)\([%tab% ]+\)24~
~\1\224\225\226\227\228\229\230\231\232\233\234\235\236\237\238\239\240~ // extends header row
 UNLESS ~25[%tab% ]+26[%tab% ]+27[%tab% ]+28[%tab% ]+29[%tab% ]+30[%tab% ]+31[%tab% ]+32[%tab% ]+33[%tab% ]+34[%tab% ]+35[%tab% ]+36[%tab% ]+37[%tab% ]+38[%tab% ]+39[%tab% ]+40~

// ice mephit has wrong script
COPY_EXISTING ~ar0603.are~ ~override~
 READ_LONG  0x54 "actor_off"
 READ_SHORT 0x58 "actor_num"
 FOR (index = 0; index < actor_num; index = index + 1) BEGIN
READ_ASCII ("%actor_off%" + 0x80 + ("%index%" * 0x110)) "cre_file"
PATCH_IF ("%cre_file%" STRING_COMPARE_CASE "mepice01" = 0) BEGIN // ice mephit
  WRITE_ASCII ("%actor_off%" + 0x50 + ("%index%" * 0x110)) ~waitpc2~ #8 // override script
  SET "index" = "%actor_num%" // kills loop

// stores with dupe large shield +1 entries; should be normal large shields
COPY_EXISTING ~ribald.sto~ ~override~
		  ~shop02.sto~ ~override~
 READ_LONG 0x34 "itm_off" ELSE 0
 READ_LONG 0x38 "itm_num" ELSE 0
 FOR (index = 0; index < itm_num; index = index + 1) BEGIN
READ_ASCII ("%itm_off%" +		(0x1c * "%index%")) "item"
READ_BYTE  ("%itm_off%" + 0x14 + (0x1c * "%index%")) "quantity"
PATCH_IF (("%item%" STRING_COMPARE_CASE "shld06" = 0) AND ("%quantity%" = 5)) BEGIN
  WRITE_ASCII ("%itm_off%" +		(0x1c * "%index%")) ~shld05~ #8


.d code

// arnolius is using wrong area reference in his variables
REPLACE_TRIGGER_TEXT ~shop02~ ~,"AR0700",~ ~,"AR0706",~
REPLACE_ACTION_TEXT  ~shop02~ ~,"AR0700",~ ~,"AR0706",~

Link to comment


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

  • Create New...