EMU618社区

 找回密码
 立即注册
搜索
查看: 902|回复: 3

[原创] [怀旧]庆祝星际战机starfigh成功模拟,特放出修改心得以咨纪念。

[复制链接]

签到天数: 2552 天

[LV.Master]伴坛终老

发表于 2012-11-5 23:44:49 | 显示全部楼层 |阅读模式
前言:
! b' R9 G% k: J, |! s  R. ?# `0 V+ z2 m" u* y8 B. {7 H1 h
本人曾在小学二年级时就接触到《星际战机》这款游戏,由于该游戏的独特系统给本人童年时光留下太深刻的印象,导致即便是过了这么多年,当看到这款游戏模拟成功的图片后,一眼就认了出来。在此,不禁再一次地感谢MAME的各路大神们,正是有了你们辛苦的付出,才让我们能重温以前美好的时光(图01、02、03)。' j8 G9 l7 ?1 r3 Z6 p4 T
8 B0 n/ F, }2 a. v/ c; |* b
               图01(游戏标题)                                  图02(游戏画面)                                      图03(游戏画面)
- d( I4 p! g+ ^: p) D: [- n      
2 ?7 ]6 k( T' W
! e/ S% R) `1 `' l: f8 v: o( G
; U, u9 b1 I( R由于当时看到成功模拟的画面后太过激动,为了能在第一时间玩到此款游戏,便发动GOOGLE大神满世界寻找相应的MAME模拟器版本。功夫不负有心人,在各种FanQiang、搭梯后,终于下载到某外国友人最速发布的MAME 0.147u1版。因此,以下修改方法都是基于此版本(XP系统)而来的。另外,为了照顾不会使用原始MAME的朋友,在此简单说明一下使用方法。
; f. S7 k5 o1 D" Y  g2 M0 j! |; t8 ?8 |0 J4 B* B
将下载来的MAME 0.147u1解压至指定目录(如本人就是解压在D盘MAME2目录下),在此目录下新建一个名为“Roms”的目录,将游戏ROM——starfigh.zip放在此目录下(不用解压)。然后,“开始”→“运行”→“CMD”进入DOS命令行,依次输入(以本人目录为例,图04):0 E! s1 _) d2 e, `
* Q4 U  U* i, z$ m% U
d:  //此为注释不用输入,转到D盘。% t) g6 o4 v, O& S
cd mame2  //进入MAME2目录。5 R' @# S: R  m4 D: c
mame starfigh.zip -w  //运行游戏,其中 -w 参数是以窗口形式运行。' c# W" P* u& F5 Y3 O

! e% w3 S" s3 Z5 v7 U3 @图04(命令行截图)
+ j3 t% ~+ i7 V' P* I/ I7 W1 E- i6 P8 F6 ]

6 w& W7 U7 n' w( `$ k! E. i1 ~. Q! s) K" [( }5 H
MAME 0.147u1下载地址:0 h" ~" T3 l* ]
http://pan.baidu.com/share/link?shareid=102957&uk=2083477867# e. u: n/ }' K+ g  m
% j- N3 d+ ]" |6 m  S- ~  ^% j
星际战机starfigh下载地址:1 {: k: z4 ~$ _$ d! @% C
http://pan.baidu.com/share/link?shareid=102958&uk=2083477867  o$ N2 [7 t2 o; c0 x: E; G/ g
8 i/ C/ r9 `. d. f. b* h0 O

- M3 o" M( ]8 T2 t7 f- K& `看着成功模拟的画面,儿时的记忆在眼前一幕幕浮现。就当时来说,街机这样的产物在我所住的小镇,无疑是相当高科技的产品。还记得每天只有5分钱零花钱的我,2毛一次的价格在我心目中已经是天价。因此大多时候只能用羡慕的眼光看着别人玩。那时就一直希望什么时候能有机会将此游戏完整通关一次。想不到这一等居然等了这么多年。当重新玩上此款游戏后,发现该游戏的难度远超想像。为了能更好地通关,尝试使用了修改工具。一番摸索下来,积累了一些心得。在此分享出来,希望能帮到和本人一样喜欢此游戏却被游戏难住的朋友们。/ @! i1 q& Q4 v: ~+ e
) j" `; _. w- f8 _- Z' z( h
众所周知,原版MAME功能是很简陋的,因此以下修改方法所使用的工具为CheatEngine5.6.1简体中文完全版。此工具到处都能下载到就不提供了。$ W( J2 v0 X/ ^  L% G! B% L* H
1 _% ]2 x6 Q: M/ K: ?: p
本人修改任何游戏都有一个习惯,那就是会先从画面上最直观或最方便搜索的数值开始入手,以期打开突破口,这次也不例外。还记得当时是以Bomb数量为突破口才一一将其它相关数据找到的。那么,教程就从搜索Bomb数量开始。
6 ~  y8 C: @7 n. Q, C, Q0 Y; \0 A: ~  V
用CheatEngine加截MAME的进程后,用“精确搜索”+“字节”的搜索方式先搜索3,放掉一个Bomb后搜索2,如果此时地址不是唯一,再继续放掉一个Bomb再搜索1,直至找到相关地址。尝试修改数值并回到游戏看效果。如果在游戏中没有看到变化,需放一个Bomb使之变动一下才能看到效果。同理,照此方法搜索残机数量不再赘述。" p$ H5 k& _1 A) K1 l: \
; J' U- b$ E' |! `7 j$ Q
有了上面两个地址再找其它数据就方便许多了。接下来查找子弹类型。从游戏中得之,可以吃到的子弹分别是从1到8号共八种。先尝试用“精确搜索”吃到的相应数值,结果无法找到。此时,一般对CE比较熟悉的人可能会用“模糊搜索”+“增加、减少或变化等”去查找。不过当时,本人突然想到以前在查找其它STG类型的游戏时,残机及Bomb数量都是从0开始计数的。虽然此游戏不是这样,但子弹类型有没有可能是从0开始计数的呢?回到游戏重新开始搜索,搜索数值为“精确数值”+“当前所吃子弹类型数值减1”,几番下来果然找到正确地址(期间可通过肉眼观察与上面地址相临的地址,这就是所谓突破口的意义)。
& B0 g/ i* l- U0 W* A6 w2 j9 ~6 z: l4 ?# W8 x( Z: V
此时虽然可以通过锁定残机及Bomb数量来实现无限,但对于完美通关还是有些不爽。因此还需继续努力查找相关数据。这时咱们来搜索STG类型中最吸引人也是最强大的数值——隐身时间。此类数值的变动一般有两种情况:一是不断增加,当增加到一定数值时隐身停止;另一种则相反,初始便有一个数值控制隐时间,游戏开始后便开始递减,直至为零。以本人经验来说,大多数STG,特别是早期的STG都会采用后一种方法。因此,查找方法则为“模糊搜索”+“减少的数值”。$ M& X6 b1 V) R  j. u7 v  C" z

