Jump to content

Devious Devices NG


Recommended Posts

Posted
29 minutes ago, El_Duderino said:

Thank you so much, to all of you fine and generous people who teamed up to make this happen! ?

Thank you for the kind words. ?

 

4 minutes ago, El_Duderino said:

For mod development purposes, would there be any benefits to switching to NG in my CK installation of the game? Or should I stick with DD Classic for dev purposes, at least for mods that I started writing before NG? I'm currently using "out of the box" DD without any tweaks or enhancements in my CK installation.

Only if you'd like to utilize some of the newer features - something like the new contraptions abilities, new animations, bound swimming, stuff like that - otherwise, the benefits are mostly performance oriented, the rest of the experience shouldn't deviate from base DD that much ?

 

9 minutes ago, El_Duderino said:

My other question is mainly because I've been out of the loop for a while: what are P+ and U+? ?

SexLab Utility+

SexLab P+

 

New-ish tweaks to the regular SL, they bring various performance improvements ?

 

51 minutes ago, Herowynne said:

The DCL Slave Gag and Slave Collar equipping events are working okay for me. (I haven't gotten the Slave Chastity Belt event yet.)

Thanks for the report - interestingly, I've fired up DCL yesterday, was able to get through Leon's quest without any problems with all the custom Obsidian stuff, but one of the custom collars failed to equip on me as well, so there is something to it.

 

Posted
1 hour ago, Rubikon11 said:

Working: Standard devices, furniture, gas trap, high security, head harness, bondage adventure, flash-bang, bondage adventure

 

Everything else does not work. I deactivated DD-NG, reloaded the save, and everything works (except cursed collar and rubber doll, but I never was able to get this before as well. Is there a minimum level for it?).  I have added the log, though I don't know if it is of any help.

 

This is the same result I got in tests

 

Posted
2 hours ago, serranna said:

This is the same result I got in tests

 

That is interesting. Other folks may have a mod conflict that I do not have.

 

For reference, I am using:

Skyrim SE 1.5.97

Base SexLab 1.63

Devious Devices SE 5.2

Devious Devices NG 0.2.7

Unforgiving Devices 2.1

(... plus a bunch of other mods ...)

 

 

I did a lot more testing of DCL events and I still have not seen the problem of DDs not being equipped.

 

Striptease Collar:

Spoiler

20231018124319_1.jpg.139a12d8be014213c0abfe5b2eea2498.jpg

 

Tentacle Parasite:

Spoiler

20231018125609_1.jpg.c0c6b49fe2b3374af64d8096a38e7954.jpg20231018125625_1.jpg.9055a091e13d6d89c24ac68bcc76f7f0.jpg

 

"Damsel in Distress" quest:

Spoiler

20231018130048_1.jpg.7b6e2527cd626d15651abef10019f1ea.jpg20231018130127_1.jpg.2b132c0b2d263b8e7a7a98d2295d185c.jpg

 

Shock Boots:

Spoiler

20231018130303_1.jpg.59f860dcf42e93eeb5ce34a3c1a53384.jpg

 

Simple Slavery:

Spoiler

20231018130629_1.jpg.ba309930ab512c264067da887521e38a.jpg

 

Rubber Suit:

Spoiler

20231018130957_1.jpg.f553e58ae2b0d1776fd269955fbed25a.jpg

 

Skooma was equipped:

Spoiler

20231018131052_1.jpg.f6c8eb7cabf45e02df54baecb25bfb3a.jpg

 

Ultra-tight straightjacket dress:

Spoiler

20231018131256_1.jpg.9186cc9aedbc4e96942ce6f8f9b93a24.jpg20231018131313_1.jpg.c16531b3f473345de477d642de6538ca.jpg

 

Exhibitionist suit:

Spoiler

20231018131551_1.jpg.44bbda51f9a0db3f93cfc300b40a3446.jpg20231018131609_1.jpg.a55b831a9a71aa4979892395f907fca1.jpg

 

"You find yourself irresistible" masturbation event:

Spoiler

20231018131826_1.jpg.3b821eec2d529472d704b1a057a8fcbd.jpg

 

Chain Harness:

Spoiler

20231018132325_1.jpg.214b965b71d046944719a75ebb4ad682.jpg20231018132351_1.jpg.32002081caa4165e2d02b4d5710e0680.jpg

 

Self-bondage (the Cyan Catsuit was available in my inventory):

Spoiler

20231018132606_1.jpg.962d48df1018ba42f2d704a8574a8ed4.jpg20231018132617_1.jpg.afffa6dbae85020a913de9435ee159bb.jpg

 

Slut Collar:

Spoiler

20231018132820_1.jpg.1f2e7960c12267a0dd5282fa52f1c1ee.jpg20231018132846_1.jpg.d8e4ba37a4a14d7e6cb00350961b2730.jpg

 

Slave Chastity Belt (yay! finally got it):

Spoiler

20231018133336_1.jpg.06dced0340e7d5918f57f501798def6a.jpg20231018133400_1.jpg.61d23e7a5ed5b809b6f7d888fbd184e3.jpg

 

Heavy Head Harness:

Spoiler

20231018133751_1.jpg.336f23e0776c7c8e86f6a611fd406909.jpg20231018133818_1.jpg.2509dfd2f78fed0ced59b26637ff12b8.jpg

 

 

 

Posted
59 minutes ago, Herowynne said:

For reference, I am using:

Skyrim SE 1.5.97

Base SexLab 1.63

Devious Devices SE 5.2

Devious Devices NG 0.2.7

Unforgiving Devices 2.1

 

I'm not using unforgiving devices from those listed above. I have quite a few mods, if anyone wants a full modlist I can post it. Because of the size of the modlist I'm not crazy about the idea of removing some to test but I suppose I could if it were necessary.

The items themselves work fine if I manually put them on so the devices aren't broken, it's just the equip process. DCL still produces the message saying it equipped, so the event is firing, it's just not putting them on. Also when those events trigger it's supposed to automatically remove any non quest item that would block it from equipping. FOr example the slave chastity belt would first automatically unequip a standard chastity belt then it would equip the item. It's not triggering the device removal process either.

Posted
1 hour ago, serranna said:

FOr example the slave chastity belt would first automatically unequip a standard chastity belt then it would equip the item. It's not triggering the device removal process either.

 

Thanks for that -- it is a great test case. I tried that and it worked okay for me.

 

Set Slave Chastity Belt to 100% and set everything else to zero:

Spoiler

20231018182935_1.jpg.cb447def6cdcc1e9a676b1fefe24aee1.jpg

 

Put on Iron Chastity Belt:

Spoiler

20231018182954_1.jpg.b48f045eaacb6950f9cf42703a1b11a6.jpg

 

Looted chest, then Iron Chastity Belt was unequipped, and Slave Chastity Belt was equipped.

Spoiler

20231018183026_1.jpg.9c506e6811ea8f5658f9fa3701205bbf.jpg

 

 

The swap was super fast. It looked instantaneous -- the Iron belt just swapped immediately to the Slave Chastity Belt, even before the message box popped up.

Spoiler

20231018183011_1.jpg.5ceea0fb8c3f93489f93c018569c60a3.jpg

 

 

Posted

Is there a log I could find and post that could be looked at to see if the issue could be identified?

 

I also have been getting quite a few CTDs for unknown reasons. Been playing for about 2 hours and have had to reload the game from a random shutdown 4 times. 2 times I had just entered (different) towns, once I was just walking along the road, and once some devices were getting equipped from a cursed trap, so there are no patterns. Every time I reload the same action does not crash. All devices I have tested so far are rendering fine.

Posted
15 hours ago, krzp said:

[Install NG for mod development?] Only if you'd like to utilize some of the newer features - something like the new contraptions abilities, new animations, bound swimming, stuff like that - otherwise, the benefits are mostly performance oriented, the rest of the experience shouldn't deviate from base DD that much ?

...

SexLab Utility+

SexLab P+

New-ish tweaks to the regular SL, they bring various performance improvements ?

Thank you very much for your kind and detailed reply! I'm currently using "only" DD base functionality (which is enough to make my head spin at times), so I'll stick to my existing CK mod list for now. Those new contraption features in particular are very intriguing though, especially as I'm already using contraptions in my story.

 

I don't think I ever noticed the two SL mods before, looks like I have some catching up to do! :D

Posted

Here's a patch that hopefully addresses the the device hider and failed device equip bugs.

 

Regarding the hider, it looks some data in the original hider script wasn't being initialized by the time we needed it which caused a CTD. As long as you wait more than 2 seconds after starting a new game before attempting to edit the hider, this fix should work. IHMK is working on a fully native version of the hider that doesn't take up a slot and has NPC support so hopefully this patch becomes irrelevant.

 

For device equipping issues, it looks like I accidentally included some of my Papyrus changes for the new equip system. So the logic for equipping in Papyrus was missing but so was the logic in the SKSE plugin. Unfortunately, @Herowynne, this means the device swapping will go back to those original speeds but this is at least good confirmation that when I do wrap those up, they should result in a noticeable speed up.

Devious Devices NG v0.2.6 Patch 1.zip

Posted
8 minutes ago, ponzipyramid said:

Here's a patch that hopefully addresses the the device hider and failed device equip bugs.

 

Regarding the hider, it looks some data in the original hider script wasn't being initialized by the time we needed it which caused a CTD. As long as you wait more than 2 seconds after starting a new game before attempting to edit the hider, this fix should work. IHMK is working on a fully native version of the hider that doesn't take up a slot and has NPC support so hopefully this patch becomes irrelevant.

 

For device equipping issues, it looks like I accidentally included some of my Papyrus changes for the new equip system. So the logic for equipping in Papyrus was missing but so was the logic in the SKSE plugin. Unfortunately, @Herowynne, this means the device swapping will go back to those original speeds but this is at least good confirmation that when I do wrap those up, they should result in a noticeable speed up.

Devious Devices NG v0.2.6 Patch 1.zip 75.51 kB · 0 downloads

I found the save and reload was working as a solution.

 

With not doing this, a new game had been running for a few mins before trying it - Setting up other mods etc. Do you still need crash log etc?

Posted (edited)
5 minutes ago, ebbluminous said:

I found the save and reload was working as a solution.

 

With not doing this, a new game had been running for a few mins before trying it - Setting up other mods etc. Do you still need crash log etc?

 

It still crashed with the patch on a new game?

Edited by ponzipyramid
Posted

This looks amazing! I'm preparing to start a clean save so the timing of this is perfect. Quick question though: If I install this now, how likely would an update to the mod severely break my save?

Posted
5 hours ago, ponzipyramid said:

Here's a patch that hopefully addresses the the device hider and failed device equip bugs.

 

Regarding the hider, it looks some data in the original hider script wasn't being initialized by the time we needed it which caused a CTD. As long as you wait more than 2 seconds after starting a new game before attempting to edit the hider, this fix should work. IHMK is working on a fully native version of the hider that doesn't take up a slot and has NPC support so hopefully this patch becomes irrelevant.

 

For device equipping issues, it looks like I accidentally included some of my Papyrus changes for the new equip system. So the logic for equipping in Papyrus was missing but so was the logic in the SKSE plugin. Unfortunately, @Herowynne, this means the device swapping will go back to those original speeds but this is at least good confirmation that when I do wrap those up, they should result in a noticeable speed up.

Devious Devices NG v0.2.6 Patch 1.zip 75.51 kB · 8 downloads

 

@ponzipyramid Is the patch for DD NG 0.2.6 or 0.2.7 or both?

 

I am asking because the patch file is named "Devious Devices NG v0.2.6 Patch 1.zip" but I am running DD NG 0.2.7.

Posted
1 minute ago, Herowynne said:

I am asking because the patch file is named "Devious Devices NG v0.2.6 Patch 1.zip" but I am running DD NG 0.2.7.

Should be 0.2.7, I think, that's a seems like a little typo there ?

 

13 hours ago, serranna said:

Is there a log I could find and post that could be looked at to see if the issue could be identified?

If you get a CTD related to NG, two logs could help us potentially identify what the problem is: a crash log and the dll log (located at: <username>\Documents\My Games\Skyrim Special Edition\SKSE\DeviousDevicesNG.log?

 

4 hours ago, randomUser2019 said:

This looks amazing! I'm preparing to start a clean save so the timing of this is perfect. Quick question though: If I install this now, how likely would an update to the mod severely break my save?

Well, NG is in somewhat of an active development right now, so there no guarantees that it might not require a restart at some point in the near future.

 

That said, I've played with it around 5-6 hours and didn't see any problems - but that was 2 versions ago already, so a lot depends on the mods that you have  ?

Posted
6 hours ago, ponzipyramid said:

Here's a patch that hopefully addresses the the device hider and failed device equip bugs.

 

Regarding the hider, it looks some data in the original hider script wasn't being initialized by the time we needed it which caused a CTD. As long as you wait more than 2 seconds after starting a new game before attempting to edit the hider, this fix should work. IHMK is working on a fully native version of the hider that doesn't take up a slot and has NPC support so hopefully this patch becomes irrelevant.

 

For device equipping issues, it looks like I accidentally included some of my Papyrus changes for the new equip system. So the logic for equipping in Papyrus was missing but so was the logic in the SKSE plugin. Unfortunately, @Herowynne, this means the device swapping will go back to those original speeds but this is at least good confirmation that when I do wrap those up, they should result in a noticeable speed up.

Devious Devices NG v0.2.6 Patch 1.zip 75.51 kB · 13 downloads

Both the device equip and the device hider work for me with the patch. Thank you for your work!

Posted (edited)

Just noticed that @Taki17's changelog didn't make it to the download page in full, so, to appreciate the scale of what happened in the animations department, here it is:

 

Spoiler
  • removed almost all of the low quality ZAP and FB animations
  • removed deprecated animation registrations and unused leftover animations
  • cleaned up and categorized the animation registration code and behavior generation files
  • restored the missing stages of SH's sex animations
  • rewrote the bound animation selector and the animation filter to support pseudo-dynamic arrays
  • numerous adjustments, optimizations and logic improvements to animation-handling functions
  • fixed the issue of plug-related messages showing up when the player is mining
  • corrections to some popup messages
  • corrections to some restraint properties
  • included and assigned lots of new sex-, struggle- and idle animations by Billyy, Nibbles, Leito, BakaFactory, Psyche, iivanvv and krzp
  • added new contraptions, complete with sex animations and building kits: reversed Xcross, vertical stockade fuck machine, tilted wagon wheel, two restraint posts
  • replaced the pillory model with a new one
  • corrections and adjustments to existing contraption meshes and animations
  • changed the names of the gallows pole and torture pole variants to properly describe them
  • changed the pose for the free-standing wooden horse
  • added one or more sex animations to the following existing contraptions: Xcross, strappado pole, wooden horse pole, free-standing wooden horse, pillory, sitting torture pole
  • added a menu option to have sex with actors locked into contraptions
  • made contraption sex scenes center on the locked actor instead of the player
  • prevented contraption sex animations from being filtered and replaced by DD's animation filter
  • changes to the ddctestzone cell to feature all the contraptions, and some reorganizaztion of the cell's furnishings

 

In short:

  • the animation filter now has like ~77 good animations for regular devices so it's much less of a bother now;
  • contraptions have around 5 new devices and some tweaked ones;
  • instead of that one pillory animation there are now approximately 30 SL animations for different devices and the ability to call them;
  • DD is no longer dependent on regular SL animations, so you could unload the default animations if you don't have any other mods depending on those (a-la ZAP).

 

If you want to check out the cool new stuff - "coc ddctestzone" in the console.

 

?

 

Edited by krzp
Posted
3 hours ago, Herowynne said:

 

@ponzipyramid Is the patch for DD NG 0.2.6 or 0.2.7 or both?

 

I am asking because the patch file is named "Devious Devices NG v0.2.6 Patch 1.zip" but I am running DD NG 0.2.7.

 

Yep, as @krzp said, that's a typo - what I get for posting half asleep.

Posted

First of all, thanks for the work you're putting here.

 

I noticed a strange behavior when trying to escape devices : my characters speed goes up through the roof...  Is there some kind of speed multiplicator applied after trying to struggle or cut a device ?

 

Posted (edited)
11 hours ago, ponzipyramid said:

For device equipping issues, it looks like I accidentally included some of my Papyrus changes for the new equip system. So the logic for equipping in Papyrus was missing but so was the logic in the SKSE plugin. Unfortunately, @Herowynne, this means the device swapping will go back to those original speeds

 

The patch includes 2 changed scripts. I assume the patch's zadDevicesUnderneathScript.psc contains the Device Hider changes. (I always turn off the Device Hider, so it doesn't affect me.)

 

The patch's other changed file is zadLibs.psc but the only change in that file is that you streamlined the GetWornDeviceFuzzyMatch function. I must be missing something, because it looks to me like DD NG should be even faster with the patch. ?

 

Spoiler

DD NG 0.2.7

 

Armor Function GetWornDeviceFuzzyMatch(Actor akActor, Keyword kw)
    Armor   loc_retval      = none
    Armor[] loc_rds         = zadNativeFunctions.GetDevices(akActor,1,true)
    Int     loc_iFormIndex  = loc_rds.length
    bool    loc_breakFlag   = false
    While loc_iFormIndex > 0 && !loc_iFormIndex
        loc_iFormIndex -= 1
       
        Armor loc_rd = loc_rds[loc_iFormIndex]
       
        if loc_rd.hasKeyword(kw) && akActor.GetItemCount(loc_rd) > 0
                loc_retval      = loc_rd
            loc_breakFlag   = true
            Endif
           
    EndWhile
    return loc_retval
EndFunction

 

 

Patch

 

Armor Function GetWornDeviceFuzzyMatch(Actor akActor, Keyword kw)
    return zadNativeFunctions.GetWornDevice(akActor,kw,true)
EndFunction

 

Should I really expect DD NG to be slower with the patch? (I hope not) ??

Edited by Herowynne
Posted (edited)
29 minutes ago, Herowynne said:

 

The patch includes 2 changed scripts. I assume the patch's zadDevicesUnderneathScript.psc contains the Device Hider changes. (I always turn off the Device Hider, so it doesn't affect me.)

 

