Jump to content
Sign in to follow this  
silola

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

Recommended Posts

Hi

Having found some time to update a dac based mission i've been working on

i'm having problems getting custom user defined WP zones to work!

with markers enabled when the zone is generated it's still creating random wp instead of using my custom wp's.

strange thing is when i copy a custom wp zone from the example missions provided with dac

(copied z2 & it's logic from example mission #D_17_dac_other_features)

and paste into my mission and added the 10 wp orig z2 had.

that copied zone will work as expected even though settings for both zones are the same.

this is happening with all types of groups i.e setdir 1-4 inf,veh,armour,heli

setdir 5...camps are working fine btw

here are my zone script calls

fun=["copiedzone",[1,0,0],[],[],[1,1,10,10],[],[1,1,1,1]] spawn DAC_Zone

fun=["myzone",[2,0,0],[],[],[1,1,10,10],[],[1,1,1,1]] spawn DAC_Zone

Both zones have gamelogics with setdir 3 and 10 wp each

as you can see both are identical but for some reason when generated

myzone will be filled with randomly generated wp's but copiedzone behaves as expected and only uses

the 10 wp's defined by the gamelogic

if you set dac_markers = 10 you can see when they are generated that myzone is filled with solid filled circle

wp markers and are not in the places expected defined by the gamelogic where copiedzone wp markers are'nt filled circles and are in the places expected defined by the gamelogic.

Same thing is happening when i try to make inf,wheeled & heli zones with user defined wp's

i have to actualy copy zones from the example missions and paste them into my mission and edit them

to my liking to get them to behave as expected.

Just cant get my head around why when i try and create my own they never work!

here is a small sample mission for you to look at

http://www.megaupload.com/?d=OJT02874

sorry for the megashares link but my ftp is down atm!

BiGGiBs

Edited by BiGGiBs

Share this post


Link to post
Share on other sites

Hey S.

How is the script pack coming along? ;)

Share this post


Link to post
Share on other sites

... maybe next week ;)

---------- Post added at 06:18 PM ---------- Previous post was at 06:11 PM ----------

Hi :)

BiGGiBs, your zone "myzone" has no activation: activation = none

You must set it to: activation = logic ... that's all :)

Greeting

Silola

---------- Post added at 06:31 PM ---------- Previous post was at 06:18 PM ----------

@andersson:

A question about all this; when a camp zone is respawning to a defined zone and the unit that dies are in another waypoint zone, will that affect the respawn? Do the waypoint zone need to be defined in the "camp support zones" aswell, ie the unit that dies belong to the waypoint zone and not the original zone?

No, you don't need to defined the wp-zones.

Only the group is relevant when a respawn is triggered, no matter where this group had waypoints.

About your problem:

Is it possible to send me a addon-free test mission, with the same configuration as in your real mission?

Silola

Share this post


Link to post
Share on other sites

Any news on the script only version? :)

Share this post


Link to post
Share on other sites

Read two posts above yours, then read the first line of Silolas post directly above yours. :)

Share this post


Link to post
Share on other sites
Read two posts above yours, then read the first line of Silolas post directly above yours. :)

Doh ...what happens at night

Share this post


Link to post
Share on other sites

Gday Silola,

Hoping for a little assistance, struggling right now (read failing completely) to get camps to create.

I've got 4 zones, working for creating Takistani Militia (infantry, wheeled vehicles and waypoints). However no matter what I try (most likely due to my lack of scripting knowledge) I'm unable to get camps to create, thus also unable to have respawning enemies.

I've uploaded a zipped up copy of my mission, with the custom unit sqf's etc. If you can take a look and get back to me, I'd be much obliged, spent around 48 hours over the past week or so trying to get it running. Oh yes, the civilian player class is to test.

When I try to test the mission, I get error zero divisor and the camps fail to create. These errors seem to be coming from DAC_Source which I haven't touched.

Regards,

Austin.

MISSION LINK: http://www.filefront.com/17135184/OpZargaClear.Zargabad.zip

Edited by Austin15thMEU
Forgot information..

Share this post


Link to post
Share on other sites
Gday Silola,

Hoping for a little assistance, struggling right now (read failing completely) to get camps to create.

I've got 4 zones, working for creating Takistani Militia (infantry, wheeled vehicles and waypoints). However no matter what I try (most likely due to my lack of scripting knowledge) I'm unable to get camps to create, thus also unable to have respawning enemies.

I've uploaded a zipped up copy of my mission, with the custom unit sqf's etc. If you can take a look and get back to me, I'd be much obliged, spent around 48 hours over the past week or so trying to get it running. Oh yes, the civilian player class is to test.

When I try to test the mission, I get error zero divisor and the camps fail to create. These errors seem to be coming from DAC_Source which I haven't touched.

Regards,

Austin.

MISSION LINK: http://www.filefront.com/17135184/OpZargaClear.Zargabad.zip

Hi :)

I have changed your mission a little bit ;) :

- Each zone is reduced to one camp, because there is not enough space available, to create 2 camps for each zone.

- The zones have been enlarged slightly to allow more space is available for the camps

- Reduced the count of waypoints for units so that the initialization phase is shortened

- DAC_Marker = 4 ... to see what happens ;) (delete this entry to deactivate the DAC_Marker again)

Last but not least, I have adjusted the DAC_Config_Camp.sqf:

_campBasic = ["FlagCarrierTKMilitia_EP1",["Land_Fire_burning",8,5,0],[],["Logic",10,15,0],0];

This array must not be empty.

_campAmmo = [["GunrackTK_EP1",10,2,0],[],[],[]];

The empty arrays must be removed.

