CHEAT ENGINE修改游戏的问题,汇编高手进

游戏是东方绯想天则,裏面有一段代码:00435748:addecx,-1movdwordptr[esi+10],ecx其中[esi+10]地址存放的是卡片的数量,初始是2... 游戏是东方绯想天则,裏面有一段代码:
00435748:
add ecx, -1
mov dword ptr [esi+10], ecx
其中 [esi+10]地址存放的是卡片的数量,初始是20,减为0时就没卡片用了,相当於卡片的上限。
这里我把add ecx, -1改为add ecx, 0(或者把mov dword ptr [esi+10], ecx改为3个nop)后,游戏中就没有最多使用20张卡片的限制了。到这里都没问题,但是失败后接关的时候,第一次接关没问题,第二次接关游戏就会自动退出。然后我用CHEAT ENGINE代码注入,把代码换成
00435748:
jmp 04360000
nop
04360000:
add ecx,ff
mov [esi+10],ecx
add [esi+10],1
jmp 0043574e
以上内容是在内存中注入的,运行正常 [esi+10]的值一直是20,但也会在第二次接关时自动退出。
后来我想是不是游戏会检查[esi+10]地址的值,就没改代码用游戏修改器锁定[esi+10]地址的值为20,这时候游戏不自动退出了....
看来[esi+10]地址的值一直是20是没问题的,那为甚麼我用的2种方法都会使游戏自动退出呢....
目前已知确实是寄存器edx的问题,我的代码使edx的值发生了变化,但是我的代码未对edx进行过操作啊
展开
 我来答
匿名用户
2009-10-20
展开全部
这种常遇到
不止卡片要用到00435748
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1988_0_1
2009-10-21 · 超过21用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:66.8万
展开全部
这种情况一般是寄存器数据发生了变化而出的问题,
在04360000加入
mov [04360040],ecx
push ecx
mov ecx,[04360040]
....
pop ecx
试试
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
还需几瓢饮
2009-10-21 · 超过35用户采纳过TA的回答
知道答主
回答量:298
采纳率:0%
帮助的人:155万
展开全部
在04360000加入
mov [04360040],ecx
push ecx
mov ecx,[04360040]
....
pop ecx
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
扬璞玉RS
2009-10-19 · 超过11用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:0
展开全部
卸了从新装,要不就是电脑问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式