Jump to content

Recommended Posts

 

I´m trying to figure out if it would be possible to connect the super sonic "bullet crack" sound effect to a visual effect for the player.  i.e. bullet passes head at 1-2 m distance and the sonic crack produces a very light blackening or similar suitable effect for the player.

 

The idea is to make the player more aware of that he is being shot at but not add any too impairing effects.

 

Can anyone say if this is even feasible if I just find the correct sounds?

Share this post


Link to post
Share on other sites
52 minutes ago, jone_kone said:

 

I´m trying to figure out if it would be possible to connect the super sonic "bullet crack" sound effect to a visual effect for the player.  i.e. bullet passes head at 1-2 m distance and the sonic crack produces a very light blackening or similar suitable effect for the player.

 

The idea is to make the player more aware of that he is being shot at but not add any too impairing effects.

 

Can anyone say if this is even feasible if I just find the correct sounds?

 

Hey dude,

 

I did a mod for this a while back which will be re-done _sometime_.

 

 

Feel free to look into the code!

  • Like 4

Share this post


Link to post
Share on other sites
On 2018. 09. 10. at 11:26 AM, peteweir said:

Awesome! Yeah I figured that might be an issue, I'm planning on using this technique on an ac130 so the external cameras fairly far away, hopefully should be alright, would be cool if you could get it setup in a tank so when you're turned out you hear the external sounds. BTW big fan of your sound mod, awesome work!

 

Got it working nicely last night, thanks for the info


Mmmhhh.... those good old times. The times of exploration.


mwahh

edit: I just want to remind BI to concentrate on this: https://feedback.bistudio.com/T126898

  • Like 2
  • Sad 1

Share this post


Link to post
Share on other sites

I'm looking for where ArmA defines the sound rain makes (attempting to disable it). I can't find it in CfgWorlds, is it shared across all maps?

 

If anyone knows it would be most helpful.

 

edit: I've now tried:

class CfgEnvSounds {
	class Rain {
	name = "Rain";
    	sound[] = {"", 0, 0};
    	volume = 0;
	};
};
class EnvSounds: EnvSounds {
	class Rain {
	name = "Rain";
    	sound[] = {"A3\Sounds_F\dummysound", 0, 1, 0};
    	soundNight[] = {"A3\Sounds_F\dummysound", 0, 1, 0};
    };
};

The latter nested inside CfgWorlds > class Altis

 

edit: I opted for

enableEnvironment [false, false];

In the mission's init.sqf instead. This disables all environmental effects - the second item in the array refers to sounds, the former is wildlife I believe.

Share this post


Link to post
Share on other sites

Hello, sorry for the necro. I am having some trouble with a simple audio replacement. I'm trying to replace the sound of the RPG-7 (Apex) with my own sound file. However it will only play the vanilla sound. I've got the .wss in a pbo file that I've gotten the other parts of working. What am I doing wrong with the audio?

Spoiler

