Jump to content
duda123

Advanced AI Command

Recommended Posts

 

 

steamLogo.jpg

 

SP & MP Compatible. Full replacement for high command.

 

When this addon is enabled, you will be given control of all groups on your side when looking at the map. This can be configured using editor-based modules (similar to high command). See below for install directions.

 

Features:

 

  • Control AI groups via the map. Provides intuitive interface for commanders. 
  • Supports multiple commanders in multiplayer. All commanders can see in real-time as waypoints are moved. 
  • Assign/unassign vehicles to an AI group using the map. 
  • Land & set fly in height for planes / helicopters 
  • Waypoints can be moved around via dragging. They can be deleted using the delete key. 
  • Supports remote controlling of AI group leaders (for groups without vehicles). Press delete to exit remote control. 

 

Installation:

  1. Subscrive via steam: http://steamcommunity.com/sharedfiles/filedetails/?id=685037021 or dowload latest release fromhttps://github.com/sethduda/AIC/releases
  2. If installing this on a server, add the addon to the -mod command line option. By default, all players will be given control of all groups on their side. You can change this using editor modules. See below.
  3. Optionally, configure setup using Advanced AI Command "Groups" and "Commanders" editor modules in the Misc category. See below of examples configurations.

Example Module Configurations (Optional):

 

Setup 1: Give all playable units full control over all groups on their side

 
No additional configuration needed.
 
Setup 2: Give specific playable units full control over all groups on their side
 
In this example, two playable units will have full control over all groups on their side. The 3rd playable unit won't have any command controls.
 
moduleExample1.jpg
 
Setup 3: Give specific playable units control over specific groups
 
In this example, two playable units will have control over two groups. The 3rd playable unit won't have any command controls.
 
moduleExample3.jpg
 
Setup 4: Give specific playable units control over specific groups (Advanced)
 
This is an advanced example giving multiple players (different sides) control over specific groups.
 
moduleExample2.jpg
 

 

Issues & Feature Requests

 

https://github.com/sethduda/AIC/issues

 

If anyone wants to help fix any of these, please let me know. You can fork the repo and create a pull request.

 

Special Thanks for Testing & Support:

 

Here's an in-depth overview of all features of AIC:

 

 

 

  • Like 15

Share this post


Link to post
Share on other sites

This sounds absolutely bloody brilliant! I was looking into making my own replacement for high command but never really got started. Gotta try this out.

Share this post


Link to post
Share on other sites

awesome stuff.. can this still be used in mission without adding a addon version.. ?

Share this post


Link to post
Share on other sites

awesome stuff.. can this still be used in mission without adding a addon version.. ?

Yes, it can be added to a mission as well. See the github releases page and download the src zip. In there you'll find an example mission.

Share this post


Link to post
Share on other sites

Lots of people want to set the flight height of the helos ingame. Would be great if we could do that,and CAS and a much more precise arty strike.

 

To be able to send troops to cover would be nice.This looks great.We need something like this.

 

I like to have as much choices as possible.Thanks!

Share this post


Link to post
Share on other sites

Would be easy to set fly height - that's a good idea.

If you know of any good scripts to make AI groups find cover, that can also be added in!

That screenshot looks like it might be high command.

Share this post


Link to post
Share on other sites

I've updated the code and released as 0.2-ALPHA (on steam and on the github releases page)

 

Changes:

  • Adding fly in height option - Thanks John1 for the idea!
  • Fixing color assignment

Share this post


Link to post
Share on other sites

Would people prefer a module that can be placed and synchronized to units to configure the commanders & groups that can be controlled ? (similar to high command)

  • Like 3

Share this post


Link to post
Share on other sites

Updated mod v0.2 available at withSIX. Download now by clicking:

banner-420x120.png

Hey duda123 , you can upload updates or new mods to withSIX yourself now!

Make your own promo page, get the power to release your work at your own point of choosing.

To learn more, follow this guide.

  • Like 1

Share this post


Link to post
Share on other sites

Would people prefer a module that can be placed and synchronized to units to configure the commanders & groups that can be controlled ? (similar to high command)

Yes please! 

 

It's absolutely awesome by the way, unlocks a completely new way of playing Arma (high command is still way too buggy). Thanks for your brilliant mods Duda! 

  • Like 1

Share this post


Link to post
Share on other sites

Watch Direction?  Suppress?  Set Speed ? Some stuff I remember from other mods.Divide a team up in A and B -then make them bound to someplace by making them use a set number of WP to wherever they are going.

 

Some way to make them set up a 360* zone when getting out of a helo.  Just my 2 cent for now .Like what you are going with this.

  • Like 3

Share this post


Link to post
Share on other sites

Would people prefer a module that can be placed and synchronized to units to configure the commanders & groups that can be controlled ? (similar to high command)

I was just going to suggest this. Just played around with this briefly and it's potential is amazing, allows group control the way that C2 allows squad control. Excellent work. But I can see it breaking some missions where other groups have specific waypoints you're not supposed to mess with. But this would be amazing as a High Command replacement.

 

