Guard Hidden Sneak Detection Bonus?

Post » Sat Feb 19, 2011 11:56 am

I don't know what element, setting/AI package or otherwise, is the cause of this, and basically that is my question, so I need to describe the circumstance in order to ask the question.

First, I do have Reneer's Guard Overhaul, but this behavior happens with or without it loaded, and before it was EVER loaded, so that mod is not at fault. This behavior happens with a full vanilla setup, but is very hard to reproduce with a vanilla setup because the circumstance will virtually never occur at other vanilla settings.

I also have SM Combat Hide and Sneaking Detection Recalibrated loaded along with All Natural with a night time light level of absolutely 0 (zero), pitch black. These I'm almost completely certain are not the cause of the problem, but their adjustments allow for the circumstance to take place by making it dark, and making it possible to evade combat after it starts by sneaking away.

The problem scenario: I have 100 sneak, and 100 agility. There is a guard, modded only so that he is level 30 and no other changes, who has a sneak skill of 8 and an agility of 71. I attack this guard. After I resist arrest, I run very fast immediately away probably a good 100 feet if it were real space, and not in a straight line either. It is PITCH black where I am. The guard runs directly toward me and attacks me. Now, with vanilla settings, this is not surprising however consider this:

I take a non-guard NPC. I place him in the same area where I fought the guard, but kill all the guards first so they don't interfere. This npc is level 30, with an agility of 71 and a sneak skill of 8. I attack this NPC and run away. Due to the settings from the other mods, the NPC looses me, begins to search for me, and then gives up, as intended by those mods.

Because I do now have RGO installed, I was able to test if this difference in guards and regular NPCs is global, or only related to combat/the guard searching for you. RGO makes guards follow you if you are sneaking or have your weapon drawn even if you have not yet commuted a crime. If the guard sees me, they follow. If they don't, they don't. I can be standing in the pitch black just outside their torchlight, and they don't budge. If, however, I have attacked them, and managed to escape them (by running MUCH farther away than in the original scenario and around corners) and then sneak up behind them again, they still don't come after me, but their HEADS still follow my every move. Non guard NPCs do NOT do this after loosing track of the PC in the dark, only guards have exhibited this behavior.

But, I have no idea how in the world to adjust this behavior for guards. :brokencomputer: :brokencomputer: :brokencomputer: Please point me in the right direction.
User avatar
Dorian Cozens
 
Posts: 3398
Joined: Sat May 26, 2007 9:47 am

Post » Sat Feb 19, 2011 11:40 am

Since the above is very long, here is the abridged version, read above if you would like to help me but need more detail:

Based on my in-game testing, guards seem to have a bonus to sneak detection or some other mechanism that allows them to have some level of awareness of the PCs location even when all lighting and skill level conditions should make it completely impossible for them to. Other NPCs with the exact same stats in the same situation with my current setup lose track of the PC, while guards continue to know where the PC is and attack. Please help me to determine what values, scripts, packages or other could be the cause of guards uniquely having this feature.
User avatar
maria Dwyer
 
Posts: 3422
Joined: Sat Jan 27, 2007 11:24 am

Post » Sat Feb 19, 2011 9:40 am

Guards to me seem to have a lot of their own hard code. I just recently had an issue with PushActorAway and the guards.

Have you tried setting their Actor Value "Blindness" to 50 or even 100?
User avatar
Ezekiel Macallister
 
Posts: 3493
Joined: Fri Jun 22, 2007 12:08 pm

Post » Sat Feb 19, 2011 3:20 am

Guards to me seem to have a lot of their own hard code. I just recently had an issue with PushActorAway and the guards.

Have you tried setting their Actor Value "Blindness" to 50 or even 100?


Thanks for the suggestion, (love the archery mods btw). That's annoying that guards have hidden values like that. I tried to mod the blindness on the guards I was testing from the console, but it seemed to have no effect at all. Even if I stood still. Its weird, but as I was testing blindness, I found the guards can still lose the PC if they lose LOS such as around a rock or even a small tree, but it seems that as long as they have LOS, they have a much higher capacity to "see" in the pitch darkness as compared to other NPCs.

If blindness could work, I'd need to script it to only work for exterior cells and only between 10:00pm and 5:30/6:00 (not sure) am because it would be pretty bad if all the guards were actually blind when the sun was up! I wish that it did work in my test though, because giving them a handicap to compensate for a super-ability would be an acceptable compromise as long as it was time-sensitive to the darkness. (No sense in worrying if guards can find me in dungeons, because... how often does that happen anyway?). But again, it didn't seem to do anything. Any other ideas?

I had one suddenly, but it might be a pipe dream... can a script make an NPC change to "not be a guard anymore" without reloading the NPC? So, once a guard enters combat with a PC they are "unflagged" as being a guard? Then, they could also be given a token that makes it so that if the player surrenders to them in combat or if the player has gone far enough away to stop processing the NPC and then the next time the NPC is loaded, they are "reflagged" as a guard? I wouldn't know how to "unflag as a guard", so basically I'm asking if that is even possible via script.
User avatar
JUDY FIGHTS
 
Posts: 3420
Joined: Fri Jun 23, 2006 4:25 am

Post » Fri Feb 18, 2011 10:25 pm

I think you would be asking for a world of trouble doing that. I admit I had the same idea for one of my mods to prevent the Guard from getting involved in my sparing with a trainer outside and in their view. But the bottom line is if that was "doable" without a lot of head ache to go with it then Reneer (of Reneer's Guard Overhaul ) would not have done SOOOOOOO much intricate scripting to control the guards. In fact he talked me out of doing that in my mod and gave me a very clever way to stop the guards from starting combat on the player when the player and the trainer NPC was sparing.

I have one other idea, do the same thing that the no psychic guards mods do by reseting the guard detection distance (a game setting) dynamically.
There is also a head tracking distance game setting as well that you could turn on and off with out a lot of bad repercussions as long as you only did it at a particular time and only when guards were near as this setting effects all the actors.

Well this is the game setting I was thinking of but the wiki description is not exactly as I remember it:

ICrimeAlarmRecDistance

So this may not help.

However here is a bunch of head tracking settings that you will need to experiment with to get the one you need. You only want to change ONE of them if you can or as few as possible to get the effect you want:

fAIBestHeadTrackDistance

fAIInteriorHeadTrackMult

fAIMaxHeadTrackDistance <----- probably the one you want.

fAIMaxHeadTrackDistanceFromPC


Also.... Did you try reseting the guards responsibility?

I have one last suggestion but you are not going to like it. Move a wall nif in sync with the player to block the LOS but make the nif with an invisible texture. To the player the wall will be invisible, but the game will think it blocks the LOS. It may even be possible to remove the havok so arrows can still shoot thru it. You can use a modified version of my script in my mod Hammer-blade to control the wall.

In that mod I have a shield that is placed between the player and the opponent in the same manner you would need to do. This would be the last resort however as there must be a way to do what you need with settings or actor scripting.
User avatar
Louise Lowe
 
Posts: 3262
Joined: Fri Jul 28, 2006 9:08 am

Post » Sat Feb 19, 2011 8:57 am

Thank you again for helping me. The head tracking seems to go away if the value is lowered, which is actually odd because it goes away such that even if you get really close behind them they no longer do it, if the value is edited at all. Well, that's one problem solved.

The guards seeing through the dark problem seems to be unrelated to their head tracking unfortunately and persists. The invisible wall for LOS may be the only way to do this because I uncapped sneak and set my sneak to the maximum the uncapper allows, and my agility to the maximum it is allowed, and set the guard to 0 on both accounts and set blindness on the guard to 100... and the guard can still see you no matter how far away you are in the pitch dark if there is LOS. The only thing that prevents a guard from being able to see you once you enter combat with that guard is loss of LOS.

I guess it'd need to be that invisible wall idea, but script it so that it triggers when the light levels are below a certain amount on the player and the player is a certain distance away from the detector. I sure wish I was better at scripting in OB lol. I was so hoping that there'd be a setting like fGuardDetectionBonus (with a different, cryptic name) but I guess I'm out of luck.
User avatar
kelly thomson
 
Posts: 3380
Joined: Thu Jun 22, 2006 12:18 pm

Post » Sat Feb 19, 2011 7:21 am

An update! Fixed! Thank you for helping me with some of this spooky, and thank you saebel and Strategy Master, if you ever read this, for the Sneaking Detection Recalibrated mod and SM Combat hide mod. The answer was actually in those mods, and apparently I won't have to learn to write extremely complex scripts after all :P. I turned on the detection debugging text that comes with Sneaking Detection Recalibrated and found out that guards never fall below +4 detection for very long after entering combat no matter how dark it is and how quiet you are! So, it wasn't some horrible thing like they have infinite detection that made them never fall below say, 100, but they DO have a vastly increased detection that doesn't seem to be able to be resolved. So, instead of modifying the guards, I made the value in SM Combat Hide ini for iAICombatMinDetection to 4 (vanilla is -50).

Now, guards lose track of the player at reasonable distance in total darkness. This of course puts all other NPCs at a disadvantage, but to offset this, I have increased the multiplier for light levels increasing the detection factor significantly (still playing around to get the exact right balance of values). All of this together basically are working to make it necessary to use the actual darkness around you to sneak, and you can no longer sneak directly in front of an NPC in any amount of light no matter how good your sneak is. So, its not for everyone, but I think with all these settings, shadows and darkness are required to sneak effectively (unless you have invisibility of course), and now guards no longer can see in the dark! Thank you all for your help and these great tools.
User avatar
Cathrine Jack
 
Posts: 3329
Joined: Sat Dec 02, 2006 1:29 am

Post » Sat Feb 19, 2011 7:40 am

I had one suddenly, but it might be a pipe dream... can a script make an NPC change to "not be a guard anymore" without reloading the NPC? So, once a guard enters combat with a PC they are "unflagged" as being a guard? Then, they could also be given a token that makes it so that if the player surrenders to them in combat or if the player has gone far enough away to stop processing the NPC and then the next time the NPC is loaded, they are "reflagged" as a guard? I wouldn't know how to "unflag as a guard", so basically I'm asking if that is even possible via script.
It is possible. RGO (in versions 2.5 and greater) actually does exactly this thing to avoid lots of glitches / bugs. All that is necessary is to change the Guard's class to a class that isn't flagged as a Guard, and then change it back under certain conditions.

The problem you are seeing is, I think, partially related to Guards themselves. RGO gets around issues like this by simply flagging Guards as not-Guards if they are outside a given distance from the player, no matter if the player is detected by the Guards or not.
User avatar
Lady Shocka
 
Posts: 3452
Joined: Mon Aug 21, 2006 10:59 pm

Post » Fri Feb 18, 2011 10:57 pm

Hey have you seen this:

http://cs.elderscrolls.com/constwiki/index.php/Detection


This is a TRUCK LOAD of information on the detection process!

Also I knew of this command but it "might" be heavy handed. However you need to try it and see what happens:

OBSE command:

SetDetectionState - sets the detection state of the calling actor toward the specified actor reference. Note that Oblivion recalculates this value frequently for actors in high process; the function's main purpose is to reset the detection state of unconscious actors. (nothing) reference.SetDetectionState actor:ref detection state:int


So try this in a token on the guards, give them the token when you do not what the player to be seen. Note that you NEVER remove a token right after giving it to them as this can CTD. Wait a few frames then remove.:

ref MEbegin gamemodeif me == 0set me to getcontainerreturnendifME.SetDetectionState PlayerRef 1end


Do not do it this way:


ref MEbegin gamemodeif me == 0set me to getcontainerreturnendifif ME.GetDetectionLevel playerref >1 Me.SetDetectionState PlayerRef 1endifend


as this will result in the guard making wried comments about seeing you and not seeing you constantly.


Anyway you should have a LOT of different ways to try now, good luck!
User avatar
M!KkI
 
Posts: 3401
Joined: Sun Jul 16, 2006 7:50 am

Post » Sat Feb 19, 2011 11:58 am

An update! Fixed! Thank you for helping me with some of this spooky, and thank you saebel and Strategy Master, if you ever read this, for the Sneaking Detection Recalibrated mod and SM Combat hide mod. The answer was actually in those mods, and apparently I won't have to learn to write extremely complex scripts after all :P. I turned on the detection debugging text that comes with Sneaking Detection Recalibrated and found out that guards never fall below +4 detection for very long after entering combat no matter how dark it is and how quiet you are! So, it wasn't some horrible thing like they have infinite detection that made them never fall below say, 100, but they DO have a vastly increased detection that doesn't seem to be able to be resolved. So, instead of modifying the guards, I made the value in SM Combat Hide ini for iAICombatMinDetection to 4 (vanilla is -50).

Now, guards lose track of the player at reasonable distance in total darkness. This of course puts all other NPCs at a disadvantage, but to offset this, I have increased the multiplier for light levels increasing the detection factor significantly (still playing around to get the exact right balance of values). All of this together basically are working to make it necessary to use the actual darkness around you to sneak, and you can no longer sneak directly in front of an NPC in any amount of light no matter how good your sneak is. So, its not for everyone, but I think with all these settings, shadows and darkness are required to sneak effectively (unless you have invisibility of course), and now guards no longer can see in the dark! Thank you all for your help and these great tools.


This is good information. I might be able to add an option that can adapt all of these things accordingly. Something like vLessPersistentGuards.

The easiest fix would be to boost the base detection level and all the minimums by the same amount. For instance +60 to everything - all three detection minimums + the base chance to detect. That way it affects all NPCs equally without having to mess around with the other settings. I'll take a look at this when I have time.
User avatar
Veronica Flores
 
Posts: 3308
Joined: Mon Sep 11, 2006 5:26 pm


Return to IV - Oblivion