The patch's other changed file is zadLibs.psc but the only change in that file is that you streamlined the GetWornDeviceFuzzyMatch function. I must be missing something, because it looks to me like DD NG should be even faster with the patch. ?

 

  Hide contents

DD NG 0.2.7

 

Armor Function GetWornDeviceFuzzyMatch(Actor akActor, Keyword kw)
    Armor   loc_retval      = none
    Armor[] loc_rds         = zadNativeFunctions.GetDevices(akActor,1,true)
    Int     loc_iFormIndex  = loc_rds.length
    bool    loc_breakFlag   = false
    While loc_iFormIndex > 0 && !loc_iFormIndex
        loc_iFormIndex -= 1
       
        Armor loc_rd = loc_rds[loc_iFormIndex]
       
        if loc_rd.hasKeyword(kw) && akActor.GetItemCount(loc_rd) > 0
                loc_retval      = loc_rd
            loc_breakFlag   = true
            Endif
           
    EndWhile
    return loc_retval
EndFunction

 

 

Patch

 

Armor Function GetWornDeviceFuzzyMatch(Actor akActor, Keyword kw)
    return zadNativeFunctions.GetWornDevice(akActor,kw,true)
EndFunction

 

Should I really expect DD NG to be slower with the patch? (I hope not) ??

 

