Jump to content
Sign in to follow this  
raedor

Mapfact releases DAC 2.0 for ArmA

Recommended Posts

@DMarkwick:

1. This means that the groups contain exactly 5 units, because the value of the randomness amounts 0.

2. Is right exactly what you have supposed smile_o.gif

OK, thanks for answering the questions smile_o.gif

Couple more:

When radioing for assistance, what is the criteria for responses?

Same zone?

Same zone group?

Same side?

Distance/type/random?

When placing down manual waypoints, if I need only manual waypoints to be used do I put 0,0 in the waypoint element places in the arrays?

If I have a zone within a zone, how does DAC decide that a logic unit's waypoints belong to any one zone?

If you have an 3 Zones [Z1.Z2.Z3] and if they are linked togther the support will come from anyone. But if you have 3 xones which arnt linked they wont come.

If you have a Camp with arty and it is supporting 3 zones, those 3 zones will be beable to call in the arty and ask for reinforcements from the camp.

To monitor how the AI use reinforcements go into your Config_Creator and use this

DAC_Com_Values = [1,1,3]

Thanks Matt smile_o.gif

What I'm seeing with my fairly complex setup (where NO zones are linked) is that some times help will come, sometimes not.

I got a set of zones covering the southern Sahrani map. One huge one for mobile armour and helos. Two half-island zones for mobile troop patrol vehicles (with manual placed waypoints at town centers, hopefully to keep the patrols on roads) and then each town has it's own zone with up to 3 groups of foot patrols. It seems to work pretty nicely as a catch-all zone setup for the entire island.

If any of the town-based patrols see an enemy tank, I'd like for them to radio for help from any of the island-wide mobile groups (troops transport or armour/helo) but I don't wish to link all the zones, as otherwise the town patrolling troops will set off for marathon yomps to other towns.

It seems to me that when attacked, the townies will sometimes radio for help, and that sometimes armour will turn up. Marker info tells me that these are not natural waypoint destinations, but are temporary destinations given to them. So I think that any group is capable of answering any request, but I'm not sure. So I thought I'd ask smile_o.gif

To monitor how the AI use reinforcements go into your Config_Creator and use this

DAC_Com_Values = [1,1,3]

I already got that smile_o.gif also changed the marker config to show destinations, all waypoints (both used & unused) so I can see what's going on mostly.

Share this post


Link to post
Share on other sites

Hi,

@Heatseeker:

-----------------

It is no problem to let run DAC without any Addons.

Then, however, you must prevent the following things:

- If you use the DAC markers, the parameter "_setSizeWpLine = [0,0];" has to be placed in the DAC_Config_Marker.

- If you generate DAC camps, no objects from the editor's update may be used, e.g. use the DAC_Camp_Config No. 0

That's all smile_o.gif

@DMarkwick & Matt Rochelle:

-----------------

Basically a zone must be declared for support.

The parameter _setSupport = [1,1] in the DAC_Config_Behaviour is responsibly for it (Readme Page 27 wink_o.gif )

The time, when a group requests for support, depends on the skill of the groups leader.

A good leader waits not, until several units of his group are dead, but he tries to call support immediately.

The distances with which he sends his radio message to the other groups is very short.

A bad leader will request for support only at the last minute.

The distances with which he sends his radio message to the other groups is substantially longer.

Besides, this release depending on the parameter DAC_AI_Level.

All groups are sorted according to distance, and then are requested by the leader, according to this order.

The groups which note a fight, will come to assistance anyhow, and cannot be requested any more.

Groups which already support other groups, or groups which are themselves in a fight,

will reject an inquiry on support.

Here a short example:

----------------------

A leader with the skill 1 requests for support (all 2 seconds a new radio message).

A total of 12 groups stand in different distances at possession. The leader begins with the group which is the next to him:

after 2 sec: group1 (distance 300m) > no support.

(the group has noted the fight and is already on the move)

after 4 sec: group2 (distance 400m) > support.

after 6 sec: group3 (distance 450m) > no support.

