FloatWave, я нашёл ошибку в статье https://fall.pro-d.ru/eng/blog/2017/02/18/FloatWave/
Подвижность (Agility) не меняет Sneaking speed.
Она уменьшает вероятность нашуметь при подкрадывании.
BrainRipper, ответил пользователю:
FloatWave def agility_move_silently_factor(agility):
"""Returns speed factor.
Movement speed while moving silently depends on agility.
Parameters:
agility - Agility value.
"""
assert agility >= 1
if agility <= 3: return 1.3
if agility <= 6: return 1.2
if agility <= 8: return 1.1
if agility <= 12: return 1.0
if agility <= 15: return 0.95
if agility <= 18: return 0.90
if agility <= 19: return 0.85
if agility <= 20: return 0.80
if agility <= 21: return 0.78
if agility <= 22: return 0.76
if agility <= 23: return 0.75
if agility <= 24: return 0.74
if agility <= 25: return 0.73
return 0.73
В комментарии ошибка, так как параметр agility_move_silently_factor влияет на уровень шума, а не на скорость.
# calc audibility for this char
objects.set_attribute(char, "audibility_range_motionless", 0)
objects.set_attribute(char, "audibility_range_moving", 10) # max. distance how far this char can be heard
skill = objects.get_attribute(char, "sneak")
agility = objects.get_attribute(char, "agility")
if bodymode == "LIE":
audibility = 0.1
elif bodymode == "KNEEL":
audibility = 0.7
else:
audibility = 1.0
audibility *= skill_tables.sneak_detection_factor(skill)
audibility *= skill_tables.agility_move_silently_factor(agility)
objects.set_attribute(char, "audibility_chance", audibility) # chance to be heard when inside the audibility_range