johnnyboy 3795 Posted May 18, 2016 Here's two simple scripts that are byproducts from my Property of Mabunga mission. In missions that are dark, foggy, or in a dense forest, you may want to occasionally give the player a cue that there is a nearby AI patrol. These scripts periodically force the AI to issue an order (so player hears the AI speak), or periodically the AI will turn on their gunlights for a few sconds. This can aid immersion and build tension. In the short demo video below I set the delay between AI speaking and turning lights on/off to 20 seconds for demonstration purposes only. In a real mission I recommend a 60 second interval (or more) so it happens less often, and unexpectedly. Also note that it would be simple to modify the PatrolChatter script to have AI units randomly say something (sneeze, cough, belch, complain, tell a joke, etc.). Turn up your volume for this video, as the AI commands are hard to hear for some reason. They sounded louder in-game. To execute the scripts, put the following lines in the group leader's init or in the On Activation box of any Waypoint: dummy = [group this, 60] execVM "Scripts\JBOY_PatrolChatter.sqf"; // 60 is number of seconds to wait between speaking dummy = [group this, 60, 5] execVM "Scripts\JBOY_LightsOnOff.sqf"; // 60 is duration light is off, and 5 is duration light is on Create a file called JBOY_PatrolChatter.sqf in your mission directory, and put the following simple code in it: // ***************************************************** // ** JBOY_PatrolChatter.sqf // ** by JohnnyBoy // ** Use with AI patrols. Group leader will ocassionally give an audible command to a subordinate. Helps player sense enemy patrols // ** at night or in dense forests. // ** Put this in patrol leader's init: // dummy = [group this, 50] execVM "Scripts\JBOY_PatrolChatter.sqf"; // *********************************************************************************** if (!isServer) exitwith {}; _grp = _this select 0; _interval = _this select 1; WHILE {({alive _x} count (units _grp) > 1) } DO { if (!(behaviour leader _grp == "COMBAT")) then { // patrol leader periodically issues audible command. Helps enemy players // hear an ai patrol moving at night or heavy fog. // You could also add in CASE statement hear to ocasionally say something: cough, sneeze, complain, whatever (units _grp select 1) commandMove getpos (units _grp select 1); }; sleep _interval + random(10); }; Create a file called JBOY_LightsOnOff.sqf in your mission directory, and put this simple code in it: // ***************************************************** // ** JBOY_LightsOnOff.sqf // ** by JohnnyBoy // ** Use with AI night sentry patrols. Units will occasionally turn on gun light. Helps player spot patrols. // ** Put this in patrol leader's init: // dummy = [group this, 30, 20] execVM "Scripts\JBOY_LightsOnOff.sqf"; // *********************************************************************************** _grp = _this select 0; _OffTime = _this select 1; _OnTime = _this select 2; if (!isServer) exitwith {}; WHILE {({alive _x} count (units _grp) > 0 )} DO { sleep (_OffTime + random(10)); if ((date select 3) < 6 or (date select 3) > 19 ) then { if (!(behaviour leader _grp == "COMBAT")) then { (leader _grp) enablegunlights "forceOn"; sleep (_OnTime + random (10)); (leader _grp) enablegunlights "forceOff"; } else { (leader _grp) enablegunlights "AUTO"; }; } else { (leader _grp) enablegunlights "AUTO"; }; }; Hope someone finds this useful. Johnnyboy out 17 2 Share this post Link to post Share on other sites
EO 11277 Posted May 18, 2016 I like this a lot, very immersive......the ability to add custom sounds/dialogue to the script is also really neat. ........could that be another little script tease at the end of the video....... :P Share this post Link to post Share on other sites
bad benson 1733 Posted May 18, 2016 haha! you did for sure deliver on the birds of prey thing you teased. glad to see that it's exactly what i expected. Share this post Link to post Share on other sites
johnnyboy 3795 Posted May 18, 2016 Tease? I don't know what you guys are talking about. It's Mabunga Swamp...a very hostile place for fish, fowl, reptiles and man! 1 Share this post Link to post Share on other sites
sarogahtyp 1108 Posted May 19, 2016 Hey johnnyboy, thank u very much for that cool script. I noticed that u ve thwron a few of those cool ambient scripts to this forum. I think it would be really nice if u release an ambient script package like "JBOYs Ambient Scripts". It would be easier to find a specific of ur cool scripts and one would have an overview of all your ambient scripts. just a suggestion... Share this post Link to post Share on other sites
johnnyboy 3795 Posted May 19, 2016 thank u very much for that cool script. I noticed that u ve thwron a few of those cool ambient scripts to this forum. I think it would be really nice if u release an ambient script package like "JBOYs Ambient Scripts". It would be easier to find a specific of ur cool scripts and one would have an overview of all your ambient scripts. just a suggestion... Thanks for the suggestion. I'll see if I can get to that...easier for me to release them separately for now. Note my signature currently has links to all my scripts. If you end up using any of them, let me know...I like to see them in action in other folks' missions. Share this post Link to post Share on other sites
genesis92x 810 Posted December 30, 2016 Just letting you know how awesome this is :) Thank you John. 1 Share this post Link to post Share on other sites
zagor64bz 1225 Posted December 30, 2016 Was wondering..how to use this with spawned OPFOR? Like..I'm using EOS to spawn enemies patrols: can I still use this?How? 1 Share this post Link to post Share on other sites
johnnyboy 3795 Posted December 30, 2016 7 hours ago, genesis92x said: Just letting you know how awesome this is :) Thank you John. Thanks Genesis92x. Its cool that something so simple can really add to immersion. 4 hours ago, zagor64bz said: Was wondering..how to use this with spawned OPFOR? Like..I'm using EOS to spawn enemies patrols: can I still use this?How? Hey Zagor. It should be simple to add to respawned patrols if there is a hook in the EOS system for executing custom code for respawned units. If there is such a "run your own script on unit respawn here" option built into EOS, then you would add this line there: dummy = [group this, 60, 5] execVM "Scripts\JBOY_LightsOnOff.sqf"; If EOS is a mod, then I wouldn't have a clue how to do it. Share this post Link to post Share on other sites
zagor64bz 1225 Posted December 30, 2016 Indeed there's a hook for inserting scripts on spawned units...just it apply to ALL the units.Is that ok? Share this post Link to post Share on other sites
johnnyboy 3795 Posted December 30, 2016 If you don't mind all spawned units periodically talking. These scripts should not affect the spawned units other behaviour. Note I have 2 different scripts: Patrol Chatter, and Lights On/Off. You can run one or both. These scripts accept a Group as input, not a unit, so these commands to run the scripts should only be run for the Group Leader of each spawend group of units. dummy = [group this, 60] execVM "Scripts\JBOY_PatrolChatter.sqf"; // 60 is number of seconds to wait between speaking dummy = [group this, 60, 5] execVM "Scripts\JBOY_LightsOnOff.sqf"; // 60 is duration light is off, and 5 is duration light is on So put an IF statement around the above so you only execute the script for the group leader. I can't dig out exact code or test it for you right now, but you should be able to make it work. Also where it says "group this" as input parameter, you need to replace "this" with variable for spawned leader unit. After its working, post your solution here so someone else can benefit. Good luck amigo. Share this post Link to post Share on other sites
zagor64bz 1225 Posted December 30, 2016 On 18/5/2016 at 7:54 PM, johnnyboy said: I'll test it out and report back asap....in the mean time...happy new year bud!! 1 Share this post Link to post Share on other sites
zagor64bz 1225 Posted December 30, 2016 On 18/5/2016 at 7:54 PM, johnnyboy said: I'll test it out and report back asap....in the mean time...happy new year bud!! EDIT: this is the part of the EOS where you can input scripts. _grp=(_this select 0); _skillArray=(_this select 1); _skillset = server getvariable _skillArray; { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER != 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; dummy = [group _x, 30, 30] execVM "Scripts\JBOY_LightsOnOff.sqf"; dummy = [group -x, 60] execVM "Scripts\JBOY_PatrolChatter.sqf";// ADD CUSTOM SCRIPTS TO UNIT HERE } forEach (units _grp); Does this look ok? Can't test in game right now.... Share this post Link to post Share on other sites
johnnyboy 3795 Posted December 30, 2016 It looks like that code starts with a group called _grp. So youcan move the two calls outside of the foreach loop, and call them passing in only _grp. 1 Share this post Link to post Share on other sites
Mordacai 38 Posted December 31, 2016 This is great! Two questions: 1. Will it work for VME_PLA units (Chinese) 2. Have you considered doing Voice Acting? You have a good voice. I know that THE KING and AZCODER are looking for voice actors..............two great mission makers............. Cheers 2 Share this post Link to post Share on other sites
zagor64bz 1225 Posted December 31, 2016 11 hours ago, johnnyboy said: It looks like that code starts with a group called _grp. So youcan move the two calls outside of the foreach loop, and call them passing in only _grp. OK.....that will go beyond my scripting understanding. Would you, in full holidays spirit , be so kind to give me an example? Cheers Bro! edit:like that? _grp=(_this select 0); _skillArray=(_this select 1); _skillset = server getvariable _skillArray; { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER != 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; // ADD CUSTOM SCRIPTS TO UNIT HERE } forEach (units _grp); dummy = [_grp, 30, 30] execVM "Scripts\JBOY_LightsOnOff.sqf"; dummy = [_grp, 60] execVM "Scripts\JBOY_PatrolChatter.sqf"; Share this post Link to post Share on other sites
zagor64bz 1225 Posted December 31, 2016 NOPE..not working! Share this post Link to post Share on other sites
johnnyboy 3795 Posted December 31, 2016 5 hours ago, zagor64bz said: Cheers Bro! edit:like that? Exactly like that you got it. Here it is with loop code indented so you can visually be sure 2 new lines are outside the loops. _grp=(_this select 0); _skillArray=(_this select 1); _skillset = server getvariable _skillArray; { _unit = _x; { _skillvalue = (_skillset select _forEachIndex) + (random 0.2) - (random 0.2); _unit setSkill [_x,_skillvalue]; } forEach ['aimingAccuracy','aimingShake','aimingSpeed','spotDistance','spotTime','courage','reloadSpeed','commanding','general']; if (EOS_DAMAGE_MULTIPLIER != 1) then {_unit removeAllEventHandlers "HandleDamage";_unit addEventHandler ["HandleDamage",{_damage = (_this select 2)*EOS_DAMAGE_MULTIPLIER;_damage}];}; if (EOS_KILLCOUNTER) then {_unit addEventHandler ["killed", "null=[] execVM ""eos\functions\EOS_KillCounter.sqf"""]}; // ADD CUSTOM SCRIPTS TO UNIT HERE } forEach (units _grp); // ADD GROUP SCRIPTS TO UNIT HERE _dummy = [_grp, 30, 30] execVM "Scripts\JBOY_LightsOnOff.sqf"; _dummy = [_grp, 60] execVM "Scripts\JBOY_PatrolChatter.sqf"; Should work. Happy New Year. May 2017 bring great Arma joy to all. 1 Share this post Link to post Share on other sites
johnnyboy 3795 Posted December 31, 2016 7 hours ago, Mordacai said: This is great! Two questions: 1. Will it work for VME_PLA units (Chinese) 2. Have you considered doing Voice Acting? You have a good voice. I know that THE KING and AZCODER are looking for voice actors..............two great mission makers............. Cheers Thanks Mordecai. : 1. Will it work for VME_PLA units (Chinese)? Yes. This code has group leader order a unit to move to that unit's current position (so unit doesn't actually go anywhere and deviate from waypoints). The order is given in the language of the group leader. So if a chinese unit gives the order, you hear in chinese: "Move there" and the response "Ready". 2. Have you considered doing Voice Acting? You have a good voice. Thanks. I'd help if requested. I'm ok using my natural voice, but have little range (i.e., hard for me to do more than one character). Note that this script is using in-game voices, not mine. But my voice is in my missions Leper Island, Property of Mabunga, and Last Tango in Bagango. And I've voiced the dog commands in the JBOY Dog scripts Happy new year buddy! Share this post Link to post Share on other sites
johnnyboy 3795 Posted December 31, 2016 3 hours ago, zagor64bz said: NOPE..not working! Looks like it should dude. Are these two script files in a directory called "Scripts"? dummy = [_grp, 30, 30] execVM "Scripts\JBOY_LightsOnOff.sqf"; dummy = [_grp, 60] execVM "Scripts\JBOY_PatrolChatter.sqf"; Do you have an error message in the Arma******.rpt log file? Share this post Link to post Share on other sites
zagor64bz 1225 Posted December 31, 2016 Ok...it kinda work. Patrolchatter is working, perhaps it seam like..those patrols chit chat like girls on a shopping trip. Lights?Nope..but that's because EOS spawn (in this case) CDK insurgent with basic weapons. I have to try with regular CSAT troops...reporting back asap... 1 Share this post Link to post Share on other sites
johnnyboy 3795 Posted December 31, 2016 Just now, zagor64bz said: Ok...it kinda work. Patrolchatter is working, perhaps it seam like..those patrols chit chat like girls on a shopping trip. Lights?Nope..but that's because EOS spawn (in this case) CDK insurgent with basic weapons. I have to try with regular CSAT troops...reporting back asap... Obviously lights don't work unless units have flashlights attached to their guns. I just hope there is no error message occuring when enablegunlights "forceOn" is executed on a unit that does not have a light attached to their weapon. If there is an error message occurring, then we need to change script to test if unit has light attachment before giving the command. 1 1 Share this post Link to post Share on other sites
Persian MO 82 Posted February 24, 2017 I created a list of sound from arma3 root sounds and combine it with JBOY_patrolChater.so while patrols moving on, you may hear they talking.It effects on editor based units and other ais spawning in the middle of the mission.Also, random units of the group will chat.Should work on MP, didn't test it yet. Share here may be useful for some users. init.sqf JBOY_PatrolChatter = compile preprocessfilelinenumbers "JBOY_PatrolChatter.sqf"; [] execvm "Chatter.sqf"; chatter.sqf Spoiler if (!isServer) exitwith {}; _groups = []; while { (true) } do { { if !(isPlayer (leader _x)) then { if !(_x getVariable ["dam_Grp_ready",false]) then { _groups = _groups + [_x]; _x setVariable ["dam_Grp_ready",true]; [_x, 15] spawn JBOY_PatrolChatter; }; }; } forEach allGroups; sleep 10; }; JBOY_PatrolChatter.sqf Spoiler // ***************************************************** // ** JBOY_PatrolChatter.sqf // ** by JohnnyBoy // ** Use with AI patrols. Group leader will ocassionally give an audible command to a subordinate. Helps player sense enemy patrols // ** at night or in dense forests. // ** Put this in patrol leader's init: // dummy = [group this, 50] execVM "Scripts\JBOY_PatrolChatter.sqf"; // *********************************************************************************** if (!isServer) exitwith {}; _grp = _this select 0; _interval = _this select 1; sleep random 30; WHILE {({alive _x} count (units _grp) > 1) } DO { if (!(behaviour leader _grp == "COMBAT")) then { _members = units _grp; _member = selectRandom _members; // add-remove sounds here _sound = selectRandom [ "a3\dubbing_f_epa\a_hub\070_ambient_talk_00\a_hub_070_ambient_talk_00_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\070_ambient_talk_00\a_hub_070_ambient_talk_00_ALPB_0.ogg", "a3\dubbing_f_epa\a_hub\071_ambient_talk_01\a_hub_071_ambient_talk_01_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\071_ambient_talk_01\a_hub_071_ambient_talk_01_ALPA_1.ogg", "a3\dubbing_f_epa\a_hub\071_ambient_talk_01\a_hub_071_ambient_talk_01_ALPB_1.ogg", "a3\dubbing_f_epa\a_hub\072_ambient_talk_02\a_hub_072_ambient_talk_02_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\072_ambient_talk_02\a_hub_072_ambient_talk_02_ALPA_1.ogg", "a3\dubbing_f_epa\a_hub\072_ambient_talk_02\a_hub_072_ambient_talk_02_ALPA_2.ogg", "a3\dubbing_f_epa\a_hub\072_ambient_talk_02\a_hub_072_ambient_talk_02_ALPA_3.ogg", "a3\dubbing_f_epa\a_hub\072_ambient_talk_02\a_hub_072_ambient_talk_02_ALPA_4.ogg", "a3\dubbing_f_epa\a_hub\073_ambient_talk_03\a_hub_073_ambient_talk_03_ALPA_1.ogg", "a3\dubbing_f_epa\a_hub\073_ambient_talk_03\a_hub_073_ambient_talk_03_ALPA_2.ogg", "a3\dubbing_f_epa\a_hub\073_ambient_talk_03\a_hub_073_ambient_talk_03_ALPA_3.ogg", "a3\dubbing_f_epa\a_hub\073_ambient_talk_03\a_hub_073_ambient_talk_03_ALPA_4.ogg", "a3\dubbing_f_epa\a_hub\073_ambient_talk_03\a_hub_073_ambient_talk_03_ALPB_0.ogg", "a3\dubbing_f_epa\a_hub\073_ambient_talk_03\a_hub_073_ambient_talk_03_ALPB_2.ogg", "a3\dubbing_f_epa\a_hub\073_ambient_talk_03\a_hub_073_ambient_talk_03_ALPB_3.ogg", "a3\dubbing_f_epa\a_hub\074_ambient_talk_04\a_hub_074_ambient_talk_04_ALPB_0.ogg", "a3\dubbing_f_epa\a_hub\074_ambient_talk_04\a_hub_074_ambient_talk_04_ALPB_1.ogg", "a3\dubbing_f_epa\a_hub\074_ambient_talk_04\a_hub_074_ambient_talk_04_ALPB_2.ogg", "a3\dubbing_f_epa\a_hub\074_ambient_talk_04\a_hub_074_ambient_talk_04_ALPB_2.ogg", "a3\dubbing_f_epa\a_hub\075_ambient_talk_05\a_hub_075_ambient_talk_05_ALPA_1.ogg", "a3\dubbing_f_epa\a_hub\075_ambient_talk_05\a_hub_075_ambient_talk_05_ALPA_2.ogg", "a3\dubbing_f_epa\a_hub\075_ambient_talk_05\a_hub_075_ambient_talk_05_ALPB_1.ogg", "a3\dubbing_f_epa\a_hub\075_ambient_talk_05\a_hub_075_ambient_talk_05_ALPB_2.ogg", "a3\dubbing_f_epa\a_hub\076_ambient_talk_06\a_hub_076_ambient_talk_06_ALPB_0.ogg", "a3\dubbing_f_epa\a_hub\076_ambient_talk_06\a_hub_076_ambient_talk_06_ALPB_1.ogg", "a3\dubbing_f_epa\a_hub\076_ambient_talk_06\a_hub_076_ambient_talk_06_ALPB_2.ogg", "a3\dubbing_f_epa\a_hub\077_ambient_talk_07\a_hub_077_ambient_talk_07_ALPA_1.ogg", "a3\dubbing_f_epa\a_hub\077_ambient_talk_07\a_hub_077_ambient_talk_07_ALPA_2.ogg", "a3\dubbing_f_epa\a_hub\077_ambient_talk_07\a_hub_077_ambient_talk_07_ALPB_0.ogg", "a3\dubbing_f_epa\a_hub\077_ambient_talk_07\a_hub_077_ambient_talk_07_ALPB_1.ogg", "a3\dubbing_f_epa\a_hub\077_ambient_talk_07\a_hub_077_ambient_talk_07_ALPB_2.ogg", "a3\dubbing_f_epa\a_hub\078_ambient_talk_08\a_hub_078_ambient_talk_08_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\078_ambient_talk_08\a_hub_078_ambient_talk_08_ALPB_2.ogg", "a3\dubbing_f_epa\a_hub\079_ambient_talk_09\a_hub_079_ambient_talk_09_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\079_ambient_talk_09\a_hub_079_ambient_talk_09_ALPB_1.ogg", "a3\dubbing_f_epa\a_hub\080_ambient_talk_10\a_hub_080_ambient_talk_10_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\080_ambient_talk_10\a_hub_080_ambient_talk_10_ALPB_0.ogg", "a3\dubbing_f_epa\a_hub\090_ambient_special_00\a_hub_090_ambient_special_00_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\090_ambient_special_00\a_hub_090_ambient_special_00_ALPA_1.ogg", "a3\dubbing_f_epa\a_hub\090_ambient_special_00\a_hub_090_ambient_special_00_ALPA_2.ogg", "a3\dubbing_f_epa\a_hub\090_ambient_special_00\a_hub_090_ambient_special_00_ALPB_0.ogg", "a3\dubbing_f_epa\a_hub\090_ambient_special_00\a_hub_090_ambient_special_00_ALPB_1.ogg", "a3\dubbing_f_epa\a_hub\091_ambient_special_01\a_hub_091_ambient_special_01_ALPA_0.ogg", "a3\dubbing_f_epa\a_hub\091_ambient_special_01\a_hub_091_ambient_special_01_ALPA_1.ogg", "a3\dubbing_f_epa\a_hub\091_ambient_special_01\a_hub_091_ambient_special_01_ALPB_3.ogg", "a3\dubbing_f_epa\a_hub\091_ambient_special_01\a_hub_091_ambient_special_01_ALPB_4.ogg", "a3\dubbing_f_epa\a_hub\092_ambient_special_02\a_hub_092_ambient_special_02_ALP_0.ogg", "a3\dubbing_f_epa\a_hub\092_ambient_special_02\a_hub_092_ambient_special_02_ALP_1.ogg", "a3\dubbing_f_epa\a_hub\092_ambient_special_02\a_hub_092_ambient_special_02_ALP_2.ogg", "a3\dubbing_f_epa\a_hub\092_ambient_special_02\a_hub_092_ambient_special_02_ALP_3.ogg", "a3\dubbing_f_epa\a_hub\092_ambient_special_02\a_hub_092_ambient_special_02_CHA_0.ogg", "a3\dubbing_f_epa\a_hub\092_ambient_special_02\a_hub_092_ambient_special_02_CHA_1.ogg", "a3\dubbing_f_epa\a_hub\093_ambient_special_03\a_hub_093_ambient_special_03_ALP_0.ogg", "a3\dubbing_f_epa\a_hub\093_ambient_special_03\a_hub_093_ambient_special_03_ALP_1.ogg", "a3\dubbing_f_epa\a_hub\093_ambient_special_03\a_hub_093_ambient_special_03_ALP_3.ogg", "a3\dubbing_f_epa\a_hub\093_ambient_special_03\a_hub_093_ambient_special_03_CHA_0.ogg", "a3\dubbing_f_epa\a_hub\093_ambient_special_03\a_hub_093_ambient_special_03_CHA_1.ogg", "a3\dubbing_f_epb\B_hub\071_B_HUB_Ambient_Talk\b_hub_071_b_hub_ambient_talk_SFA_0.ogg", "a3\dubbing_f_epb\B_hub\071_B_HUB_Ambient_Talk\b_hub_071_b_hub_ambient_talk_SFA_1.ogg", "a3\dubbing_f_epb\B_hub\071_B_HUB_Ambient_Talk\b_hub_071_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\072_B_HUB_Ambient_Talk\b_hub_072_b_hub_ambient_talk_SFA_0.ogg", "a3\dubbing_f_epb\B_hub\072_B_HUB_Ambient_Talk\b_hub_072_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\072_B_HUB_Ambient_Talk\b_hub_072_b_hub_ambient_talk_SFB_2.ogg", "a3\dubbing_f_epb\B_hub\073_B_HUB_Ambient_Talk\b_hub_073_b_hub_ambient_talk_SFA_1.ogg", "a3\dubbing_f_epb\B_hub\073_B_HUB_Ambient_Talk\b_hub_073_b_hub_ambient_talk_SFA_2.ogg", "a3\dubbing_f_epb\B_hub\073_B_HUB_Ambient_Talk\b_hub_073_b_hub_ambient_talk_SFB_1.ogg", "a3\dubbing_f_epb\B_hub\073_B_HUB_Ambient_Talk\b_hub_073_b_hub_ambient_talk_SFB_2.ogg", "a3\dubbing_f_epb\B_hub\074_B_HUB_Ambient_Talk\b_hub_074_b_hub_ambient_talk_SFA_1.ogg", "a3\dubbing_f_epb\B_hub\074_B_HUB_Ambient_Talk\b_hub_074_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\075_B_HUB_Ambient_Talk\b_hub_075_b_hub_ambient_talk_SFA_1.ogg", "a3\dubbing_f_epb\B_hub\075_B_HUB_Ambient_Talk\b_hub_075_b_hub_ambient_talk_SFA_2.ogg", "a3\dubbing_f_epb\B_hub\075_B_HUB_Ambient_Talk\b_hub_075_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\075_B_HUB_Ambient_Talk\b_hub_075_b_hub_ambient_talk_SFB_2.ogg", "a3\dubbing_f_epb\B_hub\075_B_HUB_Ambient_Talk\b_hub_075_b_hub_ambient_talk_SFB_3.ogg", "a3\dubbing_f_epb\B_hub\076_B_HUB_Ambient_Talk\b_hub_076_b_hub_ambient_talk_SFA_0.ogg", "a3\dubbing_f_epb\B_hub\076_B_HUB_Ambient_Talk\b_hub_076_b_hub_ambient_talk_SFA_2.ogg", "a3\dubbing_f_epb\B_hub\076_B_HUB_Ambient_Talk\b_hub_076_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\076_B_HUB_Ambient_Talk\b_hub_076_b_hub_ambient_talk_SFB_1.ogg", "a3\dubbing_f_epb\B_hub\078_B_HUB_Ambient_Talk\b_hub_078_b_hub_ambient_talk_SFA_0.ogg", "a3\dubbing_f_epb\B_hub\078_B_HUB_Ambient_Talk\b_hub_078_b_hub_ambient_talk_SFA_1.ogg", "a3\dubbing_f_epb\B_hub\078_B_HUB_Ambient_Talk\b_hub_078_b_hub_ambient_talk_SFA_2.ogg", "a3\dubbing_f_epb\B_hub\079_B_HUB_Ambient_Talk\b_hub_079_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\079_B_HUB_Ambient_Talk\b_hub_079_b_hub_ambient_talk_SFB_2.ogg", "a3\dubbing_f_epb\B_hub\080_B_HUB_Ambient_Talk\b_hub_080_b_hub_ambient_talk_SFA_1.ogg", "a3\dubbing_f_epb\B_hub\080_B_HUB_Ambient_Talk\b_hub_080_b_hub_ambient_talk_SFA_2.ogg", "a3\dubbing_f_epb\B_hub\080_B_HUB_Ambient_Talk\b_hub_080_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\081_B_HUB_Ambient_Talk\b_hub_081_b_hub_ambient_talk_SFA_0.ogg", "a3\dubbing_f_epb\B_hub\081_B_HUB_Ambient_Talk\b_hub_081_b_hub_ambient_talk_SFB_0.ogg", "a3\dubbing_f_epb\B_hub\200_POI_AbandonedBattlefield_01\b_hub_200_poi_abandonedbattlefield_01_GUA_2.ogg", "a3\dubbing_f_epb\B_hub\200_POI_AbandonedBattlefield_01\b_hub_200_poi_abandonedbattlefield_01_GUB_0.ogg", "a3\dubbing_f_epb\B_hub\200_POI_AbandonedBattlefield_01\b_hub_200_poi_abandonedbattlefield_01_GUB_1.ogg", "a3\dubbing_f_epb\B_hub\200_POI_AbandonedBattlefield_01\b_hub_200_poi_abandonedbattlefield_01_GUB_2.ogg", "a3\dubbing_f_epb\B_hub\200_POI_AbandonedBattlefield_01\b_hub_200_poi_abandonedbattlefield_01_GUB_3.ogg", "a3\dubbing_f_epb\B_hub\201_POI_AbandonedBattlefield_02\b_hub_201_poi_abandonedbattlefield_02_GUB_0.ogg", "a3\dubbing_f_epb\B_hub\201_POI_AbandonedBattlefield_02\b_hub_201_poi_abandonedbattlefield_02_GUB_1.ogg", "a3\dubbing_f_epb\B_hub\201_POI_AbandonedBattlefield_02\b_hub_201_poi_abandonedbattlefield_02_GUB_2.ogg", "a3\dubbing_f_epb\B_hub\202_POI_AbandonedBattlefield_03\b_hub_202_poi_abandonedbattlefield_03_GUA_0.ogg", "a3\dubbing_f_epb\B_hub\202_POI_AbandonedBattlefield_03\b_hub_202_poi_abandonedbattlefield_03_GUA_1.ogg", "a3\dubbing_f_epb\B_hub\202_POI_AbandonedBattlefield_03\b_hub_202_poi_abandonedbattlefield_03_GUA_4.ogg", "a3\dubbing_f_epb\B_hub\202_POI_AbandonedBattlefield_03\b_hub_202_poi_abandonedbattlefield_03_GUB_0.ogg", "a3\dubbing_f_epa\a_in\140_Enemies\a_in_140_enemies_BHQ_1.ogg", "a3\dubbing_f_epa\a_in\160_Evac\a_in_160_evac_BHQ_3.ogg", "a3\dubbing_f_epa\a_in\160_Evac\a_in_160_evac_LOG_0.ogg", "a3\dubbing_f_epa\a_m02\90_Designate\a_m02_90_designate_CHA_1.ogg", "a3\dubbing_f_epa\a_m02\90_Designate\a_m02_90_designate_CHA_0.ogg", "a3\dubbing_f_epb\b_in\05_Radio_Babble\b_in_05_radio_babble_JAM_0.ogg", "a3\dubbing_f_epb\b_in\05_Radio_Babble\b_in_05_radio_babble_JAM_2.ogg", "a3\dubbing_f_epb\b_in\05_Radio_Babble\b_in_05_radio_babble_JAM_3.ogg", "a3\dubbing_f_epb\b_in\05_Radio_Babble\b_in_05_radio_babble_JAM_4.ogg", "a3\dubbing_f_epb\b_m02_1\x15_detected\b_m02_1_x15_detected_MIL_0.ogg", "a3\dubbing_f_epb\B_m06\10_Recommendation\b_m06_10_recommendation_STA_0.ogg", "a3\dubbing_f_epc\C_in1\14_ambient_talk_04\c_in1_14_ambient_talk_04_ABA_0.ogg", "a3\dubbing_f_epc\C_m01\15_Support_Ready\c_m01_15_support_ready_ABA_0.ogg", "a3\dubbing_f_epc\C_m01\15_Support_Ready\c_m01_15_support_ready_BHQ_0.ogg" ]; playSound3D [_sound, _member, false, getPosASL _member, 2, 1, 200] //(units _grp select 1) commandMove getpos (units _grp select 1); }; sleep _interval + random(30); }; 3 Share this post Link to post Share on other sites
johnnyboy 3795 Posted February 24, 2017 Thanks @Persian MO, that's a cool addition. Are those all English voice files? If there are other non-english equivalents for these we could consider providing language-specific chatter using the technique I used for commanding dogs using all in-game languages. Share this post Link to post Share on other sites
Persian MO 82 Posted February 24, 2017 Yes.only English.Those sounds are from arma 3 ambient talk sample. There are not any other language chat/talk sounds.I extracted sounds from dubbing_ pbo's . There is still more than this but as I listened most of them, to my ear, this sounds like ok for normal talking while ais are on patrolling or standing guards. Share this post Link to post Share on other sites