Skip to content

theBowja/GenshinData-scripts

Repository files navigation

GenshinData-scripts

Node scripts to extract data from ExcelBinOutput

Used by my genshin-db repo

For personal use, edit the config.json file. The folder pointed by GenshinData_folder must include ExcelBinOutput, TextMap, and Readable.

AssetStudioCLI D:\GenshinImpact\AssetStudioCLI\AssetStudioCLI.exe "D:\GenshinImpact\3.7\patch\blocks" "D:\GenshinImpact\3.7\patch" --silent --types "Texture2D" --types "Sprite" --game GI --names "(^UI_.*)|(^Img.*)|(^Icon.*)|(^Eff_UI_Talent.*)|(^Skill_.*)|(^MonsterSkill.*)"

Audio files for voiceovers

Audio files for voiceovers can be extracted by using the script at voice/audio.js which is a partially translated JavaScript version of Razmoth/Audio's audio extractor. The files extracted are in .wem format which can be converted to other audio formats using other tools.

It does not extract audio files for story and etc. If you need other audio files, you can generate a vo.txt using voice/getAllVO.js and use it on the audio extractor from Razmoth/Audio.

Read the instructions below for detailed prerequisites and instructions for the following steps:

Generating vo.txt

Without being provided a vo.txt file, the audio extractor will export audio files with their hashed names. It is impossible to figure out what each audio file is supposed to be. Example:

/sfx/External_1792857726997092.wem
/sfx/External_1886194340482565.wem
/sfx/External_2128006690787571.wem
/sfx/External_2170657161166428.wem

Providing a vo.txt file allows the audio extractor to map audio source paths to audio ids by using the FNV1 64-bit hashing function. A vo.txt file is a list of audio source paths delimited by a \n. It is typically generated by scraping through the files in GenshinData/BinOutput/Voice/Items. Example:

VO_friendship\VO_ayaka\vo_ayaka_draw_appear.wem
VO_friendship\VO_ayaka\vo_ayaka_character_idle_01.wem
VO_friendship\VO_ayaka\vo_ayaka_character_idle_02.wem
VO_friendship\VO_ayaka\vo_ayaka_character_idle_03.wem

Note that Razmoth/Audio's audio extractor requires the audio language to be appended in front of the source path in the vo.txt.

English(US)\VO_AQ\VO_dainsleif\vo_SZAQ004_1_dainsleif_04.wem
Japanese\VO_AQ\VO_dainsleif\vo_SZAQ004_1_dainsleif_04.wem
Chinese\VO_AQ\VO_dainsleif\vo_SZAQ004_1_dainsleif_04.wem
Korean\VO_AQ\VO_dainsleif\vo_SZAQ004_1_dainsleif_04.wem

Generating vo.txt related to genshin-db voiceovers

The voice/getAllVO.js script generates a list of voiceover audio source paths and saves it to voice/db-vo.txt. TODO

Generating vo.txt for all audio source paths

The voice/getAllVO.js script generates a list of all audio source paths and saves it to voice/vo.txt. This is a standalone script and you must modify the script and update the variable BASE to be your local GenshinData/BinOutput/Voice/Items path. The script may take more than a couple seconds to run due to the number of file reads it does.

About

Node scripts to extract data from ExcelBinOutput

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published