Some problems around that "character_detail 0" thing certainly do exist. I also had that in cam.cfg some weeks ago, and likewise couldn't figure out which mission or other incident caused it, although I have a strong suspicion about one mission. It's like Corona - sometimes, you just can't identify patient zero anymore if enough time has passed. That's what my last post was about: I just can't explain why Unkillable Cat's game setup has such a problem while mine has not.

Concerning the "Zombies ate my Hammerite" problem you described: While I did not observe exactly what you described so far, I know of similar situations. If an AI cannot understand who or what is causing the damage, the AI will likely do stupid things. (And I like to watch that AI die, then.)

For example, if a rather fast zombie or other undead approaches an archer face-to-face, the archer may ready an arrow and draw his bow, but then decide that the enemy is already too close. The archer will then put away the arrow again, walk some steps back, and then the sequence repeats. This may happen over and over again, until the enemy manages to successfully strike the archer, e.g. once the retreating archer's back hits a wall. Once the archer has taken enough damage to be motivated to flee, he will either do that and escape, or already be cornered too well and die from the ongoing enemy's attacks.

Similar examples of guard stupidity and Hammerite idiocy may occur when for some reason the attacker cannot see who is attacking him. Then there's the wondrous effect of fires on a human's skin, which the AIs often have no knowledge of, and so Garrett can lure an AI into a campfire ever and ever again until the AI is roasted well enough to either flee or perish.

Whether any of these problems are worth the hassle of fixing them as well as risking new problems because of changed AI behaviour, I cannot say. If these problems existed already at the dawn of time - in this case that's 1998, when Thief was first sold -, then I would be rather inclined to not do anything about it, since it might break other fragile setups some authors might have cleverly created at a time when they did work. "character_detail 0" all over again...