用法:
使用QuickBMS将游戏的soundspc.cache文件解压缩到自定义文件夹, 并在此处提供witcher3.bms脚本(此文件支持Blood和Wine使用的64位文件)。
使用官方mod工具或QuickBMS解压缩游戏的XML文件 。
使用文本编辑器打开“soundbanksinfo.xml”,找到要替换的声音的声音ID和声音库(确保将它们全部记录下来)。
为要添加到游戏中的声音创建一个新的干净WAVE(wav)文件。必须是16位或更大,未压缩且没有提示块。
运行prepare_wave.py以准备WAVE for Wwise。
打开Wwise,创建一个新项目,将项目设置/源更改为Vorbis High,导入准备好的WAVE并转换所有音频文件。
转到Wwise项目文件夹/ .cache并将所有新WEM文件复制到文件夹。
为每个WEM文件运行compare_wem.py(将它们与The Witcher 3中的原始WEM文件进行比较),并对合并标头的请求回答“是”。
将所有合并的文件复制到空文件夹,并从名称中删除“.merged”。
使用rebuild_soundbank.py重建音库。
将所有重建的音库复制到上面的上述文件夹中,从名称中删除.rebuilt。
在包含已修改文件(.wems和.bnks)的文件夹上运行create_sounds_cache.py。
将新生成的soundspc.cache应用于<The Witcher 3 Folder> / Mods / modMyMod / content。
警告:如果您的.wem文件是声音而不是音乐,请不要在.sys文件中打包.wem文件。声音嵌入音库本身。打包.wem文件不会引起任何问题,但它会增加soundspc.cache的整体大小(声音文件将包含两次,一个作为单独的.wem文件,一个嵌入音库中)。
示例:
用新的歌曲替换所有Gwent歌曲:这是一个简单的批处理脚本,可以自动重建具有多个音库/声音的音库。声音:音乐:只需将声音库放入文件夹bnks,将声音放入文件夹中。要重建声音而不是音乐的音库,请使用:
Sound IDs: 552019, 3961972, 9131862, 10122256 and 13090987
Soundbanks: music_kaer_morhen, music_misty_island, music_nomansgrad, music_prologue, music_skellige, music_wyzima_castle
*Covert my new song to a clean wav*
prepare_wave.py my_new_song.wav 0
rename my_new_song#wav#cued my_new_song.wav
*Create my new WEM file from my_new_song.wav using Wwise*
compare_wem.py 552019.wem my_new_song.wem
copy my_new_song#wem#merged folder/552019.wem
copy my_new_song#wem#merged folder/3961972.wem
copy my_new_song#wem#merged folder/9131862.wem
copy my_new_song#wem#merged folder/10122256.wem
copy my_new_song#wem#merged folder/13090987.wem
rebuild_soundbank.py --music music_kaer_morhen.bnk folder/552019.wem
rebuild_soundbank.py --music music_kaer_morhen#bnk#rebuilt folder/3961972.wem
rebuild_soundbank.py --music music_kaer_morhen#bnk#rebuilt folder/9131862.wem
rebuild_soundbank.py --music music_kaer_morhen#bnk#rebuilt folder/10122256.wem
rebuild_soundbank.py --music music_kaer_morhen#bnk#rebuilt folder/13090987.wem
copy music_kaer_morhen#bnk#rebuilt folder/music_kaer_morhen.bnk
rebuild_soundbank.py --music music_misty_island.bnk folder/552019.wem
rebuild_soundbank.py --music music_misty_island#bnk#rebuilt folder/3961972.wem
rebuild_soundbank.py --music music_misty_island#bnk#rebuilt folder/9131862.wem
rebuild_soundbank.py --music music_misty_island#bnk#rebuilt folder/10122256.wem
rebuild_soundbank.py --music music_misty_island#bnk#rebuilt folder/13090987.wem
copy music_misty_island#bnk#rebuilt folder/music_misty_island.bnk
rebuild_soundbank.py --music music_nomansgrad.bnk folder/552019.wem
rebuild_soundbank.py --music music_nomansgrad#bnk#rebuilt folder/3961972.wem
rebuild_soundbank.py --music music_nomansgrad#bnk#rebuilt folder/9131862.wem
rebuild_soundbank.py --music music_nomansgrad#bnk#rebuilt folder/10122256.wem
rebuild_soundbank.py --music music_nomansgrad#bnk#rebuilt folder/13090987.wem
copy music_nomansgrad#bnk#rebuilt folder/music_nomansgrad.bnk
rebuild_soundbank.py --music music_prologue.bnk folder/552019.wem
rebuild_soundbank.py --music music_prologue#bnk#rebuilt folder/3961972.wem
rebuild_soundbank.py --music music_prologue#bnk#rebuilt folder/9131862.wem
rebuild_soundbank.py --music music_prologue#bnk#rebuilt folder/10122256.wem
rebuild_soundbank.py --music music_prologue#bnk#rebuilt folder/13090987.wem
copy music_prologue#bnk#rebuilt folder/music_prologue.bnk
rebuild_soundbank.py --music music_skellige.bnk folder/552019.wem
rebuild_soundbank.py --music music_skellige#bnk#rebuilt folder/3961972.wem
rebuild_soundbank.py --music music_skellige#bnk#rebuilt folder/9131862.wem
rebuild_soundbank.py --music music_skellige#bnk#rebuilt folder/10122256.wem
rebuild_soundbank.py --music music_skellige#bnk#rebuilt folder/13090987.wem
copy music_skellige#bnk#rebuilt folder/music_skellige.bnk
rebuild_soundbank.py --music music_wyzima_castle.bnk folder/552019.wem
rebuild_soundbank.py --music music_wyzima_castle#bnk#rebuilt folder/3961972.wem
rebuild_soundbank.py --music music_wyzima_castle#bnk#rebuilt folder/9131862.wem
rebuild_soundbank.py --music music_wyzima_castle#bnk#rebuilt folder/10122256.wem
rebuild_soundbank.py --music music_wyzima_castle#bnk#rebuilt folder/13090987.wem
copy music_wyzima_castle#bnk#rebuilt folder/music_wyzima_castle.bnk
create_sounds_cache.py folder
for %%a in (bnks\*.bnk) do (
rebuild_soundbank.py "%%a" wems > nul 2>> bnklog.txt
move /y "%%a.rebuilt" "%%a"
)
for %%f in (wems\*.wem) do (
for %%a in (bnks\*.bnk) do (
rebuild_soundbank.py --music "%%a" "%%f" > nul 2>> bnklog.txt
move /y "%%a.rebuilt" "%%a"
)
)
rebuild_soundbank.py soundbank.bnk folder
rebuild_soundbank.py能够操纵游戏的播放列表,除其他外,它允许您添加新歌曲而不是替换旧歌曲。
这个过程虽然复杂,但不会在此处讨论。
这样做所需的命令是:
rebuild_soundbank.py --add-new-music soundbank.bnk music.wem
将新音乐条目添加到与您的新music.wem链接的soundbank.bnk。
rebuild_soundbank.py --playlist-id-from-track soundbank.bnk soundID
获取包含声音ID的播放列表ID。这对于找到播放特定音乐的播放列表是必要的。
rebuild_soundbank.py --export-playlist soundbank.bnk playlistID
将播放列表设置导出到INI文件以进行操作。
rebuild_soundbank.py --reimport-playlist soundbank.bnk playlistID
从INI文件重新导入播放列表,覆盖上一个/原始播放列表。
昵称:
邮箱:
内容: