I was making a monk build and managed to get to the point where I had enough sanctuary to not get hit by NPCs.
But when I reached the last quest of Bloodmoon (when you're yoinked by werewolves) I noticed that no matter how much sanctuary I had I could still get hit.
I looked around and tried playing with the equations mentioned in the uesp.net/wikiMorrowind:Combat#Chance_to_Hit.
I calculated that the maze werewolves' (BM_werewolf_maze1) chance to hit should be 162.5% so I tried reaching the equivalent evasion-chance using only agility (requiring 650 agility assuming max fatigue and 0 luck and Sanctuary) and 163 Sanctuary (with 0 Agi, Luck, and max Fatigue).
So I downloaded the OpenMW code and looked into it and it seems like sanctuary is capped at 100:
Code: Select all
evasion += std::min(100.f, mMagicEffects.get(ESM::MagicEffect::Sanctuary).getMagnitude());
Thanks for the help, amazing project this !
EDIT: When I now read through what I wrote I see it might be hard to see what I meant.
In the examples above, the agility method (650 agi) did cause the werewolf to miss 100% but with the sanctuary method (163) I still got hit, which makes sense when looking at the code and the effect being capped to 100.
I haven't been able to find any reference saying it should be capped to 100, but I haven't tried in the vanilla engine.