Jump to content
spirit6

Mission Template Stand Alone GAIA - Make missions FAST by using MCC GAIA engine

Recommended Posts

With this template you can speedup your mission making and add intelligence to the AI without scripting one word. Good luck!

What you get without one word of scripting:

- Automated patrols of any kind. Air patrols, footpatrols, vehicle patrols, boat patrols.

- Automated fortifications

- Working mortars, artillery, transportation system. Basicly any type of unit is recognized by GAIA and you dont need to do one thing.

- Smart AI system that will coordinate the attacks and adjust to what ever the player is doing.

- Integrated caching system.

- Integrated respawn system (so you can create endless battles)

- A shitload more

- All of the above by simple adding a line in the init of a group without having to understand anything.

GAIA is the AI system that is used in the mod MCC. With this you can add GAIA AI system to your missions without MCC addon.

This tempLate serves 2 goals:

- How to use GAIA if you have MCC and want to use the BIS editor. (You dont need this template then, just create a new mission with MCC addon active)

- Run GAIA stand alone and make missions fast. Completely independent of MCC. (you wont benefit automaticly from gaia updates then, MCC owners do)

http://cloud-2.steampowered.com/ugc/545256127159957225/A50B01AB18E61E24DD9010B7F8F38DDA9EF48AE0/1024x640.resizedimage (207 kB)

For who?

This is meant for mission editors. I will answer anything gaia related but I will not teach you how to use the bis editor. So basic knowledge of the bis editor is required. If that is not you, go to our mod MCC: http://forums.bistudio.com/showthread.php?150909-MCC-Sandbox-3-Dynamic-mission-creating-tool-for-ArmA-3

Holds the same GAIA but then with a great GUI (and more).

Why stand alone?

I know some wanted it for a longer time. I also wanted a showcase for people that have MCC but want to use it in the bis editor. So now you can learn how to do that. The other is to make people aware of the use of this system so you can be our next big MCC fan! :)

GAIA stands for Greater Artificial Intelligence.

Manual to GAIA-> https://dl.dropboxusercontent.com/u/56634804/MCC%20GAIA%20V1.0%20Release.pdf

Goal of GAIA

GAIA can best be seen as a higher level lead organization that is tasked to make all groups work towards (a) common goal(s). GAIA does not improve and tries not to influence the behavior at group level.

So what is it that GAIA wants? The main goal of GAIA is to defend territory. To do that she makes sure that:

- All assets are used intelligently. Know your units, what can they do, what are their weaknesses.

- Responses to threat are in proportion. Do not send more troops then needed, but also make sure it is enough to deal with the opposing threat.

- Understand the priorities. The closer a threat is to the center of the territory (zone), the higher the priority.

How install this template

Unzip it to the directory where Arma saves user missions (when you click save in the BIS editor). After that fire up arma WITHOUT MCC!!! and go to the BIS Editor and load the mission. The Mission contains multiple examples of how to use GAIA, to see all that text in the editor click on the marker symbol (as if you want to make marker). You will now see all the markers and explanations.

http://cloud-4.steampowered.com/ugc/545256127159166107/BAA17C5E14434D462A8E1D2E3EA946E966E67074/1024x640.resizedimage (147 kB)

How to use it

-The mission contains one playable unit. Drag that to whatever example you want to spectate. Then click preview and enjoy the show.

- In the editor read the text at the markers and if understood double click on the leader of the group. It will show the init of the group. This is the setting that was given and how you handle units to GAIA control.

1024x640.resizedimage

Indepth

Zones

Create a marker rectangle or ellipse of any size. Name it by a number. It MUST be a number! Units will NOT patrol outside that area.

init.sqf

After unzipping you will find in the mission folder init.sqf. It will contain the following variables that you can change to your liking. (OPTIONAL TO CHANGE, YOU DONT HAVE TO!)

// From what range away from closest player should units be cached (in meters or what every metric system arma uses)?
// To test this set it to 20 meters. Then make sure you get that close and move away. 
// You will notice 2 levels of caching 1 all but leader, 2 completely away
// Stage 2 is 2 x GAIA_CACHE_STAGE_1. So default 2000, namely 2 x 1000
GAIA_CACHE_STAGE_1				= 1000;
// The follow 3 influence how close troops should be to known conflict to be used to help attack/defend. (so they wont travel all the map to support)
// How far should footmobiles be called in to support attacks.
// This is also the range that is used by the transport system. If futher then the below setting from a zone, they can get transport.
MCC_GAIA_MAX_SLOW_SPEED_RANGE  = 600;
// How far should vehicles be called in to support attacks. (including boats)
MCC_GAIA_MAX_MEDIUM_SPEED_RANGE= 4500;
// How far should air units be called in to support attacks.
MCC_GAIA_MAX_FAST_SPEED_RANGE  = 80000;
// How logn should mortars and artillery wait (in seconds) between fire support missions.
MCC_GAIA_MORTAR_TIMEOUT				 = 300;
// DANGEROUS SETTING!!!
// If set to TRUE gaia will even send units that she does NOT control into attacks. Be aware ONLy for attacks.
// They will not suddenly patrol if set to true. 
MCC_GAIA_ATTACKS_FOR_NONGAIA	 = false;

