×
Меню
Индекс

MSFD Изменяем и проверяем Навыки, Атрибуты и другие характеристики

Get, Set, and Mod Stats – общие замечания
GetStat               (returns float)
SetStat, var_float
ModStat, var_float
 
Set floatvar to ( Player->GetHealth )
Player->SetWillpower, 20
Player->ModHealth, floatvar
 
Также см. это:
GetStat, ModStat and SetStat: A concerned modder’s guide
мсфд 9 добавило значительное кол-во информации!
 
Это целое семейство функций, которые позволяют изменять параметры игрока и актера, установки ИИ и многое другое.
Просто замените Stat любым игровым параметром, атрибутом, установкой ИИ, сопротивлением болезни, репутацией, и т.д. (список смотри в Приложении).
Положительные значения прибавляются к текущему параметру, отрицательные значения вычитаются.
 
Функция GetStat возвращает значение типа float, содержащее текущее значение параметра (Stat) 
(Не максимальное или базовое “естественное” значение параметра для игрока, а его текущее значение, используемое в игре, например, оно может быть усилено магией или уменьшено проклятием).
Функция SetStat устанавливает заданное базовое и текущее значение параметра.
Функция ModStat добавляет (положительные значения добавляются к текущему значению параметра, отрицательные значения вычитаются) заданное значение сразу к базовому и текущему значению параметра (Stat).
Функция ModStat не может устанавливать атрибут больше его лимита (100), тогда как SetStat может.
 
Примечание: Это может быть неверно для таких необычных характеристик как сопротивления, которые могут быть отрицательными или превосходить 100.
 
Существует так много вещей, которые можно сделать, используя эти функции, что не очень полезно приводить пример.
Посмотрите скрипт Marksman Toggle в разделе Советов и Трюков в качестве хорошего примера.
Скрипт, приведенный в «Воскрешение мертвого актера» ниже также использует ModHealth, как и многие другие.
 
Эти команды имеют тысячи способов применения.
Они могут использоваться в проклятиях, специальных предметах, благословениях, для сбора информации о силе и слабости игрока, для изменения установок ИИ (делаем NPC агрессивным, после того как игрок его оскорбил, NPC не разговаривает с вами ночью и т.д.)
Также можно изменять навыки владения оружием и броней, чтобы NPC переключался между разными их видами.
 
В 8-ой редакции многие эти функции были отсортированы в соответствующие разделы (то есть по магии, бою и т.д.)
 

Get, Set, and Modify stats - general remarks
GetStat               (returns float)
SetStat, var_float
ModStat, var_float
 
Set floatvar to ( Player->GetHealth )
Player->SetWillpower, 20
Player->ModHealth, floatvar
 
This is really a whole family of functions that can alter player and Actor stats, AI settings and more. Replace Stat with any of the game stats, attributes, AI-settings, resistances, reputation, etc. (list see Appendix). Positive values are added to current stat, negative values subtracted.
GetStat returns a float value with the current value of Stat (Not the maximum or base "natural" value of that stat for the player, but what is currently used by the game, e.g. it could be boosted by magic or reduced by disease).
SetStat sets the stat's base and current value to the given value.
ModStat adds (positive values are added to current stat, negative values subtracted) the given value to both the base and current value of Stat. ModStat can not set an attribute beyond its natural limit (100) while SetStat can. Presumably the behavior is equivalent for other Stat's.
 
Note: This is not true of some of the more unusual stats like resistances, which can be negative (weakness) and aren't limited to 100 either.
 
There are so many things you can do with this set of functions that it is not very useful to provide a sample script. Take a look at the Marksman Toggle script in the Tips and Tricks section for a good example. The script given under "Resurrecting a dead Actor" below also uses ModHealth, as do many others.
 
These commands have a wealth of applications. They could be used for special items, curses, blessings, to gain information on the player’s strengths and weaknesses, and to change AI settings (making an Actor more aggressive after player has insulted him, making an NPC uncommunicative at night etc.). Another popular use is to change weapon stats to make NPC's switch their equipment.
 
In the 8th edition of this guide many of these functions have been sorted into the appropriate chapters (e.g. magic, combat, etc. )