Jump to content

Sexlab Scripting and Modding Tutorials w/ How too Video and example script downloads


Recommended Posts

On 7/19/2021 at 2:43 AM, TwiceSwords said:

I searched for forcegreet tutorial and made it happen (i think. I didn't get the chance to test it because of errors below).

I tried both your method and simply this Game.GetPlayer().UnequipAll() but got compile fails. This is the fail from unequipall:

 

Starting 1 compile threads for 1 files...
Compiling "TIF__02001837"...
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Perk.psc(24,21): unknown type leveleditem
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Perk.psc(25,56): unknown type leveleditem
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\MagicEffect.psc(72,23): unknown type impactdataset
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\MagicEffect.psc(73,40): unknown type impactdataset
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\MagicEffect.psc(78,28): unknown type imagespacemodifier
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\MagicEffect.psc(79,45): unknown type imagespacemodifier
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Actor.psc(454,28): unknown type idle
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Actor.psc(457,38): unknown type idle
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(251,57): unknown type imagespacemodifier
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(391,8): variable ActorValueInfo is undefined
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(391,23): none is not a known user-defined type
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(391,59): none is not a known user-defined type
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(391,1): cannot return a none from getskilllegendarylevel, the types do not match (cast missing or types unrelated)
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(397,1): variable ActorValueInfo is undefined
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(397,16): none is not a known user-defined type
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(397,52): none is not a known user-defined type
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\ObjectReference.psc(477,45): unknown type impactdataset
No output generated for TIF__02001837, compilation failed.

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

 

Something as simple as this gives this much error. Doesn't make any sense to me.

One other thing you may need to consider...

I am re installing my entire Skyrim LE game because of some script errors I can't seem to track down that prevent me from purchasing things, Guards unlocking gates..etc.

 

Anyway, I blew out my install and saves and will start a fresh LE. And I am remembering that in your case, you may need to download and extract the SKSE archive instead of using the installer. It's coming back to me from the past when I was attempting to edit and recompile a script.

Link to comment

Hi folks, i once again asking for your help.

 

I'm working on a mod that involves sex scenes and i want to use animations for female giants.

I use these scriptlines for catching the animations:

 

anims = SexLab.GetAnimationsByTag(2, "giantess,FC", tagSuppress="Necro", RequireAll=true)
SexLab.StartSex(sexActors, anims)

 

there are a few animations which have a "necro" tag in them and i don't want theses animations to play.

So i thought the above lines are suitable.

i went through testing and noticed that these animations are still playing

 

This is what the log shows

 

Spoiler

144618386_Screenshot2021-07-2419-18-14.png.664bc9347f4cbc303eb320415ee6a588.png

 

1519577678_Screenshot2021-07-2419-18-31.png.84509308daa3a673ce3bc5fcf73df23f.png

 

And this is the tag of this animation in SL Animloader:

 

Spoiler

346745085_Screenshot2021-07-2414-44-17.png.c45a14880aa130891f488fdbff20c8cd.png

 

I don't now why this animation plays it has no "giantess" in it and should be avoided because of "necro".

 

Any ideas?

 

I would appreciate your help.

Link to comment

I extracted the Skyrim's scripts.rar now i still get errors. Not as much as before but still i can't make an NPC simply undress me.

 

Game.GetPlayer().UnequipAll()

 

Starting 1 compile threads for 1 files...
Compiling "TIF__02001837"...
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Actor.psc(454,28): unknown type idle
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Actor.psc(457,38): unknown type idle
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(251,57): unknown type imagespacemodifier
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\ObjectReference.psc(477,45): unknown type impactdataset
No output generated for TIF__02001837, compilation failed.

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

 

Actor.psc(454,28) is:

bool Function PlayIdle(Idle akIdle) native

"akIdle" part i think. What i am supposed to understand from this. Am i supposed to add some scripts which says "the NPC plays idle akIdle" or something. Maybe it is like extracting scripts.rar i mean something else. I will verify game files maybe that helps because the script is just too simple to fuck up i don't understand. I mean it says object reference unkown type, i didn't reference any objects.

Link to comment
27 minutes ago, TwiceSwords said:

I also tried to compile this

 

Game.GetPlayer().UnequipAll()

 

script with notepad++ which was also a fail. Can anyone compile this and upload here. I will then add the script to many NPCs across Skyrim. It won't be "Get Stripped! Again!" but it will do for me.

 

please paste the whole thing you want to compile

Otherwise i think this is what you want:

 

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname UnequipAll Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
Game.GetPlayer().UnequipAll()

;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

 

UnequipAll.pex

 

Edited by noreg
Link to comment
49 minutes ago, TwiceSwords said:

I extracted the Skyrim's scripts.rar now i still get errors. Not as much as before but still i can't make an NPC simply undress me.

 

Game.GetPlayer().UnequipAll()

 

Starting 1 compile threads for 1 files...
Compiling "TIF__02001837"...
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Actor.psc(454,28): unknown type idle
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Actor.psc(457,38): unknown type idle
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\Game.psc(251,57): unknown type imagespacemodifier
C:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\ObjectReference.psc(477,45): unknown type impactdataset
No output generated for TIF__02001837, compilation failed.

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

 

Actor.psc(454,28) is:

bool Function PlayIdle(Idle akIdle) native

"akIdle" part i think. What i am supposed to understand from this. Am i supposed to add some scripts which says "the NPC plays idle akIdle" or something. Maybe it is like extracting scripts.rar i mean something else. I will verify game files maybe that helps because the script is just too simple to fuck up i don't understand. I mean it says object reference unkown type, i didn't reference any objects.

Did you set you properties in the script?

Link to comment
43 minutes ago, TwiceSwords said:

I also tried to compile this

 

Game.GetPlayer().UnequipAll()

 

script with notepad++ which was also a fail. Can anyone compile this and upload here. I will then add the script to many NPCs across Skyrim. It won't be "Get Stripped! Again!" but it will do for me.

UnequipAll.pex

UnequipAll.psc

Link to comment
1 hour ago, jap2015 said:

I need a specific animation to play for my scene. Is there an alternative to "calling by tag" (anims = SexLab.GetAnimationsByTag)?

If it was a a Abubs animation for example, usually it will have the modders name as a tag, then choose a couple other tags from that animation as well, I think there is another way, will have to check later.

Link to comment
1 hour ago, noreg said:

Hi folks, i once again asking for your help.

 

I'm working on a mod that involves sex scenes and i want to use animations for female giants.

I use these scriptlines for catching the animations:

 

anims = SexLab.GetAnimationsByTag(2, "giantess,FC", tagSuppress="Necro", RequireAll=true)
SexLab.StartSex(sexActors, anims)

 

there are a few animations which have a "necro" tag in them and i don't want theses animations to play.

So i thought the above lines are suitable.

i went through testing and noticed that these animations are still playing

 

This is what the log shows

 

  Hide contents

144618386_Screenshot2021-07-2419-18-14.png.664bc9347f4cbc303eb320415ee6a588.png

 

1519577678_Screenshot2021-07-2419-18-31.png.84509308daa3a673ce3bc5fcf73df23f.png

 

And this is the tag of this animation in SL Animloader:

 

  Hide contents

346745085_Screenshot2021-07-2414-44-17.png.c45a14880aa130891f488fdbff20c8cd.png

 

I don't now why this animation plays it has no "giantess" in it and should be avoided because of "necro".

 

Any ideas?

 

I would appreciate your help.

anims = SexLab.GetAnimationsByTag(2, "giantess, FC", tagSuppress="Necro")  that should be all you need, there was no space after the giantess, not sure if it matters

 

It might have been playing because of the FC tag and no space to separate them, not completely sure, but try it without the requireall, the suppressed Necro should be enough to stop it from playing.

Edited by Guest
Link to comment
1 hour ago, jap2015 said:

I need a specific animation to play for my scene. Is there an alternative to "calling by tag" (anims = SexLab.GetAnimationsByTag)?

I was thinking about this and in the Radiant Prostitution and Gigolo quest "bet your sweet ass" at the end of the quest the script calls for a certain animation, been a while since I have been in it, but take a look in that quest, it will show you how.

Link to comment
48 minutes ago, -Caden- said:

anims = SexLab.GetAnimationsByTag(2, "giantess, FC", tagSuppress="Necro")  that should be all you need, there was no space after the giantess, not sure if it matters

 

It might have been playing because of the FC tag and no space to separate them, not completely sure, but try it without the requireall, the suppressed Necro should be enough to stop it from playing.

 

Thanks for your answer but it seems that the tag is completely ignored.
I tried only with the keyword "giantess" which is only tagged with three animations and it seems that random animanimations for giantrace are playing, not only these with this tag

 

Link to comment
14 minutes ago, noreg said:

 

Thanks for your answer but it seems that the tag is completely ignored.
I tried only with the keyword "giantess" which is only tagged with three animations and it seems that random animanimations for giantrace are playing, not only these with this tag

 

Hmm is it doing that thru your mod or thru defeat or another mod?

Link to comment
27 minutes ago, -Caden- said:

Hmm is it doing that thru your mod or thru defeat or another mod?

 

This is the complete script i am starting it through a dialogue

 

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname _009Merilyn_Sex_Giantess Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
actor[] sexActors = new actor[2]
sexActors[0] = akSpeaker
sexActors[1] = Game.GetPlayer()
sslBaseAnimation[] anims
ActorBase PlayerBase = Game.GetPlayer().GetActorBase()
ActorBase NPCBase = akspeaker.GetActorBase()
Keyword KWCreature = Keyword.GetKeyword("009Merilyn_KYWD_IsGiantess")
;Keyword KWWerewolf = Keyword.GetKeyword("009Merilyn_KYWD_Werewolf")

if (NPCBase.Haskeyword(KWCreature)); NPC is Giantess
anims = SexLab.GetAnimationsByTag(2, "giantess", tagSuppress="Necro")
SexLab.StartSex(sexActors, anims)
QuestName.hadsexwithGiantess +1
endIf

;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

SexLabFramework Property SexLab auto
_009Merilyn_Sex_Questvariables Property QuestName Auto 

Link to comment
8 minutes ago, noreg said:

 

This is the complete script i am starting it through a dialogue

 

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname _009Merilyn_Sex_Giantess Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
actor[] sexActors = new actor[2]
sexActors[0] = akSpeaker
sexActors[1] = Game.GetPlayer()
sslBaseAnimation[] anims
ActorBase PlayerBase = Game.GetPlayer().GetActorBase()
ActorBase NPCBase = akspeaker.GetActorBase()
Keyword KWCreature = Keyword.GetKeyword("009Merilyn_KYWD_IsGiantess")
;Keyword KWWerewolf = Keyword.GetKeyword("009Merilyn_KYWD_Werewolf")

if (NPCBase.Haskeyword(KWCreature)); NPC is Giantess
anims = SexLab.GetAnimationsByTag(2, "giantess", tagSuppress="Necro")
SexLab.StartSex(sexActors, anims)
QuestName.hadsexwithGiantess +1
endIf

;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

SexLabFramework Property SexLab auto
_009Merilyn_Sex_Questvariables Property QuestName Auto 

I only ask this to as kind of a trouble shooter cause I havent ever used giantess animations, so the speaker is the Giantess, yes? 

I know that creature aninations are one way, example, if a wolf is having sex with the PC you can swap positions, so is the:

sexActors[0] = akSpeaker
sexActors[1] = Game.GetPlayer() - putting the NPCs in the right postions for the animations instead of:

 

sexActors[0] = Game.GetPlayer()
sexActors[1] = akSpeaker, probably a dumb question but trying it understand the animation or why its happening that its selecting ones that should be supressed

Link to comment
1 hour ago, -Caden- said:

I only ask this to as kind of a trouble shooter cause I havent ever used giantess animations, so the speaker is the Giantess, yes? 

I know that creature aninations are one way, example, if a wolf is having sex with the PC you can swap positions, so is the:

sexActors[0] = akSpeaker
sexActors[1] = Game.GetPlayer() - putting the NPCs in the right postions for the animations instead of:

 

sexActors[0] = Game.GetPlayer()
sexActors[1] = akSpeaker, probably a dumb question but trying it understand the animation or why its happening that its selecting ones that should be supressed

 

When i swap the roles nothing happend, and in the old way the roles itself were right. could it be that the tags are defective?

 

Sorry my bad, forgot to recompile.

It still plays necro animations

 

Edited by noreg
Link to comment
5 hours ago, noreg said:

 

When i swap the roles nothing happend, and in the old way the roles itself were right. could it be that the tags are defective?

 

Sorry my bad, forgot to recompile.

It still plays necro animations

 

Here is a discussion on updating Tags by some animators. Though not a complete list of valid tags, it does give some details that may be useful.

https://www.loverslab.com/topic/148374-sexlab-anamation-tag-listdebate/

 

Link to comment
7 hours ago, -Caden- said:

I was thinking about this and in the Radiant Prostitution and Gigolo quest "bet your sweet ass" at the end of the quest the script calls for a certain animation, been a while since I have been in it, but take a look in that quest, it will show you how.

Your memory is amazing. I found this buried in the quest script:  I had tried "ByName" before, but it threw me "unknown" errors.  So, it can be done. Thanks

 

  
    sslBaseAnimation[] anim = new sslBaseAnimation[1]
    anim[0] = SexLab.GetAnimationByName("Arrok Tricycle")
    RegisterForModEvent("AnimationEnd_DoneThreesome","DoneThreesome")
    Handler.fuck(actors ,0, anim , next = "DoneThreesome").StartThread()
endFunction

Link to comment
7 hours ago, noreg said:

 

When i swap the roles nothing happend, and in the old way the roles itself were right. could it be that the tags are defective?

 

Sorry my bad, forgot to recompile.

It still plays necro animations

 

Ok so you already have it right, that same mod I had mentioned to Jap2015 radiant prostitution and gigolo also has a quest called all the kings horses and another one where you a sacrificed to giants to have sex, there might be something in the quest scripts in that mod that will help, like I had mentioned, its been a couple years since I have been in that mod so memory is foggy on creature animations

Link to comment

Sorry for my dumb question.. but should this work for collecting multiple anims

 

---------------------------------------------------------------------------------------------------

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname _009Merilyn_Sex_Giantess Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
actor[] sexActors = new actor[2]
sexActors[0] = akSpeaker
sexActors[1] = Game.GetPlayer()
sslBaseAnimation[] anims
ActorBase PlayerBase = Game.GetPlayer().GetActorBase()
ActorBase NPCBase = akspeaker.GetActorBase()

 anims[0] = SexLab.GetAnimationByName("Animation0")

 anims[1] = SexLab.GetAnimationByName("Animation1")

 anims[2] = SexLab.GetAnimationByName("Animation2")

 

SexLab.StartSex(sexActors, anims)

 

;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

 

or this for starting a specific animation:

----------------------------------------

 anims[0] = SexLab.GetAnimationByName("Animation0")

SexLab.StartSex(sexActors, anims)

-----------------------------------------

Link to comment
1 hour ago, noreg said:

Sorry for my dumb question.. but should this work for collecting multiple anims

 

---------------------------------------------------------------------------------------------------

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname _009Merilyn_Sex_Giantess Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
actor[] sexActors = new actor[2]
sexActors[0] = akSpeaker
sexActors[1] = Game.GetPlayer()
sslBaseAnimation[] anims
ActorBase PlayerBase = Game.GetPlayer().GetActorBase()
ActorBase NPCBase = akspeaker.GetActorBase()

 anims[0] = SexLab.GetAnimationByName("Animation0")

 anims[1] = SexLab.GetAnimationByName("Animation1")

 anims[2] = SexLab.GetAnimationByName("Animation2")

 

SexLab.StartSex(sexActors, anims)

 

;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment

 

or this for starting a specific animation:

----------------------------------------

 anims[0] = SexLab.GetAnimationByName("Animation0")

SexLab.StartSex(sexActors, anims)

-----------------------------------------

Thats a good question, i actually do not know, I would think in theory that it would work like your second one if you added multiple, like multiple tags -  anims[0] = SexLab.GetAnimationByName("Animation0, Animation1, Animation2")

 

If you had multiple names it should choose one, like multiple tags does

Edited by Guest
Link to comment
24 minutes ago, -Caden- said:

Thats a good question, i actually do not know, I would think in theory that it would work like your second one if you added multiple, like multiple tags -  anims[0] = SexLab.GetAnimationByName("Animation0, Animation1, Animation2")

 

If you had multiple names it should choose one, like multiple tags does

 

But anims[] is an array, so it should not be possible to set multiple stings to one..

what irritates me is "Handler.fuck(actors ,0, anim , next = "DoneThreesome")"

 

i think

actors is equivalent to

sexactors in

SexLab.StartSex(sexActors, anims)

but what is the zero for? The startstage?

 

i would expect something like

SexlabStart(sexactors,anim)

Edited by noreg
Link to comment
3 minutes ago, noreg said:

 

But anims[] is an array, so it should not be possible to set multiple stings to one..

what irritates me is "Handler.fuck(actors ,0, anim , next = "DoneThreesome")"

 

i think

actors is equivalent to

sexactors in

SexLab.StartSex(sexActors, anims)

but what is the zero for? The startstage?

 

i would expect something like

SexlabStart(sexactors,anim)

I am not sure to be honestly, I only did one "by name" animation and that was 4 or 4 years ago, best thing is to try your first idea, with he multiple lines, but like the tags, it doesnt choose all tags, it just needs one, see if it compiles and try it. @CPU could probably answer this better, he is like the Hermaeus Mora of Loverlab, the knower of the unknown :)

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