Nw BBS 壬天堂世界

 找回密码
 注册
搜索
热搜: 资料集合
12
返回列表 发新帖
楼主: DIS.LEO
收起左侧

关于存档修改器新机能“正规值生成”的问题

[复制链接]
发表于 2009-9-15 17:55:02 | 显示全部楼层
抱歉,沒有
湊字
回复

使用道具 举报

发表于 2009-9-15 19:52:42 | 显示全部楼层
回复

使用道具 举报

发表于 2009-9-15 20:06:40 | 显示全部楼层
顺便 如果你能看懂这PDF的话 就好了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2009-9-15 22:07:04 | 显示全部楼层
我只用修改器该处道具,如什么电影票什么的……
回复

使用道具 举报

 楼主| 发表于 2009-9-15 23:53:22 | 显示全部楼层
现在搞明了很多东西,连不明值修改也习得了
回复

使用道具 举报

发表于 2009-9-15 23:55:42 | 显示全部楼层
现在搞明了很多东西,连不明值修改也习得了
DIS.LEO 发表于 2009-9-15 23:53


求大大说明一下
回复

使用道具 举报

 楼主| 发表于 2009-9-16 10:53:05 | 显示全部楼层
本帖最后由 DIS.LEO 于 2009-9-16 10:54 编辑
求大大说明一下
尜Mi鋒_LOVE街波 发表于 2009-9-15 23:55

不明值搞那么神秘,其实就是PM入手地点的里代码,不过可以靠不同版本间的传送来强行破解一部份
回复

使用道具 举报

发表于 2009-9-16 11:50:29 | 显示全部楼层
逻辑运算符>>(右移),& (与),%(模)
右移:将每一位向右移动一位,最后一位自动消失,前面补0
比如
   00100100
->00010010

与:两个数上下对齐,上下都是1时为1,否则为0
比如
  11100011
  01011101
->01000001

模:就是余数
比如
63%19=6
84%21=0

--------------------------

闪光的判定

闪光的判定由性格值,表ID以及隐藏ID共同决定,表ID其实在游戏里也能看到,就是训练员卡上ID后面的数字(最多5位),而隐藏ID在游戏中则无法看到,和性格值一样必须通过第三方手段(比如修改器)才能得知,不过对于一个已经被捕获的精灵,这三个值都是固定的,接下来就是判定了
1:在修改器中看到的性格值可能位数不是固定的,但其实都是8位的16进制数,我们的目标是这个16进制的数(重要:如果修改器看到的数转换成16进制不满8位,则在首位前补0补成8位),把这8位的16进制数中间一劈二得到2个4位的数,给前四位数起名HID,后四位数起名LID
2:给表ID起名TID,隐藏ID起名SID
3:把HID,LID,TID,SID分别转换为16位的2进制数,不足16位的在首位前补0补足16位
4:去掉4个16位的2进制数的最后三位
5:按照第一行HID,第二行LID,第三行TID,第四行SID排成四行(重要:位数要对起,别错位了)
6:数每一列中1的个数,一共13列,如果每一列中1的个数不是1或者3,换句话是2或者4的话,这个精灵即是闪光精灵了

下面举个具体例子:
假设一个精灵的性格值是2382007801,训练员的表ID是30921,隐藏ID是1095
将2382007801转换为16进制就是8DFA8DF9,那么HID=8DFA,LID=8DF9,同样转换表ID,隐藏ID得到TID=78C9,SID=0447,将四个ID转换为2进制数得到
HID=1000110111111010
LID=1000110111111001
TID=0111100011001001
SID=0000010001000111
去掉每个数的后三位,数每一列有多少个1
结果是2,1,1,1,3,3,0,2,3,4,2,2,4,因为有1和3,自然这个精灵不是闪光的

--------------------------

刚比树

一般的来说,每个游戏里都有4棵树会出刚比,不过也有例外可能只有3棵,不过研究表明最少也有3棵最多4棵,具体位置由表ID和隐藏ID决定,也就是游戏一开始这3/4棵树的位置已经确定了,以下是具体算法。
把表ID和隐藏ID(第三方手段看到的一般是10进制数)转换为16位的2进制数,不满16位的首位前补0,然后8位一分分成4个8位数的2进制数,把这4个2进制数再转化为10进制数,每个都进行模21转换,得到4个数,参考下表即得到4个位置,这就是会出刚比树的位置
0:Route 205 south
1:Route 205 north
2:Route 206
3:Route 207
4:Route 208
5:Route 209
6:Route 210 south
7:Route 210 north
8:Route 211
9:Route 212 west
10:Route 212 east
11:Route 213
12:Route 214
13:Route 215
14:Route 218
15:Route 221
16:Route 222
17:Valley Windworks
18:Eterna Forest
19:Fuego Ironworks
20:Floaroma Meadow

举个例子,比如表ID是10932,隐藏ID是4509
10932=10101010110100
4509=1000110011101
10101010110100->101010   10110100
1000110011101->10001   10011101
101010=42   10110100=180
10001=17    10011101=157
42模21=0  180模21=12   17模21=17   157模21=10
对照上表可知4棵树位置为Route 205 south,Route 212 east,Route 214,Valley Windworks

--------------------------

不明值

