Jump to content

Recommended Posts

Posted (edited)

Hi,

first of all, ty for working on this.

The original SOS mod had functions like FindSchlongByName made available in SOS_API.psc so a specific addon could be retrieved and set. 

In the case of e.g. YPS, this would be used for the pubic growth functions like:

Form Function GetSosPubicHairByName(Int Stage)
    If Stage == 1
    ...
    ElseIf Stage == 3
        if SOS_API.Get().FindSchlongByName("Pubic Hair: Normal") != None
            Return SOS_API.Get().FindSchlongByName("Pubic Hair: Normal")
        else 
            Debug.Notification("SOS Addon Normal not found")
        endif
        Return None
EndFunction

and

Function AddPubicHairItem()
    if MCMValues.PubicHairEnabled && MCMValues.UseSoSPubicHair
		Sos.SetSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage))
	EndIf
EndFunction


Looking at your source .psc, I can see theres SetActorSchlong() which is likely to be used instead of SetSchlong(), but for the retrieval of them its only GetLoadedAddonNames(), but no function to directly search for a specific schlong right?
Just making sure I'm not overlooking anything as the logic itself doesn't change that much either, if the check has to be done against the retrieved array of available options, I guess.

Edit: Probably need GetLoadedAddonNames() instead of GetCompatibleAddonNames() 

Edit2: So I adjusted my already changed script (the original is using less of the available pubics, where I just wanted to have some randomization), since I have to sort out another issue right now, is there a better method than doing it like this?

Spoiler
string[] property SOSPubicHairNames auto hidden

String Function GetSosPubicHairByName(Int Stage)
	;Debug.Notification("Stage: " + Stage)
	SOSPubicHairNames = SOSAE_SKSE.GetLoadedAddonNames()
	If Stage == 1
		if ((SOSPubicHairNames.Find("PHLandingStrip") != -1) && (SOSPubicHairNames.Find("PHSmallStripe") != -1) && (SOSPubicHairNames.Find("PHNeatTrim") != -1))
			int randint = Utility.RandomInt(1,12)
			if (randint <= 4)
				Return "PHLandingStrip"
			elseif ((randint > 4) && (randint <= 8))
				Return "PHSmallStripe"
			else
				Return "PHNeatTrim"
			endif
		elseif (SOSPubicHairNames.Find("PHLandingStrip") != -1)
			Return "PHLandingStrip"
		else
			Debug.Notification("SOS Addons Landing Strip, Stripe & Neat Trim not found")
		endif
	ElseIf Stage == 2
		if ((SOSPubicHairNames.Find("PHBushy") != -1) && (SOSPubicHairNames.Find("PHHeart") != -1))
			if(Utility.RandomInt(0,10) <= 5)
				Return "PHBushy"
			else
				Return "PHHeart"
			endif
		elseif SOSPubicHairNames.Find("PHBushy") != -1
			Return "PHBushy"
		else 
			Debug.Notification("SOS Addon Bushy & Heart not found")
		endif
	ElseIf Stage == 3
		if SOSPubicHairNames.Find("PHNormal") != -1
			Return "PHNormal"
		else 
			Debug.Notification("SOS Addon Normal not found")
		endif
	ElseIf Stage == 4
		if SOSPubicHairNames.Find("PHWild") != -1
			Return "PHWild"
		else 
			Debug.Notification("SOS Addon Wild not found")
		endif
	ElseIf Stage == 5 ; 
		if SOSPubicHairNames.Find("PHVeryBushy") != -1
			Return "PHVeryBushy"
		else 
			Debug.Notification("SOS Addon Very Bushy not found")
		endif
	ElseIf Stage == 6
		if ((SOSPubicHairNames.Find("PHUntamed") != -1) && (SOSPubicHairNames.Find("PHNatural") != -1))
			if(Utility.Randomint(1,10) <= 5)
				Return "PHUntamed"
			else
				Return "PHNatural"
			endif
		elseif SOSPubicHairNames.Find("PHUntamed") != -1
			Return "PHUntamed"
		else
			Debug.Notification("SOS Addon Natural & Untamed not found")
		endif
	Else
		if SOSPubicHairNames.Find("PHShaved") != -1
			Return "PHShaved"
		else 
			Debug.Notification("SOS Addon Shaved not found")
		endif
	EndIf
	Return -1
EndFunction

