Jump to content
snkman

Tactical Combat Link - TypeX

Recommended Posts

Hey, I'd like to suggest that you change your license to something more defined. Currently the license is very loosely defined.

License:
Tactical Combat Link has been created for Bohemia Interactive Studios ARMA 3 ( Armed Assault 3) the ARMA community and for free use only!
Please keep this modification as it is!
This modification has been Developed / Scripted / Tester by =\SNKMAN/=

It would be better to license it under one of the official ArmA Licenses provided by Bohemia Interactive so people can know for sure if what they're doing is allowed. Check out the different licenses here: https://www.bohemia.net/community/licenses

 

The reason I am suggesting this is because I work on a different AI mod, VCOM, which does a lot of things similar to what you do here. I don't like to reinvent the wheel, so I often look at and take inspiration from other scripts assuming that the license allows it.

It also helps to have a good license in place if this mod would get abandoned at one point or another, because if you either don't have a license or a very loosely defined one, your mod may simply die without anyone being able to take it upon themselves to maintain it.

Anyhow, very interesting thing you've got going here. I'll have to check it out.

Share this post


Link to post
Share on other sites
3 hours ago, snkman said:

The only A.I. part i disabled in T.C.L. is disableAI "TARGET" which prevents unit(s) from targeting enemy(s) which after all my tests and found outs leads to A.I. stuck in place not moving anymore.

But this shouldn't conflict with anything. 

This is likely due to the danger.fsm which you can find in Arma 3/Addons/characters_f.pbo.

The FSM is ran whenever there is a "danger" event, which can be a lot of things, such as gunfire, enemies, but notably one thing "CAN FIRE".
When the AI encounters anything that it can target, the default script is simply as follows:

//_this globalChat "Stopping to fire";
_stopUntil = time + 4 + random 4;
// soldier stop - set max. speed to 0
if (vehicle _this==_this) then {_this forceSpeed 0;}

This FSM can be overwritten by your own, so you should be able to get rid of that or implement your own solution.

Share this post


Link to post
Share on other sites

@Freddo3000

Quote

Hey, I'd like to suggest that you change your license to something more defined. Currently the license is very loosely defined.

Thanks. :icon5:

Yes you're right.

So far i didn't really spend much time to all that writing stuff but will do. :icon7:

 

Yes i know all the internal B.I.S. A.I. FSMs but couldn't get the A.I. to move no matter what i tryed...

 

This was what i used to make A.I. move again:

_unit stop False;

_unit forceSpeed -1;

_unit enableAI "ANIM";

_unit enableAI "MOVE";

_unit enableAI "PATH";

Also using doTarget or doFire leads to the same A.I. not moving behaviour.

I've created a pretty much detailed marker script that keeps track of every unit telling you exactly what they are doing.

By using the currentCommand command you can see what A.I. currently is about to do.

A.I. always refuse to move and stuck in place as soon as it returns "ATTACK".

Guess it's a bug... They really don't move an inch after getting assigned to a target and if after some time they very often move in the opposite direction of where they was ordered to move.

It really messed up everything.

Share this post


Link to post
Share on other sites

hey snkman,

 

Back when they introduced the disableAI routines, I did some tests that I posted about on the development branch. Maybe my findings from back then could be useful. See this video (script in video description) and let me know if you want me to locate my old posts that are now buried somewhere on dev branch forum:

 

 

here is the post from dev branch, some good debate above it:

 

 

Share this post


Link to post
Share on other sites

Hey thanks! :icon5:

 

In the script of the video:

_x disableAI "AUTOTARGET";

is used which solved the A.I. stuck problem for me as well when i tested it couple months befor.

But at the same time this makes A.I. to not shoot at anyone or anything.

With this enemy A.I. walks right into you without shooting a single bullet...

So... Going from 1 problem to another... :icon1:

 

Really i tryed everything possible... No luck!

 

Thank's for the link i will defenitly check it. :thumbs-up:

 

 

Share this post


Link to post
Share on other sites

OK. I am slowly running through some a test scenario with various AI Mods. 

 

I ran TCL (Vanilla) first. Its a good scrap! (18mins)

 

 

 

Share this post


Link to post
Share on other sites
33 minutes ago, snkman said:

Hey thanks! :icon5:

 

In the script of the video:


_x disableAI "AUTOTARGET";

is used which solved the A.I. stuck problem for me as well when i tested it couple months befor.

But at the same time this makes A.I. to not shoot at anyone or anything.

With this enemy A.I. walks right into you without shooting a single bullet...

So... Going from 1 problem to another... :icon1:

 

Really i tryed everything possible... No luck!

 

Thank's for the link i will defenitly check it. :thumbs-up:

 

 

 

