Fixing missing battlemap selection voices (like "Spearmen!" or "Archers!") + adding more and new regional music
Hello guys,
I'm gonna repost my entry in SSHIPs developers forum, so more people will have access to it.
What this is: basically very condensed and veeery brief review of most interesting sound-related files.
There seems to be a ton of "how to add music" tutorials here, I'm sure more expansive and better than mine, so feel free to skip everything that isn't bold.
Boldlines are my how-to fix the most annoying (at least to me personally) issue in most Medieval 2 mods: units not introducing themselves in battles when you click on them.
Quick summary of important files
descr_sounds.txt
here we add newly added music_types (music_types aren't cultures, they are an independent thing, at least 15 are possible), example:
; List of used music types
music_types_enum northern_european eastern_european southern_european middle_eastern slavic_orthodox oriental_orthodox eastern_pagan
descr_sounds_accents.txt
governs accents ingame, used on both stratmap and battlemap
A) usually it should look like this:
accent Arabic
factions abbasid, turks, moors, egypt, zengid, rum
accent Mongolian
factions mongols, cumans
accent Jerusalem
factions jerusalem
descr_sounds_music.txt bread and butter for adding music. Edit or add new music_type soundtrack here.
one thing to remember, winter season music doesn't work, the game always play summer one.
export_descr_sounds_stratmap_voice.txt Edit stratmap voices here
export_descr_sounds_units_voice.txt If a unit's role is changed or a new one is added to the game, here you can assign a unit_select voice to it (when you click a unit on battlemap, they shout "Spearmen" or "Archers" etc.) Here is how to do it
export_descr_unit.txt only four things are of your interest here:
- type (name of the unit)
- voice_type (Light, Heavy or General - to know where to put its entry in edsuv.txt)
- accent (some units have this, it forces an accent on both stratmap and battlemap - use with caution)
- ownership (who this unit belongs to, so which accent to use in edsuv.txt)
descr_sounds_music_types.txt (in data/world/maps/base)
add and assign music_types to factions (at least 15 are possible)
note: regions listed below a certain music_type will force that music to play on battlemap in this region
.dat and .idx files in data/sounds FOR ANY CHANGES TO THE ABOVE FILES TO ACTUALLY HAPPEN
you need to rebuild events.dat, events.idx and sometimes corresponding music/sfx/voices files.
#
.dat archives contain .mp3 and .wav music files. You can extract them using Vercingetorix's IDX extractor
Disc version of the game can regenerate those archives on game launch from loose music files put in data/sounds/music folder. Likewise SFX, Voices, etc.
Steam versions need to be provided with ready to go .dat and .idx archives or they won't hear much.
unless
you use a 0 byte replacement for music, sfx or voices .dat/.idx so the game will read music straight from loose files.
(the last trick was brought to my attention by Gigantus, I've also seen this in action in Titanium submod)
CREDITS
All of this know-how was obtained by me personally, except:
- the last bit where I left credit to Gigantus
- non-english descr_sounds_accents.txt that I copied from SSHIP's soundfix
- Araval informed me about winter music not working (yes, I didn't notice it ;p)
- Lifthrasir reminded me about Steam's problem with sound archives not regenerating