// If set to false, ai will not use smoke and flares (during night)
MCC_GAIA_AMBIANT							 = true;

// Influence how high the chance is (when applicaple) that units do smokes and flare (so not robotic style)
// Default is 20 that is a chance of 1 out of 20 when they are applicable to use smokes and flares
MCC_GAIA_AMBIANT_CHANCE				 = 20;
// The seconds of rest a transporter takes after STARTING his last order
MCC_GAIA_TRANSPORT_RESTTIME		= 40;
 

Initialization field of group leader

In the initialization field of the group leader put one (or more) of the following. (please see the template in the editor to understand what this does!)

// Make units patrol, mortar ect ect by just 3 things:(<ZONE NUMBER> be replaced by the zone you want it active in). Example : (group this) setVariable ["GAIA_ZONE_INTEND",["1", "MOVE"], false];

(group this) setVariable ["GAIA_ZONE_INTEND",["<ZONE NUMBER>", "MOVE"], false]; -> Agressive.

(group this) setVariable ["GAIA_ZONE_INTEND",["<ZONE NUMBER>", "NOFOLLOW"], false]; -> Defensive

(group this) setVariable ["GAIA_ZONE_INTEND",["<ZONE NUMBER>", "FORTIFY"], false]; -> Fortify

// Cache units by putting this:

(group this) setVariable ["mcc_gaia_cache",true, true];

// Make units respawn by this:

// replace <number by the number of times you want it to respawn>. Units will respawn on the location you initialy place it.

(group this) setVariable ["MCC_GAIA_RESPAWN",<number>, true];

Q & A

I own MCC. Do I need this template if i want to make missions in the BIS editor?

Awesome. No, you dont. You can just create a new mission and use the commands learned in this template straight away. No need for this template. Just be advised. When you go checkout this tempalte run without MCC and as soon as you want to make your own mission go run with MCC. GAIA is integrated in MCC and for that you dont need this template (gaia is integrated in mcc). Missions you make will automaticly benefit from GAIA updates when you update MCC.

I dont own MCC. Can i really? Does it work?

That is horrible news. You should get it. http://forums.bistudio.com/showthread.php?150909-MCC-Sandbox-3-Dynamic-mission-creating-tool-for-ArmA-3

Yes you can. It will work, that is why i made this template. But you will not benefit (automaticly) in your missions from gaia updates.

All that settings in the initialization are awesome but i want to dynamicly change that by triggers/scripting/what ever. Can I?

Yes you can change the settings at any time. Add caching. Disable it (set false). Go give them a new zone. Move the zone around. GAIA doesnt care. Put respawn number higher. What ever. Use the "<group> setvariable" for that.

So can you show me just in a lazy way the functionality of gaia?

yes i made some video's. You will notice I use the MCC GUI there but the functionality can be seen there. Have fun.

I hope it is clear. Just fire away guys, as I notice my explanations get rather long :)

Template

And finaly, now you are done reading (really guys, read please before asking!). The file. There. Go unzip it. I hope it serves any of you guys the intended goal of making nice missions :)

 

http://www.armaholic.com/page.php?id=26782

 

 

Demo mission

I gues some action wont hurt. The mission is nothing much but it shows some stuff. Tour squad in a missirable defend position blah blah. Bluefor will come for the rescue, but till then... dive in....

To show where the units are i made use of show markers. Credits:

AUTHOR : aeroson

NAME : player_markers.sqf

VERSION: 2.6

Singleplayer:

https://dl.dropboxusercontent.com/u/56634804/CO6_Operation_GAIA.Altis.pbo

Multiplayer:

https://dl.dropboxusercontent.com/u/56634804/CO6_Operation_GAIA_mp.Altis.pbo

  • Like 1

Share this post


Link to post
Share on other sites

Amazing. I'm reading the pdf right now, quite excited! Just to be clear, there are no requirements on server side, everything is in the mission file?

