«[转] Galgame 汉化-引擎识别及剧本提取»
by pluvet on Feb 4, 2019

辨识工具:
https://www.rapidshare.com/files/421349393/gamepackid.rar

GALGAME汉化-引擎识别及剧本提取

美少女游戏的系统,虽然不能说是游戏的重点,但是却能左右玩家对整个游戏的感觉。“泛用游戏引擎系统”指的是某些程序设计师开发出来为了制作游戏的“shell”接口或是链接库。换言之,有了这个接口,制作公司只需要把剧本(文字)、声音、图片直接套进去就能生成一个游戏。
资金足够的公司可能会专门开发自己专用的系统,但是泛用系统因为不需要额外开发程序,而且价格较便宜(甚至免费),比较受到小型制作公司青睐。
另外有人会问,像VA的Realive/AVG32系统和light的Malie系统这种到底算不算?我觉得只要是自己开发提供给自己公司(或子公司)的封闭系统就不能算是“泛用引擎系统”(Realive/AVG32系统是由VA旗下的versammlen开发)。
下面我会简单介绍一些有名的Galgame泛用系统,当然类似的系统可能相当多,我只能列出部分(后面关于破解方面的讲解时会深入讨论):

  1. Nscripter/作者:高桥直树

在2000~2003年很常见的AVG系统,我觉得应该算的上是这类泛用系统的始祖之一,因为系统构造简单,虽然使用?举型的语法也不会太复杂,作为一般AVG或Visual Novel形式的游戏相当合适,所以被相当多同人和商业公司采用,其中不乏名气很高的游戏。
最近几年因为游戏在系统上需求越来越高,Nscriptrr感觉就有点力不从心,所以有渐渐退出的趋势,它已经逐渐被吉里吉里、Buriko和Majiro系统取代。顺便一题提,作者本身是编剧家,参与不少美少女游戏的脚本设计工作。
代表作:水色,朱-Aka-(猫猫),月姬(type-moon),はにはに(AUGUST),はじめてのおてつだい(StudioRing),ひぐらしのなく顷に系列等。

GALGAME汉化-引擎识别及剧本提取
GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取

  1. 扩展名视版本而不同,2001年以前的旧版本有.sar档,但是之后的版本大多是.nsa档。
  2. 档案组成: arc.nsa+nscript.dat+.env,这些档案就能确认是Nscript系统。
  3. 存盘在savedata目录下,扩展名.dat(存盘有index依存性,挂别人的savedate会造成原来的存盘无法使用)。

※圈圈社《はじおて》的档案组成:

图档和音声,SE通常都是压缩在不同的数据文件里,推荐使用“Spi_NScripter”这个工具,对新旧版本的档案都支持的很好;“ExtractData”同样对应,但是对旧的sar格式支持性不佳。Nscripter没有特殊格式的图档或音声档,抽出的档案都是常见的bmp/png、ogg/wav,不需作特别处理;BGM有时没有经过压缩,音乐档案直接放在BGM子目录下(更旧的游戏有时甚至可见CDDA)。剧本方面所有版本的nscripter剧本都是在执行文件同样目录下的“nscript.dat”这个档案,用“NSDEC”这个工具可以对应。
※05年圈圈社的《はじおて》抽出的剧本和CG:
GALGAME汉化-引擎识别及剧本提取

  1. 吉里吉里/作者:

历史和Nscriptor差不多,但是靠着2004年的超人气游戏《Fate》才让人开始知道吉里吉里这个泛用系统。使用的TJS语法采用类似javascript风格并不困难,加上主体KAG3系统的功能强大,无论是最简单的小说形式游戏或是需要华丽画面的效果都能应付自如,另外,外挂功能还能让系统支持更多种类的档案形式。当然最重要的,吉里吉里依循GPL是免费使用的。另外,KAG3系统因为支持unicode,所以对国内有些有志之士发展游戏中文化很有帮助~
代表作:Fate(type-moon),Sugar+Spice!(Chuable),あかべぇそふとつぅ所有作品,ゆずソフト所有作品,还有一堆同人游戏采用。
GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取

系统有两种不同的结构,下面是比较常看到的式样。

  1. 扩展名.xp3。
  2. 档案组成: data, fgimage, bgimage, scenario, video, voice,还有一种是单一data.xp3一个档案。

※柚子社《ExE》的档案组成:

GALGAME汉化-引擎识别及剧本提取

※樱桃小学校的《放课后にゃんにゃん俱乐部》档案组成:

GALGAME汉化-引擎识别及剧本提取

  1. 存盘在savedata目录下,扩展名.ksd+bmp(预览的bmp是必须档案)。
  2. 所有xp3数据文件的文件头有XP3字符串,后面跟一串版权的警告文字:

GALGAME汉化-引擎识别及剧本提取

  1. 主程序的档案信息可以看的到TVP 2 core等字符串和版本号:

GALGAME汉化-引擎识别及剧本提取
另外一种是把数据文件和程序融合在一起的,其实中身的数据和一般xp3格式并无差别。

※Q-X社《ひめりり》让人错愕的单一档案:

GALGAME汉化-引擎识别及剧本提取

当然还有一种是把程序和个别的xp3档案融在一起这又是少数了。

这个系统出过不少名作,所以感觉是被研究的最多的一个系统,不过如果只是单纯要抽取档案的话就不需要太深入。我还没研究过吉里吉里的SDK,不过不同公司做出的xp3数据文件总有微妙的差异常常造成档案抽取失败,在susie plugin有“ZZ'z Factory”的“axxp3”和“Simple is Best!”的“spi_xp3”比较有用,不过如果不想跟奇怪的offset奋斗,还是用ExtractData最快,它甚至也支持“数据文件+执行文件融合”的类型,整个档案丢进去就能辨识,拆解不需要像过去提到的步骤这么繁琐。
另外,虽然大部分抽出的画像都以png为主,不过吉里吉里自己有特殊的TLG格式画像,不过使用这种格式的游戏并不多(事实上OHP好像也停止公开),总之同样是Simple is Best!也有公开“spi_tlg”,不过用了几次觉得兼容性不太好,ExtractData也可以使用,不过兼容性不太确定,看人品了……
所有吉里吉里的剧本都一样用xp3档包装,本身没有再经过其它编码,脚本的扩展名.ks直接是是纯文字文件,偷懒啊。
※高质量社“四叶DVD”的破解状况:
GALGAME汉化-引擎识别及剧本提取

  1. EntisGLS/作者:Leshade Entis

也是颇有历史的系统,不过EntisGLS并不是一个shell,而是一群处理各种形式档案的链接库,所以开发游戏的难度要困难的多,也不知道是不是这个缘故,以EntisGLS为系统的游戏很少看到做的好的。这个系统比较特殊的是它独自研发的“ERI CODEC”是在音声或图片失真相当少的压缩技术,另外,作者本身也会作画,甚至自己开发同人游戏。
代表作:颜のない月(Orbit),re-laive(KLEIN),さくらむすび(CUFFS),こんねこ(Marmalade)。
GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取

GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取

系统同样有两种不同的结构,差别在数据文件有没有经过打包。

  1. 没有经过打包的扩展名是eri(图像)+mio(声音);打包之后的扩展名全部都是.noa。

※CUFFS社《さくらむすび》的档案组成:
GALGAME汉化-引擎识别及剧本提取

※CUFFS社《Garden》的档案组成:

GALGAME汉化-引擎识别及剧本提取

  1. 上面几种格式的档案,档头都有Entis字符串,后面跟着该档案的形式描述:

GALGAME汉化-引擎识别及剧本提取

  1. 存盘在save目录下,扩展名.dat。

