View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000512 | The Dark Mod | AI | public | 13.01.2008 07:55 | 29.06.2009 08:05 |
Reporter | crispy | Assigned To | angua | ||
Priority | normal | Severity | normal | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | SVN | ||||
Fixed in Version | SVN | ||||
Summary | 0000512: AI run in circles when pathing to airborne locations | ||||
Description | One of the myriad weaknesses of the D3 pathing code is that sometimes a point hanging in the air will be treated as "reachable" by AAS, but will never be counted as "reached" by the AI code. This results in AI uninterruptably running around in a circle underneath that point. Currently they also "skate" a bit when they do this. Cause: AAS is marking certain airborne points as "reachable" when they're actually not. How to reproduce: This can be easily reproduced by attracting the attention of an AI and noclipping to somewhere above it. I've also encountered it in a non-artificial setting when jumping around between crates in test/pickpocket.map; if an AI sees the player while the player is airborne, and the player subsequently moves out of view, then the AI will try to path to the player's airborne location indefinitely. Forum discussion thread: http://modetwo.net/darkmod/index.php?showtopic=7155 | ||||
Additional Information | (This was not an issue in vanilla D3, probably because their AI was scripted to path to the player entity, not a previous location of the player entity. We can't do that because our AI is not supposed to know the player's position unless they can see him; pathing to the player entity would effectively give them "forbidden knowledge", and make them nigh-impossible to shake off.) I have a tentative patch to idAI::PointReachableAreaNum, which fixes this by doing a sanity check on the returned AAS area. If the goal position is too far above the floor of the AAS area, then it treats the point as unreachable. I won't apply this just yet. See forums. | ||||
Tags | No tags attached. | ||||
Reopening as per http://modetwo.net/darkmod/index.php?showtopic=7155 | |
Moved the height check to PathToGoal. Reachability checks in ChaseEnemyTask and CanHitEnemy didn't fit. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
13.01.2008 07:55 | crispy | New Issue | |
13.01.2008 07:55 | crispy | Status | new => assigned |
13.01.2008 07:55 | crispy | Assigned To | => crispy |
13.01.2008 07:56 | crispy | Description Updated | |
13.01.2008 07:57 | crispy | View Status | private => public |
20.01.2008 08:37 | crispy | Status | assigned => resolved |
20.01.2008 08:37 | crispy | Fixed in Version | => SVN |
20.01.2008 08:37 | crispy | Resolution | open => fixed |
01.05.2008 07:17 | greebo | Status | resolved => closed |
26.06.2008 11:31 | crispy | Status | closed => feedback |
26.06.2008 11:31 | crispy | Resolution | fixed => reopened |
26.06.2008 11:31 | crispy | Note Added: 0001372 | |
26.06.2008 11:31 | crispy | Status | feedback => assigned |
26.06.2008 18:29 | angua | Assigned To | crispy => angua |
26.06.2008 18:32 | angua | Status | assigned => resolved |
26.06.2008 18:32 | angua | Resolution | reopened => fixed |
26.06.2008 18:32 | angua | Note Added: 0001376 | |
29.06.2009 08:05 | greebo | Status | resolved => closed |