我非常喜欢VA-11 HALL-A 赛博朋克酒保行动 这款游戏。作为半个galgame玩家,我更习惯阅读有语音的视觉小说,也一直在想象能在VA-11 HALL-A里听到Jill、Dana以及每一个角色的声音。而在前段时间我了解到了GPT-SoVITS,一个开源的语音模型训练和TTS项目,却是效果最好的项目之一。接下来我又检查VA-11 HALL-A游戏文件,并使用工具解包,最终确定,为VA-11 HALL-A制作完全语音模组可行:
-
可以使用GPT-SoVITS制作多个模型用于配音;
-
VA-11 HALL-A的所有对话脚本直接暴露在游戏根目录,便于TTS推理,并支持音频触发事件,例如:
[SOUND:pageturn][XS:jilltalk,1][C:43][C:C][STOPLIP:]首先,我想为之前的行为致歉。 -
使用UndertaleModTool可以方便地导入新的音频资产,甚至直接解包出游戏所有代码,可以增加语音打断、音量调节等逻辑。
然后我就开始进行第一步,也是最漫长而折磨的一步:为总共31个角色找「声优」。想象每个角色的声音,回忆我了解的声优或者角色,反复对比是否合适,然后准备数据集。如果声音来自动画,就需要录音、剪辑,然后降噪、去背景音乐;如果声音来自galgame,则可以方便地直接解包获取音频文件,因此我最后使用了大量来自galgame的角色语音(实则夹带私货)。数据集的准备是最煎熬的,模型训练反而用不了多久,不过由于我的电脑显存太少,我还是租了服务器跑的。等到准备好全部31个模型,已经过去整整一个月时间了。
接下来的任务就轻而易举了,先建立角色和声音模型的对应关系,然后通过一个脚本就可以完成这些流程:
- 读取游戏对话脚本并清洗,得到角色和台词文本
- 按顺序调用对应模型进行推理,得到音频文件
- 将
SOUND标签写回脚本文件
得到的结果大概是这样的:
|
全部执行完后,可以再进行响度标准化,然后使用UndertaleModTool导入所有音频文件,并用新的脚本文件替换原本的,就大功告成了。
这个项目还是有很多不完美的地方,比如选模型时有些角色我没能做到完美贴合,推理的语音也有些缺少感情,不够让人信服。不过我还是感叹不已,技术的发展让我的想法得以实现。VA-11 HALL-A已经是十年前的游戏了,在2026年的今天,一些赛博朋克色彩的想法已然实现;不论你喜爱或是抗拒,AI、机器人、各路技术,科技的发展会推着你往前走。此时此刻,用最新的AI技术,给一款十年前描写酒、机器人和爱的游戏带去一丝新的生机,又何尝不是一种浪漫。