(The group supports another group)

after 8 sec: group4 (distance 600m) > no support.

(The group supports another group)

after 10 sec: group5 (distance 800m) > no support.

(The group is itself in a fight)

after 12 sec: group6 (distance 1300m) > support.

after 14 sec: group7 (distance 1500m) > no support.

(The group may give no support)

after 16 sec: group8 (distance 1600m) > no support.

(The group may give no support)

after 18 sec: group9 (distance 2000m) > no support.

(The group is itself in a fight)

after 20 sec: group10 (distance 2400m) > no support.

(The group may give no support)

after 22 sec: group11 (distance 4500m) > no support.

(The group is too far away)

after 24 sec: group12 (distance 5000m) > no support.

(The group is too far away)

There are 4 parametres which influence this behaviour:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

DAC_Radio_Dist = 1000 * DAC_AI_Level;

(Maximum distance for a group which can come to support)

DAC_Alert_Dist = 150 + (150 * DAC_AI_Level);

(The maximum distance that a group can come to support (without being requested))

DAC_Radio_Time = 8 / DAC_AI_Level;

(The shortest time span for the radio messages, if the leader has a skill of 1)

DAC_Radio_Count = 1 * DAC_AI_Level;

(The maximum number of groups which can come to support (per group))

You find these parametres in the script DAC_AI_Init.

@Morticus:

-----------------

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">It tells me it is not suitable for infantry? the zone is placed over the small island Ramadi using the full sara map.

any ideas why the only way it will create infantry is in the water ?

I see that you have chosen the waypoint config No. 2 in the script call.

This could cause the problems. Please, tries first to use the standard configuration.

The standard configuration is used if you do not give the last parameter:

["bluebase",[1,0,0,550,350],[8,2,20,5],[3,3,20,5],[2,2,20,5],[2,1,5],[1,1,21,7]] exec "dac\scripts\dac_init_zone.sqs"

Greeting

Silola

Share this post


Link to post
Share on other sites

This is really outstanding work, thank you very much Silola and mapfact notworthy.gif .

Now... hangover or not.. back to the editor! crazy_o.gif !!

Share this post


Link to post
Share on other sites

Hi,

many thx Heatseeker smile_o.gif

@quiet_man:

-------------

Quote[/b] ]I just want to add that I'm also waiting for dynamic change of amount of active units for a zone! If nothing else helps a zone deleter would be sufficient. I could then recreate the zone with the according settings.

I'm still working through the demos, but if it is not available would it be possible to get the amount of units lost and/or the number of respawns left from somewhere?

I work on a solution. However, this needs time crazy_o.gif

Quote[/b] ]Also when I move a zone, can I read any error messages by script somewhere to do automatic corrections? (e.g. increasing the zone size until it fits)

A solution is compiled and is included in the next patch.

(increasing the zone size until it fits. Then the maximum number of the automatic enlargement and the value of the enlargement is adjustable.)

@HulkingUnicorn:

------------------

Quote[/b] ]I've been playing around it a bit, and must say I really like it in general. There are a couple of things I'd like though:

- Automatic naming of every unit

- More flexibility regarding zone creation (I can't fit my air zone inside the airport on the tolafarush island - anything less than 140 horisontal side isn't accepted)

For which do you need the names of all units?

When required you can store the groups of a certain zone, e.g., in an Array of your choice.

Please, thinks that DAC is no mission generator. Units or groups which are relevant for your mission,

should be placed (and named) by editor.

If you work with small zones, and if it concerns then camp or heli zones,

you should always do use user-defined waypoints (Readme page 11).

You handle with it the problems with small zones in connection with camps or Helis.

@DMarkwick:

---------------

Quote[/b] ]When placing down manual waypoints, if I need only manual waypoints to be used do I put 0,0 in the waypoint element places in the arrays?

No, you must give exactly the number of the user-defined waypoints there.

If you have, for example, 10 user-defined waypoints, and in the Array you give only 6 waypoints,

then only 6 of 10 user-defined waypoints are used.

