fSleepRestMod - модификатор вероятности быть разбуженным в зависимости от количества часов отдыха
Значение по умолчанию: 0.3
Чем выше, тем больше шанс, вне зависимости от времени сна.
Похоже значение fSleepRestMod работает в связке с fSleepRandMod.
Т.е. если fSleepRestMod = 0, но fSleepRandMod =1, ничего не происходит.
И если fSleepRestMod = 1, но fSleepRandMod =0, тоже ничего не происходит.
А если fSleepRestMod = 1 и fSleepRandMod =1, то отдых будет прерван всякий раз при отдыхе на улице, вне зависимости от кол-ва выбранных часов!
Код из OpenMW в котором исправлена ошибка с interruptingCreatures.
if resting in an exterior cell and the region has a sleep creature leveled list:
x = roll hoursRested
y = fSleepRandMod * hoursRested
if x < y:
interruptAtHoursRemaining = int(fSleepRestMod * hoursRested)
interruptingCreatures = max(1, roll iNumberCreatures)
sleep will only last (hoursRested - interruptAtHoursRemaining) hours
unless interruptAtHoursRemaining == 0, then no interruption occurs # contains bug
sleep will be interrupted with 1 creature from the region leveled list # contains bug