Skip to content

Cam's Handy Soundset Guide for BGEE, SoD, BG2EE, and IWDEE

CamDawgCamDawg Member, Developer Posts: 3,438
edited February 2022 in General Modding
UPDATE: I wrote a lot of this while 2.6 was still in development, and (as noted in the replies) it varies slightly from the 2.6-as-released. As such I've updated this post and the tool; the updated version of this guide can be found on G3. I've left the rest of this post unchanged.

____________________

Simple Soundsets

Adding simple soundsets is fairly straightforward for the EEs: drop some properly named files into the lang/XX_XX/sounds in your game folder and you're good to go. Replace XX_XX with the name for your language (English is en_us, for example). The files themselves are the same as other wav files in the game--proper wav files or ogg files renamed as wav files. Pick a name for your soundset (up to seven letters) and then append the proper letter or number to assign it to the correct slot. For example, if you want to name your soundset Tough, then your files would be named tougha, toughb, toughc, etc. The slots are as follows:

XXXXXXXa.wav: Battle Cry 1
XXXXXXXb.wav: Becoming Leader
XXXXXXXc.wav: Tired
XXXXXXXd.wav: Bored
XXXXXXXe.wav: Badly Wounded
XXXXXXXf.wav: Selected 1
XXXXXXXg.wav: Selected 2
XXXXXXXh.wav: Selected 3
XXXXXXXi.wav: Action Acknowledgement 1
XXXXXXXj.wav: Action Acknowledgement 2
XXXXXXXk.wav: Action Acknowledgement 3
XXXXXXXl.wav: Being Hit
XXXXXXXm.wav: Dying
XXXXXXXn.wav: In Forest
XXXXXXXo.wav: In City
XXXXXXXp.wav: In Dungeon
XXXXXXXq.wav: Daytime
XXXXXXXr.wav: Nighttime
XXXXXXXs.wav: Action Acknowledgement 4
XXXXXXXt.wav: Action Acknowledgement 5
XXXXXXXu.wav: Action Acknowledgement 6
XXXXXXXv.wav: Action Acknowledgement 7
XXXXXXXw.wav: Reaction to Party Member Death
XXXXXXXx.wav: Rare Action Acknowledgement 1*
XXXXXXXy.wav: Rare Action Acknowledgement 2*
XXXXXXXz.wav: Critical Hit
XXXXXXX0.wav: Selected 4
XXXXXXX1.wav: Critical Miss
XXXXXXX2.wav: Target Immune
XXXXXXX3.wav: Inventory Full
XXXXXXX4.wav: Pickpocket Successful
XXXXXXX5.wav: Hide in Shadows Successful
XXXXXXX6.wav: Spell Disrupted
XXXXXXX7.wav: Trap is Set Successfully
XXXXXXX8.wav: Battle Cry 2
XXXXXXX9.wav: Battle Cry 3

* Though these are listed in the IDS files and elsewhere as selection sounds, the rare sound files are action sounds.

You do not need to have all 36 of these files for the soundset to be available in the game.

Expanded Soundsets

The EEs support additional sound slots and text for the sound files through the use of charsnd.2da. As of the 2.6 patch, this 2da is being standardized across platforms to make adding soundsets even easier, and I've written a small mini-mod to assist players or modders who want to add soundsets to the game. The rest of the tutorial will be using this mod.

charsnd.2da simply matches a normal game string, with associated sound file, to a slot. The macro in the attached mod will create these strings and slot them into their proper place in charsnd.2da for you. You should follow the naming convention for the simple sound set, above, and place those wav files into the 'sounds' folder in the tool. While the extended sounds can use any naming convention, this is what I've been using internally for the extended soundset files:

XXXXXXX_.wav: Battle Cry 4
XXXXXXX-.wav: Battle Cry 5
XXXXXXX$.wav: Happy
XXXXXXX%.wav: Morale Break
XXXXXXX&.wav: Rare Action Acknowledgement 3*
XXXXXXX^.wav: Rare Action Acknowledgement 4*
XXXXXXX@.wav: Selected 5
XXXXXXX#.wav: Selected 6
XXXXXXX!.wav: Unhappy, Breaking Point
XXXXXXX=.wav: Unhappy, Annoyed
XXXXXXX~.wav: Unhappy, Angry

