Skyrim Special Edition
0 of 0

File information

Last updated

Original upload

Created by

powerofthree

Uploaded by

powerofthree

Virus scan

Safe to use

About this mod

An SKSE plugin that can be used to add spells/leveled spells/perks/items/leveled items/shouts/packages/outfits to every NPC in the game, using config files.

Requirements
Permissions and credits
Changelogs
SPELL PERK ITEM DISTRIBUTOR

Requirements 

SKSE64
Skyrim SE 1.5.39 onwards
meh's Address Library for SKSE Plugins


Changelog 
Spoiler:  
Show

Description

A SKSE utility plugin that allows modders to add spells/perks/items/shouts/packages/outfits to every NPC actorbase in the game, at startup.

How To Use

Note:  konkeranto has graciously made xEdit scripts that automate all of this, check it out here : 
Spell Perk Item Distributor xEdit Scripts


Distributed records should be written to an ini file containing the suffix "_DISTR", in the Data folder (for example, MyMod_DISTR.ini).
They should follow this format:

Spell= FormID - esp/esm/esl | string | filter formIDs | min/max actorLevel , skill(min/max) | gender | NONE  | chance
Perk = FormID - esp/esm/esl | string | filter formIDs | min/max actorLevel , skill(min/max) | gender | NONE      | chance
Item = FormID - esp/esm/esl | string | filter formIDs | min/max actorLevel , skill(min/max) | gender | itemCount | chance
Shout= FormID - esp/esm/esl | string | filter formIDs | min/max actorLevel , skill(min/max) | gender | NONE  | chance
LevSpell = FormID - esp/esm/esl | string | filter formIDs | min/max actorLevel , skill(min/max) | gender | NONE      | chance
Package  = FormID - esp/esm/esl | string | filter formIDs | min/max actorLevel , skill(min/max) | gender | NONE      | chance
Outfit   = FormID - esp/esm/esl | string | filter formIDs | min/max actorLevel , skill(min/max) | gender | NONE      | chance

  • FormID is the FormID of the spell/perk/item with the first two load order digits removed (eg. 0x00012345)
  • esp/esm/esl is the name of the mod or base game esm containing the record (eg. Skyrim.esm or MyMod.esp)

Filtering

Filtering is done using keyword/name strings, faction/classes/combat styles/race formIDs, actor level and gender.  FormIDs will override keywords. Filters that you're not using can be marked as NONE or left blank.

  • String are either keyword strings  (eg. ActorTypeNPC , ActorTypeCreature ), or actorbase names (Imperial Soldier, Delphine) . Multiple strings should be separated using a comma.  All keyword strings and names (vanilla and modded) are supported.

  • Filter formIDs are formIDs  of factions/classes/combat styles/races/outfits (eg. 0x01012345). Load order digits must be present (ie. it'll work out of the box for vanilla records but modded ones should be specific to the user's own load order. Multiple entries should be separated using a comma.

  • Actor Level is minimum/maximum actor level. Records will be distributed to NPCs with levels within this range.

  • Skill Level (OneHanded, Lockpicking, ect) range from 0 - 17, followed by the min and max Skill Level required. Eg. for Destruction skill level 50 - 100, it's 14(50/100)

List of Skills
Spoiler:  
Show


  • Gender - M/F or 0/1

  • Chance - only works on non-unique actors. Value is from 0-100, default chance is 100 if left blank or NONE. Caution - NPCs may not have the same records they last did when starting a new play session!

  • Exclusions - you can exclude certain keywords/names/formids using NOT (eg. NOT Serana | NOT 0x12345)
Items

You can add almost any item, including but not limited to weapons, misc objects, armor, ingredients, potions, soul gems, actors....
NPCs that already have the same item will not be affected.

Leveled Items are included under Item.

  • itemCount is the amount of items that should be added.

Packages

Packages are added to the top of the actorbase package stack, so they will probably take priority over everything else, excluding quest alias and scene packages.

Examples

;this will add 3000 gold to everyone except Nazeem
Item = 0x0000000F - Skyrim.esm | ActorTypeNPC , NOT Nazeem | NONE | NONE | NONE | 3000 

;this has a 50% chance to add a perk from test.esp to all bandits and skeletons
Perk = 0x0009DE80 - test.esp | NONE | 0x0001BCC0 , 0x0002BE39 | NONE | NONE | NONE | 50

;this will add Flames to all female NPCs between actor levels 25 and 50
Spell = 0x00012FCD - Skyrim.esm | NONE | NONE | 25/50 | F 

;this will add Flames to all male NPCs who have a minimum Destruction skill of 10 
Spell = 0x00012FCD - Skyrim.esm | NONE | NONE | 14(10) | M 

;this will add Unrelenting Force to all NPCs
Shout = 0x00013E07 - Skyrim.esm| ActorTypeNPC 

Notes

Check po3_SpellPerkItemDistributor.log file in My Games/Skyrim Special Edition/SKSE, for more information about the process, including how many NPCs the spells/perks/items were added to.

Installation

  • Install as normal with a mod manager. 

Credits

  • Ryan (SniffleMan) for CommonLibSSE
  • SimpleINI for INI code and directory access