level 12
一楼先占上说明下。这是本人晚上睡不着+不想在忘记数据地址的时候再去外站上查的产物,大家有需求的就慢慢看吧,我会很馒馒来的写的~
另外,对于使用sgsk君制作的推倒器系列能够修改的部分,我将不再把推倒器作为修改方式之一详细说明。
诸君如果有疑问等,请尽量用楼中楼回复,避免影响排版。如果是楼中楼说不清的另开贴也没关系~
2012年12月15日 18点12分
1
level 12
首先,说一下最大的一部分,也是目前本人了解最透彻的部分:PM数据修改。
1,PM种族,特性,属性,以及初始亲密,孵化速率,性别比等等基础数据
这部分可以用推倒器直接修改,无任何bug。没必要详细说明。
2,升级技能表
虽然推倒器也能改这个,但是不能修改技能数量(有修改功能的也会有bug),因此需要手动完成。
首先需要找到升级技能表的narc,并将之解压。(不解压也能直接改,但是不方便…)
技能表的存储方法:首先找到技能的十六进制代码,然后将其高低位对调。之后将习得等级翻倍后转为十六进制,将它“加在“技能代码上。
例如:某pm在10级习得代码为1a3的技能。1a3对调后变为a3 01;10级翻倍后转为十六进制的14;将之相加得a3 15。
建议对技能表进行大修时,先把技能和等级列个表,然后自己换成存储的写法再敲进去,避免犯错。
不过这部分推倒器是可以代劳的,但是下面要讲怎么更改技能表的长度。
解压出的技能表,在一开始的文件头后面会有形如 0000 0000 0000 xxxx xxxx yyyy yyyy zzzz …的数据。这就是指针数据,通过修改这个能够改变每段数据的长度。其含义是:0000-0000,0000-xxxx,xxxx-yyyy,yyyy-zzzz…等地址区间各为一段数据。但是这里的地址写的是相对偏移,在ct2里面看的是从文件头开始算的绝对偏移。两者之间存在固定的差。我们可以看到,ct2为每段数据都显示有绝对偏移;第一段数据的相对偏移算作是0。因此两者之间的差就是第一段数据开头的绝对偏移地址。
有了这两个知识就可以自由修改技能表了。
最后说两个小技巧:技能表对应的代码,可以看推倒器上面的技能表,选择按内部编码排列,从上到下从001依次递增。我是在excel里面抄了一份的。在心魂和白金里面各个narc的命名不再提示其作用,找不到升级技能的narc怎么办?打开推倒器看看妙蛙种子的升级技,把前几个换成存储编码搜一下就有了。
2012年12月15日 18点12分
2
level 12
3,遗传技能表
遗传技能表和升级技能表的存储方式完全一致。不过遗传技均视为0级习得,因此不需加等级了。
另外,哪些pm拥有遗传技也是可以修改的。在rom中搜索所有拥有遗传技的pm编号(即0100 0400 0700…等一系列)即可找到这个表。需要注意的是这个表并非单独的文件。其意义为遗传技表中各段数据依次分别为何种pm所有。
4,进化树系和生蛋
推倒器可部分修改。但推倒器不支持两个pm之间有多于一种的进化方式,仍需手动。要偷懒的话可以用推倒器分别改出所需的几种条件,然后复制粘贴。
另外,pm生蛋生出何种pm并不是由进化树系倒推得到,而是通过一张表分别设定的。因此进化路线修改后一定记得把这里也改掉。另外,尼多x/萤火虫/香炉众的生蛋判定较为特殊,要么不做修改原版照搬,要么最好使它们不作为能从蛋中孵化的pm出现。此表形为0100 0100 0100 0400 0400 0400 0700 0700 0700 0a00…等,依次为各个pm生蛋后出现的pm编号。生蛋组为未发现的pm由于不会生成蛋,因此这里写什么都没关系。原本的话写的是这些pm本身的编号。
2012年12月22日 06点12分
5
- -字太多被度受抽楼了。。。。吃了2层
2012年12月22日 13点12分
回复
@只是mj小号 :不是啦,是插楼的被另外的吧主删了
2012年12月23日 02点12分
LZnds版的图鉴做了吗?在下最近想翻译下1.8英文版的图鉴(其实是断网了没事做)不知能不能用上
2013年01月17日 01点01分
其实图鉴说明的话,从求文或正作文档里截也不错
2013年01月17日 01点01分
level 5
求科普,ROM的narc结构
我至今没找到相关资料,所以之前写的修改器都是写死的偏移
2012年12月31日 01点12分
6
我也不知道文件结构是什么东西…不过用CT2的话能把各种narc解压出来改很方便的说~
2012年12月31日 01点12分
回复 ·李冰洁· :不用工具
2012年12月31日 01点12分
当然可以把NDSTOOL藏进软件里,但是不厚道还可能构成侵权
2012年12月31日 01点12分
回复 ·李冰洁· :不是,那是sgsk 我只是做过部分功能的,从没整合过
2012年12月31日 01点12分