Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/thebowja/genshindata-scripts
Node scripts to extract data from ExcelBinOutput
https://github.com/thebowja/genshindata-scripts
Last synced: 29 days ago
JSON representation
Node scripts to extract data from ExcelBinOutput
- Host: GitHub
- URL: https://github.com/thebowja/genshindata-scripts
- Owner: theBowja
- Created: 2022-12-06T00:09:46.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-21T05:09:35.000Z (about 1 month ago)
- Last Synced: 2024-11-21T06:19:23.001Z (about 1 month ago)
- Language: JavaScript
- Size: 2.07 MB
- Stars: 4
- Watchers: 1
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GenshinData-scripts
Node scripts to extract data from ExcelBinOutputUsed 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](#generating-votxt)
- [Audio extraction](#audio-extraction)
- ~~Converting audio format~~ TODO### 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.