EDIT: You could also just make this a regular High Command extension, using the default High Command modules. Another thing I noticed is that it's rather difficult to use pre-crewed transport helicopters. The system treats them as a separate group when there is another group loaded, and it's rather difficult to select the helicopter and give it a waypoint verses the loaded group. Maybe only allow the helicopter (or other vehicle) be selectable when a group is loaded?

Share this post


Link to post
Share on other sites

There're a lot of possibilities for controlling AI groups. My objective is to keep the interface simple to use with a limited number of fundamental actions. Then, I will provide a scripting interface (like the addAction command) that lets people build out custom actions as needed. It's very close to this point.

 

Here's an example of what it took to add the behavior action to the group: 

AIC_fnc_setGroupBehaviourActionHandler = {
    params ["_group","_groupControlId","_params"];
    _params params ["_mode"];
    [_group,_mode] remoteExec ["setBehaviour", leader _group]; 
    hint ("Behaviour set to " + toLower _mode);
};


["Careless",["Set Group Behaviour"],AIC_fnc_setGroupBehaviourActionHandler,["CARELESS"]] call AIC_fnc_addCommandMenuAction;
["Safe",["Set Group Behaviour"],AIC_fnc_setGroupBehaviourActionHandler,["SAFE"]] call AIC_fnc_addCommandMenuAction;
["Aware",["Set Group Behaviour"],AIC_fnc_setGroupBehaviourActionHandler,["AWARE"]] call AIC_fnc_addCommandMenuAction;
["Combat",["Set Group Behaviour"],AIC_fnc_setGroupBehaviourActionHandler,["COMBAT"]] call AIC_fnc_addCommandMenuAction;
["Stealth",["Set Group Behaviour"],AIC_fnc_setGroupBehaviourActionHandler,["STEALTH"]] call AIC_fnc_addCommandMenuAction;

Here's some function documentation.

AIC_fnc_addCommandMenuAction

Description:


Adds an action to the command menu. Must be executed locally on all clients.


Parameter(s):


_this select 0: STRING - Label that will appear in the command menu
_this select 1: ARRAY - Path (default []). Defines command menu path to action (e.g ["Set Behaviour","Test 1"] will result in Set Behaviour > Test 1 > [Label]
_this select 2: SCRIPT - Action handler (Defaults to {})
_this select 3: ANY - Action handler params (Defaults to [])
_this select 4: STRING - Input selection type (Defaults to "NONE"). Supported selection types are "NONE", "VEHICLE", and "POSITION" (e.g VEHICLE will ask user to choose a vehicle and will pass that vehicle to your action handler)
_this select 5: SCRIPT - Script to determine if action is enabled (Defaults to {true})

You can try this out if you'd like by defining custom actions in the init.sqf file. It will work with the current addon.

 

The other thing I'd like to do is add the ability to define custom actions for waypoints. These are a little trickier since they can't execute immediately. They would only execute (server side) once a group has reached a waypoint. It's essentially a delayed group action that can be added/removed by all commanders before a waypoint is reached.

  • Like 1

Share this post


Link to post
Share on other sites

I was just going to suggest this. Just played around with this briefly and it's potential is amazing, allows group control the way that C2 allows squad control. Excellent work. But I can see it breaking some missions where other groups have specific waypoints you're not supposed to mess with. But this would be amazing as a High Command replacement.

 

EDIT: You could also just make this a regular High Command extension, using the default High Command modules. Another thing I noticed is that it's rather difficult to use pre-crewed transport helicopters. The system treats them as a separate group when there is another group loaded, and it's rather difficult to select the helicopter and give it a waypoint verses the loaded group. Maybe only allow the helicopter (or other vehicle) be selectable when a group is loaded?

 

Sorry, but I really don't like high command :) I think its user interface is way to complicated and non-intuitive for what it's trying to do.

 

Yes, I agree, multiple groups in the same vehicle is tough. You have to zoom in really close to select the correct group. I've thought through a few options, but they all tend to fall apart when you consider that groups can have multiple vehicles & can contain multiple groups. I'll keep thinking about a solution.

  • Like 1

Share this post


Link to post
Share on other sites

How about this:

If there's more than one group in a vehicle and one of those groups are in control of the vehicle (driver), then hide all group icons except the driving group.

Then, provide an action when you click on the driving group icon called "unload other groups". This will cause all other groups to have the vehicle unassigned, causing them to get out.

Share this post


Link to post
Share on other sites

How about this:

If there's more than one group in a vehicle and one of those groups are in control of the vehicle (driver), then hide all group icons except the driving group.

Then, provide an action when you click on the driving group icon called "unload other groups". This will cause all other groups to have the vehicle unassigned, causing them to get out.

 

Ok, give the latest version a try. I've just implemented this and also added group speed control.

Share this post


Link to post
Share on other sites

Ok, I've got this working with the editor modules now - published on steam and github (v0.4) 

 

?interpolation=lanczos-none&output-forma

 

In the example above, two playable units on each side have been setup as commanders. Both units on the same side will see the same command map (and can see each other's changes). Each commander will be in control of two AI groups. Make sure all modules and units are synchronized together. Only one unit from each AI group needs to be synchronized to the Advanced AI Command - Groups module. 

  • Like 2

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

×