Skyrim Special Edition

This is now the supported installation method for VHR. Patches are still in the 'old' files section and will remain there, but will no longer be supported!

This tutorial and idea was conceived by talking with neuroliquidity who asked for an easier way to patch NPCs and avoid downloading hundreds of patches. I did some research into creating an xedit script or even creating a skyproc patch for java, but realized that regardless of what methods I used, there would be no way that I know of to create a blacklist of custom-haired NPC replacers like Bijin without having them getting overwritten by VHR heads and causing issues, so this was the simplest solution I could think up to come close to automating NPC facegen for VHR. Be aware that some NPC overhauls will still need a patch from this site regardless, as some tend to mix custom and vanilla hair into one mod. (If there are any more code-savvy people out there who would like to help me with finding an even easier method for facegen-generation, please get in touch!)

Be aware that this might be redundant for some, as many users already patch their own load order and don't need to create an ESP for it, but I made this for users of all levels to help in troubleshooting of dark face bugs, and so far in the testing I've done I think patching your own load order is the better way to go. Kudos to neuroliquidity for the suggestion!

If you follow this method, you only need the patches in the Optional section depending on the mods you use.The main VHR files are required for proper generation!


VHR SSEedit Patching "Patch-less" Alternative

Before you even attempt to do this tutorial, you need to be aware of these things:

1. I would advise to use this tutorial on a NEW GAME while you're building your load order, with all custom-haired NPC overhauls TURNED OFF/UNINSTALLED and only the base game/dlcs, any mesh enhancements (like high poly head/expressive facegen morphs, etc) and any vanilla hair overhauls like WICO etc. We don't want the creation kit to accidently overwrite facegen of any mods with custom hair!

2. For NMM/Vortex users, I don't provide support for these managers. Be sure to entirely back up your SSE data folder before you proceed with this tutorial, especially step 12, as both of these mod managers inject files into your data folder instead of keeping it clean like Mod Organizer.


3. This patching method is intended for people who have a few vanilla overhauls to patch, and don't suffer from an incredibly bloated load order. I noticed that at step 5, if you have an enormous amount of new/added npc mods like population/enemy mods that get patched into the VHRNPCPATCH esp, there is the potential for the creation kit to no even be able to load your esp at step 12 due to the size of the mods. If this happens, please follow the alternative steps at step 5A to patch your load order!


IMPORTANT: Install SSE CreationKit Fixes and CreationKit Multiple Masters Fix. You also need to have a basic understanding of SSEedit, and of course you need SSEedit installed and working correctly.

I also highly recommend these mods for a higher quality facial mesh in general for all NPCs!


1. First, install and assemble your load order as normal. Make sure all mods that add NPC additions are present in your load order, and very importantly, deactivate or 'untick' at this time are any NPC overhauls/follower mods that add custom hair, because we don't accidentally want to overwrite them later and have to redownload them all to fix them!

Here's a handy list of NPC Overhauls that we want to keep UNCHECKED/UNINSTALLED during this tutorial:
(mods marked with an asterisk have a mix of custom and vanilla hair, and either have a patch in the files section, or need to be patched manually)
  • Bijin Warmaidens
  • *Bijin NPCs
  • Bijin Wives
  • Seranholic
  • The Ordinary Women
  • *Men of Winter
  • *Any of Pandorable's Mods
  • Kalilies NPCs
  • A Rose in the Snow - Skyrim Ladies Overhaul
  • *Male NPC Overhaul
  • Babes of Skyrim
  • Inhabitants of Skyrim
  • *Diversity - A Character Overhaul
  • All Female Cicero Overhauls
  • Improved Bards - Special Edition
  • Botox For Skyrim
  • Immersive Wenches (KS Version)
  • Fresh Faces
  • Fresh Women
  • Any of NerdofPrey's "Hott" mods
  • *Any of Nourthbourne's NPC Overhauls
  • *Mandragora's Character Overhaul
  • *Males of Skyrim
  • Any of MetalSabers Overhauls
  • Cuyima Interesting NPCs
  • Any KS Hair or Apachii Hair-dependant Overhauls
  • ANY children overhauls!

... There are literally Hundreds so hopefully you get the picture!

Note: If you don't understand what "custom" hair means, it's literally any hair that is not vanilla. These are usually hairstyles made from KS Hairdos or Apachii and will likely be obvious when you take a look at the mod. There are other NPC overhaul mods however, that use vanilla hair like Windsong's WICO, Nordic Faces or Cosmetic Vampire overhaul. These are the overhauls that we want 'ticked' in our load order!