* The third and fourth rare action sounds are supported in IWDEE only.

These sounds, unlike the 'core' sound set, should be placed in the 'wav' folder in the tool. With the sound files in their proper folders, we'll move on to how to associate text with them.

Open up english/setup.tra and you'll see stuff like
 @1 = ~action sound 1~ [bobi]
@2 = ~action sound 2~ [bobj]
@3 = ~action sound 3~ [bobk]>
These are WeiDU strings. The first line is associating the text between the tildes--in this case "action sound 1"--with the sound file named in the brackets--in this case bobi.wav--to a WeiDU string named @1. If you're making a soundset named Tough, for example, and your first action sound is "Let's do this!" then you modify @1 to read
 @1 = ~Let's do this!~ [toughi]
One more trick for the tra file is that if you want no text for a sound, e.g. your damage sound is just a grunt, you can use either one of these options:
 @24 = ~~ [bobl]
or
 @24 = ~[grunt]~ [bobl]
Text inside brackets is ignored by the engine when the game is being played, so either one of these options would play the grunt without text.

Next open up cd_soundsets.tp2 with a text editor. At line 18, edit this line if your soundset is not for English:
COPY ~%MOD_FOLDER%/sounds~ ~lang/en_us/sounds~ // change en_us to the appropriate language folder
Change that en_us as appropriate for your language. If the soundset is for English, no change is needed.

Around line 23, you'll see a series of lines like
    cd_action1      = RESOLVE_STR_REF(@1)  // i
cd_action2 = RESOLVE_STR_REF(@2) // j
cd_action3 = RESOLVE_STR_REF(@3) // k
This bit in the tp2 is telling WeiDU to use strings from the tra file, e.g. the Action Acknowledgement 1 sound should use the @1 that we modified in the previous step. Again, you do not need to provide a full soundset: if you only want to use two action sounds, delete the lines related to action3-7 and the tool will adjust accordingly.

Near the very end is this line:
  STR_VAR cd_name = "BOB"
Replace BOB with the name of your soundset, e.g. Tough. This is the name that will appear in the soundset selection menu and, as noted above, is limited to seven letters.

Once this is done, simply run the resulting mod by double-clicking setup-cd_soundsets.

Prepping Your Soundsets for Distribution

It will be a bit of a problem if everyone creates and distributes a mod for their soundset with the same mod name. If you want to distribute your soundsets for use by other players, rename all files with cd_soundsets in it (basically the setup-cd_soundsets WeiDU program, the cd_soundsets folder, and cd_coundsets.tp2 file) to something unique.

Open up english/setup.tra and change the @0 text to the name of your mod.

In addition, open up the tp2 again. At line 1, change the backup folder (cd_soundsets/backup) to match your new folder name (e.g mymod/backup). At line 2, change the author line to your email address. If you want to distribute multiple soundsets, you can duplicate the entire soundset section, from LAF cd_add_soundset through its END statement, as many times as desired. Be sure to use different string references for them, e.g. start the second soundset from @48 and add strings as necessary to the tra file.
Post edited by CamDawg on

