网上贴的GBA游戏的金手指代码是怎么制作出来的

像金钱这种数值类型的,这个我知道是怎么改的,直接用VBA搜索那个数值就知道它的内存地址了,然后改值,但是如果是物品或者类似口袋妖怪的那些宠物是怎么推算出来的呢?他们是怎么知道那一个内存地址是表示物品或宠物的呢?除了VBA模拟器,是否要借助什么软件推算出来呢?求教程
我玩的是GBA版的SD高达G世纪,为什么我用准确搜索某个值时,却得不到结果,该0x02045fb8地址有这个值,但他却不搜索那一片区域,是什么原因?

一般用VBA模糊查找就够了。如果想要找到隐藏的数值,比如修改口袋妖怪的种族值、个体值、亲密度之类的,需要借助调试器。我们常用No$GBA(当然,也有人用它来玩NDS,但是作者最初开发这个软件的目的就是靠收费的调试功能来赚钱)来调试GBA游戏,对游戏进行逆向,或者通俗的说——破解。由于GBA使用的是ARM 7作为CPU,因此我们在调试器中看到的都是ARM汇编指令,所以要对汇编有所了解,也要对GBA系统足够了解,而最重要的,是拥有耐心。那些藏得很深的绝对内存地址(金手指),就是靠一步步地逆向分析跟踪出来的,没什么教程。追问

我玩的是GBA版的SD高达G世纪,为什么我用准确搜索某个值时,却得不到结果,该0x02045fb8地址有这个值,但他却不搜索那一片区域,是什么原因?大侠能留个QQ吗?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-30
gba的模拟器会模拟一个gba系统环境并在里面虚拟各种内存名称,所以模拟器的内存分布与真正的游戏机完全相同,那么游戏机的金手指也可以应用于模拟器。
寻找地址的方法是:比如口袋妖怪修改持有物品,在不同的游戏进度、不同的时间、不同的地点(各种不同)分别得到相同数量的同种物品,并不断的找寻不变量。直到找到唯一的1个量为止。这个唯一的不变量就是需要查找的物品数量。
金山游侠的模糊搜索也是这个原理追问

我玩的是GBA版的SD高达G世纪,为什么我用准确搜索某个值时,却得不到结果,该0x02045fb8地址有这个值,但他却不搜索那一片区域,是什么原因?大侠能留个QQ吗?

追答

GBA的内存名是重新命名的,与电脑分配给模拟器的内存名不能划等号。我的Q496071360.加我时注明:百度知道GBA

第2个回答  2011-10-31
这貌似是机密不能讲的
相似回答