Bruma: There is a new patch in the optionals section, and Bruma (and all it's patches) should be 'ticked' in your load order for this tutorial, along with the esl-flagged plugin patch in the Optionals section. Make sure the patch is loaded AFTER Bruma and VHR.

Regarding High Poly Head:
Spoiler:  
Show
Make sure that when you download High Poly Head, be sure to also grab the xEdit Scripts on the High Poly Head page. These go in your "Edit Scripts" folder for SSEEdit. When you launch SSEEdit with all your mods (including High Poly Head), only select the ones that include NPC records (you can see which ones you need by this method:
Spoiler:  
Show
2. Open up SSEedit. Hold SHIFT to speed up the process.

3. Right-click on any part of your load order and select "Apply Filter".



4. In the Filter window, please uncheck all boxes except the middle row "By Record Signature" and inside that checklist, select nothing but "NPC_- Non-Player Character(Actor)". Select the Filter button.



5. Once the filter has been applied, every ESP that has NPCs will be shown to be visible in your load order in the left pane.

5B. Please select the "+" next to each mod to reveal the NPC records, and hold CTRL to highlight all of them. Once all NPC records are highlighted, select "Deep Copy as override (with overwriting) into ....". When SSEedit gives you a warning prompt say Yes. All of the NPC data should be ported over into the esp in the correct order from top to bottom, bottom always being the conflict winner.



6. A window will open asking you to save to a new ESP. You can pick a regular ESP for this as this ESP will be made primarily for the VHR hair patch. I recommend titling the ESP "VHRNPCPatch" for easy searching.



7. Wait for the action to finish. Depending on your load order and the amount of NPCs, this can take awhile. Say 'Yes to all' to all prompts of overwriting.

8.
Your ESP will be generated at the bottom of your load order and in bold.
. After you've selected "Deep copy as override (with overriding into)..." on all of your loaded esp's in SSEEdit, you'll want to click on the "+" right next to the "VHRNPCPatch" we created, then right click on "Non-Player Character (Actor)", select "Apply Script" and then select "Skyrim - KL Filter Race". After that finishes, right click again on "Non-Player Character (Actor)", "Apply Script" again, and this time select "Skyrim - KL Swap Headparts". You want to make sure you apply these scripts to "VHRNPCPatch" AFTER you "Deep copy as override (with overriding into)..." on all of the other mods.Due to this needed ESP, you will need to load the VHRNPCPatch into the CK to make sure your properly generating high poly heads!If you use a mod like High Poly Expressive NPCs, this step is already done for you for vanilla NPCs!

Here's a link to a video showcasing this if you need a more visual representation: https://m.youtube.com/watch?v=a3juAbnVuJw



2. Open up SSEedit. Hold SHIFT to speed up the process.

3. Right-click on any part of your load order and select "Apply Filter".



4. In the Filter window, please uncheck all boxes except the middle row "By Record Signature" and inside that checklist, select nothing but "NPC_- Non-Player Character(Actor)". Select the Filter button.



5. Once the filter has been applied, every ESP that has NPCs will be shown to be visible in your load order in the left pane.

5A.(ALTERNATIVE NPC PROCESS METHOD - Skip this unless you have issues during step 12 or have an incredibly complicated load order! Instead please use this filter as a list of all mods you need to patch instead. Take a few screenshots of all mods listed using the Snip tool or Paint and grab the ESPs listed into your original SSE folder along with VHR, all its meshes/texture files, as well as any of the facial improvements meshes listed in the other guides. Then use the CK manually, loading up the esps all together or in small batches and then proceed to follow to step 12! If using this method, I would use Wrye Bash or even the original game launcher to quickly sort your esps to match the same load order in MO for maximum compatibility - even with MO, clicking on Wrye Bash outside of MO will auto-detect your esps in the base game folder, so no need to worry about downloading it again! You can also follow the manual guide here)


5B. Please select the "+" next to each mod to reveal the NPC records, and hold CTRL to highlight all of them. Once all NPC records are highlighted, select "Deep Copy as override (with overwriting) into ....". When SSEedit gives you a warning prompt say Yes. All of the NPC data should be ported over into the esp in the correct order from top to bottom, bottom always being the conflict winner.



6. A window will open asking you to save to a new ESP. You can pick a regular ESP for this as this ESP will be made primarily for the VHR hair patch. I recommend titling the ESP "VHRNPCPatch" for easy searching.



7. Wait for the action to finish. Depending on your load order and the amount of NPCs, this can take awhile. Say 'Yes to all' to all prompts of overwriting.

8.
Your ESP will be generated at the bottom of your load order and in bold. Please take a quick look through the NPC records to make sure that all visuals have been successfully brought over into the patch. For example, I used WICO and Cosmetic Vampire Overhaul for this tutorial (in the load order, it was WICO first then Cosmetic Vampire overhaul after), and wanted Cosmetic overhaul to overwrite any WICO vampire records. I took a quick glance at some of the vampire NPCs through CVO's NPC records and checked that the visual changes were brought over correctly, like shown below.

Note: Please keep in mind that we're currently only concerned with the visuals all being brought to the bottom of the load order into one esp file. Most likely AI Overhaul/WARP/Priest Vendor's etc users will have to still forward these NPC edits manually.
(To talk about how to patch for these mods is out of the scope of this tutorial, but I would highly suggest using Hishy's WICO cleanup script - in the posts section I mention how you can use that script to forward all non-visual changes to all your NPCs with a few clicks! I'll also add the tutorial below!@@)




9. Everything looks good, so I'm going to close SSEedit to save it. A window will pop up asking if you'd like to save the ESP. Click OK.



10.
Now we're ready to use the Creation Kit. For MO users, I would create a new empty folder for this and title it VHR CK Output, then edit the Creation Kit executable to generate the output into this folder. I've added a screenshot for clarity. For other mod managers, we just need to make sure that the meshes and textures we generate from this new ESP are able to be copied into our own patch. Let's load up the Creation Kit with our load order and all of it's mesh dependants (like Expressive Facegen Morphs, High Poly Head etc).



11. 
Open the creation kit and check all of your mesh enhancement mods with esps (High Poly Head, Expressive Facegen Morphs etc), the VHRNPCPatch.esp we created earlier and the Vanilla Hair Replacer - VHR.esp  - you can say no to the 'set active file' question and wait patiently for everything to load ...
(if the CK Doesn't want to load the VHRNPCPatch here, or you get other errors, please check back for the alternative but slightly more
manual alternative solution on step 5A! or just follow the manual guide article here)




12. Once the CK is loaded, open the Object Window and select the Actor tab. Make sure it's the one within the Actors tab to make sure we have all NPCs available to select. See picture below for reference



13. Now simply select every single NPC record (with the exception of AstridEnd [0004D6D0] from the NordRaceAstrid race - if you generate her facegen with everyone else you will get the dreaded astrid burnt face bug. Similar issue with Mrissi. Big thanks to Kulharin for finding this out!) in the right pane window by holding SHIFT. Once you have selected all NPC records, press CTRL+F4. A prompt will appear. Click Yes.

TIP: If you would instead rather be more thorough and go through by one race at a time to hopefully prevent less facebug errors, you can follow
through the race list below:
  • BretonRace
  • BretonRaceVampire
  • DA13AfflictedRace
  • DarkElfRace
  • DarkElfRaceVampire
  • DLC2DremoraRace
  • DLC2MiraakRace
  • ElderRace
  • ElderRaceVampire
  • HighElfRace
  • HighElfRaceVampire
  • ImperialRace
  • ImperialRaceVampire
  • NordRace
  • NordRaceAstrid (export facegen for astrid AFTER every other race to avoid giving anyone the burnt Astrid face bug!)
  • NordRaceVampire
  • RedguardRace (only females: once clicked look for the tab in the right window that says Female. Click it and it will sort the women/men for you)
  • RedguardRaceVampire (only the one female "dunBloodletThroneSceneVampire")
  • SnowElfRace
  • WoodElfRace
  • WoodElfRaceVampire



14.
Now wait for all NPC heads to generate. Depending on your load order, this can take awhile. Be sure to not click anything until you see a new prompt window appearing that says "Done". After this, we'll need to make sure we now do the facegen for AstridEnd [0004D6D0]. Select and press CTRL+F4. If you have Mrissi, same process, export her separately. Once it says "Done" again you can close the CK.

15. If you're using MO, all you need to do now is move the folder with the recently generated meshes and textures (VHR CK Output) AFTER all your mods but BEFORE any custom haired NPC replacers, and you can now delete the patch ESP if you wish as it's no longer necessary, although it can be helpful for troubleshooting to regenerate any facegen later that didn't look right, so I would hide the esp with MO's hiding feature. For any other mod manager, collect the meshes/textures generated from the CK, zip them, and follow the same rules for placement and all should work well.

Note: Some users (including myself) have found that sometimes the Creation Kit seems to disregard putting your mesh files in the "VHR CK Output" folder, and instead dumps all your facegen into your SSE data folder. Once your facegen is generated,
please make sure to check your "VHR CK Output" folder and double-check to see if your meshes folder is inside, along with all facegen within in this folder structure:

meshes>actors>character>FaceGenData>FaceGeom> (inside should be multiple folders of all main ESMs [skyrim.esm,
dawnguard.esm etc] as well as the plugin name of any other mods that add NPCs).

If your output folder is empty and without a meshes folder, then the CK went rogue and dumped all your facegen into your SSE
data folder. Check for a meshes folder in your Skyrim Special Edition>Data folder. If you find the meshes folder and all the meshes seem to be there, then zip it and install it into your mod manager manually. Simply place it in same load order position as the "VHR CK Output" folder like shown below.


NOW you can bring any custom hair mods BELOW all the VHR files/outputs you've created to overwrite them as needed. The bottom of your load order/left pane of MO should be sorted in this order:

1. VHR CK Output files
2. VHR - Vanilla Hair Replacer (main file)
2b. VHR - Bruma Patch (for bruma users)
3. Custom Haired NPC Replacers (Bijin etc)
4. Specific patches for VHR (such as the current patches listed at the bottom of this article in the * section)
5. Children overhauls +Children overhaul patches (always have these last for best results!)

And so now your plugin load order on the right pane, should be as follows at the bottom of your load order:

1. VHRNPCPatch.esp (optional but useful to keep for troubleshooting)
2.Vanilla Hair Replacer - VHR.esp
3. Custom Haired NPC Replacers (Bijin etc)
4. Specific patches for VHR (such as the current patches listed at the bottom of this article in the * section)
5. Children overhauls +Children overhaul patches (always have these last for best results!)

Dark face issues can be solved for most users by using Face Discoloration Fix by Parapets. If there are still issues, it's due to an overwrite or potentially the dreaded Astrid face bug, which means you will just have to update facegen for the specific npcs manually. All you have to do is open up console with the tilde (~) key, click on the npc for the base id, then when creation kit loads with your mods installed, in the object window type in the name of the base id, CTRL+F4 the face which will hopefully go into the correct folder, then quit creation kit. If you're unsure where the npc face was outputted to, you can use windows explorer to go into your Mod Organizer/Mods folder, and search for the base id to see where the latest version was created. Just make sure that facegen will be loaded at the bottom of your load order, and you're good to go.

Regarding BSAs: You can also create a BSA from all the meshes/textures you generated and replace one of the dummy esps with the VHRNPCPatch.esp that you just created (you will likely need to have several dummy esps at will likely be a LOT of Npc heads and BSAs can only hold so much facegen) - you can use Cathedral Assets Optimizer to create BSAs. However, if you do this method, you have to make sure that there are no errant loose files from any overhauls you generated files from like WICO. Loose files always override BSAs regardless of load order, so please keep this in mind when wanting to create BSAs! In general, I still recommend loose files as you can be sure they're overwriting everything properly.

Loose files: If you'd rather have the meshes in loose files, then you have to make sure that any custom-haired NPC/Follower mods that will be loaded after VHR and the output files are also unpacked into loose files to make sure that the VHR files are properly overwritten! Most files are generally loose files, but I'll leave this here just in case you suffer from this issue!


* PATCH EXCEPTIONS: These are NPC overhauls that use both custom hair (Apachii, KS Hairdos) as well as vanilla hair. Due to this, these mods will still need their own patches downloaded from the VHR page (as this is a pain to do on your own so I've saved you the trouble!), and should be loaded AFTER all custom overhauls, but before any children overhauls, like shown above in the load order example. These are a list of patches that will be provided so you can keep track:

  • Bijin NPC's Patch (for Maven Blackbriar)
  • Male NPC Overhaul Patch
  • Males of Skyrim Patch
  • Pandorable's Lucien Replacer Patch
  • Pandorable's Dragonborn
  • Men of Winter Patch
  • Mandragora's NPC Overhaul

DIVERSITY - A Character overhaul by NEVERMOREPJM - Please be aware that the creator of Diversity has a very large mishmash of custom and vanilla hairs, and there is no thorough documentation on changes to patch for VHR, so for now the main (and latest) version of Diversity is currently incompatible. If you'd still like to use Diversity with VHR, then use the Vanilla hair version and patch it like described in the tutorial!

NorthBourne's NPCs Overhauls by Southpawe - Spawnblade has made a patch so VHR and NorthBourne's overhauls work together! Here's the mod. Be sure to endorse them for their work!

~FURTHER TUTORIALS~

##USING HIGH POLY VANILLA HAIR WITH VHR:


Removing any hair in VHR is pretty easy. All you have to do is load the esp in SSEedit, load VHR.esp, click the + symbol next to the name, and in the headparts section, you will see every vanilla hair that I replaced in a list. Hairs that overwrite the vanilla hairs are in green, while the white ones are custom hairline meshes and don't need to be deleted. I would use all the images I have shared of every hairstyle as a guide for their names, sort by editorID(click on editorID at the top) for easier name sorting: For example, if you really want to remove HairMaleNord02, just scroll down to that name in the left pane and search for the name in the EditorID column. When you click on the name, the properties of the hairstyle will show up in the right pane. If you look to the "Extra Parts (sorted)" section, there you'll see all associated headparts with that hair. For this hair, we will only edit or remove these records to get rid of this hair from facegen creation: HairMaleNord02 and HairLineMadeNord02 - we don't need or want to get rid of HairLineNordMaleBase or HairLineFemaleNord02Strap because these are custom hair records that are used by other hairstyles in VHR and will not affect restoring specific vanilla hairstyles. You can alternatively, just drag the vanilla filepath from the skyrim.esm column over into the right column for each file and save. Either way it will restore that hair back to vanilla, or High Poly Vanilla Hair. Customize to your hearts content!

@@USING THE WICO CLEANUP SCRIPT TO PATCH FOR AI OVERHAUL (This is already in the comments section here)

I want to point out that the WICO Cleanup Script, since it doesn't require anything except a 'master' esp to load the fixes from, and the 'benefactor' esp to get the fixes transferred to, this script can be used for numerous mods that inject packages or other NPC alterations to the NPC overhaul of your choice while still preserving the visuals. I successfully used this script to patch AI overhaul's NPC changes to Bijin and other NPC replacers with complete success! This patching is usually done manually and is tedious and time consuming; now you can get all your patching done in a few clicks! Thanks to hishutup for this script!

Here's a quick tutorial for anyone curious about how I patch AI Overhaul quickly with any NPC Overhauls. Be forewarned that you can also use this for USSEP, Dawnguard Arsenal, Protected NPCs Redux or ANY MOD that edits NPC records in a non-visual way, but you should be aware of these things:

1: This will make the mod you choose a master to your NPC overhaul until you reinstall it.

2: If the mod you choose gets updated (AI Overhaul gets updated regularly) you're going to have to reinstall your NPC overhaul and start all over again.

3: Don't try using several mods to do this. You can do USSEP and AIO because AIO is also using USSEPs record changes anyway, but if you add in WARP on top of it, you will overwrite important packages, and would end up requiring manual editing regardless. Always be aware of what you're using and how it's editing your game. None of us are responsible if you do things incorrectly!

Using Fuyukazehime's tutorial as a base.

1. Download Hishy_NPC_RecordForwarding.pas
2. Download and install AI Overhaul
3. Install whatever NPC Overhaul that tickles your fancy (Bijin,
Pandorables, WICO, anything you like - Let's use Bijin AIO for this)
4. Go to
https://github.com/matortheeternal/TES5EditScripts/blob/master/Edit%20Scripts/mteFunctions.pas
and Copy/Paste the contents into a text file and save as
mteFunctions.pas (I didn't notice the capital F made the difference -
for me it was using SSEEdit64.exe like thaipo explained)
5. Place BOTH files in your SSEEdit/EditScripts folder
6. Open SSEEdit and tick only AI Overhaul and Bijin AIO
7. Right click Bijin AIO and select Apply Script
8. Select the Hishy script from the drop down list: https://i.imgur.com/duWGe3j.png
9. Click OK.
10. When it asks if you would like to make USSEP a master click YES/OK.
11. Same with AI Overhaul!
12. Close SSEEdit making sure to save!
13. DONE

You can also add NPCs Protected Redux, or something removing protection by using the script again and only selecting "ACBS - Configuration" to ONLYimport the protected flags. However, it's always good to check for errors, or fix any issues for consistency if they arise. I know that AI
Overhaul does change this value also for some NPCs, so please always cross-reference with AI Overhaul in SSEedit to make sure you're bringing
over the values you need. Hope this helps someone!

Article information

Added on

Edited on

Written by

preeum