| know BlaDe was going to release a guide on this sometime, but he hasn't yet, so I figured I'd take a look (after being asked). As much as I hate disabling stuff, a lot of people do seem to want to disable the /trade function.. so, here's my first little test.
 
 All this very simple modification does is jump straight to the "invalid user ID" code.
 That is, it'll basically be all like "no you cannot trade, u haz invalid uid?????" (though it won't actually say that, it'll just let the client know that ).
 
 When you go to /trade someone, the server will reject the request and act as if you cancelled. The other person won't even receive the request. This way, the client doesn't even really need to worry about anything.
 
 The 1.298 patch
 So... you can either edit this with:复制代码004ABB55   . E9 36010000    JMP Ebenezer.004ABC90
004ABB5A     90             NOP
 OllyDbg
 
 1. Open up OllyDbg (you can get it from www.ollydbg.de),
 2. Load Ebenezer - File -> Open -> Ebenezer,
 3. Hit CTRL+G to open up a small dialog which can help you to jump to various offsets,
 4. Type in 004ABB55, and hit "OK",
 5. Select this line and the one below, right-click them, and hit Binary->Fill with NOPs,
 6. Double-click the first (now nopped) line, or right-click it and hit "Assemble",
 7. Type in: JMP 004ABC90, and hit "OK".
 8. Select the lines:
 004ABB55 E9 36010000 JMP Ebenezer.004ABC90
 004ABB5A 90 NOP
 9. Right-click, copy to executable, selected modifications.
 
 OR
 
 A hex editor
 
 1. Open up the hex editor,
 2. Load Ebenezer,
 3. Jump to the file offset 000ABB55,
 4. Replace the following 6 bytes with: E9 36 01 00 00 90
 5. Save.
 
 The 1.310 patch
 So... you can either edit this with:复制代码0048E433     E9 33010000    JMP Ebenezer.0048E56B
0048E438     90             NOP
 OllyDbg
 
 1. Open up OllyDbg (you can get it from www.ollydbg.de),
 2. Load Ebenezer - File -> Open -> Ebenezer,
 3. Hit CTRL+G to open up a small dialog which can help you to jump to various offsets,
 4. Type in 0048E433, and hit "OK",
 5. Select this line and the one below, right-click them, and hit Binary->Fill with NOPs,
 6. Double-click the first (now nopped) line, or right-click it and hit "Assemble",
 7. Type in: JMP 0048E56B, and hit "OK".
 8. Select the lines:
 0048E433 E9 33010000 JMP Ebenezer.0048E56B
 0048E438 90 NOP
 9. Right-click, copy to executable, selected modifications.
 
 OR
 
 A hex editor
 
 1. Open up the hex editor,
 2. Load Ebenezer,
 3. Jump to the file offset 0008E640,
 4. Replace the following 6 bytes with: E9 33 01 00 00 90
 5. Save.
 
 Good luck!
 
 Edit:
 Added 1.310.
 |