manzilla 1 Posted June 5, 2009 waitUntil {!isNil {BISS_ACM getVariable "initDone"}}; waitUntil {BISS_ACM getVariable "initDone"}; //Sets frequency and number of patrols (0-1). BISS_ACM is module name [1, BISS_ACM] call BISS_ACM_setIntensityFunc; //min max spawn distance [bISS_ACM, 40, 80] call BISS_ACM_setSpawnDistanceFunc; //factions to be spawned [["RU"], BISS_ACM] call BISS_ACM_setFactionsFunc; //Skill range for spawned units [0, 0.6, BISS_ACM] call BISS_ACM_setSkillFunc; //Amount of ammo spawned units possess [0.2, 0.5, BISS_ACM] call BISS_ACM_setAmmoFunc; //Type of patrol. With 0 meaning no chance of appearing, and 1 meaning 100% chance. -1 removes patrol type completely. ["ground_patrol", 1, BISS_ACM] call BISS_ACM_setTypeChanceFunc; ["air_patrol", 0, BISS_ACM] call BISS_ACM_setTypeChanceFunc; but it didnt worked. Are the "SS" in "BISS" suppose to be like that? Share this post Link to post Share on other sites
petteerr 0 Posted June 5, 2009 Yes its the name of the second moduler i use! ACM=BIS(1ST Module on map)f5 with one rifleman bluefor ACM=BISS(2ND module on map)f5 with one rifleman opfor Its like the program see only the first module...or what? I also tried to make a new initT with the second module(lines) again nothing... Share this post Link to post Share on other sites
schaefsky 0 Posted June 5, 2009 I think the failure might be you are calling a function named "BISS_ACM_setSpawnDistanceFunc", which will most probably not exist. "BIS_ACM_setSpawnDistanceFunc" should exist, I am not sure though. The first part "BIS_ACM_" is part of the function name which has nothing todo with the varible name. "BIS_ACM_setSpawnDistanceFunc" and logic called "BIS_ACM" would just be a coincidence, more or less. Offtopic: From experience I can only strongly recommend to not do something like: BIS_ACM = something; BISS_ACM = something_else; The difference in this variable names is really hard to spot, which makes debugging very hard. Consider this, there's an "error" in both codes, which one is easier to spot by just skimming over it? waitUntil {!isNil {BISS_ACM getVariable "initDone"}}; waitUntil {BISS_ACM getVariable "initDone"}; //Sets frequency and number of patrols (0-1). BISS_ACM is module name [1, BISS_ACM] call BIS_ACM_setIntensityFunc; //min max spawn distance [bIS_ACM, 40, 80] call BIS_ACM_setSpawnDistanceFunc; //factions to be spawned [["RU"], BISS_ACM] call BIS_ACM_setFactionsFunc; //Skill range for spawned units [0, 0.6, BISS_ACM] call BIS_ACM_setSkillFunc; //Amount of ammo spawned units possess [0.2, 0.5, BISS_ACM] call BIS_ACM_setAmmoFunc; //Type of patrol. With 0 meaning no chance of appearing, and 1 meaning 100% chance. -1 removes patrol type completely. ["ground_patrol", 1, BISS_ACM] call BIS_ACM_setTypeChanceFunc; ["air_patrol", 0, BISS_ACM] call BIS_ACM_setTypeChanceFunc; and this: waitUntil {!isNil {BIS_ACM_2 getVariable "initDone"}}; waitUntil {BIS_ACM_2 getVariable "initDone"}; //Sets frequency and number of patrols (0-1). BISS_ACM is module name [1, BIS_ACM_2] call BIS_ACM_setIntensityFunc; //min max spawn distance [bIS_ACM, 40, 80] call BIS_ACM_setSpawnDistanceFunc; //factions to be spawned [["RU"], BIS_ACM_2] call BIS_ACM_setFactionsFunc; //Skill range for spawned units [0, 0.6, BIS_ACM_2] call BIS_ACM_setSkillFunc; //Amount of ammo spawned units possess [0.2, 0.5, BIS_ACM_2] call BIS_ACM_setAmmoFunc; //Type of patrol. With 0 meaning no chance of appearing, and 1 meaning 100% chance. -1 removes patrol type completely. ["ground_patrol", 1, BIS_ACM_2] call BIS_ACM_setTypeChanceFunc; ["air_patrol", 0, BIS_ACM_2] call BIS_ACM_setTypeChanceFunc; Share this post Link to post Share on other sites
DnA 5143 Posted June 5, 2009 Its like the program see only the first module...or what? Yes, I'm afraid only one ACM per group is currently allowed. The second one is ignored. The only way to have different settings for different factions currently would be to create a custom pool of group classes. The ACM pulls its groups from CfgGroups, which is the same place the mission editor loads its groups from when you use F2 to place one. In these groups a value is defined (rarity) which controls how likely that group is. By default the ACM uses the entire set of groups. You can create a custom list by using the functions listed earlier, but you would have to know the class names ... again: more info on the way. Share this post Link to post Share on other sites
CarlGustaffa 4 Posted June 5, 2009 So a 2 man sniper team is/can be less frequent than a fireteam or squad? Brilliant! Share this post Link to post Share on other sites
-)rStrangelove 0 Posted June 5, 2009 (edited) So, if i only want Infantry to spawn i use: [this, ["Motorized", "Mechanized", "Armored","Air"]] call BIS_ACM_removeGroupClassesFunc; right? Because that would remove all those GrpTypes ? [EDIT] Oh btw, i managed to get the ACM to work when you put this into the init field: waitUntil {!isNil {this getVariable "initDone"}}; waitUntil {this getVariable "initDone"}; [1, this] call BIS_ACM_setIntensityFunc; [this, 300, 500] call BIS_ACM_setSpawnDistanceFunc; [["USMC", "RU"], this] call BIS_ACM_setFactionsFunc; [0.4, 0.8, this] call BIS_ACM_setSkillFunc; [0.2, 0.5, this] call BIS_ACM_setAmmoFunc; ["ground_patrol", 1, this] call BIS_ACM_setTypeChanceFunc; this in this case refers to the object itself, so no need to give the Logic a name. Edited June 6, 2009 by ])rStrangelove Share this post Link to post Share on other sites
trini scourge 1 Posted June 5, 2009 Tried your method Strangelove...it doesn't work. I used: waitUntil {!isNil {this getVariable "initDone"}}; waitUntil {this getVariable "initDone"}; [1, this] call BIS_ACM_setIntensityFunc; [this, 30, 50] call BIS_ACM_setSpawnDistanceFunc; [["USMC"], this] call BIS_ACM_setFactionsFunc; [0.4, 0.8, this] call BIS_ACM_setSkillFunc; [0.2, 0.5, this] call BIS_ACM_setAmmoFunc; ["ground_patrol", 1, this] call BIS_ACM_setTypeChanceFunc; After 5 mins I was killed by a squadron of two KA52s, which should not be possible with the parameters used. Share this post Link to post Share on other sites
manzilla 1 Posted June 5, 2009 So a 2 man sniper team is/can be less frequent than a fireteam or squad? Brilliant! No doubt. Every time DnA comes around and posts about this I get the feeling that my jaw is gonna hit the desk when this documentation comes out. I have a feeling there's so much good stuff these modules can do and currently we haven't even scratched with what we know about the possibilities. I'm excited to see what comes. Share this post Link to post Share on other sites
-)rStrangelove 0 Posted June 5, 2009 Hmm maybe we also need to deactivate the air_patrols, like this: ["air_patrol",-1, this] call BIS_ACM_setTypeChanceFunc; I can't check now, off to bed. NN everyone :D Share this post Link to post Share on other sites
MiXeR 10 Posted June 5, 2009 (edited) )rStrangelove;1300110']So' date=' if i only want Infantry to spawn i use: [this, ["Motorized", "Mechanized", "Armored","Air"]] call BIS_ACM_removeGroupClassesFunc; right? Because that would remove all those GrpTypes ? [/quote'] Returns a error :( /*type must be one of "", "ground_patrol", "air_patrol". And that's all? Only 2 types? Edited June 5, 2009 by MiXeR Share this post Link to post Share on other sites
trini scourge 1 Posted June 5, 2009 What other type of patrol is there? According to what DNA said, you will be able to add custom CfgGroup lists that could include or exclude whatever you want. Share this post Link to post Share on other sites
-)rStrangelove 0 Posted June 6, 2009 (edited) If you take a look into the dePBOed dir structure at modules\ambient_combat\data\scripts you will find there are 3 scripts: air_drop.sqf, air_patrol.sqf and ground_patrol.sqf. Seems like air_drop.sqf was planned to be in the 1.00 release, but it's empty. I guess we get more with the next patch. There's also the init.sqf which tells us how to register(sync) a group with an ACM object: BIS_ACM setVariable ["grp", group player]; {_x setVariable ["acm", BIS_ACM];} forEach (units group player); Not tested yet, but i guess that's how you could sync an ACM with the player group dynamically in a mission at any time. For example, once you reach an enemy territory. Should come in handy. [EDIT] Ok, it seems BIS_ACM_removeGroupClassesFunc and BIS_ACM_addGroupClassesFunc work only with the CUSTOM pool of group classes, means the groups you made up in your own class definition file. This only works with scripting, can't be done with pasting txt into an init field alone. Edited June 6, 2009 by ])rStrangelove Share this post Link to post Share on other sites
CarlGustaffa 4 Posted June 6, 2009 What other type of patrol is there? According to what DNA said, you will be able to add custom CfgGroup lists that could include or exclude whatever you want. Foot Patrol, Motorized Patrol, Armored Patrol, and Sea Patrol? :) Search Patrol even (kind of foot patrol). Probably other means of setting this up though. Btw, how does an air patrol work? Do they constantly patrol the area like i.e. how Domination was setup, or for a limited amount of time? Share this post Link to post Share on other sites
trini scourge 1 Posted June 6, 2009 (edited) Foot Patrol, Motorized Patrol, Armored Patrol, and Sea Patrol? :) Search Patrol even (kind of foot patrol). Probably other means of setting this up though.Btw, how does an air patrol work? Do they constantly patrol the area like i.e. how Domination was setup, or for a limited amount of time? Wouldn't all these be variations of ground patrol? (except for Sea Patrol of course). With the ability to add custom groups to the pool, it would be relatively easy to set up any of the variations you mentioned. With Air Patrol they patrol the area for a random amount of time: //Give this patrol a random lifetime. private ["_lifetimes"]; _lifetimes = _acm getVariable "patrolLifetimes"; _lifetimes = _lifetimes + [time + (60 + (random 120))]; _acm setVariable ["patrolLifetimes", _lifetimes]; EDIT: Strangelove, this would not work? [My_ACM, ["Infantry"] call BIS_ACM_addGroupClassesFunc; Edited June 6, 2009 by trini scourge Share this post Link to post Share on other sites
st!gar 3 Posted June 7, 2009 Quick question: On the default settings, before the player modifies it, the ACM spawns patrols from all five factions, right? Are those factions all fighting each other, (USMC vs Russia vs NAPA vs CDF vs ChDKZ vs USMC, for example.), or are some of them allied to each other? USMC+CDF and Russia+ChDKZ, for example? Share this post Link to post Share on other sites
trini scourge 1 Posted June 7, 2009 Quick question: On the default settings, before the player modifies it, the ACM spawns patrols from all five factions, right? Are those factions all fighting each other, (USMC vs Russia vs NAPA vs CDF vs ChDKZ vs USMC, for example.), or are some of them allied to each other? USMC+CDF and Russia+ChDKZ, for example? BLUFOR (USMC+CDF) VS OPFOR (INS + RU) Who NAPA fights would be determined by mission settings. Share this post Link to post Share on other sites
st!gar 3 Posted June 7, 2009 Aah. By choosing which side the Resistance -faction is friendly to, like in OFP and ArmA 1, I assume? But then what happens if the Resistance side - I assume that's NAPA - is set to be friendly to everyone? :confused: Share this post Link to post Share on other sites
twisted 128 Posted June 8, 2009 silly question. but when synchronizing i push f5 and then drag a line from the ambient combat module to me. is that all i need to do as nothing happens after? Share this post Link to post Share on other sites
-)rStrangelove 0 Posted June 8, 2009 No, you need to initialize parameters of the ACM object. You can do that by pasting commands into a txtfile named 'init.sqf' and save it into the directory of your mission. Or you try & put this into the init field of the ACM object: waitUntil {!isNil {BIS_ACM getVariable "initDone"}}; waitUntil {BIS_ACM getVariable "initDone"}; [1, BIS_ACM] call BIS_ACM_setIntensityFunc; [bIS_ACM, 300, 600] call BIS_ACM_setSpawnDistanceFunc; [["USMC", "RU"], BIS_ACM] call BIS_ACM_setFactionsFunc; [0, 0.6, BIS_ACM] call BIS_ACM_setSkillFunc; [0.2, 0.5, BIS_ACM] call BIS_ACM_setAmmoFunc; ["ground_patrol", 1, BIS_ACM] call BIS_ACM_setTypeChanceFunc; Share this post Link to post Share on other sites
twisted 128 Posted June 8, 2009 (edited) )rStrangelove;1303601']No' date=' you need to initialize parameters of the ACM object.[/quote'] thanks man! edit. it works. easy. but all that spawn are helicopters even though it says ground patrol in the text. funny that - seems more info is being put on the arma biki so that should illluminate things a bit more. Edited June 9, 2009 by twisted Share this post Link to post Share on other sites
rübe 127 Posted June 9, 2009 (edited) I'd like to see newly created squads - sometimes - be introduced by a helicopter so the squad will a) land and eject (normal squads) or b) paradrop (special squads like Speznaz) at a random location. Ok, it's called `Ambient` Combat Module. But still: what about an option/toggle for `Direct` Combat? By this I mean random generated squads heading for your location or even following you. A Squad, transported by an Ural, heading in your direction and stuff like this. Or there could be `ambient` enemy spotters: the moment such a unit spots your squad, `direct` units will be generated, heading towards you :D Also, since such a spotter has to radio his HQ. there should be a chance that your HQ (or other friendlies) will intercept that radio-call and thus your squad will be warned by your HQ (information about direction of the attack, number/type of enemies, etc.). Sounds like fun, ehy? Edited June 10, 2009 by ruebe Share this post Link to post Share on other sites
HyperWeaseL 10 Posted June 9, 2009 72;1299000']Amazing!Just have a copy of this INIT.SQF in the "scripts" folder inside the profiles folder. That way you can just copy it into whatever missions your working on and change the variables. Really great work BIS. Alex "scripts" folder inside the profiles folder !? whot scripts folder:confused: Share this post Link to post Share on other sites
Cyborg11 10 Posted June 9, 2009 "scripts" folder inside the profiles folder !? whot scripts folder:confused: He created a new folder called "scripts" :D Share this post Link to post Share on other sites
-)rStrangelove 0 Posted June 9, 2009 Yeah, as an example. What he meant was to gather all your template scripts in a nearby folder underneath ArmA2, so that copying them into your various mission folders isn't that much of an issue. Share this post Link to post Share on other sites
HyperWeaseL 10 Posted June 9, 2009 ok thanks. is there a way to respawn and still have the ACM linked to the player! and how do you respawn like in mp or is it that when you get shot you just start over againe. Share this post Link to post Share on other sites