In this thread I will compile all the public patchs. That way people understand whats being changed, to fix what. Also for the sake of always having the patchs on hand. Use these to patch your own files, or to follow in a debugger and learn whats being changed.
GameServer
GameServer
GameServer
LoginServer
GameServer
Connector
GameServer
Helper
LoginServer
Messenger
GameServer
Credits To: s0m3one & GHOST107 & Warmonger
Disable Server File Packet Encryption
Code:
coming soon
Helmet Packet Fix (See Other Chars Ingame)
GameServer
Code:
00427C5B 0000 ADD BYTE PTR DS:[EAX],AL
130 LVL Loop Bug Fix
GameServer
Code:
004DF6F5 8C00 MOV WORD PTR DS:[EAX],ES
Helmet Packet Fix (Character Select)
GameServer
Code:
0042B7C4 0000 ADD BYTE PTR DS:[EAX],AL
Remove LoginServer Nation Check (ie "BAD CONNECTION" error)
LoginServer
Code:
00406BAA 90 NOP
00406BAB E9 FC000000 JMP LoginSer.00406CAC
Removing Zone Limit
GameServer
Code:
004000FE 05 00AD5F25 ADD EAX,255FAD00
00400148 00E0 ADD AL,AH
00400149 E0 3E LOOPDNE SHORT GameServ.00400189
00400150 0000 ADD BYTE PTR DS:[EAX],AL
00400151 0000 ADD BYTE PTR DS:[EAX],AL
00400152 0000 ADD BYTE PTR DS:[EAX],AL
004001F8 CC INT3
004001F9 6F OUTS DX,DWORD PTR ES:[EDI] ; I/O command
00400220 AC LODS BYTE PTR DS:[ESI]
00400221 17 POP SS ; Modification of segment register
00400248 F4 HLT ; Privileged command
00400249 111A ADC DWORD PTR DS:[EDX],EBX
00400269 74 65 JE SHORT GameServ.004002D0
0040026A 65:78 74 JS SHORT GameServ.004002E1 ; Superfluous prefix
0040026B 78 74 JS SHORT GameServ.004002E1
0040026C 74 32 JE SHORT GameServ.004002A0
0040026D 3200 XOR AL,BYTE PTR DS:[EAX]
00400270 0010 ADD BYTE PTR DS:[EAX],DL
00400271 1000 ADC BYTE PTR DS:[EAX],AL
00400279 1000 ADC BYTE PTR DS:[EAX],AL
0040028C 2000 AND BYTE PTR DS:[EAX],AL
0040028F 60 PUSHAD
00400290 2E: PREFIX CS: ; Superfluous prefix
00400291 64:61 POPAD ; Superfluous prefix
00400292 61 POPAD
00400293 74 61 JE SHORT GameServ.004002F6
00400294 61 POPAD
00400295 3200 XOR AL,BYTE PTR DS:[EAX]
00400296 0000 ADD BYTE PTR DS:[EAX],AL
00400297 0000 ADD BYTE PTR DS:[EAX],AL
00400298 0010 ADD BYTE PTR DS:[EAX],DL
00400299 1000 ADC BYTE PTR DS:[EAX],AL
0040029A 0000 ADD BYTE PTR DS:[EAX],AL
0040029B 0000 ADD BYTE PTR DS:[EAX],AL
0040029C 00D0 ADD AL,DL
0040029D D03E SAR BYTE PTR DS:[ESI],1
0040029E 3E:0000 ADD BYTE PTR DS:[EAX],AL
0040029F 0000 ADD BYTE PTR DS:[EAX],AL
004002A0 0010 ADD BYTE PTR DS:[EAX],DL
004002A1 1000 ADC BYTE PTR DS:[EAX],AL
004002A2 0000 ADD BYTE PTR DS:[EAX],AL
004002A3 0000 ADD BYTE PTR DS:[EAX],AL
004002A4 0020 ADD BYTE PTR DS:[EAX],AH
004002A5 2035 00000000 AND BYTE PTR DS:[0],DH
004002A6 35 00000000 XOR EAX,0
004002A7 0000 ADD BYTE PTR DS:[EAX],AL
004002A8 0000 ADD BYTE PTR DS:[EAX],AL
004002A9 0000 ADD BYTE PTR DS:[EAX],AL
004002AA 0000 ADD BYTE PTR DS:[EAX],AL
004002AB 0000 ADD BYTE PTR DS:[EAX],AL
004002AC 0000 ADD BYTE PTR DS:[EAX],AL
004002AD 0000 ADD BYTE PTR DS:[EAX],AL
004002AE 0000 ADD BYTE PTR DS:[EAX],AL
004002AF 0000 ADD BYTE PTR DS:[EAX],AL
004002B0 0000 ADD BYTE PTR DS:[EAX],AL
004002B1 0000 ADD BYTE PTR DS:[EAX],AL
004002B2 0000 ADD BYTE PTR DS:[EAX],AL
004002B3 0040 00 ADD BYTE PTR DS:[EAX],AL
004002B4 40 INC EAX
004002B5 0000 ADD BYTE PTR DS:[EAX],AL
004002B6 00C0 ADD AL,AL
004002B7 C000 00 ROL BYTE PTR DS:[EAX],0 ; Shift constant out of range 1..31
004002B8 0000 ADD BYTE PTR DS:[EAX],AL
004002B9 0000 ADD BYTE PTR DS:[EAX],AL
004002BA 0000 ADD BYTE PTR DS:[EAX],AL
004002BB 0000 ADD BYTE PTR DS:[EAX],AL
004002BC 0000 ADD BYTE PTR DS:[EAX],AL
004002BD 0000 ADD BYTE PTR DS:[EAX],AL
004002BE 0000 ADD BYTE PTR DS:[EAX],AL
004002BF 0000 ADD BYTE PTR DS:[EAX],AL
004002C0 0000 ADD BYTE PTR DS:[EAX],AL
004002C1 0000 ADD BYTE PTR DS:[EAX],AL
004002C2 0000 ADD BYTE PTR DS:[EAX],AL
004002C3 0000 ADD BYTE PTR DS:[EAX],AL
004002C4 0000 ADD BYTE PTR DS:[EAX],AL
004002C5 0000 ADD BYTE PTR DS:[EAX],AL
004002C6 0000 ADD BYTE PTR DS:[EAX],AL
004002C7 0000 ADD BYTE PTR DS:[EAX],AL
004002C8 0000 ADD BYTE PTR DS:[EAX],AL
004002C9 0000 ADD BYTE PTR DS:[EAX],AL
004002CA 0000 ADD BYTE PTR DS:[EAX],AL
004002CB 0000 ADD BYTE PTR DS:[EAX],AL
004002CC 0000 ADD BYTE PTR DS:[EAX],AL
004002CD 0000 ADD BYTE PTR DS:[EAX],AL
004002CE 0000 ADD BYTE PTR DS:[EAX],AL
004002CF 0000 ADD BYTE PTR DS:[EAX],AL
004002D0 0000 ADD BYTE PTR DS:[EAX],AL
004002D1 0000 ADD BYTE PTR DS:[EAX],AL
004002D2 0000 ADD BYTE PTR DS:[EAX],AL
004002D3 0000 ADD BYTE PTR DS:[EAX],AL
004002D4 0000 ADD BYTE PTR DS:[EAX],AL
004002D5 0000 ADD BYTE PTR DS:[EAX],AL
004002D6 0000 ADD BYTE PTR DS:[EAX],AL
004002D7 0000 ADD BYTE PTR DS:[EAX],AL
004002D8 0000 ADD BYTE PTR DS:[EAX],AL
004002D9 0000 ADD BYTE PTR DS:[EAX],AL
004002DA 0000 ADD BYTE PTR DS:[EAX],AL
004002DB 0000 ADD BYTE PTR DS:[EAX],AL
004002DC 0000 ADD BYTE PTR DS:[EAX],AL
004002DD 0000 ADD BYTE PTR DS:[EAX],AL
004002DE 0000 ADD BYTE PTR DS:[EAX],AL
004002DF 0000 ADD BYTE PTR DS:[EAX],AL
004002E0 0000 ADD BYTE PTR DS:[EAX],AL
004002E1 0000 ADD BYTE PTR DS:[EAX],AL
004002E2 0000 ADD BYTE PTR DS:[EAX],AL
004002E3 0000 ADD BYTE PTR DS:[EAX],AL
004002E4 0000 ADD BYTE PTR DS:[EAX],AL
004002E5 0000 ADD BYTE PTR DS:[EAX],AL
004002E6 0000 ADD BYTE PTR DS:[EAX],AL
004002E7 0000 ADD BYTE PTR DS:[EAX],AL
004002E8 0000 ADD BYTE PTR DS:[EAX],AL
004002E9 0000 ADD BYTE PTR DS:[EAX],AL
004002EA 0000 ADD BYTE PTR DS:[EAX],AL
004002EB 0000 ADD BYTE PTR DS:[EAX],AL
004002EC 0000 ADD BYTE PTR DS:[EAX],AL
004002ED 0000 ADD BYTE PTR DS:[EAX],AL
004002EE 0000 ADD BYTE PTR DS:[EAX],AL
004002EF 0000 ADD BYTE PTR DS:[EAX],AL
00459828 ? D4 27 AAM 27
00459829 ? 27 DAA
0045982A ? 3900 CMP DWORD PTR DS:[EAX],EAX
004E1549 |. 83C4 04 |ADD ESP,4
004E154A |? C40439 LES EAX,FWORD PTR DS:[ECX+EDI] ; Modification of segment register
004E154B |? 04 39 ADD AL,39
004E154C |. 3945 E0 |CMP DWORD PTR SS:[EBP-20],EAX
004E154D |? 45 INC EBP
004E154E |? E0 7D LOOPDNE SHORT GameServ.004E15CD
00538863 |. C780 70480800 >MOV DWORD PTR DS:[EAX+84870],0F
00538864 |? 8070 48 08 XOR BYTE PTR DS:[EAX+48],8
00538865 |? 70 48 JO SHORT GameServ.005388AF
00538866 |? 48 DEC EAX
00538867 |? 0800 OR BYTE PTR DS:[EAX],AL
00538868 |? 000F ADD BYTE PTR DS:[EDI],CL
00538869 |? 0F0000 SLDT WORD PTR DS:[EAX]
0053886A |? 0000 ADD BYTE PTR DS:[EAX],AL
0053886B |? 0000 ADD BYTE PTR DS:[EAX],AL
0053886C |? 008B 45EC83B8 ADD BYTE PTR DS:[EBX+B883EC45],CL
00627FCC 00 DB 00
00627FCD 00 DB 00
00627FCE 00 DB 00
00627FCF 00 DB 00
00627FD0 00 DB 00
00627FD1 00 DB 00
00627FD2 00 DB 00
00627FD4 00 DB 00
00627FD5 00 DB 00
00627FD7 00 DB 00
00627FD8 00 DB 00
00627FD9 00 DB 00
00627FDA 00 DB 00
00627FDB 00 DB 00
00627FDC 00 DB 00
00627FDD 00 DB 00
00627FDE 00 DB 00
00627FE0 00 DB 00
00627FE1 00 DB 00
00627FE3 00 DB 00
00627FE4 00 DB 00
00627FE5 00 DB 00
00627FE6 00 DB 00
00627FE7 00 DB 00
00627FE9 00 DB 00
00627FEA 00 DB 00
00627FEB 00 DB 00
00627FEC 00 DB 00
00627FED 00 DB 00
00627FEE 00 DB 00
00627FEF 00 DB 00
00627FF0 00 DB 00
00627FF1 00 DB 00
00627FF2 00 DB 00
00627FF3 00 DB 00
Raising Player Limit To 256
Connector
Code:
00418DE4 |? FF00 INC DWORD PTR DS:[EAX]
GameServer
Code:
00400268 2E:74 65 JE SHORT GameServ.004002D0 ; Superfluous prefix
00400269 74 65 JE SHORT GameServ.004002D0
0040026A 65:78 74 JS SHORT GameServ.004002E1 ; Superfluous prefix
0040026B 78 74 JS SHORT GameServ.004002E1
0040026C 74 32 JE SHORT GameServ.004002A0
0053ABD4 |? 0A00 OR AL,BYTE PTR DS:[EAX]
Helper
Code:
0042B544 |? FF00 INC DWORD PTR DS:[EAX]
LoginServer
Code:
0040CF44 |? FF00 INC DWORD PTR DS:[EAX]
Messenger
Code:
0040CF44 |? 04 68 ADD AL,68
Fixing PvP Mode v1
GameServer
Code:
003510C8 00 FF
Credits To: s0m3one & GHOST107 & Warmonger
Last edited by a moderator: