Code:
[ENABLE]
aobscan(_atele,0F B7 98 04 01 00 00 8B 45 00)
label(_ateleport)
registersymbol(_ateleport)
alloc(TeleHack,1024)
label(ChangeTele)
label(SkipChange)
label(ReturnTele)
_atele:
_ateleport:
jmp TeleHack
nop
nop
ReturnTele:
TeleHack:
movzx ebx,word ptr [eax]
cmp bx,0483 // check for Python Castle -> Tomb of the Black Dragon
je ChangeTele
cmp bx,4E20 // check for Braiken Castle -> Draco Desert
je ChangeTele
cmp bx,2B8C // check for North Morte -> Acquirai Ruins
je ChangeTele
cmp bx,048D // check for tomb of the black dragon -> Cursed Mazed
je ChangeTele
jmp SkipChange
ChangeTele:
mov word ptr [eax+00000106],0005
mov word ptr [eax+0000010C],0005
SkipChange:
movzx ebx,word ptr [eax+00000104]
jmp ReturnTele
[DISABLE]
dealloc(TeleHack)
_ateleport:
movzx ebx,word ptr [eax+00000104]
unregistersymbol(_ateleport)
NOTE: Extra instructions are needed for this script.
1. You MUST activate telehack BEFORE loading the map you want to telehack
2. See on the script how it says "Braiken Castle -> Draco Desert", that means that you have to go to 0:0 on Braiken
3. To go to 0:0 you need to do wall hack