Function AddPubicHairItem()
    if MCMValues.PubicHairEnabled && MCMValues.UseSoSPubicHair
		SOSAE_SKSE.SetActorSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage))
		;Sos.SetSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage)) ; Needs interface
	EndIf
EndFunction

Function RemovePubicHairItem()
	SOSAE_SKSE.RemoveSOSItems(PlayerActor)
	;Sos.RemoveSchlong(PlayerActor)
EndFunction

 

 

Edited by HannoJojo
Posted

SOS AE NG sohuld replace SOS if you have it, I don't knowhow many mods use it, but for now I havent seen many mods taht require the Scripts, the addons work normally, but I can help updating mods because I did some mod updates, if you know a little of Papyrus you can update mods yourself too

Posted
6 hours ago, HannoJojo said:

Hi,

first of all, ty for working on this.

The original SOS mod had functions like FindSchlongByName made available in SOS_API.psc so a specific addon could be retrieved and set. 

In the case of e.g. YPS, this would be used for the pubic growth functions like:

Form Function GetSosPubicHairByName(Int Stage)
    If Stage == 1
    ...
    ElseIf Stage == 3
        if SOS_API.Get().FindSchlongByName("Pubic Hair: Normal") != None
            Return SOS_API.Get().FindSchlongByName("Pubic Hair: Normal")
        else 
            Debug.Notification("SOS Addon Normal not found")
        endif
        Return None
EndFunction

and

Function AddPubicHairItem()
    if MCMValues.PubicHairEnabled && MCMValues.UseSoSPubicHair
		Sos.SetSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage))
	EndIf
EndFunction


Looking at your source .psc, I can see theres SetActorSchlong() which is likely to be used instead of SetSchlong(), but for the retrieval of them its only GetLoadedAddonNames(), but no function to directly search for a specific schlong right?
Just making sure I'm not overlooking anything as the logic itself doesn't change that much either, if the check has to be done against the retrieved array of available options, I guess.

Edit: Probably need GetLoadedAddonNames() instead of GetCompatibleAddonNames() 

Edit2: So I adjusted my already changed script (the original is using less of the available pubics, where I just wanted to have some randomization), since I have to sort out another issue right now, is there a better method than doing it like this?

  Hide contents
string[] property SOSPubicHairNames auto hidden

String Function GetSosPubicHairByName(Int Stage)
	;Debug.Notification("Stage: " + Stage)
	SOSPubicHairNames = SOSAE_SKSE.GetLoadedAddonNames()
	If Stage == 1
		if ((SOSPubicHairNames.Find("PHLandingStrip") != -1) && (SOSPubicHairNames.Find("PHSmallStripe") != -1) && (SOSPubicHairNames.Find("PHNeatTrim") != -1))
			int randint = Utility.RandomInt(1,12)
			if (randint <= 4)
				Return "PHLandingStrip"
			elseif ((randint > 4) && (randint <= 8))
				Return "PHSmallStripe"
			else
				Return "PHNeatTrim"
			endif
		elseif (SOSPubicHairNames.Find("PHLandingStrip") != -1)
			Return "PHLandingStrip"
		else
			Debug.Notification("SOS Addons Landing Strip, Stripe & Neat Trim not found")
		endif
	ElseIf Stage == 2
		if ((SOSPubicHairNames.Find("PHBushy") != -1) && (SOSPubicHairNames.Find("PHHeart") != -1))
			if(Utility.RandomInt(0,10) <= 5)
				Return "PHBushy"
			else
				Return "PHHeart"
			endif
		elseif SOSPubicHairNames.Find("PHBushy") != -1
			Return "PHBushy"
		else 
			Debug.Notification("SOS Addon Bushy & Heart not found")
		endif
	ElseIf Stage == 3
		if SOSPubicHairNames.Find("PHNormal") != -1
			Return "PHNormal"
		else 
			Debug.Notification("SOS Addon Normal not found")
		endif
	ElseIf Stage == 4
		if SOSPubicHairNames.Find("PHWild") != -1
			Return "PHWild"
		else 
			Debug.Notification("SOS Addon Wild not found")
		endif
	ElseIf Stage == 5 ; 
		if SOSPubicHairNames.Find("PHVeryBushy") != -1
			Return "PHVeryBushy"
		else 
			Debug.Notification("SOS Addon Very Bushy not found")
		endif
	ElseIf Stage == 6
		if ((SOSPubicHairNames.Find("PHUntamed") != -1) && (SOSPubicHairNames.Find("PHNatural") != -1))
			if(Utility.Randomint(1,10) <= 5)
				Return "PHUntamed"
			else
				Return "PHNatural"
			endif
		elseif SOSPubicHairNames.Find("PHUntamed") != -1
			Return "PHUntamed"
		else
			Debug.Notification("SOS Addon Natural & Untamed not found")
		endif
	Else
		if SOSPubicHairNames.Find("PHShaved") != -1
			Return "PHShaved"
		else 
			Debug.Notification("SOS Addon Shaved not found")
		endif
	EndIf
	Return -1
