← Back to DevelopmentAging & Mixing viewer.dll generatorProgramsClan filesInternet Information ServiceOllyDbg tutorialsMiscellaneousSkinsLinks / Files

party_level_difference

← Back to Miscellaneous
1. Context :

Here's the original code (this is server-sided) :

OllyDbg - Server side

0056BFA9      83F8 0A       CMP EAX,0A
0056BFAC  |.  0F8D 03010000 JGE 0056C0B5
[...]
0056C0B5  |>  8B0D B4266E00 MOV ECX,DWORD PTR DS:[6E26B4]            ; ASCII "Level difference is too big.                      "

The content of EAX is the level difference between the 2 characters (it's always positive, it's an absolute value)
As you can see, if that value is greater or equal (JGE) to 0A, it'll jump to "Level difference is too big."


2. Removing :

The trick to remove the party limit is to compare the level difference to 0. After, if the difference is strictly less (JL) than 0 (it can never happen), we jump to "Level difference is too big."

Which gives :

OllyDbg - Server side

0056BFA9  |.  83F8 00       CMP EAX,0
0056BFAC  |.  0F8C 03010000 JL 0056C0B5
[...]
0056C0B5  |>  8B0D B4266E00 MOV ECX,DWORD PTR DS:[6E26B4]            ; ASCII "Level difference is too big.                      "


3. Editing :

If you just wish to change the party level difference without removing it, you just need to edit the value in the comparison (CMP). Also remember that it's a strict comparison so if you want, for instance, a level difference of 15 (0F in hexadecimal) in your party, you need to input 16 (10 in hexadecimal)

Which gives (for a party level difference of 15):

OllyDbg - Server side

0056BFA9  |.  83F8 10       CMP EAX,10