英雄联盟音频文件整理计划——13.8
书接上文,之前疫情在家萌生出一个想法,整理英雄台词文件. 但后续因人工校对工程量大、更新频繁等问题一直进度缓慢。 所以将其分割为两个计划,一、文件整理计划,二、音频“转写”计划。 计划一已经差不多了,后续按时更新即可,计划二需要小伙伴们一起协助完成。
当前进度
由于游戏每半个月更新一次,虽然对一整年来说只更新24次,但每次都需要手动更新还是挺麻烦的。 涉及到游戏文件两次解包,还有音频文件与触发事件对应哈希要处理。
所以编写了一系列的脚本用来处理相关事件:
py-bnk-extract
这是一个音频文件解包的程序,英雄联盟使用Wwise来处理音频的,其打包后的文件就有wpk和bnk两种文件。 当前模块就是用来处理这些事件,提供事件文件还可以按照事件文件夹来解包。 整个模块编写参考 https://github.com/Morilli/bnk-extract,这里特别感谢原作者Morilli.
简单梳理一下逻辑,英雄对应皮肤配置相关文件
data/characters/{champion}/skins/skin0.bin
其文件中包含音频触发事件,就是什么时候播放这个音频。 比如:有些英雄放个技能说一句话,看见谁说什么话。 从中提取出发事件以及其哈希值,也就是对应ID.
再从wpk或bnk中获取音频相关信息, 根据上一步获取的哈希值对应分类解包。 不提供事件的话就直接解包不分类罢了。
lol_extract_voice
这个就是批量操作了,正常我们提取语音,是需要解包wad,找到bnk、wpk再进行解包. 如果需要时事件, 还需要处理皮肤bin文件。 这个包就是将所有带有音频文件wad,将其中bnk、wpk文件以及皮肤bin文件解包, 再使用上述包处理成wav或是其他格式文件。
当前这个代码也有些许问题,只能解包本地游戏文件、没有对旧版本游戏进行支持。 旧版文件这个因为目前没有这个需求,所以没动力去做这件事。 而前者早就优化了,但是并没有在这个仓库中体现。 因为设计一些接口怕被滥用,所以单独私有仓库更新。 前段时间写的安卓Termux介绍的文章,这个脚本就在手机上跑。
整个逻辑就是先根据拳头的cdn获取新版游戏文件,完成后再进行上述操作。 对于获取新版文件这部分很繁琐,有兴趣可以去GitHub上开源仓库https://github.com/CommunityDragon/CDTB, wad解包部分也参考了不少这个仓库。
Gitvoice(暂定)
这是我和点木发起的一个“组织”,这个仓库用来存放英雄音频文件,这些文件用于网站试听。 点木之前也一直在做类似的网站: https://lol.modty.top/,现在也在更新。 但目前所有资源均存放在服务器中,这种资源如果没有限制被打网站就挂了。 所以为后续考虑将资源暂定放在GitHub用jsdelivr进行cdn加速。
虽然这么做违反了jsdelivr规定(做这类资源cdn),先试试。 不行再考虑其他,例如onedrive。 在GitHub中有一点好处就是,可以单独管理指定英雄,如果以后组织人多,可以1个人处理几个甚至一个仓库进行更新。 可以单独管理英雄仓库进行更新,后续发展可能更好吧(理想状态)。
目前该仓库已经上传了一版音频文件,考虑到后续如果有小伙伴想和我们一起玩,使用国内的仓库(coding.net)进行管理资源,然后使用GitHub Action或是coding的持续集成进行仓库同步,这样在本地管理时不会出现同步仓库时GitHub无法访问的问题。
试听网站
根据Gitvoice整理的文件,做出了第一版的试听站。 事件用关键词替换成中文了,大部分语法顺序都是不对的,但是可以看懂。 因为是用脚本批量替换,所以肯定有和原事件不符的。 这部分还没有一个完善的反馈计划,还在打磨中。
资源
下载说明
Onedrive是利用其网盘搭建的一个分享站,但是是有访问频率限制的。如果打开出现xxx限制字样,说明访问量已经到达官方限制,次天会完全恢复,如果遇到相关问题,可以等待或使用其他方法下载。
解压密码请关注B站ID:Virace,https://space.bilibili.com/12353537。并私信“英雄联盟音频”即可获取。
更新日志
- 2023年4月16日 —— 13.8
- 2022年11月11日 —— 12.22
- 2022年08月29日 —— 12.17
- 2022年06月09日 —— 12.11
- 2022年03月06日 —— 12.6
- 2021年06月13日 —— 11.20
下载地址
- 主站:https://alist.x-item.com/
- OneDrive1: https://one.virace.cc/one
- Onedrive2:https://one.x-item.com/League%20of%20legends?hash=w2zAVJED
- 阿里云盘:https://www.aliyundrive.com/s/8q7KKdH3JpR 提取码: f68b (阿里云盘无法下载英雄音效)
- 123盘:https://www.123pan.com/s/XsY8Vv-JFPj.html提取码:3XnR
主站包含天翼云盘(189)、123盘、阿里云的下载链接,因为这三个盘要么是不支持分享压缩包,要么是不支持分享带密码的压缩包,所以主站其实就是解析站,哪个能下载就下哪个。
后续会选择性更新,可能是目前最全的合集了,除游戏大厅那些按钮音效等,其余游戏所有音频全部包含。 游戏内的音效也是用事件文件夹分好类了。
但是文件名还是以ID形式存在,并不是实际台词。 那就是之前那个计划了:英雄联盟英雄台词语音音频文件整理
处理几个仓库,以及编写更新脚本花了大量的时间。 希望因为这个更多视频作者可以获益吧~
文章评论
时隔三年再次浏览依旧佩服