YASTM v3.0.0 introduces the experimental soul trap leveling feature which allows soul traps to grow more powerful as your conjuration level increases.
Soul trap leveling can be set up in the new MCM page, and is disabled by default. You can set how high your conjuration level needs to be in order to guarantee that your soul trap succeeds for a particular soul size. It can also "unlock" soul trap techniques (displacement, relocation, shrinking, and splitting) after your conjuration level exceeds a certain level.
There are currently two leveling types:
Degradation downgrades larger white souls to a lower level soul according to your level of proficiency, so if you trap a greater soul but only have the levels to trap lesser souls, the soul you trap will be degraded to a lesser soul instead. This "shrinking" behavior is applied independently of the standard soul shrink configuration and only affects the first soul that is processed.
"Loss" gives a chance that trapping souls too big for your skill level to "slip away". Depending on the configuration, the loss chance can be the full 100% (completely gated) or gradual.
There are two options unique to the "loss" leveling type: the progression system and the success chance scaling.
Enabling the progression system increases the chance of a successful soul trap as your conjuration level increases. The success chance is calculated by (currentLevel/thresholdLevel)*scaling. If you trap a Black Soul when the Black Soul threshold is at L50, your conjuration level is 26, with 80% scaling, this means that there is a (26/50) * 0.8 = 0.416 -> 41.6% chance of success. At conjuration L49, the chance would be 78.4% (it will not reach 80% chance when below threshold with the progression system enabled).
When the progression system is off, the scaling will, quite literally, be used as the success chance. So in this case, 80% scaling means 80% chance to trap a soul when your conjuration level is below threshold. If you don't like the gamble, setting the scaling to 0% will effectively turn off any chance to trap souls below threshold.
Note: This update should work fine on an existing save, but all translations will need to be updated, which is why the version number is v3.0.0 (for "breaking change", v2 was skipped due to an ancient mistake with version numbering decisions). If you're using the profile save feature, it is recommended that you resave the profile so that the new properties will be added to the profile. The main description page will be updated some time later.
To make Azura Star/Black Star show the correct Icon.
The change also has affect on Stone-Fire Soulgem from Vigilant.
For Dear Diary or Dear Diary Dark Mode or Horizon UI Overhaul 1. Open "interface\skyui\config.txt" 2. Find this line (Normally this is the last line of the file) itemIcons = <clothingIcon, weaponIcon, otherIcon>
For Original SkyUI (May or may not work with SkyUI Replacer) Don't use this with Dear Diary Family, Follow guide above instead
Add this to the end of "interface\skyui\config.txt" file (may require unpack SkyUI.BSA) ;=========================================================================================================== [Properties] ;=========================================================================================================== props.otherIcon.propertiesToSet = <'iconLabel'> props.otherIcon.filter = <'formType': Form.TYPE_MISC>
I am using this in Gate to sovngarde collection and it seems to turn larger gems into whatever it needs to fit the soul taken. A grand gem is turning into a petty if I kill a mudcrab. Is this a collection issue or is it a possible failing on my part.
you don't have to do anything; this is the kind of mod that works in the background. it changes how the game picks soul gems to fill while trying to limit under filled soul gem waste.
if you want to merge soul gems to make a bigger one. you'll need something like a mystic condenser. a few mods have this functionality but all need patches.
came back to tell you someone made a mod similar to what you asked that shouldnt need a bunch of patches. https://www.nexusmods.com/skyrimspecialedition/mods/126785
idk about compatibility to this though since it can make its own azura star.
Had the problem where soul gems weren't being filled. Soul trap, weapons, nothing worked.
Turned out I messed up in the installation. I have Skyrim Special Edition version 1.6.1170 and use Mod Organizer 2. I had installed the Special Edition version of the mod when I should have installed the Anniversary version. That's on me for not reading the instructions properly. If anyone has the same problem, I hope this might help.
I was having this exact problem, and this fixed it. The "current" or newest version of Skyrim, at least what I downloaded from Steam, like like the third or fourth choice down and I just didn't pay enough attention when installing it.
If you're on Skyrim SE (not AE) version 1.6.1170 (latest as of 2024 July) then when you install the mod, in the Vortex menu pick the Anniversary version, for game versions 1.6.640+. The latest version possible in the Vortex menu. This fixes the dll issue where you can't start the game without a warning message about the yastm dll being disabled. Also turn the allow partly filling option off in MCM menu, it seems to fix soul trap not working mid-game. I also changed the soul shrink method to split and added soul diversion.
How does this interact with flawed varla stones? Where are reusable soul gems in the hierarchy? For example I have a grand soul gem, flawed varla stone, and lesser soul gem, all empty. If I soul trap a lesser soul which one will it go to?
Regarding the soul replacing feature. For example I have a common filled azura star, empty flawed varla stone, and an empty greater soul gem. When I soul trap a grand soul and it replaces the common soul in azura star. Where does the common soul from the star go to?
I checked in SSEdit, and I am getting an error with the Guard Dialogue Overhaul patch. Subject.GetGlobalValue([0ADA0A04] < Error: Could not be resolved >) = 1.00000 OR
Just replying here since the MA didn't. Unresolved references are dangerous, because if Skyrim wantes to check the conditions and cannot resolve the reference it will CTD. I have absolutely no idea what the MA wanted to put here so I just remove those conditions for myself in xEdit. From the AND/OR logic it should work just the same without doing anything else.
Splendid, thank you for your mod and the thorough explanation!
While looking at it in xEdit i noticed two small conflicts between YASTM and Guard Dialog Overhaul, nothing major just two DialogTopics who need their conditions to be merged over.
Another thing is something about Reliquary of Myth, with GIST you needed a script patch (rom_da10_soultrap_script.psc) to get the Mace of Molag Bal to use GIST's soul trap system, unfortunately that patch looks outdated if i compare the two. Anyhow would a similar patch be needed for RoM & YASTM to work together or are they compatible. For ease of access i've uploaded the script in question on pastebin, so you don't have to download and unpack the BSA just to see it.
I just looked at the script: hilariously Reliquary could use a patch because it follows good modding practices and carried over USSEP changes.
With that said, I think YASTM will work (though Soul Diversion setting will be ignored) even with that script intact. Just that the soul gem fill priorities might not be exactly what it's supposed to be and may work slower than it should. Regardless, I'll get to these mods in a bit. Apparently I let some harmless test code through in 1.4.1 (it will print a few weird lines into YASTM.log) so it could use another bugfix release anyway.
Edit: After looking at it, I think I'll change my position regarding Soul Diversion and move the functionality into the DLL itself. To keep the possibility open for opting out of this system, I'll set up an actor exclusion configuration system instead, so the next update will take a bit longer.
Thanks for looking into it but don't feel rushed, i've had a quick test run with Molag Bal and apart from what you already mentioned the mace itself still works as intended.
Hey, not sure if you're still playing this game, but could you by any chance share the GDO condition patch? I'm too noob to merge it properly myself in xEdit :(
280 comments
Soul trap leveling can be set up in the new MCM page, and is disabled by default. You can set how high your conjuration level needs to be in order to guarantee that your soul trap succeeds for a particular soul size. It can also "unlock" soul trap techniques (displacement, relocation, shrinking, and splitting) after your conjuration level exceeds a certain level.
There are currently two leveling types:
Degradation downgrades larger white souls to a lower level soul according to your level of proficiency, so if you trap a greater soul but only have the levels to trap lesser souls, the soul you trap will be degraded to a lesser soul instead. This "shrinking" behavior is applied independently of the standard soul shrink configuration and only affects the first soul that is processed.
"Loss" gives a chance that trapping souls too big for your skill level to "slip away". Depending on the configuration, the loss chance can be the full 100% (completely gated) or gradual.
There are two options unique to the "loss" leveling type: the progression system and the success chance scaling.
Enabling the progression system increases the chance of a successful soul trap as your conjuration level increases. The success chance is calculated by (currentLevel/thresholdLevel)*scaling. If you trap a Black Soul when the Black Soul threshold is at L50, your conjuration level is 26, with 80% scaling, this means that there is a (26/50) * 0.8 = 0.416 -> 41.6% chance of success. At conjuration L49, the chance would be 78.4% (it will not reach 80% chance when below threshold with the progression system enabled).
When the progression system is off, the scaling will, quite literally, be used as the success chance. So in this case, 80% scaling means 80% chance to trap a soul when your conjuration level is below threshold. If you don't like the gamble, setting the scaling to 0% will effectively turn off any chance to trap souls below threshold.
Note: This update should work fine on an existing save, but all translations will need to be updated, which is why the version number is v3.0.0 (for "breaking change", v2 was skipped due to an ancient mistake with version numbering decisions). If you're using the profile save feature, it is recommended that you resave the profile so that the new properties will be added to the profile. The main description page will be updated some time later.
The change also has affect on Stone-Fire Soulgem from Vigilant.
For Dear Diary or Dear Diary Dark Mode or Horizon UI Overhaul
1. Open "interface\skyui\config.txt"
2. Find this line (Normally this is the last line of the file)
itemIcons = <clothingIcon, weaponIcon, otherIcon>
Replace with
props.soulgemIcon.propertiesToSet = <'iconLabel'>
props.soulgemIcon.filter = <'formType': Form.TYPE_SOULGEM>
props.soulgemIcon.keywords.DaedricArtifact = <'iconLabel': 'soulgem_azura'>
itemIcons = <clothingIcon, weaponIcon, otherIcon, soulgemIcon>
For Original SkyUI (May or may not work with SkyUI Replacer)
Don't use this with Dear Diary Family, Follow guide above instead
Add this to the end of "interface\skyui\config.txt" file (may require unpack SkyUI.BSA)
;===========================================================================================================
[Properties]
;===========================================================================================================
props.otherIcon.propertiesToSet = <'iconLabel'>
props.otherIcon.filter = <'formType': Form.TYPE_MISC>
props.soulgemIcon.propertiesToSet = <'iconLabel'>
props.soulgemIcon.filter = <'formType': Form.TYPE_SOULGEM>
props.soulgemIcon.keywords.DaedricArtifact = <'iconLabel': 'soulgem_azura'>
itemIcons = <potionColor, armorColor, clothingIcon, weaponIcon, otherIcon, soulgemIcon, edibleTag>
can i just combine 2 soul gems into one or something? if so idk how to do that
if you want to merge soul gems to make a bigger one. you'll need something like a mystic condenser. a few mods have this functionality but all need patches.
https://www.nexusmods.com/skyrimspecialedition/mods/126785
idk about compatibility to this though since it can make its own azura star.
Turned out I messed up in the installation. I have Skyrim Special Edition version 1.6.1170 and use Mod Organizer 2. I had installed the Special Edition version of the mod when I should have installed the Anniversary version. That's on me for not reading the instructions properly. If anyone has the same problem, I hope this might help.
For example I have a grand soul gem, flawed varla stone, and lesser soul gem, all empty. If I soul trap a lesser soul which one will it go to?
Regarding the soul replacing feature.
For example I have a common filled azura star, empty flawed varla stone, and an empty greater soul gem. When I soul trap a grand soul and it replaces the common soul in azura star. Where does the common soul from the star go to?
Subject.GetGlobalValue([0ADA0A04] < Error: Could not be resolved >) = 1.00000 OR
While looking at it in xEdit i noticed two small conflicts between YASTM and Guard Dialog Overhaul, nothing major just two DialogTopics who need their conditions to be merged over.
Another thing is something about Reliquary of Myth, with GIST you needed a script patch (rom_da10_soultrap_script.psc) to get the Mace of Molag Bal to use GIST's soul trap system, unfortunately that patch looks outdated if i compare the two. Anyhow would a similar patch be needed for RoM & YASTM to work together or are they compatible. For ease of access i've uploaded the script in question on pastebin, so you don't have to download and unpack the BSA just to see it.
With that said, I think YASTM will work (though Soul Diversion setting will be ignored) even with that script intact. Just that the soul gem fill priorities might not be exactly what it's supposed to be and may work slower than it should. Regardless, I'll get to these mods in a bit. Apparently I let some harmless test code through in 1.4.1 (it will print a few weird lines into YASTM.log) so it could use another bugfix release anyway.
Edit: After looking at it, I think I'll change my position regarding Soul Diversion and move the functionality into the DLL itself. To keep the possibility open for opting out of this system, I'll set up an actor exclusion configuration system instead, so the next update will take a bit longer.
Keep up the good work. :)