class CFGWeapons {
	class CUP_arifle_G36C_VFG;
	class CUP_arifle_G36C_VFG_PEQ_ZDDOT : CUP_arifle_G36C_VFG
	{
		author = "Sir Faffles";
		class LinkedItems
		{
			class LinkedItemsOptic
			{
				slot = "CowsSlot";
				item = "CUP_optic_ZDDot";
			};
			class LinkedItemAcc
			{
				slot = "PointerSlot";
				item = "CUP_acc_ANPEQ_15_Black_Top";
			};
		};
	};
	class launch_RPG7_F
	{
		sound[] = { "Data\sound.wss", 1, 1, 800 };
	};
};
class CfgPatches {
	class unit_config {
		units[] = {};
		weapons[] = {};
		requiredVersion = 0.1;
		requiredAddons[] = {"A3_Characters_F_BLUFOR"};
	};
};
class CfgFactionClasses
{
	class a_units
	{
		displayName = "PLACEHOLDER";
		author = "Sir Faffles";
		icon = "D:\Animation\iconfinder_Alien_132702.png"; // Needs to be 16x16 in resolution and it needs to be in the form of a PAA.
		priority = 2;
		side = 2; // Indy
	};
};
class CfgVehicleClasses
{
	class army_units
	{
		displayName = "PLACEHOLDER"; // Rename to what you want the sub group of the faction will be. You can have multiple subfactions (VehicleClasses) as long as the class name of the VehicleClass is different. Makes it work with zeus
	};
};
class CfgVehicles {
	class B_Soldier_base_F;
        class Army_Squadleader : B_Soldier_base_F {
		_generalMacro = "Army_Squadleader"; 
		scope = 2;
		displayName = "Squadleader"; // In-game name of unit
		faction = a_units; // Puts unit under new faction
		vehicleClass = "army_units"; // Puts unit in the vehicleclass
		icon = "iconManLeader";
		nakedUniform = "U_BasicBody";  
		uniformClass = "CUP_U_B_BAF_DPM_UBACSTSHIRTKNEE";  // Uniform Class
		backpack = "UK3CB_BAF_B_Kitbag_DPMW"; // Backpack Class
		Items[] = { "ACE_morphine", "ACE_morphine", "ACE_morphine", "ACE_morphine", "ACE_morphine", "ACE_morphine", "ACE_CableTie", "ACE_CableTie", "ACE_CableTie", "ACE_CableTie", "ACE_fieldDressing", "ACE_fieldDressing", "ACE_fieldDressing", "ACE_fieldDressing", "ACE_fieldDressing" };
		linkedItems[] = {"CUP_V_B_BAF_DPM_Osprey_Mk3_Officer", "CUP_H_USArmy_HelmetMICH_earpro_wdl", "ItemMap", "ItemCompass", "ItemWatch",  "ItemRadio"}; // Item's added to the unit. 
		respawnLinkedItems[] = {"CUP_V_B_BAF_DPM_Osprey_Mk3_Officer", "CUP_H_USArmy_HelmetMICH_earpro_wdl", "ItemMap", "ItemCompass", "ItemWatch", "ItemRadio"}; // Item's added to the unit. Should be identical to the linkedItems section.
		weapons[] = {"CUP_arifle_G36C_VFG_PEQ_ZDDOT", "CUP_hgun_TEC9", "Binocular"}; // Weapons added to the unit.
		respawnweapons[] = {"CUP_arifle_G36C_VFG_PEQ_ZDDOT", "CUP_hgun_TEC9", "Binocular"}; // Weapons added to the unit. Should be identical to the weapons section
		magazines[] = { "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "ACE_Chemlight_HiGreen", "ACE_Chemlight_HiGreen", "ACE_Chemlight_HiGreen", "ACE_Chemlight_HiGreen", "ACE_HandFlare_Green", "ACE_HandFlare_Green", "ACE_HandFlare_Green", "SmokeShellGreen", "SmokeShellGreen",  "SmokeShellGreen" };
		Respawnmagazines[] = { "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "CUP_30Rnd_556x45_G36_hex", "ACE_Chemlight_HiGreen", "ACE_Chemlight_HiGreen", "ACE_Chemlight_HiGreen", "ACE_Chemlight_HiGreen", "ACE_HandFlare_Green", "ACE_HandFlare_Green", "ACE_HandFlare_Green", "SmokeShellGreen", "SmokeShellGreen",  "SmokeShellGreen"};
		side = 2;
		};

};

 

Thanks!

Share this post


Link to post
Share on other sites
53 minutes ago, Sir Faffles said:

Hello, sorry for the necro. I am having some trouble with a simple audio replacement. I'm trying to replace the sound of the RPG-7 (Apex) with my own sound file. However it will only play the vanilla sound. I've got the .wss in a pbo file that I've gotten the other parts of working. What am I doing wrong with the audio?

  Hide contents

 

Thanks!

 

Hey dude,

you are using an old and depreciated way of configuring sounds. A3 uses a new audio system for quite a while now and it will always override the "old" one.

You can find information and examples of the new system here. Be warned, it's not as straightforward as the old way, but a lot more powerful. That being said, megagoth wrote everything in the first post. 😉

Share this post


Link to post
Share on other sites

Yeah, sorry for necro this post, but I consider it as a collection of usefull information and ideas to help with sound modding.

My question is: could someone be kind enough to explain how to use the Custom Sound Controllers based on some simple script example? I wonder if the Controller needs to be defined (bound with animation or source animation) once and the game engine will handle it from there, OR said controller have to be updated in a loop? Apart from what can be read on the related wiki website, my understanding is it could be used inside Sound and CfgAnimationSourceSounds classes to trigger and manipulate of a sound. Is that correct?

Share this post


Link to post
Share on other sites
5 hours ago, NightIntruder said:

Yeah, sorry for necro this post, but I consider it as a collection of usefull information and ideas to help with sound modding.

My question is: could someone be kind enough to explain how to use the Custom Sound Controllers based on some simple script example? I wonder if the Controller needs to be defined (bound with animation or source animation) once and the game engine will handle it from there, OR said controller have to be updated in a loop? Apart from what can be read on the related wiki website, my understanding is it could be used inside Sound and CfgAnimationSourceSounds classes to trigger and manipulate of a sound. Is that correct?

 

Hey mate, sure thing - this thread is here to help! 🙂

 

First and foremost: CustomSoundController work for vehicles only - you can't influence e.g. a gunshot sound, environment sound or explosion sound with them.

 

With that out the way, let's dig into it:

  1. Your vehicle's soundShader needs to have the customSoundController set up in meaningful way. Let's say you want to do a "regular" engine sound and a "damaged" engine sound.
    1. Regular engine sound would be volume = "1 - CustomSoundController1"
    2. Damaged engine sound would be volume = "CustomSoundController1"
    3. Keep in mind that CustomSoundControllers are context-sensitive. CustomSoundController2 will work, customsoundcontroller2 won't.
  2. CustomSoundControllers need to be set and updated via script(s). They are 0 by default. So once your vehicle gets damaged, we want to change it to 1: setCustomSoundController [MYVEHICLE, "CustomSoundController1", 1];
    1. -> The formula for our regular engine sound will be 1-1, meaning 0, quiet. The formula for our damaged engine sound will be 1, 100% volume.

Hope that helped! 🙂