Share this post


Link to post
Share on other sites
Amazing. I'm reading the pdf right now, quite excited! Just to be clear, there are no requirements on server side, everything is in the mission file?

Yes, everything. The PDF is oriented towards explaining the use of GAIA, it is written towards use of MCC but it explains quite well the functionality.

Edited by spirit6

Share this post


Link to post
Share on other sites
Yes, everything. The PDF is oriented towards explaining the use of GAIA, it is written towards use of MCC but it explains quite well the functionality.

Alright. I'm done reading the PDF and the topic, time for noob questions - can I?

First, you don't explain what caching is in the manual, can you tell us what it is and how/why we should use it?

Also, I understand pretty well how to make Gaia defend/patrol zones dynamically, and this is of course a huge improvement on BIS basic editor, but I don't understand how Gaia reacts to the player's actions. If I have two zones, and one fire squad patrolling each zone, how will Gaia react to an invading enemy? Will it send the fire squad patrolling zone 2 to zone 1, where the enemy is? Will it send reinforcements from other zones/units with no particular orders? Or will it use any unit currently in the zone to do a counter-offensive, including units with orders like "fortify"?

In short, I see how to make individual patrols and position holding and so on, but will Gaia override these orders when there is danger, or will it use other units as backup?

Share this post


Link to post
Share on other sites
Alright. I'm done reading the PDF and the topic, time for noob questions - can I?

First, you don't explain what caching is in the manual, can you tell us what it is and how/why we should use it?

Also, I understand pretty well how to make Gaia defend/patrol zones dynamically, and this is of course a huge improvement on BIS basic editor, but I don't understand how Gaia reacts to the player's actions. If I have two zones, and one fire squad patrolling each zone, how will Gaia react to an invading enemy? Will it send the fire squad patrolling zone 2 to zone 1, where the enemy is? Will it send reinforcements from other zones/units with no particular orders? Or will it use any unit currently in the zone to do a counter-offensive, including units with orders like "fortify"?

In short, I see how to make individual patrols and position holding and so on, but will Gaia override these orders when there is danger, or will it use other units as backup?

Yep, I dont hold to much time to explain it all.

Caching is used to make sure that units that dont matter unless the player is close are removed from the map. When a player goes close, they will go back to the map. Caching is done in 2 stages. First stage (stage 1 distance as can be set in the init) will just keep the leader. The second kicks on on 2 times the distance and will completely remove the group. This video (in the very end) holds some showcase about caching.

On your example the reaction of GAIA depends. If set on MOVE (agressive) then units will go support outside the zone they are given. If set on NOFOLLOW (defensive) they will not. On defensive they will only support groups (respond to threat) when the conflict is inside their zone. Also the GAIA system will respond only if the conflict area is in reasonable range. You can set that ranges in the init (explained in there). That way it prevent units supporting a conflict on the other side of the map.

To see how it is used, go see the template and read the markers. It explains all units. After that experiment a little. I hold not to much time to make an awesome explaint it all text :)

Please see the video, they hold info on response to threat.

Edited by spirit6

Share this post


Link to post
Share on other sites

Ok, thanks for your answer, it definitely is clear now. I'm eager to test your system :) Thanks again.

Share this post


Link to post
Share on other sites

I gues some action wont hurt. The mission is nothing much but it shows some stuff. Tour squad in a missirable defend position blah blah. Bluefor will come for the rescue, but till then... dive in....

To show where the units are i made use of show markers. Credits:

AUTHOR : aeroson

NAME : player_markers.sqf

VERSION: 2.6

Singleplayer:

https://dl.dropboxusercontent.com/u/56634804/CO6_Operation_GAIA.Altis.pbo

Multiplayer:

https://dl.dropboxusercontent.com/u/56634804/CO6_Operation_GAIA_mp.Altis.pbo

Share this post


Link to post
Share on other sites
I gues some action wont hurt. The mission is nothing much but it shows some stuff. Tour squad in a missirable defend position blah blah. Bluefor will come for the rescue, but till then... dive in....

To show where the units are i made use of show markers. Credits:

AUTHOR : aeroson

NAME : player_markers.sqf

VERSION: 2.6

Singleplayer:

https://dl.dropboxusercontent.com/u/56634804/CO6_Operation_GAIA.Altis.pbo

Multiplayer:

https://dl.dropboxusercontent.com/u/56634804/CO6_Operation_GAIA_mp.Altis.pbo

Can we have the (multiplayer) mission.sqm to study it in the editor?

Share this post


