Jump to content
Sign in to follow this  
commanderx

Say / Say2D / Say3D change distance??

Recommended Posts

Hi, 

 

how can I change the distance from where I can hear the sound a unit is saying per say/say2D/say3D ? 

 

I tried 

 

unit say3D ["sound",x]; //x can be any number and nothing changes

 

I also tried to change the db the sound is played in the description.ext but the sound gets more quiet but you can hear it still from 500m away.

 

Any ideas how to change the distance from where I can hear the sound played via "say" command?

 

I also googled this problem but found no solution.

 

Thanks in advance

 

Commander

Share this post


Link to post
Share on other sites
Guest

say3D is local so you need to broadcast it to all clients and by doing so you can add a distance check :)

Share this post


Link to post
Share on other sites

if this is editor unit init you do not need to broadcast to all players because this init runs any connected PC

 

Anyway i do not knew if there are set distance are possible with say3d, wiki says nothing about.

Try something like that:

[unit, 200] say3D "sound";

if fails you can use CBA mod and his  function which will fire for sure;

and this has already global affect and sound fade relative to distance

if (isServer) then {

[unit, "sound", 200] call CBA_fnc_globalSay3d;
};
  • Like 1

Share this post


Link to post
Share on other sites

All those distance checks are not what I was looking for. It must be a sound for all players at the same but not hearable at a distance for example 20 meters. It will work with playsound3D. Why the hell is there no playsound name like in say3D? Unfortunately I also wanted to have driving cars with music comingfrom them. That don´t seem to work.

 

Thanks for all the help. Appreciate it!

Share this post


Link to post
Share on other sites
Guest

I will provide some code as son as I'm back home

Share this post


Link to post
Share on other sites

Very good.... Say3D is completely stupid. You can hear someone saying something 400m away and cant regulate the distance but you can stop the sayer by killing him.

 

PlaySound3D is working with distances but you can´t stop it.

Share this post


Link to post
Share on other sites

Very good.... Say3D is completely stupid. You can hear someone saying something 400m away and cant regulate the distance but you can stop the sayer by killing him.

 

PlaySound3D is working with distances but you can´t stop it.

Well it's like I wrote in my feedback ticket, all of the sound commands have their strengths, but they all have weaknesses. There is no perfect sound command available to us

Share this post


Link to post
Share on other sites

My dog barks made with playSound3d are working perfectly on MP.

 

What is impossible to do is to change the source position on the fly, for example an alarm sound ringing from a moving car.

 

I want doppler effect!

Share this post


Link to post
Share on other sites

I usually just change the decibels in your description ext and that automatically reduces distance. With playSound/say3d anyway. Something like -11 is about 200 meters

Share this post


Link to post
Share on other sites

am having an issue with this code for MP.

while {true} do {
    toc say3D "chatter";
    sleep 25;
}; 

below has been placed in Init and trigger with no luck.

[] execVM "toc.sqf";

Des.ext.

class CfgSounds
{
   sounds[] = {chatter};

    class chatter {name="chatter";sound[]={sounds\chatter.ogg,db+3,1.0};titles[] = {0, ""};};
};

toc is antenna. plays fine in editor. nothing in MP. ideas?

Share this post


Link to post
Share on other sites


class CfgSounds {

   sounds[] = {chatter};

    class chatter {

name="chatter";

sound[]={"sounds\chatter.ogg", db+3, 1.0};

titles[] = {};

};

};


while {!isnull toc} do {

toc say3D ["chatter", 200, 1];

sleep 25;

};


if (hasInterface) then {

[] execVM "toc.sqf";

};

Share this post


Link to post
Share on other sites

I solved the problem by adding a third parameter to the sound definition in description.ext

 

See this post

  • Like 2

Share this post


Link to post
Share on other sites

am having an issue with this code for MP.

while {true} do {
    toc say3D "chatter";
    sleep 25;
}; 

below has been placed in Init and trigger with no luck.

[] execVM "toc.sqf";

Des.ext.

class CfgSounds
{
   sounds[] = {chatter};

    class chatter {name="chatter";sound[]={sounds\chatter.ogg,db+3,1.0};titles[] = {0, ""};};
};

toc is antenna. plays fine in editor. nothing in MP. ideas?

try this
[[_source,_sound] remoteExec ["say3D"]];
trigger condition must be isserver

Share this post


Link to post
Share on other sites
Guest

"30 Jan"

Guys what a shovel you got there.

Share this post


Link to post
Share on other sites

"30 Jan"

Guys what a shovel you got there.

So why didnt you, yourself, add the solution on "30 Jan" if you are so annoyed with someone resolving this eventiually, even if late???

Share this post


Link to post
Share on other sites
Guest

So why didnt you, yourself, add the solution on "30 Jan" if you are so annoyed with someone resolving this eventiually, even if late???

I'm not annoyed. People with a little bit of brain would have found the other topic anyway so don't mind my joke.

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  

×