03年以前的GLS仕样完全不同就不提了,目前看到的形式就是资料文件有无压缩的差别而已,一般看到是以EMSAC-Binary Archive(.noa)格式压缩,拆开来则是entis有名的可逆压缩“Entis Rasterized Image”格式画像.eri(昵称エリちゃん)和“Music Interleaved and Orthogonal transformaed”格式声音.mio(昵称ミーオ),这系统和别人不同的地方是,它除了提供开发的SDK以外,还公开所有的拆解工具,所以上面这些格式的拆解工具(包含noa档的浏览器,eri档的susie plugin和mio档的winamp plugin)全部都在“Entis OHP”找到。
剧本方面为“Entis Cotopha Image file”(.csx)格式,有的是包在noa档里,也有不在里面的,例如CUFFS社游戏的剧本就是system目录下的csx文件,可以利用“notaエロゲ研究室”里面的工具“cuffs_con.exe”来抽出剧本(工具的使用方法很简单,也有提供批次档,所以就不说明了)。
※CUFFS社《Garden》的破解状况;
GALGAME汉化-引擎识别及剧本提取

  1. Buriko General Interpreter / 作者:Darios Sawm(Buriko)

又名Ethornell,系统本身细节不明,2002年这个系统首先被root/Clover社采用的时候偶还以为是他们开发的,不过04年以后发现越来越多公司也在使用这个系统,判断不能……有人认为开发者集很多系统之大成做的,另外DirectX用的颇多,只是系统在目前一般的设备下不会觉得负载很重,流畅度也有保证,虽然不知道script编写难易度如何,但是看到不少商业作采(改)用(例如root和AUGUST分别从Entis和Nscripter改用),想必应该有它过人之处吧。顺带一题,BGI系统最近成立公司“Buriko社”,为游戏公司提供外注的系统开发服务。
代表作:ている?ている(CLOVER), あけるり/FA(AUGUST), H2O(枕), Lump of sugar社所有作品。
GALGAME汉化-引擎识别及剧本提取

GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取

  1. 扩展名.arc.
  2. 档案组成: data, scenario,voice,fastdata, slowdata,stream;其中data.src、fastdata、slowdata的内容是CG、立绘和SE音效文件。

GALGAME汉化-引擎识别及剧本提取

  1. 存盘在savedata目录下, 扩展名.sav。
  2. 所有arc数据文件的文件头有MajiroArc字符串,并且有版本号:

GALGAME汉化-引擎识别及剧本提取

这个系统也经过多次改版,结构大致一样但是数据文件的仕样有改变,基本上所有档案用arc格式包装,另外画像也是特殊格式,旧版的扩展名.bg(或是._bg),新版没有扩展名,格式似乎也不同,过去我曾破解过过AUGUST的《あけるり》,用的工具是“DECTEIRU”,不过现在ExtractData都能对应就不用这么麻烦了。
剧本方面依照版本不同,存放的位置和格式也不一,基本上旧版会在scenario.arc里面的格式“._bs”,新版会在有序号的数据文件里面的第一个(例如data01xxx.arc),自身脚本无扩展名。破解方法是先用ExtractData解出源文件,再用“notaエロゲ研究室”提供的工具来解出。
下面我分别找到手边版本最旧和最新的BGI系统游戏来示范:
※02年Clover社《さよらなエトランジュ》(BGI版本V1.00 build:266.1):

GALGAME汉化-引擎识别及剧本提取

※08年AUGUST《FORTUNE ARTERIAL》(BGI版本V1.69 build:438.1),剧本用“キラ☆キラ”的拆解程序“kira_con.exe”提取:

GALGAME汉化-引擎识别及剧本提取

  1. MAJIRO Script/作者:越畑声太