  • Thanks 2

Share this post


Link to post
Share on other sites

Thanks for the thorough explanation, Laxemann! Sure, that helps a lot! One thing comes to my mind tho - what if I work on "old-scheme" sound configuration, not using soundShaders? Will it work that way as well? And the last question - I would like to have controller that is bound with non-damaged engine sound sample. Is that requires to keep the CustomSoundController updated on-each frame (since the running engine may have different speed every fraction of second)? I mean, I would like to control the volume and frequency of the engine sound based on that customcontroller. To be precise, I think about "rpm1RTD" source animation that is available for AFM in chopper, however there is no soundController associated with that specific animation. Can the CustomSourceController be bound with that source of animation or I have to define actual animation driven by the source from my addon as CustomSourceController?

 

Ps. By the way, I would love to see sort of RTD SoundControllers being implemented directly into the game engine - engines, throttles, even open doors/ramp change drastically sound environment, especially in an aircraft with running engines. All those things are sort of dynamic controllers, they may change themselves quite frequently and smoothly (like doors) so any scripted solution is ... well ...not perfect 😉 

Share this post


Link to post
Share on other sites
1 hour ago, NightIntruder said:

Thanks for the thorough explanation, Laxemann! Sure, that helps a lot! One thing comes to my mind tho - what if I work on "old-scheme" sound configuration, not using soundShaders? Will it work that way as well? And the last question - I would like to have controller that is bound with non-damaged engine sound sample. Is that requires to keep the CustomSoundController updated on-each frame (since the running engine may have different speed every fraction of second)? I mean, I would like to control the volume and frequency of the engine sound based on that customcontroller. To be precise, I think about "rpm1RTD" source animation that is available for AFM in chopper, however there is no soundController associated with that specific animation. Can the CustomSourceController be bound with that source of animation or I have to define actual animation driven by the source from my addon as CustomSourceController?

 

Ps. By the way, I would love to see sort of RTD SoundControllers being implemented directly into the game engine - engines, throttles, even open doors/ramp change drastically sound environment, especially in an aircraft with running engines. All those things are sort of dynamic controllers, they may change themselves quite frequently and smoothly (like doors) so any scripted solution is ... well ...not perfect 😉 

 

Ah, I see - Well, if you really wanted to make things act in "real time", you'd have to get the animationSource state and then update the CustomSoundController each frame, yes!

 

One more thing I figured out the hard way: The doppler effect simulation doesn't work well with scripted frequency/pitch values via CustomSoundController.

So as soon as you update the pitch somewhat often, you'll have to disable the doppler effect in the soundSet.

  • Thanks 1

Share this post


Link to post
Share on other sites
14 minutes ago, laxemann said:

One more thing I figured out the hard way: The doppler effect simulation doesn't work well with scripted frequency/pitch values via CustomSoundController.

So as soon as you update the pitch somewhat often, you'll have to disable the doppler effect in the soundSet.


That's really unfortunate as the issue is engine sound - wise. But, looking at the bright side - I do not use soundShaders as of yet, so... 😉 Anyway, thank you for your time and the asnwers. It helped a lot to clarify things to me!

Share this post


Link to post
Share on other sites
31 minutes ago, NightIntruder said:


That's really unfortunate as the issue is engine sound - wise. But, looking at the bright side - I do not use soundShaders as of yet, so... 😉 Anyway, thank you for your time and the asnwers. It helped a lot to clarify things to me!

 

Oh, yeah: The "old", non-soundShader way of setting up sounds doesn't support CustomSoundControllers!

  • Like 1

Share this post


Link to post
Share on other sites

Well, I found that BI's helicopter configs don't have the new sound configuration (soundSets/soundShaders). I guess, there must be a reason for that. Does someone know whether it's just the lack of manpower or things specifically connected with helicopters, like AFM? I've checked the config in AiO.1.98.146373

Share this post


Link to post
Share on other sites

While I am still in sound topic 😉, I wonder what the "loop" and "terminate" params are for in the case below? Whenever I open and than close the door, this is over, no more sound played by the door (maybe I did smth wrong with the config below?).
Is the param "loop" refering to a sound (ie. one can loop a sound) or the trigger itself (ie. a sound can be played many times)? In BI's examples I noticed no use of "loop", several examples of using "terminate" which seems to be connected with long mid-action samples like shifting gate. Are those params work with the new soundSets/soundShaders techonology exclusively? Is it possible to loop a sound through use of animationSource/CfgAnimationSourceSounds? Could someone with knowledge be kind enough to shed some light on the topic, please? I've been trying hard for some time but couldn't find relevant information anywhere.

class CfgAnimationSourceSounds
{
    class door_sound
    {
        class door_open
        {
            loop = 0;
            terminate = 0;
            trigger = "direction * (phase factor[0.01,0.02])";
            sound0[] = {".........\door_open.ogg",2,1,40};
            sound[] = {"sound0",1};
        };
        class door_close
        {
            loop = 0;
            terminate = 0;
            trigger = "(1 - direction) * (phase factor[0.01,0.02])";
            sound0[] = {".........\door_close.ogg",2,1,40};
            sound[] = {"sound0",1};
        };
    };
};

 

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

×