• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

[Guide] Disabling the delete button (game-side)

Moderator
Staff member
Moderator
Joined
Feb 22, 2008
Messages
2,404
Reaction score
724
Now i'll teach how to disable the delete button in-game, to prevent the user to delete his char in-game.Avoiding, bugging the .dat file for those who use the XPT Manager. I made this in EvoPT at least 5 months ago,now i will release.

There are two ways to do it:

1st way - "Nopping"


1st Step - Finding the string Bt_delet.tga:
SheenBR - [Guide] Disabling the delete button (game-side) - RaGEZONE Forums

2nd Step - Disabling it:
SheenBR - [Guide] Disabling the delete button (game-side) - RaGEZONE Forums

You can find this code:
005139C8 |. 68 202E5E00 PUSH game_php.005E2E20 ; ASCII "StartImage\Login\CharSelect\Bt_exit.tga"
005139CD |. 8BCF MOV ECX,EDI
005139CF |. E8 9CD60700 CALL game_php.00591070
005139D4 |. 6A 20 PUSH 20
005139D6 |. 6A 6C PUSH 6C
005139D8 |. 6A 00 PUSH 0
005139DA |. 6A 0F PUSH 0F
005139DC |. 8BCF MOV ECX,EDI
005139DE |. E8 6DD60700 CALL game_php.00591050
005139E3 |. 6A 20 PUSH 20
005139E5 |. 68 80000000 PUSH 80
005139EA |. 8DBE 5C020000 LEA EDI,DWORD PTR DS:[ESI+25C]
005139F0 |. 68 F42D5E00 PUSH game_php.005E2DF4 ; ASCII "StartImage\Login\CharSelect\Bt_delet.tga"
005139F5 |. 8BCF MOV ECX,EDI
005139F7 |. E8 74D60700 CALL game_php.00591070

005139FC |. 6A 20 PUSH 20
005139FE |. 6A 6C PUSH 6C
00513A00 |. 6A 00 PUSH 0
00513A02 |. 6A 0A PUSH 0A
00513A04 |. 8BCF MOV ECX,EDI
00513A06 |. E8 45D60700 CALL game_php.00591050
00513A0B |. 6A 01 PUSH 1
00513A0D |. 6A 00 PUSH 0
00513A0F |. 6A 00 PUSH 0
00513A11 |. 6A 00 PUSH 0
00513A13 |. 6A 00 PUSH 0
00513A15 |. 68 CC2D5E00 PUSH game_php.005E2DCC ; ASCII "StartImage\Login\UserCharacterInfo.tga"

3rd Step - Disabling the button

SheenBR - [Guide] Disabling the delete button (game-side) - RaGEZONE Forums


It should be like:

005139C8 |. 68 202E5E00 PUSH game_php.005E2E20 ; ASCII "StartImage\Login\CharSelect\Bt_exit.tga"
005139CD |. 8BCF MOV ECX,EDI
005139CF |. E8 9CD60700 CALL game_php.00591070
005139D4 |. 90 NOP
005139D6 |. 90 NOP
005139D8 |. 90 NOP
005139DA |. 90 NOP
005139DC |. 90 NOP
005139DE |. 90 NOP
005139E3 |. 90 NOP
005139E5 |. 90 NOP
005139EA |. 90 NOP
005139F0 |. 90 NOP
005139F5 |. 90 NOP
005139F7 |. 90 NOP

005139FC |. 6A 20 PUSH 20
005139FE |. 6A 6C PUSH 6C
00513A00 |. 6A 00 PUSH 0
00513A02 |. 6A 0A PUSH 0A
00513A04 |. 8BCF MOV ECX,EDI
00513A06 |. E8 45D60700 CALL game_php.00591050
00513A0B |. 6A 01 PUSH 1
00513A0D |. 6A 00 PUSH 0
00513A0F |. 6A 00 PUSH 0
00513A11 |. 6A 00 PUSH 0
00513A13 |. 6A 00 PUSH 0
00513A15 |. 68 CC2D5E00 PUSH game_php.005E2DCC ; ASCII "StartImage\Login\UserCharacterInfo.tga"
Done, the button is disabled.


2nd Way - By JUMP



Do it like this:
005139D4 |. 6A 20 PUSH 20
005139D6 |. 6A 6C PUSH 6C
005139D8 |. 6A 00 PUSH 0
005139DA |. 6A 0F PUSH 0F
Fill with nops the code above.
Change
005139DC |. 8BCF MOV ECX,EDI
To
005139DC |. 8BCF JMP 005139FC

It should by like:

005139D4 |. 90 NOP
005139D6 |. 90 NOP
005139D8 |. 90 NOP
005139DA |. 90 NOP
005139DC |. 8BCF JMP 005139FC
005139D4 |. 90 NOP
005139D6 |. 90 NOP
005139D8 |. 90 NOP
005139DA |. 90 NOP
 
Last edited by a moderator:
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
Re: Disabling the delete button (game-side)

OMG!!! I would need to create a new account every 5 days the way I get through characters! XD

I presume XPT Admin lets users delete their character from the web portal. But why does in-game delete bug .dat files? If I delete a character in game, the characters .dat file is moved to the "deleted" folder and the SQL is updated to no longer include that character... what does the admin panel take issue with?

Also; thanks for sharing what seems a good "work around" solution.
 
Moderator
Staff member
Moderator
Joined
Feb 22, 2008
Messages
2,404
Reaction score
724
Re: Disabling the delete button (game-side)

Sorry for my bad english, i'm BR and i hope you can understand the tutorial. Well, i do not know why deleting the char in-game bugs the .dat, but is better safe than sorry (i used translate on this ^^ )
 
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
Re: Disabling the delete button (game-side)

I do understand quite well... so your translator is working well. I guess you have good Portuguese grammar and spell check. :wink:

Just an idea... wouldn't the following be less stressful on the CPU (a little)
Code:
005139C8 |. 68 202E5E00 PUSH game.005E2E20 ; ASCII "StartImage\Login\CharSelect\Bt_exit.tga"
005139CD |. MOV ECX,EDI
005139CF |. CALL game.00591070
005139D4 |. JMP SHORT 005139FC
005139E3 |. NOP
005139E5 |. NOP
005139EA |. NOP
005139F0 |. NOP
005139F5 |. NOP
005139F7 |. NOP
005139FC |> PUSH 20
005139FE |. PUSH 6C
00513A00 |. PUSH 0
00513A02 |. PUSH 0A
00513A04 |. MOV ECX,EDI
00513A06 |. CALL game.00591050
00513A0B |. PUSH 1
00513A0D |. PUSH 0
00513A0F |. PUSH 0
00513A11 |. PUSH 0
00513A13 |. PUSH 0
00513A15 |. PUSH game_php.005E2DCC ; ASCII "StartImage\Login\UserCharacterInfo.tga"
 
Last edited:
Custom Title Activated
Loyal Member
Joined
May 26, 2007
Messages
5,545
Reaction score
1,315
I haven't tried it, as I wouldn't need, or want that button disabling. XD It just looked like it would stop the CPU executing a number of pointless NOPs. Maybe there is a thread entry point where you set your JMP that would make your method more practical... it just doesn't look like it from Ollies listing. (Olly isn't perfect :wink:)
 
Back
Top