Jump to content

Sexlab - Cum Overlays


Recommended Posts

been trying to make it possible to clear the cum (and PAF) when you bath with Dirt and Blood i trough i finally got it after one hour of finding all the source files missing and figuring out how to copile stuff but the cum still doesn't get cleaned up after bathing ?

 

as it can be guessed i have no clue what i'm doing, but basically i just added the "SexlabInt.SlClearCum(PlayerRef)" line in the bath function and was hoping it would work

 

help would be greatly appreciated 

 

Spoiler

Scriptname Dirty_CleaningYoSelf extends activemagiceffect  

 

mzinInit Property Init Auto

mzinInterfaceSexlab Property SexlabInt Auto

mzinInterfacePaf Property Paf Auto

 

GlobalVariable Property Dirty_SoapRequired Auto 

Actor Property PlayerRef Auto

MiscObject Property Dirty_Soap Auto

Spell Property Dirty_SoapEffectSpell Auto

Spell Property Dirty_Spell_Dirt1 Auto

Spell Property Dirty_Spell_Dirt2 Auto

Spell Property Dirty_Spell_Dirt3 Auto

Spell Property Dirty_Spell_Dirt4 Auto

Spell Property Dirty_Spell_Blood1 Auto

Spell Property Dirty_Spell_Blood2 Auto

Spell Property Dirty_Spell_Blood3 Auto

Spell Property Dirty_Spell_Blood4 Auto

Spell Property Dirty_Spell_Clean Auto

Sound Property Dirty_WashingMarkerSound auto

Message Property Dirty_MessageBathWeapon Auto

Message Property Dirty_MessageBathCombat Auto

Message Property Dirty_MessageBathSoap Auto

Form[] Clothing

Formlist property Dirty_ListofSoaps Auto

GlobalVariable Property Dirty_WashingAutomaticClothes Auto

GlobalVariable Property Dirty_SoundEffect Auto

 

 

 

Event OnEffectStart(Actor akTarget, Actor akCaster)

 

If PlayerRef.IsInCombat()

Dirty_MessageBathCombat.Show()

elseif PlayerRef.IsWeaponDrawn()

Dirty_MessageBathWeapon.Show()

 

elseif Dirty_SoapRequired.GetValue() == 0

PlayBatheAnimation()

 

elseif Dirty_SoapRequired.GetValue() == 1 && PlayerRef.GetItemCount(Dirty_ListofSoaps) == 0

Dirty_MessageBathSoap.Show()

 

elseif Dirty_SoapRequired.GetValue() == 1 && PlayerRef.GetItemCount(Dirty_ListofSoaps) > 0

 

If PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(0)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(0))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(1)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(1))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(2)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(2))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(3)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(3))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(4)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(4))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(5)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(5))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(6)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(6))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(7)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(7))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(8)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(8))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(9)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(9))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(10)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(10))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(11)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(11))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(12)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(12))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(13)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(13))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(14)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(14))

 

elseif PlayerRef.GetItemCount(Dirty_ListofSoaps.GetAt(15)) > 0

PlayerRef.RemoveItem(Dirty_ListofSoaps.GetAt(15))

 

Endif

PlayBatheAnimation()

 

EndIf

EndEvent

 

Function PlayBatheAnimation()

 

Actor Player = PlayerRef

ForbidSex(PlayerRef, Forbid = true)

; force 3rd person

Game.ForceThirdPerson()

Game.DisablePlayerControls(True, True, False, False, True, False, True)

 

; undress

 

weapon weapon1

weapon weapon2

 

If Dirty_WashingAutomaticClothes.GetValue() == 1

 

If Game.GetFormFromFile(0x02003000, "All Geared Up Derivative.esp")

Spell Display = Game.GetFormFromFile(0x02003000, "All Geared Up Derivative.esp") As Spell

PlayerRef.RemoveSpell(Display)

endif

 

Clothing = new Form[33]

Int Index = Clothing.Length

While Index

Index -= 1

Int ArmorSlotMask = Armor.GetMaskForSlot(Index + 30)

Clothing[Index] = PlayerRef.GetWornForm(ArmorSlotMask)

If Clothing[Index]

PlayerRef.UnequipItem(Clothing[Index], False, True)

EndIf

