CPS模拟发展简史
2007-07-05 | 来源:互联网 | 小编:neoragex | 人看过
CPS的全称是Capcom Play System,是日本著名的游戏制作厂商Capcom于上个世界80年代末开发的街机基板,并分为CPS1,CPS2,CPS3。其中最为成功的要数 CPS1和CPS2两个系列,在它们上面开发出来无数的不朽名作,如我们大家都熟悉的街头霸王、圆桌骑士、龙与地下城等等。CPS3虽然仍旧是2D基板,但是机能相当强劲,并且它使用了CD-ROM作为数据交换设备,可以说是同类基板中性能最好的一款。但是由于种种原因,目前已经停产了,Capcom后来开发了3D的ZN-1基板用来取代它。基于CPS3的游戏不多,只有几款而已。CPS的模拟是所有模拟器爱好者的一个梦想,和它比起来,什么SS、 System16甚至DC的模拟都不太重要了,因为它已经差不多已经让人持续等待10年了。
提起CPS的模拟,就不能不提到Bloodlust小组里的Sardu,可以毫不夸张地说,是Sardu一个人开创了CPS的模拟之路。1997年底,诞生了一个叫Bloodlust的小组,这个小组一共开发了FC的NESticle,MD的Genecyst和CPS1的Callus,在这三个模拟器之中最为轰动的就是Callus,Callus的诞生直接导致了一场街机模拟的狂潮。Bloodlust的核心人物就是Sardu,他是最主要的Coder,而其他的成员基本上只是做一些表层上的工作。这里稍微年龄大一点的街机玩家相信都对Callus印象非常深刻,因为它对CPS的模拟完成度相当之高,而且支持录像、联机对战等等现在很多模拟器都不具备或者是不完善的功能,除此之外,另一个原因就是Callus的图标。关于这个图标有两种说法,一种说法是这个小头像是Sardu本人,另一种说法认为这个头像其实就是萨达姆。后一种说法比较流行一点,因为Sardu本人的行事作风确实有点离经叛道。如果这种说法属实,不知道现在还在美军监狱里蹲着的老萨有何感想。1998年初,Q-sound成功的被Sardu解密,ROM一个接一个的被发布出来。 Callus的模拟完成度是如此之高,就算是现在,很多人都认为Sardu写的68000的核心代码是最完美。所以在当时,理所当然地,很多人认为 CPS2的模拟已经近在咫尺了。但是Sardu却遇到了前所未有的困难,已知的所有手段在CPS2的保护下都失败了。当时已经发现CPS2的ROM中图形数据和声音数据采用的加密方式与CPS1相同(Callus的附属Qsound.exe就可以听CPS2游戏ROM的BGM),所以很多爱好者都认为 CPS2只是CPS1的一个加强型基板,但是无论采取什么手段都无法正常运行ROM。Sardu认为,应该有一个随机数作为密钥把ROM中程序的部分加密了,而68000核心代码体积并不大,理论上用穷举的办法是可以找到这个密钥的。于是,无数的爱好者利用业余时间加入了这个穷举搜寻密钥的联合行动当中,可惜最后每个人都报告没有发现有价值的东西。到了1998年底,由于在CPS2的模拟上受到重挫,加上NESticle的代码被黑客窃取并散发,使得 Sardu对模拟器的开发彻底灰心了。不久,Bloodlust宣布解散,6月24号发布的Callus0.42版成为绝唱。Sardu去EA做了一个普通程序员,一代天才就此销声匿迹了。这个时候,很多人猜测Capcom是不是在硬件上做了手脚,因为CPS2基板上还有大量的未知芯片,如果Capcom 采用硬件逻辑技术加密的话,CPS2的破解除非Capcom愿意公开一些资料或者企盼有奇迹能够出现。
经过漫长的等待,奇迹还是出现了,2000年底,破解组织CPS2Shock宣布已经找到破解CPS2游戏的办法了,他们开发了一个叫CPS2 Hacker,直接运行在CPS2硬件上的软件,这样可以dump出解密的CPS2游戏ROM。2001年1月4号,CPS2模拟历史上另一个天才 Dave发布了FinalBurn0.060版,近乎完美的模拟了After Burn,Street Fighter Zero等几个CPS2游戏。和他的前辈Callus还有后来的impact一样,这个模拟器一出世就引起了轰动,很多人都认为作者Dave借鉴了 Sardu还有别人的代码,这个后来作者本人也亲口承认了。但不管怎样,无论是从模拟的速度、硬件的要求以及图像质量上来说,Finalburn都是佼佼者。为了打消Capcom的顾虑(毕竟游戏公司是要靠卖游戏吃饭的),CPS2Shock宣布他们将会遵守"三年原则",做有道德的dumper,即只 dump那些发布三年以上的老游戏。这样既满足了玩家,也保护了厂商的利益,如果在模拟器上可以玩到老游戏,对于保持游戏制作厂商的人气也是有好处的, Capcom何乐而不为呢?就这样Capcom默许了dumper的行为,而新的ROM异或表(xor)也一个接一个的被发布了,看起来一切都在顺利地进行当中。然而好景不长,lamer们在这种场合永远都会来凑热闹的。由于Finalburn总是比MAME晚几天支持新游戏,他们开始抱怨Dave开发的速度太慢,不肯支持新游戏,和CPS2Shock一丘之貉玩弄大家(因为三年原则CPS2Shock早就被骂得狗血淋头了)。后来和Dave争论 "Turbo"游戏的速度直接发展到人身攻击的地步。最终的导火索是Nebula,当Dave最初看到Nebula的截图时,在retrogame留言,认为这个还没有诞生的模拟器有可能是假的。随后就有人攻击Dave自大到容不得还有另外一个人可以模拟CPS2的地步,是个"十足的人渣""+++"加"傻 B"。由于在先前的一次采访中Dave泄露了一些有关他家人的情况,疯狂的攻击最终连他的家人都未能幸免。最后,在2001年的中国清明节那天, Nebula正式发布的第5天,Dave关掉了Finalburn的主页,伟大的Finalburn最终夭折在了0.113版(其实官方的最后一版是 0.114,不过0.114只不过是从新把游戏列表按照字母排了序,并没有任何实质更新) 。虽然后来Dave复出,但是已经和CPS2没有任何关系了,只是为世嘉MD的模拟补齐驱动而已。
伟大的Dave在离开之前,把所有的代码都提交给了MAME,所以CPS2的模拟器并没有停止,Finalburn的各种hack版本和非官方版本层出不穷。另外由于MAME是开源的,任何人都可以得到代码,CPS2的模拟器从此进入了战国时代,很多支持CPS2的街机模拟器涌现出来,但大部分都是昙花一现。比如Calice32,曾经是被认为一个很有前途的模拟器,开发了几个月就没有再更新过,虽然到现在主页还在。后来持续开发并且比较成功的要数 Nebula和WinKawaks。Winkawaks比Nebula出现的要早,但是第一个版本的完成度就相当之高,于是有人猜测可能是Dave参与了 Winkawaks的开发,只不过碍于面子没有公开而已,但是这个说法始终没有得到证实。不管怎样,大多数的玩家要的只是能够在电脑上回味一下经典,过把瘾而已。随着时间的推移,这两个模拟器不断完善,成为目前主流的街机模拟器,而其他的对手早已成为了回忆。
当所有的coder,dumper和player在平和中度过了一年之后,lamer们又出现了。这次是由KOF引起的,MVS基板上的KOF(格斗之王)系列是SNK的代表作。SNK对于模拟太过于温和了,在KOF99以前是没有加密的,从99开始才有了加密,然而在展览会上KOF99 beta版的基板被人盗出,dumper们发现这块测试中的基板是没有加密的,结果几乎就和游戏正式发布的同时,很多人的电脑里就有了KOF99的 ROM,不过由于是测试版,游戏有点遗憾,声音档和部分图像档是有问题的(相信那个时候很多人都记得所有的必杀技角色叫声一模一样),这个问题在后来解密了正式版的KOF99才得到了解决。KOF2000之后的加密很快被人解开,ROM也迅速发布,但是由于模拟器的作者们仍然遵守职业道德,出于保护游戏制作厂商的目的没有支持新发布的KOF游戏,lamer和coder之间的战争开始了。有人hack了Nebula和WinKawaks使得它们能够支持新发布的游戏,包括KOF2000,KOF2001,龙吼,甚至还有人拿了新dump的ROM卖给D商,当时的"白河愁事件"可是热闹了好长时间。最后的结果,SNK这个以制作格斗游戏称雄的公司彻底破产倒闭。2003年的4月份,Winkawaks宣布由于许多lamer不道德的行为,永久性停止开发, 1.46版成为最后一个官方版本。而Nebula虽然采取了种种手段和lamer对抗,但是收效不大,后续版本只是添加Model 2和NEOGEO CD的支持,而且已经很久没有更新。CPS2的模拟到此也基本上算告一段落。
然而有关CPS的故事还没有完,CPS3的模拟至今尚未解决。只有解决了CPS3,才算是为这个故事画上了一个圆满的句号。目前还有不少人不懈的努力着,继续Sardu和Dave的工作,所有的模拟器爱好者都在期待着CPS3被攻克的那一天。也许不久的将来,还会有另外一个天才横空出世。而我们所能做的,就只有等待......