Jump to content

Dynamic Wetness now has an API...


Recommended Posts

Posted

Maybe someone could add a bridge for Sexlab now that Dynamic Wetness has an API, and is a pretty nice SKSE implementation. It's an ideal and modern replacement for Wet Function Redux. Has anyone looked into this? 

 

I gotta say, DW already has a lot of cool functionality like sweat when crafting, etc. All it needs is some Sexlab tie in, and it would be perfect. 

Posted (edited)

I would recommend waiting until this mod has an API for Papyrus. Otherwise what's going to end up happening is yet another dll has to be made to provide a Papyrus interface for Dynamic Wetness, and this plugin has to be maintained every time the interface in Dynamic Wetness changes, or the game updates.

 

Edit: Already done. Nevermind.

Edited by traison
Posted

 

17 minutes ago, traison said:

I would recommend waiting until this mod has an API for Papyrus.

 

::Looks at you::

 

I'm sorry. But what?

 

Did you mean this one? The one listed at the bottom of the mod description. Where NPE specifically says...

 

image.png.50ae279cb5dba30b9955e780b92587ea.png

 

The one where if you click on the link that says SWE.psc you get a lovely file that says, right at the top...

 

image.png.b376a3563725384d98d12a659cba7811.png

 

Did you mean that Papyrus API? Or some other API?

 

Cheers. 🍻 ;)

Posted
2 minutes ago, traison said:

Oh missed that one. I've been keeping an eye on the github page.

 

We've all fumbled a ball once our twice in our life. No worries. 

 

🍻

 

WZ

Posted (edited)

For starters, there's some fixing to be done. The Papyrus API is broken:

[10/30/2025 - 01:30:15AM] error: Native static function SetExternalWetnessEx does not match existing signature on linked type swe. Function will not be bound.
[10/30/2025 - 01:30:15AM] error: Native static function SetExternalWetnessMask does not match existing signature on linked type swe. Function will not be bound.
[10/30/2025 - 01:30:15AM] error: Native static function ClearExternalWetness does not match existing signature on linked type swe. Function will not be bound.
[10/30/2025 - 01:30:15AM] error: Native static function SetExternalWetness does not match existing signature on linked type swe. Function will not be bound.

 

This will be easy to fix.

 

Edit: Here's the new declarations:

bool Function SetExternalWetness(Actor akActor, String key, Float value, Float durationSec = -1.0) Global Native
bool Function SetExternalWetnessMask(Actor akActor, String key, Float value, Float durationSec = -1.0, Int catMask = 1) Global Native
bool Function SetExternalWetnessEx(Actor akActor, String key, Float value, Float durationSec, Int catMask, Float maxGloss = -1.0, Float maxSpec = -1.0, Float minGloss = -1.0, Float minSpec = -1.0, Float glossBoost = -1.0, Float specBoost = -1.0, Float skinHairMul = -1.0) Global Native
bool Function ClearExternalWetness(Actor akActor, String key) Global Native

 

Edited by traison
Posted

I have it working in my own systems now. I made it player only and based on the SL thread timers, such that when the scene has been going for longer than what the autoadvance timers are set to, the player will start to get wet.

 

I'll provide relevant code bits and such if someone wants to try shoving this into SL. No credits needed.

Posted
32 minutes ago, traison said:

I have it working in my own systems now. I made it player only and based on the SL thread timers, such that when the scene has been going for longer than what the autoadvance timers are set to, the player will start to get wet.

 

That was pretty fast. 

 

It would also make sense I think to also add a multiplier for wetness based on anim tags; like Aggressive/Non Con would increase sweat faster, etc? Just wondering how granular someone could get with controlling when to add the wet. 

Posted
36 minutes ago, WandererZero said:

Just wondering how granular someone could get with controlling when to add the wet.

 

If the budget allows for it, you can save yourself huge amounts of work in the future by leaving as much room as possible for all the things you *can't* think of. The later the need for a rewrite comes around, the better your code is/was.

 

To put that another way, the answer to your non-question is "yes".

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