Jump to content
Sign in to follow this  
silola

Dynamic-AI-Creator (DAC) V3.0 released

Recommended Posts

@SavageCDN - yes, one reason I switched to the script version, plus the missions I've been working on require the script version anyway for various reasons. In any event people are more likely to download a mission of ot doesn't need addons.

~tpM: ASR_AI has a config with options that includes sound range adjustment, plus lots of other great features - especially the latest versions (v1.15+).

Not sure about your

_setBehav = ["safe"];

entry - have you tried switching that to "aware", for example?

That said, there is a known issue with AI patrols not scanning their environment. IIRC there's a CIT on dev-heaven.

Share this post


Link to post
Share on other sites
@SavageCDN - yes, one reason I switched to the script version, plus the missions I've been working on require the script version anyway for various reasons. In any event people are more likely to download a mission of ot doesn't need addons.

~tpM: ASR_AI has a config with options that includes sound range adjustment, plus lots of other great features - especially the latest versions (v1.15+).

Not sure about your

_setBehav = ["safe"];

entry - have you tried switching that to "aware", for example?

Agreed although ACE includes it so it was 'easy' to use it in ACE missions... but I'm switching back to script version for sure.

Yes of course ASR_AI (better than GL4 as it is still worked on and updated by Robaldo).. let's hope that the new TPWC suppression script will work in MP :)

Share this post


Link to post
Share on other sites

Thanks for the tips, will try it out.

But I found another, more important issue. The system sometimes simply fail to initialize properly. It spawns the units at the given zone, but it wont give them their waypoints, which results in AI groups standing still where they were created. On occasions like this, the "result" at the end of the init dialog (listing how many units and how many WPs were created and how much secs it took) never appears.

It usually works at first start, but after that, its totally random. Sometimes it works properly, sometimes not.

Share this post


Link to post
Share on other sites

Not sure... just gonna throw out some questions:

You have time > 1 in all the DAC triggers?

Are you moving any DAC zones after the initial setup?

Are you using custom waypoint configurations?

In the DAC dialog thing.. does it show creation of waypoints and/or units and can you see them being created on the map?

Share this post


Link to post
Share on other sites

Some essential tips passed on to me by MadRussian:

Several DAC statements need to be preceded and followed by checks on the status of the script concerned. Silola does make reference to this at a few points in the manual - create zone & delete zone for example, but not all & it is not obvious which script you need to check - e.g., DAC_fNewZone and DAC_fDeleteZone should each be preceded and followed by waituntil{DAC_NewZone == 0};

As a script example, in releasing groups you need code like this:

waitUntil {DAC_Release_Action == 0};
[_group] spawn DAC_fReleaseGroup;
waitUntil {DAC_Release_Action == 0};

Other commands that need appropriate waitUntil statements definitely include the following (but list may not be exhaustive):

DAC_fNewZone

DAC_fDeleteZone

DAC_Activate

DAC_Deactivate

DAC_fChangeZone

DAC_fInsertGroup

DAC_fReleaseGroup

As for incomplete zone formation, I had this problem when setting up a complex set of zones. MadRussian solved this for me as follows:

In the DAC_Config_creator, find this section:

if(DAC_Code < 2) then
{
//===========================================|
// StartScriptOnServer                       |
//===========================================|
//player sidechat "ServerStart"
//[] execVM "myServerScript.sqf";
//onMapSingleClick "_fun = [_pos,_shift]execVM ""Action.sqf""";
//[[sec1,""]] execVM "DAC\Scripts\DAC_Init_Sector.sqf";
}

and change it as follows:

if(DAC_Code < 2) then
{
//===========================================|
// StartScriptOnServer                       |
//===========================================|
//player sidechat "ServerStart"
//[] execVM "myServerScript.sqf";
//onMapSingleClick "_fun = [_pos,_shift]execVM ""Action.sqf""";
//[[sec1,""]] execVM "DAC\Scripts\DAC_Init_Sector.sqf";
[color="#B22222"]MRU_DacReady = true;[/color]
}

then your init.sqf needs to look something like this:

if(isServer) then {waitUntil{!isNull player}};
MRU_DacReady = false;
DAC_Zone = compile preprocessFile "DAC\Scripts\DAC_Init_Zone.sqf";
DAC_Objects = compile preprocessFile "DAC\Scripts\DAC_Create_Objects.sqf";
execVM "DAC\DAC_Config_Creator.sqf";
waitUntil {MRU_DacReady};

The MRU_DacReady variable enables a better check for completion of the set-up scripts than does the default

DAC_Basic_Value = 0;
waituntil{DAC_Basic_Value > 0};

Note that "MRU" is MadRussian's OFPEC registered tag - he might prefer it if you replaced it with your own in any released missions, but that's a matter for him to decide.

Hope that's clear enough, post back if you need any more help.

Share this post


Link to post
Share on other sites
As for incomplete zone formation, I had this problem when setting up a complex set of zones. MadRussian solved this for me as follows:

