Create an account

Spell Perk Item Distributor 2.0  

Upload: 18 Jun 2022, 18:37
Created by: powerofthree [X]
Uploaded by: Aqxaro
Spell Perk Item Distributor 2.0

Requires:

F4SE
Address Library for F4SE Plugins
Baka Framework

A F4SE plugin that can be used to add spells/perks/items and more, to every NPC in the game, using config files.

How To Use

List of distributable types
Spell
Perk
Item
LevSpell
Package
Outfit
Keyword
DeathItem
Faction

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 general format:

Spell = formID~esp(OR)editorID|strings|formIDs(OR)editorIDs|min/max level|gender/unique|NONE|chance

Items/DeathItems have their own specialized format:

Item = formID~esp|strings|formIDs(OR)editorIDs|min/max level|gender/unique|itemCount|chance

Main

  • FormID is the formID of the distributable record with leading zero digits removed (eg. 0x12345)
  • esp is the name of the mod containing the record (MyMod.esp). This is not necessary for base Fallout and DLC records.
  • EditorID is the form editorID of the record displayed in CK or xEdit.

Filtering

Filters are for distributing to only specific groups of NPCs. Filters that you're not using can be marked as NONE or left blank.

NOTE: Combining multiple filters will progressively restrict the pool of NPCs that can be distributed to.
Distribute the same record multiple times to add it to different types of NPCs.

  • Strings

Keyword editorIDs  (eg. ActorTypeNPC)
Actorbase names (eg. Piper)
Actorbase editorIDs (eg. PiperRef) 

Multiple strings should be separated using a comma.  All keyword strings, names and editorIDs (vanilla and modded) are supported.

  • FormIDs/EditorIDs

FormIDs/EditorIDs of specific forms used by actors, like factions/race/class (eg. 0x12345 or MyRecordEditorID).

List of valid filter form types

Faction
Class
CombatStyle
Race
Outfit
NPC
VoiceType

Multiple entries should be separated using a comma.
Mod added filter formIDs are supported (0x101~MyFactionMod.esp,0x223~MyRaceMod.esl)
EditorIDs can now be used in place of formIDs.

Pattern Matching

Requirements [strings, formIDs] - require actor to have all keywords or filter forms, using + (eg. ActorTypeGhost+ActorTypeAnimal to get animal ghosts).

Exclusions [strings, formIDs] - exclude actors that have name/keyword/form, using - (eg. -Nora).

Wildcards [strings] - find all actors that have name, editorID or keyword containing wildcard, using * (eg. *Sentry to get all actors with Sentry in their name).

Matches [strings, formIDs] - this is default setting. NPC has to match with any filter.

These are evaluated in the following order :

1.Requirements
2.Exclusions
3.Matches
3.Wildcards

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

This filter is skipped for NPCs that level up with the player.

  • Traits

Gender : M/F
Unique : U

Traits can be combined (eg. M/U to get all male unique NPCs)
Traits can be negated (eg. -U to get all non-unique NPCs)

  • Chance 

Percentage chance that records will be distributed to NPCs 
Value is from 0.0 -100.0, default chance is 100 if left blank or NONE. 

Notes regarding distributable types

Items

All items (that can be added to NPC inventory) are accepted. However, changes between Skyrim and Fallout 4 means that NPC inventory is now baked into saves, and will require ResetInventory or a new game.

Leveled Items are included under Item.

  • itemCount is the amount of items that should be added. Default is 1 if no count is specified

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.

Keywords

Keywords can either be distributed as normal, using formids from other mods,

Keyword = ActorTypeRich|SomeRichGuyEditorID

Keywords will be applied first, so you could distribute a keyword to NPCs, and then check if it exists when distributing other things

Keyword = ActorTypeSentry|*Sentry

Spell = 0x123~BetterSentries.esp|ActorTypeSentry

Examples

;add 3000 bottlecaps to Piper
Item = 0xF|Piper|NONE|NONE|NONE|3000 

;50% chance to add Gift of Gab perk to all ghouls and Mr.Handys
Perk = 0x00178D54~Fallout4.esm|NONE|0x000EAFB6,0x000359F4|NONE|NONE|NONE|50

;add Glowing One radiation cloak spell to all female NPCs between actor levels 25 and 50
Spell = 0x000DB3AD~Fallout4.esm|NONE|NONE|25/50|F 

;adds 2000 Molotov Cocktails to all NPCs on death
DeathItem = MolotovCocktail|ActorTypeNPC|NONE|NONE|NONE|2000

Notes

Check po3_SpellPerkItemDistributorF4.log file in My Games/Fallout 4/F4SE, 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 CommonLibF4
  • SimpleINI for INI code and directory access
LooksMenu Tint API 36KB

LooksMenu Tint API

21 Jun 2022
0
751
0

The LooksMenu Tint API, coming with LooksMenu itself, lets you inject new tints for the head in character creation, such as makeup, dirt, scars or tattoos.

Baka Framework 1.6 199KB

Baka Framework 1.6

18 Jun 2022
0
771
0

This is just a small ESL flagged master file and F4SE plugin that exposes some neat things and some fixes that other mods can take advantage of. If you have a request for a feature that would require a F4SE plugin, feel free to mention it in the comments and I may add it in a future version.

Comments
The minimum comment length is 10 characters.