EMU618社区

 找回密码
 立即注册
搜索
查看: 782|回复: 0

[求助] 求修改高手做个ps2游戏补丁?

[复制链接]

签到天数: 80 天

[LV.6]常住居民II

发表于 2012-12-2 15:25:34 | 显示全部楼层 |阅读模式
      就是ps2的战国无双2猛将传,希望做个免联动补丁,因为模拟器不支持联动功能,而且金手指的全人物有bug,我找到篇三国无双4的免联动补丁的制作方法,希望有高手能做个战国无双2猛将传的免联动补丁。7 T, f6 C- c& Q2 K: q! Q  e" i
    众所周知,《无双》系统的资料片《猛将传》都需要在与原版联动之后,才可以玩到原版中原有内容。而且每次从新开始游戏都必须重新联动,十分不便。在下制作了《真三国无双3猛将传》的免联动补丁。可以免去烦琐的联动步骤,直接进入游戏就可以玩到所有原本需要联动后才可以玩到的内容。
0 Y* y/ I2 B" h+ Y: X+ T- _* m# ^) c
) L) r- o1 C+ \8 a《真三国无双4猛将传》的免联动补丁也与此原理相同。
$ h7 @' ?) R: q' D) L* N$ u9 @/ P& i# {/ K. q1 u  f0 `
程序在载入PS2的内存后,会在某个内存地址里保存一个值,用来判断游戏是否已经处于联动的状态。以353M为例地址是0x00369244,354M是0x0035d380,当这个地址保存的是0x00000001时,游戏就认定已经处于联动状态了。$ x! G3 Y" `* B* [

! p- V8 \0 ?3 u! O& x7 K再看353M载入内存后,在内存0x002db8e4处有这样一段指令:lw v0, $8dd4(gp),意思是v0=MEM[gp+$8dd4],其中v0正是指向0x00369244。这个地方的指令正是向0x00369244载入是否联动的状态值。我们只要修改此处的指令,令它强制载入表示已经联动成功的值0x00000001,这样游戏运行后,就会直接处于已经联动的状态了。. Z; z1 X9 x$ |
9 j" _$ z2 h2 x4 P' H: b
修改后的指令为:addiu v0, zero, $0001,转为HEX值是0x24020001。9 v. G7 M  n$ h3 N# Z

1 |8 s& n/ k% y. i! U接下来,就是修改ELF文件相应的位置为我们想要值。353M内存地址0x002db8e4对应的ELF文件物理地址为0x001dc0e4。用任意一种bin编辑工具打开ELF文件,将0x001dc0e4的值改为0x01,0x001dc0e5的值改为0x00,0x001dc0e6的值改为0x02,0x001dc0e7的值改为0x24,保存,大功告成~~~~~!
. G8 K( j: p2 a6 J2 ~! ]
4 I. t% u- x7 o0 M; D. K6 [----------------------------分割线------------------------------
1 D9 Y2 ]" F; f. k2 Y# U
. M9 H# b6 F1 n4 f+ V, q+ G
. F3 ^, |0 S0 a* T7 C0 o使用方法:将压缩包里的文件解压后,替换游戏镜像中的同名文件。需要刻盘的玩家推荐用Apache2.0修改镜像。
3 ?7 B/ @- G# i8 d& i0 H3 q6 B2 f! _. ]; m& F' W0 n% |4 N- ?
作用:免去烦琐的联动步骤,直接进入游戏就可以玩到所有原本需要联动后才可以玩到的内容。
0 A3 Z+ J7 p9 S0 I
( T/ k, F$ b+ u. B* G) M; o1 O注:此补丁仅供爱好测试使用,测试完毕后,请马上删除。不可用于商业用途。由此产生的任何问题与作者无关。特别感谢Anton兄。
+ u8 q; N+ Z# m" K- n& n) d- T$ J. Y# m/ t/ O1 z: P, w# S
[发帖际遇]: 李伟整理箱子竟然翻出了 6 个 柠檬. 幸运榜 / 衰神榜
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|国治模拟精品屋 ( 沪ICP备15012945号-1 )

GMT+8, 2024-9-24 14:20 , Processed in 1.093750 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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