Yeah, thats true. After you get them to run or move even under fire, you need to remember to reset their brain back to being soldiers. This has to be done, what I did was AFAIR to run the same sequence of commands, but enabling instead of disabling. This is my script for restoring their brain after disableAI steps:


 

private ["_selectedUnits"];

_selectedUnits = _this select 0;

private _numberOfUnits=0;

{
  _x enableAI "AUTOTARGET";
  _x enableAI "TARGET";
  _x enableAI "SUPPRESSION";
  _x enableAI "AUTOCOMBAT";
  _numberOfUnits=_numberOfUnits+1;

} forEach _selectedUnits;

hint format ["%1 unit(s) had their brain restored",_numberOfUnits];

 

Share this post


Link to post
Share on other sites

Yes. :icon7:

I can tell... ARMA A.I. always had and still have it's own mind...

It's really difficult to know how A.I. behave and what they are going to do in all those different situations.

Sometimes they do so much unexpected things just to make you think w.t.f. is going on!?!

 

@Machiya

Many thanks! :thumbs-up:

Checking it out!

Share this post


Link to post
Share on other sites

AI testing, using TCL with an init script to make all AI respond to fire as if they were players.  TCL at this time, directs AI squads to join the fire-fight (shows my earlier point about TCL releasing waypoints) 


I ran the scenario again, but with the BLUFOR units 'TCL_Disabled' and they responded as I would have expected.
The difference from vanilla TCL is that the AI groups push to and respond better to the surrounding fire-fight.

 


 

Share this post


Link to post
Share on other sites

