Let me first warn you, this is a big spoiler
Music is easy. Assuming that like you said, you placed them in a music folder, you can call them into your story with this code:
PlayMusic(string& asMusicFile, bool abLoop, float afVolume, float afFadeTime, int alPrio, bool abResume);
What this gibberish means is this:
asMusicFile - the music to play + extension .ogg
abLoop - determines whether a music track should loop
afVolume - volume of the music
afFadeTime - time in seconds until music reaches full volume
alPrio - priority of the music. Note that only the music with the highest priority can be heard! 0 - lowest, 1 - higher, etc.
abResume - if true, playback will be continued from where the track stopped after the call to StopMusic(); if false, the track will be restarted.
So an example of this code would be:
PlayMusic("callmemaybe_carly.ogg", false, 1.0f, 1.0f, 1, false);
If I put this into the OnStart()
void OnStart()
{
PlayMusic("callmemaybe_carly.ogg", false, 1, 1, 1, false);
}
I would assume Call Me Maybe by Carly Rae Jepsen would play when the game starts.
Sound files are similar, but are called differently.
PlaySoundAtEntity(string& asSoundName, string& asSoundFile, string& asEntity, float afFadeTime, bool abSaveSound);
And what THIS gibberish means is this:
asSoundName - internal name
asSoundFile - the sound to use + extension .snt
asEntity - the entity to create the sound at, can be “Player”
afFadeTime - time in seconds the sound needs to fade. Avoids enemies hearing the sound if afFadeTime is at least 0.1f
abSaveSound - if true, a looping sound will “remember” its playback state (currently playing/stopped), and that state will be restored the next time the level is entered. If true, the sound is never attached to the entity! Note that saving should only be used on looping sounds!
The main difference is that it calls the .snt of a file, which you just copy and paste from anything which Amnesia calls as the .snt. You just have to edit the stuff in it as if it were in NotePad.
PlaySoundAtEntity("thesound", "mgs1bleep.snt", "Player", 1.0f , false);
And if I did what I did with Carly Rae, this would play the alert sound a guard makes from Metal Gear Solid when he spots Snake.