CodeBreaker 格式指南(非加密版) 转自www.pm525.net神秘区域
帮自已混的网站做广告,不介意吧。我想我已经很厚道了。。。
另外:转帖请明来源,这句话一般我的帖子都不写的,这个特例。
-------------------------PM525 by .X--------------------------------
金手指格式之一 CodeBreaker (CB码)
官方网 http://www.cmgsccc.com/index.php
GBA的金手指已经很久没有更新了(注:查看金手指要注册)
比效特别的密码格式,可以在不加密的情况下使用,网上流传的4XXXXXXX YYYY的两行的密码都是CB码。
不支持ROM 写入,不支持32位数值写入,而且一些密码无法写入8位数值.
-----------------------------------------
(注:使用时请使用半角空格)
2.RAM写入码
1)8位数值RAM写入
“3aaaaaaa 00yy”
a为内存地址,y为数值。效果等同于VBA码xxxxxxx:yy
2)16位数值RAM写入
“8aaaaaaa yyyy”
a为内存地址,y为数值。效果等同于VBA码xxxxxxx:yyyy
3)16位数值RAM AND运算写入(逻辑和)
“6aaaaaaa yyyy”
a为内存地址,y为数值。地址a的数据与y进行AND运算后写入(通常应用于剧情修改)。
4)16位数值RAM OR运算写入(逻辑或)
“2aaaaaaa yyyy”
a为内存地址,y为数值。地址a的数据与y进行OR运算后写入(通常应用于剧情修改)。
5)16位数值RAM ADD运算写入(加法)
“Eaaaaaaa yyyy”
a为内存地址,y为数值。地址a的数据与y进行ADD运算后写入。
注:AND写入与OR写入都只会和原数据计算写入一次,不会反复运算。但ADD写入不同,ADD是每帧运算一次的。
3.组数值写入
“4aaaaaaa yyyy”
“ccccxxxx iiii”
a为内存地址,y为数值,x为写入数据数量(十六进制),c为增加量(十六进制),i为总写入数据地址间隔(十六进制)
例:
42000070 0000 从02000070开始写入03E7
00080004 0008 每行代码数值增加8,共写入4个数据,每个数据间隔08h
效果等同于VBA码
02000070:0000
02000078:0008
02000080:0010
02000088:0018
4.顺序16位写入码(vba1.82)
“5aaaaaaa cccc”
“bbbbbbbb bbbb”
a为内存地址,c为计数,b为写入值(不足补零)
例:
52003000 0004 从02003000开始写入4个16位数据
0102FFFF 0506 前三个数据为别是 0102 FFFF 0506
07080000 0000 第四个数据为0708,后面不足补零
效果等同于VBA
02003000:0102
02003002:FFFF
02003004:0506
02003006:0708
5.条件(可以放在组数值写入之前)
1)16位条件是
“7aaaaaaa yyyy”
a为内存地址,y为数值。当满足地址a的数值等于y时,运行下一条代码。
例:
72001130 00FF 当02001130的数值等于00FF时运行下一条代码
82001504 03E7 地址02001504进行16位写入03E7
2)16位条件非
“Aaaaaaaa yyyy”
a为内存地址,y为数值。当满足地址a的数值不等于y时,运行下一条代码。
3)16位条件大于(vba1.82)
“Baaaaaaa yyyy”
a为内存地址,y为数值。当满足地址a的数值大于y时,运行下一条代码。
4)16位条件小于(vba1.82)
“Caaaaaaa yyyy”
a为内存地址,y为数值。当满足地址a的数值小于y时,运行下一条代码。
5)按键条件码
“D0000020 yyyy”
y为按键数值。当满足按键值等于y时运行下一条代码。
附表:这个值与在GBA内存无关.由CB的金手指来处理,当然VBA也可以用
A - 0x0001
B - 0x0002
SELECT - 0x0004
START - 0x0008
右 - 0x0010
左 - 0x0020
上 - 0x0040
下 - 0x0080
R - 0x0100
L - 0x0200
其它,如主码类型(0、1)与加密类型(9)的密码格式不做介绍。
[ 本帖最后由 aowang 于 2007-2-3 21:36 编辑 ] 感谢分享,仔细研究中…… 楼主写到:
16位条件是
“7aaaaaaa yyyy”
a为内存地址,y为数值。当满足地址a的数值等于y时,运行下一条代码。
例:
72001130 00FF 当04000130的数值等于00FF时运行下一条代码
82001504 03E7 地址02001504进行16位写入03E7
72001130 代表 04000130 吗???
4是从哪来的?
1跑哪去了?
难道不是02001130吗?
[ 本帖最后由 aowang 于 2006-6-18 01:17 编辑 ] 原帖由 aowang 于 2006-6-17 17:33 发表
楼主写到:
16位条件是
“7aaaaaaa yyyy”
a为内存地址,y为数值。当满足地址a的数值等于y时,运行下一条代码。
例:
72001130 00FF 当04000130的数值等于00FF时运行下一条代码
820 ...
.............
这个.....的确是地址错了....感谢LS的指出
当时可能考虑到 040000130这个地址,有些人会不理解,所以把前面改了.后面忘记了
不过没有想到,这么久没有人发觉 OTL.......... 没关系,我也是昨天仔细研究才发现的。
我还有很多问题。 我笨啊。
昨天自己试了好几次,都没成功。
拿 终结者3(U) 举个例:
游戏里有两个能量槽,一个是能量,一个是生命。 要是被敌人打中的话,会先减能量,等能量被敌人打光之后,才会减生命。
于是我就输入了:
C201EAC0 0032 当生命值低于32时 0201EAC0:0032
8203AF94 0032 就让能量槽变满…… 0203AF94:0032
怎么弄都没反应。 哪里有错误啊?
楼主也写到:16位条件小于(vba1.82) 难道跟版本有关系?我用的是1.7的。 和VBA版有关,所以我在后面注了VBA1.82
低版本的VBA里的Cheats.cpp里没有支持更多格式的CB码和GS码
所以,基于现在网上,基本看不到1.60版本以下的VBA,我在VBA1.6a,VBA1.72,VBA1.82三个版本上测试过
有标1.82的,必需要VBA1.82,或以上的版本才能使用
另外
CB中的
4.顺序16位写入码(vba1.82)
是可以在VBA1.72上使用的,不过作者似乎对CB写入格式有误解.
所以VBA1.72上的顺序写入码和真实硬件写入位置不同,在1.82已经修正了这个问题,有空你可以自己测试下 没标1.8也不管用啊?
我把刚才的改了一下,把C改称A
A201EAC0 0032 当生命值不是32时 0201EAC0:0032
8203AF94 0032 就让能量槽变满…… 0203AF94:0032
还是不管用……
EDIT:问题已经解决。 我拿游戏王试了一下,管用。
[ 本帖最后由 aowang 于 2006-6-18 15:34 编辑 ] 刚才按你的游戏测试了一下.地址没有错
又仔细看了一下你的回帖发觉一个问题:
0201EAC0:0032
0203AF94:0032
你不会是在中间加了一个":"号,并把金手指输到了平时输VBA码的地方了吧?
CB码,GS码,VBA码,输入的地方不一样的
NW不支持上传图片,找相册ING...
http://img013.photo.wangyou.com/2005/7/21/121701/200611506167530.gif
[ 本帖最后由 DOT-X 于 2006-6-18 15:49 编辑 ] 没有,这种错误我是不会干的。呵呵。
我拿游戏王试了,的确管用。
EDIT:还有一个问题
假如我要按“R”和“上”键,应该怎么用啊?
[ 本帖最后由 aowang 于 2006-6-18 18:32 编辑 ] 用CB内置的按键条件码的情况下
上_- 0x0040
_R_- 0x0100
------------
上+R 0x0140
D0000020 0140 只要按下"R"和"上"键就触发条件,多按其它键也没有关系
XXXXXXXX XXXX
----------------------------------------------------------------------------
用检测0x04000130 按键状态的情况下
无按下___- 0x03FF
上_______- 0x0040
_R_______- 0x0100
------------------
上+R_____- 0x02BF
74000130 02BF 仅按下"R"和"上"键就触发条件,多按其它键不会触发
XXXXXXXX XXXX 原帖由 DOT-X 于 2006-6-18 20:13 发表
用CB内置的按键条件码的情况下
上_- 0x0040
_R_- 0x0100
------------
上+R 0x0140
D0000020 0140 只要按下"R"和"上"键就触发条件,多按其它键也没有关系
XXXXXXXX XXXX
---------- ...
多谢。
是每个游戏都会变吗? 我直到现在只在用一个键的时候成功过。再多一个就不行了。
[ 本帖最后由 aowang 于 2006-6-19 18:37 编辑 ]
页:
[1]