搜索
 找回密码
 加入

1299及1311屏蔽交易的方法[1.298 & 1.310] Disable /trade function server-side

ctgwglzc 2009-7-28 04:34:41 1604
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
  1. 004ABB55   . E9 36010000    JMP Ebenezer.004ABC90
  2. 004ABB5A     90             NOP
复制代码
So... you can either edit this with:

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
  1. 0048E433     E9 33010000    JMP Ebenezer.0048E56B
  2. 0048E438     90             NOP
复制代码
So... you can either edit this with:

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.

9 回复

214550663
2009-7-21 09:08:00
点击查看详情
偶看的懂,反汇编嘛。修改代码就可以了。
大家赶紧收藏啊!
gb123
2009-7-22 19:53:52
{:1_203:}{:1_204:}
1111
2009-7-23 00:11:53
那再共享下    开交易  防止 复制的方法啊{:1_213:}
koray_10
2009-7-23 02:06:24
hmm good
28085279
2009-7-23 19:17:19
关闭交易又不能 根本解决问题,要是自己玩还是不关吧
  要是能把改EB支持中文名字的方法放出来就更好了。
维护世界和平
2009-7-24 07:32:20
顶,好东西就是要大家分享,收下
ctgwglzc
2009-7-24 20:35:21
楼主
那再共享下    开交易  防止 复制的方法啊{:1_213:}
1111 发表于 2009-7-23 00:11

只要开交易就能复制,不信你去王者那些服看看
很多交易复制的方法连GM和开发程序人自身都不知道,谈何防,扯淡嘛
天剑风小流
2009-7-27 15:22:35
只要开交易就能复制,不信你去王者那些服看看
很多交易复制的方法连GM和开发程序人自身都不知道,谈何防,扯淡嘛
ctgwglzc 发表于 2009-7-24 20:35

ct 贡献点 复制的办法来
嘎嘎```````````````````````
ctgwglzc
2009-7-28 04:34:41
楼主
ct 贡献点 复制的办法来
嘎嘎```````````````````````
天剑风小流 发表于 2009-7-27 15:22

角色名空格复制
高级模式
游客