If you put down 15 in the Array, 10 user-defined waypoints are stored first, and then

in addition, another 5 by random generated waypoints.

Quote[/b] ]If I have a zone within a zone, how does DAC decide that a logic unit's waypoints belong to any one zone?

This state is really a problem. However, I have already compiled a solution wink_o.gif

Greeting

Silola

Share this post


Link to post
Share on other sites

Hi again smile_o.gif

Quote[/b] ]Quote (Silola @ Dec. 25 2007,23:25)

Only a "fired" event wink_o.gifbiggrin_o.gif

This can be inserted by yourself.

For it is done the DAC_Config_Event.sqf (readme page 34 + 35) wink_o.gif

Quote[/b] ]

I had a look there, but I cannot see how I can use it for my purposes.

A simple example:

-------------------

You would like to give to the units of the zone z1 an EH fired.

OK, then you must do the following:

Open the script \DAC\Configs\DAC_Config_Events.

There you find case1: and case2: The Arrays there are empty.

Use case1: for this example:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">_Events_Unit_S = [

["{_x addeventhandler [""fired"",{_this execVM ""MyFiredScript.sqf""}]} foreach units _group"],

[],

[],

[],

[],

[]

];

This means that all units of the category infantry, get the registered Eventhandler (_Events_Unit_S = infantry).

But only the units whose zone loads this event configuration.

To be sure that the units them were reduced, and afterwards again were generated,

also get the Eventhandler, the entry also has to go in the last Array:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">_Events_Unit_S = [

["{_x addeventhandler [""fired"",{_this execVM ""MyFiredScript.sqf""}]} foreach units _group"],

[],

[],

[],

[],

["{_x addeventhandler [""fired"",{_this execVM ""MyFiredScript.sqf""}]} foreach units _group"]

];

Now you must adapt the script call for the zone accordingly:

["z1",[1,0,1,400,350],[8,2,20,5],[],[],[],[0,0,0,7]] exec "dac\scripts\dac_init_zone.sqs"

This entry loads the DAC_Config_Events No. 1

This is only one example, and I hope that it fairly clear icon_rolleyes.gif

Greeting

Silola

Share this post


Link to post
Share on other sites
@HulkingUnicorn:

------------------

Quote[/b] ]I've been playing around it a bit, and must say I really like it in general. There are a couple of things I'd like though:

- Automatic naming of every unit

- More flexibility regarding zone creation (I can't fit my air zone inside the airport on the tolafarush island - anything less than 140 horisontal side isn't accepted)

For which do you need the names of all units?

When required you can store the groups of a certain zone, e.g., in an Array of your choice.

Please, thinks that DAC is no mission generator. Units or groups which are relevant for your mission,

should be placed (and named) by editor.

If you work with small zones, and if it concerns then camp or heli zones,

you should always do use user-defined waypoints (Readme page 11).

You handle with it the problems with small zones in connection with camps or Helis.

I wanted to attach an action to every vehicle upon it's init but I ran into trouble when trying to add the action on every client, as I couldn't use call compile format with ArmAs default references for units/vehicles and setVehicleInit doesn't work with local variables (such as the provided _vehc var).

I ended up using the initevents for vehicles to store every vehicle spawned in an array, transmit the array to the clients and adding the actions there (if I don't seem to make any sense I can send you the code if you want).

I'll try out the waypoint suggestion smile_o.gif

Edit: Now my choppers spawn exactly where I want them - thank's a bunch yay.gif

Share this post


Link to post
Share on other sites

I have to say Silola, the more I learn about DAC, the more amazed I am. I would have been happy with a direct port from DAC1, but this is fantastic smile_o.gif

About the zone radioing for help thing - I just knew it would be something more amazing than I had thought smile_o.gif

About the events solution - I was confused by the comments in the DAC_Config_Events.sqf, so I thought that each of the arrays had to have 6 elements to "line up" with the comments at the top. Of course, now that you have provided an example I can see I got it totally wrong there. I now see the super-arrays that contain these array elements. My bad on that smile_o.gif

However, I can already do that via addon (for "init" or "fired" in any case, not extensively tested on respawn, but I rarely use respawn). What I was needing is a way to capture the smokeshell spawn event so that I can kick off my viewblock script on the smokeshell location.

Share this post


Link to post
Share on other sites

yay.gif Thanks Mate that worked a treat.

I am really happy to see that DAC can run with no addons at all thats greatstuff.

I assume then that if you just have the editor update then you can still have the camps as normal.

Mort.

Share this post


Link to post
Share on other sites
Quote[/b] ]When placing down manual waypoints, if I need only manual waypoints to be used do I put 0,0 in the waypoint element places in the arrays?

