Jump to content

SexLab Framework Development


Recommended Posts

 

Is the current PapyrusUtil beta available as a separate download? I would like to test current SL beta with Campfire/Frostfall, but do so by overwriting my whole load order with PapyrusUtil beta. Reason for this is that conflicting versions of PapyrusUtil seem to cause some problems in game and Chesko used parts of PapyrusUtil in Campfire.

 

I can of course just swap SL and Campfire places in MO, but I think that letting PapyrusUtil to win all conflicts in my game would be worth to test, seeing that I will likely end up doing that any way to avoid possible problems.

I would like that as well. I am still working on the older version but like having the newest version separate to avoid the conflicts and general headaches. It is well worth the added entry in MO smile.png

 

 

 

Campfire does not currently show any conflicts with SL 1.60 Hotfix 2. It only shows conflict with PapyrusUtil. I am unsure if the conflict was visible, before Chesko updated Campfire to it's current version.

 

I have been hesitant to try out SL 1.61 beta, because Campfire/PapyrusUtil conflict. SL itself does not seem to display any conflict though. It would still be nice to test this out with PapyrusUtil beta version.

Link to comment

 

I would like that as well. I am still working on the older version but like having the newest version separate to avoid the conflicts and general headaches. It is well worth the added entry in MO smile.png

 Campfire does not currently show any conflicts with SL 1.60 Hotfix 2. It only shows conflict with PapyrusUtil. I am unsure if the conflict was visible, before Chesko updated Campfire to it's current version.

 

I have been hesitant to try out SL 1.61 beta, because Campfire/PapyrusUtil conflict. SL itself does not seem to display any conflict though. It would still be nice to test this out with PapyrusUtil beta version.

 

As long as SexLab is overwritting any other mod that bundles parts of papyrusutil there is no conflicts to worry about from other mods that include it. SexLab's version of it is always going to be the newest version, as their developments are linked together, and there are no breaking backwards compatibility concerns from other mods.

 

I know, I though it was clear when I said you need the source scripts to compile, I shouldn't have used the word dependency maybe. :P

A good point I hadn't considered at the time. The frostfall source scripts being required to compile anything connected to sexlab is a deal breaker. I'll update it to just pull the needed formlist directly instead of going through it's api scripts, this should resolve any compiling errors for other sexlab mods.

Link to comment

 

I know, I though it was clear when I said you need the source scripts to compile, I shouldn't have used the word dependency maybe. :P

A good point I hadn't considered at the time. The frostfall source scripts being required to compile anything connected to sexlab is a deal breaker. I'll update it to just pull the needed formlist directly instead of going through it's api scripts, this should resolve any compiling errors for other sexlab mods.

 

Yes and No.

If you compile an external mod that uses SexLab, you have no problems. (I did not had any, and I am not using FrostFall.)

The real problems are when you try to re-compile SexLab itself.

 

But of course, getting the required items in a "soft way", is always better (also if it is a little bit less efficient for the scripts to run.)

 

Link to comment

I don't think I've seen anyone else report this, so maybe it's just me, but I'm finding all animations have the actors floating about a foot in the air with Beta 3. It seems to be happening with all animations and all mods I've used that call them. The actors align with each other as per my adjustment profile, just floating in the air. It's happening whether I have the heels adjustment option active or not, and whether any actors are wearing heels or not (I use NiOverride included in RaceMenu and not HDT heels.)

 

I just ran a quick test with a minimal load order - only SexLab, Aroused Redux, MatchMaker and one strap-on mod for sex mods - and used MatchMaker to trigger a scene with Senna at the temple in Markarth. I did it once with 1.61 Beta 3 and once with 1.60.2.

 

The Beta 3 test. My character was wearing NiOverride heels with the heels adjustment option active. They both floated during the animation. Cycling through animations resulted in the same for each one. Although I didn't try it during this test, wearing heels or not and having the heels adjustment option active or not doesn't change anything. They're always floating.

Papyrus.0.log

 

The 1.60.2 test. Same thing, except wearing no heels and the hdt heels option switched off. The animations were all playing at the right height.

1-60-2 Papyrus.0.log

Link to comment

Hello Ashal,

A question if you have time and I'm sorry if this isn't the right place to post this.

 

It's in reference to the latest PapyrusUtil and 0Sex, my script relies heavily on JsonUtil. Some users have been experience a large delay, at various times and some things not working. I did tests with various StorageUtil.dlls to see if that was the cause of the deviation. My knowledge is really limited on this stuff but my script performance vastly better on a versions with a modify data: Friday, ‎October ‎03, ‎2014. The difference is major from my tests in terms of delay. I might be setting up the test wrong etc. but as far as I know it's narrowed down to just that, as installing different PapyrusUtil's is producing much different responsiveness results.

 

I was curious if you had any ideas that could help me understand what's causing the difference or what I could do about it. My script enters into barely functioning I'd say on current versions but is ideal on the version I mentioned in the previous paragraph. I'm aware my use of of the utility might be unorthodox or not as intended and again I have very limited knowledge here I just know an early version seems to suit the style of my script much better.

 

My script uses these JsonUtil functions: int string float and form versions of Get*Value, Set*Value.  StringListCount, StringListSet, StringListGet, Save, Load. Only Get*Value is used regularly as the scene happens however.

 

Thank you for your time and help!

 

 

Link to comment
 
 

 

 

It's in reference to the latest PapyrusUtil and 0Sex, my script relies heavily on JsonUtil. Some users have been experience a large delay,

 

Ashal told me that it is significant faster to use the ToArray() functions and then iterate through the native array instead of calling GetValue(index)

 

 
Link to comment

Hello Ashal,

A question if you have time and I'm sorry if this isn't the right place to post this.

 

It's in reference to the latest PapyrusUtil and 0Sex, my script relies heavily on JsonUtil. Some users have been experience a large delay, at various times and some things not working. I did tests with various StorageUtil.dlls to see if that was the cause of the deviation. My knowledge is really limited on this stuff but my script performance vastly better on a versions with a modify data: Friday, ‎October ‎03, ‎2014. The difference is major from my tests in terms of delay. I might be setting up the test wrong etc. but as far as I know it's narrowed down to just that, as installing different PapyrusUtil's is producing much different responsiveness results.

 

I was curious if you had any ideas that could help me understand what's causing the difference or what I could do about it. My script enters into barely functioning I'd say on current versions but is ideal on the version I mentioned in the previous paragraph. I'm aware my use of of the utility might be unorthodox or not as intended and again I have very limited knowledge here I just know an early version seems to suit the style of my script much better.

 

My script uses these JsonUtil functions: int string float and form versions of Get*Value, Set*Value.  StringListCount, StringListSet, StringListGet, Save, Load. Only Get*Value is used regularly as the scene happens however.

 

Thank you for your time and help!

 

Hi.

If you need some help on tweaking the performance of your scripts, when using JSONUtils, but also in normal other cases, you can PM me.

 

I have a fair deep knowledge on this subject.

Link to comment

I don't think I've seen anyone else report this, so maybe it's just me

 

Not just you, I often get the same thing, but not always ALL the actors, sometimes in a threeway only one actor will be up in the air.

 

I usually just spam the [ key a few times and eventually they line up, but it's definitely not something I had a problem with in 1.60.2.

 

Link to comment

 

 

I would like that as well. I am still working on the older version but like having the newest version separate to avoid the conflicts and general headaches. It is well worth the added entry in MO smile.png

 Campfire does not currently show any conflicts with SL 1.60 Hotfix 2. It only shows conflict with PapyrusUtil. I am unsure if the conflict was visible, before Chesko updated Campfire to it's current version.

 

I have been hesitant to try out SL 1.61 beta, because Campfire/PapyrusUtil conflict. SL itself does not seem to display any conflict though. It would still be nice to test this out with PapyrusUtil beta version.

 

As long as SexLab is overwritting any other mod that bundles parts of papyrusutil there is no conflicts to worry about from other mods that include it. SexLab's version of it is always going to be the newest version, as their developments are linked together, and there are no breaking backwards compatibility concerns from other mods.

 

I know, I though it was clear when I said you need the source scripts to compile, I shouldn't have used the word dependency maybe. :P

A good point I hadn't considered at the time. The frostfall source scripts being required to compile anything connected to sexlab is a deal breaker. I'll update it to just pull the needed formlist directly instead of going through it's api scripts, this should resolve any compiling errors for other sexlab mods.

 

 

Strange thing about the FF dependency -- today I installed 1.61 beta patch over my 1.60 install. And then tried to compile MY mod script - which as 0 references to SexLab, and it complains. So I have to uninstall the SL 1.61 beta patch while I'm developing. I was shocked and still don't understand why this happened... Something to do with the -I switch on my call to the PapyrusCompiler.exe (e.g. "-i="D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source")  ??

And just so you don't think I'm full of shit:


D:\git\sexlab-describe\Scripts\Source>"D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Papyrus Compiler\PapyrusCompiler.exe" "ApTrackConfigMenu.psc" -f="TESV_Papyrus_Flags.flg
" -i="D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source" -o="D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts"
Starting 1 compile threads for 1 files...
Compiling "ApTrackConfigMenu"...
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(297,42): HasNodeTransformPosition is not a function or does not exist
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(297,42): cannot call the member function HasNodeTransformPosition alone or on a type, mus
t call it on a variable
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(298,30): GetNodeTransformPosition is not a function or does not exist
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(298,30): cannot call the member function GetNodeTransformPosition alone or on a type, mus
t call it on a variable
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(303,16): AddNodeTransformPosition is not a function or does not exist
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(303,16): cannot call the member function AddNodeTransformPosition alone or on a type, mus
t call it on a variable
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(304,16): UpdateNodeTransform is not a function or does not exist
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(304,16): cannot call the member function UpdateNodeTransform alone or on a type, must cal
l it on a variable
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(704,42): RemoveNodeTransformPosition is not a function or does not exist
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(704,42): cannot call the member function RemoveNodeTransformPosition alone or on a type,
must call it on a variable
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(705,16): UpdateNodeTransform is not a function or does not exist
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslActorAlias.psc(705,16): cannot call the member function UpdateNodeTransform alone or on a type, must cal
l it on a variable
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslSystemConfig.psc(704,20): variable FrostUtil is undefined
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslSystemConfig.psc(704,30): none is not a known user-defined type
D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source\sslSystemConfig.psc(704,50): none is not a known user-defined type
No output generated for ApTrackConfigMenu.psc, compilation failed.

Batch compile of 1 files finished. 0 succeeded, 1 failed.
Failed on ApTrackConfigMenu.psc

D:\git\sexlab-describe\Scripts\Source>pause
Press any key to continue . . .
Link to comment

Strange thing about the FF dependency -- today I installed 1.61 beta patch over my 1.60 install. And then tried to compile MY mod script - which as 0 references to SexLab, and it complains. So I have to uninstall the SL 1.61 beta patch while I'm developing. I was shocked and still don't understand why this happened... Something to do with the -I switch on my call to the PapyrusCompiler.exe (e.g. "-i="D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source")  ??

 

And just so you don't think I'm full of shit:

..snip..

 

The line I use to compile the scripts is

 

"C:\Program Files (x86)\Steam\steamapps\common\skyrim\Papyrus Compiler\PapyrusCompiler.exe" %1 -f="C:\Program Files (x86)\Steam\steamapps\common\Skyrim\Data\scripts\Source\TESV_Papyrus_Flags.flg" -i="C:\Program Files (x86)\Steam\steamapps\common\Skyrim\Data\scripts\source;%~dp2source" -o="%~dp2\"
pause

 

The second possible path is because I compile with Notepad++ and the source I am compiling are usually not in the data folder but in the Mod folder of Mod Organizer.

 

 

 

The errors you show (except FrostUtil) are not related to FrostFall, but probably to NiOverride or a similar script.

Link to comment

 

Strange thing about the FF dependency -- today I installed 1.61 beta patch over my 1.60 install. And then tried to compile MY mod script - which as 0 references to SexLab, and it complains. So I have to uninstall the SL 1.61 beta patch while I'm developing. I was shocked and still don't understand why this happened... Something to do with the -I switch on my call to the PapyrusCompiler.exe (e.g. "-i="D:\Program Files (x86)\Steam\SteamApps\common\Skyrim\Data\Scripts\Source")  ??

 

And just so you don't think I'm full of shit:

..snip..

 

The line I use to compile the scripts is

 

"C:\Program Files (x86)\Steam\steamapps\common\skyrim\Papyrus Compiler\PapyrusCompiler.exe" %1 -f="C:\Program Files (x86)\Steam\steamapps\common\Skyrim\Data\scripts\Source\TESV_Papyrus_Flags.flg" -i="C:\Program Files (x86)\Steam\steamapps\common\Skyrim\Data\scripts\source;%~dp2source" -o="%~dp2\"
pause

 

The second possible path is because I compile with Notepad++ and the source I am compiling are usually not in the data folder but in the Mod folder of Mod Organizer.

 

 

 

The errors you show (except FrostUtil) are not related to FrostFall, but probably to NiOverride or a similar script.

 

 

You're correct - I was conflating. 

 

Btw, what's this %~dp2 business in your script?

Link to comment

 

 

 

You're correct - I was conflating. 

 

Btw, what's this %~dp2 business in your script?

 

 

It is my trick to have the mod I am working on, fully inside Mod Organizer in its own folder.

I compile scripts directly from Notepad++ (And I have a small Notepad++ function to have the script in the right place with the right name, when I create a script from CK, that is run from MO too.)

 

When you compile a script, the sources can be in different folders. The standard scripts and SKS scripts (actually also SkyUI for me) are in the main Data folder.

Everything else is in a Mod Organizer mod folder.

 

When running a "compile" through Notepad++, I just pass the parameters to the .bat file (pre-processed by Notepad++), and then the execution is a normal Windows bat file.

And in this case "%~dp2" means:

* get the second parameter you received (2)

* Consider it a set of folders (~)

* remove the double-quotes if any (p)

* don't forget to add the drive letter (d)

 

This will generate the full list of source folders to include.

 

And from my Notepad++ command it is defined as the current source folder for the script I am working on, and a set of "always referenced folders" like SexLab.

Link to comment

1.61 Beta 3

 

Positioning on bed is still messed up. Maybe things are done in wrong order. I didnt check the code but it seems that things are happening in this order:

 

 

 

After both actors walked to bed

1. one actor is teleported on bed. Position of this actor is not on center of bed but moved more towards the end of the bed (pillow= start of the bed and opposite side = the end of the bed)

2. 2nd actor is teleported on bed in front of the first actor (standing in the air or barely touching the end of the bed

3. Some average function is done (probably searching for scene center or something) and both actors are moved inside each other then they are set to starting positions from which first animation starts. This starting position is same as in 1 and 2.

 

so in short its:

1. move scene from center of the bed more towards the end of the bed

2. teleport both actors to their places on bed (one in front of another)

3. find center of the sex scene and position actors according (center here = average position of actors)

 

and should be:

 

3. find center of the sex scene and position actors according (center here = center of the bed)

2. teleport both actors to their places on bed (one in front of another)

1. move scene from center of the bed more towards the end of the bed

 

 

Link to comment

Ok, here's a stupid idea that just occurred to me while working on my mod: Would it not be convenient if all the solo animations (masturbation) were available as idles in the CK? That would make them much easier to use in scenes and AI packages, when you have other stuff running concurrently. Often times, you could avoid using scripts altogether. I understand that you still need the scripting for animations with more than one participant. But just one single character fumbling herself - couldn't that be available as an idle, too?

Link to comment

Ok, here's a stupid idea that just occurred to me while working on my mod: Would it not be convenient if all the solo animations (masturbation) were available as idles in the CK? That would make them much easier to use in scenes and AI packages, when you have other stuff running concurrently. Often times, you could avoid using scripts altogether. I understand that you still need the scripting for animations with more than one participant. But just one single character fumbling herself - couldn't that be available as an idle, too?

 

You can do it on your own.

But only if the actual HKX file used for the animation has inside the required Idle AnimationEvent (some do, some do not.)

 

Just go in CK, open the Animations, go in Character->...-><Idle set you like>, and create a new idle with exactly the name of the AnimEvent that was set by the FNIS file.

 

Then you have to create the Idle object, and then you can use it.

Link to comment

Ever since I updated to 1.61 Beta 3, the positioning has been acting really wonky and awkward. Various issues have popped up from 1.60, the version I was in: sometimes, the characters will clip through the ground into the infinite and are then teleported into somewhere near where the sex started once they reach a certain 'limit' below the ground.

 

Also, whenever I switch positions or stages, both characters will do a 'flickering' motion, that of which is normal whenever an animation is starting, except twice; as if the animation was starting twice. This didn't happen in 1.60.

 

Finally, NPCs (not the PC, as far as I'm aware) seem to be getting locked in their vanilla position/state randomly when stages/positions change, which means that the PC will be humping/receiving normally but the NPC will be just standing there, which can be temporarely fixed by changing animation/stage, even though sometimes the bug occurs again a few seconds later. This doesn't seem to be happening in every animation, although I could be wrong, as it requires further testing. I don't think I have any mod that could interfer with SexLab in that sense (as in, a mod that makes NPCs stand when the mod demands so), and I'm fairly sure this is an issue with the latest beta in itself since I used to use 1.60 without issues.

 

Everything else seems to be working somewhat fine (although I've noticed that facial expressions are also kinda wonky and randomly fail to start for some animations even though I don't have Lip Sync turned on).

 

I don't think my problem is script lagging as the Sex itself starts very fast, and so does every other mod pretty much, like Private Needs, which comes up with a symptom that is the menu for the Needs taking a long while to open if your engine is under too much strain, which isn't the case in this current playthrough, where the menu opens instantly. Every other mod like Frostfall/Defeat and whatnot also seem to be working fine.

 

I could post my Load Order if requested.

Link to comment

 

You can do it on your own.

[...]

Oooo. Nice. Thanks.

 

That takes care of me, but I still maintain it would probably be a good idea to have this prepped and ready to go for everyone else. Like DDi does it for the bound animations.

 

 

Consider that a masturbation animation is usually constructed by 4 or 5 stages.

Technically you can create 4 or 5 idles for each of them.

 

But do you think they will be easy to synchronize without requiring scripting? And the scripting required will be way more complex that just writing a single SexLab call.

Link to comment

But do you think they will be easy to synchronize without requiring scripting?

 

Why not? I can put each stage in a single AI package and then use the scene editor to play them in whatever order I like.

 

Obviously, the player cannot control the animation with the keyboard (e.g. skipping forward), but whether that's a bug or a feature depends on the circumstances. In my case, I don't want the player to mess with the sequence because it's part of a scene.

Link to comment

Having a small problem with update to 160.3 Beta from 160.2; storageutil is not being correctly read by sexlab.  99.99% not corrupted saves since I made a new test character and upon sexlab install it still says storageutil is missing.  Did the 160.3 beta come with complete 3.2 dll or should I go pull the files from previous versions.  MO says no discrepancies in load order and LOOT 2.0 confirms it.  Any help appreciated.

Link to comment

Having a small problem with update to 160.3 Beta from 160.2; storageutil is not being correctly read by sexlab.  99.99% not corrupted saves since I made a new test character and upon sexlab install it still says storageutil is missing.  Did the 160.3 beta come with complete 3.2 dll or should I go pull the files from previous versions.  MO says no discrepancies in load order and LOOT 2.0 confirms it.  Any help appreciated.

 

Some other mod is maybe overwriting storageutil.

Link to comment

 

I don't think I've seen anyone else report this, so maybe it's just me

Not just you, I often get the same thing, but not always ALL the actors, sometimes in a threeway only one actor will be up in the air.

 

I usually just spam the [ key a few times and eventually they line up, but it's definitely not something I had a problem with in 1.60.2.

I'm experiencing this issue too. Goes away when repositioning (7seconds). Happens without any heels equipped as well as with.
Link to comment

Hi Ashal.

 

I'm looking at the code for FindAvailableCreature() (FindAvailableActor()) in the latest pull and (unless I'm missing a trick) it appears that we must search for a specific Race AND/OR male creatures OR female creatures meaning it's not possible to find a creature of any race AND either sex. So either a Race must be provided or the gender value must be 2 or 3 otherwise the method would return non-creature actors:

Actor function FindAvailableActor(ObjectReference CenterRef, float Radius = 5000.0, int FindGender = -1, Actor IgnoreRef1 = none, Actor IgnoreRef2 = none, Actor IgnoreRef3 = none, Actor IgnoreRef4 = none, string RaceKey = "")
    if !CenterRef || FindGender > 3 || FindGender < -1 || Radius < 0.1
        return none ; Invalid args
    endIf
    ; Normalize creature genders search
    if RaceKey != "" || FindGender >= 2
        if FindGender == 0 || !Config.UseCreatureGender
            FindGender = 2
        elseIf FindGender == 1
            FindGender = 3
        endIf
    endIf
    ;[...]
endFunction

Does this perhaps need an all-inclusive creature option? I realise implementation might be a little awkward here with code reuse and backwards compatibility.

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