Link to post
Share on other sites
Can we have the (multiplayer) mission.sqm to study it in the editor?

There is no study needed. Just go for the template, liked stated in first post. All is there. To get a multiplayer is just arma editor default. Save as multiplayer. There is nothing to see in the sqm. The mission is just for funs to quicly see some stuff.

Share this post


Link to post
Share on other sites

Well I'd definitely be interested in studying the patterns of a seasoned Gaia user. For example, regarding patrols in a large area do you go for one huge zone, or do you prefer lots of tiny ones?

Share this post


Link to post
Share on other sites
Well I'd definitely be interested in studying the patterns of a seasoned Gaia user. For example, regarding patrols in a large area do you go for one huge zone, or do you prefer lots of tiny ones?

There is no answer to that. Depends on the mission you want. If you want a specific location guarded I would make a small zone and put units on NOFOLLOW (defend). If you want large area's controlled go use a big one. The videos explain also stuff to know. Infantry prefer roads/cities etc while SF units prefer forest. Also something to take into accoutn when making missions. It is all up to what YOU want. The system itself will listen to you :)

---------- Post added at 03:51 PM ---------- Previous post was at 03:49 PM ----------

Good job Spirit :yay:

Thanks Shay :yay:

Share this post


Link to post
Share on other sites
There is no answer to that. Depends on the mission you want. If you want a specific location guarded I would make a small zone and put units on NOFOLLOW (defend). If you want large area's controlled go use a big one. The videos explain also stuff to know. Infantry prefer roads/cities etc while SF units prefer forest. Also something to take into accoutn when making missions. It is all up to what YOU want. The system itself will listen to you :)

Alright, even though it sounds a bit strange to have SF roam the countryside, but I get the idea. Look, I don't want to hijack this thread with stupid questions so I have some for you but feel free to tell me if they are inappropriate here.

