Your file is ready
Download your mod
Login to downloadAny issue downloading your file ? Contact us.
Go Premium
Level up your game with a GGmods pro subscription.
Ad-Free Browsing
Instant Download
An SKSE Runtime NPC Replacement System
Download your mod
Login to downloadAny issue downloading your file ? Contact us.
Level up your game with a GGmods pro subscription.
Ad-Free Browsing
Instant Download
Recast is an SKSE plugin that replaces NPC faces using simple TOML files. This guide shows you how to write your own patches.
Before you start:
Recast looks for patches at:
You can organize them however you like. Recast scans the folder recursively, so subfolders work fine. Drop your TOML files anywhere under that path.
Every patch file has two parts: a manifest at the top, and your replacements below.
The manifest tells Recast which version of the patch format you are using and how to break ties if two files target the same NPC. Higher priority wins.
The replacements section is where you list each NPC you want to swap.
EditorIDs are the readable names mod authors give NPCs in the Creation Kit. They are the most readable way to identify NPCs.
This method requires Po3's Tweaks to be installed, because Skyrim does not normally keep EditorIDs in memory after loading. Po3's Tweaks fixes that, and most modern modlists already include it.
FormIDs are the eight-digit hex codes you see in xEdit. Use them when you do not have Po3's Tweaks, or when an NPC does not have a unique EditorID.
The format is the FormID, a tilde character, then the plugin filename. The quotes around the key are required because the tilde and the 0x prefix are not allowed in TOML's bare-key syntax.
You can mix EditorIDs and FormIDs in the same file. Recast detects which one you used by looking at the syntax of each string.
The source side (the value on the right) also accepts both forms.
You can put as many entries as you want in a single TOML. There is no practical limit. A file with 200 NPCs is fine.
If you ship your mod with a FOMOD installer and want users to pick individual NPCs to install, give each NPC its own TOML file. The FOMOD can then include or exclude each file based on user choice.
Each file contains a single entry.
If two patch files both replace the same NPC, only one wins. The winner is the file with the higher priority number. Default priority is 0, so set yours to 100 or 200 if you want to override default-priority patches.
If priorities tie, Recast uses the filename and then the line number as deterministic tiebreakers. The loser is logged so you can see what got overridden and why.
After you launch the game, check the Recast log at:
You should see lines like this:
The applied count tells you how many NPCs Recast is now driving. Any error lines name the exact TOML file and line that had the problem, so fixing them is straightforward.
If you see "form not found", the source NPC's plugin probably is not loaded. Check your load order.
If you see "duplicate target", two of your entries point at the same NPC. Pick one, or use the priority field to decide which wins.
If you see "non-NPC", you accidentally pointed at a weapon or armor record instead of an NPC. Double check the FormID or EditorID.
If you see "cross-race accepted" as a warning (not an error), that just means you replaced an NPC's face with an NPC of a different race.
Recast still applies the swap. The warning is there in case the cross-race pairing was unintentional.
Here is a full working example you can adapt:
That is everything you need to know to get started. Recast handles the rest.