EndFunction

Function AddPubicHairItem()
    if MCMValues.PubicHairEnabled && MCMValues.UseSoSPubicHair
		SOSAE_SKSE.SetActorSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage))
		;Sos.SetSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage)) ; Needs interface
	EndIf
EndFunction

Function RemovePubicHairItem()
	SOSAE_SKSE.RemoveSOSItems(PlayerActor)
	;Sos.RemoveSchlong(PlayerActor)
EndFunction

 

 

I can help wit something:

First I have added a Keyword that can be used for pubes in the SOS core esp, If you are using a mod with pubes, are updating a mod that has pubes or making a mods for pubes, I think you can use it for some clarity with Sexlab so you don't need to worry about it

Second, I think I can do something for the mod you are doing, I can help with a function that returns all Pubes, either by name or as armors in an array, that way you can work with them, but you need to specify what function you need, and as I say, I added the pubes keyword so we can do the functions to work more easily and better as longs as you add the SOS_Pubes Keyword to the pubes  

Posted
7 hours ago, HannoJojo said:

Hi,

first of all, ty for working on this.

The original SOS mod had functions like FindSchlongByName made available in SOS_API.psc so a specific addon could be retrieved and set. 

In the case of e.g. YPS, this would be used for the pubic growth functions like:

Form Function GetSosPubicHairByName(Int Stage)
    If Stage == 1
    ...
    ElseIf Stage == 3
        if SOS_API.Get().FindSchlongByName("Pubic Hair: Normal") != None
            Return SOS_API.Get().FindSchlongByName("Pubic Hair: Normal")
        else 
            Debug.Notification("SOS Addon Normal not found")
        endif
        Return None
EndFunction

and

Function AddPubicHairItem()
    if MCMValues.PubicHairEnabled && MCMValues.UseSoSPubicHair
		Sos.SetSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage))
	EndIf
EndFunction


Looking at your source .psc, I can see theres SetActorSchlong() which is likely to be used instead of SetSchlong(), but for the retrieval of them its only GetLoadedAddonNames(), but no function to directly search for a specific schlong right?
Just making sure I'm not overlooking anything as the logic itself doesn't change that much either, if the check has to be done against the retrieved array of available options, I guess.

Edit: Probably need GetLoadedAddonNames() instead of GetCompatibleAddonNames() 

Edit2: So I adjusted my already changed script (the original is using less of the available pubics, where I just wanted to have some randomization), since I have to sort out another issue right now, is there a better method than doing it like this?

  Reveal hidden contents
string[] property SOSPubicHairNames auto hidden

String Function GetSosPubicHairByName(Int Stage)
	;Debug.Notification("Stage: " + Stage)
	SOSPubicHairNames = SOSAE_SKSE.GetLoadedAddonNames()
	If Stage == 1
		if ((SOSPubicHairNames.Find("PHLandingStrip") != -1) && (SOSPubicHairNames.Find("PHSmallStripe") != -1) && (SOSPubicHairNames.Find("PHNeatTrim") != -1))
			int randint = Utility.RandomInt(1,12)
			if (randint <= 4)
				Return "PHLandingStrip"
			elseif ((randint > 4) && (randint <= 8))
				Return "PHSmallStripe"
			else
				Return "PHNeatTrim"
			endif
		elseif (SOSPubicHairNames.Find("PHLandingStrip") != -1)
			Return "PHLandingStrip"
		else
			Debug.Notification("SOS Addons Landing Strip, Stripe & Neat Trim not found")
		endif
	ElseIf Stage == 2
		if ((SOSPubicHairNames.Find("PHBushy") != -1) && (SOSPubicHairNames.Find("PHHeart") != -1))
			if(Utility.RandomInt(0,10) <= 5)
				Return "PHBushy"
			else
				Return "PHHeart"
			endif
		elseif SOSPubicHairNames.Find("PHBushy") != -1
			Return "PHBushy"
		else 
			Debug.Notification("SOS Addon Bushy & Heart not found")
		endif
	ElseIf Stage == 3
		if SOSPubicHairNames.Find("PHNormal") != -1
			Return "PHNormal"
		else 
			Debug.Notification("SOS Addon Normal not found")
		endif
	ElseIf Stage == 4
		if SOSPubicHairNames.Find("PHWild") != -1
			Return "PHWild"
		else 
			Debug.Notification("SOS Addon Wild not found")
		endif
	ElseIf Stage == 5 ; 
		if SOSPubicHairNames.Find("PHVeryBushy") != -1
			Return "PHVeryBushy"
		else 
			Debug.Notification("SOS Addon Very Bushy not found")
		endif
	ElseIf Stage == 6
		if ((SOSPubicHairNames.Find("PHUntamed") != -1) && (SOSPubicHairNames.Find("PHNatural") != -1))
			if(Utility.Randomint(1,10) <= 5)
				Return "PHUntamed"
			else
				Return "PHNatural"
			endif
		elseif SOSPubicHairNames.Find("PHUntamed") != -1
			Return "PHUntamed"
		else
			Debug.Notification("SOS Addon Natural & Untamed not found")
		endif
	Else
		if SOSPubicHairNames.Find("PHShaved") != -1
			Return "PHShaved"
		else 
			Debug.Notification("SOS Addon Shaved not found")
		endif
	EndIf
	Return -1
EndFunction

Function AddPubicHairItem()
    if MCMValues.PubicHairEnabled && MCMValues.UseSoSPubicHair
		SOSAE_SKSE.SetActorSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage))
		;Sos.SetSchlong(PlayerActor, GetSosPubicHairByName(PubicHairStage)) ; Needs interface
	EndIf
EndFunction

Function RemovePubicHairItem()
	SOSAE_SKSE.RemoveSOSItems(PlayerActor)
	;Sos.RemoveSchlong(PlayerActor)
EndFunction

 

 

And other thing, you can use this function

;Set an schlong to the actor using a string, you can use GetCompatibleAddonNames to get the addons, and SetActorSchlong to set the schlong
Function SetActorSchlong(Actor akActor, String asAddonName) Global Native

to set a pubes using it's name, now I think I didn't specify this, but the mod doesn't have an API, instead it uses directly the functions from SOSAE_SKSE.psc to be more native, I will put there the functions that you can need

Posted (edited)
16 hours ago, Spongebob Hentai Mod said:

And other thing, you can use this function

;Set an schlong to the actor using a string, you can use GetCompatibleAddonNames to get the addons, and SetActorSchlong to set the schlong
Function SetActorSchlong(Actor akActor, String asAddonName) Global Native

to set a pubes using it's name, now I think I didn't specify this, but the mod doesn't have an API, instead it uses directly the functions from SOSAE_SKSE.psc to be more native, I will put there the functions that you can need


Still need some final test, but I think I managed. Biggest issue was some rogue scripts in my compile setup that made the compiler use the wrong scripts >.> (source/scripts <-> scripts/source folder issue...).

Do you have an idea why in my compile setup (which mostly only has the mods active required to compile the scripts) the log would tell me that all the addons are missing?
 

Spoiler
[info] SOS: Processed 1124 armors.
[info] Loaded 1 NPC overrides from JSON.
[info] SOS: Processed 20 NPCs.
[info] Data correctly loaded:
[info]  > Addons: 21
[info]  > Male Groups: 5
[info]  > Female Groups: 18
[info] Loaded bone data for 0 addons
[info] SOS: Activation Events (ObjectLoad + InitScript) Registered
[info] SOS: EquipEvent registered
[info] SOS AE - SexLab Compatibility Enabled (Faction cached)
[info] Reverting Storage: clearing 1 entries
[warning] SOS: Addon 'TRX_Futa' missing for Base 00000007. Cleared.
[warning] SOS: Addon 'PHHeart' missing for Base 00013BA3. Cleared.
[warning] SOS: Addon 'VectorPlexusMuscular' missing for Base 000813B5. Cleared.
[warning] SOS: Addon 'PHNormal' missing for Base 00013BAE. Cleared.
[warning] SOS: Addon 'SmurfAverage' missing for Base 0001A670. Cleared.
[warning] SOS: Addon 'ERF_Futa1' missing for Base 000918E2. Cleared.
[warning] SOS: Addon 'PHHeart' missing for Base 00013BA2. Cleared.

 

