Jump to content
Sign in to follow this  
Mark XIII (DayZ)

Arma 2 Sound Modding 101.

Recommended Posts

Hey guys! Since we haven't got our hands on Opticalsnare's soundmod yet with his distantsound-system I'll ask a question... :)

I saw some soundmods out there have a distantsound or a distantsnap-sound playing when they have in their weaponclass the line as this:

reloadSound[]= {"\anders_s_guns\snapfar_pkm.wss", db-15, 1, 2000};

How does this work? Isnt it suppose to play during a reload or something? Or does it play at every shot from the gun?

Can I use it for more than sniperrifles and machineguns?

The sound is set to be hearable at 2km right?

Would rlly like an explanation for this matter...

Sry for stupid english. :D

Share this post


Link to post
Share on other sites

It plays between each shot until your magazine gets empty (so you cant hear it after the last shot from the mag). I used this entry to add bolt action sound for M24 and KSVK, but thinking about adding seperate mechanism sounds for all weapons. Why I would not use this for distance snaps is because it plays after every tactical and empty reload.

Share this post


Link to post
Share on other sites

Exactly! This why I wasn't using this too! On may side, the problem is, you have to make the distancesound as short as the time BETWEEN the shots! Otherwise, I only hear it again, when the first sound is over....

Well, its an nice Idea to at mechanism stuff on such weapons, sounds of the flipping bolt or something like that, but not for this distance-stuff.

@anders, don't worry about your English! Just listen to me^^

Thanks so far,

Jarhead

PS: @Opticalsnare:

I wasn't reading this thread a wile ago, so whats about this stuff from you? It sounds really interesting so far. I guess every Soundmodder is getting REALLY exciting now :P

Jarhead

Share this post


Link to post
Share on other sites

Ok. Yah, havent heard from "mr. Make arma2 better than the developers-snare" in awhile.. Wonder how he's doing. :) throw in a word or two optical. Would be nice to know the status of your much appreciated work. ;)

Share this post


Link to post
Share on other sites

I want to work on the AGS17 on BTR and so on, but cannot find any entries on the CA so far, so I thought this is nearly the same like MK19 which is working well.

So i was trying this one:

class CfgWeapons

{

class MGun;

class AGS17: MGun

{

begin1[] = {"\JSRS_AGS\AGS_s1",1.77828,1,700};

begin2[] = {"\JSRS_AGS\AGS_s2",1.77828,1,700};

begin3[] = {"\JSRS_AGS\AGS_s3",1.77828,1,700};

begin4[] = {"\JSRS_AGS\AGS_s4",1.77828,1,700};

soundBegin[] = {"begin1",0.25,"begin2",0.25,"begin3",0.25,"begin4",0.25};

drySound[] = {"\JSRS_AGS\dry",0.000316228,1,10};

reloadMagazineSound[] = {"\JSRS_AGS\reload",0.0562341,1,10};

};

};

The sounds working fine, but when starting the game, there comes a error message saying: "error = creating weapon AGS17 with scope=private" .... What does this mean? Any ideas?

Thanks so far,

Jarhead

Share this post


Link to post
Share on other sites

Mal wieder n dankeschön an dich ;) Much thanks again! Always appreciated!

Jarhead

EDIT: that was the way I was trying it:

class CfgWeapons

{

class AGS30;

class AGS17: AGS30

Don't work, than:

class AGS_base;

class AGS30: AGS_base;

class AGS17: AGS30;

Don't work either... I'm a bit stuck right now :(

Edited by LordJarhead

Share this post


Link to post
Share on other sites

Heh, I think I will be visiting this thread more often, I'm having trouble with config for explosion sounds

Share this post


Link to post
Share on other sites
class CfgPatches
{
class JSRS_AGS17
{
 units[] = {};
 weapons[] = {};
 requiredVersion = 0.1;
 requiredAddons[] = {"CAWeapons"};
};
};
class CfgWeapons
{
class AGS30;
class AGS17: AGS30
{
//code
};
};

Share this post


Link to post
Share on other sites

EDIT

Haha^^ Forget about what I said. Thats the right way:

class Tracked_APC;

class BMP3 : Tracked_APC

Thanks...^^

PS: Thanks for the AGS config, its working fine ;)

Edited by LordJarhead

Share this post


Link to post
Share on other sites

Can any send me the login and password? I cannot get into the DH

Share this post


Link to post
Share on other sites

try with "guest" and "guest" as PW!

Well, at least I guess you mean YOUR Login ID..... otherwise I would say, just register! ^^

Share this post


Link to post
Share on other sites
try with "guest" and "guest" as PW!

Well, at least I guess you mean YOUR Login ID..... otherwise I would say, just register! ^^

Oh....., there's a register option? DOH!!:j:

Share this post


Link to post
Share on other sites

Hey, I need some help:

I want to make sounds for the UAZ, well they're already done, but the cfg whants to beat me:

};