_campUserObj = [[],["ACamp_EP1",17,35,0],["ACamp_EP1",17,20,0],["........

Just as this empty array at the beginning .... must be deleted.

The corrected case 0 from your DAC_Config_Camp looks like this now:

_campBasic     = ["FlagCarrierTKMilitia_EP1",["Land_Fire_burning",8,5,0],["ACamp_EP1",5,0,180],["Logic",10,15,0],0];
_campAmmo      = [["GunrackTK_EP1",10,2,0]];
_campStatic    = [["DSHkM_Mini_TriPod_TK_INS_EP1",-7,25,0,"TK_INS_Soldier_2_EP1"],["DSHkM_Mini_TriPod_TK_INS_EP1",25,25,0,"TK_INS_Soldier_2_EP1"],["DSHkM_Mini_TriPod_TK_INS_EP1",25,-20,180,"TK_INS_Soldier_2_EP1"],["DSHkM_Mini_TriPod_TK_INS_EP1",-7,-20,180,"TK_INS_Soldier_2_EP1"]];
_campAddUnit   = [];
_campUserObj   = [["ACamp_EP1",10,5,0],["ACamp_EP1",15,5,0],["ACamp_EP1",20,5,0],["AmmoCrates_NoInteractive_Small",20,10,0],["AmmoCrates_NoInteractive_Small",20,12,0],["AmmoCrates_NoInteractive_Small",20,15,0]];
_campRandomObj = [];
_campWall      = ["Land_BagFenceLong",[-10,30],[40,56,0],[5,5,5,5],[1,0.2],[0,0]];
_campObjInit   = [[],[],[],[],[],[],[]];

And the corrected mission can be found here:

http://www.file-upload.net/download-2689649/OpZargaClear.rar.html

Greeting

Silola

Share this post


Link to post
Share on other sites

My thanks Silola, I never would have worked out the issues without your assistance.

Regards,

Austin.

Share this post


Link to post
Share on other sites

Silola

Thanks for pointing out my mistake..aaargh

Two words definatly spring to mind here...face palm :D

Weird thing is that the trigger for that zone was originaly just a copy paste

from another zone trigger in my mission and the activation was set correctly

for that trigger,must have changed it without realizing during my frenzied editing session.

DAC3 is realy well polished,the example missions and PDF doncumentation are very helpfull and extremley well presented.

Anyway thanks again from me and all here for your help and support,great work!

I will be keeping my eye on this thread for the script only version.

BiGGiBs

Share this post


Link to post
Share on other sites

Me <----- biggest douchebag ever

Sorry for my noobness. Found my mistake :icon_redface:

Edited by Perfect Dark

Share this post


Link to post
Share on other sites

Hi, Siola and all. I'm new to this thread and I would like to ask some stupid questions if any of you guys don't mind.

Simply said, I'm just curious about "What the hek is DAC?".

Yes, I've read the first post and read all the feature list that was there but I still can't get an idea of what exactly this addon will do in a mission.

I know a little about what UPSMON does and its functions. So if any of you guys would recommend using DAC, what is great about DAC compared to/over UPSMON? In other word, whats the difference, exactly?

Another question which is a little related to the first question, is whats the difference between the addon version and script-only version(which is said to be released soon)?

I'm predicting addon version will offer additional features that are not available in the script-only version, but what are those features? What I want to decide here is that if those addons are worth the effort for me to ask all my clan members to install it to their ArmA2.

Lastly I would like to explain the reason I'm asking these questions is that those feature list on the first post are all Greek to me.

I don't make missions, I don't know anything about scripts, so you might think "Why are you interested in DAC if you are not going to use it?", but I have to decide which addons should be used for my communities server.

Therefore, you might want to rewrite those feature lists so dumbasses like me might get an idea about what it does. :)

hmm.. maybe not. I'm just dumb :o

Share this post


Link to post
Share on other sites

@TOTAL22

Be clever and try DAC out? Sometimes its better to see it with your own eyes instead of listening/reading only. ;)

Share this post


Link to post
Share on other sites

If I had to describe it, I would say it is a extended mission building tool. I would rank it on the same place as mandos missile suite.

To be more detailed: You can easily populate a whole island with 2 complete armies fighting each other just with 2 simple triggers...

Furthermore you can change nearly everything from behaviour, respawns, patrol areas, unit compositions, up to artillery support and even more!

Fully customizable is the keyword! (60 pages of handbook is the result :D)

You can´t imagine how far reaching this whole thing is, unitl you´ve worked into it yourself. ;)

As for the script-only version: I´m pretty sure it will have the same features as the .pbo version but a 100% sure answer can only be given by Silola.

Too bad that DAC isn´t far spread so far :( (at least in terms of mp missions)

Share this post


Link to post
Share on other sites

@TOTAL, just download it and play the example missions, look at them in the editor. I dont think the instructions could be explained any more easier.

Siola explains very well in the example missions whats going on, so yeah... just download it and try it out

Share this post


Link to post
Share on other sites

Siola

Not sure but I think I found a bug. Try and spawn armor (tank classes) using the extern.cfg. Say you want 5 groups with 1 in each group. You may get 5 one time you may get none or you may get 3. It varies every time. Usually you will get 0.

It just seems to be the tank types. The infantry, wheeled and air all spawn correctly every time.

I have tested this in ARMA2 and ARMA2 + OA same thing in both games. This only happens with using the extern.cfg. If you use the intern.cfg everything works fine.

I am using your test mission to do these test so should be easy to reproduce it.

Nomad

edit: Forgot, one other thing I noticed. In mp games when a wheeled vehicle spawns like a UAZ with a mg. There will be a driver but no gunner. I am not sure if the gunner got out and went for coffee or just never spawned.

Edited by Nomadd

Share this post


Link to post
Share on other sites
Not sure but I think I found a bug. Try and spawn armor (tank classes) using the extern.cfg. Say you want 5 groups with 1 in each group. You may get 5 one time you may get none or you may get 3. It varies every time. Usually you will get 0.

Noticed that too several times while using the script-version. It only happens when tanks are set to "1" in each group. For me usually no tanks are spawning. I noticed that if i play it in the editor they spawn more often - but in mp they never spawn when set to "1". Would be great if you can fix this. By the way: Grüße, Silola!!

Edited by MadMike[Brig2010]

Share this post


Link to post
Share on other sites

Hi :)

I can't confirm this bug :cool:

I've tryed the demo mission #E_33_DAC_extern_cfg.utes.

I have activated the DAC marker to see what DAC is generated: DAC_Marker = 4

The script call in the zone is entered as follows:

fun=["z1",[1,0,0],[10,3,50,8],[],[3,1,20,8],[],[1,1,1,1]] spawn DAC_Zone

Each time I start the mission, allways 3 vehicles will be generated.

If I change the count up to 5 groups (each with 1 vehicle) DAC will generate exactly this 5 vehicles.

Please note that the DAC generates different markers (type and size), depending on which vehicles were generated.

So some vehicle markes looks a little bit like infantry marker.

You can make the following small test with this mission, to get the info about all generated vehicles during the init phase:

Open the file \DAC\DAC_Config_Events.sqf

Search for the first "_Events_Unit_T" entry and insert this code into its first array: "player sidechat format[""%1"",typeof _vehc]"

Now after this small action, the changed part of the file looks like this:

_Events_Unit_T =	[
			["player sidechat format[""%1"",typeof _vehc]"],
			[],
			[]
			[]
		];

And the last step: activate this event for the zone inside the script call:

fun=["z1",[1,0,1],[10,3,50,8],[],[3,1,20,8],[],[1,1,1,1]] spawn DAC_Zone

From now on, you will get the info about each generated vehicle during the DAC init,

and you can check if DAC is generated the right vehicle count.

Greeting

Silola

Share this post


Link to post
Share on other sites

Hi Silola a couple of questions for you.

Im using the following script to create zones in game. As you can see the first zone is a camp.

waituntil{time > 3};

_pos7 = getMarkerPos "Marker7";
_possniper = getMarkerPos "MarkerSniper";
waituntil{time > 4};
_values = ["z7",[2,0,0],[],[],[],[1,2,50,0,100,10,[z2]],[0,11,0,0]];
[(_pos7),100,100,1,0,_values] call DAC_fNewZone;
hint "Base is launched";
waituntil{DAC_NewZone == 0};

_values = ["z11",[11,0,0],[1,2,15,15],[],[],[],[0,11,0,0]];
[(_possniper),1000,500,1,0,_values] call DAC_fNewZone;
hint "Markersniper is launched";
waituntil{DAC_NewZone == 0};

_list = "list XRay";
waituntil{(({isPlayer _x} count (call compile _list)) > 0)};
_pos1 = getMarkerPos "Marker1";
_pos2 = getMarkerPos "Marker2";
//_pos3 = getMarkerPos "Marker3";


_values = ["z1",[1,0,0],[5,2,5,5],[],[],[],[0,11,0,0]];
[(_pos1),125,125,0,0,_values] call DAC_fNewZone;
hint "Marker1 is launched";
waituntil{DAC_NewZone == 0};

_values = ["z2",[2,0,0],[5,2,5,5],[],[],[],[0,11,0,0]];
[(_pos2),150,150,0,0,_values] call DAC_fNewZone;
hint "Marker2 is launched";
waituntil{DAC_NewZone == 0};

Now what Im trying to do is get the camp to support only Z2 but what happens is it supports both 1 and 2 for some reason. How do I prevent it from supporting zone 1.

Also when zones are created during the creation I notice the system creates waypoints way off the map (Im using DAC Marker=5 so I watch zone creation). When the waypoint creation are completed those distant markers go away and the groups connect to the local waypoints in zone. What happens though during creation is all the groups start to head out to the distant markers, then turn around back to the zone when creation is completed. Any way to prevent this? Thanks for the info.

Share this post


Link to post
Share on other sites

Maybe your campzone (z7) doens´t recognize "z2" as it is initialised before z2 even exits and therefor acts as a global respawncamp?

The thing with units moving to far off markers is something I want to know too :rolleyes:

Share this post


Link to post
Share on other sites
Hi :)

I can't confirm this bug :cool:

I've tryed the demo mission #E_33_DAC_extern_cfg.utes.

During tests in the editor with demo mission #E_33_DAC_extern_cfg.utes i also never exerienced that no tanks are spawning. But as i mentioned before as we played a mp mission the same thing occurs. No tanks spawned in the area. After playing the mission i checked the init of the sensor of this area and it looked like this:

fun=["z4",[4,1,0],[5,3,35,8],[3,5,20,8],[3,1,20,8],[],[0,11,3,0]] spawn DAC_Zone";

One other thing: Is it possible to change something that the civilians don´t cover themselves with smokegrenades if they are near a firefight?

Share this post


Link to post
Share on other sites

LoL

while reading through the whole DAC thread, I discovered that there are already tons of OA versions of the Config_Units...

Anyway I don´t want all of this work to be in vain. Therefor here it is:

Read before using:

1. Please notice that I have switched the case numbers to a (for my taste) more logical sequence. You MUST take care when using this config in an already existing mission!!!

2. The whole config is clean from duplications, so that all units have the same percantage of being spawned!

If you want to spawn specific units/vehicles with a higher percantage, you have to copy and readd the entry a few times.

3. Added all available sorts of support vehicles e.g Med-BMP, Fuel/Ammo/Rep-Trucks...

4. Added many missing entrys from vanilla ArmA2 -> Compare the new civilian list to the old on ;)

5. I have added a dummy line called "_Unit_Pool_U = [];". The "U" stands for "Unused" and is just there to put in entrys you don´t want to spawn, but not delete either (so that you don´t have to search the entry throughout the whole web to add it again). This line has no effect on the DAC-system at all.

6. Transfered ghillie snipers to "unused" to prevent odd looking infantry group compositions.

7. Added all available planes to "unused"

8. Also created case-entrys for Czech, German and UN units.

9. Each entry is tested and is fully working without any errors -> Plug, Play and have Fun! ;)

//////////////////////////////
//    Dynamic-AI-Creator    //
//    Version 2.1 - 2009    //
//--------------------------//
//    DAC_Config_Units      //
//--------------------------//
//    Script by Silola      //
//    silola@freenet.de     //
//////////////////////////////

private [
		"_TypNumber","_TempArray",
		"_Unit_Pool_S","_Unit_Pool_V","_Unit_Pool_T","_Unit_Pool_A"
	];

		_TypNumber = _this select 0;_TempArray = [];

