Jump to content

SexLab SE - Sex Animation Framework v1.66b - 01/18/2024


Recommended Posts

Posted

so im having an issue i installed the AE version of papyrus sexlabutill and skse AE

yet when i launch the game i get a critical error with red x marks on all 3 of them for some reason its not detecting it even tough i have all the plugins loaded correctly

with the AE version 

Posted
14 hours ago, OsmelMC said:

Just that...

Copy the "tools" folder from the FNIS Mod to the "data" folder of the folder where is Skyrim installed and next time execute the FNIS there.

Just tried it and it keeps saying File/Folder is open but, I don't have anything open

Posted
On 8/20/2022 at 10:09 PM, OsmelMC said:

 

Disable the Facegeom CACHE and the option to build the face both in the racemenu.

 

I think you can find more details on the download page of the RaceMenu.

I see the facegen cache, bDisableFaceGenCache=0 I set it to 0. Which option are you talking about for building faces? Only options under FaceGen are

[FaceGen]
fSliderMultiplier=3.0
bDisableFaceGenCache=0
bExternalHeads=0 ; Change this to 1 to generate external heads
bExtendedMorphs=1 ; Enables extended morph hooks and loading of extended morph assets
bAllowAllMorphs=1 ; Enables use of all preset morphs across all races
bExportSkinToBone=1
bAllowAnyRacePart=0 ; When using face parts, allows using parts not normally valid for the race, not recommended may not persist
bAlloyAnyGenderPart=0 ; Similar to above but does not restrict gender
 

Posted

I have a problem and I dont know if it is SexLab related. 2 days ago I moded Skyrim a new with SEXLAB 1.64c and a dozen more mods with hundred of animations with SLAL. Everything worked fine, when changing anim. sets with "0" a list with  available animations pops up and you can choose which to change to. I had some physycs problems and tried to experiment with full SMP so many times i reinstalled mods like SOS 3BA and physycs addons (nothing to change sexlab or new animations). But now when I press "0" nothing happens , but if I change the key input to something else , it does change the anim set but at random without the window pop up to choose spec. anim. Is this SexLab related at all? (I tried uninstalling and installing again nothing)

Posted
12 hours ago, Perelik said:

I have a problem and I dont know if it is SexLab related. 2 days ago I moded Skyrim a new with SEXLAB 1.64c and a dozen more mods with hundred of animations with SLAL. Everything worked fine, when changing anim. sets with "0" a list with  available animations pops up and you can choose which to change to. I had some physycs problems and tried to experiment with full SMP so many times i reinstalled mods like SOS 3BA and physycs addons (nothing to change sexlab or new animations). But now when I press "0" nothing happens , but if I change the key input to something else , it does change the anim set but at random without the window pop up to choose spec. anim. Is this SexLab related at all? (I tried uninstalling and installing again nothing)

 

The 0 is a hotkey of "SexLab Tools" and it's father Mod ("SexLab Defeat" I think). The hotkey of SexLab Framework don't have visible list. If the hotkey isn't working anymore is probably because the mod has been removed.

Posted
33 minutes ago, OsmelMC said:

 

The 0 is a hotkey of "SexLab Tools" and it's father Mod ("SexLab Defeat" I think). The hotkey of SexLab Framework don't have visible list. If the hotkey isn't working anymore is probably because the mod has been removed.

tools is H, defeat is 0.

Posted
13 hours ago, Perelik said:

I have a problem and I dont know if it is SexLab related. 2 days ago I moded Skyrim a new with SEXLAB 1.64c and a dozen more mods with hundred of animations with SLAL. Everything worked fine, when changing anim. sets with "0" a list with  available animations pops up and you can choose which to change to. I had some physycs problems and tried to experiment with full SMP so many times i reinstalled mods like SOS 3BA and physycs addons (nothing to change sexlab or new animations). But now when I press "0" nothing happens , but if I change the key input to something else , it does change the anim set but at random without the window pop up to choose spec. anim. Is this SexLab related at all? (I tried uninstalling and installing again nothing)

 