I mistakenly included source scripts for zadlibs in two different directories (I use the SE CK's default of Source/Scripts but DD uses the LE CK's default of scripts/source). The primary change from the last version is adding back of all the Papyrus for SwapDevices. In my development branch, I've offloaded/eliminated most of the work for that function through SKSE which allows me to simply swap devices like I would any other item. Here's the difference:

 

Spoiler

Original:

 

Bool Function SwapDevices(actor akActor, armor deviceInventory, keyword zad_DeviousDevice = none, bool destroyDevice = false, bool genericonly = true)
    Log("SwapDevices called for " + akActor.GetLeveledActorBase().GetName() + ": "+ deviceInventory.GetName() + ")")
    Keyword kw        
    if !zad_DeviousDevice
        kw = GetDeviceKeyword(deviceInventory)        
    else
        kw = zad_DeviousDevice
    EndIf    
    Armor WornDevice = GetWornRenderedDeviceByKeyword(akActor, kw)
    if WornDevice
        Armor idevice = GetWornDevice(akActor, kw)        
        if !UnlockDevice(akActor, idevice, WornDevice, zad_DeviousDevice = kw, destroyDevice = destroyDevice, genericonly = genericonly)
            log("UnlockDevice() failed. Aborting.")
            return false
        EndIf        
        int counter = 5
        while akActor.IsEquipped(WornDevice) && counter > 0
            log("Removing " + idevice.GetName() + ". Waiting for removal operation to complete.")            
            counter -= 1
            Utility.Wait(1)
        EndWhile
        if akActor.IsEquipped(WornDevice) && counter == 0
            log("Unlock operation timed out and failed. Aborting.")
            return false
        EndIf
        Utility.Wait(1)
        log("Device removed. Proceeding.")
    Else
        log("No confilicting device worn. Proceeding.")
    EndIf    
    if akActor.GetItemCount(deviceInventory) <= 0
        akActor.AddItem(deviceInventory, 1, true)
    EndIf        
    akActor.EquipItemEx(deviceInventory, 0, false, true)    
    return true
