Page MenuHomeFeedback Tracker

Feature Request: CustomSoundControllers for units and environment
New, NormalPublic

Description

We got CustomSoundControllers for vehicles which is amazing, they allow us to link ingame-scripting to the new sound configuration.

It'd be awesome to have CustomSoundControllers for units (e.g. used in soundSetShot) and environmental sounds, too.

Details

Severity
Feature
Resolution
Open
Reproducibility
Always
Operating System
Windows 7
Category
Sound

Event Timeline

Laxemann created this task.Jan 12 2019, 4:39 PM
dedmen added a subscriber: dedmen.EditedJun 7 2020, 3:16 PM

Can you write some more text about this? whats it do, examples of what specifically it can be used for, would it need configs stuff, if yes what?

You need to convince me to the point where I'm hyped for it and want it too.

dedmen added a project: Restricted Project.Jun 7 2020, 3:17 PM
dedmen set Ref Ticket to AIII-53008.
dedmen moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.
Laxemann added a comment.EditedJun 7 2020, 4:18 PM

@dedmen
Boy oh Boy, I didn't expect to see anything to this - thanks for acknowledging it! So let me hype you with my hype. :)
.

.
CustomSoundControllers and their current use
Not sure if you were involved in it, so a quick rundown: soundControllers are a kind of interface between what's happening in the game and the audio calculations for assets and the environment.
Classic soundControllers e.g. are RPM for vehicle engine sound calculations, forest/houses/trees/meadows for choosing sounds according to the environment(s) and windy for playing sounds according to wind intensity.
A while ago, CustomSoundControllers were introduced for vehicles. Those allow to manipulate the sound calculation of a vehicle via scripting. We could, for example, have different engine sounds if the engine gets damaged by setting e.g. CustomSoundController12 to 1 and using it in the soundSet's formula.

I personally did two things with those so far:

  1. The Ju-87 "Stuka" divebomber is passing its pitch-value to a CustomSouncontroller, which in return influences the pitch/tone of the siren sound.
  2. Many modern games have dynamic audio systems in which e.g. the environment becomes quiet for a second if someone shoots nearby. This is used to clean up the mix, give sounds more weight and steer the player's attention to important events. We're using a scripted system in our DLC which automatically lowers the volume of vehicle engine sounds for a short while when someone shoots or the vehicle's weapons are fired. This allows us to have "loud" engine sounds which then make space for weapons when they're shot.

Example: https://www.youtube.com/watch?v=yCWC-9kqgbY
.
.
Why CustomSoundControllers for units and environment?
Aside from some other nifty stuff, it would mainly be an incredible way to enhance the dynamic audio system mentioned above. If it was possible to influence the volume of environment sounds and sounds emmitted from characters, we could e.g. drown the rest of the soundscape if a large explosion goes off, giving it more weight.
We could also e.g. lower the volume of "small" gunshots if a tank cannon goes off nearby. This would solve the problem of "if everything sounds loud, nothing sounds loud". Such a system is the main reason why the battlefield series sounds so great (allthough their system is way more advanced than we'll ever be able to achieve with RV/xaudio2).
.
.
Ideas for an implementation
Disclaimer: I have no clue what the backend looks like, so this is a naive idea of an implementation.
Ideally, we could simply use the current vehicle commands for customSoundControllers in order to apply them to units.
E.g.

setCustomSoundController [player, "CustomSoundController2", 0.5];

CustomSoundController2 could then be used in the volume formula of weapons, allowing us to lower/raise a unit's weaponvolume on the fly.

A similar command for environment would be needed to complete the deal, something like:

setEnvironmentVolume 0.2
dedmen added a comment.Jun 8 2020, 9:45 AM

If it was possible to influence the volume of environment sounds

That would be a global sound controller then, not one bound to a vehicle?

What sounds on a unit do you mean? Problem with unit is that many sounds the unit makes, are not necessarily emitted by the unit itself.

CustomSoundController2 could then be used in the volume formula of weapons, allowing us to lower/raise a unit's weaponvolume on the fly.

That for example, afaik the weapon sounds are emitted by the weapon itself, not the unit that's holding the weapon, which makes this system much more complicated.

@dedmen
Sorry for the terribly late response, I simply forgot to reply!
Yes, the environmental one would be "global" for all envSounds but run locally on the player's machine only.

Regarding the weapon sounds:
Would there be a way to "pass" the unit's CustomSoundController to the weapon/the soundSources created by the weapon, maybe?

This comment was removed by LordJarhead.