in other words:

if you want the list, check the "Sexlab Tools" MCM for the hotkey

 

if you want a random new animation without a list popup: check the Sexlab MCM hotkeys

Posted

 I have a question about Sexlab hotkeys and Skyrim Se hotkeys in general. My Problem is that I have run out of hot keys to use. Is there an alternative or a mod that can map Hotkeys- Pretty much have used all my keyboard keys for hotkeys but still not enough without conflicting.

Posted
39 minutes ago, Vortec said:

 I have a question about Sexlab hotkeys and Skyrim Se hotkeys in general. My Problem is that I have run out of hot keys to use. Is there an alternative or a mod that can map Hotkeys- Pretty much have used all my keyboard keys for hotkeys but still not enough without conflicting.

Not way you be using all the hotkeys of all the Mods. A lot of mods allow you remove the hotkeys (in SexLab you can try to set the ESC key and that will remove the hotkey)

 

All the hotkeys to show info or select actors can use the same key

 

Even if a hotkey can't be removed still you can use one useless key to set all the unwanted hotkeys with the same key and forget about it.

 

 

 

And answering your question: The only keys the can be tracked are the ones of the game control. The MCM have none way to know if some key has been used as hotkey on another mod so nobody can do a mod for that.

 

 

 

Posted (edited)
On 7/28/2021 at 5:37 PM, OsmelMC said:

 

The only important Mod that will require a update or patch to work with the BETA 9 will be the SLSO because the SLSO always required patch the SexLab Framework to work properly and the current Patch is for the BETA 8 only.

 

 

Was there ever a Beta 9 patch for SLSO?

Edited by blackoperations
Posted
1 hour ago, blackoperations said:

Was there ever a Beta 9 patch for SLSO?

I think one was made but between the BETA 8 and the current v1.64c all the Patch had some bug.

 

The changes on the BETA 9 and the final version was too much to be able of made a patch without issues in short time.

 

The current patches for the current versions for SE and AE are fine and seems to be working 100% so i recommend you to get the last version of SexLab Framework and forget about the BETA 9. 

Posted

Noticed that I can no longer choose or change animations with my "0" hotkey like I could in Oldrim. Am I missing something? Even when the key is rebound to a diff key it just plays the next available animation set.

Posted
12 hours ago, OsmelMC said:

The current patches for the current versions for SE and AE are fine and seems to be working 100% so i recommend you to get the last version of SexLab Framework and forget about the BETA 9. 

I was worried about that.  That's too bad.  The functionality and stability of 9 is pretty great now.

Posted (edited)

So I am trying to build a unrelated pex file that depends on the source files from this mod. I am getting an error of MfgConsoleFunc is undefined see below. What should I do to fix this. I have skse 2.0.20 installed. Am I missing some source files? 

LargerPicture.PNG

Mods.PNG

Mods2.PNG

Error.PNG

Edited by FriedTm
Removed False thing
Posted
9 hours ago, FriedTm said:

I am getting an error of MfgConsoleFunc is undefined see below. What should I do to fix this.

Install the MFG and make sure that it's Source files be on the same address of the SexLab source files.

 

The MFG is on Nexus and is a framework for the Expressions, isn't required but if is installed will be used by the SexLab. You need at least the source scripts to be able of compile the SexLab or something related with the SexLab 

Posted

I'm trying to apply a function to actors on AnimationStart and AnimationEnd. I can't seem to figure out how to apply the function. I've figured out how to hook the animation, just can't figure out actually using the function.

 

Spoiler

ScriptName SynthFaceFixer Extends Quest

SexLabFramework Property SexLab Auto

import EBDGlobalFuncs
import SexLabFramework

Function Initialize()    
    RegisterForModEvent("AnimationStart","SynthFF_SexIsStarting")
    RegisterForModEvent("AnimationEnd","SynthFF_SexIsEnding")
EndFunction