这个系统的资料就更少了,猫猫在2004年的“麻雀”首次将系统从Nscripter改为这个系统才开始注意到。系统作者似乎只受注写作系统,并且同时担当script编写,过去从SIESTA社和棉花社的日记和访谈中大概是这种感觉,当然因为是作者自己开发的系统,script的错误会减低很多。另外我过去小小研究一下这个系统就感觉,这些2D AVG的引擎构造似乎都有点像(例如Buriko,Majiro,Remain/Alcot系和ケロQ最新的系统)。
代表作:Scarlett(猫猫),SIESTA社所有作品,棉花社(猫猫社现名)所有作品。
GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取

  1. 扩展名.arc.
  2. 档案组成: system/sysgrp/sysprg.arc这三个是系统相关文件,其它的数据文件名称不定,但是通常是有序号的档名,例如data*.arc。

※糖块社《Nursery Rhyme》档案组成:

GALGAME汉化-引擎识别及剧本提取

※AUGUST《FA》档案组成:

GALGAME汉化-引擎识别及剧本提取

  1. 存盘在游戏相同目录下,档案.sud+bgi.gdb。
  2. arc数据文件的文件头有PackFile字符串,随后跟着该资料文件的index:

GALGAME汉化-引擎识别及剧本提取

  1. 比较新版本的BGI系统可以从主程序的档案信息看到Ethornell等字符串和版本号:

GALGAME汉化-引擎识别及剧本提取

猫猫在放弃Nscripter后继改用的系统,目前可以看到V1.000和V2.000两种版本。
CG和音效分散在data/slowdata/fastdata*这些档案里面,CG的画像格式则是Majiro专用的rct/rc8图文件,档案含有alpha-channal信息,其中对V1版本,“ZZ'z Factory”有公开susie plugin,但是对CG处理有问题,所以建议只在抽剧本时使用,至于“ExtractData”则同时支持V1和V2两种版本。
剧本方面所有剧本存在于scenario.arc(或update)中,里面是经过加密的mjo(MajiroObject)格式,这个要利用“Majiro Development kit”来拆解,该程序似乎是有人为了开发其它语言版本用的工具。如果是“MajiroV1”,直接用上面提到的susie将mjo剧本档抓出,然后用mjdev里面的“mjcrypt.exe”先将mjo档案转换成bytecode檔,然后用“mjdisasm.exe”将bytecode档转换成sjs剧本档和mjs脚本。
※使用MajiroV1的猫猫《Scarlett》的arc中身和抽出的其中一个剧本档:
GALGAME汉化-引擎识别及剧本提取

“MajiroV2”就完全利用ExtractData来抽取,但是注意抽出的剧本是.txt档内容已经是bytecode格式,但是这个档案喂给“mjdisasm.exe”却不能转换,因为缺了档头,所以要自己加上去。
ExtractData抽出的bytecode剧本档:

GALGAME汉化-引擎识别及剧本提取

加上40 byte的档头之后;

GALGAME汉化-引擎识别及剧本提取

※使用MajiroV2的SIESTA社《ぱすてる》拆解状况:

GALGAME汉化-引擎识别及剧本提取

  1. YU-RIS/ERIS /作者:たくみ

同样是提供免费下载使用的游戏引擎,但是知名度却远不如上面的几个系统。从OHP上的介绍看来,YU-RIS是AVG游戏引擎,ERIS是链接库,使用的脚本类似C语言的?举型语法,系统本身似乎不特别突出,不过利用DirectX的画面处理方面效果明显。另外不能不提的是,2006年银时计社利用YU-RIS开发的SLG《おたく☆まっしぐら》bug相当严重,在当时造成很大的话题,一方面可能这个系统的脚本编写真的比较困难,当然另一方面看出要用AVG引擎开发SLG也是相当失策。
代表作:お嬢様组曲(symphony),らずべりー(戏画),Whirlpool社所有作品, CLOCKUP社所有作品。

GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取

  1. 资料扩展名.ypf,全部位在pac目录下;

※symphony社《大**组曲》档案组成:

GALGAME汉化-引擎识别及剧本提取

  1. 所有ypf数据文件的文件头有YPF字符串,档案结构不明:

GALGAME汉化-引擎识别及剧本提取

  1. 存盘在save目录下,扩展名.dat。

