Adding New Custom Sounds


 

 

This page is for registering and setting up your custom sounds in your missions.

Why we have to do this, is because Graw2 doesn't allow custom sound mods like custom props. Why not? I can't work it out. I've spent 2-3 months on and off, and the only way I can get it to work is in the editor. Don't get me wrong, it does work in game but the problem is you can only have 1 sound mod working at a time in game but all the sounds in the editor??? So the best way I can get everyone to have new custom sounds in their new missions, is to have one mod that everyone downloads, and this is why we have to register. Such as life, the most easiest thing is the simplest thing. This means no big fancy scripting, just register and some small scripting.

 

So to explain how this works is simple -

First you must register, the next available slot,

Ie.

sound rego 1 = Radiator (Radiator = sound_rego_1.xml)

sound rego 2 = Davros (Davros = sound_rego_2.xml)

sound rego 3 = Bogie (Bogie = sound_rego_3.xml)

sound rego 4 = John (John = sound_rego_4.xml)

sound rego 5 = Spike (Spike = sound_rego5.xml)

sound rego 6 = YOUR NAME (so you will have = sound_rego_6.xml)

sound rego 7 =

 

 REGISTER HERE

 

There are 2 parts to setup.:- One in side the bundle and the other out side the bundle.

 

Part-1 ( out side the bundle)

First you add 2 XML files to your "local/english/sound" folder, they are (settings.xml & custom_sounds.xml). The settings.xml file over rights the original sounds in Graw2, it loads all the original sounds and then it looks at the new sounds in the custom_sounds.xml. In the custom_sounds.xml, I've added 100 pre-registered sounds. These files CAN NOT BE ALTERED, and are identified by rego_1, rego_2, rego_3 and so on up to rego_100.

 