In the DAC_Config_creator, find this section:

if(DAC_Code < 2) then
{
//===========================================|
// StartScriptOnServer                       |
//===========================================|
//player sidechat "ServerStart"
//[] execVM "myServerScript.sqf";
//onMapSingleClick "_fun = [_pos,_shift]execVM ""Action.sqf""";
//[[sec1,""]] execVM "DAC\Scripts\DAC_Init_Sector.sqf";
}

and change it as follows:

if(DAC_Code < 2) then
{
//===========================================|
// StartScriptOnServer                       |
//===========================================|
//player sidechat "ServerStart"
//[] execVM "myServerScript.sqf";
//onMapSingleClick "_fun = [_pos,_shift]execVM ""Action.sqf""";
//[[sec1,""]] execVM "DAC\Scripts\DAC_Init_Sector.sqf";
[color="#B22222"]MRU_DacReady = true;[/color]
}

then your init.sqf needs to look something like this:

if(isServer) then {waitUntil{!isNull player}};
MRU_DacReady = false;
DAC_Zone = compile preprocessFile "DAC\Scripts\DAC_Init_Zone.sqf";
DAC_Objects = compile preprocessFile "DAC\Scripts\DAC_Create_Objects.sqf";
execVM "DAC\DAC_Config_Creator.sqf";
waitUntil {MRU_DacReady};

The MRU_DacReady variable enables a better check for completion of the set-up scripts than does the default

DAC_Basic_Value = 0;
waituntil{DAC_Basic_Value > 0};

Thanks Orcinus and MadRussian for this good info

Edited by SavageCDN
props

Share this post


Link to post
Share on other sites
Thanks for this good info

The thanks are due to MadRussian, not me :)

Share this post


Link to post
Share on other sites

Quick question.

Can I create a zone that has units that a purely for support of other units?

Example:

I have 2 zones(z1 and z2), that have patrolling units. I would like to have a third zone (z3), that has a couple of wheeled units NOT patrolling, but ready for a call for support if the need arises.

Share this post


Link to post
Share on other sites
;2181439']Quick question.

Can I create a zone that has units that a purely for support of other units?

Example:

I have 2 zones(z1 and z2)' date=' that have patrolling units. I would like to have a third zone (z3), that has a couple of wheeled units NOT patrolling, but ready for a call for support if the need arises.[/quote']

You can certainly have units in z3 support the other two zones but not sure if there is a way to prevent the z3 units from moving after being created - can't say I've tried this but what about having zero waypoints in a zone?

Share this post


Link to post
Share on other sites
You can certainly have units in z3 support the other two zones but not sure if there is a way to prevent the z3 units from moving after being created - can't say I've tried this but what about having zero waypoints in a zone?

I don't think DAC allows zero waypoints, also MadRussian told me that less than having less than (IIRC) 3 can cause problems. Certainly when I set jusy 1 waypoint for some choppers to stop them flying about before I released them from DAC they behaved very oddly.

You could try setting some user waypoints in the zone. Might be other ways to so it but I don't have time to investigate right now.

Share this post


Link to post
Share on other sites

Is anyone else having problems with zones that are inactive at launch? I can't seem to get them to activate 100% of the time with 'call DAC_Activate'. BUT if I set the zone to initially be active, then some time after the game starts de-activate the zone I can then trigger it's activation 100% of the time. Just wondering if anyone has experienced that before. Thanks!

edit: nevermind, apparently this issue only pops up when previewing the mission. If I export it to MP missions and start a new game everything seems to work fine.

Edited by mons00n

Share this post


Link to post
Share on other sites
Is anyone else having problems with zones that are inactive at launch? I can't seem to get them to activate 100% of the time with 'call DAC_Activate'. BUT if I set the zone to initially be active, then some time after the game starts de-activate the zone I can then trigger it's activation 100% of the time. Just wondering if anyone has experienced that before. Thanks!

edit: nevermind, apparently this issue only pops up when previewing the mission. If I export it to MP missions and start a new game everything seems to work fine.

Delayed activations work fine in the Editor Preview mode so long as you pay attention to the 'waitUntil" commands I posted about last week - and which you should use routinely anyway.

Share this post


Link to post
Share on other sites

One thing I have always wondered with DAC is whether you should pad out the unit lists with more "standard" units eg more rifleman, so that the groups that are created are not full of "specials". is that necessary?

Share this post


Link to post
Share on other sites
One thing I have always wondered with DAC is whether you should pad out the unit lists with more "standard" units eg more rifleman, so that the groups that are created are not full of "specials". is that necessary?

I wouldn't say it's necessary but it certainly makes things more 'realistic'. I usually have at least three std rifleman for every 'special' unit.

Share this post


Link to post
Share on other sites

Thanks, I do too, as it was my gut instinct. I guess what I meant by "necessary" was, I presume DAC just randomly selects from the array and isn't doing anything more complex to create balanced groups?

Share this post


Link to post
Share on other sites

Correct. The first unit in the Soldier array is for vehicle crew members, second is for pilots, third is for infantry group leaders (avoid changing these 3)... after that it selects randomly from the remaining entries to fill up the group.

["[i]USMC_Soldier_Crew[/i]","[u]USMC_Soldier_Pilot[/u]","[b]USMC_Soldier_SL[/b]","USMC_Soldier","USMC_Soldier_GL","USMC_Soldier_AR","USMC_Soldier",etc

You can also give each entry its own custom weapon loadout.. see the DAC manual for info on this

Share this post


Link to post
Share on other sites
Thanks, I do too, as it was my gut instinct. I guess what I meant by "necessary" was, I presume DAC just randomly selects from the array and isn't doing anything more complex to create balanced groups?

Also, you can even have several configs to choose from and randomise what one is picked by using this instead of a number:

(ceil (random 5)+10)

where there are 5 configs to choose from, numbered "case 11" to "case 15". That way you can start each mission not knowing quite which mix is being used :)

Edited by DMarkwick

Share this post


Link to post
Share on other sites

Hi, I'm wondering why on the start of every game the howitzers in the camps blow up and as well how to make the bases respawn units, thanks.

Share this post


Link to post
Share on other sites

@Slendermang:

Zero information that would enable people to help you :)

