Sound format

From The Ghar Station Wiki
Revision as of 01:42, 11 September 2022 by Imathrowback (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Sound data

Sounds are implemented using AudioKinetic WWISE sound banks

Sound files

Most of the sound files are a special WWISE OGG format that can't be played with normal audio players.

See Also Wwise_SoundBank file format.

One tool that will work is Ravioli Game Tools explorer to open and play them.

To convert the OGG files you can also use this tool: http://zenhax.com/viewtopic.php?t=810#p11669

Music

  • (Note the data here is incomplete)

Datasets: 113, 114, 125 Sound banks, eg "mus_shadowlands.bnk".

General combat sounds

Dataset: 10005

  • (Note the data here is incomplete)

Sound bank, eg "player_high_elf_male_younger_emote.bnk", "mob_colossus_volan.bnk"

Sounds are stored in the sound bank.

Voice overs

Vignettes

Short NPC dialogue that is said outside of player interaction, this includes event dialogue.

The sound bank that contains the file references is called "vo_vignettes.bnk". Interestingly this file does not exist in the RIFT local assets and so must be downloaded by RIFT at runtime.

Inside this file is a collection of events. To locate a specific speech:

  • Look in telara.db at dataset 10017 which contains the names of the events.
  • FNV hash that event name
  • Find the event in the sound bank for that ID. The event will have a reference to an EventAction
  • Find the EventAction, it will have a reference to a SoundFX
  • Find the SoundFX which has an int reference.
  • Append ".ogg" to the int reference and look up the filename in the RIFT assets to get an OGG file (special WWISE format)

Chatter

  • (Note the data here is incomplete)

Greeting and farewall chatter from NPCs when you click them.

Sound bank is called "vo_chatter.bnk" and is similar to the vignettes but contains different sound event objects.

In telara.db, the dataset for these is 10023 and are used slightly differently.

  • Look in telara.db at dataset 10023 which contains the names of the events.
  • Insert the event into the string "Play_vo_%s_chatter_farewell" or "Play_vo_%s_chatter_greeting"
  • Convert it to FNVHash
  • Lookup the "DialogueEvent" that matches the hash
  • (incomplete - please finish)

Note that there are 3 states to each voice over, "annoyed_1", "annoyed_2" and "neutral". It is not yet known how to map these to filenames properly and is a subject to further research The WWISE file format allows "trees" to branch depending on states, and it is assumed these need to be parsed to handle the different types of events.