Event OnGameReload()
    UnRegisterForModEvent("AnimationStart")
    UnRegisterForModEvent("AnimationEnd")
    RegisterForModEvent("AnimationStart","SynthFF_SexIsStarting")
    RegisterForModEvent("AnimationEnd","SynthFF_SexIsEnding")
EndEvent

ActorBase Function getProperActorBase(Actor akActor) Global;return proper actor base for leveled and non-leveled actors    
    if (akActor.GetLeveledActorBase() != (akActor.GetBaseObject() as ActorBase)) ;should be true for all leveled actors
        return akActor.GetLeveledActorBase().GetTemplate()                
    else
        return akActor.GetActorBase()                        
    EndIf
EndFunction

;if actor is levelled and its template is the same as the non-levelled actorBase, then the body skin has to re-applied or it won't show (Skyrim bug)
bool Function isTemplateActorBase(Actor akActor) Global
    if (akActor.GetLeveledActorBase() != (akActor.GetBaseObject() as ActorBase)) ;should be true for all leveled actors
        ActorBase baseTemplate = akActor.GetLeveledActorBase().GetTemplate()    
        If (baseTemplate == akActor.getActorBase())
            return true
        EndIf
    EndIf
    Return false
EndFunction

String Function getEDID(Form fForm) Global ;returns a form's EDID
    if (fForm)
        String sForm = fForm as String
        ;Form as String example: "[ScriptName <EditorID (FormID)>]"
        int iStart = StringUtil.Find(sForm, "<") + 1
        int iLength = StringUtil.Find(sForm, " (") - iStart
        return StringUtil.Substring(sForm, iStart, iLength)
    EndIf
    return "None"    
EndFunction

;returns the plugin name the form belongs to
String Function getModName(Form fForm) Global
    int formID = fForm.GetFormID() ; Get the formid to extract modindex
    if isLightMod(formID) ; and check whether the for formid comes from a light mod (i.e. FE plugin space)
        return Game.GetLightModName(getLightModIndex(fForm))
    else
        return Game.GetModName(Math.RightShift(formID, 24)) ; Shift right 24 bits to leave only modindex
    endIf
EndFunction

; checks if formid comes from a light mod by looking the index which is FE=254 for light plugins
bool Function isLightMod(int formID) Global
    if Math.RightShift(formID, 24) == 254
        Return True
    endif
    return False
EndFunction

;returns a float (used as a wait time) based on the distance between two objects. I.E. NPCs further from the player are processed later
float Function getWaitTimeByDistance(float Dist) Global
    float waitTime = 0.5 + (Dist/1000.0)
    if (waitTime > 5.0)
        waitTime = waitTime*0.65
    endIf
    if (waitTime > 5.0)
        return 5.0
    endIf
    return waitTime
EndFunction

float Function roundFloat(float flt) Global ;properly rounds a float
    int ceil = Math.Ceiling(flt)
    int floor = Math.Floor(flt)
    if ((ceil - flt) < (flt - floor))
        return ceil as float
    else
        return floor as float
    EndIf
EndFunction

Function DebugOutput(String output, bool bNotification = false) Global
    output = "EBD: " + output
    Debug.Trace(output)
    if (isPapyrusUtilInstalled())
        MiscUtil.PrintConsole(output)
    endif
    if (bNotification)
        Debug.Notification(output)
    EndIf
EndFunction

