View Issue Details

IDProjectCategoryView StatusLast Update
0002866The Dark ModAIpublic29.09.2011 19:28
Reportergrayman Assigned Tograyman  
PrioritynormalSeveritynormalReproducibilitysometimes
Status resolvedResolutionfixed 
Product VersionTDM 1.06 
Target VersionTDM 1.07Fixed in VersionTDM 1.07 
Summary0002866: AI don't close "shouldBeClosed" doors after searching near them
DescriptionWhen an AI that's been alerted by an open "shouldBeClosed" door finishes his search, he walks away w/o closing the door.
TagsNo tags attached.

Activities

grayman

grayman

29.09.2011 19:28

viewer   ~0004051

Last edited: 29.09.2011 19:42

Pause alert level decrease rate in Observant state when handling doors and elevators. Otherwise, if the alert level drops into Idle state while handling a door or elevator, that handling is terminated, which isn’t good.

In the interest of reducing stim processing for closed doors, moved the “is door closed” check when receiving a visual stim in front of the “can I see the door” check. Otherwise, a closed door will ping every AI w/in its radius (500) but the AI won't shut it down until it can see the door. A guard not patrolling will receive endless pings the way the code was.

If an AI spots a suspicious door, but another AI is already investigating it, don’t join in. Joining in can lead to congestion around the door as the AI search.

Don’t process a suspicious door stim if investigating. Either another AI will handle it, or you’ll see it again when you’re done searching.

If you're handling a door and you received a door stim, only respond to it if you're still approaching the door you're handling. Otherwise, forget about the suspicious door and finish handling the current door.

If the suspicious door is one you were already going to pass through, close it from the far side when done searching. Then continue on your way. Otherwise, divert from your patrol, search around the suspicious door, and when done, close it from the side you were on when first alerted.

Handle sliding doors.

Changed CBinaryFrobMover::GetRotationAxis() to recognize sliding doors.

rev. 4982:

ObservantState.cpp
State.cpp
SuspiciousState.cpp
HandleDoorTask.cpp
HandleDoorTask.h
Memory.cpp
Memory.h
BinaryFrobMover.cpp
BinaryFrobMover.h
FrobDoor.cpp
FrobDoor.h
entity.cpp
ai.cpp
player.cpp

Issue History

Date Modified Username Field Change
21.09.2011 19:54 grayman New Issue
21.09.2011 19:54 grayman Status new => assigned
21.09.2011 19:54 grayman Assigned To => grayman
29.09.2011 19:28 grayman Note Added: 0004051
29.09.2011 19:28 grayman Status assigned => resolved
29.09.2011 19:28 grayman Resolution open => fixed
29.09.2011 19:28 grayman Fixed in Version => TDM 1.07
29.09.2011 19:42 grayman Note Edited: 0004051