记第一次从gal中解包提取素材和剧本

0. 前情

从9月开始,我的gal时间就是素晴日了,最近一口气在几天时间内完成了游戏的90%内容,三个结局,希实香线,HE线都全部通关了。我特别喜欢素晴日,而我表达喜欢的方式就是收集它相关的所以资源,各种cg立绘音乐cd特典什么的全都想要。而我去寻找cg时,发现那篇帖子的资源链接已经被百度封了,于是只得自己动手开干,这就是背景。

1. 游戏解包&CG提取

从帖子中得知了解包用的软件是GARbro(这个名字我不忍吐槽,我还以为是我误看了pro),之后一切都非常顺利,成功从游戏中提取了图片,视频和音频。毕竟是10年前的游戏,就算是10周年特别版也没有修改底层系统,所以轻松提取了,全程傻瓜式操作。我发现这个系统和脏翅膀的系统是同一个。提取图片时我选择了转换格式为png,为的是最大的清晰度,当然文件体积也涨了好几倍。

2. 剧本提取

这一部是耗时最多的一步,原因在于剧本文件的编码。

在游戏目录中arc的1开头的文件,正是游戏脚本文件,利用GARbro可以轻松提取出来,我尝试了很多编码,但无论用什么编码打开文本,浮现的始终是乱码。

这里推测可能性有两种,一是编码不对,二是编码大体是对的,但更重要的在于BGI系统自定义了许多的编码,或者是打乱了正常的编码。于是乎想要解决这个问题,我要么自己去核对推测编码自己破解,要么去找现成的轮子,别人已做的工作。我肯定选择后者,于是我开始了搜索,在汉化吧里面搜索“BGI”时我发现了线索,这将我引到了github,然后一下子找到了decoder。

这个是C#编写的,不过也不需要我理解除非我要看看它是怎么处理字符的。我用vscode编译了之后得到了docoder,就已经可以用了,但我还是瞥了眼代码。多么详细的注释啊!加上C#代码不是难理解和我编写小工具的经验,我觉得如果我想研究的话,我肯定看得懂!谢谢你,xupefei超人!!!你拯救了我的爱!

好了,现在问题来到了最后一步。游戏脚本文件是很多的,我总不可能一下一下每个文件去运行吧?于是我想到了bat批处理脚本。在我快速回顾遍历bat脚本后,我惊讶地发现我需要的bat脚本只需一行代码:for %%i in (.\other\*) do ( ScriptDecoder.exe %%i) ,当然还可以在后面加个重定向,更加舒服。问题就此解决了~我成功得到了游戏脚本。在我后续对脏翅膀提取剧本时,又出现日语编码问题了,待续未完。

3. 结尾

不可全部否定功利主义是我的结论,所以我将成果发到了贴吧上祈求别人表扬~但功利主义始终不是我的结果,我想要幸福地活下去!无论是艺术形而上也好,还是悲剧人生(目前我喜欢的哲学家可不是叔本华和尼采,而是康德。我之前一直觉得数学是唯一真神,超脱宇宙,而当我在阅读纯理性批判时,感受到了康德也是位非常像数学家的哲学家,先天分析判断是数学似的)。

“我喜欢的人是……诗人……也是剑客……哲学家……还是空气力学的先驱者……” 我会写很多东西来纪念,表达我对素晴日的爱。最后附上我解包出来的图片吧。


谁不想要一个可爱的妹妹呢?