For sounds attached to entities it looks like we're constrained to two.
For character entities (ischaracter = 1 in the fpe), the first "slot" in the fpe (e.g. soundset = Male) is used to reference an audiobank\character folder, in this example 'male' - so files\audiobank\character\male. In this folder there are sub folders, e.g. onAggro, OnAlert and within these folders are many sound files 0.wav, 1.wav, 2.wav.
Within a lua script for a character, can use the command SetCharacterSound(e,"male"). This tells the engine to look at the folder "files\audiobank\character\male" for the next character sound commands used in the script, so PlayCharacterSound(e,"onAlert") will look into " files\audiobank\character\male\onAlert" folder and pick one of the sounds in there at random to play (one of 0.wav, 1.wav, 2.wav etc). So PlayCharacterSound(e,"onAggro") will do the same but pick one of the sound files from the "OnAggro" folder at random to play.
So you could set up a new folder called, say, "beast" with the same folder structure as for "male" above and place new sounds in the subfolders as you need. Then it would be SetCharacterSound(e,"beast") in lua followed by PlayCharacterSound(e,"onAlert") to play one of the sounds in the 'onAlert' folder that is below the 'beast' folder.
It probably makes more sense if you look at the folder structure