Jump to content
Moopler

Question

Hi guys, it's possible to update kami script or are patched?

 

Spoiler

[ENABLE]
alloc(GetMobXY,256)
label(GetMobXYFalse)
label(GetMobXYTrue)
label(NextMob)

alloc(Kami,128)
label(KamiEnding)
label(TopLeftTeleport)

alloc(Teleport,128)
label(TeleportEnding)

GetMobXY:
mov esi,[023B10B8] //8B 0D ? ? ? ? ? E8 ? ? ? ? 8B ? 85 ? 74 ? 8B ? ? 8B ? ? 8D
test esi,esi
je GetMobXYFalse
mov edx,[esi+10]
test edx,edx
je GetMobXYFalse
mov esi,[esi+28]
test esi,esi
je GetMobXYFalse
mov edx,[esi+04]
test edx,edx
je GetMobXYFalse
mov edx,[edx+1B4] //83 ? ? ? ? ? ? 0F 84 ? ? ? ? 83 ? ? 39 ? ? ? ? ? 0F 8E ? ? ? ? 68 ? ? ? ? 8D ? ? ? E8 ? ? ? ? 68 ? ? ? ? 8D ? ? ? C7 ? ? ? ? ? ? ? E8
test edx,edx
je GetMobXYFalse
mov edx,[edx+24]
test edx,edx
je GetMobXYFalse
mov ebx,[edx+68]
or ebx,[edx+6C]
test ebx,ebx
jne GetMobXYTrue
mov esi,[esi-10]
test esi,esi
je GetMobXYFalse

NextMob:
mov edx,[esi+18]
test edx,edx
je GetMobXYFalse
mov edx,[edx+1B4] //83 ? ? ? ? ? ? 0F 84 ? ? ? ? 83 ? ? 39 ? ? ? ? ? 0F 8E ? ? ? ? 68 ? ? ? ? 8D ? ? ? E8 ? ? ? ? 68 ? ? ? ? 8D ? ? ? C7 ? ? ? ? ? ? ? E8
test edx,edx
je GetMobXYFalse
mov edx,[edx+24]
test edx,edx
je GetMobXYFalse
mov ebx,[edx+68]
or ebx,[edx+6C]
test ebx,ebx
jne GetMobXYTrue
mov esi,[esi+04]
test esi,esi
je GetMobXYFalse
jmp NextMob

GetMobXYFalse:
xor eax,eax
ret

GetMobXYTrue:
lea eax,[edx+60]
ret

Teleport:
mov esi,[023AC87C] //A1 ? ? ? ? 85 C0 75 ? 5F C3 8D 48
lea ecx,[esi+04]
call 017E1070 //Sixth starting from last: 8B ? ? ? ? ? 85 ? 74 ? 83 ? ? C3 33 ? C3 CC CC CC CC CC
test eax,eax
je TeleportEnding
push ebx
push edx
push 00
mov ecx,eax
call 01736980 //Second: 8B ? 24 ? 8B ? ? 8B ? ? ? 8D ? ? 8B ? ? ? ? ? ? FF ? 85 C0 ? ? ? ? ? ? ? ? ? E8

TeleportEnding:
ret

Kami:
cmp dword ptr [esp],017DEF0A //mov ecx,eax below: 8B ? ? FF ? 8B ? B8 ? ? ? ? F7 ? C1 ? ? 8B ? C1 ? ? 03 ? 83 ? ? 74 ? 81 ? ? ? ? ? 75 ? 80 ? ? ? ? ? ? 74
pushad
jne KamiEnding
mov eax,[023AC87C] //A1 ? ? ? ? 85 C0 75 ? 5F C3 8D 48
test eax,eax
je KamiEnding
call GetMobXY
test eax,eax
je TopLeftTeleport
mov ebx,[eax+4]
sub ebx,#0 //Y Coord
mov edx,[eax]
sub edx,#100 //X Coord
call Teleport
jmp KamiEnding

TopLeftTeleport:
mov edx,[023B10AC] //mov ecx,[?????] below: B8 0A 00 00 00 EB ? 3D
mov edx,[edx+0C] //Left Wall Offset
mov ebx,[023B10AC]
mov ebx,[ebx+10] //Top Wall Offset
call Teleport

KamiEnding:
popad
jmp 017FD3B0 //6A ? 68 ? ? ? ? 64 ? ? ? ? ? 50 83 ? ? 56 A1 ? ? ? ? 33 ? 50 8D ? ? ? 64 ? ? ? ? ? 8B ? ? ? ? ? 85 ? 74 ? 8D ? ? ? 50

021089D8: //AddressOne 4-Byte Scan Exact Value
dd Kami

[DISABLE]
021089D8:
dd 017FD3B0

dealloc(GetMobXY)
dealloc(Kami)
dealloc(Teleport)

 

Share this post


Link to post

3 answers to this question

Recommended Posts

  • 0

if u can find unknown values like mob x and mob y and userlocal u can write one from scratch

Edited by koreanrice

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×