About this mod
Use SPID to distribute a configurable speed rule for NPCs. Parameters of this rule can be change via a JSON file. each NPC will have a random speed respecting the rule.
- Requirements
- Permissions and credits
- Changelogs
- Donations
All NPC will have a unique speed and add immersion.
The calculation of the speed can defined by basic rules in a JSON file.
These values are loaded once when starting new game.
JSON file is in Data/SKSE/Plugins/NPCSpdDiv.json.
{
"float" :
{
"speed_bonus" : 5.0,
"male_speed_offset" : -2.0,
"female_speed_offset" : -3.0,
"child_speed_offset" : -1.0,
"elder_speed_offset" : -5.0,
"nord_speed_offset": 0.0,
"imperial_speed_offset": 0.0,
"breton_speed_offset": 0.0,
"redguard_speed_offset": 0.0,
"khajit_speed_offset": 2.0,
"orc_speed_offset": -0.5,
"argonian_speed_offset": 1.0,
"darkelf_speed_offset": 0.5,
"highelf_speed_offset": 0.5,
"woodelf_speed_offset": 1.5
}
}
speed_bonus is the value of the maximum randomized value
genre offsets are calculated on the base speed (ex: for female NPC the base speed is 100.0, after offset it will be 97.0
age offsets are added after genre offsets
race offsets are added after age offset
You can modify these values to meet your expectations !
final calculation will be : base speed + genre offset + age offset + rand(0, speed bonus)
in fact : randomized value is not totally random but is based on a Mask 0x8FFF modulo the speed_bonus value on the NPC's FormID.
This way, the final speed bonus will stay the same on New Game and Game reload for each NPC, unless the NPC change FormID (unlikely to happen).
NPCs speed will remain persistent among saves.
NOTA BENE : the mod affect directly the base speed for each NPC, equivalent from what you get via GetAV("speedmult") and set via SetBaseAV("speemult", speed)
So, all mechanism or other mods (if coded with ForceAV or modAV) that modify speed for NPC will not be affected and will work as expected.
Speed is assigned via an Active Magic Effect.
NPC distribution of the ability SPELL firing the MGEF is done via SPID. (NPCSpdDiv_DISTR.ini)
So you can also modify distribution via this file.
BZG.