What happens next is  the custom_sounds.xml looks at a sound_rego_XXX.xml that you are registered to (Ie.I am registered to #1 so I renamed my xml to sound_rego_1.xml) This sound_rego_XXX.xml that you are registered to, will need to be added to the "local/english/sound" folder along with the settings.xml & custom_sounds.xml files. Then this "sound_rego_XXX.xml looks in your bundle file. 

 

So for me I have:-

local/english/sound/settings.xml (this xml points to custom_sounds.xml)

local/english/sound/custom_sounds.xml (this xml points to sound_rego_XXX.xml)

local/english/sound/sound_rego_1.xml (this points to all of your sound folder within each of your mission bundles)

 

SCRIPTING:-

I'll use me as a example for the setups

YOU MUST NOT USE MY REGO NUMBER - THIS IS TO HELP YOU UNDERSTAND - YOU MUST USE YOUR REGO NUMBER - 

 

 

You have downloaded a file "sound_rego_XXX.xml" .

Then you rename it to your number ( sound_rego_XXX.xml rename to sound_rego_1xml )

Open your sound_rego_XXX.xml in side it, it should look like this.

 

<?xml version="1.0" encoding="iso-8859-1"?> 

<sound_rego_XXXxmlns:xi="x"> 

    <wavebanks> 

  <xi:include href="/..\sound\YOURNAME_sounds_mission_1.xml#xpointer(/YOURNAME_sounds_mission_1/wavebanks/*)"/>

  <xi:include href="/..\sound\YOURNAME_sounds_mission_2.xml#xpointer(/YOURNAME_sounds_mission_2/wavebanks/*)"/>

  <xi:include href="/..\sound\YOURNAME_sounds_mission_3.xml#xpointer(/YOURNAME_sounds_mission_3/wavebanks/*)"/>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

 <xi:include href="/..\sound\YOURNAME_sounds_mission_99.xml#xpointer(/YOURNAME_sounds_mission_99/wavebanks/*)"/>

 <xi:include href="/..\sound\YOURNAME_sounds_mission_100.xml#xpointer(/YOURNAME_sounds_mission_100/wavebanks/*)"/>

    </wavebanks> 

 

    <soundbanks> 

 <xi:include href="/..\sound\YOURNAME_sounds_mission_1.xml#xpointer(/YOURNAME_sounds_mission_1/soundbanks/*)"/>

 <xi:include href="/..\sound\YOURNAME_sounds_mission_.2xml#xpointer(/YOURNAME_sounds_mission_2/soundbanks/*)"/>

 <xi:include href="/..\sound\YOURNAME_sounds_mission_.3xml#xpointer(/YOURNAME_sounds_mission_3/soundbanks/*)"/>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 <xi:include href="/..\sound\YOURNAME_sounds_mission_.99xml#xpointer(/YOURNAME_sounds_mission_99/soundbanks/*)"/>

 <xi:include href="/..\sound\YOURNAME_sounds_mission_.100xml#xpointer(/YOURNAME_sounds_mission_100/soundbanks/*)"/>

    </soundbanks> 

</sound_rego_XXX

 

You must rename 2 things.

 

(1) Rename the open and closing tags to your rego number

<sound_rego_XXXxmlns:xi="x">  to <sound_rego_1xmlns:xi="x">

</sound_rego_XXX>  to </sound_rego_1>

 

(2) Rename all the YOURNAME_ to your name. 

  <xi:include href="/..\sound\YOURNAME_sounds_mission_1.xml#xpointer(/YOURNAME_sounds_mission_1/wavebanks/*)"/>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  <xi:include href="/..\sound\YOURNAME_sounds_mission_2.xml#xpointer(/YOURNAME_sounds_mission_2/soundbanks/*)"/>

 

 TO

 

  <xi:include href="/..\sound\radiator_sounds_mission_1.xml#xpointer(/radiator_sounds_mission_1/wavebanks/*)"/>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  <xi:include href="/..\sound\radiator_sounds_mission_2.xml#xpointer(/radiator_sounds_mission_2/soundbanks/*)"/>

 

There are 200 to change. 

 

I use Window Excel to change all the YOURNAME to radiator.

 

Part one is all done.

========================================================================================

 

Part two. ( in the bundle or where your new mission files are keeped)

 

So to explain how this part works, you need three (3) XML files ( YOUR NAME HERE_sounds_mission_XXX_xml , YOUR MISSION_custom_wave_xml and YOUR MISSION_custom_sound_xml) you place these .xml files in your data/sound folder and to help make your first custom sounds to work in Graw2 and I add a .wav file too .

(test_code_word_irene.wav) add this to data/sound as well.

 

We'll start with "YOUR NAME HERE_sounds_mission_XXX_xml",

This xml just looks at "YOUR MISSION_custom_wave_xml" and "YOUR MISSION_custom_sound_xml" It doesn't really do anything, apart from stops anyone or everyone conflicting with your sounds.

 

SCRIPTING

 

Change YOUR NAME HERE to YOUR NAME.

( ie. YOUR NAME HERE_sounds_mission_XXX_xml = radiator_sounds_mission_XXX_xml)

 

Then you change the mission number  (XXX) to your number for that mission.

 

This is where you have to keep a record of your missions so they don't conflict with each other, what this means is you have 100 premade missions with sounds. so you can't use "YOUR NAME HERE_mission_01_sounds.xml" for every mission. You have to change the number for every new mission.

YOUR NAME HERE_mission_02_sounds.xml,  YOUR NAME HERE_mission_03_sounds.xml and so on....

For me ie. My first mission is BlackHawkDown, So I use "radiator_mission_01_sounds.xml" and my second mission I use "radiator_mission_02_sounds.xml" and so on for the third and forth missions.

I also have a file with a record of my missions to sound XML's. I have three (3) missions with sounds in them.

 

           RADIATOR'S MISSION RECORD

(1) radiator_sounds_mission_01_xml = BlackHawkDown

(2) radiator_sounds_mission_02_xml = PearlHarbour

(3) radiator_sounds_mission_03_xml = HeavyDown

(4) radiator_sounds_mission_04_xml =

(5) radiator_sounds_mission_05_xml =

and so on......................

 

You can download this file if you like to.

 

( ie. YOUR NAME HERE_sounds_mission_XXX_xml = radiator_sounds_mission_01_xml)

 

 

open the file (YOUR NAME HERE_sounds_mission_XXX_xml ) in side it you will have to change three (3) things.

 

(1) Rename the open and closing tags from "YOUR NAME HERE" to "your name" ( this must be the same as the name you have given the xml file name)

(2) Rename the mission number (XXX) to the same as the xml file as well

(3) Rename YOUR MISSION to the name of your mission

 

It should look like this.( I'll use my first mission as an example)

 

<YOUR NAME HERE_sounds_mission_XXX xmlns:xi="x">

    <wavebanks>

       <wavebank path="data\sound\YOUR MISSION_custom_wave.xml"/>

    </wavebanks>

    <soundbanks>

        <soundbank path="data\sound\YOUR MISSION_custom_sound.xml"/>

    </soundbanks>

</YOUR NAME HERE_sounds_mission_XXX>

 

To

 

The xml file "radiator_sounds_mission_01_xml"

 

<radiator_sounds_mission_01 xmlns:xi="x">

    <wavebanks>

       <wavebank path="data\sound\rad_blackhawkdown_custom_wave.xml"/>

    </wavebanks>

    <soundbanks>

        <soundbank path="data\sound\rad_blackhawkdown_custom_sound.xml"/>

    </soundbanks>

</radiator_sounds_mission_01>

 

Done.

 

The next two (2) XML's which are "YOUR MISSION_custom_wave_xml" and "YOUR MISSION_custom_sound_xml" 

 

We'll start with YOUR MISSION_custom_wave_xml, the purpose of this xml file is to tell GRAW the names of the sounds and where the wave files (the new recorded sounds) are kept (which folder)

 

SCRIPTING

 

Rename YOUR MISSION to the name of your mission ( the same as before rad_blackhawkdown)

ie.. for me I changed "YOUR MISSION_custom_wave_xml" to rad_blackhawkdown_custom_wave_xml

 

open the file, it will look like this.

 

<wavebank name="YOUR MISSION_custom_wave" dir="data/sound" xmlns:xi="x">

    <wave name="YOUR SOUND NAME" file="THE WAV FILE NAME.wav" stream="true" />

</wavebank>

 

Before we start here you should have the test_code_word_irene.wav file in your data/sound folder.

 

The first line "wavebank name=" This is name of the new group of .wav sounds that you are going load when you start up GRAW 2, it can be named what ever but it's should be named the same as your mission name.

"dir=" this is the path where the .wav files are kept.

 

Rename YOUR MISSION to your mission name

 

ie.. <wavebank name="YOUR MISSION_custom_wave" dir="data/sound" xmlns:xi="x"> 

TO

<wavebank name="rad_blackhawkdown_custom_wave" dir="data/sound" xmlns:xi="x">

 

The second line, 

"wave name=" this is the name of the sound that your "YOUR MISSION_custom_sound_xml" will look for.

"file=" this is the .wav file that's linked to the "wave name="

 

For eg. you can name  the "wave name=" rad_blackhawk_code_word_irene and the .wav file can be test_code_word_irene , a differant name.

 

    <wave name="rad_blackhawk_code_word_irene" file="test_code_word_irene.wav" stream="true" />

 

But that way can get confusing, it's should be named the same. ie. the .wav file that you downloaded, it's name is "test_code_word_irene.wav " so the "wave name" and the "file name" should be named the same.

   <wave name="test_code_word_irene " file="test_code_word_irene.wav " stream="true" />

 

So for me,  I have renamed the .wav file to "rad_blackhawkdown_code_word_irene.wav" so I will have,

   <wave name="rad_blackhawkdown_code_word_irene " file="rad_blackhawkdown_code_word_irene.wav " stream="true" /> 

 

But for now you just change:-   

 

<wave name="YOUR SOUND NAME" file="THE WAV FILE NAME.wav" stream="true" />   

TO    

<wave name="test_code_word_irene " file="test_code_word_irene.wav " stream="true" />

 

All done, you can add as many wave files and names as you like. 

 

This is what I have in my BlackHawkDown map

 

 "rad_blackhawkdown_custom_wave_xml"

 

<wavebank name="rad_blackhawkdown_custom_wave" dir="data/sound" xmlns:xi="x">

    <wave name="blackhawk_credits" file="blackhawk_credits.wav" stream="true" />

    <wave name="blackhawk_code_word_irene" file="blackhawk_code_word_irene.wav" stream="true" />

    <wave name="blackhawk_code_word_1545" file="blackhawk_code_word_1545.wav" stream="true" />

    <wave name="blackhawk_end" file="blackhawk_end.wav" stream="true" />

    <wave name="blackhawk_intro" file="blackhawk_intro.wav" stream="true" />

    <wave name="blackhawk_non_smoking_flight" file="blackhawk_non_smoking_flight.wav" stream="true" />

    <wave name="blackhawk_leave_behind" file="blackhawk_leave_behind.wav" stream="true" />

    <wave name="key_pad_01" file="key_pad_01.wav" stream="true" />

    <wave name="key_pad_02" file="key_pad_02.wav" stream="true" />

    <wave name="key_pad_03" file="key_pad_03.wav" stream="true" />

    <wave name="key_pad_04" file="key_pad_04.wav" stream="true" />

    <wave name="key_board_01" file="key_board_01.wav" stream="true" />

    <wave name="key_board_02" file="key_board_02.wav" stream="true" />

    <wave name="blackhawk_ready_4_extraction" file="blackhawk_ready_4_extraction.wav" stream="true" />

    <wave name="blackhawk_gun_fight" file="blackhawk_gun_fight.wav" stream="true" />

    <wave name="blackhawk_gun_fight_01" file="blackhawk_gun_fight_01.wav" stream="true" />

    <wave name="blackhawk_gun_fight_02" file="blackhawk_gun_fight_02.wav" stream="true" />

    <wave name="blackhawk_gun_fight_03" file="blackhawk_gun_fight_03.wav" stream="true" />

    <wave name="blackhawk_gun_fight_04" file="blackhawk_gun_fight_04.wav" stream="true" />

    <wave name="blackhawk_stabilize" file="blackhawk_stabilize.wav" stream="true" />

    <wave name="radio_chatter01" file="radio_chatter01.wav" quality="11025 adpcm" size_before="50560" size="6504" compression="12 %" bank="blackhawk_wave.bank" offset="445752"/>

    <wave name="radio_chatter02" file="radio_chatter02.wav" quality="11025 adpcm" size_before="116290" size="14856" compression="12 %" bank="blackhawk_wave.bank" offset="452256"/>

    <wave name="radio_chatter03" file="radio_chatter03.wav" quality="11025 adpcm" size_before="94096" size="12012" compression="12 %" bank="blackhawk_wave.bank" offset="467112"/>

    <wave name="radio_chatter04" file="radio_chatter04.wav" quality="11025 adpcm" size_before="106106" size="13560" compression="12 %" bank="blackhawk_wave.bank" offset="479124"/>

    <wave name="radio_chatter05" file="radio_chatter05.wav" quality="11025 adpcm" size_before="38744" size="4992" compression="12 %" bank="blackhawk_wave.bank" offset="492684"/>

    <wave name="radio_chatter06" file="radio_chatter06.wav" quality="11025 adpcm" size_before="109232" size="13956" compression="12 %" bank="blackhawk_wave.bank" offset="497676"/>

    <wave name="radio_chatter07" file="radio_chatter07.wav" quality="11025 adpcm" size_before="130524" size="16656" compression="12 %" bank="blackhawk_wave.bank" offset="511632"/>

    <wave name="radio_chatter08" file="radio_chatter08.wav" quality="11025 adpcm" size_before="77872" size="9960" compression="12 %" bank="blackhawk_wave.bank" offset="528288"/>

    <wave name="radio_chatter09" file="radio_chatter09.wav" quality="11025 adpcm" size_before="76970" size="9852" compression="12 %" bank="blackhawk_wave.bank" offset="538248"/>

    <wave name="radio_chatter10" file="radio_chatter10.wav" quality="11025 adpcm" size_before="77356" size="9888" compression="12 %" bank="blackhawk_wave.bank" offset="548100"/>

    <wave name="computer_running" file="computer_running.wav" stream="true" />

    <wave name="computer_startup" file="computer_startup.wav" stream="true" />

    <wave name="computer_shutdown" file="computer_shutdown.wav" stream="true" />

    <wave name="code_red" file="code_red.wav" stream="true" />

    <wave name="access_granted" file="access_granted.wav" stream="true" />

    <wave name="access_denied" file="access_denied.wav" stream="true" />

    <wave name="activation_code_req" file="activation_code_req.wav" stream="true" />

    <wave name="_start01" file="_start01.wav" size_before="11394" size="2976" compression="26 %" bank="f15_speech_wave.bank" offset="0"/>

    <wave name="_end01" file="_end01.wav" size_before="11980" size="3120" compression="26 %" bank="f15_speech_wave.bank" offset="2976"/>

    <wave name="vox_ans_aac_lsk_f15_nnn_01" file="vox_ans_aac_lsk_f15_nnn_01.wav" size_before="133322" size="16836" compression="12 %" bank="f15_speech_wave.bank" offset="6096"/>

    <wave name="vox_ans_sak_lsk_f15_nnn_01" file="vox_ans_sak_lsk_f15_nnn_01.wav" size_before="285978" size="36168" compression="12 %" bank="f15_speech_wave.bank" offset="52080"/>

    <wave name="vox_fbk_imm_nnn_f15_nnn_01" file="vox_fbk_imm_nnn_f15_nnn_01.wav" size_before="262428" size="33180" compression="12 %" bank="f15_speech_wave.bank" offset="117936"/>

    <wave name="bhd_wind_strong" file="bhd_wind_strong.wav" stream="true" />

    <wave name="bhd_winds_whiney" file="bhd_winds_whiney.wav" stream="true" />

    <wave name="ambience_military_war_lo01" file="ambience_military_war_lo01.wav" quality="22050 adpcm" size_before="2102074" size="291120" compression="13 %" bank="ambience_military_war_wave.bank" offset="0"/>

    <wave name="ambience_military_war_lo02" file="ambience_military_war_lo02.wav" quality="22050 adpcm" size_before="2274720" size="314664" compression="13 %" bank="ambience_military_war_wave.bank" offset="291120"/>

    <wave name="ambience_military_war_lo03" file="ambience_military_war_lo03.wav" quality="22050 adpcm" size_before="2314990" size="320604" compression="13 %" bank="ambience_military_war_wave.bank" offset="605784"/>

    <wave name="ambience_park_night_lo01" file="ambience_park_night_lo01.wav" quality="22050 adpcm" size_before="2892442" size="366432" compression="12 %" bank="ambience_park_night_wave.bank" offset="0"/>

    <wave name="ambience_park_night_lo02" file="ambience_park_night_lo02.wav" quality="22050 adpcm" size_before="2892442" size="366432" compression="12 %" bank="ambience_park_night_wave.bank" offset="366432"/>

    <wave name="ambience_park_night_lo03" file="ambience_park_night_lo03.wav" quality="22050 adpcm" size_before="2892442" size="366432" compression="12 %" bank="ambience_park_night_wave.bank" offset="732864"/>

</wavebank>

 

That's all for "YOUR MISSION_custom_wave_xml" lets move to the last XML."YOUR MISSION_custom_sound_xml"

 

This xml tells the game how to play the .wav sounds in game.   

There are many ways to have this, player sound - world sound - location sound - large props - small props and so on....

And a lot of them are very unstable if you play a long sound ( ie.. if we set up a sound as a small prop, lets say a long music song is playing on a radio and you fire your gun., the sound crashes and stops playing)

 

So the two I found that are the best is, world and large props sounds.

The world sounds will play the sounds for everyone at the same time.

And the large props sounds are played at a location, which the size of the location can be alted ( 1 metre to 100 or more metres)

 

SCRIPTING - "YOUR MISSION_sound_xml"

The same as before -

Rename the xml fileYOUR MISSION_custom_sound_xml to your mission name ( ie.. "YOUR MISSION_custom_sound_xml" to "rad_blackhawkdown_custom_sound_xml")

 

Open the file, it should look like this.

I'll give you two (2) different ways to have the sounds, one is a world sound (ambient_loop) and the second is a location sound (large_props)

 

<soundbank name="YOUR MISSION_custom_sound" default_wavebank="YOUR MISSION_custom_wave" xmlns:xi="x">

 

    <sound name="test_world_sound" group="ambient_loop" zero_distance="10.0" pitch="0" positioning="2d" attenuation="none" occlusion="false" reference_distance="1.0" loop="false" gain="10">

        <wave name="test_code_word_irene"/>

    </sound>

 

    <sound name="test_location_sound" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="5" loop="false" gain="10">

        <wave name="test_code_word_irene"/>

    </sound>

 

</soundbank>

 

We will not do any scripting with this one, It's setup to work.

 

I will just explain how to set it up.

 

"sound name="this is the name of the sound that you'll see in the editor

"group=" this is how the sound is played, there are 9 or so different ways they can be played, but some are unstable and there is really only four (4) you can use.

They are:-

(1) small props :- this has a sound radius of around 5 metres and is unstable with long playing sounds ie.. music sounds . (this is a location sound)

(2) Large Props :- this has a sound radius of around 25 metres and is very stable. (this is a location sound)

(3) narcom:- this has NO sound radius and is played to a side (ie. team "a" or team "b") and plays 90% of the time with no problems.

(4) ambient_loop :- This is a world sound that everyone can hear, it has no radius. This is a very stable sound.

 

I would NOT use number three (3) , most of the time COOP type games have only one (1) side anyway, So I would use number four (4) ambient_loop to play for everyone

I would also NOT use number one (1) Small Props this is very unstable with long playing sounds and there is no need for this type of sound, because which bring me to the next part

 

"zero_distance=" This set the distance from the centre point how far you hear the sound, This is why you don't need small props. you can have the large props playing a sound, 1 or 5 metre radius from the centre, just like a small props.

 

"has_custom_distances=" this must be set to true for large props. 

 

"positioning=" this can be "2d" or "3d", I found that "2d" works better. 

 

"loop=" this can be "true" or "false" if this is set to true the sound will play over and over again.

 I have some of my sounds set to true, for eg.. In BlackHawkDown in the computer room, the computer sounds are playing over and over and I can stop and start them playing from with in the mission.XML . I will explain this later in sound and mission editing

 

"gain=" this is your volume control and can be set from -25 to 25. if you can just hear the sound in game,and you have the gain set to 5. You can turn the sound up by changing the number to 10.

 

the second line " <wave name="test_code_word_irene"/>

This is the name of the sound, that plays. and this name comes from your custom_wave.XML

("YOUR MISSION_custom_wave_xml"

<wave name="YOUR SOUND NAME" file="THE WAV FILE NAME.wav" stream="true" />).

 

 

That's all you need for setting up your LARGE_PROPS.

 

AMBIENT_LOOP also known as world sounds - There is not much you need to change with this one, apart from the "gain" and "loop" 

 

Here's what I have in my  "rad_blackhawkdown_custom_sound_xml"

 

<?xml version="1.0" encoding="iso-8859-1"?>

<soundbank name="rad_blackhawkdown_custom_sound" default_wavebank="rad_blackhawkdown_custom_wave" xmlns:xi="x">

    <sound name="blackhawk_credits" group="ambient_loop" zero_distance="10.0" pitch="0" loop="false" positioning="2d" attenuation="none" occlusion="false" reference_distance="1.0">

        <wave name="blackhawk_credits"/>

    </sound>

    <sound name="blackhawk_code_word_irene" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="5" loop="false" gain="10">

        <wave name="blackhawk_code_word_irene"/>

    </sound>

    <sound name="blackhawk_code_word_1545" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="5" loop="false" gain="10">

        <wave name="blackhawk_code_word_1545"/>

    </sound>

    <sound name="blackhawk_end" group="ambient_loop" zero_distance="10.0" pitch="0" gain="2" loop="true" positioning="2d" attenuation="none" occlusion="false" reference_distance="1.0">

        <wave name="blackhawk_end"/>

    </sound>

    <sound name="blackhawk_mp_intro" group="ambient_loop" zero_distance="10.0" pitch="0" loop="false" positioning="2d" attenuation="none" occlusion="false" reference_distance="1.0">

        <wave name="blackhawk_end"/>

    </sound>

    <sound name="blackhawk_intro" group="ambient_loop" zero_distance="10.0" pitch="0" loop="false" positioning="2d" attenuation="none" occlusion="false" reference_distance="1.0">

        <wave name="blackhawk_intro"/>

    </sound>

    <sound name="blackhawk_non_smoking_flight" group="large_props"  has_custom_distances="true" positioning="2d" zero_distance="30" loop="false" gain="3">

        <wave name="blackhawk_non_smoking_flight"/>

    </sound>

    <sound name="blackhawk_leave_behind" group="large_props"  has_custom_distances="true" positioning="3d" zero_distance="300" loop="false" gain="5">

        <wave name="blackhawk_leave_behind"/>

    </sound>

    <sound name="key_pad" group="small_props" has_custom_distances="false" positioning="2d" zero_distance="5.0"  gain="-10" random_pitch="1">

        <wave name="key_pad_01"/>

        <wave name="key_pad_02"/>

        <wave name="key_pad_03"/>

        <wave name="key_pad_04"/>

    </sound>

    <sound name="key_board" group="small_props" has_custom_distances="false" positioning="2d" zero_distance="5.0"  gain="-10" random_pitch="1">

        <wave name="key_board_01"/>

        <wave name="key_board_02"/>

    </sound>

    <sound name="blackhawk_gun_fight" group="ambient_loop" zero_distance="10.0" pitch="0" loop="false" positioning="2d" attenuation="none" occlusion="false" gain="-5.0">

        <wave name="blackhawk_gun_fight"/>

    </sound>

    <sound name="blackhawk_stabilize" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="60" loop="false" gain="10">

        <wave name="blackhawk_stabilize"/>

    </sound>

    <sound name="blackhawk_ready_4_extraction" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="60" loop="false" gain="0.0">

        <wave name="blackhawk_ready_4_extraction"/>

    </sound>

    <sound name="blackhawk_radio_chatter_cue" category="lower_during_narcom" group="large_props" has_custom_distances="true" zero_distance="10" gain="-20">

        <wave name="radio_chatter02"/>

        <wave name="radio_chatter03"/>

        <wave name="radio_chatter04"/>

        <wave name="radio_chatter05"/>

        <wave name="radio_chatter06"/>

        <wave name="radio_chatter07"/>

        <wave name="radio_chatter08"/>

        <wave name="radio_chatter09"/>

        <wave name="radio_chatter10"/>

        <silent weight="10.0"/>

        <silent weight="10.0"/>

    </sound>

    <sound name="blackhawk_radio_chatter" category="lower_during_narcom" group="large_props" has_custom_distances="true" zero_distance="5" loop="true">

        <sequence>

            <wait min="2" max="5"/>

            <sound name="blackhawk_radio_chatter_cue"/>

        </sequence>

    </sound>

    <sound name="computer_startup" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="25" loop="false" gain="-10">

        <wave name="computer_startup"/>

    </sound>

    <sound name="computer_shutdown" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="25" loop="false" gain="-10">

        <wave name="computer_shutdown"/>

    </sound>

    <sound name="computer_running" group="large_props" has_custom_distances="true"  loop="true" positioning="2d" zero_distance="25"  gain="-10">

        <wave name="computer_running"/>

    </sound>

    <sound name="code_red" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="20" loop="false" gain="-1.0">

        <wave name="code_red"/>

    </sound>

    <sound name="access_granted" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="20" loop="false" gain="-1.0">

        <wave name="access_granted"/>

    </sound>

    <sound name="access_denied" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="20" loop="false" gain="-1.0">

        <wave name="access_denied"/>

    </sound>

    <sound name="activation_code_req" group="large_props" has_custom_distances="true" positioning="2d" zero_distance="20" loop="false" gain="-1.0">

        <wave name="activation_code_req"/>

    </sound>

    <sound name="bh_start" group="ambient_loop" has_custom_distances="true" positioning="2d"  attenuation="none" zero_distance="20" loop="false" gain="-10.0">

        <wave name="_start01"/>

    </sound>

    <sound name="bh_end" group="ambient_loop" has_custom_distances="true" positioning="2d"  attenuation="none" zero_distance="20" loop="false" gain="-10.0">

        <wave name="_end01"/>

    </sound>

    <group name="bh_airstrike_complete">

    <sound name="bh_airstrike_complete_cue" group="ambient_loop" has_custom_distances="true" positioning="2d"  attenuation="none" zero_distance="20" loop="false" gain="-15.0">

        <wave name="vox_ans_aac_lsk_f15_nnn_01"/>

    </sound>

    <sound name="bh_airstrike_complete" group="ambient_loop" has_custom_distances="true" positioning="2d" attenuation="none" zero_distance="20" loop="false" gain="-15.0">

            <queue>

                <sound name="bh_start"/>

                <sound name="bh_airstrike_complete_cue"/>

                <sound name="bh_end"/>

            </queue>

    </sound>

    </group>

    <group name="bh_attack_order_received">

    <sound name="bh_attack_order_received_cue" group="ambient_loop" has_custom_distances="true" positioning="2d" attenuation="none" zero_distance="20" loop="false" gain="-15.0">

        <wave name="vox_ans_sak_lsk_f15_nnn_01"/>

    </sound>

    <sound name="bh_attack_order_received" group="ambient_loop" has_custom_distances="true" positioning="2d" attenuation="none" zero_distance="20" loop="false" gain="-15.0">

            <queue>

                <sound name="bh_start"/>

                <sound name="bh_attack_order_received_cue"/>

                <sound name="bh_end"/>

            </queue>

    </sound>

    </group>

    <group name="bh_airstrike_incoming">

    <sound name="bh_airstrike_incoming_cue" group="ambient_loop" has_custom_distances="true" positioning="2d" attenuation="none" zero_distance="20" loop="false" gain="-15.0">

        <wave name="vox_fbk_imm_nnn_f15_nnn_01"/>

    </sound>

    <sound name="bh_airstrike_incoming" group="ambient_loop" has_custom_distances="true" positioning="2d" attenuation="none" zero_distance="20" loop="false" gain="-15.0">

            <queue>

                <sound name="bh_start"/>

                <sound name="bh_airstrike_incoming_cue"/>

                <sound name="bh_end"/>

            </queue>

    </sound>

    </group>

    <sound name="blackhawk_gun_shots_cue" group="ambient_loop" has_custom_distances="false" positioning="2d" zero_distance="10.0"  gain="-10.0" random_pitch="1" attenuation="none" occlusion="false" reference_distance="1.0">

        <wave name="blackhawk_gun_fight_01"/>

        <wave name="blackhawk_gun_fight_02"/>

        <wave name="blackhawk_gun_fight_03"/>

        <wave name="blackhawk_gun_fight_04"/>

        <silent weight="15.0"/>

        <silent weight="15.0"/>

    </sound>

    <sound name="blackhawk_gun_shots"  group="ambient_loop" has_custom_distances="false" positioning="2d" zero_distance="10.0"  gain="-15.0" random_pitch="1" attenuation="none" occlusion="false" reference_distance="1.0"  loop="true">

        <sequence>

            <wait min="15" max="20"/>

            <sound name="blackhawk_gun_shots_cue"/>

        </sequence>

    </sound>

   <sound name="bhd_wind_strong" group="ambient_loop" zero_distance="10.0" pitch="0" loop="true" positioning="2d" attenuation="none" occlusion="false" reference_distance="10" gain="-15.0">

        <wave name="bhd_wind_strong"/>

    </sound>

    <sound name="bhd_winds_whiney" group="large_props"  has_custom_distances="true" positioning="2d" zero_distance="20" loop="true" gain="-10.0">

       <wave name="bhd_winds_whiney"/>

    </sound>

 

    <sound name="bhd_loop01" group="ambient_loop" zero_distance="5000" pitch="0" gain="-23" loop="true" positioning="2d" attenuation="none" occlusion="false" reference_distance="500">

        <wave name="ambience_military_war_lo03"/>

    </sound>

    <sound name="bhd_loop02" group="ambient_loop" zero_distance="5000" pitch="0" gain="-20" loop="true" positioning="2d" attenuation="none" occlusion="false" reference_distance="500">

        <wave name="ambience_park_night_lo03"/>

    </sound>

</soundbank>

 

 

You can see there are different ways I setup the sounds  ie..

       <wave name="blackhawk_gun_fight_01"/>

        <wave name="blackhawk_gun_fight_02"/>

        <wave name="blackhawk_gun_fight_03"/>

        <wave name="blackhawk_gun_fight_04"/>

        <silent weight="15.0"/>   

        <silent weight="15.0"/>      

 

        <sequence>

            <wait min="15" max="20"/>

            <sound name="blackhawk_gun_shots_cue"/>

        </sequence>

 

            <queue>

                <sound name="bh_start"/>

                <sound name="bh_attack_order_received_cue"/>

                <sound name="bh_end"/>

            </queue>

And I will explain this later, in sound and mission editing.

 

Well you are all finished, just start-up your graw2 editor, go to the sound tab and place a sound on your map. Then type in one at a time the two sounds "test_location_sound" "test_world_sound" in the sound cue tab .You must place the man on the map to hear the sounds.

You'll know if the sound works, because the sound location in the editor will go from gray to green.

 

When you send the map out for testing, they must download your bundle and the three XML files,

local/english/sound/settings.xml

local/english/sound/custom_sounds.xml

local/english/sound/sound_rego_XXXxml

They only have to download the three XML files once.

If they already have them. for ie..."settings.xml" "custom_sounds.xml" "sound_rego_01xml"("sound_rego_01xml" is all of radiators sounds) and John sends out a map they only have to download his sound pack ( (John = sound_rego_4.xml)

so they would have four XML files 

"settings.xml"

 "custom_sounds.xml"

 "sound_rego_01xml"

 "sound_rego_04xml

Now John and I can make 100 mission each and they don't have to download any XML file of our future missions.

 

SOUND AND MISSION EDITING

 

HAVE FUN

Rad....