EndWhile

 

Weapon1 = PlayerRef.GetEquippedWeapon()

Weapon2 = PlayerRef.GetEquippedWeapon(True)

PlayerRef.Unequipall()

endif

 

Utility.Wait(0.1)

if Dirty_SoundEffect.GetValue() == 1

int instanceID = Dirty_WashingMarkerSound.play(PlayerRef)     

Sound.SetInstanceVolume(instanceID, 1.0)

endif

; lather up

Debug.SendAnimationEvent(Player, "IdleForceDefaultState")

Utility.Wait(0.1)

Debug.SendAnimationEvent(Player, "IdleSearchingChest")

Utility.Wait(3.0)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(0.3)

Debug.SendAnimationEvent(Player, "IdleWarmArms")

Utility.Wait(1.5)

Debug.SendAnimationEvent(Player, "IdleStop")

Player.AddSpell(Dirty_SoapEffectSpell, False)

Utility.Wait(0.3)

Debug.SendAnimationEvent(Player, "IdleWarmArms")

Utility.Wait(1.5)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(1.0)

Debug.SendAnimationEvent(Player, "IdleWipeBrow")

Utility.Wait(3.0)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(0.3)

 

; wash

Debug.SendAnimationEvent(Player, "IdleWarmArms")

Utility.Wait(1.5)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(0.3)

Debug.SendAnimationEvent(Player, "IdleWarmArms")

Utility.Wait(1.5)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(0.3)

Debug.SendAnimationEvent(Player, "IdleWarmArms")

Utility.Wait(1.5)

 

 

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(0.3)

Debug.SendAnimationEvent(Player, "IdleWarmArms")

Utility.Wait(1.5)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(1.0)

 

; rinse off

Debug.SendAnimationEvent(Player, "IdleWarmHandsCrouched")

Utility.Wait(3.0)

Player.RemoveSpell(Dirty_SoapEffectSpell)

Player.RemoveSpell(Dirty_Spell_Dirt1)

Player.RemoveSpell(Dirty_Spell_Dirt2)

Player.RemoveSpell(Dirty_Spell_Dirt3)

Player.RemoveSpell(Dirty_Spell_Dirt4)

Player.RemoveSpell(Dirty_Spell_Blood1)

Player.RemoveSpell(Dirty_Spell_Blood2)

Player.RemoveSpell(Dirty_Spell_Blood3)

Player.RemoveSpell(Dirty_Spell_Blood4)

 

 

; clear

If Init.IsSexlabInstalled

SexlabInt.SlClearCum(PlayerRef)

EndIf

    Paf.ClearPafDirt(PlayerRef)

 

 

Player.AddSpell(Dirty_Spell_Clean, False)

Utility.Wait(1.0)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(1.0)

Debug.SendAnimationEvent(Player, "IdleWipeBrow")

Utility.Wait(3.0)

Debug.SendAnimationEvent(Player, "IdleStop")

Utility.Wait(0.3)

 

; enable controls

Game.EnablePlayerControls()

ForbidSex(PlayerRef, Forbid = false)

;re-equip

If Dirty_WashingAutomaticClothes.GetValue() == 1

 

If Game.GetFormFromFile(0x02003000, "All Geared Up Derivative.esp")

Spell Display = Game.GetFormFromFile(0x02003000, "All Geared Up Derivative.esp") As Spell

PlayerRef.AddSpell(Display)

endif

 

Int ClothingIndex = Clothing.Length

While ClothingIndex

ClothingIndex -= 1

If Clothing[ClothingIndex]

PlayerRef.EquipItem(Clothing[ClothingIndex], False, True)

EndIf

EndWhile

PlayerRef.EquipItemEx(Weapon1, 1, false, true)

PlayerRef.EquipItemEx(Weapon2, 2, false, true)

Endif

 

EndFunction

 

Function ForbidSex(Actor akTarget, Bool Forbid)

If Init.IsSexlabInstalled && akTarget

Faction SexLabForbiddenActors  = Game.GetFormFromFile(0x049068, "SexLab.esm") as Faction

If Forbid

akTarget.AddToFaction(SexLabForbiddenActors)

Else

akTarget.RemoveFromFaction(SexLabForbiddenActors)

EndIf

