Jump to content

Is it possible to adjust the timing of the first animation in Sexlab


Recommended Posts

Posted

Leito's slal pack contains "Leito Female Toy Vaginal".  This animation has 7 stages.  The first has the female NPC moving to the top of a potion bottle.  If I run this animation out of the box, this first animation gets run 14 times which looks really weird.  I have change the Stage 1 timing from 30 seconds down to 2 and it's still a repeating animation, but only two or three.   This animation is labeled in the FNIS doc as "so -o,md".  The other six are labeled "+ -o".  

 

Flowergirls runs this first animation exactly one time before moving on the the others.  This makes it all look good.  Is there any way I can tell Sexlab to run this (or other animation in the sequence) just once.   I looked briefly into the code in sslAliasActor and sslThreadModel and found nothing that will do what I want except maybe sslThreadModel.SetStartAnimationEvent(), but that function is not used anywhere I can find so I have no idea when or where to use it.

 

I do not want to set my animation time to 1 second for the first animation in MCM because that will fuck up most other animations.  Is there some approved way to accomplish this without modifying the Sexlab code?

Posted

Sounds like an FNIS misconfiguration more than anything to me. Should have an "a" in the argument so it doesn't loop and goes to next in the sequence. For example, in the default sexlab animations, Zyn_RoughStanding has a non-looped 1st stage and then transitions smoothly into using the 2nd stages animation right away and it looks like this:

s -a Zyn_RoughStanding_A1_S1 Zyn_RoughStanding_A1_S1.hkx
+ Zyn_RoughStanding_A1_S2 Zyn_RoughStanding_A1_S2.hkx

 

Or, for example, in the dogglystyle animation, the stages all have a transition phase before immediately starting the looped animation after it's done playing once.

s Zyn_Doggystyle_A1_S1 Zyn_Doggystyle_A1_S1.hkx
+ -a Zyn_Doggystyle_A1_S2 Zyn_Doggystyle_A1_S2.hkx
+ Zyn_Doggystyle_A1_S2b Zyn_Doggystyle_A1_S2b.hkx
+ -a Zyn_Doggystyle_A1_S3 Zyn_Doggystyle_A1_S3.hkx
+ Zyn_Doggystyle_A1_S3b Zyn_Doggystyle_A1_S3b.hkx
+ -a Zyn_Doggystyle_A1_S4 Zyn_Doggystyle_A1_S4.hkx
+ Zyn_Doggystyle_A1_S4b Zyn_Doggystyle_A1_S4b.hkx
+ -a Zyn_Doggystyle_A1_S5 Zyn_Doggystyle_A1_S5.hkx
+ Zyn_Doggystyle_A1_S5b Zyn_Doggystyle_A1_S5b.hkx

 

The -a animations are played first at the start of the stage once, before it immediately skips to the next in the sequence, which is the main loop (2b, 3b, 4b, 5b).

 

 

It's been a long time since I've looked at the FNIS documentation, though, so I'm not sure what the "md" is intended for.

Posted

Aside from that, though, for a SexLab coding solution instead of FNIS behavior tweaking, you can, in fact, set timers for stages programmatically using the thread configuration for handling animations.

 

function SetTimers(float[] SetTimers)

 

You can pass it an array of floats, and it'll use each index for each stage up to the last. The last index of the timer array is always used for the last stage of an animation.

Posted
1 minute ago, Ashal said:

Sounds like an FNIS misconfiguration more than anything to me. Should have an "a" in the argument so it doesn't loop and goes to next in the sequence. For example, in the default sexlab animations, Zyn_RoughStanding has a non-looped 1st stage and then transitions smoothly into using the 2nd stages animation right away and it looks like this:

s -a Zyn_RoughStanding_A1_S1 Zyn_RoughStanding_A1_S1.hkx
+ Zyn_RoughStanding_A1_S2 Zyn_RoughStanding_A1_S2.hkx

 

Or, for example, in the dogglystyle animation, the stages all have a transition phase before immediately starting the looped animation after it's done playing once.

s Zyn_Doggystyle_A1_S1 Zyn_Doggystyle_A1_S1.hkx
+ -a Zyn_Doggystyle_A1_S2 Zyn_Doggystyle_A1_S2.hkx
+ Zyn_Doggystyle_A1_S2b Zyn_Doggystyle_A1_S2b.hkx
+ -a Zyn_Doggystyle_A1_S3 Zyn_Doggystyle_A1_S3.hkx
+ Zyn_Doggystyle_A1_S3b Zyn_Doggystyle_A1_S3b.hkx
+ -a Zyn_Doggystyle_A1_S4 Zyn_Doggystyle_A1_S4.hkx
+ Zyn_Doggystyle_A1_S4b Zyn_Doggystyle_A1_S4b.hkx
+ -a Zyn_Doggystyle_A1_S5 Zyn_Doggystyle_A1_S5.hkx
+ Zyn_Doggystyle_A1_S5b Zyn_Doggystyle_A1_S5b.hkx

 

 

It's been a long time since I've looked at the FNIS documentation, though, so I'm not sure what the "md" is intended for.

Thanks, that worked.  md = motion driven.  I changed the first animation to "so -o,md,a" and it now works as expected.  I saw that it had an "s" as the type and I thought that meant a single acyclic animation, but I guess that S does not mean that.

 

Thanks again so much, problem solved.

Posted
1 minute ago, fishburger67 said:

Thanks, that worked.  md = motion driven.  I changed the first animation to "so -o,md,a" and it now works as expected.  I saw that it had an "s" as the type and I thought that meant a single acyclic animation, but I guess that S does not mean that.

 

Thanks again so much, problem solved.

 

S is the start of a sequence, and + is the next animation in that sequence. 

Posted
21 minutes ago, Ashal said:

Aside from that, though, for a SexLab coding solution instead of FNIS behavior tweaking, you can, in fact, set timers for stages programmatically using the thread configuration for handling animations.

 

function SetTimers(float[] SetTimers)

 

You can pass it an array of floats, and it'll use each index for each stage up to the last. The last index of the timer array is always used for the last stage of an animation.


Thanks for this too, it keeps me from having to write a new animation sequence for another animation that is essentially an existing animation that does not take so long to run.

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