Skyrim Special Edition

Introduction

This simple tutorial will cover how to enable soul absorption for an NPC of your choice. As an example, we’ll add the effect to Durnehviir.


The Basics

So, what do we actually need to do? First of all, install the mod. If manually, unpack the archive into your Skyrim Special Edition\Data folder. Enable the mod and put it near the bottom of your load order – right before any bashed patches and ASIS (those should always be dead last). Now, let’s get started:

1. Open SSEEdit and locate SoulAbsorbNPC.esp. You can click on the EditorID tab to sort alphabetically. This is all the mod contains:



2. Find the plugin with the NPC you want. In this case the NPC is Durnehviir, so we need to find Dawnguard.esm. Then, expand Non-Player Character (Actor) and find the NPC (you might want to click on the Name tab to sort by name). You can see that the record is modified by several mods. Scroll to the right to see which plugin (that isn’t a bashed patch or ASIS) is the last one that modifies it. In my case it’s Durnehviir God of Death.esp.


3.. Hold the Ctrl key and click on the FormID – this will move you to that record in the plugin we want. Then, right click on the record, choose Copy as override..., and select SoulAbsorbNPC.esp. Confirm if asked to add masters.


4.. Find my mod again, hold the Ctrl key, and click on Durnehviir and DummyNPC – they should both be selected and be displayed next to each other on the right.


5.. Scroll down until you see SoulAbsorbNPCScript, and then drag it from DummyNPC to Durnehviir. It will look like this:


6.. Now, scroll down until you see perks, and drag AbsorbedSoulsBuff from DummyNPC to Durnehviir, just like you did with the script.


7.. Click on the Durnehviir record on the left and make sure only that one is selected. Drag the script and the perk to ASIS.

8.. Click on the DummyNPC record on the left and make sure only that one is selected. Press delete and confirm.

If your NPC doesn’t have suitable dialogue lines that could be said when absorbing a soul, you’re done! Just save and quit. If you have dialogue lines to add, move to the next section.


Dialogue Lines

If your NPC has appropriate dialogue lines, you can add them as a script property. I provided a few template files – sound files and a form list with them. If you have more voiced NPCs that you want to add lines for, create new sound files (by duplicating existing ones) and a new form list with them (similarly, you can duplicate the one I provided). Every NPC that should say something needs their own form list.
A good example of an NPC with such lines is Miraak – he always says something when he steals a soul during the Dragonborn questline, so we can reuse those lines here.

1. We’ll be editing a path to a sound file, so let’s start with the naming convention used by sound files for dialogue:
QuestName_TopicID_LineFormID_ResponseNumber.fuz
TopicID is optional. Response number is only not equal 1 if there are more responses for the same Form ID (when an NPC says several lines in a row). Names are truncated if too long. For example, this how a file from my Talkative Dragons mod looks:
CreatureDi_DragonCombat_0000080a_1.fuz
And this is one of the soul steal lines from the DLC:
DLC2SoulSteal__000200d2_1.fuz
The full path will have the following pattern:
\Data\Sound\Voice\PluginName.es[pm]\VoiceType\File
So, for the soul steal line, the path will be:
\Data\Sound\Voice\Dragonborn.esm\DLC2MaleUniqueMiraak\DLC2SoulSteal__000200d2_1.fuz

Let’s then use it in our sound file:


2. Do a similar thing with the other files if there are any other lines you want to use (I used 000200d2, 000200d3, 000200d4, 000200d7).

3. Now, we need to let the script know we have a form list with sound files to use. I assume you’ve done everything explained above and you have the script attached. Now, right click on the properties field and choose add.


4. This will create an empty property, and an empty name field should be green. Right click on it, choose edit, and type/paste SAFakeLines. It needs to have that exact name, because that’s what the script uses. After the name is changed, the property should move down. Change its type from None to Object. This will create a null reference at the bottom – change it to SAFakeLines [FLST:FE024815]. You might notice that the name of the form list is the same as the property name – I did it for consistency, this is not required – all that matters is the property name itself. For other NPCs you’ll have other form lists with other names, and then all you need to do is change the reference – the property name should always stay the same. Anyway, after you’re done it should look like this:


5. Don’t forget to drag over the changes to ASIS/bashed patches if there are any overriding that NPC.

And now it’s all done! I hope everything was clear enough. Have fun with the mod!

Article information

Added on

Edited on

Written by

Voeille

0 comments