Code:
if receiver_human and not receiver_glot and (skill_power("weakness_lore", 2) > 0) then
kritProb = kritProb - skill_power("weakness_lore", 2)
if kritProbRnd < kritProb then
iskrit = true
else
is_weakness_lore = true
Doesn't the iskrit check also need to be changed to true? What it's doing right now is if a crit is registered, it checks again against a kritProb modified by sense weakness. If iskrit = false, then the game would only register a crit if the random number was LOWER than the initial but HIGHER than the modified kritProb. Or did I misunderstand how the kritProbRnd < kritProb inequality work?