EndIf

EndFunction

 

 

Link to comment
  • 2 weeks later...
  • 2 months later...

Is there a maximum number of cum texture sets that you can have?  I tried to install three more to make a total of eight but the mod is only seeing the five I already had.  I doublechecked that my PapyrusUtil is the latest version.

 

For reference, the three sets came from 

 

I took his three sets and manually put the files in Set6, Set7 and Set8 folders in this mod's texture folder with the other sets. 

Link to comment

Hi,Monoman:

first at  all, thank you for your work at so many  tweaks and mods ( your version of Wartimes is really noteworthy).

I’m not able to show cum textures in my game. Of course, i have all requeriments, the five sets are filled and detected  (Papyrus.log says so), skse.ini is modified ( i tríed several posibilíties), but  the cum never shows. Papyrus.log goes  on saying that there is no free body slot and the texture is removed. I’m out of ideas. Any clues?

Link to comment
22 hours ago, pepeapa2 said:

 

Hi,Monoman:

first at  all, thank you for your work at so many  tweaks and mods ( your version of Wartimes is really noteworthy).

I’m not able to show cum textures in my game. Of course, i have all requeriments, the five sets are filled and detected  (Papyrus.log says so), skse.ini is modified ( i tríed several posibilíties), but  the cum never shows. Papyrus.log goes  on saying that there is no free body slot and the texture is removed. I’m out of ideas. Any clues?

I found the problem: it turns out that there is a skse64.ini inside Racemenu's folder in Mod Organizer. This is the one that need to be changed, at least on my side. 

Besides, your mod doesn´t contain set1 in the textures folder. Is that correct?

Link to comment

Just to clarify, because I've seen some (including me until now) setting this mod up a little bit wrongly:

 

The mod supports up to 5 texture sets.

Also, it looks for those 5 in these folders:

 

1: /textures/sexlab/

2: /textures/Sexlab - Cum Overlays/Set2/

3: /textures/Sexlab - Cum Overlays/Set3/

4: /textures/Sexlab - Cum Overlays/Set4/

5: /textures/Sexlab - Cum Overlays/Set5/

 

It DOES NOT use "/textures/Sexlab - Cum Overlays/Set 1", if you create that folder and put anything inside, it'll be ignored.

 

 

Source, to verify this for yourself: sco_utility.psc (lines 137-150).

Spoiler
While i <= CumSetCount ; Do for all sets
    If i == 1
        SetPrefix = "\\Sexlab\\"
    Else
        SetPrefix = "\\Sexlab - Cum Overlays\\Set" + i + "\\"
    EndIf
    Int j = TexNames.Length
    While j > 0
        j -= 1
        Menu.ProgressUpdateRemoveAllOverlays("Set" + i + "\\" + TexNames[j])
        CumHandle.RemoveOverlay(akTarget, TexNames[j], SetPrefix, RemoveCumSpell)
    EndWhile
    i += 1
EndWhile

 

 

Moreover, a maximum of 5 is hardcoded into many functions and objects.

As far as I see it, inceasing that number would require a lot of changes in almost every script and possibly in CK too.

 

Cheers :)

Edited by King-Crimson
Link to comment
  • 2 weeks later...
  • 3 weeks later...

I'm playing as a vampire, which I haven't done in a long while.  It occurred to me that something similiar to this mod, but for blood on the face and chest, would be awesome.  It could have multiple layers instead of just 2, it could affect speech checks or just outright make  everyone hostile to  you while your face is a mess...

Link to comment
17 hours ago, Lewd-File said:

I'm having the same issue where after a seemingly undetermined number of cum layers is applied the ones on the body will eventually disappear, yet the ones on the face seem to stay. Anyone been able to find a fix?

I'm also pretty sure that the game still thinks the cum is there. I have a mod that makes npcs comment on when the PC is covered in cum, so I tested it and made sure to only have layers be applied to the body, then went walking around and the npcs still seemed to think the cum was applied. It also will sometimes re appear if another layer is added, but it will also potentially go invisible again, and then when attempting to apply another layer, it will all flash visible for a second as soon as its applied, then go invisible again.

Link to comment
  • 1 month later...
On 3/11/2021 at 8:43 PM, Teraru said:

I could never get this mod to work till I did a bit of testing. What I did was lower the amount of maximum overlays in the skee.ini file. 

 

At 12 body overlays it would never show up on my body, 10 overlays it would only work like 1 out of 5 times, at 8 maximum body overlays it seems to be working every time.

I don't know if this will work for the LE version of skyrim, but it seems to be working for the SE version.

 

So if you don't see the cum on your character, try lowering the iNumOverlays on the body and/or head. Currently at 8 body, 5 head, 3 feet, 3 hands.

 

Thank you for the advice, this was finally what got it working for me on SE.

Link to comment
  • 2 weeks later...

Hihi!  I happened upon to a cum textures' mod (at least, it's not listed on the OP), SlaveTats Cum Textures/Replacer, and it's really good.  At least, I think it is.  And it's latest update was December.  It takes a bit of work to get it working with Cum Overlays, and it does require Sexlab Cum Overlays - Extra Slots to get your sixth and seventh sets, but it's worth it.  If I'm allowed, I'd be happy to share it, my build for my game, here.  Cheers!

Link to comment
  • 2 weeks later...
  • 5 weeks later...
On 10/26/2021 at 3:58 PM, King-Crimson said:

Just to clarify, because I've seen some (including me until now) setting this mod up a little bit wrongly:

 

The mod supports up to 5 texture sets.

Also, it looks for those 5 in these folders:

 

1: /textures/sexlab/

2: /textures/Sexlab - Cum Overlays/Set2/

3: /textures/Sexlab - Cum Overlays/Set3/

4: /textures/Sexlab - Cum Overlays/Set4/

5: /textures/Sexlab - Cum Overlays/Set5/

 

It DOES NOT use "/textures/Sexlab - Cum Overlays/Set 1", if you create that folder and put anything inside, it'll be ignored.

 

 

Source, to verify this for yourself: sco_utility.psc (lines 137-150).

  Reveal hidden contents
While i <= CumSetCount ; Do for all sets
    If i == 1
        SetPrefix = "\\Sexlab\\"
    Else
        SetPrefix = "\\Sexlab - Cum Overlays\\Set" + i + "\\"
    EndIf
    Int j = TexNames.Length
    While j > 0
        j -= 1
        Menu.ProgressUpdateRemoveAllOverlays("Set" + i + "\\" + TexNames[j])
        CumHandle.RemoveOverlay(akTarget, TexNames[j], SetPrefix, RemoveCumSpell)
    EndWhile
    i += 1
EndWhile

 

 

Moreover, a maximum of 5 is hardcoded into many functions and objects.

As far as I see it, inceasing that number would require a lot of changes in almost every script and possibly in CK too.

 

Cheers :)

ive written it how you posted it but I am getting only the normal SL textures and when I search for more sets in the mcm it does not discover them. Might I have written something wrong? Could you make a picture of yours?

Link to comment
3 hours ago, Thornagar said:

so do I need to make cum overlays and setx folders?

Set 1 is the default sexlab textures. 

IIRC the mod includes the Setx folders but your mod manager may delete them possibly because they're empty folders. 

3 hours ago, Thornagar said:

ive written it how you posted it but I am getting only the normal SL textures and when I search for more sets in the mcm it does not discover them. Might I have written something wrong? Could you make a picture of yours?

Files not being detected is generally an issue with PapyrusUtil being a wrong/old version. Some mods include out of date version of Putil. 

Link to comment
  • 2 weeks later...
  • 4 weeks later...

I've recently started having an issue, and I've tried updating SCO to see if it fixed it, which it didn't. SCO is no longer actually removing the overlays that it applies when I tell it to remove all overlays on player/npcs, I have to go into Racemenu and remove them manually. Any idea what is causing this?

 

Link to comment
  • 2 weeks later...

For me it always works fine, but lately it has stopped working. Now it make the opposite work, when orgasm happens it overlay nothing or if there is present some cum it totally remove cum from bodies like after washing ?

Link to comment
  • 4 weeks later...

Does this mod apply cum textures to magic effects like oakflesh? I currently don't have this mod though I may have installed and uninstalled it earlier, but I still have a very thick and noticeable cum texture applied to every character that uses a spell like oaklfesh, including mine own character.

Link to comment

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use