@snkman: Thanks a lot for this mod! I have used Grouplink in A2 (or even in A1? Can't remember exactly tbh). This adds so much to the game, it is simply incredible.

 

But does TCL affect AI precision settings, too? I have got the impression that they are much more deadly than I was used to.

Share this post


Link to post
Share on other sites

Hi,

 

I am downloading to test it.  Does it increase the range at which AI engage enemy AI or players?  I've found there is a hard stop at 750 meters.  I would like to increase the engagement distance of AI snipers and AI machinegunners.  An existing mod on Armaholic called "Duckhunting" changes the weapon config file of a few weapons, but that mod was made in 2015 and no longer seems to work.  Any thoughts, suggestions?  I would have expected Bohemia to make it simpler to affect the AI engagement distance than the AISkills lineup which simply uses values between 0 and 1.

Share this post


Link to post
Share on other sites

@Machiya

Oh... Didn't see you already posted a new video! :icon7:

Thanks! Will have a look at it.

One question:

From what i've seen in your videos GAIA is something like ZEUS Game Master Module just more advanced in many ways. Am i right?

 

@oldy41

Thanks! :icon7:

 

Quote

But does TCL affect AI precision settings, too?

Yap but only slightly.

Well it depends... Pretty much randomly... You know how the setSkill command works?

It allowes you to tweak various A.I. skills.

T.C.L. use this command but it only increases A.I. unit(s) skills randomly by using the original A.I. unit(s) values of given skills to not make them kind of super human.

 

So if one of the original A.I. unit(s) skills is 0.30 T.C.L. will increase it to something between 0.31 - 0.60 depending on the random result.

This will be done with all of the setSkill values for each A.I. unit(s).

The result are A.I. unit(s) which always feel different every time you play the mission.

 

You can disable the T.C.L. Skills feature in the "TCL_System" settings just in case you would like to see the different.

 

@SwissArmy1984

Quote

Does it increase the range at which AI engage enemy AI or players?

Nope.

I've noticed that as well but to me it always was okay to have A.I. unit(s) engage within the 750 meters range.

To be honest sometimes i'm suprised to watch A.I. unit(s) that far to my position starts to shoot at me.

Sure snipers truely should be able to engage from positions much further away but so far i didn't do anything with this.

I know the VTS Duck Hunt script but as far as i know it only works with ARMA 3 default weapons.

Well i will keep that in mind see if i can find any good and easy solution for this. :headscratch:

  • Like 1

Share this post


Link to post
Share on other sites

@snkman
Yeap, GAIA is a strategic AI - it directs 'groups' including flanking movements. For me, its must have.


@ALL

OK - these are my final test in this round. GAIA + TCL and the other two principle AI MODS (ASR & VCOM). I had been using ASR for ages... but I also ran the _NEW(ish)_ VCOM 3.1.

Note: I am using MCC (Workshop) and C2 beta r65 (C2 Discord) MODS

In the end , I excluded my BLUEFOR units from all the AI MODS, so the AI MOD didn't interfere (below)

this setVariable ["asr_ai_exclude", true];
this setVariable ["TCL_Disabled", true];
this setVariable ["Vcm_Disable",true];

Here are my results,

 

TCL+GAIA (15mins)

 


ASR + GAIA (15mins)

 

 

 

VCOM + GAIA (15mins)

 

 

 

 

 

Conclusion,  the firefight in all of them was a huge improvement on vanilla Arma.  VCOM has included 'Fire for Effect' MOD which meant mortars kept me busy.

 

 

  • Like 2

Share this post


Link to post
Share on other sites

Thanks! :icon5:

Much appreciated all your testing and video sharing! :thumbs-up:

  • Like 1

Share this post


Link to post
Share on other sites

@snkman

Wow! Nice to see another AI mod out there. I haven't tested it yet but based on your description it seems terrific! I'll give it a shot soon!

 

If you don't mind, I have a couple of questions about the reinforcement feature. Based on your description the AI can use extraction and insertion. Do they do this automatically? Also, do they use all available vehicles or only some specific ones? (e.g those defined by the mission or maybe the transport vehicles already available in communication menu)

One more thing: is there a way to temporarily stop the units from using these features?

 

Right now I'm working on a dynamic mission which features automatic extraction, insertion and reinforcement by the AI so I was curious if the two would be compatible.

 

BTW, do you show the reinforcement feature in any of the videos you (or others) have posted? I'm curious to know what it's like!

  • Like 1

Share this post


Link to post
Share on other sites
7 hours ago, snkman said:

I know the VTS Duck Hunt script but as far as i know it only works with ARMA 3 default weapons.

Well i will keep that in mind see if i can find any good and easy solution for this. :headscratch:

 

Hello there snkman !

 

I'm not quite sure about it , because as i was playing with this mod with CUP and RHS it seems that it was working as well and actually i have wrote this in this forum a lot of times , but i don't find anyone confirm this as well.

 

This mod is really one of the best because it really made me play and count real distances from enemy marksmen and sniper .

If it is possible to renew this , or do something similar , it would really be one of the top for sure !

 

BUT it's a mod for some guys who want a difficult simulation , when you 're getting fired from BMG .50 at 1800m !

Personally , i love it !

No more dump ai 's !  :smash:

Share this post


Link to post
Share on other sites

@Leopard20

A.I. Insertion / Extraction:

Yes A.I. will do this automatically.

All it needs is a helicopter with full crew and A.I. unit(s) assigned in the helicopter cargo. ( Only cargo unit(s) will be able to unassign the helicopter )

The helicopter ( A.I. group inside the helicopter ) need to be requested by another A.I. group as reinforcement.

After being requested the helicopter will fly to the position of where he was ordered to land and unassign its cargo unit(s).

If cargo unit(s) of the helicopter have parachutes there is a 50% chance that cargo unit(s) do paradrop instead of landing and unassigning.

 

Depending on if the helicopter is armed or not there is a 50% chance that the helicopter will return to his original position and land or if the helicopter will stay and support its unassigned ground unit(s).

 

T.C.L. use a timeout system which will be triggered after none of the requested A.I. group(s) are involved in any combat situation for 3 minutes.

If those 3 minutes are passed all requested A.I. group(s) within the given reinforcement request cycle will assign their vehicles ( if any ) and return to their original positions.

Same goes for helicopters.

They will fly to their ground unit(s) wait till all boarded the helicopter and return to its original position.

 

Well hope this explains it at least a bit.

 

Quote

Also, do they use all available vehicles or only some specific ones? (e.g those defined by the mission or maybe the transport vehicles already available in communication menu) 

communication menu?

 

This A.I. mod does not affect player A.I. unit(s) it's all about full A.I. grou(s) only. If i get your question right?

Well A.I. unit(s) / group(s) are allowed to use any wheeled vehicles only.

Back than i used to allow A.I. to use any kind of vehicle but it's kind of strange to see infantry A.I. unit(s) without pilot using a helicopter or infantry A.I. unit(s) without tank crew using tanks.

So i decided to allow A.I. unit(s) to assign wheeled vehicles only .

Of course if there are A.I. unit(s) already in a tank or helicopter there will be no problem i'm just talking about the feature where requested A.I. units(s) while moving to their target position are able to assign vehicles to get to their target position faster instead of walking all the way.

 

Quote

One more thing: is there a way to temporarily stop the units from using these features?

Nope not from single features.

 

Yes. Kind of.

You will not see it exactly but the A.I. group which arrives with the Striders were originally not in the Striders.

They assigned them after getting requested as reinforcement.

The helicopter was requested as reinforcement as well.

Unloads its cargo unit(s) at the target location and returns to its original position.

 

Just have a look at the TCL_TypeX_Example mission.

Guess most of your questions will be answered there.

 

@GEORGE FLOROS GR

Yes i already found and worked on a solution of this in the past but totally lost focus after switching to some other parts of T.C.L. which back than seemed to be more important to me.

Will see what i can do. :icon1:

  • Thanks 2

Share this post


Link to post
Share on other sites
21 minutes ago, snkman said:

Will see what i can do. :icon1:

 

T.C.L. must be in the top priority !

It really deserves it !

 

Thank you snkman for checking about it though ! :thumb:

 

 

Share this post


Link to post
Share on other sites

@snkman

Thank you for your reply!

 

10 hours ago, snkman said:

communication menu?

I meant the "Supports" menu. Such as "Mortar", "CAS", "Transport". If you have these in a mission, the HQ tells you "Support units are now on standby". 

Nonetheless, your reply pretty much covered all my questions. Much appreciated! 🙂

 

I'll have to perform more tests myself to see if this mod is compatible with my mission. So far ASR AI and VCOM work fine! I sure hope this one works as well, seeing how promising it is!

 

One last question (hopefully!). In this video the AI attempted to sort of change course and flank the player. If a group already has a waypoint (say, defined by the mission maker), do the AI move towards the objective or still attempt to engage their targets? (in other words, are the waypoints replaced or not?)

 

BTW, those usage stats I see in your vids (top left corner), did you create it yourself?! It seems really nice and handy! 

Share this post


Link to post
Share on other sites

@GEORGE FLOROS GR

Quote

 

T.C.L. must be in the top priority !

It really deserves it !

 

Thanks for your kind words! :icon5:

Much appreciated.

 

@Leopard20

Sure not a problem! :icon7:

This is the right place to ask any kind of questions in relation to Tactical Combat Link.

 

Quote

I meant the "Supports" menu. Such as "Mortar", "CAS", "Transport". If you have these in a mission, the HQ tells you "Support units are now on standby". 

Well to be honest... I'm not playing ARMA 3 very much since i've started modding.

So there are many things and features of ARMA 3 im not aware of... :icon2:

 

Quote

If a group already has a waypoint (say, defined by the mission maker), do the AI move towards the objective or still attempt to engage their targets?

As soon as A.I. group(s) has been requested as reinforcement(s) the waypoints ( placed in the editor ) will be unlocked.

This means at this point A.I. group(s) will not follow their defined editor placed waypoints anymore.

As soon as A.I. group(s) return to I.d.l.e. state ( after the 3 minutes without enemy contact ) A.I. group(s) will follow their editor placed waypoints again.

 

Quote

BTW, those usage stats I see in your vids (top left corner), did you create it yourself?! It seems really nice and handy! 

Agree!! :icon5:

Nope. You can get them by using a combination of M.S.I. Afterburner and Rivatuner Statistics Server.

  • Like 1
  • Thanks 2

Share this post


Link to post
Share on other sites

@snkman

One piece of feedback from my testing is that TCL didn’t jump on empty statics (in this case a mortar and MG).  I assume they will - it’s just in this particular situation that response didn’t trigger ie %chance.

 

I must also add that Units worked well with the TCL triggers/variables and MCC GAIA’s macro routing. Only found one issue - the BLUEFOR squad that was protecting my flank suddenly rushed into a firefight (in the video above). I could only stop this with TCL_Disabled, which presumably kills TCL completely. It would be interesting to have a variable that kept all TCL functions (cover, movement) but didn’t drive the specified unit into the nearest battle (ie their job is to cover a flank). [edit: I don’t think this was the All AI init]

Share this post


Link to post
Share on other sites
21:15:56 Error in expression <Variable "TCL_Take_Cover");

