SakeTami
WhiskyTangoFox
WhiskyTangoFox

patreon


Faction Paintjob Distributor - Beta v1

After a month and a half of work, I am ready to announce that the successor to Faction Distribution Framework is finally ready for a beta release.

Did you have a couple drinks, decide to buy the Creation Club skins, and then were dissapointed that they were just craftable, and weren't on the factions? Do you see all the paintjob mods on the nexus, and wish the same? Does the idea of patching and maintaining a complicated load order to do this give you a headache?


Faction Paintjob Distributor is an automated FO4Edit patcher for getting paintjobs that are normally only craftable to appear on NPCs. And not only will it detect paintjobs that can be distributed, it will detect nif-bashed weapons and armor that can have painjobs added to them, e.g. the vanilla Laser Musket, and add the appropriate keywords so that they too, can have paintjobs.

How it works
The patching script scans your load order for craftable paintjobs that aren't already distributed, and builds a data set of the available paintjobs, for each faction setup in the configuration file. It then checks every weapon and armor record, and for each faction it will build a template and modcol, using the same system of restricted filter keywords as vanilla factions that already have paintjobs. If then scans all of the levelled lists, and applies those keywords to them based on the configured filters for each faction. Power Armors that spawn in the world are also analyzed, and based on configuration can have paint jobs added as a set, rather than as individual pieces.

How to Use

This patcher requires FO4Edit v4.1.5o or greater, (which is not in general release as of yet- download it from the xedit discord server)

This patcher doesn't require a new game, however the changes will only take effect when new content is spawned (in an existing game, after a cell reset).

Replacer Patches

Replacer patches are currently available for the following mods (basically everything currently included in LitR). Creation Club skins, and mods that just provide paintjobs without trying to distribute them don't need replacer patches.

Configuration Explained
There are two configuration files that come with FPD: Config.ini, which contains general configurations, and Faction.ini, which has the configuration for the factions to be distributed.

Filters
Most of the configuration options are filters. A configuration filter is a comma seperated list of values that are processed in order when evaluating a given record and deciding whether/how to patch. For example, the each faction has a LVLI filter, which is used to determine whether a faction keyword should be added to a levelled list based on the editorID of the levelled list. 

Filter Qualifiers


Config.ini
This file is responsible for universal configuration options, and has the following configurable options

OMODs are connected to WEAP and ARMO records using Attachment Points. Attachment Point keywords passing this filter will be recognized as for a paintjob.

OMODs have filter keywords that control what they can be attached to. Only OMODs with filter keywords passing this filter are recognized as paintjobs

By default, the script will not redistribute paintjobs that are already applied to a WEAP or ARMO record. This to prevent the patcher from distributing things that are already used. Paintjobs passing this filter will ignore this rule.

only FURN records passing this filter will be processed

only WEAP and ARMO records passing this filter will be processed

only LVLI records passing this filter will be processed

only OMOD records passing this filter will be processed

Factions.ini
Each section is a configurable faction. A faction can also be the default, or epic "faction", which means they will be applied to the default, and epic templates respectively.

these values control whether the list will be distributed as a default or epic, respectively.

If configured, instead of generating a new keyword, the patcher will use an existing one. Good for factions that already have some sort of paintjob distribution.

If a faction has multiple pre-existing distribution keywords, the alternate ones should be here. This is so the script knows if an item already has faction templates, and it doesn't need add new faction templates for it that faction. For example, the Brotherhood of Steel uses a series of Rank related keywords, and the script needs to identify those in order to know that an item already has BoS related skins applied.

Used to filter LVLIs for addition of the faction filter keyword

Used to filter OMODS that will be distributed with this faction

Used to filter the item type that will have faction templates generated for this faction
In addition to just checking the Name (for paintjobs) or the record EditorId (for everything else) for contains value, there are a few additional filter options for filter_item.
signature:ARMO
signature filters for record type, mainly useful if you only want a faction to apply to WEAP or ARMO records.
keyword:ObjectTypeArmor
Checks the item for the presence of the keyword, (can be any keyword, not just ObjectTypeArmor)

V01: Added the missing MTE Functions

Faction Paintjob Distributor - Beta v1

More Creators