hextun Posted January 25 Author Posted January 25 2 hours ago, MannySauce said: Hmmm I did mean to give that mod a try. Dug up these requests from my notes and must've forgotten about it in the process. I'll give it a go.👍 Check my link upthread; there are updated versions posted in the support forum. I've contributed a couple (the last couple? or so?), with the latest being what I commented about, the new monitoring options that would play nicely with SLTR.
hextun Posted January 28 Author Posted January 28 Hey all, two updates. First, new version of SLTR is released. 0.974 primarily adds support for the Autonomous Sex Framework, allowing you to set up SLTScripts in response to the player's choice when given the option to accept or refuse sex. Here's the relevant changelog: 0.974 Savegame compatible Reminder: Note that logging output is all sent to <My Documents>\My Games\Skyrim Special Edition\SKSE\sl-triggers.log (or whichever folder you have your SKSE logs directed to) enhancement: new "Adult General" triggers; catch all for any adult oriented mod compat triggers that is not SexLab or OStim specific enhancement: ASF (Autonomous Sex Framework) event handling added bugfix: "DD Unlock All" script did not specify a target; set to $system.self Second, if you are following along with the SLD development I've been doing, I added support for the FillHerUp mod. Go check out SexLab Disparity v14.6, now with FillHerUp support:
BatGaru Posted January 29 Posted January 29 Hi, after the update, this mod is giving me lag spikes and even crashes every time I... touch water (and get out of it). Downgrading for now.
BatGaru Posted January 29 Posted January 29 Nvm, it was SLS license water damage or whatever. I do have SLS installed but don't use the license system; I use Licenses - Player Oppression. 1
zvezda225 Posted January 29 Posted January 29 How would i go about creating a script that gives the PC a certain MGEF buff everytime they SL sex an specific race?
hextun Posted January 29 Author Posted January 29 1 hour ago, zvezda225 said: How would i go about creating a script that gives the PC a certain MGEF buff everytime they SL sex an specific race? Step 1: Identify your SPEL record I don't believe you can explicitly apply a MGEF directly; instead you have to cast the SPEL record on the target, where the SPEL then applies the MGEF. As for casting a SPEL on a target, the base SLTR install includes several examples, including "Cast Calm.sltscript": spell_cast "skyrim.esm:319209" $system.self As you can see, it simply casts the SPEL identified by FormID "skyrim.esm:319209" on the target of the script. "skyrim.esm:319209" could also be written "skyrim.esm:0x4DEE9". Both refer to the "Calm" spell in game. Look up the SPEL record you want and use that. Step 2: Set up the trigger In the SLTR MCM, click on the "SLTR SexLab" section on the left. On the right, add a new trigger. If you have enough triggers that it scrolls or pages, find the newly added trigger. Change the filters as follows: Event: SexLab Start Player Relationship: Player Partner Race: Humanoid This will trigger for every sex start scene involving the player and a humanoid partner. We have to do this because there is no "filter by one specific race". Instead we have to check the race inside the script. Step 3: Write the script In Data/SKSE/Plugins/sl_triggers/commands/, create your new script, say "example.sltscript". In it, add the following and save: actor_race $system.partner1 if $$ != "Breton" ; or whatever race you are looking for return ; not the target race so exit endif ; this is the "Calm" spell FormID, you will need to set this to your intended spell FormID spell_cast "skyrim.esm:0x4DEE9" $system.player Note that the "skyrim.esm:0x4DEE9" and "Breton" strings will need to be set to the spell FormID and race name you desire respectively. 1
hextun Posted January 31 Author Posted January 31 (edited) v0.975 has arrived with a little treat. UILIB! (see how to use it here: https://github.com/schlangster/skyui-lib/wiki/How-to) UILIB is a simple UI wrapper that lets you create text input fields and pop-up lists the user can enter data into or select from, as well as pop up notification windows. All of the UI pop-ups are modal by default with no option to change this; I mention this because if someone adds a mod that makes them *not* modal anymore, understand that was not the original intent. With new commands: uilib_showtextinput, uilib_showlist, ui_shownotification, and ui_shownotificationicon, you can have your SLTScripts interact with the user in more ways than before. Changelog: Savegame compatible Reminder: Note that logging output is all sent to <My Documents>\My Games\Skyrim Special Edition\SKSE\sl-triggers.log (or whichever folder you have your SKSE logs directed to) enhancement: ASF event: expanded/updated "Player Consents:" to: "Any", "Accept/Acquiesce", "Decline/Refuse/Cancel", "Decline/Refuse" enhancement: added UILIB support new commands: uilib_showtextinput, uilib_showlist, uilib_shownotification, uilib_shownotificationicon Example script to pop up a list of fruit and note the selection: string[] $as_options listadd $as_options "apple" "banana" "orange" uilib_showlist "Pick a fruit" $as_options set $picked $$ msg_notify $"You picked index :{picked}:." Edited January 31 by hextun
ebbluminous Posted January 31 Posted January 31 Hi @hextun Love that you are keeping triggers alive. I was wondering... Is it possible to have a trigger condition for when the players skill or character level changes?
hextun Posted January 31 Author Posted January 31 8 minutes ago, ebbluminous said: Hi @hextun Love that you are keeping triggers alive. I was wondering... Is it possible to have a trigger condition for when the players skill or character level changes? I was just recently thinking about an "on level change" event. What are your thoughts for using the skill change event?
LlenneiasWard Posted January 31 Posted January 31 Great mod! I was thinking it we could have a SexLab trigger event upon non-player orgasm, both SLSO or not. I was thinking this could be used for a pseudo-succubus mod or something. I was trying to earn some skill points with partner SLSO orgasms but it only triggers when the player reaches orgasm. Cheers!
Fraying9981 Posted February 1 Posted February 1 19 hours ago, hextun said: v0.975 has arrived with a little treat. UILIB! (see how to use it here: https://github.com/schlangster/skyui-lib/wiki/How-to) UILIB is a simple UI wrapper that lets you create text input fields and pop-up lists the user can enter data into or select from, as well as pop up notification windows. All of the UI pop-ups are modal by default with no option to change this; I mention this because if someone adds a mod that makes them *not* modal anymore, understand that was not the original intent. With new commands: uilib_showtextinput, uilib_showlist, ui_shownotification, and ui_shownotificationicon, you can have your SLTScripts interact with the user in more ways than before. Changelog: Savegame compatible Reminder: Note that logging output is all sent to <My Documents>\My Games\Skyrim Special Edition\SKSE\sl-triggers.log (or whichever folder you have your SKSE logs directed to) enhancement: ASF event: expanded/updated "Player Consents:" to: "Any", "Accept/Acquiesce", "Decline/Refuse/Cancel", "Decline/Refuse" enhancement: added UILIB support new commands: uilib_showtextinput, uilib_showlist, uilib_shownotification, uilib_shownotificationicon Example script to pop up a list of fruit and note the selection: string[] $as_options listadd $as_options "apple" "banana" "orange" uilib_showlist "Pick a fruit" $as_options set $picked $$ msg_notify $"You picked index :{picked}:." Wait this is crazy. Can you have dynamically populated lists? For example: List of nearby actors Pick the one to start a scene with
hextun Posted February 1 Author Posted February 1 4 hours ago, Fraying9981 said: Wait this is crazy. Can you have dynamically populated lists? For example: List of nearby actors Pick the one to start a scene with You mean something like this? ; NFFPickFollowerForSex.sltscript ; Requires: Nether's Follower Framework, SexLab ; Fetches the follower list from NFF, displays a notification if no followers are available, displays a list otherwise. ; Offers a "Cancel" option to opt-out. Otherwise starts a random sex scene with the selected partner and the player. set $followers resultfrom nff_getfollowers string[] $f_names listadd $f_names "- Cancel -" set $f_count resultfrom listcount $followers set $i 0 while $i < $f_count set $fellow $followers[$i] set $fellow_name resultfrom actor_name $followers[$i] listadd $f_names $fellow_name inc $i 1 endwhile set $sel_index resultfrom uilib_showlist "Pick an NFF Follower:" $f_names 0 0 if $sel_index == 0 ; Cancel selected uilib_shownotification "You cancelled." else set $picked_name $f_names[$sel_index] inc $sel_index -1 set $f_level resultfrom actor_dogetter $followers[$sel_index] GetLevel uilib_shownotification $"You picked: Name[{picked_name}] Level[{f_level}]" string[] $tagopts listadd $tagopts "- No Tags -" "Vaginal" "Anal" "Oral" "Vaginal,Anal" "Vaginal,Oral" "Anal,Oral" set $tag_index resultfrom uilib_showlist "Pick Tag(s):" $tagopts 0 0 set $tags "" if $tag_index > 0 set $tags $tagopts[$tag_index] endif Form[] $partners listadd $partners $system.player listadd $partners $followers[$sel_index] sl_startsex $partners none $tags false endif Yeah, you can do that. Tested on current, modified, Nefaram modlist)
hextun Posted February 1 Author Posted February 1 19 hours ago, LlenneiasWard said: Great mod! I was thinking it we could have a SexLab trigger event upon non-player orgasm, both SLSO or not. I was thinking this could be used for a pseudo-succubus mod or something. I was trying to earn some skill points with partner SLSO orgasms but it only triggers when the player reaches orgasm. Cheers! Thank you. So, there are two SexLab orgasm related events. For SexLab 1.66, there is the baseline "Orgasm" event, which fires and means everyone came, and then there is "Separate Orgasm" but only if you have SexLab Separate Orgasm. For SexLab P+, there is only "Separate Orgasm" basically. You mention SLSO so I'm assuming you are on the older SexLab (same as me) with SLSO. So if you want to trigger an event for actors who are *not* the player: Trigger: SexLab, Separate Orgasm Chance: 100 (default) Player Relationship: "Not Player" (i.e. I am not the player, and may or may not be their partner at the moment) That should be it. That should, if I'm not mistaken, run for *any* actor who has an orgasm during a SexLab scene, provided they are not the player, even if they are not having sex with the player (i.e. two NPCs having sexy times with one another off in the corner, away from the player). If you want it only for partners of the player, but not the player themselves (i.e. all NPCs in a scene with the player, just not the player), then you pick: Trigger: SexLab, Separate Orgasm Chance: 100 (default) Player Relationship: "Partner Player" (i.e. I am a partner to the player; the player is definitely in a scene with me, but I am *not* the player) Then for your script, make sure any skill bumps target $system.player and that should work. Does that help?
hextun Posted February 1 Author Posted February 1 Oh and I just remembered to update the wiki docs for the function library; the new uilib_* calls are documented on github now.
Fraying9981 Posted February 1 Posted February 1 42 minutes ago, hextun said: You mean something like this? ; NFFPickFollowerForSex.sltscript ; Requires: Nether's Follower Framework, SexLab ; Fetches the follower list from NFF, displays a notification if no followers are available, displays a list otherwise. ; Offers a "Cancel" option to opt-out. Otherwise starts a random sex scene with the selected partner and the player. set $followers resultfrom nff_getfollowers string[] $f_names listadd $f_names "- Cancel -" set $f_count resultfrom listcount $followers set $i 0 while $i < $f_count set $fellow $followers[$i] set $fellow_name resultfrom actor_name $followers[$i] listadd $f_names $fellow_name inc $i 1 endwhile set $sel_index resultfrom uilib_showlist "Pick an NFF Follower:" $f_names 0 0 if $sel_index == 0 ; Cancel selected uilib_shownotification "You cancelled." else set $picked_name $f_names[$sel_index] inc $sel_index -1 set $f_level resultfrom actor_dogetter $followers[$sel_index] GetLevel uilib_shownotification $"You picked: Name[{picked_name}] Level[{f_level}]" string[] $tagopts listadd $tagopts "- No Tags -" "Vaginal" "Anal" "Oral" "Vaginal,Anal" "Vaginal,Oral" "Anal,Oral" set $tag_index resultfrom uilib_showlist "Pick Tag(s):" $tagopts 0 0 set $tags "" if $tag_index > 0 set $tags $tagopts[$tag_index] endif Form[] $partners listadd $partners $system.player listadd $partners $followers[$sel_index] sl_startsex $partners none $tags false endif Yeah, you can do that. Tested on current, modified, Nefaram modlist) Yeah but ideally scan nearby actors (rather than just nff) Possible?
ebbluminous Posted February 1 Posted February 1 On 1/31/2026 at 6:55 PM, hextun said: I was just recently thinking about an "on level change" event. What are your thoughts for using the skill change event? I usually use SLTR to equip potions. So I was thinking hmm, that would be cool to have that when levelling, then I had the idea of skill levelling as well. Initial thoughts is whether a specific skill or skill type be detected. So then if a magic skill increases apply a magicka potion as a quick boost to magicka from the increased knowledge. Also like your scripts for Transformative Elixirs. Any plans to do the same for Morphology?
hextun Posted February 1 Author Posted February 1 1 hour ago, Fraying9981 said: Yeah but ideally scan nearby actors (rather than just nff) Possible? So this then? ; sltname util_scan_cell_npcs ; sltgrup Utility ; sltdesc Returns: Form[]: a list of scanned Actor objects found nearby ; sltargs Form: objCenter: (optional: default none) ObjectReference to center the search on; specifying 'none' will target the player (i.e. bareword none, not a string "none") ; sltargs float: afRadius: (optional: default 0.0, the entire cell) radius to search in; 0.0 will search the entire cell ; sltargs string: srKeyword: (optional: default "") Keyword to look for (i.e. search only for Actors with the matching keyword) ; sltargs bool: bIgnoreDead: (optional: default true) ignore dead actors if true, consider them if false Don't worry, it doesn't exist (yet), but seems like what you are looking for? Then from there the logic is the same (i.e. iterate the list, create the list of names, present and go).
hextun Posted February 1 Author Posted February 1 23 minutes ago, ebbluminous said: I usually use SLTR to equip potions. So I was thinking hmm, that would be cool to have that when levelling, then I had the idea of skill levelling as well. Initial thoughts is whether a specific skill or skill type be detected. So then if a magic skill increases apply a magicka potion as a quick boost to magicka from the increased knowledge. Also like your scripts for Transformative Elixirs. Any plans to do the same for Morphology? Plans? What are these *plans* you speak of? Morphology hasn't been on my radar. FWIW, I played HappyFunTimes briefly awhile back, and have since bounced between Masterstroke and Nefaram, meaning I've been exposed to the mods added in those modpacks (mostly the latter two) plus a few I've stumbled across myself (e.g. SES2, Apropros2, SLD, sl_triggers, PetCollar). So if you're ever wondering "why isn't he aware of X" that's why. A quick look at Morphology suggests it is far more complex than TFE. The TFE script (I assume you're talking about the contamination script) doesn't do anything fancy. The work goes into crafting a suitable "rnd_list" call and using "item_adduse" from there. In the TFE script I played around a little with random number generation and weighted averages to play with the results a bit. I used the fact that the TFE editorID values for all of the elixirs are formulaic (i.e. "TFE{some affix}Potion" e.g. "TFEMagnificationPotion"). I'd be happy to help edit a script or discuss ideas with you, but I don't have any plans for Morphology in particular. Do you feel up to taking a crack at an SLTScript?
Fraying9981 Posted February 1 Posted February 1 22 minutes ago, hextun said: So this then? ; sltname util_scan_cell_npcs ; sltgrup Utility ; sltdesc Returns: Form[]: a list of scanned Actor objects found nearby ; sltargs Form: objCenter: (optional: default none) ObjectReference to center the search on; specifying 'none' will target the player (i.e. bareword none, not a string "none") ; sltargs float: afRadius: (optional: default 0.0, the entire cell) radius to search in; 0.0 will search the entire cell ; sltargs string: srKeyword: (optional: default "") Keyword to look for (i.e. search only for Actors with the matching keyword) ; sltargs bool: bIgnoreDead: (optional: default true) ignore dead actors if true, consider them if false Don't worry, it doesn't exist (yet), but seems like what you are looking for? Then from there the logic is the same (i.e. iterate the list, create the list of names, present and go). Yes! That would be amazing. Would be helpful for debugging purposes as well, as a ui based matchmaker
LlenneiasWard Posted February 1 Posted February 1 2 hours ago, hextun said: Thank you. So, there are two SexLab orgasm related events. For SexLab 1.66, there is the baseline "Orgasm" event, which fires and means everyone came, and then there is "Separate Orgasm" but only if you have SexLab Separate Orgasm. For SexLab P+, there is only "Separate Orgasm" basically. You mention SLSO so I'm assuming you are on the older SexLab (same as me) with SLSO. So if you want to trigger an event for actors who are *not* the player: Trigger: SexLab, Separate Orgasm Chance: 100 (default) Player Relationship: "Not Player" (i.e. I am not the player, and may or may not be their partner at the moment) That should be it. That should, if I'm not mistaken, run for *any* actor who has an orgasm during a SexLab scene, provided they are not the player, even if they are not having sex with the player (i.e. two NPCs having sexy times with one another off in the corner, away from the player). If you want it only for partners of the player, but not the player themselves (i.e. all NPCs in a scene with the player, just not the player), then you pick: Trigger: SexLab, Separate Orgasm Chance: 100 (default) Player Relationship: "Partner Player" (i.e. I am a partner to the player; the player is definitely in a scene with me, but I am *not* the player) Then for your script, make sure any skill bumps target $system.player and that should work. Does that help? Hello! Thanks for getting back to me. I already tried the two cases for triggers you mentioned but got it to work! All I had to do was duplicate the default script and edit it '$system.player' where it said $system.self. This being mentioned solved my problem. Thanks you for your help! 1
ebbluminous Posted February 1 Posted February 1 1 hour ago, hextun said: Plans? What are these *plans* you speak of? Morphology hasn't been on my radar. FWIW, I played HappyFunTimes briefly awhile back, and have since bounced between Masterstroke and Nefaram, meaning I've been exposed to the mods added in those modpacks (mostly the latter two) plus a few I've stumbled across myself (e.g. SES2, Apropros2, SLD, sl_triggers, PetCollar). So if you're ever wondering "why isn't he aware of X" that's why. A quick look at Morphology suggests it is far more complex than TFE. The TFE script (I assume you're talking about the contamination script) doesn't do anything fancy. The work goes into crafting a suitable "rnd_list" call and using "item_adduse" from there. In the TFE script I played around a little with random number generation and weighted averages to play with the results a bit. I used the fact that the TFE editorID values for all of the elixirs are formulaic (i.e. "TFE{some affix}Potion" e.g. "TFEMagnificationPotion"). I'd be happy to help edit a script or discuss ideas with you, but I don't have any plans for Morphology in particular. Do you feel up to taking a crack at an SLTScript? Have been pondering a script for Morphology as I have used it for a long time over TE. When work calms down, I should have some time free - Will be a few weeks away
hextun Posted February 2 Author Posted February 2 Okay, just a heads up, expect 0.976 to be rolling out in the next few time units of random duration. Probably days but you know how I get sometimes. It has the util_scan_cell_npcs command addition (yay!) which I would LOVELOVELOVE to just, you know, like, deploy and everything... but... BUT.... BUUUUUT... I am also working on sprucing up the "oh, you seem to have racked up 30 concurrent scripts AND have requested another one" code and hope to also address the "um, that's weird, it's like one of the MGEF scripts failed to run but a request was on the queue" bug. If you haven't run into that one, it's where at some point you realize... somethings wrong. And after a bit you realize each time a script is triggered, what runs is actually the previous script that was requested. Like at some point a script was requested but the spell was never applied to run it. So now I have a whole thing going. And I tweak some stuff. And it's all in that low-level code. You know... *that* place. Were the old wrinkly maintenance guy named Freddy hangs out? Yeah... down in the bowels. So I touched it. A lot. Touched the important part. Now I'm doing my play testing. So FAR, it looks fine. So FAR, I would give it to my friends and family. So FAR, it has not robbed me, beaten me, and left me for dead by the roadside. So FAR. Give it a few extended play sessions and I'll let you know what I really think. All said, it will be save compatible, as is the way.
Fraying9981 Posted February 2 Posted February 2 42 minutes ago, hextun said: Were the old wrinkly maintenance guy named Freddy hangs out? Yeah... down in the bowels. So I touched it. A lot. Touched the important part. Now I'm doing my play testing. So FAR, it looks fine. So FAR, I would give it to my friends and family. So FAR, it has not robbed me, beaten me, and left me for dead by the roadside. So FAR You know it's serious when Freddy is involved
emaki5 Posted February 2 Posted February 2 (edited) If someone could please assist me? I think solution is simple (for a pro) but I spent like hours browsing and I am still clueless. I need function that will save targeted number during sl scene, like number 5 for example, so that I can load that number with another function again later in game. I am not sure if it is globalvalue, or json or something else. Pls help. I just need that number to be available during game for load and edit. Does not matter if it is saved in newly created file or whatever option is possible. Big thanks to whoever is free to help! Edited February 2 by emaki5
Celestia 666 Posted February 3 Posted February 3 has anyone come across an issue with slp+ triggers ending scenes on trigger activation?, ive been trying to figure out why its occuring, ive set up a trigger that force uses a potion on player orgasm and on sex start and everytime either of them fire it cancels the scene in the process
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now