//*************************************************************************************************************************** //inline patching tables - here we have SoA/ToB entries only //*************************************************************************************************************************** <<<<<<<< areas.tbl //New Areas Table SHORT_NAME CONTENT LONG_NAME FLAGS BAM_ANIM X_POS Y_POS NAME TOOLTIP LOAD_IM AR0700 AR0700 AR0700 3 22 1092 1351 @777002 @777002 N //Waukeen's Promenade AR0400 AR0400 AR0400 3 21 1195 1323 @777003 N N //Slums AR0300 AR0300 AR0300 3 25 1022 1274 @777005 N N //Docks AR0500 AR0500 AR0500 3 23 1206 1227 @777006 N N //Bridge AR0800 AR0800 AR0800 3 20 1282 1333 @777004 N N //Graveyard AR0900 AR0900 AR0900 3 24 1088 1112 @777007 N N //Temple AR1000 AR1000 AR1000 3 19 1224 1111 @777008 N N //Government AR1100 AR1100 AR1100 4 10 2650 1338 @777009 N N //Umar Hills AR1400 AR1400 AR1400 4 9 2580 1300 @777010 N N //Temple Ruins AR1300 AR1300 AR1300 4 12 2000 1324 @777011 N N //de'Arnise Hold AR1200 AR1200 AR1200 4 11 2936 1500 @777012 N N //Windspear Hills AR0020 AR0020 AR0020 3 26 1282 1242 @777013 N N //City Gates AR1404 AR1404 AR1404 4 9 2580 1300 @777010 N N //Temple Ruins AR1304 AR1304 AR1304 4 12 2000 1324 @777011 N N //de'Arnise Hold AR2000 AR2000 AR2000 4 13 2175 1590 N N N //Trademeet AR1900 AR1900 AR1900 4 14 2255 1640 @777015 N N //Druid Grove AR1700 AR1700 AR1700 4 17 1800 1655 @777016 N N //Small Teeth Pass AR2500 AR2500 AR2500 0 15 1520 1750 @777017 N N //Underdark Exit AR2600 AR2600 AR2600 6 17 1820 1760 N N N //Forest of Tethyr AR1800 AR1800 AR1800 6 16 1600 1580 @777019 N N //North Forest AR1600 AR1600 AR1600 6 5 650 1650 @777020 N N //Brynnlaw AR2100 AR2100 AR2100 0 7 900 1750 @777021 N N //Underdark AR1500 AR1500 AR1500 0 6 520 1550 @777022 N N //The Asylum AR2300 AR2300 AR2300 0 8 520 1750 @777023 N N //Underwater City AR2800 AR2800 AR2800 6 18 1920 1840 @777024 N N //Suldanessalar AR4000 AR4000 AR4000 6 91 1820 2050 @777034 @777034 N //Godsheads AR3000 AR3000 AR3000 5 90 1340 2070 @777025 @777025 N //Watcher's Keep AR5000 AR5000 AR5000 0 93 2510 2325 N N N //Saradush AR5500 AR5500 AR5500 4 99 2580 2550 @777027 @777027 N //Amkethran AR5203 AR5203 AR5203 4 92 2400 2330 @777028 @777028 N //Siege Camp AR5202 AR5202 AR5202 4 94 2500 2650 @777029 @777029 N //Forest of Mir - The Temple AR5200 AR5200 AR5200 4 95 2160 2570 @777030 @777030 N //Marching Mountains AR6300 AR6300 AR6300 4 10 1720 2750 @777031 @777031 N //The Oasis AR6400 AR6400 AR6400 4 98 2164 2470 @777035 @777035 N //Road to Marching Mountains AR6000 AR6000 AR6000 4 10 2270 2742 @777032 @777032 N //Abazigal's Lair AR6100 AR6100 AR6100 4 97 1960 2570 @777033 @777033 N //Sendai's Enclave >>>>>>>> <<<<<<<< links.tbl //Area Links Table SRC_AREA SRC_NWSE TARGET_ARE ENTRY_NAME TRV_TIME DEF_ENTRY ENC1 ENC2 ENC3 ENC4 ENC5 ENC_PROB AR0020 E AR1100 ExitSE 12 1 AR0043 AR0044 AR0045 AR0042 AR0043 25 AR0020 E AR1200 ExitW 16 1 AR0043 AR0044 AR0045 AR0042 AR0043 50 AR0020 E AR1300 ExitSE 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 100 AR0020 E AR1304 ExitSE 4 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR0020 E AR1400 ExitE 12 1 AR0043 AR0044 AR0045 AR0042 AR0043 67 AR0020 E AR1404 ExitE 12 1 AR0043 AR0044 AR0045 AR0042 AR0043 50 AR0020 S AR1700 CDExit 6 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR0020 S AR1800 CDExit 6 1 AR0045 AR0046 AR0042 AR0043 AR0044 15 AR0020 S AR1900 ExitW 10 4 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR0020 S AR2000 ExitNW 8 1 AR0043 AR0044 AR0045 AR0042 AR0043 100 AR0020 S AR2500 CDExit 8 1 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR0020 S AR3000 EXITSW 14 4 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR0020 W AR0300 ExitNE 0 4 AR0045 AR0046 AR0041 AR0045 AR0046 10 AR0020 W AR0400 ExitSE 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 10 AR0020 W AR0500 ExitNE 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 10 AR0020 W AR0900 ExitNW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 10 AR0300 N AR0020 EXITSW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 10 AR0300 N AR0400 ExitSE 0 4 AR0045 AR0046 AR0041 AR0045 AR0046 10 AR0300 N AR0500 EXITNE 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 101 AR0300 W AR0400 ExitSE 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 10 AR0300 W AR0900 EXITNW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 102 AR0300 S AR0020 EXITSW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 10 AR0300 S AR0500 EXITNE 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 10 AR0300 E AR0020 EXITSW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 10 AR0300 E AR0400 ExitSE 0 4 AR0046 AR0041 AR0045 AR0046 AR0041 101 AR0300 E AR1000 EXITN 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 10 AR0400 N AR0020 EXITSW 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 103 AR0400 N AR0300 EXITNE 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 10 AR0400 N AR0500 EXITNE 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 10 AR0400 N AR0700 EXITW 0 8 AR0046 AR0041 AR0045 AR0046 AR0041 10 AR0400 N AR0800 EXITS 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 100 AR0400 N AR0900 EXITNW 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0400 N AR1000 EXITN 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR0400 W AR0300 EXITN 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 101 AR0400 S AR0020 EXITSW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 102 AR0400 S AR0300 EXITN 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 102 AR0400 S AR0500 EXITNE 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR0400 S AR0700 EXITE 0 2 AR0041 AR0045 AR0046 AR0041 AR0045 5 AR0400 S AR0800 EXITS 0 2 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0400 S AR0900 EXITNW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 102 AR0400 S AR1000 EXITN 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0400 E AR0020 EXITSW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 102 AR0400 E AR0300 EXITN 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 115 AR0400 E AR0800 EXITS 0 4 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0400 E AR0900 EXITNW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 102 AR0400 E AR1000 EXITN 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR0500 N AR0020 EXITSW 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0500 N AR0900 EXITNW 0 4 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR0500 S AR0020 EXITSW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR0500 S AR0300 EXITN 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 10 AR0500 E AR0020 EXITSW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR0500 E AR0300 EXITN 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 10 AR0700 N AR0400 ExitSE 0 4 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0700 W AR0400 ExitSE 0 4 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR0700 S AR0400 ExitSE 0 4 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR0700 E AR0400 ExitSE 0 4 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR0800 W AR0400 ExitSE 0 4 AR0045 AR0046 AR0041 AR0045 AR0046 102 AR0800 S AR0020 EXITSW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 102 AR0800 S AR1000 ExitNE 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 103 AR0800 E AR0020 EXITSW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR0900 N AR0020 EXITSW 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0900 N AR0400 ExitSE 0 4 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR0900 N AR0700 ExitS 0 4 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR0900 S AR0020 EXITSW 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR0900 S AR0500 ExitNE 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR0900 E AR0020 EXITSW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR0900 E AR0300 ExitN 0 8 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR1000 N AR0020 EXITSW 0 1 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR1000 N AR0400 ExitSE 0 4 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR1000 N AR0800 EXITS 0 4 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR1000 W AR0300 EXITNE 0 2 AR0045 AR0046 AR0041 AR0045 AR0046 20 AR1000 S AR0020 EXITSW 0 1 AR0041 AR0045 AR0046 AR0041 AR0045 20 AR1000 E AR0020 EXITSW 0 1 AR0046 AR0041 AR0045 AR0046 AR0041 20 AR1100 W AR0020 ExitNE 12 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1100 S AR1200 ExitW 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1100 N AR1400 ExitW 2 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR1100 N AR1404 ExitE 2 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR1200 W AR0020 ExitNE 16 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1200 N AR1100 ExitSE 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1300 W AR0020 ExitNE 4 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1300 S AR1700 CDExit 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1300 S AR1800 CDExit 6 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR1300 S AR1900 ExitW 4 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR1300 S AR2000 ExitNW 4 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1304 W AR0020 ExitNE 4 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1304 S AR1700 CDExit 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1304 S AR1800 CDExit 6 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR1304 S AR1900 ExitW 4 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR1304 S AR2000 ExitNW 4 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1400 W AR0020 ExitNE 12 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1400 S AR1100 ExitNW 2 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1404 W AR0020 ExitNE 12 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1404 S AR1100 ExitNW 2 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1700 N AR0020 ExitNE 6 4 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1700 N AR1300 EXITSE 4 4 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1700 N AR1304 EXITSE 4 4 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR1700 S AR1800 CDExit 2 4 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR1700 S AR2000 EXITNW 2 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1700 S AR2500 CDExit 4 4 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1700 S AR2600 CDExit 4 4 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR1800 N AR0020 ExitNE 6 2 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1800 N AR1300 ExitSE 6 4 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1800 N AR1304 ExitSE 6 8 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR1800 N AR1700 CDExit 2 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR1800 E AR2000 ExitNW 2 2 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1800 S AR2500 CDExit 2 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1900 N AR0020 ExitNE 10 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR1900 N AR1300 ExitSE 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR1900 N AR1304 ExitSE 4 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR1900 W AR2000 ExitNW 2 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR1900 S AR2600 CDExit 2 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR2000 N AR0020 ExitNE 8 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR2000 N AR1300 ExitSE 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR2000 N AR1304 ExitSE 4 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR2000 N AR1700 CDExit 2 2 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR2000 W AR1800 CDExit 2 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR2000 E AR1900 ExitW 2 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR2000 S AR2600 CDExit 2 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR2500 N AR0020 ExitNE 8 4 AR2601 AR2601 AR2601 AR2601 AR2601 100 AR2500 N AR1700 CDExit 4 2 AR2601 AR2601 AR2601 AR2601 AR2601 100 AR2500 N AR1800 CDExit 2 1 AR2601 AR2601 AR2601 AR2601 AR2601 100 AR2500 E AR2600 CDExit 2 1 AR2601 AR2601 AR2601 AR2601 AR2601 100 AR2500 S AR3000 EXITSW 6 4 AR2601 AR2601 AR2601 AR2601 AR2601 100 AR2600 N AR0020 EXITNE 10 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR2600 N AR1700 CDExit 4 2 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR2600 N AR1900 EXITW 2 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR2600 N AR2000 ExitNW 2 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR2600 W AR2500 CDExit 2 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR2600 W AR3000 EXITSW 6 4 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR3000 N AR0020 ExitNE 14 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR3000 E AR2500 CDExit 6 4 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR3000 E AR2600 CDExit 6 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR3000 E AR5203 ExitNE 10 1 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR3000 S AR6000 EXITS 10 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR3000 S AR6300 EXITW 6 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR3000 S AR6400 EXITW 8 1 AR0045 AR0042 AR0043 AR0044 AR0045 15 AR5200 W AR3000 ExitSW 7 4 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR5200 S AR5202 ExitE 1 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5200 E AR5203 ExitNE 4 1 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5200 S AR5500 EXITE 6 2 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR5200 S AR6000 EXITS 2 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR5200 W AR6300 ExitE 4 1 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR5200 W AR6400 ExitE 2 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5202 E AR3000 ExitSW 6 4 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5202 E AR5200 ExitS 1 2 AR0042 AR0043 AR0044 AR0045 AR0042 15 AR5202 E AR5500 EXITE 4 1 AR0043 AR0044 AR0045 AR0042 AR0043 15 AR5202 S AR6000 EXITS 4 1 AR0044 AR0045 AR0042 AR0043 AR0044 15 AR5202 E AR6400 ExitE 2 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5203 W AR3000 ExitSW 2 4 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5203 S AR5500 ExitE 6 2 AR0042 AR0043 AR0044 AR0045 AR0042 5 AR5203 W AR6000 ExitE 8 2 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR5203 E AR6100 ExitS 10 4 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR5203 W AR6300 ExitW 3 8 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR5203 W AR6400 ExitW 2 8 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5500 W AR3000 ExitSW 7 4 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR5500 W AR5202 ExitE 4 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR5500 N AR5203 ExitNE 6 2 AR0042 AR0043 AR0044 AR0045 AR0042 5 AR5500 W AR6000 ExitE 3 2 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR5500 W AR6100 ExitS 2 4 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR5500 W AR6300 ExitE 2 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6000 E AR3000 ExitSW 9 4 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6000 N AR5200 ExitS 2 2 AR0042 AR0043 AR0044 AR0045 AR0042 5 AR6000 S AR5202 ExitE 4 2 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR6000 E AR5500 ExitE 3 2 AR0042 AR0043 AR0044 AR0045 AR0042 5 AR6000 E AR6100 ExitS 3 4 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6000 W AR6300 ExitE 4 2 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR6100 W AR3000 ExitSW 6 4 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6100 W AR5203 ExitNE 10 2 AR0042 AR0043 AR0044 AR0045 AR0042 5 AR6100 W AR5500 ExitE 2 2 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR6100 W AR6000 ExitE 3 2 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR6100 W AR6300 ExitE 2 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6300 W AR3000 EXITSW 6 4 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR6300 E AR5200 ExitS 4 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6300 S AR6000 ExitE 4 2 AR0042 AR0043 AR0044 AR0045 AR0042 5 AR6300 E AR5500 ExitS 2 4 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR6300 E AR6100 ExitS 2 4 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6300 E AR6400 ExitW 2 8 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR6400 W AR3000 EXITSW 8 4 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR6400 S AR5200 ExitS 2 2 AR0044 AR0045 AR0042 AR0043 AR0044 5 AR6400 S AR5202 ExitE 2 2 AR0043 AR0044 AR0045 AR0042 AR0043 5 AR6400 E AR5203 ExitNE 2 2 AR0045 AR0042 AR0043 AR0044 AR0045 5 AR6400 W AR6300 ExitE 2 2 AR0042 AR0043 AR0044 AR0045 AR0042 5 >>>>>>>> //*************************************************************************************************************************** // 1) ### in NAME and TOOLTIP will be replaced with SPACE character // 2) N for ENC1-5 and LOAD_IM means 'None' // 3) It's REQUIREMENT: new area name must be unique //*************************************************************************************************************************** //****************************************************************************************** <<<<<<<< worldmap.tmp //to backup possibly existing one, we're copying an empty placeholder //following that, full MOS will be removed from /override/ at uninstallation automatically >>>>>>>> //COPY ~worldmap.tmp~ ~override/worldmap.mos~ //****************************************************************************************** COPY_EXISTING ~worldmap.wmp~ ~override~ READ_LONG 0x0c map_offset WRITE_ASCII (map_offset) ~WORLDMAP~ #8 // WRITE_LONG (0x08+map_offset) 8000 // WRITE_LONG (0x0c+map_offset) 4600 WRITE_ASCII (0x30+map_offset) ~BPBGTMAP~ #8 READ_LONG (map_offset+0x20) entries_num READ_LONG (map_offset+0x24) entries_offset READ_LONG (map_offset+0x28) links_offset READ_LONG (map_offset+0x2c) links_num FOR (cnt=0; cnt<"%links_num%"; cnt=cnt+1) BEGIN DELETE_BYTES ("%links_num%") 0xD8 END FOR (cnt=0; cnt<"%entries_num%"; cnt=cnt+1) BEGIN DELETE_BYTES ("%entries_offset%") 0xF0 SET links_offset = links_offset - 0xF0 END WRITE_LONG (map_offset+0x20) 0 WRITE_LONG (map_offset+0x24) "entries_offset" WRITE_LONG (map_offset+0x2c) 0 WRITE_LONG (map_offset+0x28) "links_offset" ///////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////// // New Area table ///////////////////////////////////////////////////////////////// ACTION_IF FILE_EXISTS_IN_GAME ~AR6526.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_BGT.tbl~ //revised areas for old table removing END ACTION_IF FILE_EXISTS_IN_GAME ~AR4220.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_SoS.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~DD3300.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_TDD.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~AR3610.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_CtB.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~RR3100.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_RoT.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~DSC001.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_DSotSC.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~AR01PB.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_NTotSC.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~BH0100.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas_SoBH.tbl~ END ACTION_IF FILE_EXISTS ~Worldmap/map_mods_areas.tbl~ THEN BEGIN COPY ~Worldmap/map_mods_areas.tbl~ ~Worldmap/map_mods_areas.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ COPY - ~areas.tbl~ ~areas.tbl~ APPEND_FILE ~Worldmap/map_mods_areas.tbl~ END //complete table ///////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////// // New link table ///////////////////////////////////////////////////////////////// ACTION_IF FILE_EXISTS_IN_GAME ~AR6526.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_BGT.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~AR4220.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_SoS.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~DD3300.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_TDD.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~AR3610.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_CtB.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~RR3100.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_RoT.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~DSC001.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_DSotSC.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~AR01PB.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_NTotSC.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~BH0100.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~BP-BGT_Worldmap/TBL/new_map_mods_links_SoBH.tbl~ END ACTION_IF FILE_EXISTS_IN_GAME ~F_0115.ARE~ THEN BEGIN COPY ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ APPEND_FILE ~DrizztSaga/Worldmap/BGT/WM6_Links.tbl~ END ACTION_IF FILE_EXISTS ~BP-BGT_Worldmap/TBL/new_map_mods_links.tbl~ THEN BEGIN OUTER_SPRINT "_links" "" OUTER_SPRINT "#_links_num" "" OUTER_SPRINT "#_new_map_links" "" COPY - ~BP-BGT_Worldmap/TBL/new_map_mods_areas.tbl~ ~new_map_mods_areas.tbl~ APPEND_FILE ~areas.tbl~ COUNT_2DA_ROWS 12 area_name READ_2DA_ENTRIES_NOW ~_links~ 1 COPY - ~Worldmap/map_mods_links.tbl~ ~map_mods_links.tbl~ COUNT_2DA_ROWS 12 links_old READ_2DA_ENTRIES_NOW ~#_links_num~ 12 FOR (cnt=0;cnt0 ) BEGIN //applying current patch to links.tbl SET_2DA_ENTRY found 0 12 "%src_area%" SET_2DA_ENTRY found 1 12 "%src_nwse%" SET_2DA_ENTRY found 2 12 "%target_are%" SET_2DA_ENTRY found 3 12 "%entry_name%" SET_2DA_ENTRY found 4 12 "%trv_time%" SET_2DA_ENTRY found 5 12 "%def_entry%" SET_2DA_ENTRY found 6 12 "%enc1%" SET_2DA_ENTRY found 7 12 "%enc2%" SET_2DA_ENTRY found 8 12 "%enc3%" SET_2DA_ENTRY found 9 12 "%enc4%" SET_2DA_ENTRY found 10 12 "%enc5%" SET_2DA_ENTRY found 11 12 "%enc_prob%" SET found=0 // PATCH_PRINT "%src_area% -> "^"%target_are% : "^"%enc1%" END ELSE BEGIN //searching for the link in the main table FOR( cnt2=1; cnt2 if link's found PATCH_IF (found=0) BEGIN SET cnt = cnt + 1 //to skip next line if original link is not found END END // found>0 END //skipping header lines END //patch_links_num loop COPY - ~links.tbl~ ~override~ //reloading modified stuff READ_2DA_ENTRIES_NOW ~#_links~ 12 END //****************************************************************************************** // actual patching //****************************************************************************************** COPY_EXISTING ~WORLDMAP.WMP~ ~override~ READ_LONG 0x0c map_offset READ_LONG (map_offset+0x20) entries_num READ_LONG (map_offset+0x24) entries_offset READ_LONG (map_offset+0x28) links_offset READ_LONG (map_offset+0x2c) links_num //***************************************************************************** // adding new areas //***************************************************************************** FOR( cnt=1; cnt=entries_offset ) THEN BEGIN SET links_offset = links_offset+0xf0 WRITE_LONG (map_offset+0x28) links_offset END END ELSE BEGIN //we are patching EXISTING area **************************************************** SET existing_entry_offset = entries_offset + existing_area_index*0xf0 WRITE_EVALUATED_ASCII (existing_entry_offset+0) "%short_name%" #8 WRITE_EVALUATED_ASCII (existing_entry_offset+0x08) "%content%" #8 WRITE_EVALUATED_ASCII (existing_entry_offset+0x10) "%long_name%" #32 WRITE_LONG (existing_entry_offset+0x30) "%flags%" WRITE_LONG (existing_entry_offset+0x34) "%bam_anim%" WRITE_LONG (existing_entry_offset+0x38) "%x_pos%" WRITE_LONG (existing_entry_offset+0x3c) "%y_pos%" PATCH_IF (("%name_3%" STRING_COMPARE_CASE "N")=0) BEGIN WRITE_LONG (existing_entry_offset+0x40) 0xffffffff END ELSE BEGIN SAY_EVALUATED (existing_entry_offset+0x40) "%name_3%" END PATCH_IF (("%tip_3%" STRING_COMPARE_CASE "N")=0) BEGIN WRITE_LONG (existing_entry_offset+0x44) 0xffffffff END ELSE BEGIN SAY_EVALUATED (existing_entry_offset+0x44) "%tip_3%" END WRITE_EVALUATED_ASCII (existing_entry_offset+0x48) "%load_im%" #8 END END //headers skipping END //for all new areas //***************************************************************************** // adding new links //***************************************************************************** FOR( cnt=1; cnt0 AND dest_area_index0 ) BEGIN PATCH_IF (("%enc1%" STRING_COMPARE_CASE "N")=0) BEGIN SPRINT enc1 "" END PATCH_IF (("%enc2%" STRING_COMPARE_CASE "N")=0) BEGIN SPRINT enc2 "" END PATCH_IF (("%enc3%" STRING_COMPARE_CASE "N")=0) BEGIN SPRINT enc3 "" END PATCH_IF (("%enc4%" STRING_COMPARE_CASE "N")=0) BEGIN SPRINT enc4 "" END PATCH_IF (("%enc5%" STRING_COMPARE_CASE "N")=0) BEGIN SPRINT enc5 "" END PATCH_IF (("%entry_name%" STRING_COMPARE_CASE "N")=0) BEGIN SPRINT entry_name "" END READ_LONG (links_header_offset+0) src_area_links_index READ_LONG (links_header_offset+4) src_area_links_cnt PATCH_IF( src_area_links_index=0 ) BEGIN SET src_area_links_index = links_num //point at the very end of links list if it's a new area WRITE_LONG (links_header_offset+0) src_area_links_index END SET working_links_offset = links_offset + src_area_links_index*0xd8 INSERT_BYTES working_links_offset 0xd8 WRITE_LONG (working_links_offset+0) dest_area_index WRITE_EVALUATED_ASCII (working_links_offset+0x04) "%entry_name%" #32 WRITE_LONG (working_links_offset+0x24) trv_time WRITE_LONG (working_links_offset+0x28) def_entry WRITE_EVALUATED_ASCII (working_links_offset+0x2c) "%enc1%" #8 WRITE_EVALUATED_ASCII (working_links_offset+0x34) "%enc2%" #8 WRITE_EVALUATED_ASCII (working_links_offset+0x3c) "%enc3%" #8 WRITE_EVALUATED_ASCII (working_links_offset+0x44) "%enc4%" #8 WRITE_EVALUATED_ASCII (working_links_offset+0x4c) "%enc5%" #8 WRITE_LONG (working_links_offset+0x54) enc_prob WRITE_LONG (links_header_offset+4) src_area_links_cnt+1 //adjusting local links counter SET links_num = links_num + 1 WRITE_LONG (map_offset+0x2c) links_num //adjusting global links counter //***************************************************************** //4. we need to check all other area entries to adjust their links indexes //***************************************************************** FOR(link=0; linksrc_area_links_index ) BEGIN WRITE_LONG (entries_offset + link*0xf0 + 0x50) idxN+1 END PATCH_IF( idxW>src_area_links_index ) BEGIN WRITE_LONG (entries_offset + link*0xf0 + 0x58) idxW+1 END PATCH_IF( idxS>src_area_links_index ) BEGIN WRITE_LONG (entries_offset + link*0xf0 + 0x60) idxS+1 END PATCH_IF( idxE>src_area_links_index ) BEGIN WRITE_LONG (entries_offset + link*0xf0 + 0x68) idxE+1 END END END END END //headers skipping END //for all new links BUT_ONLY_IF_IT_CHANGES