Its not too terribly difficult to do. You can add a new voice type to a mod that you already use, or create a new one (by opening GECK and just checking Fallout.ESM, then clicking Okay).
For the purposes of this tutorial lets assume you will just make your own.
Under Actor Data
on the left, look for the Voice Type
category and click it. In the list that brings up, right-click and create a new one. Name it something like PlayerCustomVoice and set it to whichever gender you'd use. Then in the Actor > NPC list, look for Player and assign your custom voice as their VoiceType.
Afterward save the first time, name your plugin PlayerCustomVoice.esp.
Then under Actor Data, look for Quest
and create a new one. Name it PlayerCustomVoiceQuest, check Start Game Enabled and give it a priority of 77+. Click Okay to close your Quest.
Now go into your Fallout folder, specifically into Data > Sound > Voice. Make a new folder and name it PlayerCustomVoice.esp (name it exactly in that fashion). If you're adding your new voice to an existing mod (for example, one with custom races) then name the folder whatever that mod's esp is called - for example, DragbodyRaces.esp
Now, inside the first folder you made, create another one and name it PlayerCustomVoice.
That second folder is where the sound files will go. The sounds have to be in .ogg format in order to hear them in-game, and if you wish to generate lip-sync files they'll need to be in .wav as well.
Now go back into your PlayerCustomVoiceQuest, at the top you'll see various tabs. Quest Objectives, Topics, Combat, etc. Combat is the one you want.
Go into that, right click the empty list on the left and Choose Add Topic. You'll need voices for Power Attack, Hit, and Death - so add those categories.
With each of those categories, you'll right click in the space on the right (Under Topic Tex/Info) and choose 'New'. This brings up a window where you can enter what you want them to say. Type in "Ugh!" or "Ahh!" or whatever 'grunt' sound you plan to use, check 'Random' (so that you don't hear the same voice file every time) then click okay.
Then go down to the Conditions section, right click and choose New. For these sounds we'll use the condition GetIsVoiceType > PlayerCustomVoice = 1. This means that if the NPC (in this case, the player) uses your custom voice type, it'll play sounds from this quest.
- Summary of these steps:
Once you've added that Condition, double click the entry to bring up this:
- Final Step:
Note that you'll also need to rename both the .ogg file and the equivalent .wav file as described in that image in order to generate Lip files.
I know this looks like a lot of work but once you get used to the process it only takes a minute or so per line. So not that bad, unless you're doing thousands of them. >.<
Once again, under Actors > NPC, look for Player/PlayerFemale (depending on the gender you use) and change their Voice Type to your custom voice type. Very important.
Also if you're adding your voice to an existing mod, like if you use a custom race, go into Actor Data > Race and load the custom race and assign your custom voice type as its Default Voice Type. Make sure you select the correct gender.
If you're using a default race there's a chance you'll still here the original voice files. You'll need to load the GenericPlayer quest and set its combat dialogue to use the condition GetIsVoiceType > PlayerVoiceMale (or Female) == 1 so that the default player dialogue/sounds will check for that.