Comments

  • CamDawgCamDawg Member, Developer Posts: 3,438
    And one small note: the tool either won't work or will slot sounds incorrectly if used on 2.5 or earlier, so you'll need to stick to simple soundsets for now.
  • ThelsThels Member Posts: 1,416
    edited December 2018
    @CamDawg I've noticed a few things about the "Simple Soundsets":

    It seems the sounds also work when placed in "My Documents\Baldur's Gate - Enhanced Edition\sounds" (and I assume matching folder names for other games). This could be more convenient for people that do a lot of reinstalling.

    Regardless of which of the two folders I use, the game only seems to use the i, j and k acknowledgements, and not the s, t, u and v acknowledgements.

    The soundpacks that I do have also have an XXXXXXX_.wav file, which seems to be yet another acknowledgement for all of those soundpacks. I'm not sure if the game took the _ as an acknowledgement at some point, but since it seemed to have been a norm for sound packs at least at some point, perhaps it would be convenient to have the mod register XXXXXXX_.wav as Action Acknowledgement 8?

    EDIT: My earlier tests were in BG. In BG2, the s, t, u and v acknowledgements do play. x and y also play quite frequently as an acknowledgement (but they seem to be recorded as a rare selection, not a rare acknowledgement). The BG2 default soundpacks also have the XXXXXXX_.wav file as an acknowledgement 8, but it doesn't seem to play.

    IWD seems to have yet another different setup for its voice filenames, including some XXXXXXX#.wav files.
    Post edited by Thels on
  • CamDawgCamDawg Member, Developer Posts: 3,438
    Yeah, I was a bit premature writing this. It's still correct for BG2EE, but BGEE uses the ACTION4-7 slots as rare selection sounds, whereas BG2EE doesn't support rare selection sounds. Expect some further edits as we hash this out.
  • agrisagris Member Posts: 581
    @CamDawg are you working on a mod that makes all CHARNAME soundsets for BG1/2/IWD, with the correct naming schemes, available in BG1/2/IWD? So BG1 CHARNAME can select BG2 and IWD soundsets, IWD can select BG1 and BG2, etc.
  • lolienlolien Member, Moderator, Translator (NDA) Posts: 3,108
    Thanks @CamDawg .
  • DregothofTyrDregothofTyr Member Posts: 229
    I was trying to export the BG:EE soundsets to use in BG2:EE, since they sound so nice and clear, but the soundsets for the first game only go from a to m, whereas in BG2 they use a to m and s to v as well as _ and 0 to 9. Am I missing sounds or does each game have different sounds? Does BG1 really not use so many of these sounds? However, it looks like the two SoD only soundsets, 7 and 8, use all of them. Is it possible to get all the sounds when transferring them between games?
  • agrisagris Member Posts: 581
    Any updates on this @CamDawg ?
  • butteredsoulbutteredsoul Member Posts: 168
    @DregothofTyr : Baldur’s Gate was released before BG II. BG II extended the soundsets. SoD was released after BG II, so the characters it added have full sets. To augment the BG I sets, you’d need to write and record the extra lines from the original actors (or actors that sound close enough).

    Anyway, that’s my speculation. I’m sure the experts have more info.
  • DregothofTyrDregothofTyr Member Posts: 229
    @butteredsoul I suspected as much, it's too bad because BG2 doesn't have many soundsets and there are no soundsets available across all three games in vanilla EE, though you can extract the BG2 and SoD soundsets to use in each game, I presume.
  • MarinaMarina Member Posts: 2
    Hi! I'm trying to add custom sounds to IWDEE on Android. I got them playing on character creation screen but not on sound change screen in game. What could be the problem?
    Thanks!
  • polymorphedsquirrelpolymorphedsquirrel Member Posts: 114
    Welcome to 2019, time traveller! How did you get 2.6 in 2018 while the latest version as of 07/2019 is 2.5.17?
  • AndreaColomboAndreaColombo Member Posts: 5,525
    If you’re referring to @CamDawg , he’s on the developer team.
  • polymorphedsquirrelpolymorphedsquirrel Member Posts: 114
    Thought it might be the case. Still, a bit confusing topic.
  • Dark_AnsemDark_Ansem Member Posts: 992
    CamDawg wrote: »
    I should point out that we've had even further developments since I last posted, and now this thing is going to be wholly obsolete with 2.6.

    The good news is, well... you'll have to wait, but it is good news.

    (Image)
    CamDawg wrote: »
    I should point out that we've had even further developments since I last posted, and now this thing is going to be wholly obsolete with 2.6.

    The good news is, well... you'll have to wait, but it is good news.

    (Image)

    Well, now it's 2020, I suppose the wait is still going on. Can you share more about what's going to happen with soundsets and the possibility of adding them with subtitles?
  • CoGDorkCoGDork Member Posts: 1
    edited April 2020
    Would anyone have suggestions on the recording process? Specifically, how to make it sound more like the clips already in the game (reverb, EQ, etc)?

    EDIT: For that matter, how the heck do I install the mod mentioned in the OP? I use the installer, but I keep getting an error immediately and it stops.
    Post edited by CoGDork on
  • ThelsThels Member Posts: 1,416
    @CoGDork This mod is written for the yet nonexisting 2.6 patch of the game.
  • GraionDilachGraionDilach Member Posts: 581
    This isn't working with 2.6 either as the first post currently showcases. @CamDawg I filled a PR, but it needs a review and you might want to take a look at these as well.
Sign In or Register to comment.