No, you must give exactly the number of the user-defined waypoints there.

If you have, for example, 10 user-defined waypoints, and in the Array you give only 6 waypoints,

then only 6 of 10 user-defined waypoints are used.

If you put down 15 in the Array, 10 user-defined waypoints are stored first, and then

in addition, another 5 by random generated waypoints.

Aah, now that you mention it I do seem to remember something about that in the readme smile_o.gif but you know what it's like, when you're looking for it, you cannot find it biggrin_o.gif

Thanks for answering in good cheer though wink_o.gifsmile_o.gif

Quote[/b] ]If I have a zone within a zone, how does DAC decide that a logic unit's waypoints belong to any one zone?

This state is really a problem. However, I have already compiled a solution wink_o.gif

Great news smile_o.gif I look forward to it.

Share this post


Link to post
Share on other sites

ok having looked at Dac and reading the forum i thought i would try to get it to work without any add on's.

I get the following message

See link

A picture

Share this post


Link to post
Share on other sites

Hello Morticus,

please, post a picture of your zone, namely as follows:

triggervq9.jpg

thx smile_o.gif

Silola

Share this post


Link to post
Share on other sites

yay.gif I sorted it it was a mistake i made. just have to be very carfull with it all smile_o.gif

One thing i would like to ask though is at the start all the waypoints are created. FAB, but when it creates the units just before it tell me the zone have been deactivated it causes a slow down for a few second.

Is there any way I can add page to cover this 20 secons or so for generating the units etc so that people do not see the inital slow down.

eg. May be a blank page if requested that just says please wait unit creation in progress ?

Also another thing i have noticed i have asked for a base config of 11 what i created so not to use addons and it seems to create a base with RACS in and M119's and i def asked it for D30's

Config Below:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">case 11:

