[转贴]任意地图刷黄金怪物
---------------------------------
在GS中修改
修改声明!第一个做例子的是黄金巫师王,下面的黄金怪物修改的方法是一样的,只是地址不同,用90填充则可以在任意地图刷怪,不过前面地图号的修改将无效
================================================
这是OllyDbg109Cch反汇编的代码,左边的地址减去0400000就是中间的机器码在文件中的偏移地址
00435D5C |. C745 F4 07000000 |MOV DWORD PTR SS:[EBP-C],7
这里的07代表亚特兰蒂斯的地图号,改成9就是恶魔广场了:)。。。。。。。。。。。。。。。。。。。。。。。
补充:
00435D6F |. 8891 51E8CE04 |MOV BYTE PTR DS:[ECX+<MapNumBase>],DL
将红色数据用909090909090填充,不将地图号回存,应该可以做到在monster.txt中制定位置刷出黄金巫师王,上面的7就不用修改了,因为这里根本就没有修改地图号,至于坐标还是需要确定范围,无法指定,我以后再想想办法
大家先测试一下吧
可以的话请回帖
00435D93 |. 51 ||PUSH ECX
00435D94 |. 68 C8000000 ||PUSH 0C8
00435D99 |. 68 C8000000 ||PUSH 0C8
00435D9E |. 6A 32 ||PUSH 32
00435DA0 |. 6A 32 ||PUSH 32
这里的四个加红的数字是黄金破坏在地图中刷新的范围,分别是y坐标和x坐标
上面两个是坐标上限,应该分别是y坐标和x坐标的(我分不清了,先照我说的做吧,不对反过来),下面两个是对应的坐标下限(所有坐标都要大于0,小于255,否则后果自负,我也不知道有什么后果。。,程序会自动避开不能刷怪的点),需要注意的就是4个广场其实是在一张地图上的,黄金怪物刷到广场1会很high的。。。所以这四个坐标限制一定要设好
00435DA2 |. 8B55 F4 ||MOV EDX,DWORD PTR SS:[EBP-C]
00435DA5 |. 52 ||PUSH EDX
00435DA6 |. B9 28DC3306 ||MOV ECX,GameServ.0633DC28
00435DAB |. E8 D9C9FCFF ||CALL <GameServ.SetMonsterPos>
黄金破坏
===============================================
0043622C |. C745 F4 08000000 |MOV DWORD PTR SS:[EBP-C],8 ; 黄金破坏刷出地图号,8,死亡沙漠
0043623F |. 8891 51E8CE04 |MOV BYTE PTR DS:[ECX+<MapNumBase>],DL
将红色数据用909090909090填充
00436264 |. 68 C8000000 ||PUSH 0C8
00436269 |. 68 C8000000 ||PUSH 0C8
0043626E |. 6A 32 ||PUSH 32
00436270 |. 6A 32 ||PUSH 32
黄金火龙王
================================================
004358CD |. C745 E8 00000000 MOV DWORD PTR SS:[EBP-18],0
004358D4 |. C745 EC 03000000 MOV DWORD PTR SS:[EBP-14],3
004358DB |. C745 F0 02000000 MOV DWORD PTR SS:[EBP-10],2
这里的3个数字是黄金火龙王随即刷出的地图号
00435973 |. 8891 51E8CE04 |MOV BYTE PTR DS:[ECX+<MapNumBase>],DL
将红色数据用909090909090填充
00435998 |. 68 AA000000 ||PUSH 0AA
0043599D |. 68 AA000000 ||PUSH 0AA
004359A2 |. 6A 50 ||PUSH 50
004359A4 |. 6A 50 ||PUSH 50
黄金哥部林==================================================
00435153 |. C745 EC 00000000 MOV DWORD PTR SS:[EBP-14],0
0043515A |. C745 F0 03000000 MOV DWORD PTR SS:[EBP-10],3
这里的2个数字是黄金哥部林随即刷出的地图号
004351CE |. 8882 51E8CE04 |MOV BYTE PTR DS:[EDX+<MapNumBase>],AL
将红色数据用909090909090填充
004351F4 |. 68 C8000000 ||PUSH 0C8
004351F9 |. 68 C8000000 ||PUSH 0C8
004351FE |. 6A 32 ||PUSH 32
00435200 |. 6A 32 ||PUSH 32
黄金泰坦
=================================================
0043543C |. C745 F4 02000000 |MOV DWORD PTR SS:[EBP-C],2
黄金泰坦刷在冰风谷,2号地图
0043544F |. 8891 51E8CE04 |MOV BYTE PTR DS:[ECX+<MapNumBase>],DL
将红色数据用909090909090填充
00435474 |. 68 C8000000 ||PUSH 0C8
00435479 |. 68 C8000000 ||PUSH 0C8
0043547E |. 6A 32 ||PUSH 32
00435480 |. 6A 32 ||PUSH 32