switch (_TypNumber) do
{
//--------------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------(RUSSIAN ARMY)------------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 0:
{
	_Unit_Pool_S = 	[
						"RU_Soldier_Crew","RU_Soldier_Pilot","RU_Soldier_Officer","RU_Commander",
						"RU_Soldier","RU_Soldier2","RU_Soldier_GL","RU_Soldier_SL","RU_Soldier_MG",
						"RU_Soldier_Medic","RU_Soldier_AR","RU_Soldier_AT","RU_Soldier_HAT",
						"RU_Soldier_LAT","RU_Soldier_AA","RU_Soldier_TL","RU_Soldier_Marksman",	

						"MVD_Soldier_TL","MVD_Soldier_MG","MVD_Soldier","MVD_Soldier_GL",
						"MVD_Soldier_Marksman","MVD_Soldier_Sniper","MVD_Soldier_AT",

						"RUS_Soldier1","RUS_Soldier2","RUS_Soldier3","RUS_Soldier_GL","RUS_Commander","RUS_Soldier_TL"
			];

	_Unit_Pool_V = 	[	"UAZ_RU","UAZMG","UAZ_AGS30_RU","Kamaz","KamazOpen","KamazRepair","KamazReammo","KamazRefuel",
				"GAZ_Vodnik","GAZ_Vodnik_HMG","GAZ_Vodnik_MedEvac","BTR90","BTR90_HQ"
			];
	_Unit_Pool_T = 	[	"BMP3","T72_RU","T90","2S6M_Tunguska"
			];
	_Unit_Pool_A = 	[	"Mi17_rockets_RU","Mi17_medevac_RU","Ka52","Ka52Black","Mi24_V","Mi24_P"
			];
	_Unit_Pool_U =  [  	"RU_Soldier_Light","RU_Soldier_Spotter","Su34","Su39","RU_Soldier_Sniper","RU_Soldier_SniperH","RUS_Soldier_Marksman","GRAD_RU"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//--------------------------------------------(US MARINE CORPS WOODLAND CAMO)-----------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 1:
{
	_Unit_Pool_S = 	[
						"USMC_Soldier_Crew","USMC_Soldier_Pilot","USMC_Soldier_SL","USMC_Soldier_HAT",
						"USMC_Soldier_AR","USMC_Soldier_Medic","USMC_Soldier_MG","USMC_Soldier_GL",
						"USMC_Soldier_AA","USMC_Soldier_AT","USMC_Soldier_LAT","USMC_SoldierS",
						"USMC_Soldier","USMC_Soldier2","USMC_SoldierS_Engineer","USMC_SoldierM_Marksman",
						"USMC_Soldier_TL","USMC_Soldier_MG",

						"FR_Commander","FR_TL","FR_AC","FR_GL","FR_AR","FR_R","FR_Corpsman",
						"FR_Marksman","FR_Sapper","FR_Assault_R","FR_Assault_GL"
			];
	_Unit_Pool_V = 	[	"HMMWV","HMMWV_M2","MTVR","HMMWV_MK19","HMMWV_Armored","MTVR","LAV25","LAV25_HQ","HMMWV_TOW",
				"HMMWV_Avenger","HMMWV_Ambulance","MtvrReammo","MtvrRepair","MtvrRefuel"
			];
	_Unit_Pool_T =	[	"M1A1","M1A2_TUSK_MG","AAV"
			];
	_Unit_Pool_A = 	[	"AH1Z","UH1Y","MH60S","AH64D"
			];
	_Unit_Pool_U =  [  	"USMC_Soldier_Officer","USMC_SoldierS_Sniper","USMC_SoldierS_SniperH","USMC_SoldierS_Spotter",
				"USMC_Soldier_Light","A10","AV8B2","AV8B","C130J","F35B","MQ9PredatorB","MV22","MLRS","M1030",
				"MMT_USMC","TowingTractor","FR_Light"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------(CHERNARUSSIAN DEFENCE FORCE)------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 2:
{
	_Unit_Pool_S = 	[
						"CDF_Soldier_Crew","CDF_Soldier_Pilot","CDF_Soldier_Officer","CDF_Commander",
						"CDF_Soldier_SL","CDF_Soldier_GL","CDF_Soldier_AR","CDF_Soldier_Strela",
						"CDF_Soldier_MG","CDF_Soldier_Militia","CDF_Soldier_RPG","CDF_Soldier_Engineer",
						"CDF_Soldier_Medic","CDF_Soldier","CDF_Soldier_TL"
			];
	_Unit_Pool_V = 	[	"UAZ_CDF","UAZ_AGS30_CDF","UAZ_MG_CDF","Ural_CDF","UralOpen_CDF","UralReammo_CDF","UralRepair_CDF",
				"UralRefuel_CDF","Ural_ZU23_CDF","BRDM2_CDF","BRDM2_ATGM_CDF"
			];
	_Unit_Pool_T = 	[	"BMP2_CDF","BMP2_HQ_CDF","T72_CDF","ZSU_CDF","BMP2_Ambul_CDF"
			];
	_Unit_Pool_A = 	[	"Mi17_CDF","Mi24_D","Mi17_medevac_CDF"
			];
	_Unit_Pool_U =  [  	"CDF_Soldier_Spotter","CDF_Soldier_Light","CDF_Soldier_Sniper","CDF_Soldier_Marksman","Su25_CDF","GRAD_CDF"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//--------------------------------------------------(CHEDAKI INSURGENTS)----------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 3:
{
	_Unit_Pool_S = 	[
						"Ins_Soldier_Crew","Ins_Soldier_Pilot","Ins_Soldier_GL","Ins_Commander","Ins_Soldier_AR",
						"Ins_Soldier_AA","Ins_Soldier_MG","Ins_Soldier_CO","Ins_Soldier_AT","Ins_Soldier_Sab",
						"Ins_Soldier_Medic","Ins_Soldier_Sapper","Ins_Soldier_1","Ins_Soldier_2","Ins_Soldier_Sniper",
						"Ins_Villager3","Ins_Villager4","Ins_Worker2","Ins_Woodlander3","Ins_Woodlander1","Ins_Woodlander2"
			];
	_Unit_Pool_V = 	[	"Offroad_DSHKM_INS","TT650_Ins","Pickup_PK_INS","UAZ_INS","UAZ_AGS30_INS","UAZ_SPG9_INS","UAZ_MG_INS","Ural_INS","UralOpen_INS",
				"Ural_ZU23_INS","UralReammo_INS","UralRepair_INS","UralRefuel_INS","BRDM2_INS","BRDM2_ATGM_INS"
			];
	_Unit_Pool_T = 	[	"BMP2_INS","BMP2_HQ_INS","T72_INS","ZSU_INS","BMP2_Ambul_INS"
			];
	_Unit_Pool_A = 	[	"Mi17_Ins","Mi17_medevac_Ins"];
	_Unit_Pool_U =  [  	"Ins_Bardak","Ins_Lopotev","Su25_Ins","GRAD_INS"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//-----------------------------------------------------(NAPA GUERILLAS)-----------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 4:
{
	_Unit_Pool_S = 	[
						"GUE_Soldier_Crew","GUE_Soldier_Pilot","GUE_Soldier_GL","GUE_Soldier_Sniper",
						"GUE_Soldier_CO","GUE_Soldier_AR","GUE_Soldier_MG","GUE_Soldier_Sab",
						"GUE_Soldier_Medic","GUE_Soldier_3","GUE_Soldier_2","GUE_Soldier_1",
						"GUE_Soldier_AT","GUE_Soldier_AA","GUE_Soldier_Scout","GUE_Commander",
						"GUE_Villager3","GUE_Villager4","GUE_Worker2","GUE_Woodlander1",
						"GUE_Woodlander2","GUE_Woodlander3"
			];
	_Unit_Pool_V = 	[	"Offroad_DSHKM_Gue","Offroad_SPG9_Gue","TT650_Gue","Pickup_PK_GUE","V3S_Gue","Ural_ZU23_Gue",
				"BRDM2_Gue","BRDM2_HQ_Gue"
			];
	_Unit_Pool_T = 	[	"BMP2_Gue","T34","T72_Gue"
			];
	_Unit_Pool_A = 	[];
	_Unit_Pool_U =  [];
};
//--------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------(CIVILIANS CHERNORUSSIA)-----------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 5:
{
	_Unit_Pool_S = 	[
						"Villager1","Pilot","Worker1","Worker2","Worker3","Worker4","Citizen1",
						"Citizen2","Citizen3","Citizen4","Villager2","Villager3","Villager4",
						"Functionary1","Functionary2","Assistant","Profiteer1","Profiteer2",
						"Profiteer3","Profiteer4","SchoolTeacher","Policeman","Priest","Rocker1",
						"Rocker2","Rocker3","Rocker1","Woodlander1","Woodlander2","Woodlander3",
						"Woodlander4","WorkWoman1","WorkWoman2","WorkWoman3","WorkWoman4",
						"WorkWoman5","Farmwife1","Farmwife2","Farmwife3","Farmwife4","Farmwife5",
						"Madam1","Madam2","Madam3","Madam4","Madam5","Hooker1","Hooker2","Hooker3",
						"Hooker4","Hooker5","HouseWife1","HouseWife2","HouseWife3","HouseWife4",
						"HouseWife5","Damsel1","Damsel2","Damsel3","Damsel4","Damsel5","Secretary1",
						"Secretary2","Secretary3","Secretary4","Secretary5","Sportswoman1",
						"Sportswoman2","Sportswoman3","Sportswoman4","Sportswoman5"
			];
	_Unit_Pool_V = 	[	"car_hatchback","SkodaBlue","SkodaGreen","SkodaRed","Skoda","Ikarus","VWGolf",
				"hilux1_civil_1_open","hilux1_civil_2_covered","hilux1_civil_3_open","car_sedan",
				"TT650_Civ","MMT_Civ","datsun1_civil_2_covered","datsun1_civil_3_open","datsun1_civil_1_open",
				"V3S_Civ","Tractor","UralCivil2","UralCivil","LadaLM","Lada2","Lada1"
			];
	_Unit_Pool_T = 	[];
	_Unit_Pool_A = 	[	"Mi17_Civilian"
			];
	_Unit_Pool_U =  [  	"Doctor"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------(US ARMY DESERT CAMO)-----------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 6:
{
	_Unit_Pool_S = 	[
						"US_Soldier_Crew_EP1","US_Soldier_Pilot_EP1","US_Soldier_AR_EP1",
						"US_Soldier_AA_EP1","US_Soldier_GL_EP1","US_Soldier_Engineer_EP1",
						"US_Soldier_MG_EP1","US_Soldier_Officer_EP1","US_Soldier_HAT_EP1",
						"US_Soldier_AT_EP1","US_Soldier_Medic_EP1","US_Soldier_EP1",
						"US_Soldier_LAT_EP1","US_Soldier_B_EP1","US_Soldier_TL_EP1",
						"US_Soldier_SL_EP1","US_Soldier_AAR_EP1","US_Soldier_AMG_EP1",
						"US_Soldier_AAT_EP1","US_Soldier_AHAT_EP1",

						"US_Delta_Force_AR_EP1","US_Delta_Force_Air_Controller_EP1","US_Delta_Force_MG_EP1",
						"US_Delta_Force_EP1","US_Delta_Force_Assault_EP1","US_Delta_Force_M14_EP1",
						"US_Delta_Force_Night_EP1","US_Delta_Force_SD_EP1","US_Delta_Force_Medic_EP1",
						"US_Delta_Force_Marksman_EP1","US_Delta_Force_TL_EP1"

			];
	_Unit_Pool_V = 	[	"HMMWV_DES_EP1","HMMWV_MK19_DES_EP1","HMMWV_TOW_DES_EP1","HMMWV_Avenger_DES_EP1",
				"HMMWV_M998_crows_M2_DES_EP1","HMMWV_M998_crows_MK19_DES_EP1","HMMWV_M1151_M2_DES_EP1",
				"HMMWV_M998A2_SOV_DES_EP1","HMMWV_Terminal_EP1","HMMWV_M1035_DES_EP1",
				"MTVR_DES_EP1","M1130_CV_EP1","M1129_MC_EP1","M1128_MGS_EP1","M1135_ATGMV_EP1",
				"M1126_ICV_M2_EP1","M1126_ICV_mk19_EP1","MtvrSupply_DES_EP1","HMMWV_Ambulance_DES_EP1",
				"MtvrReammo_DES_EP1","MtvrRefuel_DES_EP1","MtvrRepair_DES_EP1","MtvrSalvage_DES_EP1","M1133_MEV_EP1"
			];
	_Unit_Pool_T = 	[	"M1A1_US_DES_EP1","M1A2_US_TUSK_MG_EP1","M2A2_EP1","M2A3_EP1","M6_EP1"
			];
	_Unit_Pool_A = 	[	"AH64D_EP1","AH6J_EP1","AH6X_EP1","CH_47F_EP1","MH6J_EP1","UH60M_EP1","UH60M_MEV_EP1"
			];
	_Unit_Pool_U =  [  	"US_Pilot_Light_EP1","US_Soldier_Marksman_EP1","US_Soldier_Sniper_EP1",
				"US_Soldier_SniperH_EP1","US_Soldier_Light_EP1","US_Soldier_Spotter_EP1",
				"A10_US_EP1","C130J_US_EP1","MQ9PredatorB_US_EP1","MLRS_DES_EP1","ATV_US_EP1",
				"M1030_US_DES_EP1"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------(TAKISTANI ARMY)-------------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 7:
{
	_Unit_Pool_S = 	[
						"TK_Soldier_Crew_EP1","TK_Soldier_Pilot_EP1","TK_Soldier_AR_EP1",
						"TK_Soldier_AA_EP1","TK_Soldier_GL_EP1","TK_Soldier_Engineer_EP1",
						"TK_Commander_EP1","TK_Soldier_MG_EP1","TK_Soldier_Officer_EP1",
						"TK_Soldier_HAT_EP1","TK_Soldier_Medic_EP1","TK_Soldier_EP1",
						"TK_Soldier_LAT_EP1","TK_Soldier_AT_EP1","TK_Soldier_B_EP1",
						"TK_Soldier_Night_1_EP1","TK_Soldier_Night_2_EP1","TK_Soldier_TWS_EP1",
						"TK_Soldier_SL_EP1","TK_Soldier_AMG_EP1","TK_Soldier_AAT_EP1",

						"TK_Special_Forces_MG_EP1","TK_Special_Forces_EP1","TK_Special_Forces_TL_EP1"
			];
	_Unit_Pool_V = 	[	"LandRover_MG_TK_EP1","V3S_TK_EP1","SUV_TK_EP1","UAZ_Unarmed_TK_EP1","UAZ_AGS30_TK_EP1",
				"UAZ_MG_TK_EP1","V3S_Open_TK_EP1","Ural_ZU23_TK_EP1","UralSupply_TK_EP1","M113Ambul_TK_EP1",
				"UralSalvage_TK_EP1","UralReammo_TK_EP1","UralRepair_TK_EP1","UralRefuel_TK_EP1",
				"BRDM2_TK_EP1","BRDM2_ATGM_TK_EP1","BTR60_TK_EP1"
			];
	_Unit_Pool_T = 	[	"BMP2_TK_EP1","BMP2_HQ_TK_EP1","M113_TK_EP1","T34_TK_EP1","T55_TK_EP1","T72_TK_EP1","ZSU_TK_EP1"
			];
	_Unit_Pool_A = 	[	"Mi24_D_TK_EP1","Mi17_TK_EP1","UH1H_TK_EP1"
			];
	_Unit_Pool_U =  [  	"TK_Aziz_EP1","TK_Soldier_Sniper_EP1","TK_Soldier_SniperH_EP1","TK_Soldier_Sniper_Night_EP1",
				"TK_Soldier_Spotter_EP1","MAZ_543_SCUD_TK_EP1","GRAD_TK_EP1","TT650_TK_EP1","An2_TK_EP1",
				"L39_TK_EP1","Su25_TK_EP1"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------(TAKISTANI MILITA)-----------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 8:
{
	_Unit_Pool_S = 	[
						"TK_GUE_Soldier_EP1","TK_GUE_Soldier_2_EP1","TK_GUE_Soldier_3_EP1",
						"TK_GUE_Soldier_4_EP1","TK_GUE_Soldier_5_EP1","TK_GUE_Soldier_AR_EP1",
						"TK_GUE_Bonesetter_EP1","TK_GUE_Soldier_AA_EP1","TK_GUE_Soldier_HAT_EP1",
						"TK_GUE_Soldier_AT_EP1","TK_GUE_Soldier_AAT_EP1","TK_GUE_Soldier_Sniper_EP1",
						"TK_GUE_Soldier_MG_EP1","TK_GUE_Soldier_TL_EP1","TK_GUE_Warlord_EP1"
			];
	_Unit_Pool_V = 	[	"Offroad_DSHKM_TK_GUE_EP1","Offroad_SPG9_TK_GUE_EP1","Pickup_PK_TK_GUE_EP1","V3S_TK_GUE_EP1",
				"Ural_ZU23_TK_GUE_EP1","V3S_Supply_TK_GUE_EP1","V3S_Salvage_TK_GUE_EP1","V3S_Reammo_TK_GUE_EP1",
				"V3S_Refuel_TK_GUE_EP1","V3S_Repair_TK_GUE_EP1","BRDM2_TK_GUE_EP1","BRDM2_HQ_TK_GUE_EP1",
				"BTR40_TK_GUE_EP1","BTR40_MG_TK_GUE_EP1"
			];
	_Unit_Pool_T = 	[	"T34_TK_GUE_EP1","T55_TK_GUE_EP1"
			];
	_Unit_Pool_A = 	[	"UH1H_TK_GUE_EP1"
			];
	_Unit_Pool_U =  [];
};
//--------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------(CIVILIANS TAKISTAN)---------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 9:
{
	_Unit_Pool_S = 	[
						"TK_CIV_Worker01_EP1","TK_CIV_Worker02_EP1","TK_CIV_Takistani01_EP1",
						"TK_CIV_Takistani02_EP1","TK_CIV_Takistani03_EP1","TK_CIV_Takistani04_EP1",
						"TK_CIV_Takistani05_EP1","TK_CIV_Takistani06_EP1","TK_CIV_Woman01_EP1",
						"TK_CIV_Woman02_EP1","TK_CIV_Woman03_EP1"
			];
	_Unit_Pool_V = 	[	"Old_moto_TK_Civ_EP1","Old_bike_TK_CIV_EP1","Ikarus_TK_CIV_EP1","Lada1_TK_CIV_EP1",
				"Lada2_TK_CIV_EP1","LandRover_TK_CIV_EP1","hilux1_civil_3_open_EP1","TT650_TK_CIV_EP1",
				"S1203_TK_CIV_EP1","SUV_TK_CIV_EP1","UAZ_Unarmed_TK_CIV_EP1","Ural_TK_CIV_EP1",
				"V3S_Open_TK_CIV_EP1","Volha_1_TK_CIV_EP1","Volha_2_TK_CIV_EP1","VolhaLimo_TK_CIV_EP1",
				"S1203_ambulance_EP1"
			];
	_Unit_Pool_T = 	[];
	_Unit_Pool_A = 	[];
	_Unit_Pool_U =  [  	"An2_1_TK_CIV_EP1","An2_2_TK_CIV_EP1"];
};
//--------------------------------------------------------------------------------------------------------------------------------
//--------------------------------------------------------(CZECH ARMY DESERT CAMO)------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 10:
{
	_Unit_Pool_S = 	[
						"CZ_Soldier_Light_DES_EP1","CZ_Soldier_Pilot_EP1","CZ_Soldier_MG_DES_EP1",
						"CZ_Soldier_Office_DES_EP1","CZ_Soldier_DES_EP1","CZ_Soldier_AT_DES_EP1",
						"CZ_Soldier_B_DES_EP1","CZ_Soldier_Sniper_EP1","CZ_Soldier_SL_DES_EP1",
						"CZ_Soldier_AMG_DES_EP1","CZ_Special_Forces_GL_DES_EP1","CZ_Special_Forces_MG_DES_EP1",
						"CZ_Special_Forces_DES_EP1","CZ_Special_Forces_Scout_DES_EP1","CZ_Special_Forces_TL_DES_EP1"
			];
	_Unit_Pool_V = 	[	"ATV_CZ_EP1","HMMWV_M1151_M2_CZ_DES_EP1","LandRover_CZ_EP1","LandRover_Special_CZ_EP1",
				"HMMWV_Ambulance_CZ_DES_EP1"
			];
	_Unit_Pool_T = 	[];
	_Unit_Pool_A = 	[	"Mi171Sh_CZ_EP1","Mi171Sh_rockets_CZ_EP1"
			];
	_Unit_Pool_U =  [];
};
//--------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------(GERMAN KSK DESERT CAMO)-----------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 11:
{
	_Unit_Pool_S = 	[
						"GER_Soldier_MG_EP1","GER_Soldier_Medic_EP1","GER_Soldier_EP1",
						"GER_Soldier_TL_EP1","GER_Soldier_Scout_EP1"
			];
	_Unit_Pool_V = 	[];
	_Unit_Pool_T = 	[];
	_Unit_Pool_A = 	[];
	_Unit_Pool_U =  [];
};
//--------------------------------------------------------------------------------------------------------------------------------
//-------------------------------------------------------------(UNITED NATIONS)---------------------------------------------------
//--------------------------------------------------------------------------------------------------------------------------------
case 12:
{
	_Unit_Pool_S = 	[
						"UN_CDF_Soldier_Crew_EP1","UN_CDF_Soldier_Pilot_EP1","UN_CDF_Soldier_MG_EP1",
						"UN_CDF_Soldier_Officer_EP1","UN_CDF_Soldier_EP1","UN_CDF_Soldier_AT_EP1",
						"UN_CDF_Soldier_B_EP1","UN_CDF_Soldier_Light_EP1","UN_CDF_Soldier_SL_EP1",
						"UN_CDF_Soldier_Guard_EP1","UN_CDF_Soldier_AMG_EP1","UN_CDF_Soldier_AAT_EP1"
			];
	_Unit_Pool_V = 	[	"SUV_UN_EP1","UAZ_Unarmed_UN_EP1","Ural_UN_EP1"
			];
	_Unit_Pool_T = 	[	"BMP2_UN_EP1","M113_UN_EP1","M113Ambul_UN_EP1"
			];
	_Unit_Pool_A = 	[	"Mi17_UN_CDF_EP1"
			];
	_Unit_Pool_U =  [];
};
//--------------------------------------------------------------------------------------------------------------------------------
Default {
			if(DAC_Basic_Value != 5) then
			{
				DAC_Basic_Value = 5;publicvariable "DAC_Basic_Value";
				hintc format["DAC_Config_Units > No valid config number = %1",_TypNumber];
			};
			if(true) exitwith {};
		};
};

if(count _this == 2) then
{
_TempArray = _TempArray + [_Unit_Pool_S,_Unit_Pool_V,_Unit_Pool_T,_Unit_Pool_A];
}
else
{
_TempArray = _Unit_Pool_V + _Unit_Pool_T + _Unit_Pool_A;
};
_TempArray

Edited by MoS

Share this post


Link to post
Share on other sites
LoL

while reading through the whole DAC thread, I discovered that there are already tons of OA versions of the Config_Units...

Maybe you better place them here in the correct thread...

Share this post


Link to post
Share on other sites

@MadMike.48th: Oh... didn´t even know that such a thread even existed

Anyway, I just came across an odd error message while using DAC_Change_Zone.

First I created a simple spawn zone called "z1" and tried to move it to another location and change the measurements of it.

The "z1" spawn zone:

bild0.th.jpg

Then I made TWO triggers which included the change_zone command and are activated by "Radio Alpha" and "Radio Bravo":

[z1,getpos pos1,[200,200,0],2,1,0] call DAC_fChangeZone;

[z1,getpos pos2,[200,100,0],2,1,0] call DAC_fChangeZone;

Then I started the mission. As you can see on the next screen the zone is created normally without any problems.

bild1ye.th.jpg

Then I use "Radio Alpha" to activate the change zone trigger to switch z1 to the pos1 location and i get this error message:

bild2nm.th.jpg

As you can see in the error description it has something to do with markers and you can also see that it is probably the missing blue boundary marker, surrounding the new created waypoint zone of z1. There is also a minituare version of that missing marker next to the cursor...

Anyway thats not a big deal, as the waypoints are still created correctly and are working as you can see here:

bild3d.th.jpg

But there is more: I tried to change the zone to the "pos2" location and after activating the trigger you can see this error message:

bild4w.th.jpg

The odd thing is that the boundary is now drawn but the error message is another one...

In all the cases the AIs react how they should and accept the new waypoints, but those error messages keep irritating me...

Any idea what this could be? A bug?

Share this post


Link to post
Share on other sites

Hi :)

@MoS:

--------

Two important things first:

Please do not use the variable nil (My fault - typo in the readme) :(

bad:

nil=["z1",[1,0,0],[8,2,50,8],[2,2,20,6],[5,1,30,8],[1,1,2],[1,1,1,1]] spawn DAC_Zone

correct (example):

fun=["z1",[1,0,0],[8,2,50,8],[2,2,20,6],[5,1,30,8],[1,1,2],[1,1,1,1]] spawn DAC_Zone

Before you use a DAC function, you must ensure that DAC has completed its initialization.

Ok, I've done some testing and found out that the call of the function within a trigger does not work and I don't know why.

A simple solution for this prob is to spawn the script ...

Example:

fun=[z1,getpos pos1,[200,200,0],0,0,0] spawn DAC_fChangeZone;

This methode is working fine here. Please try it out.

And ... Thanks for your support in relation to the great DAC_Config_Unit :)

@MadMike:

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

During tests in the editor with demo mission #E_33_DAC_extern_cfg.utes i also never exerienced that no tanks are spawning. But as i mentioned before as we played a mp mission the same thing occurs. No tanks spawned in the area. After playing the mission i checked the init of the sensor of this area and it looked like this:

We have never noticed such problems until now, although we have made a lot of MP tests.

It's really important (if you have such problems) to make a test with standard units and vehicles. The best way for such a test is to use the original DAC_Config_Units.sqf

If the problems then are still present, then I ask for a small test mission, so that we can conduct our own test to see what happens ... ok?

One other thing: Is it possible to change something that the civilians don´t cover themselves with smokegrenades if they are near a firefight?

Hehe...you are right. It's better to use a neutral behaviour script for the civis.

I think I can build in such a script for the next version (pbo and script version).

@Nomadd:

-----------

Forgot, one other thing I noticed. In mp games when a wheeled vehicle spawns like a UAZ with a mg. There will be a driver but no gunner. I am not sure if the gunner got out and went for coffee or just never spawned.

That can always happen at the beginning of a DAC's mission.

DAC generates only one vehicle first and then generates the infantry units.

When the first vehicle is filled, DAC generates the next vehicle.

(This procedure is running for each group)

If now is only one unit more is generated, then only this one unit is sitting within the second vehicle (withou a gunner).

This situation changes, however, when the Group has reached its first waypoint and have done their patrol. The vehicles will then be reassigned.

@gunterlund21:

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

As Perfect Dark has already said it correctly, the zone z2 is not known at the time of the creation of zone z1. This is a real problem within your situation.

The only way to get this working is, to write a little script which can resolve the problem:

The script is started at the end of your script:

waituntil{time > 3};

_pos7 = getMarkerPos "Marker7";

_possniper = getMarkerPos "MarkerSniper";

waituntil{time > 4};

_values = ["z7",[2,0,0],[],[],[],[1,2,50,0,100,10,[z2]],[0,11,0,0]];

[(_pos7),100,100,1,0,_values] call DAC_fNewZone;

hint "Base is launched";

waituntil{DAC_NewZone == 0};

_values = ["z11",[11,0,0],[1,2,15,15],[],[],[],[0,11,0,0]];

[(_possniper),1000,500,1,0,_values] call DAC_fNewZone;

hint "Markersniper is launched";

waituntil{DAC_NewZone == 0};

_list = "list XRay";

waituntil{(({isPlayer _x} count (call compile _list)) > 0)};

_pos1 = getMarkerPos "Marker1";

_pos2 = getMarkerPos "Marker2";

//_pos3 = getMarkerPos "Marker3";

_values = ["z1",[1,0,0],[5,2,5,5],[],[],[],[0,11,0,0]];

[(_pos1),125,125,0,0,_values] call DAC_fNewZone;

hint "Marker1 is launched";

waituntil{DAC_NewZone == 0};

_values = ["z2",[2,0,0],[5,2,5,5],[],[],[],[0,11,0,0]];

[(_pos2),150,150,0,0,_values] call DAC_fNewZone;

hint "Marker2 is launched";

waituntil{DAC_NewZone == 0};

if(isServer) then {["z7","z2"] execVM "SetCampToZone.sqf"};

This script causes that the zone z7 (the one with the camp) is supporting the zone z2.

And the script SetCampToZone.sqf looks like this:

private ["_i","_z","_values","_curZonePos","_curCampPos"];

_values = _this;

_i = 0;_z = 0;
_curZonePos = ""; 
_curCampPos = "";

_curZonePos	= format[
					"%1",
					((position (call compile ((_values select 0) select 0))) select 0) +
					((position (call compile ((_values select 0) select 0))) select 1)
				];

while{_z < count DAC_Spawn_CampsE} do
{
_curCampPos	= format[
						"%1",
						(((DAC_Spawn_CampsE select _z) select 0) select 0) +
						(((DAC_Spawn_CampsE select _z) select 0) select 1)
					];

if(_curZonePos == _curCampPos) then
{
	((DAC_Spawn_CampsE select _z) select 6) set[count ((DAC_Spawn_CampsE select _z) select 6),((getpos (call compile (_values select 1))) select 0)];
};
_z = _z + 1;
};

Sorry m8, but I had no time to test this script. I hope it will work.

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  

×