The addons are all installed and active, I can also see their categories in the MCM and the npcs tab (but not manually assign them at all). Your addons file was also overwriting the original addons.
 

Edited by HannoJojo
moved log to spoiler
Posted

Hello,

 

I have an issue with the third-person camera being stuck underneath the player - I installed both XP32 Maximum Skeleton Special Extended - Fixed Scripts and Optimised Scripts for XPMSSE as described in a earlier comment, bit the bug still occurs.

I can't fully pinpoint what causes it - It noticed it happening when my character changes cells like entering a city, changing armor or when I do something in the racemenu - but it doesn't happen always. I need to restart the entire game and then it is fixed again - until it happens again, sometimes after 5 min when I do one of the discribed things, sometimes I don't have an issue.

I assume it might have something to do with updating the player character - SOS tries to load/update the character which somehow gets the camera messed up in third person
No issues in first person, but as soon as I go back to third person it's glued to the ground again until I restart the whole game.

Posted
52 minutes ago, HannoJojo said:


Still need some final test, but I think I managed. Biggest issue was some rogue scripts in my compile setup that made the compiler use the wrong scripts >.> (source/scripts <-> scripts/source folder issue...).

Do you have an idea why in my compile setup (which mostly only has the mods active required to compile the scripts) the log would tell me that all the addons are missing?
 

  Reveal hidden contents
[info] SOS: Processed 1124 armors.
[info] Loaded 1 NPC overrides from JSON.
[info] SOS: Processed 20 NPCs.
[info] Data correctly loaded:
[info]  > Addons: 21
[info]  > Male Groups: 5
[info]  > Female Groups: 18
[info] Loaded bone data for 0 addons
[info] SOS: Activation Events (ObjectLoad + InitScript) Registered
[info] SOS: EquipEvent registered
[info] SOS AE - SexLab Compatibility Enabled (Faction cached)
[info] Reverting Storage: clearing 1 entries
[warning] SOS: Addon 'TRX_Futa' missing for Base 00000007. Cleared.
[warning] SOS: Addon 'PHHeart' missing for Base 00013BA3. Cleared.
[warning] SOS: Addon 'VectorPlexusMuscular' missing for Base 000813B5. Cleared.
[warning] SOS: Addon 'PHNormal' missing for Base 00013BAE. Cleared.
[warning] SOS: Addon 'SmurfAverage' missing for Base 0001A670. Cleared.
[warning] SOS: Addon 'ERF_Futa1' missing for Base 000918E2. Cleared.
[warning] SOS: Addon 'PHHeart' missing for Base 00013BA2. Cleared.

 

The addons are all installed and active, I can also see their categories in the MCM and the npcs tab (but not manually assign them at all). Your addons file was also overwriting the original addons.
 

Seems to be generally working in my normal savegame.

If anyone wants to test it, just let this script overwrite the one in YPS 6.9.2.
This was not tested very much, I just confirmed base functionality (pubics "growing" due to YPS)

YPS_6.9.2_SOSAE_Patch_0.1.zip

Posted
5 hours ago, HannoJojo said:

Seems to be generally working in my normal savegame.

If anyone wants to test it, just let this script overwrite the one in YPS 6.9.2.
This was not tested very much, I just confirmed base functionality (pubics "growing" due to YPS)

YPS_6.9.2_SOSAE_Patch_0.1.zip 178.9 kB · 0 downloads

The log says something with some missing addons after a loading a game, maybe something with compressing or reinstalling a mod or other mods changing some parameters, what the mod does is Cleaning some NPCs data so it doesn't crash or NPCs have a missing addon and can't have a normal Schlong

Posted
On 3/4/2026 at 2:45 PM, TheTreeman said:

Hello,

 

I have an issue with the third-person camera being stuck underneath the player - I installed both XP32 Maximum Skeleton Special Extended - Fixed Scripts and Optimised Scripts for XPMSSE as described in a earlier comment, bit the bug still occurs.

I can't fully pinpoint what causes it - It noticed it happening when my character changes cells like entering a city, changing armor or when I do something in the racemenu - but it doesn't happen always. I need to restart the entire game and then it is fixed again - until it happens again, sometimes after 5 min when I do one of the discribed things, sometimes I don't have an issue.

I assume it might have something to do with updating the player character - SOS tries to load/update the character which somehow gets the camera messed up in third person
No issues in first person, but as soon as I go back to third person it's glued to the ground again until I restart the whole game.

Can you pass your modlist? Is a bug I had before, I remade the modlsit and didn't get the bug anymore, I think is somethign with teh Skeleton, but I still try to find the answer

Posted
1 hour ago, Spongebob Hentai Mod said:

Can you pass your modlist? Is a bug I had before, I remade the modlsit and didn't get the bug anymore, I think is somethign with teh Skeleton, but I still try to find the answer

Yeah the skeleton is possible, I tried reinstalling things but it didn't work
But yeah sure thing - modlist attached

Plugins.txt

Posted

Important Note: 
I will not update in a long time because I will try to update other mod (well two mods into one) so answers for fixing some mods will take time, and the bug of the floor will take some time too, maybe someone that know a little on how Skyrim skeleton works can help solving the bug, and if you pass the mod list (no plugin list) you can disable the mods that are really little and can't cause the bug (like mods that are only textures or sound), so it can help fixing the bug

Posted (edited)

I've been getting both the camera bug and the no schlong bug. Also having a new issue where SOS wont detect any installed plugins. Everything is installed correctly as far as I can tell and sorted with loot.


Edit - If someone with a functioning version with only the basic add-on installed could post their addon data json I would appreciate it.

Edited by LewdStuffLMAO
Posted
2 hours ago, Spongebob Hentai Mod said:

These are the plugins it would be better to have the mods, is the one called modlist.txt in the profile folder

I was looking but could not find a modlist.txt - I'm using Vortex, is this maybe something only MO2 has?
Anyway I exported this file which shows it too, I hope this helps

Skyrim SE - mod list - 2026-03-06.txt

Posted
1 hour ago, TheTreeman said:

I was looking but could not find a modlist.txt - I'm using Vortex, is this maybe something only MO2 has?
Anyway I exported this file which shows it too, I hope this helps

Skyrim SE - mod list - 2026-03-06.txt 78.88 kB · 0 downloads

Even better, I can see what mods are you using with URLs, many thanks I will try to analyze it, I hope I found the origin of the bug for other users

Posted (edited)

 

 

Do you have an idea, why my character gets assigned a random addon each time I load the game?
The MCM even says the addon is set to 'None', but there's still another one assigned.

NPC Override also says "" for the addon for my char.
When I reselect the None Option in the NPC menu, it will set it to none again, until I restart the game.

 

Screenshots (its a bit hard to see with the background)

Spoiler

image.png.9e57b2310fc4f8cfff2ccf5eae397c35.png

image.png.bc46806edeb0639d7e744a65fe9e7daf.png

 

SOS_AE.log

Spoiler
[info] SOS: Processed 1124 armors.
[info] Loaded 1 NPC overrides from JSON.
[info] SOS: Processed 14231 NPCs.
[info] Data correctly loaded:
[info]  > Addons: 21
[info]  > Male Groups: 5
[info]  > Female Groups: 18
[debug] Addon found: ERF_HorsePenisRedux2
[debug] Addon found: ERF_HorsePenisRedux
[debug] Addon found: ERF_Futa1
[debug] Addon found: SmurfAverage
[debug] Addon found: VectorPlexusMuscular
[debug] Addon found: VectorPlexusRegular
[debug] Addon found: PHNormal
[debug] Addon found: PHSmallStripe
[debug] Addon found: PHVeryBushy
[debug] Addon found: PHNeatTrim
[debug] Addon found: PHHeart
[debug] Addon found: PHBushy
[debug] Addon found: PHLandingStrip
[debug] Addon found: PHUntamed
[debug] Addon found: PHStripe
[debug] Addon found: PHNatural
[debug] Addon found: PHShaved
[debug] Addon found: PHWild
[debug] Addon found: Bound_Cock
[debug] Addon found: Dw3BAF_Futa
[debug] Addon found: TRX_Futa
[info] Loaded bone data for 21 addons
[info] SOS: Activation Events (ObjectLoad + InitScript) Registered
[info] SOS: EquipEvent registered
[info] SOS AE - SexLab Compatibility Enabled (Faction cached)
[info] Reverting Storage: clearing 1 entries
[debug] SOS: JSON updated with MCM manual overrides (Gender Groups preserved).
[debug] SOS: JSON updated with MCM manual overrides (Gender Groups preserved).

 


SOS_NPC_Override.json

