高级玩家
![Rank: 4](static/image/common/star_level3.gif)
- 贡献度
- 84
- 金元
- 1952
- 积分
- 531
- 精华
- 0
- 注册时间
- 2006-10-6
|
风色幻想5技能的修改增加图文教程(GM8)
<p>作者:hkk333361 </p><p><span style="FONT-SIZE: 14px;">本来没打算改什么技能,.毕竟目前的修改好象够用了.不过我看还有人问技能增加的方法.又没人说清楚点,于是乎打开游戏翻找一番,还真找到修改办法了.虽然高手估计都改出来了.不过估计对新手还是有点帮助的,就有了这个教程.使用工具是Game Master 8. 修改环境 风5 v2.0<br/><br/>详细修改办法:<br/><br/>1: 首先在游戏中,查找技能的熟练度.然后使用技能,使熟练度变化了,继续查找变化了的熟练度.反复<br/> 数次应该找到唯一的一个地址.(这个是地球人应该都会了= =b)<br/>2: 打开编辑刚才查找到的地址的内存的窗口.仔细观察这附近的数据,应该如图一所示:<br/><br/> 首先我们应该都知道,风5每个技能的数据在GM8的内存编辑画面中显示为4行.图一中4个用彩色<br/> 框框起的4行就是4个技能的数据.看着右边竖直的两列颜色暗红的<br/> "<font color="#ff0000">01</font> 00 00 00 <font color="#ff0000">23</font> 00 00 00"<br/> ....... ....... ....... ....... .....<br/> 一直到 "<font color="#ff0000">07</font> 00 00 00 <font color="#ff0000">00</font> 00 00 00" <br/> 我想大家都能猜到01到07分别代表了主角的前7种技能.而后面的23代表技能的熟练度.熟练度为<br/> 0代表未习得的技能.修改时,我们一般也正是通过修改技能熟练度来使技能MAX的<br/>3: 注意<font color="#0000ff">从地址 06F89680 开始的我用红色框起的4行数据.这是主角的代码为4的技能残月剑的数据</font>.<br/> 在这个红色框中我用4条彩线标出了4个关键数据:<br/> <font color="#ff0000">next pointer</font>:下一数据块的指针.在图中是用红色横线标出的06F896C0.注意看下一数据块的开始<br/> 地址,我用红色小框在地址栏框起的下一技能开始地址正好是红色横线标出的数值所指示的地址<br/> 吧. <这里要说一下,intel X86系列CPU内存数据存放是低位在低地址,高位在高地址,和人们的习惯<br/> 相反.所以如果看到1个32位的内存数值 12 34 56 78,其实它代表的是78 56 34 12 ><br/> <font color="#ff0000">prev pointer</font>:前一数据块/前导数据块的指针.在图中是用黑色横线标出的06F89640,显然.这正是前<br/> 一数据块的开始地址.也就是图中我用紫色方框框起的4行数据的开始地址.这个地址本身我用小黑<br/> 框圈起来了<br/><font color="#ff0000">pointer2_ prev</font> 另一个链表的前导数据块指针.在图中是我用紫色横线标出的06F89660.它指示的<br/> 地址我在图中的地址栏用紫色椭圆圈起来了<br/><font color="#ff0000">pointer2_next </font> 对应的后续指针,在图中是我用桃红横线标出的06F896E0.它指示的地址我在图中<br/> 的地址栏用桃红色的椭圆 圈起来了 . <br/>4: 注意代码为7的技能数据块中的next pointer指示地址为06F83670.对应地址的数据如图二所示<br/><br/>5: 细心观察,总结规律:<br/> 观察图一和图二.可以发现,<font color="#0000ff">每个技能数据块的 prev ,next指针能够构成一个封闭链表</font><br/> 如图三所示<br/><br/>6: <font color="#0000ff">观察pointer2_prev指针和pointer2_next指针,同样能发现它们构成链表,只是链表长度未知</font><br/>7:修改.参考图1,图4, <font color="#0000ff">图4就是在找到的一处全0的空白地方自己写入的数据.这里我写入了两个技能<br/> 数据块共8行的数据.是在技能2数据块后插人的链表节点.所以除了4个DWORD指针和2个代表技<br/> 能代码和技能熟练度的DWORD之外,4行中的其他数据我都是原式不变照搬过来的.这样不至于<br/> 改得弹出来.注意看这两个新增加的数据块的指针和技能代码2的残空剑数据块的指针.</font>8, 修改结果见图5<br/><br/><font color="#ff0000">说明:这个方法未经多少测试,修改如果出了什么问题我可不负责,.呵呵.怕出问题记得备份存档<br/> 如果有什么疑问或者发现欢迎交流</font></span>
<br/></p><img src="attachments/dvbbs/2007-1/200711614403066031.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" /><br/><img src="attachments/dvbbs/2007-1/200711614404334247.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" /><br/><img src="attachments/dvbbs/2007-1/200711614405390140.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" /><br/><img src="attachments/dvbbs/2007-1/20071161441349634.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" /><br/><img src="attachments/dvbbs/2007-1/200711614411799138.jpg" border="0" onclick="zoom(this)" onload="if(this.width>document.body.clientWidth*0.5) {this.resized=true;this.width=document.body.clientWidth*0.5;this.style.cursor='pointer';} else {this.onclick=null}" alt="" /><br/> |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|