View Issue Details

IDProjectCategoryView StatusLast Update
0003993The Dark ModAIpublic16.09.2015 01:52
Reportergrayman Assigned Tograyman  
PrioritynormalSeveritynormalReproducibilityalways
Status resolvedResolutionfixed 
Product VersionTDM 2.03 
Target VersionTDM 2.04Fixed in VersionTDM 2.04 
Summary0003993: Running AI treadmills against sign in Lord Edgar's Bathhouse
DescriptionTDM contains code to keep AI from treadmilling against func_statics that aren't monsterclipped.

However, I observed a guard chasing me getting stuck against a sign with no m/c: func_static_306.

Find out why the guard doesn't extricate himself.
TagsNo tags attached.

Activities

grayman

grayman

16.09.2015 01:52

viewer   ~0007787

Two of the checks for “stuck were a) zero movement and b) bumping up against a func_static. When these occur, an AI would seek a way around the obstacle.

The LEB AI running against the sign and making no move to get around it was suffering from two problems: a) movement greater than zero, but less than 0.1 (he was running, and sliding slightly sideways against the sign as he ran), and b) not seeing the sign as a blocking entity (tactile entity = NULL) when in combat.

I eased the ‘zero movement’ requirement to ‘movement less than 0.1 units’ and allowed him to see the blocking entity in combat (even though he doesn’t treat it as a tactile alert).

This allowed him to bump up against the sign once, then run around it to get to me.

I checked 2.03 with the test map ‘bigroom’ which has large func_static packages the patrolling AI need to walk around. When they aren’t alerted, they navigate around the packages just fine, but when they enter combat mode, they can get stuck against one side of a package if I stand on the other side. (Same problem as the LEB AI and the sign.)

The bug fix allows the combat-mode AI in ‘bigroom’ to run around the packages and fight me.

Rev. 6537:

AI.cpp
AI.h
MovementSubsystem.cpp

Issue History

Date Modified Username Field Change
28.12.2014 02:18 grayman New Issue
28.12.2014 02:18 grayman Status new => assigned
28.12.2014 02:18 grayman Assigned To => grayman
16.09.2015 01:52 grayman Note Added: 0007787
16.09.2015 01:52 grayman Status assigned => resolved
16.09.2015 01:52 grayman Resolution open => fixed
16.09.2015 01:52 grayman Fixed in Version => TDM 2.04
16.09.2015 01:52 grayman Target Version => TDM 2.04