Spoiler
{
    "npc_overrides": {
        "7|Skyrim.esm": {
            "addon": "",
            "name": "Lena",
            "rank": 1
        }
    }
}

 

 

 

 

Edited by HannoJojo
Posted (edited)
13 hours ago, HannoJojo said:

 

 

Do you have an idea, why my character gets assigned a random addon each time I load the game?
The MCM even says the addon is set to 'None', but there's still another one assigned.

NPC Override also says "" for the addon for my char.
When I reselect the None Option in the NPC menu, it will set it to none again, until I restart the game.

 

Screenshots (its a bit hard to see with the background)

  Reveal hidden contents

image.png.9e57b2310fc4f8cfff2ccf5eae397c35.png

image.png.bc46806edeb0639d7e744a65fe9e7daf.png

 

SOS_AE.log

  Reveal hidden contents
[info] SOS: Processed 1124 armors.
[info] Loaded 1 NPC overrides from JSON.
[info] SOS: Processed 14231 NPCs.
[info] Data correctly loaded:
[info]  > Addons: 21
[info]  > Male Groups: 5
[info]  > Female Groups: 18
[debug] Addon found: ERF_HorsePenisRedux2
[debug] Addon found: ERF_HorsePenisRedux
[debug] Addon found: ERF_Futa1
[debug] Addon found: SmurfAverage
[debug] Addon found: VectorPlexusMuscular
[debug] Addon found: VectorPlexusRegular
[debug] Addon found: PHNormal
[debug] Addon found: PHSmallStripe
[debug] Addon found: PHVeryBushy
[debug] Addon found: PHNeatTrim
[debug] Addon found: PHHeart
[debug] Addon found: PHBushy
[debug] Addon found: PHLandingStrip
[debug] Addon found: PHUntamed
[debug] Addon found: PHStripe
[debug] Addon found: PHNatural
[debug] Addon found: PHShaved
[debug] Addon found: PHWild
[debug] Addon found: Bound_Cock
[debug] Addon found: Dw3BAF_Futa
[debug] Addon found: TRX_Futa
[info] Loaded bone data for 21 addons
[info] SOS: Activation Events (ObjectLoad + InitScript) Registered
[info] SOS: EquipEvent registered
[info] SOS AE - SexLab Compatibility Enabled (Faction cached)
[info] Reverting Storage: clearing 1 entries
[debug] SOS: JSON updated with MCM manual overrides (Gender Groups preserved).
[debug] SOS: JSON updated with MCM manual overrides (Gender Groups preserved).

 


SOS_NPC_Override.json

  Reveal hidden contents
{
    "npc_overrides": {
        "7|Skyrim.esm": {
            "addon": "",
            "name": "Lena",
            "rank": 1
        }
    }
}

 

 

 

 

OK, I can 100% replicate the bug, for what I can see, this happens only when the player doens't have an addon or has the "" addon AND doesn't have anything in the slot52, I think I can fix it fast, Thanks!

Edited by Spongebob Hentai Mod
Posted
On 3/7/2026 at 6:38 AM, HannoJojo said:

 

 

Do you have an idea, why my character gets assigned a random addon each time I load the game?
The MCM even says the addon is set to 'None', but there's still another one assigned.

NPC Override also says "" for the addon for my char.
When I reselect the None Option in the NPC menu, it will set it to none again, until I restart the game.

 

Screenshots (its a bit hard to see with the background)

  Reveal hidden contents

image.png.9e57b2310fc4f8cfff2ccf5eae397c35.png

image.png.bc46806edeb0639d7e744a65fe9e7daf.png

 

SOS_AE.log

  Reveal hidden contents
