Hpl2:HPL2/Tutorials/CustomSounds

From Frictional Wiki
Revision as of 13:40, 24 July 2020 by Darkfire (talk | contribs) (Darkfire moved page Hpl2:Tutorials:script:page to Hpl2:Tutorials:script:CustomSounds without leaving a redirect: Generic location)
Jump to navigation Jump to search

How to add Custom Sounds?

Hello! Stepper321 (And friends) here, i'm gonna teach you how to add custom sounds!


Having the sounds

First you'll need a sound-editting program, you can do this by using [1]] (Recommended) [2] or [Sony Vegas (Not free)


The sounds need to be in .ogg format, If your soundfiles are formatted as .MP3, .WAV or anything else, you may use one of the said above programs to convert your soundfile of choice to an . ogg file format.


For my example, my script file is called tutorial.txt, and the sound is door.ogg.

Placing the sounds in the right folder

You need to go to your custom story folder and create a new folder called: “sounds” and in that folder an: “extrasounds” folder. In there you place the tutorial.ogg file.
(You can name it what ever you want.)

Making the sound work in Amnesia

Create a .txt file and name it the name of your sound's Script, open it with any Text Editor you use. I use [=notepad Notepad++]. I named my file tutorial.txt.

In the file, you can edit quite a few things, and among them is..Adding your sound-file into the script! And since my sound file is door.ogg, It shall go to the MAIN section. Random soundfiles will be covered later on.

<SOUNDENTITY>
 <SOUNDS>
   <Main>
      <Sound File="door.ogg" />
   	</Main>
   </SOUNDS>
   <PROPERTIES Volume="5" MinDistance="1" MaxDistance="50" Random="0" Interval="0" FadeEnd="False" FadeStart="False" Stream="False" Loop="False" Use3D="false" Blockable="False" BlockVolumeMul="0.7" Priority="5" />
</SOUNDENTITY>

Maybe you're asking, what the hell is all of this? I will explain :

<SOUNDENTITY > is the start of the sound file to know what it will play, it can only have one. (Like the extra_english file you have normally in your Custom Story :))

<SOUNDS > is the sound what it will play

<Main > is the main sound it will play, i don't know if there exist other categories for that. But use it

<Sound File =" YourFileName.ogg" /> is the sound file it will play, if you add multiple sound files, it will play the sounds randomly.

<PROPERTIES > Are all the options you may use to decide how the sound will behave in-game, like MinDistance is what distance you have to be in to hear it, since 1 is the players exact size, You will hear the sound perfectly if you stand on it. Beyond that, you will be able to hear the sound until the distance specified in MaxDistance, I don't know exactly but I think that "1" distance is a meter, excuse me if i'm wrong :). (Probably an inch, a person 1 meter in width? Needs to be confirmed)

Well thats it! You now created your very own sound! Use it with PlaySoundAtEntity(syntax) in your custom level-script; (check Engine scripts to know what syntax to use)

Custom Music

Custom musics are exactly the same steps as the custom sounds. But you won't need an .snt file created as long as you do it with PlayMusic(syntax); or at the credits.


Prepare your .ogg file with the same steps as the Custom Sounds.


Create a new folder called "music" and in the 'music' folder one that's called "extramusic" put it in there. (Again, you may name it whatevas you want)


Now use PlayMusic (Syntex); (check Engine scripts to know what syntax to use)


Now maybe you're thinking that you could use this like a sound effect? Well ; NOPE. Music has only two "layers" (Priorities). 0 and 1. I.E: onlyone can play at once.


If 1 is not__ specified, track 0 will play. If 1__is specified, ONLY "1" will play.
(You can use that to suddenly or smoothly fade-stop a track in it's place, initiate a different track for your scene, and than resume the previous track. Pretty much what happens when a grunt chases you; only that is automatic!)



Send suggestions for tutorials to my forum account by Personal Messaging me at this link: Stepper321's personal forum account.
(Everything is in good will, Stepper, your guide was quite incoherent. Cheers for the initiative ~Yer wiki-friends.)