Jump to content

Recommended Posts

AI- complete stuck:

DEV-Build: 1.43.129935

YouTube:

https://www.youtube.com/watch?v=u2-t66v5cP8&feature=youtu.be [^]

Mission:

http://steamcommunity.com/sharedfiles/filedetails/?id=410243478 [^]

Bug-Tracker:

http://feedback.arma3.com/view.php?id=5443

WORKED WELL IN 1.40 STABLE

You seem to be using some mods. Of course, I don't know if they affect your AI but you should always test without mods at all.

Share this post


Link to post
Share on other sites
You seem to be using some mods. Of course, I don't know if they affect your AI but you should always test without mods at all.

It worked in 1.40 with the same MODs, so it need to Work in Patched version too ! Its also only Weapon and Radar Mod wich have nothing todo with the AI.

Share this post


Link to post
Share on other sites
It worked in 1.40 with the same MODs, so it need to Work in Patched version too ! Its also only Weapon and Radar Mod wich have nothing todo with the AI.

Still it would help alot more if you could find away to reproduce it in vanilla. I personally haven't been able to as of yet but I am keeping an eye out for it.

Share this post


Link to post
Share on other sites
It worked in 1.40 with the same MODs, so it need to Work in Patched version too ! Its also only Weapon and Radar Mod wich have nothing todo with the AI.

It's next to impossible for Bohemia to isolate and fix the issue when there's mods involved, basically it's the mod author's job to fix it if an update broke something when mods are being used.

Share this post


Link to post
Share on other sites
It worked in 1.40 with the same MODs, so it need to Work in Patched version too ! Its also only Weapon and Radar Mod wich have nothing todo with the AI.

You could be surprised that various seemingly non-AI-related mods indeed have "something" to do with the AI. It can be a config of a weapon, for example, that AI has to use. We appreciate your effort to debug stuff. Just to be sure, please, try to reproduce it without mods at all. Thanks, mate.

Share this post


Link to post
Share on other sites

"Improved: Commander-gunner communication (commander will assign targets faster)"

This is a worrying change as it will probably make crew-manned weapons even more overpowered then they currently are. For more info, see this ticket: http://feedback.arma3.com/view.php?id=22531

Share this post


Link to post
Share on other sites

The new suppression is good, but I must admit m not seeing what should be the most noticeable result of suppression, ai taking cover. Dispersion is a nice thing but imo the biggest clue to players that suppression is happening is that the units being suppressed take cover rapidly and keep their heads down. That's the point really.

So with April 8 rapidly approaching I think that such an important party of suppression needs to be talked about. And hopefully implemented though time is tight now. Or else it'll become like so many good things that the ai does in arma3, not noticeable enough to be appreciated.

Share this post


Link to post
Share on other sites
The new suppression is good, but I must admit m not seeing what should be the most noticeable result of suppression, ai taking cover. Dispersion is a nice thing but imo the biggest clue to players that suppression is happening is that the units being suppressed take cover rapidly and keep their heads down. That's the point really.

Im repeating the campaign and AI its much better: taking cover (in trees...:rolleyes:), use supression while others AI flank them, are more cautious don't give the body to the bullets; firefights last longer.

Keep the good work. (and the new sounds gives other dimension) :627:

Share this post


Link to post
Share on other sites
"Improved: Commander-gunner communication (commander will assign targets faster)"

This is a worrying change as it will probably make crew-manned weapons even more overpowered then they currently are. For more info, see this ticket: http://feedback.arma3.com/view.php?id=22531

The goal was not to make them more overpowered.

But for gunner that has no target assigned to take one from commander even if he is currently using autonomous weapon.

Share this post


Link to post
Share on other sites

Is there actually any reason why MBTs do not use their main cannons on infantry? That has bugged be since alpha.

Edit: I've just stumbled over this issue. Since we now have real suppression, is there any chance you could repair/implement this command, or remove it once and for all?

Edited by R3vo

Share this post


Link to post
Share on other sites
Had a company of AI move from one side of a town to the other...ended up with a bunch of AIs stuck, not moving and asking for the squadleaders' grid number, and still not moving

http://cloud-4.steamusercontent.com/ugc/715285422637313488/1D818C78513278992CC801769970518D890AD1DE/ (931 kB)

