Jump to content

Recommended Posts

Posted (edited)
19 hours ago, Samhsay said:

I will

 

Franco Cozzo already make it in his arosual helper. So I need to come up with something else.
 

Just copy that chunk of it if you want, my mod was mostly to focus on the other arousal aspects like the arousal changes from consumption and damage and etc, more of a +\- to the arousal rather than "things that happen when it is changed or reaches a level", the animations were just a little bonus. I already put a mention on the mods page that if they want to use the covering hands that this mod does it better anyway.

 

It does fill the item slot like the old covering hands did so I suppose you may want to make that better as well (but if you dont I'm fine with you just "stealing" that code.)

Edited by Franco Cozzo
Posted (edited)

I've been looking through the scripts you shared CoverArosual.psc, CoverArosualEffects.psc, CoverPerks.psc, CoverPerk.psc, and CoverScript.psc and I'm impressed. You've built a complete system here:

 

Arousal tracking with environmental factors (spectators, intoxication, slut perk) the spectator value is 2000 that's the default value from mod but it may be too far. I suggest maybe 700-850

Visual/audio feedback (blur effects, sounds)

Dynamic perk system that grants/removes perks based on behavior

Willpower mechanics that act as a "brake" on behavior

AAF integration for automatic masturbation scenes

 

And the best part? You're doing it all with spells, not equipment slots. No slot conflicts, no armor requirements, just clean magic effects added directly to the player. I noticed the 
settings.skipWalk = false comment showing you already solved the AAF T-pose issue

Spectator counting with line-of-sight checks

 

Integration with SAKR, FPAttributes, and Devious Devices this is great!  If you ever wanted to expand it to trigger custom idle animations (like the exhibitionist poses we've been discussing) instead of AAF scenes, the framework is already there you could easily swap in PlayIdle() calls. Something maybe like

 

if arosual >= 90 && isPlayerAlone()
    ; Instead of AAF masturbation, trigger a custom idle
    Game.GetPlayer().PlayIdle(MyExhibitionistIdle)
endif 

 

Doesn't have to be solely for characters with exhibitionist perk could be just for player in general. I guess if they had exhibitionist perk player would not care if they are alone? Or even better maybe unequip all clothing that PC has on? Maybe add willpower mechanic if PC is in town or area with people and it drains willpower if they are clothed since exhibitionists like to show off their bodies.  When willpower is below a certain level auto unequip all clothing. When exhibitionists are naked they slowly gain willpower but the amount is capped to a certain number like 60 or something

 

Edited by Cookiemonsta234
Posted (edited)
On 3/17/2026 at 3:44 AM, Franco Cozzo said:

If its possible to set things that way you could (provided i understand correctly) have a "wandering hands" sort of thing at higher arousal instead of straight up "stop and masturbate" so when you're character is "idle+aroused" they could touch themselves, raising arousal and possibly leading to the masturbate scene. Or maybe when they're nude and arousal passes to "aroused" the chance of their covering hands changing to playing hands could occur?

 

If the player had a vibrator equipped it could be a "activate vibration" or maybe a "play with it (animation)" with an alt animation for plugs. (this all depends how much work kzd wants to put in though, we shouldn't "expect" someone else to do the work).......

 

Hoping I understand it correctly and even if I don't I'm glad this mod is growing into something really cool.

 

It looks like Kziitd already created animated poses with vibrators and cucumbers that could be used as idles here. If Kziitd is ok with it maybe this can be included in mod. She made standing ones and while on ground. She may want to create new ones.

 

Straw made this website that has a list of poses or idles and some are animated https://flyfabe.de/posedb/

 

 

Screenshot 2026-03-18 175927.png

Edited by Cookiemonsta234
Posted (edited)
30 minutes ago, Cookiemonsta234 said:

 

It looks like Kziitd already created animated poses with vibrators and cucumbers that could be used as idles here. If Kziitd is ok with it maybe this can be included in mod. She made standing ones and while on ground. She may want to create new ones.

 

Straw made this website that has a list of poses or idles and some are animated https://flyfabe.de/posedb/

 

 

Screenshot 2026-03-18 175927.png

Cool site, some of those seem like they could be used already (with the ok) even if the pickle isnt changed since I assume using the existing item would be a heap of extra work and maybe not even possible**

Personally I was thinking mostly standing animations, but that's just me. 

 

 

**unless its a crazy over the top amount of effort re-work making the dildos equippable weapons temporarily/duplicating for the animation then deleting, so they are "equipped" but then the model would need to be altered for the hand-grip angle as well which would also then un-equip whatever the player is actually holding unless its in the shield slot or something but I dont even know if the shield-slot even works as an off-hand in fallout 4 or if other mods are using it already. of course i don't expect *anyone* to bother doing this since it may not even work like I imagine I'm just over-thinking also even if the new animations are working, the existing DD vibe/plug would likely still be "inside" the character since theyre typically protected items as well so it could also just cause a double-up. 

or maybe instead of weapons its an armour piece that just looks like the toy that is being used that takes a slot like the zaz-drip animations do but is just equipped on the arm visibly (since that slot isnt used by DD)

Edited by Franco Cozzo
Posted
6 hours ago, Cookiemonsta234 said:

I suggest maybe 700-850

I'll add slider to mcm.  From 500 to 5000. 

 

And I'll see which animations might be usable for horny idle. And then I'll ask kziitd if I may use it. 

 

I think it's worth making 3-4 idle stages.

1. Just horny actions

2. Toching yourself but not masturbation

3. Masturbation.

I could make quite a few subgraph data entries. I'm not sure it will work quickly. 

Posted

Experiments have shown that more experiments are needed. Currently, I can only invoke idle with a script. And this interferes with the covering animation. I need to figure out how to make it work.

For now, the next update will feature an improved MCM menu.

Posted

curious, my character is always hammered on wine and uses calmex silk regularly for every sex encounter yet has never gotten any PVPK around that.   Also has sex with tentacles every now and then as put some in my settlement for fun (used the new animated tentacle fork) and figured might get that perk as well.   Have had a lot of sex in my settlement also so was looking at town bicycle but haven't gotten that one yet.

Posted (edited)

Thanks for the update! I really appreciate you taking the time to experiment with this.

The fact that you can invoke idles with a script is actually great news that means the core functionality is there.

 

The conflict with covering animation makes sense; those systems are probably competing for control of the same animation layers.

 

Hey, what if we simplify this completely? Instead of trying to make a scripted idle work alongside the covering animation, what if Kziitd just creates a custom standing idle that INCLUDES the covering pose or a new and better one? Then when your script triggers the idle, it happens automatically no conflict, no competing systems.   So create a new covering pose that she can edit without being restricted to just arms and rename that new pose to PoseA_Idle1.hkx which is the default standing idle when exposed. 

 

Equip item → Magic effect triggers → Game plays custom idle covering full body when naked (PoseA_Idle1.hkx) PoseA_Idle2.hkx would be covering animation for top exposed only, PoseA_Idle3.hkx would be cover animation for bottomless cover animation only
 

Edited by Cookiemonsta234
Posted

Now that I think about it, MSMA and using the sexfight power you end up as dominat really quickly so that might be blocking a lot of the PVPK perks if only using SA to determine stats.

Posted

Perverted Mechanics and coveringquest.esp locks up my hud with no ability to return to game, inventory, or anything, I can only exit game,  but come back and still covering up.  If I try to remove the icon in my inventory, "unequipt" it, im again locked in "examine" window, with no access to anything and must reboot game.  It occured after the first time my character submitted, and never stopped.  My game is basically broken, unless I can uninstall and go back to previous save.

If this a known bug,, I missed it. If there is a fix, please point me to the topic.

Thank you in advance

Posted
16 minutes ago, Daangerousda said:

Perverted Mechanics and coveringquest.esp locks up my hud with no ability to return to game, inventory, or anything, I can only exit game,  but come back and still covering up.  If I try to remove the icon in my inventory, "unequipt" it, im again locked in "examine" window, with no access to anything and must reboot game.  It occured after the first time my character submitted, and never stopped.  My game is basically broken, unless I can uninstall and go back to previous save.

If this a known bug,, I missed it. If there is a fix, please point me to the topic.

Thank you in advance

Update both mods. You use old version. I know about your problem and it was fixed with 0.5.9.

Posted

What's New in Version 0.6.1

Released Just now

- Separated visuals, sounds, and willpower penalty for high arousal in MCM
- Added a sexual reputation penalty for being naked in front of friendly NPCs. Can be disabled in the MCM.

 

PLANS FOR 0.6.2

- fixing possible bugs
- Improved perk addition. I don't like the current one at all.
- Experimenting with animation. Right now, I'm just trying to figure out if I can do it well without reworking them all. Because that's too much work.
Or maybe I can identify specific animations that can be reworked.
The main problem right now is that Covering animations rigidly lock the hands in one position. This causes a conflict with More ways of washing. Ideally, I could set a switch and launch IDLE. But that could cause some unsightly transitions between animations, which I wouldn't want.

Posted (edited)
27 minutes ago, Samhsay said:

What's New in Version 0.6.1

Released Just now

- Separated visuals, sounds, and willpower penalty for high arousal in MCM
- Added a sexual reputation penalty for being naked in front of friendly NPCs. Can be disabled in the MCM.

 

PLANS FOR 0.6.2

- fixing possible bugs
- Improved perk addition. I don't like the current one at all.
- Experimenting with animation. Right now, I'm just trying to figure out if I can do it well without reworking them all. Because that's too much work.
Or maybe I can identify specific animations that can be reworked.
The main problem right now is that Covering animations rigidly lock the hands in one position. This causes a conflict with More ways of washing. Ideally, I could set a switch and launch IDLE. But that could cause some unsightly transitions between animations, which I wouldn't want.

 

It may be possible to detect super soap / a cwss shower or bath within a short ~50-150? range of the player, and if it "sees" one then the animation doesn't play after? It could stop the animation from firing in some situations but when they leave the radius on the next tick it should just be ok and maybe it doesn't re-check once the animation is playing? I'm just spitballing, it sounds doable but I'm not sure.

Edited by Franco Cozzo
Posted (edited)
18 minutes ago, Franco Cozzo said:

cwss shower

CWSS works well. Only MWoW and idle animations have problems. I could write a patch for MWOW that would add idle words to the animation when the super soap activates and remove it on a timer. But first, you need to understand how the wash is activated.

Edited by Samhsay
Posted (edited)

Would something like a idle registry help? Create a system where mods can register idle priorities:  Something like a central manager that mods can call with a priority number. Higher priority idles override lower ones, and the manager automatically releases control when the idle finishes. That way your arousal system and the covering animations aren't fighting they just have different priorities. For example only play covering animations when NPC's can detect or see that PC is naked. (If PC has exhibitionist perk wont play covering animation.) If no NPC's are not around to detect if PC is naked default to default animation. 

 

It would look like this

 0:00    Player gets naked in Diamond City NPCs see and PC starts covering
0:05    NPCs walk away Covering continues (cooldown not reached)
0:12    Still no NPCs  Covering stops naturally
0:15    New NPC walks by  Covering starts again immediately

 

; Properties
Float Property CoveringTimeout = 10.0 Auto ; Seconds before stopping covering animation
Bool Property IsCoveringActive Auto
Float Property LastSpectatorTime Auto

Event OnUpdate() ; Called every second
    ; Check if player is naked
    if IsPlayerNaked()
        ; How many spectators are watching?
        int spectators = SpectatorsCount()
        
        if spectators > 0
            ; People are watching → COVER!
            LastSpectatorTime = Utility.GetCurrentGameTime()
            if !IsCoveringActive
                StartCoveringAnimation()
            endif
        else
            ; No spectators
            float timeSinceLastSpectator = (Utility.GetCurrentGameTime() - LastSpectatorTime) * 24 * 60 ; Convert to minutes
            
            if IsCoveringActive && timeSinceLastSpectator > CoveringTimeout
                ; No one watching for X seconds → stop covering
                StopCoveringAnimation()
            endif
        endif
    endif
    RegisterForSingleUpdate(1.0)
EndEvent

 

; IdlePriorityManager.psc
Function RequestIdle(Actor akActor, Idle akIdle, int aiPriority)
    if aiPriority > currentPriority
        ; Override current idle
        akActor.PlayIdle(akIdle)
        currentPriority = aiPriority
        ; Start timer to release after duration
        StartTimer(akIdle.GetDuration(), 100)
    endif
EndFunction

Function ReleaseIdle()
    currentPriority = 0
    ; Return to default animation
EndFunction

 

 

Edited by Cookiemonsta234
Posted

To integrate with your arousal system

Event OnArousalUpdate()
    int spectators = SpectatorsCount()
    
    if IsPlayerNaked()
        if spectators > 0
            if IsExhibitionist()
                ; Exhibitionist enjoys being watched
                PlayArousedIdle() ; Not covering!
                IncreaseArousal(spectators)
            else
                ; PC without Exhib Perk
                PlayCoveringIdle()
                DecreaseArousal() ; Covering reduces arousal
            endif
        else
            ; Alone
            if IsCoveringActive && TimeSinceLastSpectator > CoveringTimeout
                StopCoveringIdle()
                PlayNormalIdle()
            endif
        endif
    endif
EndEvent

Posted

Ok so i looked at your cover reputation psc and integrated new ones like this:

 

; Add to the top of the script with other properties
GlobalVariable Property gl_coveringTimeout Auto ; Time before stopping cover (seconds)
GlobalVariable Property gl_lastSpectatorTime Auto ; Tracks when last NPC was seen
Bool Property isCovering = False Auto
Idle Property coveringIdle Auto ; Your custom covering idle
Idle Property defaultIdle Auto ; Default idle to return to

; Add this function to check if player is naked/nearly naked
bool Function IsPlayerExposed()
    Quest SAKR_API = Game.GetFormFromFile(0x00000800, "SkimpyArmorKeywordResource.esm") as quest
    ScriptObject sakr_script = SAKR_API.CastAs("SAKR:SAKR_Main")
    int skimpyRating = sakr_script.CallFunction("getPlayerOverallSkimpyRating", new var[0]) as int
    ; If skimpy rating is high (more exposed), return true
    return (skimpyRating >= 50) ; Adjust threshold as needed
EndFunction

; Add this to OnTimerGameTime (after reputation calculation)
Event OnTimerGameTime(int aiTimerID)
    if aiTimerID == nudePenaltyTimer    
        ; ... existing reputation code ...
        
        ; NEW: Covering animation logic
        int spectators = SpectatorsCount()
        bool isExposed = IsPlayerExposed()
        
        if isExposed
            if spectators > 0
                ; People watching AND player is exposed → cover!
                if !isCovering
                    ; Start covering animation
                    player.PlayIdle(coveringIdle)
                    isCovering = True
                    gl_lastSpectatorTime.SetValue(Utility.GetCurrentGameTime())
                endif
            else
                ; No spectators, check if covering should stop
                if isCovering
                    float currentTime = Utility.GetCurrentGameTime()
                    float lastTime = gl_lastSpectatorTime.GetValue()
                    float timeSince = (currentTime - lastTime) * 24 * 3600 ; Convert to seconds
                    
                    if timeSince >= gl_coveringTimeout.GetValue()
                        ; No one watching for timeout period → stop covering
                        player.PlayIdle(defaultIdle)
                        isCovering = False
                    endif
                endif
            endif
        elseif isCovering
            ; Not exposed anymore, stop covering
            player.PlayIdle(defaultIdle)
            isCovering = False
        endif
        
        StartTimerGameTime(0.2, nudePenaltyTimer)
    endif
endevent

Posted
On 3/21/2026 at 9:12 AM, Cookiemonsta234 said:

Ok so i looked at your cover reputation psc and integrated new ones like this:

 

; Add to the top of the script with other properties
GlobalVariable Property gl_coveringTimeout Auto ; Time before stopping cover (seconds)
GlobalVariable Property gl_lastSpectatorTime Auto ; Tracks when last NPC was seen
Bool Property isCovering = False Auto
Idle Property coveringIdle Auto ; Your custom covering idle
Idle Property defaultIdle Auto ; Default idle to return to

; Add this function to check if player is naked/nearly naked
bool Function IsPlayerExposed()
    Quest SAKR_API = Game.GetFormFromFile(0x00000800, "SkimpyArmorKeywordResource.esm") as quest
    ScriptObject sakr_script = SAKR_API.CastAs("SAKR:SAKR_Main")
    int skimpyRating = sakr_script.CallFunction("getPlayerOverallSkimpyRating", new var[0]) as int
    ; If skimpy rating is high (more exposed), return true
    return (skimpyRating >= 50) ; Adjust threshold as needed
EndFunction

; Add this to OnTimerGameTime (after reputation calculation)
Event OnTimerGameTime(int aiTimerID)
    if aiTimerID == nudePenaltyTimer    
        ; ... existing reputation code ...
        
        ; NEW: Covering animation logic
        int spectators = SpectatorsCount()
        bool isExposed = IsPlayerExposed()
        
        if isExposed
            if spectators > 0
                ; People watching AND player is exposed → cover!
                if !isCovering
                    ; Start covering animation
                    player.PlayIdle(coveringIdle)
                    isCovering = True
                    gl_lastSpectatorTime.SetValue(Utility.GetCurrentGameTime())
                endif
            else
                ; No spectators, check if covering should stop
                if isCovering
                    float currentTime = Utility.GetCurrentGameTime()
                    float lastTime = gl_lastSpectatorTime.GetValue()
                    float timeSince = (currentTime - lastTime) * 24 * 3600 ; Convert to seconds
                    
                    if timeSince >= gl_coveringTimeout.GetValue()
                        ; No one watching for timeout period → stop covering
                        player.PlayIdle(defaultIdle)
                        isCovering = False
                    endif
                endif
            endif
        elseif isCovering
            ; Not exposed anymore, stop covering
            player.PlayIdle(defaultIdle)
            isCovering = False
        endif
        
        StartTimerGameTime(0.2, nudePenaltyTimer)
    endif
endevent

 

A witness scanner with a short timer and very, very slow sex reputation growth. A global variable indicating the presence of witnesses, which will trigger the magic effect of the cover animation. 

Checks for the presence of a keyword in conditions that cancels the animation and allows IDLE to be activated.
And applying animations. 
I can trigger an orgasm with a code and end the animation. That won't trigger the gangbang party I'd like to have.

Now my biggest trouble is selection of animations. 

Posted
1 hour ago, Samhsay said:

Now my biggest trouble is selection of animations. 

For animation selection, we have three covering animations ready: full body, top-only, and bottom-only. We can detect exposure type using SAKR's skimpy rating. So maybe something like this?

 

Function HandleCoveringAnimation()
    int spectators = SpectatorsCount()
    int exposureType = GetExposureType()
    
    if exposureType > 0 && spectators > 0
        ; Exposed and being watched → play appropriate cover
        if !isCovering
            if exposureType == 3 ; Full
                player.PlayIdle(coveringIdle_Full)
            elseif exposureType == 1 ; Top only
                player.PlayIdle(coveringIdle_Top)
            elseif exposureType == 2 ; Bottom only
                player.PlayIdle(coveringIdle_Bottom)
            endif
            isCovering = True
            lastSpectatorTime = Utility.GetCurrentGameTime()
        endif
    elseif isCovering
        ; Stop covering if no longer exposed or no spectators
        player.PlayIdle(defaultIdle)
        isCovering = False
    endif
EndFunction

Posted

Or this 

 

; Pseudo-code for animation selection
Function SelectCoveringAnimation()
    int exposureType = GetExposureType() ; 0=none, 1=top, 2=bottom, 3=full
    
    if exposureType == 3
        return coveringIdle_FullBody
    elseif exposureType == 1
        return coveringIdle_TopOnly
    elseif exposureType == 2
        return coveringIdle_BottomOnly
    else
        return None
    endif
EndFunction

Posted (edited)
2 hours ago, Cookiemonsta234 said:

For animation selection, we have three covering animations ready: full body, top-only, and bottom-only. We can detect exposure type using SAKR's skimpy rating. So maybe something like this?

 

Lol. My trouble not with code. I'm choosing animations that will look appropriate and won't be static. I've already asked kziitd, and she's agreed not to use animations from her pack. I've selected a few, but I need more. Maybe I should ask savage cabbage for permission to use his dance animations. And find someone who made sexy walk animations to add them.
Or I could try 3dsMax myself. But then the next update won't be for at least six months. And that's optimistic.

 

But thank you for your help. Maybe I'll use some of your ideas.

Edited by Samhsay
Posted (edited)
6 hours ago, Samhsay said:

I'm choosing animations that will look appropriate and won't be static.

 

Alright well this mod is already awesome as is. I suggest also to maybe reach out to Enginegaming they have a lot of poses. In particular they have poses that involve holding cameras and taking pictures. If you could maybe get NPC spectators to possibly play a idle of them taking a picture of PC that would be funny lol 

https://www.nexusmods.com/fallout4/mods/96337?tab=description

 

Here is their pose guide. 

 

Screenshot (710).png

Screenshot (711).png

Pose Guide - Photographer Poses & Props.pdf

Edited by Cookiemonsta234

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...