; function to return a decimal for given hex string
; taken from here: https://forums.nexusmods.com/index.php?/topic/1210601-papyrus-get-name-of-esp-a-base-form-belongs-to/#entry10079661
; could probably be done much better in a manner like this: https://forums.nexusmods.com/index.php?/topic/1210601-papyrus-get-name-of-esp-a-base-form-belongs-to/#entry40904755
; or: https://forums.nexusmods.com/index.php?/topic/8441118-convert-decimal-formid-to-hexadecimal/page-2#entry78086848
int Function HexToTen(String InputHTT) global
    Int Length2 = StringUtil.GetLength(InputHTT)
    Int LengthDone2 = 0
    Int SoFar2 = 0
    
    While ( LengthDone2 < Length2 )
        String CurrentDigit = StringUtil.GetNthChar(InputHTT, LengthDone2)
        Int CurrentTen
        
        If (CurrentDigit == "1")
            CurrentTen = 1
        ElseIf (CurrentDigit == "2")
            CurrentTen = 2
        ElseIf (CurrentDigit == "3")
            CurrentTen = 3
        ElseIf (CurrentDigit == "4")
            CurrentTen = 4
        ElseIf (CurrentDigit == "5")
            CurrentTen = 5
        ElseIf (CurrentDigit == "6")
            CurrentTen = 6
        ElseIf (CurrentDigit == "7")
            CurrentTen = 7
        ElseIf (CurrentDigit == "8")
            CurrentTen = 8
        ElseIf (CurrentDigit == "9")
            CurrentTen = 9
        ElseIf (CurrentDigit == "A")
            CurrentTen = 10
        ElseIf (CurrentDigit == "B")
            CurrentTen = 10
        ElseIf (CurrentDigit == "C")
            CurrentTen = 12
        ElseIf (CurrentDigit == "D")
            CurrentTen = 13
        ElseIf (CurrentDigit == "E")
            CurrentTen = 14
        ElseIf (CurrentDigit == "F")
            CurrentTen = 15
        Else
            CurrentTen= 0
        EndIf

        CurrentTen = CurrentTen*Math.pow(16, Length2-(LengthDone2+1)) as int
        SoFar2 += CurrentTen
        LengthDone2 += 1
    EndWhile
    
    return SoFar2
EndFunction

; returns the int index for a given form assuming that it is coming from light plugin
int function getLightModIndex(form fForm) global
    string formIDRaw = fForm as string
    int bracketIndex = StringUtil.Find(formIDRaw, "(", 0) ; a light form looks like this: FE087800
    string indexHex =  StringUtil.Substring(formIDRaw, bracketIndex + 3, 3) ; the index is between FE and the last three digits; in the above case it would be 087
    int modIndex = HexToTen(indexHex) ; convert the extracted hex index to int
    Return modIndex
endfunction

; returns the formid string needed for facegen textures
; the load index is overwritten with zeroes
; 5 zeroes for light plugins and 2 for regular ones
string function getFormIDString(form fForm) Global
    int formID = fForm.GetFormID()
    string formIDRaw = fForm as string
    int bracketIndex = StringUtil.Find(formIDRaw, "(", 0)
    if isLightMod(formID)
        return "00000" + StringUtil.Substring(formIDRaw, bracketIndex + 6, 3)
    else
        return "00" + StringUtil.Substring(formIDRaw, bracketIndex + 3, 6)
    endIf
endfunction

 

The function below.

 

;applies proper tintmask from npc record    
Function FixFaceTexture(Actor akActor, ActorBase akActorBase)                                        
    int index = akActorBase.GetIndexOfHeadPartByType(1) ; 1 is Face type, 3 is Hair
    HeadPart facePart = akActorBase.GetNthHeadPart(index)        
    string modName = getModName(akActorBase)
    string formIDString = getFormIDString(akActorBase)
    TextureSet akActorTexSet = akActorBase.GetFaceTextureSet()
    if (akActorTexSet)
        akActorTexSet.SetNthTexturePath(6, "Actors\\Character\\FaceGenData\\FaceTint\\" + modName + "\\" + formIDString + ".dds")
        NetImmerse.SetNodeTextureSet(akActor, facePart.GetPartName(), akActorTexSet, false) ; GetPartName() only exists in SKSE >= 2.0.17; for older versions we need to use the somewhat buggy GetName()                
        ;DebugOutput("Found face texture for: " + akActorBase.getName() + ", " + formIDRaw + ": " + akActorBase.GetFaceTextureSet().GetNthTexturePath(0) + ", " +akActorBase.GetFaceTextureSet().GetNthTexturePath(6))
    EndIf    

