Total solutions of routing from moscovia to mosk_dun03, and routing back.
PS: These solutions is for
twRO. I am not sure it could apply on other servers.
You need a HEX editor for modifying the .dist files.
Solution No. 1
With 2 macros and modiying 1 .dist file (mosk_dun03.dist)
Check the tables/portals.txt file, it should have the following lines:
Code: Select all
moscovia 136 48 mosk_fild01 95 93
mosk_fild01 86 104 mosk_fild02 204 54 0 c c r2 c c c r1 c n
mosk_fild02 190 257 mosk_dun01 189 45
mosk_dun01 207 276 mosk_dun02 165 30 0 c c r0
mosk_dun02 268 117 mosk_dun03 32 135 0 c c r0
mosk_dun03 27 131 mosk_dun02 262 118 0 c c r0
mosk_dun02 168 28 mosk_dun01 201 269 0 c c r0
mosk_dun01 189 42 mosk_fild02 190 257
mosk_fild02 202 54 moscovia 140 54
With 2 macros:
one for moscovia to mosk_fild01
another for mosk_fild02 to moscovia
Code: Select all
#from moscovia to mosk_fild01
automacro MoscoviaToMoskFld1 {
location moscovia 136 48 140 46
run-once 1
call {
pause 2
do talk resp 0
pause 1
release all
}
}
#from mosk_fild02 to moscovia
automacro MoskFld2ToMoscovia {
location mosk_fild02 202 55 203 54
run-once 1
call {
pause 1
do talknpc 198 53 c r0 n
pause 1
release all
}
}
Modify the fields/mosk_dun03.dist file.
Because the (27, 131) of mosk_dun03 is a un-reachable position,
the openkore always calculate failed from mosk_dun03 to mosk_dun02
PS: the (27, 131) of mosk_dun03 is a NPC portal.
Then to modify the fields/mosk_dun03.dist file to make the (27, 131) of mosk_dun03 to be a reachable position.
Using the HEX editor, to change the bytes of the following from '00' to '01':
(27, 131), (28, 131), (29, 131), (30, 131)
There is a formula to calculate the byte offset of the .dist file.
The mosk_dun03 is a 300 x 300 map.
The byte offset of coordinate (x, y) is y * 300 + x + 8.
Such as,
the pos (27, 131) = 131 x 300 + 27 + 8 = 39335 = 0x99A7
the pos (28, 131) = 131 x 300 + 28 + 8 = 39336 = 0x99A8
the pos (29, 131) = 131 x 300 + 29 + 8 = 39337 = 0x99A9
the pos (30, 131) = 131 x 300 + 30 + 8 = 39338 = 0x99AA
-------------------------------------------------------------------------
Solution No. 2
With 1 macros and modiying 2 .dist files (mosk_dun03.dist, mosk_fild02.dist)
Check the tables/portals.txt file, it should have the following lines:
Code: Select all
moscovia 136 48 mosk_fild01 95 93
mosk_fild01 86 104 mosk_fild02 204 54 0 c c r2 c c c r1 c n
mosk_fild02 190 257 mosk_dun01 189 45
mosk_dun01 207 276 mosk_dun02 165 30 0 c c r0
mosk_dun02 268 117 mosk_dun03 32 135 0 c c r0
mosk_dun03 27 131 mosk_dun02 262 118 0 c c r0
mosk_dun02 168 28 mosk_dun01 201 269 0 c c r0
mosk_dun01 189 42 mosk_fild02 190 257
mosk_fild02 198 53 moscovia 140 54 0 c r0 n
With 1 macros:
for moscovia to mosk_fild01
Code: Select all
#from moscovia to mosk_fild01
automacro MoscoviaToMoskFld1 {
location moscovia 136 48 140 46
run-once 1
call {
pause 2
do talk resp 0
pause 1
release all
}
}
Modify the fields/mosk_dun03.dist file.
Because the (27, 131) of mosk_dun03 is a un-reachable position,
the openkore always calculate failed from mosk_dun03 to mosk_dun02
PS: the (27, 131) of mosk_dun03 is a NPC portal (stone).
Then to modify the fields/mosk_dun03.dist file to make the (27, 131) of mosk_dun03 to be a reachable position.
Using the HEX editor, to change the bytes of the following from '00' to '01':
(27, 131), (28, 131), (29, 131), (30, 131)
There is a formula to calculate the byte offset of the .dist file.
The mosk_dun03 is a 300 x 300 map.
The byte offset of coordinate (x, y) is y * 300 + x + 8.
Such as,
the pos (27, 131) = 131 x 300 + 27 + 8 = 39335 = 0x99A7
the pos (28, 131) = 131 x 300 + 28 + 8 = 39336 = 0x99A8
the pos (29, 131) = 131 x 300 + 29 + 8 = 39337 = 0x99A9
the pos (30, 131) = 131 x 300 + 30 + 8 = 39338 = 0x99AA
Modify the fields/mosk_fild02.dist file.
Because the (198, 53) of mosk_fild02 is a un-reachable position,
the openkore always calculate failed from mosk_fild02 to moscovia
PS: the (198, 53) of mosk_fild02 is a NPC portal (boat).
Then to modify the fields/mosk_fild02.dist file to make the (198, 53) of mosk_fild02 to be a reachable position.
Using the HEX editor, to change the bytes of the following from '00' to '01':
(198, 53), (198, 54), (199, 54), (200, 54), (201, 54)
There is a formula to calculate the byte offset of the .dist file.
The mosk_fild02 is a 300 x 300 map.
The byte offset of coordinate (x, y) is y * 300 + x + 8.
Such as,
the pos (198, 53) = 53 x 300 + 198 + 8 = 16106 = 0x3EEA
the pos (198, 54) = 54 x 300 + 198 + 8 = 16406 = 0x4016
the pos (199, 54) = 54 x 300 + 199 + 8 = 16407 = 0x4017
the pos (200, 54) = 54 x 300 + 200 + 8 = 16408 = 0x4018
the pos (201, 54) = 54 x 300 + 201 + 8 = 16409 = 0x4019
------------------------------------------------------------------------------------
Actually, I try to make the (136, 46) of moscovia to be a NPC portal (boat).
But the (136, 46) NPC portal (boat) of moscovia is a active talking NPC.
Another words, the bot could not do a "talk" or "talknpc" command to the (136, 46) NPC portal (boat) of moscovia.