EndFunction

 

vs NG:

 

Bool Function SwapDevices(actor akActor, armor deviceInventory, keyword zad_DeviousDevice = none, bool destroyDevice = false, bool genericonly = true)
    Log("SwapDevices called for " + akActor.GetLeveledActorBase().GetName() + ": "+ deviceInventory.GetName() + ")")
    akActor.EquipItemEx(deviceInventory, 0, false, true)    
    return true
EndFunction

 

 

This is one of the more complicated systems to change so it'll take some time before we're able to release them in full.

Edited by ponzipyramid
Posted
17 minutes ago, ponzipyramid said:

I mistakenly included source scripts for zadlibs in two different directories

 

I see that now.

 

17 minutes ago, ponzipyramid said:

The primary change from the last version is adding back of all the Papyrus for SwapDevices.

 

Yes, when I compare the correct files, I see that change. Not the answer I was hoping for, but thanks for the explanation!

Posted

Man I'm so out of date, I'm going to need a guide on how to use the modern stuff lol. Like P+ vs U+ and whether you even still need the old ones too, ahhh

 

Thanks for updating though, very exciting! Playing without DD is just not playing at all.

 

Are there any plans to do the same for stuff like Cursed Loot to put out a bajillion times smoother and more refined version that's less "explosion" prone?

