96 posts in this topic

I've been working on a AI Support add-on which provides features for air support, artillery support, and air insertions for reinforcements. Is anyone interested in this type of stuff, and is anyone wanting to contribute to it? This is my first shot at Arma scripting, so it is a bit rough, and I'm using another library for rappelling out of the helicopter for the air insertion.

Functionality status:

  • Fire Missions (mortar support) is functioning properly) 
    - There are 2 bases created with mortar units that fire if you are in range and request support.
  • Air Support is functioning properly
    - There is an A10 or whatever it is called in Arma that flies around the map to random way points until support is requested.
    - Also a couple of attack helis sitting at one of the bases created waiting on a support request.
  • Air Insertion is only working in the editor, having issues calling the rappelling library on the server currently.
    - A heli is loaded up with a crew of five, 2 pilots, and 2 gunners. Once support is requested (A smoke grenade must be in the players inventory), the heli will fly to the players position, radio to the player that they are near and need smoke on an insertion point. Once the player throws smoke, the heli will insert the AI support units at that position, and fly off, firing at any enemy units on its way out. All of the AI support units will be added to player's group and can be controlled.

Current Issues:

  •  SystemChat messages aren't working when trying to use remotexec.
  • Player Actions are constantly on the screen and I think there needs to be a better solution.


Things to add:

  • Config file
  • Different levels of support based on pop tabs and respect points, but haven't implemented it.
     

If you are interested in checking it out,  216.245.204.214:2322  is a good server address, or do a search for Aevum in A3 Launcher. The server is also running DMS, Occupation, and RF3 for enemy AI units.
Right now it is setup more for a PVE server, but I've looked into having support AI attack other Exile players that aren't in your group and it seems like it will be pretty easy to setup.

Sorry in advance for the bad coding practices.

Also, it is currently being setup for Tanoa. And the server above is Tanoa, so you need APEX for that server.

Here is a link to a GIT repo:
AI Support

Server Install:
- Copy the addons folder to the mission PBO.
- Add the classes that are in the description.txt to the description.txt in the server PBO
- Ignore the mission.sqm (used for Arma 3 Editor)
- I'm sure there are some BattleEye issues that need to be addressed, but currently I'm not messing with BattleEye.


aiSupport2.pngaiSupport1.png

Edited by dharvey44
3 people like this

Share this post


Link to post
Share on other sites
8 hours ago, dharvey44 said:

SystemChat messages aren't working when trying to use remotexec.

["systemChatRequest", [format["blah blah blah"]]] call ExileServer_system_network_send_broadcast;

Share this post


Link to post
Share on other sites
Advertisement
9 hours ago, Alexis said:

["systemChatRequest", [format["blah blah blah"]]] call ExileServer_system_network_send_broadcast;

Thanks Alexis, I will give that a shot.

Share this post


Link to post
Share on other sites

In the install instructions above, he says this:

- I'm sure there are some BattleEye issues that need to be addressed, but currently I'm not messing with BattleEye.

Share this post


Link to post
Share on other sites
53 minutes ago, NeverAgain said:

Hmm good and where is BE filters?

Sorry NeverAgain, my server isn't running BattleEye (at least I haven't seen any BE errors or error logs). 
I may try to setup BE and find all the errors and post a scripts file in the near future.

Share this post


Link to post
Share on other sites

Here is BE Filters:

- #32 "ehicleProperties select 3);  
_vehicle setFuel 1;
_vehicle setdammage 0;
_vehicle setVehicleLock "LOCKED";                              

if(!(isNil "

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

!= \"ehicleProperties select 3);  \n_vehicle setFuel 1;\n_vehicle setdammage 0;\n_vehicle setVehicleLock \"LOCKED\"; 	

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

- #27 "se_b.sqf";        

AISupport_InactiveFireTeams = [
call (compile loadFile "addons\a3_exile_aiSupport\fireTeams\mortars_1.sqf"),
call "

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

!="se_b.sqf\";		\n\nAISupport_InactiveFireTeams = [\ncall (compile loadFile \"addons\a3_exile_aiSupport\fireTeams\mortars_1.sqf\"),\ncall "

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

Share this post


Link to post
Share on other sites

Awesome, thanks! I need to setup Battle Eye so I can update it as this thing progresses.

Share this post


Link to post
Share on other sites

The way it is setup right now, there are a few folders with script files that create the bases, vics, and fire teams.

An example of one of the scripts would be \addons\a3_exile_aiSupport\fireteams\mortars1.sqf
 

_mortars = [
	["B_T_Mortar_01_F",[9967.81,9467.05,113.999],[[-0.710826,0.702176,-0.0409288],[0.0239937,0.0823628,0.996314]],false],
	["B_T_Mortar_01_F",[9973.88,9473.25,113.352],[[-0.608162,-0.793632,0.0169298],[0,0.0213272,0.999773]],false],
	["B_T_Mortar_01_F",[9900.45,9534.59,110.762],[[0.738605,-0.674126,-0.004045],[0.0346456,0.0319657,0.998888]],false],
	["B_T_Mortar_01_F",[9894.64,9528.15,110.815],[[0.575221,0.817998,-0.000815514],[-0.0213272,0.015994,0.999645]],false]
];

You would have to set the location of the vics, fire teams and base object coordinates according to the map that you are using.
So above, you would replace the objects in the _mortars array with your objects.

I used the 3Den tools to get the coordinates.

The Fireteam is created and loaded into exile in the postinit.sqf file

Edited by dharvey44

Share this post


Link to post
Share on other sites
Advertisement

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.