Post the set-up lines for each of your zones; if you have error(s) with side selections the spawned units may be attacking each other &/0r the camps.

Are you using the default camp & unit configs? If not, post them (in code brackets &/or inside spoilers, to make it more easily readable, please).

Share this post


Link to post
Share on other sites
@Slendermang:

Zero information that would enable people to help you :)

Post the set-up lines for each of your zones; if you have error(s) with side selections the spawned units may be attacking each other &/0r the camps.

Are you using the default camp & unit configs? If not, post them (in code brackets &/or inside spoilers, to make it more easily readable, please).

I'm indeed using the default camp and unit configs from the intern config and here is the zone code.

fun6 = ["z3_1",[10,0,0],[],[],[],[1,8,30,2,100,3],[0,0,0,1,1]] spawn DAC_Zone

Upon inspecting the camps I believe the howitzers are blowing themselves up for some reason lol.

Share this post


Link to post
Share on other sites
I'm indeed using the default camp and unit configs from the intern config and here is the zone code.

fun6 = ["z3_1",[10,0,0],[],[],[],[1,8,30,2,100,3],[0,0,[color="#FF0000"][b]0[/b][/color],[b][color="#0000CD"]1[/color][/b],1]] spawn DAC_Zone

Upon inspecting the camps I believe the howitzers are blowing themselves up for some reason lol.

Are you only using one zone? Seems unlikely as this zone is linked to zone 10.

See the highlighted entries above - you've set the 3rd parameter in the final set to side East, and the fourth entry is the camp config - the standard entry number 1 in the DAC_config_camps is side West. The howitzers are not blowing up, the camp troops are attacking them (well, as one would).

If you haven't read it already, there's an excellent tutorial on configuring DAC from the excellent DMarkwick here:

http://forums.bistudio.com/showthread.php?99759-DAC3-initialisation-tutorial-(for-DAC-beginners)

If you have read it already, I suspect you might need to read it again :)

Share this post


Link to post
Share on other sites
Are you only using one zone? Seems unlikely as this zone is linked to zone 10.

See the highlighted entries above - you've set the 3rd parameter in the final set to side East, and the fourth entry is the camp config - the standard entry number 1 in the DAC_config_camps is side West. The howitzers are not blowing up, the camp troops are attacking them (well, as one would).

If you haven't read it already, there's an excellent tutorial on configuring DAC from the excellent DMarkwick here:

http://forums.bistudio.com/showthread.php?99759-DAC3-initialisation-tutorial-(for-DAC-beginners)

If you have read it already, I suspect you might need to read it again :)

D'oh

Can't believe I overlooked that, thanks.

Share this post


Link to post
Share on other sites

Sounds interesting but how do I use it? How do I set these ai zones? I'm sorry, I'm lost a little bit. Can I just set the ai zone for opfor and blufor somewhere on the map in mission editor and they will fight each other for ever?

Share this post


Link to post
Share on other sites
Sounds interesting but how do I use it? How do I set these ai zones? I'm sorry, I'm lost a little bit. Can I just set the ai zone for opfor and blufor somewhere on the map in mission editor and they will fight each other for ever?

Start by working through the comprehensive set of demo missions while reading the manual in parallel. Be sure to read the DAC initialisation tutorial thread I cited two posts before your message before you start to design your own missions.

Small tip: for your first missions - once you've understood the demos - port the "Enemy Contact" scenario to some location of your choice. You can then play in the editor, adjusting zone sizes, number & composition of spawned groups, etc. to get a feel for how it all hangs together.

Share this post


Link to post
Share on other sites

Hi, I'm having another problem all my tanks and helicopters spawning but there doesn't seem to be that many infantry even though dac says 900~ units have spawned

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  

×