(town is Pyrgos)

i get the non moving AI quick often recently. they just dont respond randomly.

Share this post


Link to post
Share on other sites
i get the non moving AI quick often recently. they just dont respond randomly.

Same here (on stable)

Share this post


Link to post
Share on other sites
i get the non moving AI quick often recently. they just dont respond randomly.
Same here (on stable)

1.40?

Could you please try the 1.42 RC if it is any better?

Do you happen to have any repro's, please?

Share this post


Link to post
Share on other sites

Do you happen to have any repro's, please?

1. Open editor

2. Spawn about 10 groups side by side (same team)

3. Move them to the outskirts of a town

4. Give each group a waypoint to the other side of the town - http://cloud-4.steamusercontent.com/ugc/715285422637858440/8A1DE92710AF0A046ECA2906DBF362404C774BCA/ (548 kB)

5. Preview, go into splendid cam, and enable thermals so you can see the AI better and get a birds eye view of all of them

6. See some of them get stuck - http://cloud-4.steamusercontent.com/ugc/715285422637313488/1D818C78513278992CC801769970518D890AD1DE/ (931 kB)

Soz I'm too lazy to figure out how to publish missions and shiz

Share this post


Link to post
Share on other sites

Twisted, Variable, question; is that with addons that affect AI behaviour?

We have been getting the opposite since the last update, The AI often seem to have very quick reactions, they can whip round & shoot you. Also they seem to have the ability to spot players through grass trees & bushes the "they can see you when you cant see them" problem again.

Share this post


Link to post
Share on other sites

Regarding the dev branch regression of AI getting stuck around buildings which many users have been reporting lately - the problem has been identified and it will be addressed in tomorrow's dev branch. Thank you for your patience.

Share this post


Link to post
Share on other sites

If

1.40?

Could you please try the 1.42 RC if it is any better?

Do you happen to have any repro's, please?[/quote

Sure, it happens most often with ai that have just respawned back to base. No add on other than cba3

I'll try the rc tonight.

Share this post


Link to post
Share on other sites
1. Open editor

2. Spawn about 10 groups side by side (same team)

3. Move them to the outskirts of a town

4. Give each group a waypoint to the other side of the town - http://cloud-4.steamusercontent.com/ugc/715285422637858440/8A1DE92710AF0A046ECA2906DBF362404C774BCA/ (548 kB)

5. Preview, go into splendid cam, and enable thermals so you can see the AI better and get a birds eye view of all of them

6. See some of them get stuck - http://cloud-4.steamusercontent.com/ugc/715285422637313488/1D818C78513278992CC801769970518D890AD1DE/ (931 kB)

Soz I'm too lazy to figure out how to publish missions and shiz

Actually simple repro steps in the editor are great and often the fastest way to the problem! :)

Made them run across Kavala and it doesn't seem to me any worse than 1.40, on the contrary. Not saying it's ideal, far from it, still only the groups in AWARE and SAFE mode make it reliably to their destination.

Share this post


Link to post
Share on other sites
Regarding the dev branch regression of AI getting stuck around buildings which many users have been reporting lately - the problem has been identified and it will be addressed in tomorrow's dev branch. Thank you for your patience.

Only dev branch, not the 1.42 RC?

Share this post


Link to post
Share on other sites
Actually simple repro steps in the editor are great and often the fastest way to the problem! :)

OK, got another one for you. I have isolated a 100% repeatable way to get the AI stuck, relating to the join command and AI attempting to get healed. (Occurs in Stable 1.40.129533, Dev Build 1.43.129971, and Dev Build 1.43.130072)

