Fixing 140 Loop Bug Issue
#11

Ssorry posted the wrong thing this is the correct one tested myself:

 

0045EA4D 817D DC FF000000 CMP DWORD PTR SS:[EBP-24],8c

0045EA54 7E 11 JLE SHORT GameServ.0045EA67

 

Just change from 8C to whatever value you want.

#12

Ok Mine is this: 0045EA4D 817D DC FF000000 CMP DWORD PTR SS:[EBP-24],0FF before I edit it.

 

I am double clicking the expression and entering: CMP DWORD PTR SS:[EBP-24],8c

 

It is changing to: 0045EA4D 817D DC 8C000000 CMP DWORD PTR SS:[EBP-24],8C

 

But yours is: 0045EA4D 817D DC FF000000 CMP DWORD PTR SS:[EBP-24],8c and if you compare the 2 on your FF000000 mine is 8C000000 and when I try to change to: CMP DWORD PTR SS:[EBP-24],FF I receive an error saying "Unknown Identifier".

#13

aSH' date=' post: 11520"']Ok Mine is this: 0045EA4D 817D DC FF000000 CMP DWORD PTR SS:[EBP-24],0FF before I edit it. 

I am double clicking the expression and entering: CMP DWORD PTR SS:[EBP-24],8c

 

It is changing to: 0045EA4D 817D DC 8C000000 CMP DWORD PTR SS:[EBP-24],8C

 

But yours is: 0045EA4D 817D DC FF000000 CMP DWORD PTR SS:[EBP-24],8c and if you compare the 2 on your FF000000 mine is 8C000000 and when I try to change to: CMP DWORD PTR SS:[EBP-24],FF I receive an error saying "Unknown Identifier".

It was like yours but i copied the code after i modified it and change only on forum.

 

Put 0FF

#14
Ya but then that puts it back to: 0045EA4D 817D DC FF000000 CMP DWORD PTR SS:[EBP-24],0FF and it was already this before I edited it and it still dont work

#15
do you know the issue that I am getting? I can put /levelup and get the lvl its when gaining exp it resets it back to 0 straight after the kill.

#16

Modify from 8c to what ever you want(for game level).

004FC5B1 8178 20 8C0000>CMP DWORD PTR DS:[EAX+20],8C
004FC5B8 |. 0F8D 71020000 JGE PVP_Game.004FC82F

 

This is for LevelUP command(modify in whatever you want)

0045EA4D 817D DC 8C0000>CMP DWORD PTR SS:[EBP-24],8C
0045EA54 |. 7E 11 JLE SHORT PVP_Game.0045EA67

 

This 2 addresses i posted earlyer:

 

Exp loop fix:

004FC44F 8178 20 8C0000>CMP DWORD PTR DS:[EAX+20],8C
004FC456 |. 7F 18 JG SHORT PVP_Game.004FC470

#17
This ^ works, Thanks a lot.

#18

wonder why you waste time with ollydbg when you can do everything faster and easier with a simple hex editor

 

the lvl up loop bug is caused for a bug in the levelup function.

 

if( player.current_exp >= player.needed_exp )
{
if( player.level < max_level )
{
levelup:
player levelup
if( player.current_exp >= player.needed_exp )
goto levelup
}
}

 

i think the example above shows perfectly where the bug is

 

lets say you kill a mob and the above code gets execute. first it checks if you have the exp required to level up, then checks if your level is below the max level, if both are true, you will level up. the problem comes after leveling up, it checks again if you have the exp required to level up and if so, you will level up again but it does NOT check the max level. so if you gain two or more levelups at the same time, you can past over the max level and since the exp required to level up after the max level is always 0/0, you will get in an infinite levelup loop

 

to fix this bug, you only need to patch these two offsets

 

LevelUp loop bug fix (v2):

0x000FC7F6 B4
0x000FC80D 9D

#19
this is not a bug falo have the lvl cap of 140 you must change 3 tables in the gameserver from 140 of 165or what you would

#20

Modify from 8c to what ever you want(for game level).

004FC5B1 8178 20 8C0000>CMP DWORD PTR DS:[EAX+20],8C
004FC5B8 |. 0F8D 71020000 JGE PVP_Game.004FC82F

 

This is for LevelUP command(modify in whatever you want)

0045EA4D 817D DC 8C0000>CMP DWORD PTR SS:[EBP-24],8C
0045EA54 |. 7E 11 JLE SHORT PVP_Game.0045EA67

 

This 2 addresses i posted earlyer:

 

Exp loop fix:

004FC44F 8178 20 8C0000>CMP DWORD PTR DS:[EAX+20],8C
004FC456 |. 7F 18 JG SHORT PVP_Game.004FC470

 

 

What should I change? This one comes at level 165?



Forum Jump:


Users browsing this thread: 1 Guest(s)