GameServer 1.00.90 (Fixes) (28-07 UPDATE)
The other thread is full of useless posts so i decided to start this one , if mods does not agree please delete it.
The point of this thread is to post just fixes so newbies , coders and everyone can build a bugless muserver.
Please post here only fixes and do not ask for help
And if someone is interested in adding fixes over a GS use this GS/GSCS of Shatter and i will update the thread with the latest fixes added once you post.
Changelog :
Quote:
M:\ Drive
ServerInfo.dat
Crash Dump File
Destroy GIocp
Socket Serial
Invalid Socket
PK Bug
Monster AI Element Error
Memory 0x00000 Error
Party Zen Bug - General
Party Zen Bug - Devil Square
Arena PvP
Golden Rabbit
Excellent Ancient
Jewel of Harmony Ancient
Excellent Socket
Blood Castle PK Enter
Devil Square PK Enter
Chaos Castle PK Enter
Illusion Temple PK Enter
Blood Castle Master Enter
Devil Square Master Enter
GameMaster Client Crash
DevilSquareEventConnect = 1
Summoner Berserker 65k+ Damage
Raklion Boss Spawn Time 24Hours
Drop w/ +Luck
Golden Invasion Message
Selupan Luck Drop
40lvl Warrior Ring
Potion Bug
//22-07-2010 (UPDATE 1 GS/GSCS)
CRASH BUG FIXED
//28-07-2010 (UPDATE 2 GS/GSCS)
PK Party Move
PK Party Kill
AntiHack Messages
100% Soul Barrier
DLL Hooking Guide (Thanks to mauka)
Code:
PUSH nameOfDLL
CALL LoadLibrary
OR EAX,EAX
JE Exit Process // if dll not exist then we exit
PUSH ExportFunctionNameFromDLL
PUSH EAX
CALL GetProcAddress
CALL EAX // get dll`s functions errors or whatever
CMP EAX,0 // check errors or whateva from dlls functions result
JZ EntryPoint // if all good we jump to OEP
Download links :
GameServer (Update 2)
GameServerCS (Update 2)
Re: GameServer 1.00.90 (Fixes)
Summoner Berserker 65k+ Damage how to fix this??
Re: GameServer 1.00.90 (Fixes)
If you find this thread pointless then i'm sorry , i thought it would be good if people would post only fixes
Re: GameServer 1.00.90 (Fixes)
Denied,cool job!post new fixes and new features)
Re: GameServer 1.00.90 (Fixes)
this GS not stable :(
http://forum.ragezone.com/f508/games...ml#post5790138
-
1) my commonserver.cfg -> wrong, but i don't think that wrong config coult crush GS, but now i checking it ...
2)this GS not stable :(
Re: GameServer 1.00.90 (Fixes)
Quote:
Originally Posted by
Tal3nT
Summoner Berserker 65k+ Damage how to fix this??
PHP Code:
//Fix Summoner Berserker 65k+ Damage
BYTE FixBerserker[] = { 0x68, 0xBC, 0x02, 0x00, 0x00 };
memcpy((int*)0x004E5B45,FixBerserker,sizeof(FixBerserker));
Credits goes to xom1b
Later edit:
Yes! This thread is full of useless shits.
We need codes NOT EDITED GS-es!
Re: GameServer 1.00.90 (Fixes)
Quote:
Originally Posted by
Bason4ik
Denied,cool job!post new fixes and new features)
new fixes? lol?
here will have only copy > paste from the original thread. :sleep:
Re: GameServer 1.00.90 (Fixes)
My apologies , thought i would do something good but i screwed it up
Mods please close this thread
Thanks
Re: GameServer 1.00.90 (Fixes)
nice thread, mods don't close ... we just need Shatter to aprove or not this thread!
Re: GameServer 1.00.90 (Fixes)
fine by me, but im posting the updates only in .90 dev thread so denied, you do the updating ^^
Re: GameServer 1.00.90 (Fixes)
Update 1 - crash bug fixed (GS/GSCS)
Re: GameServer 1.00.90 (Fixes)
i would appreciate a link with the rest of the server files for this version of gs & gscs. how about a client & main link (if necessary) too please.
thx in advance.
Re: GameServer 1.00.90 (Fixes)
If someone will start tests on these files please report any bugs.
Re: GameServer 1.00.90 (Fixes)
Code:
#define GS_FIX28_1 (0x0042F2F4) // Support +28
#define GS_FIX28_2 (0x00501F86+3) // Support +28
#define GS_FIX28_3 (0x005573C4) // +28 Normal Items (Using Life)
#define GS_FIX28_4 (0x005378CE+2) // +28 for 380 Items (Using Life
#define GS_FIX28_5 (0x00501F4C) // +28 for 380 Items (Using Life
SetNop(GS_FIX28_1,2);
SetByte(GS_FIX28_2,0x07);
SetNop(GS_FIX28_3,2);
SetByte(GS_FIX28_4,0x07);
SetNop(GS_FIX28_5,2);
BYTE cFixPacketPerSecond[6] = {0xE9,0x42,0x01,0x00,0x00,0x90};
memcpy((int*)0x004B10FB,cFixPacketPerSecond,sizeof(cFixPacketPerSecond));
BYTE cFixPartyZen[31] = {0x8B,0x4D,0xE4,0x8B,0x55,0x0C,0x03,0xC9,0x03,0xC9,
0x03,0xC9,0x03,0xC9,0x81,0xC1,0x00,0x24,0x00,0x00,0x89,
0x8A,0xD8,0x00,0x00,0x00,0xE9,0x83,0xFC,0xFF,0xFF};
memcpy((int*)0x005174E7,cFixPartyZen,sizeof(cFixPartyZen));
BYTE cFixPartyZen2[12] = {0xE9,0x65,0x03,0x00,0x00,0x90,0x90,0x90,0x90,0x90,0x90,0x90};
memcpy((int*)0x0051717D,cFixPartyZen2,sizeof(cFixPartyZen2));
void __declspec(naked) GetQueComplStatusFix()
{
_asm
{
//004B1D9E Hook, JMP back 004B1DA7
CMP DWORD PTR SS:[EBP-0x30],0x3E3 //Original
JE 0x004B1DD9;
CMP DWORD PTR SS:[EBP-0x30],0x79 //121 Error
JE 0x004B1DD9;
mov esi, 0x004B1DA7;
jmp esi;
}
}
*(unsigned int*)0x0071B500 = (unsigned int)GetQueComplStatusFix;
#define DELETEGUILD (0x00450376)
#define LEAVEGUILD1 (0x0045048D)
#define LEAVEGUILD2 (0x004504AC)
#define LEAVEGUILD3 (0x004504E9)
#define DELETECHAR (0x0043B9D6)
memset((PBYTE)DELETEGUILD,0x90,6); //DELETE GUILD
memset((PBYTE)LEAVEGUILD1,0x90,2); // FIX LEAVE GUILD
memset((PBYTE)LEAVEGUILD2,0x90,5); // FIX LEAVE GUILD
memset((PBYTE)LEAVEGUILD3,0x90,2); // FIX LEAVE GUILD
memset((PBYTE)DELETECHAR,0x90,5); // fix delete char
Some important Fixs...
i think i dont talk about credits... all in rz..and old mu coders sources..
Re: GameServer 1.00.90 (Fixes)
I think after checking Eax, better to add ExitProcess.
Quote:
PUSH nameOfDLL
CALL LoadLibrary
OR EAX,EAX
JE Exit Process // if dll not exist then we exit
PUSH ExportFunctionNameFromDLL
PUSH EAX
CALL GetProcAddress
CALL EAX // get dll`s functions errors or whatever
CMP EAX,0 // check errors or whateva from dlls functions result
JZ EntryPoint // if all good we jump to OEP
PUSH 0
CALL ExitProcess