三个宝石+火红绿叶+XD里的任何精灵都没用到不明值(这应该很好理解,那时都没这个概念),钻石珍珠只用到一个85h这个值,而白金则用到了44h,45h,46h,47h,85h这5个
44h,45h代表的是(白金里)在哪里获得的蛋,如果是抓的野生的,那这两个值都是00
46h,47h代表的是(白金里)蛋在哪里孵化或者在哪里得到的精灵,这两个值不可能都是00
85h代表的比较复杂了:
00 - 蛋/联动公园/活动/涂蜂蜜的树(D/P/Pt)
02 - 草丛(D/P/Pt)
04 - 钻石兽/珍珠兽(D/P/Pt)
05 - 山洞/鬼龙洞/鬼龙(D/P/Pt)
07 - 水中抓到的(D/P/Pt)
09 - 建筑物里(D/P/Pt)
17 - 反转世界的鬼龙(Pt)
18 - 初始三个精灵/缘市的依布/化石精灵(Pt)
0A - 大湿原(D/P/Pt)
0C - 初始三个精灵/化石精灵(D/P)
原文中户张市得到3D龙没有提及,经过观察也是属于18的

接下来举2个例子
1:游戏中得到的鲁利欧,正常途径是从ゲン那得到的,打开修改器找到得到蛋的那项,选择ゲン,这时会跳出个数字2010,将2010转成16进制数得到07DA,则44h=DA,45h=07
假设这个蛋在214号路孵化,,则在修改器中的遇到场所选择214号路,这时跳出数字29,同样转换为16进制数得到001D,则46h=1D,47h=00
因为得到时是蛋,所以85h=00
2:白金里的钻石兽,正常情况下在やりのはしら遇到,和上面同样的方法可以得到数字51,转换下得到0033,所以46h=33,47h=00,同时85h=04,因为得到时不是蛋,所以44h,45h都是00

接下来是比较讨厌的白金里新增加的地方:
112- 战斗公圆
113- 战斗工厂
114- 战斗城堡
115- 战斗轮盘
116- 战斗舞台
117- 反转世界
118- GTS
119- R.A House(暂时不知道是哪)
120- Match Place(暂时不知道是哪)
121- 电鬼变形房间
122- 白岱市银河团大楼
123- 抓钢神柱洞
124- 抓冰神柱洞
125- 抓岩神柱洞
2011- 冠军
特别要注意的2011,这个本来是冠军殿堂,只是当用于冠军给你的多可比的蛋时才使用这个值
这些地方在白金修改器中都显示遥远的地方,那怎么确定是不是真的是这样呢?(因为从XD传来的精灵同样显示遥远的地方)这就看46h,47h这两个值,如果都是00的话那确实是遥远的地方来的,如果不全是00的话那就是白金中的新地方了,原因就是不明值一旦确定就不会再改变,即使传到别的版本中

--------------------------

关于配送精灵是否能闪光的说明

关于配送精灵就是指某活动里直接送给你的精灵,比如去年看电影送的圣柱王,草刺猬,前年的噩梦,还有5个最强精灵等等,下载以后在商店里的邮递员那里直接获得。通过S/L可以发现获得的精灵的性格,个体都是可变的,就像抓野生的一样,这样不免就会想到是不是同样会刷到闪光精灵呢。在经过研究后发现这种可能性完全不存在。

原因在于配送精灵的性格值产生是通过不同于一般精灵的性格值产生算法而是采用了ARNG, Alternate Random Number Generator这个算法,当然这不是最主要的,关键在于产生了性格值之后还立即进行了闪光检测,当然这个闪光检测就是和一般的闪光精灵的判断是一样的。当判断下来性格值和表ID,隐藏ID会产生闪光精灵时再次调用ARNG产生新的性格值并进行闪光检测,这样重复下去直到性格值和表ID,隐藏ID不产生闪光为止,所以由于这样配送精灵不可能是闪光的。当然如果这个精灵告诉你是闪光的那就是闪光的比如WCS的美丽龙以及今年的闪光皮丘

不过任天堂绞尽脑汁想出来的这个办法还是有一个漏洞,就是处理玛纳菲的蛋时出了小BUG,正常情况下当和RANGER联机后可以在邮递员那里拿到蛋,这时这个蛋的表ID,隐藏ID和性格值都已经产生,不过这时却没有进行闪光检测,直到该蛋将要孵化时才进行,和上面的程序类似,最终会产生一个和你的表ID,隐藏ID配起来不产生闪光的性格值。不过漏洞就在这时出现:闪光检测时取的表ID,隐藏ID并不是蛋的表ID,隐藏ID而是当时蛋的所有人的表ID,隐藏ID,也就是最终产生的性格值和当时蛋的所有人的表ID,隐藏ID配起来肯定不是闪光的,但是和蛋本身的表ID,隐藏ID配起来却是可能闪光的。原因嘛想一想就知道了,蛋是可以通信交换的。也就是说过程是这样的:训练员A拿到蛋时蛋的表ID,隐藏ID都是A的,然后性格值产生(以后可变),然后A传给训练员B,在B那将要孵化时计算是否闪光,用的是B的表ID,隐藏ID,然后产生一个性格值,虽然这个性格值与B的表ID,隐藏ID想配肯定是不闪光的,但是与A的表ID,隐藏ID却有可能是闪光的(虽然几率小的可以认为不存在)
回复

使用道具 举报

 楼主| 发表于 2009-9-16 12:14:04 | 显示全部楼层
不用把这个搬过来吧?昨天就是研究这个的
回复

使用道具 举报

发表于 2009-9-16 12:39:55 | 显示全部楼层
抱歉
我是答26樓[表情同頭像]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|Nw壬天堂世界 ( 京ICP备05022083号-1 京公网安备11010202001397号 )

GMT+8, 2024-11-22 20:04 , Processed in 0.017659 second(s), 3 queries , Redis On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表