While developing a large-scale assault mission, I kept getting stuck AIs (badly stuck, as in I've found no way to unstick them). After a couple days of digging, I've isolated the cause and determined the steps to repeat. I've also included some demo code to show it happening.

Steps to repeat:

  1. Create an AI group.
  2. Give the AI group a WP to get them moving.
  3. Damage the AI in the group via setDamage. (damaging all of them to 0.9 makes the problem quite apparent, though damaging smaller numbers of units will still result in stuck units by the end of the step sequence)
  4. Wait for the damaged units to ask to be healed. Once they ask for healing but before they are healed, create a new group and join all the units from the original group to the new group.
  5. Give the new AI group a WP to get them moving (only they won't move now).

At this point, any unit that wanted to be healed prior to the join is now completely stuck. They cannot move, they cannot even turn.

Apparently, these guys are stuck pretty bad. They will do things like respond verbally to commands but not carry out the orders (of course they won't move). They will not respond to doMove (even once healed). They will salute or sit down when ordered however. They will fire at enemies, but again they will not turn to face them.

I have tried everything in the book to unstick them, all to no avail:

  1. Tried healing them via setDamage 0. (They heal but they are still stuck. Tried healing them individually and all at once, same result)
  2. Tried healing them via in-game med pack. (They heal but they are still stuck. Tried healing individuals, then everyone in the group one by one, same result)
  3. Tried enableSimulation true (which I figured wouldn't work anyhow as they are still playing idle animations... still stuck)
  4. Tried forceSpeed -1.
  5. Tried regrouping them again after a delay (creating new group, then joining all the stuck units into the new group).
  6. Tried disabling various AI components via disableAI (including "FSM"), then re-enabling via enableAI.
  7. Tried disabling various AI components via disableAI (including "FSM"), then regrouping (per #5), then re-enabling via enableAI.

Again, nothing I've tried unsticks them. I suspect the FSM is bogging out somewhere. (Curious whether disableAI "FSM" followed by enableAI "FSM", kills and restarts the unit's FSM routine? Seems not?)

I'm aware under normal circumstances, units in the middle of healing undergoing a join is pretty rare, but apparently it is happening quite frequently during my assault mission, in which I consolidate groups (via join) when they take losses... which happens to be the very time surviving units are most likely to be damaged and in the middle of healing. I imagine other mission creators using join will run into this "healing + join = stuck" issue at some point as well.

Also, I have no idea if this AI stuck issue is related to the "buildings" one mentioned, but I suspect not.

Here's the code (includes getting the AI units stuck and the attempts at unsticking them):

// Mission setup:
// In editor, place one or more AI groups, and give them move waypoints.
// Make the player be a subordinate in one of the AI groups.
// Create an object nearby (I used a car) and name it BUB_Car.
// Run and observe. Enjoy!

BUB_Regroup = {
private ["_group","_resetFleeing","_newFleeVal","_newGroup"];

_group = _this select 0;
_resetFleeing = false;
_newFleeVal = 0.5;
if ((count _this) > 1) then { _resetFleeing = _this select 1 }; // Optional
if ((count _this) > 2) then { _fleeingValue = _this select 2 }; // Optional

_newGroup = createGroup (side _group);
if (_resetFleeing) then { _newGroup allowFleeing 0 };
(units _group) joinSilent _newGroup;
if (_resetFleeing) then { _newGroup allowFleeing _newFleeVal };
deleteGroup _group;

_newGroup
};

_groups = allGroups;

// Damage Everyone
hint "Damage Everyone!";
{
_group = _x;
_units = units _group;
{
	_unit = _x;
	_unit setDamage 0.9;
} foreach (_units - [player]);
} foreach _groups;

// The timing of this sleep is important.  Allow enough time for units to recognize they are damaged, and ask for healing
sleep 16;

hint "Regroup Everyone and Apply Waypoints!";

// Regroup Everyone
_newGroups = [];
{
_group = _x;
_newGroup = [_group] call BUB_Regroup;
_newGroups pushBack _newGroup;
} foreach _groups;
_groups = _newGroups;

//["_groups"] call MRU_Hint;
// Regroup Successful

// Give WPs to all groups
_obj = BUB_Car;
_wpPos = position _obj;
{
_group = _x;
_wp = _group addWaypoint [_wpPos, 0];
_wp setWaypointType "MOVE";
} foreach _groups;

sleep 3;

hint "AI are now all Stuck!";

/************************************************************************/
// At this point, all AIs are STUCK!!!
/************************************************************************/

// [Comment out from here on to disable Unsticking attempts (to observe stuck AI-unit behaviour)]: /*


// Attempts to unstick AI
// [increase delays if desired to observe each attempt was unsuccessful...]
// [Also, isolate various methods via comment to prove each attempt was unsuccessful in isolation...]

sleep 30;

// TEST 1: setDamage, enableSimulation, forceSpeed

hint "TEST 1: Try unsticking them via setDamage 0, enableSimulation true, and forceSpeed -1 ...";

{
_group = _x;
_units = units _group;
{
	_unit = _x;
	_unit setDamage 0;
	_unit enableSimulation true;
	_unit forceSpeed -1;
} foreach (_units - [player]);
} foreach _groups;

hint "TEST 1: Tried unsticking them via setDamage 0, enableSimulation true, and forceSpeed -1 ... Still stuck!";

sleep 10;

// TEST 2: Regroup

hint "TEST 2: Try unsticking them via regroup and apply new WP ...";

// Regroup Everyone
_newGroups = [];
{
_group = _x;
_newGroup = [_group] call BUB_Regroup;
_newGroups pushBack _newGroup;
} foreach _groups;
_groups = _newGroups;

// Give WPs to all groups
_obj = BUB_Car;
_wpPos = position _obj;
{
_group = _x;
_wp = _group addWaypoint [_wpPos, 0];
_wp setWaypointType "MOVE";
} foreach _groups;

hint "TEST 2: Tried unsticking them via regroup and apply new WP ... Still stuck!";

sleep 10;

// TEST 3: disableAI, enableAI

hint "TEST 3: Try unsticking them via disableAI, enableAI ...";

// Disable AI
_componentsAI = ["TARGET","AUTOTARGET","MOVE","ANIM","FSM","AIMINGERROR","SUPPRESSION"];
{
_group = _x;
_units = units _group;
{
	_unit = _x;
	{_unit disableAI _x} foreach _componentsAI;
} foreach (_units - [player]);
} foreach _groups;

sleep 3;

// Enable AI
{
_group = _x;
_units = units _group;
{
	_unit = _x;
	{_unit enableAI _x} foreach _componentsAI;
} foreach (_units - [player]);
} foreach _groups;

hint "TEST 3: Tried unsticking them via disableAI, enableAI ... Still stuck!";

sleep 10;

// TEST 4: disableAI, ReGroup, enableAI

hint "TEST 4: Try unsticking them via disableAI, regroup between, enableAI ...";

// Disable AI
{
_group = _x;
_units = units _group;
{
	_unit = _x;
	{_unit disableAI _x} foreach _componentsAI;
} foreach (_units - [player]);
} foreach _groups;

sleep 3;

// Regroup Everyone
_newGroups = [];
{
_group = _x;
_newGroup = [_group] call BUB_Regroup;
_newGroups pushBack _newGroup;
} foreach _groups;
_groups = _newGroups;

// Give WPs to all groups
_obj = BUB_Car;
_wpPos = position _obj;
{
_group = _x;
_wp = _group addWaypoint [_wpPos, 0];
_wp setWaypointType "MOVE";
} foreach _groups;

sleep 3;

// Enable AI
{
_group = _x;
_units = units _group;
{
	_unit = _x;
	{_unit enableAI _x} foreach _componentsAI;
} foreach (_units - [player]);
} foreach _groups;

hint "TEST 4: Tried unsticking them via disableAI, regroup between, enableAI ... Still stuck!";

Anyhow cheers, hope this helps and hope you are able to resolve this. :)

Share this post


Link to post
Share on other sites
OK, got another one for you. I have isolated a 100% repeatable way to get the AI stuck, relating to the join command and AI attempting to get healed.

....

Nice! :thumbs-up:

Successfully reproduced. Thanks!

Share this post


Link to post
Share on other sites

No problem. :)

While you're in there looking in the join related code, quick question for you:

Should we consider "side-spanning" joins something that is officially supported? By side-spanning join, I mean to say joining units from a group of one side, to a group of a different side. This is/would be extremely useful in many scenarios, such as having groups of resistance fighters "change alliances" based on mission conditions, etc. If it is suppose to be officially supported, I may be able to dig up an issue or two (highly detailed like this one) that you might be interested in looking into.

In any event, thanks to you and all involved for all the excellent AI improvements lately. They are really making a big impact!

Share this post


Link to post
Share on other sites
There are still situations where AI in combat stays in cover for too long and may look like it's stuck
- AI DEV LOG

Has the ability to give Player an 'All Clear' overiding command ever been examined? Seems like it wouldn't be THAT difficult to basically shut all auto-danger FSM down and would really give the player the feeling he was in command again.

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

×