Feature #26264

Make AI step over low fences and walls

Added by kraze over 3 years ago. Updated about 2 years ago.

Status:Assigned Start date:11/08/2011
Priority:Normal Due date:
Assignee:Dwarden % Done:

0%

Category:AI Issues
Target version:Upcoming version
Affected ArmA II version: First affected ArmA II version:Please select...
Reproduced by another DH user:No Single / Multi Player?:
I am using some Mods:No BIForumURL:
I am using: NGUrl:
Reproducible for you:No WIKIurl:
Related to content of DLC:

Description

Now that the issue with them crawling through holes was fixed it's time for the next step.

There's no point in crawling under a low fence like that Chernarussian one or walk around a low stone wall present on almost all maps. Stepping over will be much faster.

Repro is "AIThroughFence.Chernarus.rar" from http://dev-heaven.net/issues/25348

As I understand AI checks "clearance height" of the specific object - so why not implement a code that will check if the fence/wall is low enough to step over it and give it a higher priority over the "crawl under" script?


Related issues

related to ARMA2 Community Issue Tracker - Bug #25348: Soldier walking/running instead of crawling through holes Closed 10/10/2011

History

Updated by Dwarden over 3 years ago

  • Category set to AI Issues
  • Status changed from New to Assigned
  • Assignee set to Dwarden
  • Target version set to Upcoming version
  • Affected ArmA II version deleted (Please select...)

interesting enough but question is the time / resource cost on AI decisions (CPU)

yet i agree it may improve the path finding of AI and result into more humanlike behaviour

Updated by Dwarden over 3 years ago

  • Assignee changed from Dwarden to Suma

let's ask if feasible

Updated by Suma over 3 years ago

Compared to "low clearance" crawling, there are some additional issues here to solve:

- identify if obstacle can be stepped over (i.e. if it is thin enough), and in which direction
- make sure pathfinding does not plan a path across the obstacle in the direction in which it cannot be stepped over
- identify which position and orientation should AI take before it steps over
- maneuver the AI into the position (would probably be done similar to maneuvering into a cover) and initiate the action
- consider combat situation, as the unit will be defenseless and easy target while stepping over. In combat it might perhaps sometimes be better to crawl under if possible?

This time it seems to me a "waypoint" based approach (like the one suggested in #25348) would probably be more reliable. Such approach is already used for AI climbing ladder or openning doors. Extending it to fences should be possible. What needs to be decided:

- should the system be fully automatic, or is some human intervention needed (mark waypoints for models)?
- is "stepping over" point for a model (fence segment) enough, or do we need more points, or perhaps a "continuous" solution (step over anywhere) is needed?

Updated by ruebe over 3 years ago

Suma wrote:

This time it seems to me a "waypoint" based approach (like the one suggested in #25348) would probably be more reliable. Such approach is already used for AI climbing ladder or openning doors. Extending it to fences should be possible.

I think this problem is really tied to objects/models (exactly like the ladder/door-problem), so this would be certainly the best option (low computation to detect these spots, yet totally reliable once taken care of in the model). Even if this means, that this can't be implemented for ArmA II/OA anymore.

- should the system be fully automatic, or is some human intervention needed (mark waypoints for models)?

No it should not be automatic. Modelers should define this in the same LOD where ladders and doors are marked with single points. This is not much effort for the modeller and I think this would render the lowest-cost solution later in game. Also I doubt that a fully automatic detection would be reliable enough. Even if it's possible to step over a small wall, this doesn't mean it's actually a good idea to do so; you could be on a higher floor and fall to death for example. And there are probably other situations. But a modeller can certainly decide, where such an action would be a good idea. (human intelligence for free if you will - models aren't dynamic/don't change)

- is "stepping over" point for a model (fence segment) enough, or do we need more points, or perhaps a "continuous" solution (step over anywhere) is needed?

If possible the most appropriate would be a line/two points defining that line, no? With a line you have the correct angle to approach that wall (~normal onto it which you don't have with a single point), and it works both ways/sides of the wall. Multiple such lines per model should be allowed.

Btw. speaking of such "action"-points in models, I believe there are more such actions that modellers should be able to define (places to take shelter, good fire/watch-positions or a system to define an ordered list of positions which are to be "manned" first, all with the goal that AI behaves more human/natural inside structures...)

Updated by OMAC over 3 years ago

ruebe's thoughts on the multiple-waypoint approach are sound, but seem to prohibit implementation in A2 CO since models would have to be modified to include the waypoints. Sounds great for A3. I think that a step-over solution should be developed for low stone walls that can't be crawled under, but whether an AI steps over or crawls under a fence or pipe is a judgement call based on the current combat situation, as Suma noted. Defaulting to crawl for the fences and oil pipes (as it will be in 86228) is a compromise that doesn't slow down movement that much, is believable and sufficiently realistic (especially if the crawls are 1-m longer to avoid standing up inside or behind the obstruction), defaults to caution (prone vs defenseless standing during step over), and requires no further work. In other words, once current "hole" bugs are fixed, A2 CO is good enough as it is right now in this regard.

But if kraze's and ruebe's ideas could be implemented in A2 and the code/concepts applied to A3 as well, then I'd say go for it big time. Especially for the oil pipes, stepping over seems more realistic than crawling under in most situations.

Updated by _William over 3 years ago

FYI, the corridor shooter guys at Sony/Guerrilla (Killzone 3) and Ubisoft France (upcoming Ghost Recon) have moved to volumes rather than waypoints to indicate special movement and abilities. (Killzone3 using it for lean&peek, standing/crouching cover, vaults, down jumps and climbing/descending). The benefit of volumes is that their planes not only indicate the firing/movement direction, but also indicate (with the other planes) which animations are applicable to enter/exit the action spot (from a specific direction).
Both teams have automated the annotation of scenery with these models, to reduce level designer efforts (and errors), with Killzone using the open-source Recast library. Automation for them is more relevant than for Arma* since they don't populate their worlds with pre-fab buildings.

Killzone's approach is published, Ubisoft's info is from the 2011 AI Gamedev 'shooter symposium' in Paris. If you have troubles finding this material, let me know.
I recommend taking a good look at volumes when deciding on the mechanism for the next Arma. For Arma2, any improvement is welcome.

Updated by Suma over 2 years ago

  • Assignee changed from Suma to Dwarden

Unassigning myself, as I will not be doing any more work on this.

Also available in: Atom PDF