{

_campBasic = ["FlagCarrierNorth",["Fire",10,5,0],["CampEast",10,-5,0],["Logic",25,0,45],0];

_campAmmo = [["AmmoBoxWest",16,10,0],["WeaponBoxWest",16,5,0],["SpecialBoxWest",16,0,0]];

_campStatic = [["D30",0,18,0,"Soldiereb"],["D30",32,18,0,"Soldiereb"],["D30",32,-20,180,"Soldiereb"],["D30",0,-20,180,"Soldiereb"]];

_campAddUnit = ["Soldiereb","Soldiereb","Soldiereb"];

_campUserObj = [];

_campRandomObj = [];

_campWall = ["FenceWood",[-3,25],[40,50,1],[8,8,8,8],[0,0.1],[0,90]];

_campObjInit = [[],[],[],[],[],[],[]];

and the call for the DAC is as follows:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">["z2",[2,1,0,1500,500],[20,4,100,35],[3,2,50,30],[3,2,50,50],[2,2,50,11,100,12],[0,0,0,8,0]] exec "DAC\Scripts\DAC_init_Zone.sqs"

Share this post


Link to post
Share on other sites

yay.gif I sorted it it was a mistake i made. just have to be very carfull with it all smile_o.gif

One thing i would like to ask though is at the start all the waypoints are created. FAB, but when it creates the units just before it tell me the zone have been deactivated it causes a slow down for a few second.

Is there any way I can add page to cover this 20 secons or so for generating the units etc so that people do not see the inital slow down.

eg.  May be a blank page if requested that just says please wait unit creation in progress ?

Also another thing i have noticed i have asked for a base config of 11 what i created so not to use addons and it seems to create a base with RACS in and M119's and i def asked it for D30's

Config Below:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">case 11:

{

_campBasic     = ["FlagCarrierNorth",["Fire",10,5,0],["CampEast",10,-5,0],["Logic",25,0,45],0];

_campAmmo      = [["AmmoBoxWest",16,10,0],["WeaponBoxWest",16,5,0],["SpecialBoxWest",16,0,0]];

_campStatic    = [["D30",0,18,0,"Soldiereb"],["D30",32,18,0,"Soldiereb"],["D30",32,-20,180,"Soldiereb"],["D30",0,-20,180,"Soldiereb"]];

_campAddUnit   = ["Soldiereb","Soldiereb","Soldiereb"];

_campUserObj   = [];

_campRandomObj = [];

_campWall      = ["FenceWood",[-3,25],[40,50,1],[8,8,8,8],[0,0.1],[0,90]];

_campObjInit   = [[],[],[],[],[],[],[]];

and the call for the DAC is as follows:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">["z2",[2,1,0,1500,500],[20,4,100,35],[3,2,50,30],[3,2,50,50],[2,2,50,11,100,12],[0,0,0,8,0]] exec "DAC\Scripts\DAC_init_Zone.sqs"

Any Ideas huh.gif? help.gifhelp.gif

Share this post


Link to post
Share on other sites

Hi Morticus,

Your script call is not right:

["z2",[2,1,0,1500,500],[20,4,100,35],[3,2,50,30],[3,2,50,50],[2,2,50,11,100,12],

[0,0,0,8,0]] exec "DAC\Scripts\DAC_init_Zone.sqs

Here you may give only 0,1 or 2.

The value of the config number has to go there:

["z2",[2,1,0,1500,500],[20,4,100,35],[3,2,50,30],[3,2,50,50],[2,2,50,0,100,12],[

0,0,0,11,0]] exec "DAC\Scripts\DAC_init_Zone.sqs

Your script call has loaded the config number 8.

Silola

Share this post


Link to post
Share on other sites

No !

0 = In the camp infantry and vehicles are generated.

1 = In the camp only infantry is generated.

2 = In the camp only vehicles are generated.

See also Readme page 14 wink_o.gif

Greeting

Silola

Share this post


Link to post
Share on other sites

I am currently trying the new DAC2 features...

This is simply incredible ! I really can't understand how you found the time and resources to develop this. It works like a charm and all features are really excellent.

Thank you for this masterpiece ! I would have liked to see something similar integrated in the original game...

Malick

Share this post


Link to post
Share on other sites

Oh wow!

Only just found out about this!

I'll try it out tonight! yay.gif

Share this post


Link to post
Share on other sites

Is it possible to use DAC with non official units (to generate addons units?)

I guess not seeing the pdf when you generate by sides and types?

Share this post


Link to post
Share on other sites
Is it possible to use DAC with non official units (to generate addons units?)

I guess not seeing the pdf when you generate by sides and types?

Yes, check the pdf, the part about unit configs.

Share this post


Link to post
Share on other sites

banghead.gif I need a little help.

I know i can place a blank screen with a word or fraze in it say "generating world" type text and and i need the DAC_Basic_Value == 1 before moving off this screen.

But I having a brain block how the hell do i do this ?

when i try the game loads, starts and DAC Generates then the screen flashes on and then the game continues but DAC not completed.

I think i going mad sad_o.gif

Some one just point me in correct direction.

Mort.

Share this post


Link to post
Share on other sites

@Morticus:

please try this init.sqf

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

titleText ["Please wait, Mission is generated . . .", "BLACK OUT",-1];

sleep 2;

execVM "DAC\DAC_Config_Creator.sqf";

sleep 5;

waituntil{DAC_Basic_Value > 0};

sleep 3;

titleText ["", "BLACK IN",2];

Greeting

Silola

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  

×