if (time > _time) then
{
_time = (time + 15);

if (>
21:15:56   Error position: <_time) then
{
_time = (time + 15);

if (>
21:15:56   Error Undefined variable in expression: _time
21:15:56 File TCL_System\TCL\TCL_Feature_F\TCL_Take_Cover_F.sqf, line 73

@snkman

Hi, just wanted to leave this here. I noticed it in my rpt file from last night. This showed quite often so I hope it could help you.

Share this post


Link to post
Share on other sites

@Machiya

Quote

TCL didn’t jump on empty statics (in this case a mortar and MG).

They does but the A.I. group needs at least 3 alive unit(s) and need to be within 100 meters to the static weapon.

 

Quote

It would be interesting to have a variable that kept all TCL functions (cover, movement) but didn’t drive the specified unit into the nearest battle

So they should use all A.I. combat features but stay where they are right?

Hmm... Guess this shouldn't be much of a problem to get it working like this.

 

@Muecke

Thanks already aware of it.

Guess happend while spawned A.I. was used right?

Share this post


Link to post
Share on other sites
24 minutes ago, snkman said:

@Muecke

Thanks already aware of it.

Guess happend while spawned A.I. was used right?

I can´t say when it appears but yes I use a ton of spawning AI in my mission.

I have your mod running just server side without using userconfig folder. AI´s are about 200 independently on battlefield.

 

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

×