EndFunction

 

The Events in question below.

 

Event SynthFF_SexIsStarting(string eventName, string argString, float argNum, form sender)
    Actor[] actorList = SexLab.HookActors(argString)
    sslThreadController controller = SexLab.HookController(argString)
    sslBaseAnimation anim = SexLab.HookAnimation(argString)
    FixFaceTexture()
EndEvent

Event SynthFF_SexIsEnding(string eventName, string argString, float argNum, form sender)
    Actor[] actorList = SexLab.HookActors(argString)
    sslThreadController controller = SexLab.HookController(argString)
    sslBaseAnimation anim = SexLab.HookAnimation(argString)
    FixFaceTexture()
EndEvent

 

 

Posted
48 minutes ago, Sniperpls said:

Function Initialize()    
    RegisterForModEvent("AnimationStart","SynthFF_SexIsStarting")
    RegisterForModEvent("AnimationEnd","SynthFF_SexIsEnding")
EndFunction

Event OnGameReload()
    UnRegisterForModEvent("AnimationStart")
    UnRegisterForModEvent("AnimationEnd")
    RegisterForModEvent("AnimationStart","SynthFF_SexIsStarting")
    RegisterForModEvent("AnimationEnd","SynthFF_SexIsEnding")
EndEvent

OnGameReload() is not a native event, and it's not clear if Initialize() is ever called.

 

Usually this is done through a script attached to a player alias which can receive the OnPlayerLoadGame() event. That page describes the method for covering both loading a save and starting a new game.

Posted (edited)
On 8/27/2022 at 10:42 PM, Faustling said:

I am playing Skyrim 1.5.97 with SL 163.7 and trying to diagnose some problems:
I currently have SKSE64 2.019 installed.  Should I upgrade to 2.0.20?

 

I have read that there were some minor issues with 2.00.19, which is why 2.00.20 was released very shortly after 2.00.19.

 

However, at least one of my mods causes a CTD on launch when I try to run 2.00.20- apparently, one or more of my 400+ mods just wasn't ever updated beyond SKSE64 2.00.17 which is what I am running with SSE 1.5.97. You should at least try 2.00.20 and see if it solves your problems- if you are using MO2 or Vortex, it's easy enough to revert if it doesn't work.

Edited by Vyxenne
Because she wanted a lot less of "mmore"
Posted

ok. first time modder. first time kind of player. So i wanted to get the sex lab mod running. and I seem to have a lot of problems getting the darn thing going. I have a handfull of presets, the alternate start, some animation pacts from anubsm the asian race preset, bodyslide, cbbe, 3ba all of the usual stuff to get it going. and a lot of the other optional mods to get it running. and even with them on none of the menu stuff for sexlabframework seems to run. I'm playing skyrim special edition.  I've been at this problem for 4 days.

Screenshot 2022-08-30 081955.png

Screenshot 2022-08-30 081904.png

Screenshot 2022-08-30 082041.png

Screenshot 2022-08-30 082025.png

Posted
6 minutes ago, TurtleWorld3D said:

ok. first time modder. first time kind of player. So i wanted to get the sex lab mod running. and I seem to have a lot of problems getting the darn thing going. I have a handfull of presets, the alternate start, some animation pacts from anubsm the asian race preset, bodyslide, cbbe, 3ba all of the usual stuff to get it going. and a lot of the other optional mods to get it running. and even with them on none of the menu stuff for sexlabframework seems to run. I'm playing skyrim special edition.  I've been at this problem for 4 days.

Screenshot 2022-08-30 081955.png

Screenshot 2022-08-30 081904.png

Screenshot 2022-08-30 082041.png

Screenshot 2022-08-30 082025.png

This also happens when i try to attempt to install sexlab....

20220830082412_1.jpg

Posted
Just now, zarantha said:

 

Have you tried clicking on "Click Here"?

I have. nothing shows up beyond that. From the video tutorials I've seen. the text should say working. Or installing.

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