1 w4 ?- P5 R' C1 r0 p具体为:游戏开始后,自机一进入隐身状态且操作时按“P键”暂停,先用“模糊搜索”查找一次,然后以间隔极短的时间连按两个“P键”让隐时间稍为减少一点,返回CE查找“减少的数值”。如此反复(期间可在暂停时夹杂使用“没变动的数值”来过滤无效地址),直到地址不能过滤为止。此时剩下的地址可能还有不少,这时可将与之前所找到残机等地址相近的地址全部锁定,然后分别解锁,来找到其中真正的隐身时间地址。6 W# T' a5 [0 O9 p" I7 n9 `8 C3 Q

0 o  F2 k1 T, k9 f# Q
0 H3 g! C1 j) g% m/ }* j  r在找到这四个地址后,细心查看会发现,这四个地址彼此之间相差并不大,再想到以前的游戏容量受制于硬件的发展,变化范围肯定不会大到哪去。大胆猜想,小心求证一向为本人修改游戏时的宗旨。当时就认为其它数值可能会在0-255一个字节之间。接下来搜索要限定查找范围以便能更快地找到所要的地址。做法为(以本人电脑上的Bomb地址0D23102B为例):将搜索范围改成0D231000至0D2310FF。果不其然,限定范围后,在查找自机合体形态时,用“模糊搜索”+“增加的数值”很快就找到相应的地址。  r: O! ~- f  Q3 K+ t1 N( v- E$ _
, J5 C' O: ^% [  {" K5 o1 W/ n
其实,当时找到子弹类型时就应该想到用此方法,这样在找隐身时间时便会少走很多弯路。再说回游戏,虽然此时找到了合体形态地址,但修改此数值后发现对自机火力没有任何影响,因此对通关也没有什么帮助。看来自机火力另有地址控制。
$ V( G4 J5 l/ M( d4 _' G) n  l  G
; l5 J7 W# p, V本着“授人以鱼,不如授人以渔”的目的所发布的这篇修改心得,除了想与大家分享相关的思路及处理方法,希望能有更多的人加入到修改党的队伍中来以外,更多的是为了方便使用其它MAME版本的朋友能自行查找,以免直接给出的地址或修改器能使用不了。所以,另一重要数据——自机火力就交由于大家自行查找吧。提示一点,用搜索子弹类型的思路。如果不想查找的朋友,可直接参考以下相关地址的说明(即:只需找到其中一个地址,然后修改最后两位数值便可得到其它地址)。
  I* p. i" y; H' Q3 U0 Q: `* F3 Z3 y1 T1 i" X: Y1 \. }
BOMB_1-2-3_2B  //从1开始,地址最后两位为2B,下同。
$ d. U* [7 z/ O4 x. G, a9 C2 P2 `Life_1-2-3_33  //从1开始,地址最后两位为33。
- G( i/ R/ c. K隐身_MAX=192_27  //地址最后两位278 o( m( S7 ^4 h: m) g+ g3 l
子弹类型_从0开始_23  //地址最后两位23
, K, I, g/ N: U1 S# ?# l5 X合体形态_16-24-32_15  //地址最后两位15
" f& y8 w0 c1 K- r% QPower_0-1-2_26  //地址最后两位26
( v; e" y' }7 j7 b自机各种状态_过关前需解锁  //除锁定0为无敌外,其余数值为自机各种动画表现。3 {0 }. Y8 d, l2 [# S
/ a. ?0 @6 K  G5 T9 R7 N' d$ Y
最后,附上本人的CT表以方便不愿搜索地址的朋友,但此CT表必需搭配本人提供的MAME使用。其中“BOMB其它扫描指针”及以下地址全是用CE自带的指针扫描功能所找到的指针,虽然在本人电脑使用没有问题。但不保证其他电脑或系统能正常使用。不过,只要其中一个指针能正常使用,便可按照上面地址说明的方法修改来得到其它地址。
7 Y- d! o  h  f8 }' F
. W! d# |/ O; D8 {8 KStarfigh星际战机_CT表下载地址:
4 D! u  z+ d! k) f4 {& p) y1 o7 t* }) zhttp://pan.baidu.com/share/link?shareid=103045&uk=2083477867
7 A/ N, a% V9 P1 j2 y: h
) i3 N. b$ I# Y5 u6 X" t图05(CT表)
. L' I* s" F1 n1 n

签到天数: 896 天

[LV.10]以坛为家III

发表于 2012-11-6 06:20:36 | 显示全部楼层
儿时的游戏,心中的永恒

签到天数: 71 天

[LV.6]常住居民II

发表于 2012-11-6 13:05:54 | 显示全部楼层
好游戏啊,游戏还是很难玩的。{:4_104:}

签到天数: 1296 天

[LV.10]以坛为家III

发表于 2012-11-6 17:25:19 | 显示全部楼层
用命令行的版本,楼主也是高手。
[发帖际遇]: 一个袋子砸在了 qqture2005 头上,qqture2005 赚了 2 个 柠檬. 幸运榜 / 衰神榜
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-4-22 11:01 , Processed in 1.152344 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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