Research:Common Terms

From OpenMW Wiki
Jump to navigation Jump to search


Formulae commonly used across multiple mechanics. It may be a good idea to factor these into their own functions to avoid code duplication.


fatigueTerm

with respect to an actor:

fatigueTerm = fFatigueBase - fFatigueMult * (1 - normalizedFatigue)
# where normalizedFatigue is a function of actor fatigue. empty fatigue bar -> 0.0, full fatigue bar -> 1.0
if maxFatigue == 0: normalizedFatigue = 1
else: normalizedFatigue = max(0, currentFatigue / maxFatigue)
# it is possible for normalizedFatigue to go over 1.0 when fatigue is fortified, it is not capped from above.

Note: fatigueTerm is normally 1.25 at full fatigue with default GMSTs.


normalizedEncumbrance

with respect to an actor:

if maxEncumbrance == 0:
    normalizedEncumbrance = 1
else:
    normalizedEncumbrance = currentEncumbrance / maxEncumbrance