davispuh / WwiseNameCracker

Crack Wwise FNV-1 hashes (32-bit and 64-bit)
5 stars 1 forks source link

How does one find strings.txt in the 2nd step of Usage? #1

Open niizam opened 1 month ago

niizam commented 1 month ago

I'm not sure this is correct place to ask, but I saw your issue at https://github.com/bnnm/wwiser-utils/pull/15

I'm having trouble understanding how to find audio file names in a PCK file. Here's what I've tried so far:

  1. I found a .wem file hash 119248 in the StarRail_Data\Persistent\Audio\AudioPackage\Windows\Japanese\VoBanks0.pck using Fusion Tool image

  2. From what I heard, this hash seems to match an AudioEvent in this file:

    https://github.com/Dimbreath/StarRailData/blob/df89dd1138e751c8b1a62c92fc2bafac421dc18f/ExcelOutput/VoiceAtlas.json#L4823C1-L4823C75

  3. I tried to manually hash the file path japanese/voice/ev_archive_vo_avatar_growth_trace_unlock_silverwolf.wem using FNV1-32. Refering to this :

image

image

The result was 174851008, but this doesn't match the original hash 119248.

  1. I'm confused because I can match .wem file hashes from the VoicePath key in the VoiceConfig.json file when working with External0.pck.

My questions are:

  1. Am I doing something wrong with the hashing?
  2. Does VoiceBanks0.pck use a different file path structure compared to External0.pck?
  3. How do I find strings.txt content?

Any help or guidance would be much appreciated! Thanks in advance!

davispuh commented 1 month ago
  1. I tried to manually hash the file path japanese/voice/ev_archive_vo_avatar_growth_trace_unlock_silverwolf.wem using FNV1-32.

External voices use 64-bit FNV hash and not 32-bit. Also in Fusion Tool those ID doesn't look to be these hashes.

  1. Am I doing something wrong with the hashing?

To me it looks like you're using 32-bit hash but you need to use 64-bit.

  1. Does VoiceBanks0.pck use a different file path structure compared to External0.pck?

Don't know but what I know is that Event Names uses 32-bit hashes while External's uses 64-bit.

  1. How do I find strings.txt content?

There isn't easy way, I wrote Ruby script that loaded all names from StarRailData repo's JSON files. Then I prepended $LANG/voice/ to everything.

You can use https://github.com/bnnm/wwiser-utils/blob/master/wwnames/Honkai%20-%20Star%20Rail%20(PC)%20(External).txt (this is the final result I got)