class CfgVehicles

{

class Car;

class UAZ_Base: Car

{

soundEngineOnInt[] = {"\JSRS_UAZ\Int_Start",1,1};

This is my entry. Same as on the Humvee, which is working well, so this should work for the UAZ too I guess, but no, he says /CfgVehicle.Car: Undefined base class 'LandVehicle' ..

There is no LandVehicle entry in this! Way he is saying that? I tried with this too:

class CfgVehicles

{

class Land;

class LandVehicle: Land

class Car: LandVehicle

class UAZ_Base: Car

I getting a bit crazy here....

Jarhead

SOLVED*

Edited by LordJarhead

Share this post


Link to post
Share on other sites

ok i have something in my mind i wanted to know for a while now

i know there are a lot of limitations for soundmods due to the new soundengine

like internal and external sounds getting generated automatically (which is especially ennoying when you fire the M134 in the ASUV etc..) can you manipulate this aswell?

so there is this problem for soundmakers: you have like 5 different sound samples for an rifle but the engine only switches between them as soon as one sound has completely finished and otherwise you can only hear the same sound over again

so here is this curious thought in my mind: What about hitsounds? The are not limited like this, the switch even when the first one is not finished

Is there an difference in the config, or what?

I would really lie to know this

Share this post


Link to post
Share on other sites

Yah, there is an difference. The weapons splitted into firing modes (most of them) like this:

class Single: Mode_SemiAuto

{

begin1[] = {"\JSRS_AKM\AKM_s1",1.77828,1,1300};

begin2[] = {"\JSRS_AKM\AKM_s2",1.77828,1,1300};

begin3[] = {"\JSRS_AKM\AKM_s3",1.77828,1,1300};

begin4[] = {"\JSRS_AKM\AKM_s4",1.77828,1,1300};

soundBegin[] = {"begin1",0.25,"begin2",0.25,"begin3",0.25,"begin4",0.25};

The sounds are splitted into begins as you can see.

At the hits its looks like that:

hitMetalplate[] = {"soundMetalPlate1",0.1,"soundMetalPlate2",0.1,"soundMetalPlate3",0.1,"soundMetalPlate4",0.05,"soundMetalPlate5",0.05,"soundMetalPlate6",0.05,"soundMetalPlate7",0.1,"soundMetalPlate8",0.1,"soundMetalPlate9",0.1,"soundMetalPlate10",0.1,"soundMetalPlate11",0.1,"soundMetalPlate12",0.05};

So there are just the same, but at the hits, its not named "begins" but "sound**Material which getting hit**".

So to get to the point: As much as we would like it to do, we have no business in this. The game and the engine is making the switches between the sounds. At least this is the way I know about this. I tried to play around with that cfg stuff, without any results.

But I guess there are some way to do it. As well as the game is making strange unexpected differences between .wss sounds and lets say .mp3! Any one tried this? I made an weapons sound with an MP3 file, sounds extreme different to the wss.

Jarhead

Edited by LordJarhead

Share this post


Link to post
Share on other sites

Hey,

I have a problem with my AH64 config. I want to have all AH models in one config. Ah64 USMC, US (EP1) and BAF!

This is the config atm:

class CfgVehicles

{

class Air;

class Helicopter : Air

{

class Sounds;

};

class AH64_base_EP1;

class AH64D : AH64_base_EP1

{

soundEngineOnInt[] = {"JSRS_AH64\Int_Engine_Start",0.446684,1};

soundEngineOnExt[] = {"JSRS_AH64\Ext_Engine_Start",5.446684,1,400};

soundEngineOffInt[] = {"JSRS_AH64\Int_Engine_Stop",0.446684,1};

soundEngineOffExt[] = {"JSRS_AH64\Ext_Engine_Stop",0.446684,1,400};

soundDammage[] = {"JSRS_AH64\Alarm",1,1,1};

class Sounds

{

class Engine

{

sound[] = {"JSRS_AH64\Ext_Engine_Idle",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*((rotorSpeed-0.72)*4)";

};

class RotorLowOut

{

sound[] = {"JSRS_AH64\Ext_Engine_Low",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*(0 max (rotorSpeed-0.1))";

cone[] = {1.6,3.14,2,0.5};

};

class RotorHighOut

{

sound[] = {"JSRS_AH64\Ext_Engine_High",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*10*(0 max (rotorThrust-0.9))";

cone[] = {1.6,3.14,2,0.5};

};

class EngineIn

{

sound[] = {"JSRS_AH64\Int_Engine_Idle",5,1};

frequency = "rotorSpeed";

volume = "(1-camPos)*((rotorSpeed-0.75)*4)";

};

class RotorLowIn

{

sound[] = {"JSRS_AH64\Int_Engine_Low",10,1};

frequency = "rotorSpeed";

volume = "2*(1-camPos)*((rotorSpeed factor[0.3,1.1]) min (rotorSpeed factor[1.1,0.3]))";

};

class RotorHighIn

{

sound[] = {"JSRS_AH64\Int_Engine_High",1,1};

frequency = "rotorSpeed";

volume = "(1-camPos)*3*(rotorThrust-0.9)";

};

};

};

class AH64D_EP1 : AH64_base_EP1

{

soundEngineOnInt[] = {"JSRS_AH64\Int_Engine_Start",0.446684,1};

soundEngineOnExt[] = {"JSRS_AH64\Ext_Engine_Start",5.446684,1,400};

soundEngineOffInt[] = {"JSRS_AH64\Int_Engine_Stop",0.446684,1};

soundEngineOffExt[] = {"JSRS_AH64\Ext_Engine_Stop",0.446684,1,400};

class Sounds

{

class Engine

{

sound[] = {"JSRS_AH64\Ext_Engine_Idle",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*((rotorSpeed-0.72)*4)";

};

class RotorLowOut

{

sound[] = {"JSRS_AH64\Ext_Engine_Low",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*(0 max (rotorSpeed-0.1))";

cone[] = {1.6,3.14,2,0.5};

};

class RotorHighOut

{

sound[] = {"JSRS_AH64\Ext_Engine_High",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*10*(0 max (rotorThrust-0.9))";

cone[] = {1.6,3.14,2,0.5};

};

class EngineIn

{

sound[] = {"JSRS_AH64\Int_Engine_Idle",5,1};

frequency = "rotorSpeed";

volume = "(1-camPos)*((rotorSpeed-0.75)*4)";

};

class RotorLowIn

{

sound[] = {"JSRS_AH64\Int_Engine_Low",10,1};

frequency = "rotorSpeed";

volume = "2*(1-camPos)*((rotorSpeed factor[0.3,1.1]) min (rotorSpeed factor[1.1,0.3]))";

};

class RotorHighIn

{

sound[] = {"JSRS_AH64\Int_Engine_High",1,1};

frequency = "rotorSpeed";

volume = "(1-camPos)*3*(rotorThrust-0.9)";

};

};

};

class AH64D_Sidewinders : AH64D

{

soundEngineOnInt[] = {"JSRS_AH64\Int_Engine_Start",0.446684,1};

soundEngineOnExt[] = {"JSRS_AH64\Ext_Engine_Start",5.446684,1,400};

soundEngineOffInt[] = {"JSRS_AH64\Int_Engine_Stop",0.446684,1};

soundEngineOffExt[] = {"JSRS_AH64\Ext_Engine_Stop",0.446684,1,400};

class Sounds

{

class Engine

{

sound[] = {"JSRS_AH64\Ext_Engine_Idle",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*((rotorSpeed-0.72)*4)";

};

class RotorLowOut

{

sound[] = {"JSRS_AH64\Ext_Engine_Low",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*(0 max (rotorSpeed-0.1))";

cone[] = {1.6,3.14,2,0.5};

};

class RotorHighOut

{

sound[] = {"JSRS_AH64\Ext_Engine_High",1.51189,1,1700};

frequency = "rotorSpeed";

volume = "camPos*10*(0 max (rotorThrust-0.9))";

cone[] = {1.6,3.14,2,0.5};

};

class EngineIn

{

sound[] = {"JSRS_AH64\Int_Engine_Idle",5,1};

frequency = "rotorSpeed";

volume = "(1-camPos)*((rotorSpeed-0.75)*4)";

};

class RotorLowIn

{

sound[] = {"JSRS_AH64\Int_Engine_Low",10,1};

frequency = "rotorSpeed";

volume = "2*(1-camPos)*((rotorSpeed factor[0.3,1.1]) min (rotorSpeed factor[1.1,0.3]))";

};

class RotorHighIn

{

sound[] = {"JSRS_AH64\Int_Engine_High",1,1};

frequency = "rotorSpeed";

volume = "(1-camPos)*3*(rotorThrust-0.9)";

};

};

};

};

With this config, there is no USMC AH64 anymore in the game!!! Its totally lost. Cannot add him in the editor or so. Any Ideas?

Jarhead

Share this post


Link to post
Share on other sites

The config is OK. What about rpt and cfgPatches header?

Also make sure you have no other addon loaded along modifying it.

Share this post


Link to post
Share on other sites
Yah, there is an difference. The weapons splitted into firing modes (most of them) like this:

class Single: Mode_SemiAuto

{

begin1[] = {"\JSRS_AKM\AKM_s1",1.77828,1,1300};

begin2[] = {"\JSRS_AKM\AKM_s2",1.77828,1,1300};

begin3[] = {"\JSRS_AKM\AKM_s3",1.77828,1,1300};

begin4[] = {"\JSRS_AKM\AKM_s4",1.77828,1,1300};

soundBegin[] = {"begin1",0.25,"begin2",0.25,"begin3",0.25,"begin4",0.25};

The sounds are splitted into begins as you can see.

At the hits its looks like that:

hitMetalplate[] = {"soundMetalPlate1",0.1,"soundMetalPlate2",0.1,"soundMetalPlate3",0.1,"soundMetalPlate4",0.05,"soundMetalPlate5",0.05,"soundMetalPlate6",0.05,"soundMetalPlate7",0.1,"soundMetalPlate8",0.1,"soundMetalPlate9",0.1,"soundMetalPlate10",0.1,"soundMetalPlate11",0.1,"soundMetalPlate12",0.05};

So there are just the same, but at the hits, its not named "begins" but "sound**Material which getting hit**".

So to get to the point: As much as we would like it to do, we have no business in this. The game and the engine is making the switches between the sounds. At least this is the way I know about this. I tried to play around with that cfg stuff, without any results.

But I guess there are some way to do it. As well as the game is making strange unexpected differences between .wss sounds and lets say .mp3! Any one tried this? I made an weapons sound with an MP3 file, sounds extreme different to the wss.

Jarhead

You can add, subtract and change probabilities for the sounds. Can be useful.

This will only use 2 sounds:

class Single: Mode_SemiAuto
	{
		begin1[] = {"\JSRS_AKM\AKM_s1",1.77828,1,1300};
		begin2[] = {"\JSRS_AKM\AKM_s2",1.77828,1,1300};
		soundBegin[] = {"begin1",0.5,"begin2",0.5};

Maybe you want to use 8 different sounds?

class Single: Mode_SemiAuto
	{
		begin1[] = {"\JSRS_AKM\AKM_s1",1.77828,1,1300};
		begin2[] = {"\JSRS_AKM\AKM_s2",1.77828,1,1300};
		begin3[] = {"\JSRS_AKM\AKM_s3",1.77828,1,1300};
		begin4[] = {"\JSRS_AKM\AKM_s4",1.77828,1,1300};
		begin5[] = {"\JSRS_AKM\AKM_s5",1.77828,1,1300};
		begin6[] = {"\JSRS_AKM\AKM_s6",1.77828,1,1300};
		begin7[] = {"\JSRS_AKM\AKM_s7",1.77828,1,1300};
		begin8[] = {"\JSRS_AKM\AKM_s8",1.77828,1,1300};
		soundBegin[] = {"begin1",0.125,"begin2",0.125,"begin3",0.125,"begin4",0.125,"begin5",0.125,"begin6",0.125,"begin7",0.125,"begin8",0.125};

Or you might want to have higher probability for the two first to get played?

class Single: Mode_SemiAuto
	{
		begin1[] = {"\JSRS_AKM\AKM_s1",1.77828,1,1300};
		begin2[] = {"\JSRS_AKM\AKM_s2",1.77828,1,1300};
		begin3[] = {"\JSRS_AKM\AKM_s3",1.77828,1,1300};
		begin4[] = {"\JSRS_AKM\AKM_s4",1.77828,1,1300};
		soundBegin[] = {"begin1",0.35,"begin2",0.35,"begin3",0.15,"begin4",0.15};

It doesnt realy need to be named "begin", as long as the names in the array match the defined soundnames its fine.

Its important that the numbers in the array "soundBegin[]" adds up to 1.

soundBegin[] = {"begin1",[color="Red"]0.5[/color],"begin2",[color="red"]0.5[/color]};

= 1

soundBegin[] = {"begin1",[color="red"]0.125[/color],"begin2",[color="red"]0.125[/color],"begin3",[color="red"]0.125[/color],"begin4",[color="red"]0.125[/color],"begin5",[color="red"]0.125[/color],"begin6",[color="red"]0.125[/color],"begin7",[color="red"]0.125[/color],"begin8",[color="red"]0.125[/color]};

= 1

soundBegin[] = {"begin1",[color="red"]0.35[/color],"begin2",[color="red"]0.35[/color],"begin3",[color="red"]0.15[/color],"begin4",[color="red"]0.15[/color]};

= 1

So in this last example the probability for sound begin1 is 35% and begin3 is 15%.

This also goes for hitsounds and other sounds that are defined in arrays like this.

Edited by andersson

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×