Regarding helicopters. I watched the videos, and I understand that their patrol shedules are random. Yet, I've got a Pawnee there that refuses to ever lift off (I waited for 25 minutes in the editor preview, and nothing happened, even when I finally spawned enemies MRAP next to his allies). No reaction. He's in zone 4, very far away from zone 1 (I tweaked caching options so that he doesn't disappear), and here is his init: "(group this) setVariable ["GAIA_ZONE_INTEND",["1", "MOVE"], false];".

Is it possible that it simply won't patrol because Gaia feels it has enough terrain coverage with foot soldiers already? Also, will unarmed helicopters patrol (to provide recon for Gaia) or do they have to be armed?

Next, I wanted to have a backup fire team next to a transport helicopter, far from the mission area, available as backup if Gaia needs some. I tried to have the soldiers MOVE their own area, with the transport heli doing the same - which means he should transport everyone that needs it, right. But how to tell Gaia to take these men in priority as backup rather than other patrols that roam an actually important zone?

Share this post


Link to post
Share on other sites
Alright, even though it sounds a bit strange to have SF roam the countryside, but I get the idea. Look, I don't want to hijack this thread with stupid questions so I have some for you but feel free to tell me if they are inappropriate here.

Regarding helicopters. I watched the videos, and I understand that their patrol shedules are random. Yet, I've got a Pawnee there that refuses to ever lift off (I waited for 25 minutes in the editor preview, and nothing happened, even when I finally spawned enemies MRAP next to his allies). No reaction. He's in zone 4, very far away from zone 1 (I tweaked caching options so that he doesn't disappear), and here is his init: "(group this) setVariable ["GAIA_ZONE_INTEND",["1", "MOVE"], false];".

Is it possible that it simply won't patrol because Gaia feels it has enough terrain coverage with foot soldiers already? Also, will unarmed helicopters patrol (to provide recon for Gaia) or do they have to be armed?

Patrols are completely random. Some can indeed stay in position quite long. Helicopters that have no transportation and have guns are considered attack heli's (and wait for a CAS call). I have no clue what a Pawnee is, i dont know units quite well. The rest is patrolling. Secondly, gaia does not feel :) The patrols of heli's are random if set on MOVE if set on NOFOLLOW it will only patrol the designated zone. You can spectate that in the template. Put the markers on and you can see all the inits and explaining text from me there. I guarantee you it will work, GAIA is operational already for months without issues.

Next, I wanted to have a backup fire team next to a transport helicopter, far from the mission area, available as backup if Gaia needs some. I tried to have the soldiers MOVE their own area, with the transport heli doing the same - which means he should transport everyone that needs it, right. But how to tell Gaia to take these men in priority as backup rather than other patrols that roam an actually important zone?

The transportation system is for vehicles only. Heli's just patrol or do CAS duty. I did have the transport heli job in gaia ones but the BIS stock AI are so completely unworthy pilots that it would be a crash dummy party, not to mention their weird behavior during fire or close by enemy.

Again. To see the transportation check the template.There is an example of that also with a truck and a soldier group. Transportation is only available for foot soldiers that find themself far away from their designated zone and need a transport back. To simulate offensive truck loads use either motorized infantry groups OR create a small zone with a group and a transporter (that fits teh group). Then MOVE the zone far away. It creates the same effect. Teh footmobile is far away from the zone and requests a transportation duty.

Then. There is no way to guarantee that a group of footmobiles is send into the truck. Het might be assigned to another group that also needs transporation.

Edited by spirit6

Share this post


Link to post
Share on other sites

Ok, thanks for clarifying all this. I had studied the template so I had a working transportation truck already, but I didn't know helis couldn't transport troops.

Share this post


Link to post
Share on other sites
Ok, thanks for clarifying all this. I had studied the template so I had a working transportation truck already, but I didn't know helis couldn't transport troops.

Coolio. If you want to talk some stuff over come join the TS of http://armaseries.com/ one evening. I can be found there some nights a week.

Share this post


Link to post
Share on other sites

Thanks for informing us of the release :cool:

Release frontpaged on the Armaholic homepage.

================================================

You are not registered on Armaholic, or at least not that we are aware of. In the future we offer the possibility to authors to maintain their own pages.

If you wish to be able to do this as well please register on Armaholic and let me know about it.

This is not mandatory at all! Only if you wish to control your own content you are welcome to join, otherwise we will continue to follow your work like we have always done ;)

When you have any questions already feel free to PM or email me!

Edited by Foxhound
updated mirror with proper template file

Share this post


Link to post
Share on other sites

So, tried a multiplayer mission with Gaia tonight, all made with editor. Fantastic tactics for the AI, it was quite incredible! You really did a good job there.

The only problem there is, is when basic A3 fighting AI has to take control. I've seen perfect manoeuvers of the AI soldiers wasted because they didn't react in time to our players shooting them (sometimes up to 5-8 seconds to just acknowledge that "yes, we are being shot"). Also, I think AI should (not that it's easy, of course...) take covers into account when attempting to move. Most of the time AI manoeuvres were taking place in open areas, where it was easy for us to just duck behind large rocks and exterminate.

Edited by Izual

Share this post


Link to post
Share on other sites
Thanks for informing us of the release :cool:

Release frontpaged on the Armaholic homepage.

================================================

You are not registered on Armaholic, or at least not that we are aware of. In the future we offer the possibility to authors to maintain their own pages.

If you wish to be able to do this as well please register on Armaholic and let me know about it.

This is not mandatory at all! Only if you wish to control your own content you are welcome to join, otherwise we will continue to follow your work like we have always done ;)

When you have any questions already feel free to PM or email me!

Thanks Fox. Now get the template in the downloads and not just the demo missions :)

https://dl.dropboxusercontent.com/u/56634804/Mission_Template_GAIA_V1.Altis.rar

---------- Post added at 09:51 AM ---------- Previous post was at 09:48 AM ----------

So, tried a multiplayer mission with Gaia tonight, all made with editor. Fantastic tactics for the AI, it was quite incredible! You really did a good job there.

The only problem there is, is when basic A3 fighting AI has to take control. I've seen perfect manoeuvers of the AI soldiers wasted because they didn't react in time to our players shooting them (sometimes up to 5-8 seconds to just acknowledge that "yes, we are being shot"). Also, I think AI should (not that it's easy, of course...) take covers into account when attempting to move. Most of the time AI manoeuvres were taking place in open areas, where it was easy for us to just duck behind large rocks and exterminate.

Hey, its my strongest poster :) Good to see you hold a good time with it! The flanking positions of the IA do take terrain into account and look for cover but it is far from perfect. Its not that hard to make them look for the best position at all times but it is hard to do that without taking the server down :) So current code is a mixture between peformance and functionality. The current flanking tries all possible flanking manoevers and calculates the the number of cover it gets in that manoever. The highest scoring flank wins. Tht winner can still have a low score ofcours.

*edit*

For increasing the stock AI try using lower level AI mods or change the difficulty settings. GAIA does not influence the lower level AI so you could easily integrate it with a lower AI mod. That is, as long as that lower AI mod stays on its path and stays clear of higher level intelligence. (if that made any sense)

Edited by spirit6

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

×