Posted (edited)
16 hours ago, krzp said:

If you get a CTD related to NG, two logs could help us potentially identify what the problem is: a crash log and the dll log (located at: <username>\Documents\My Games\Skyrim Special Edition\SKSE\DeviousDevicesNG.log)

 

I have been getting a ton of CTDs that I was never getting before installing NG. I went ahead and played until it happened again and got the logs. I know very ;little about this stuff but the crash log indicated a memory issue? I can't imagine it would be my hardware, it's almost brand new.

 

I suppose that would make sense because I can almost predict when it's gonna happen. The more new cells/areas I enter increase the odds that its going to crash.

 

Edit: Played again and got another crash with similar but slightly different information on it than the first one so I'm gonna upload that one too. That was a literal 2 minute session before shutting down. Literally all I did was shuffle across part of the overworld while strictly hobbled for about 2-3 minutes before it shut down.

 

 

DeviousDevicesNG.log crash-2023-10-20-05-53-32.log

crash-2023-10-20-09-22-18.log

Edited by serranna
Posted
1 hour ago, AlexanderClan said:

Another data point if it'll help with development, also getting the CTD when changing the Device Hider setting, even with the patch for it installed.

Skyrim 1.5.97 / SKSE 2.0.20

Devious Devices: 5.2 / NG: 0.2.7

Thank you!

crash-2023-10-20-05-04-24.log 241 kB · 2 downloads DeviousDevicesNG.log 36.25 kB · 2 downloads

Following what others have said, you could try installing the patch and then going into the game and saving, then reading it. That might get the patch to work.

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
×
×
  • Create New...