[info] SOS: Processed 1124 armors.
[info] Loaded 1 NPC overrides from JSON.
[info] SOS: Processed 14231 NPCs.
[info] Data correctly loaded:
[info]  > Addons: 21
[info]  > Male Groups: 5
[info]  > Female Groups: 18
[debug] Addon found: ERF_HorsePenisRedux2
[debug] Addon found: ERF_HorsePenisRedux
[debug] Addon found: ERF_Futa1
[debug] Addon found: SmurfAverage
[debug] Addon found: VectorPlexusMuscular
[debug] Addon found: VectorPlexusRegular
[debug] Addon found: PHNormal
[debug] Addon found: PHSmallStripe
[debug] Addon found: PHVeryBushy
[debug] Addon found: PHNeatTrim
[debug] Addon found: PHHeart
[debug] Addon found: PHBushy
[debug] Addon found: PHLandingStrip
[debug] Addon found: PHUntamed
[debug] Addon found: PHStripe
[debug] Addon found: PHNatural
[debug] Addon found: PHShaved
[debug] Addon found: PHWild
[debug] Addon found: Bound_Cock
[debug] Addon found: Dw3BAF_Futa
[debug] Addon found: TRX_Futa
[info] Loaded bone data for 21 addons
[info] SOS: Activation Events (ObjectLoad + InitScript) Registered
[info] SOS: EquipEvent registered
[info] SOS AE - SexLab Compatibility Enabled (Faction cached)
[info] Reverting Storage: clearing 1 entries
[debug] SOS: JSON updated with MCM manual overrides (Gender Groups preserved).
[debug] SOS: JSON updated with MCM manual overrides (Gender Groups preserved).

 


SOS_NPC_Override.json

  Reveal hidden contents
{
    "npc_overrides": {
        "7|Skyrim.esm": {
            "addon": "",
            "name": "Lena",
            "rank": 1
        }
    }
}

 

 

 

 

OK I'm pretty dumb, the problem was that I loaded the NPC JSON first, AND after that I loaded the saved data from the co-save when it should be reverse, I fixed and updated a new version

Posted

Like many others, I appreciate your time and efforts to make this mod work flawlessly.

 

I'm running Skyrim 1.6.1170 and use Vortex to install everything.

 

Can you tell your fans if Schlongs of Skyrim AE-NG is compatible -- or not -- with The New Gentleman (T.N.G.)?

Posted
1 hour ago, Maidenslayer said:

Like many others, I appreciate your time and efforts to make this mod work flawlessly.

 

I'm running Skyrim 1.6.1170 and use Vortex to install everything.

 

Can you tell your fans if Schlongs of Skyrim AE-NG is compatible -- or not -- with The New Gentleman (T.N.G.)?

Not compatible, but I think a patch can be done to make both work, I don't use TNG and actually I made the update to don't use TNG because I only needed the futa addons, so I really didn't consider the compatibility.

now I don't know how TNG works on a low level (SKSE and Papyrus), and I don't know if I can dedicate too much time to something I really don't use, that's why I published the source scripts if someone wants to do it

The incompatibility is mostly because they both do the same, the problem you can have using SOS is that the model is the same as the one from ~2015, I think Himbo is already made to only change the model from SOS, but i really don't know, I don't use male models

I think that if someone wants to help with a compatibility update or patch needs to consider what TNG should do and what SOS do instead of TNG, like TNG only for males, and SOS only for females, I think it can be done, but depends really on how TNG works, because it can need an update from SOS AND TNG

tldr, not compatible for now, an update can be done, but I don't have the time or knowledge

Posted

First of all, allow me to thank you for working on it, and i apologize in advance if anything i say will look weird - i am not a native English speaker. I wanted to ask if it would be possible to add a separate buttons to bend player's schlong in particular? It's a bit of a pain in the ass during the animation, since it often targets the partner instead of player character.

P.S. Also having this weird bag with all crafting station (excluding armor upgrade table for some reason), but only on female characters. Perhaps it has something to do with races? My character, that uses this (https://www.nexusmods.com/skyrimspecialedition/mods/90459) race doesn't have this problem         

Posted
On 3/12/2026 at 4:52 PM, Troel said:

First of all, allow me to thank you for working on it, and i apologize in advance if anything i say will look weird - i am not a native English speaker. I wanted to ask if it would be possible to add a separate buttons to bend player's schlong in particular? It's a bit of a pain in the ass during the animation, since it often targets the partner instead of player character.

P.S. Also having this weird bag with all crafting station (excluding armor upgrade table for some reason), but only on female characters. Perhaps it has something to do with races? My character, that uses this (https://www.nexusmods.com/skyrimspecialedition/mods/90459) race doesn't have this problem         

thanks for the race information, I think i can figure better what can be causing it

for the botton, I think I will separate two new bottons, I will try to do in the next update

Posted
4 hours ago, Spongebob Hentai Mod said:

thanks for the race information, I think i can figure better what can be causing it

for the botton, I think I will separate two new bottons, I will try to do in the next update

After some more testing, *adding* a schlong to the character fixes the problem. Basically, if player character doesn't have a schlong, camera breaks and if it has, then everyhting wroks normally    

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...