老实说,对这个系统根本不熟,因为只碰到过一次,所以只能拿那一个作品来举例。剧本/CG/音声/BGM都是包装在ypf档案中,所有的档案都可以用ExtractData拆开,抽出的图片和声音分别是常见的bmp和ogg格式,并没有其它特殊规格,唯脚本是格式不明的.ybn档(档头YSTB),crass能解部分,但需要相应的插件。
※05年Symphony社的《大**组曲》CG档内容:

GALGAME汉化-引擎识别及剧本提取

  1. sketch / 作者:薫(retouch)

2004年Lotus社的《空色》是第一次看到这个系统做的游戏,sketch是这个引擎的核心系统,以retouch这个链接库环境来开发游戏,最后开发出来的游戏还要利用ExHIBIT来执行。系统本身不使用DirectX,画面的处理完全靠自己的核心系统,事实上视觉效果上面处理还是不错的,但是副作用是对系统的负载偏高……sketch系统在retouchOHP也有提供免费版本下载。
代表作:空色の风琴(LOTUS),エーテルの砂时计(Dreamsoft),白银のソレイユ(SkyFish),Clear(MOONSTONE)。
GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取GALGAME汉化-引擎识别及剧本提取

这个系统的数据完全没有作packing,所以档案数量惊人是特征之一。

  1. 扩展名是.gyu(图像)+.v(声音)。

※SkyFish社《ふぁみすぴ》档案组成:

GALGAME汉化-引擎识别及剧本提取

※MOONSTONE社《Clear》档案组成:

GALGAME汉化-引擎识别及剧本提取

2.存盘在userdata子目录下,档案是system.dat+无扩展名的savedata。
3.使用的loader主程序ExHIBIT.exe档案信息可以看的到“Copyright(C)2006-2007 薫”版权告和版本号:

GALGAME汉化-引擎识别及剧本提取

所有档案没有压缩,所以也没有拆解的问题。图像格式.gyu用”ZZ'z Factor”的“ifgyu”对应,音声格式.v转换方法暂且不明……剧本档.rld用“notaエロゲ研究室”里面的“はるかぜどりに、とまりぎを”的拆解程序“harutoma_con.exe”可以解决。
※MOONSTONE社《Clear》的破解情况,用Acdsee挂ifgyu浏览是最轻松的方法:
GALGAME汉化-引擎识别及剧本提取

  1. Macromedia(Adobe) director/ 作者:Macromedia

可能有人觉得意外,虽然大部分看到director制作的系统都是以简单的fandisk为主,但是的确也有用它制作一般的AVG游戏。director系统的特点是容易开发跨平台(Mac系统)游戏。Macromedia不算是小公司,这程序如果要用来开发商业作品想必要支付不少专利费,所以已经很久没看到director系统制作的游戏……
代表作:犠母妹/Deep Fantasy(Selen),Pia3 ヒロインズFunBox,すきしょ系列(プラチナれーべる)
GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取 GALGAME汉化-引擎识别及剧本提取

其实有PC和Mac两种,后者就不提了。

1.扩展名.cxt(包装的数据文件)+.dxr(专案档)。
※白金标签社《すきしょ3》档案组成:

GALGAME汉化-引擎识别及剧本提取

2.使用的播放器主程序档案信息可以看的到“Macromedia Projector”字符串和版本号:

GALGAME汉化-引擎识别及剧本提取

这是商用程序编出来的东西,搞不好有该程序的人就可以直接读取(没试过)。CG/BGM等数据和脚本都存在cxt或dxr档中,可以用“AXDXR.SPI”拆开,唯只有CG档案可以辨识,拆出dx_的CG档再用“IFDXR.SPI”读取即可。

※白金标签社《すきしょ3》的CG内容:
GALGAME汉化-引擎识别及剧本提取

※F&C社《Pia3 Funbox》的CG内容,Acdsee挂上“IFDXR.SPI”可以直接读取:

添加新评论