Derenriche Posted May 11, 2023 Posted May 11, 2023 On 5/9/2023 at 11:45 AM, Sora丶 said: I met another problem.I wear a chastity belt and a gag from DCL and I have key.However,seems it impossible to unlock the chastity bra.And the gag's lock is jamed,but seems it is impossible to fix it as I tried many times,but still make no progress.So,how can I escape from these two devices? DCL uses some custom parameters and scripts for its items. UD can only patch standard gear and is thus not fully compatible with DCL, expect certain items to not work with UD.
Sora丶 Posted May 11, 2023 Posted May 11, 2023 4 hours ago, Derenriche said: DCL uses some custom parameters and scripts for its items. UD can only patch standard gear and is thus not fully compatible with DCL, expect certain items to not work with UD. Nevermind,it is my problem.Because I the notification of crit is invisible for some reasons which mislead me that UD don't work.But now I have the right notification,everything seems OK
Sora丶 Posted May 11, 2023 Posted May 11, 2023 So I'm curious about If player can't escape from abadon plug on time,what will happen?
ihatemykite Posted May 11, 2023 Author Posted May 11, 2023 On 5/10/2023 at 3:30 AM, malarmephisto said: Good evening, I am having some issues, if i use UD without skyrim Utility mod + DD Equip -> i have all the mod active, base widgets working If i active this mods, i loses base widgets (meaning no bar for the rising orgasm, or bar for the fight, or bar for the resistance of the gear) Is there any solution, or they are incompatible? Do you use iWantWidget ? I will try to download the mod and test it. 13 hours ago, Fart N. said: Experiencing a funky issue where minigames ending in device removals don't exit properly (leaving the character just standing there with disabled controls and without the device). Minigames ending in exhaustion or nut exit without issue. Enabling controls through console works fine, but the item isn't unequipped in the debug menu and UD still considers you to be in a minigame (which means you can't move on to unlocking other gear). Running the debug fixes resets the minigame state and disabled controls but doing this after each device is a bit on the annoying side. The issue is deep in the long chain of UnlockDevice calls - something's preventing the removeDevice function from being called, and it's not outputting anything about it to the log. As such, the minigame loop ends up waiting for the _isRemoved flag which will never come. I've tried inserting QuickFix (from npcslot) to the loop and it runs (removes the device, etc) but the flag isn't set so the loop continues. Another fix I have in mind is to just manually call removeDevice if the flag doesn't set itself within some amount of seconds - I'm hesitant to do so because I don't know which parts of the device removal process were done properly and which weren't. In any case, my question is: has anyone else had this happen? Has anyone else found a fix? Hear about this first time. I will need some more information before I can conclude what is wrong What version of UD do you use ? In case you use NB, what is the build date ? What version of DD do you use ? 5.1 or 5.2 ? Can you take a look at the save in resaver ? I'm quite certain that for some reason the minigame loop didn't end. If you use resaver, it should be possible to see where exactly does it hang It. If it does truly hangs, please also shore the whole papyrus bytecode and local variables. Either way, the most likely culprit is this part of minigame function, but I will need to be certain first before I give it a closer look. Issue is that this function is called after actor is enabled, so you should not experience issue with disabled controls.
Derenriche Posted May 11, 2023 Posted May 11, 2023 (edited) Found a bug with the _RemoveHeelEffect function in UDAnimationManager. The function aggregates the sum of positional shifts applied to the actor node and then adds it's inverted value to offset it, but the check for offset values is done in the wrong direction: If shift_sum[0] > 0 || shift_sum[1] > 0 || shift_sum[2] > 0 NiOverride.AddNodeTransformPosition(akActor, false, isRealFemale, "NPC", "UnforgivingDevices.esp", shift_sum) UpdateNiOPosition = True EndIf where as it should be: If shift_sum[0] != 0 || shift_sum[1] != 0 || shift_sum[2] != 0 NiOverride.AddNodeTransformPosition(akActor, false, isRealFemale, "NPC", "UnforgivingDevices.esp", shift_sum) UpdateNiOPosition = True EndIf Currently the script will never remove the high heel effect of any character. Edit: found another bug where orgasm animations will play while crafting and causes player controls to become disabled. Edited May 12, 2023 by Derenriche 3
Fart N. Posted May 12, 2023 Posted May 12, 2023 15 hours ago, ihatemykite said: What version of UD do you use ? In case you use NB, what is the build date ? What version of DD do you use ? 5.1 or 5.2 ? Can you take a look at the save in resaver ? I'm quite certain that for some reason the minigame loop didn't end. If you use resaver, it should be possible to see where exactly does it hang It. If it does truly hangs, please also shore the whole papyrus bytecode and local variables. Either way, the most likely culprit is this part of minigame function, but I will need to be certain first before I give it a closer look. Issue is that this function is called after actor is enabled, so you should not experience issue with disabled controls. 2.1b3 5.2 It doesn't hang per se, it just gets put into an infinite loop right here (I confirmed this by adding a log message). It goes through all the unlockdevice calls without any displayed errors (w/ all debug logs turned on and set to highest). I also recall seeing the removeDevice message in the logs too. As I mentioned, the device was gone (and pretty sure the effects were too), it just didn't go through the removeDevice function properly. Unfortunately I don't have a save on me, because I've started a new playthrough with a whole bunch of different mods and without UD (sorry). I also forgot to save the logs (guh). But if I'm the only one having this problem then that's all good. I'll try to find a fix myself if I ever get in a UD mood. I'm currently enjoying Devious Lore's minigame - it's admittedly kinda shoddy mechanics-wise, but it's ironically far more unforgiving. On that note, if you're looking to add more features then I'd say the DL-style longer term Stamina debuffs (possibly also applied to HP and MP) should be really cool for gameplay, and nice and easy to slot in. You actually have to walk around with the gear and find more creative solutions to removing it, instead of getting a room and spending a few minutes getting them all off.
ihatemykite Posted May 12, 2023 Author Posted May 12, 2023 13 hours ago, Derenriche said: Found a bug with the _RemoveHeelEffect function in UDAnimationManager. The function aggregates the sum of positional shifts applied to the actor node and then adds it's inverted value to offset it, but the check for offset values is done in the wrong direction: If shift_sum[0] > 0 || shift_sum[1] > 0 || shift_sum[2] > 0 NiOverride.AddNodeTransformPosition(akActor, false, isRealFemale, "NPC", "UnforgivingDevices.esp", shift_sum) UpdateNiOPosition = True EndIf where as it should be: If shift_sum[0] != 0 || shift_sum[1] != 0 || shift_sum[2] != 0 NiOverride.AddNodeTransformPosition(akActor, false, isRealFemale, "NPC", "UnforgivingDevices.esp", shift_sum) UpdateNiOPosition = True EndIf Currently the script will never remove the high heel effect of any character. Edit: found another bug where orgasm animations will play while crafting and causes player controls to become disabled. Thanks for feedback. The _RemoveHeelEffect is already fixed by @iivanvv, but not merged. I will give the orgasm issue a look. Most likely caused by me not adding check so orgasm animation can't happen while actor have menu open. 1 hour ago, Fart N. said: 2.1b3 5.2 It doesn't hang per se, it just gets put into an infinite loop right here (I confirmed this by adding a log message). It goes through all the unlockdevice calls without any displayed errors (w/ all debug logs turned on and set to highest). I also recall seeing the removeDevice message in the logs too. As I mentioned, the device was gone (and pretty sure the effects were too), it just didn't go through the removeDevice function properly. Unfortunately I don't have a save on me, because I've started a new playthrough with a whole bunch of different mods and without UD (sorry). I also forgot to save the logs (guh). But if I'm the only one having this problem then that's all good. I'll try to find a fix myself if I ever get in a UD mood. I'm currently enjoying Devious Lore's minigame - it's admittedly kinda shoddy mechanics-wise, but it's ironically far more unforgiving. On that note, if you're looking to add more features then I'd say the DL-style longer term Stamina debuffs (possibly also applied to HP and MP) should be really cool for gameplay, and nice and easy to slot in. You actually have to walk around with the gear and find more creative solutions to removing it, instead of getting a room and spending a few minutes getting them all off. Another round of questions Did you have this issue with all devices, or only with some ? Did it happens every time or only sometimes ? Did you have more then 1 of the device of the same type equipped ? Were the device registered in player slot in MCM ? Did you install UD correctly ? It have to be installed on the same time as DD. Because of that, its impossible to install UD on the save where DD was already installed. Do you use OSL ? If yes, check if its not installed after DD. Alternatively, the OSL was updated so it should now work even when loaded after DD (hopefully)
Derenriche Posted May 12, 2023 Posted May 12, 2023 (edited) 6 hours ago, ihatemykite said: Thanks for feedback. The _RemoveHeelEffect is already fixed by @iivanvv, but not merged. I will give the orgasm issue a look. Most likely caused by me not adding check so orgasm animation can't happen while actor have menu open. You'll have to check if the actor is in furniture/crafting station by checking sit state. Unfortunately Utility.IsInMenu() does not count any menu interface which does not pause the game which makes it useless for animation trigger purposes. Edit: I tried things around and the two checks which seems to work best for me is Game.IsLookingControlsEnabled() and akActor.GetCurrentScene() == none to ensure the player isn't in something that could potentially break. Edited May 12, 2023 by Derenriche
Fart N. Posted May 12, 2023 Posted May 12, 2023 (edited) 19 hours ago, ihatemykite said: Another round of questions Did you have this issue with all devices, or only with some ? Did it happens every time or only sometimes ? Did you have more then 1 of the device of the same type equipped ? Were the device registered in player slot in MCM ? Did you install UD correctly ? It have to be installed on the same time as DD. Because of that, its impossible to install UD on the save where DD was already installed. Do you use OSL ? If yes, check if its not installed after DD. Alternatively, the OSL was updated so it should now work even when loaded after DD (hopefully) All devices I've tried to use it with, e.g. Bound At Home. Every time. Nope. Yep. It wasn't equipped on the PC but it was in the MCM. UD's General Fixes detect that this is a 'leftover' item and remove it. Pretty sure. I've started several new games, and all had the same issue. Yep. I'm certain I had OSL before DD in the load order when I was running UD. It's at the bottom now - haven't tested this new setup with UD yet. (EDIT: it's very likely I was using OSL 2.2 instead of OSL 2.3 w/ DD 5.2. The patch notes say they added DD 5.2 compatibility only three days ago. If that's the case, I'll give it a test and see what happens.) (EDIT 2: Nope. Quickly tested and still happening.) Could the issue have been caused by either OSL's or DD's zlibs functions not calling the devices' removeDevice? Anyways I'll need to redo my load order to test further, and maybe even start a new game. Edited May 13, 2023 by Fart N. more info
ihatemykite Posted May 13, 2023 Author Posted May 13, 2023 18 hours ago, Derenriche said: You'll have to check if the actor is in furniture/crafting station by checking sit state. Unfortunately Utility.IsInMenu() does not count any menu interface which does not pause the game which makes it useless for animation trigger purposes. Edit: I tried things around and the two checks which seems to work best for me is Game.IsLookingControlsEnabled() and akActor.GetCurrentScene() == none to ensure the player isn't in something that could potentially break. Well, the Utility.IsInMenu() is pretty much garbage which takes forever to return false result. because of that, I implemented some time ago different system for checking if any of the menus is open. You can find it here. In unmerged PR, I have little edited the module to allow faster checking if any menu is open. So far it looks like it's working. If player opens any menu, it will not play orgasm animation and only apply effects. And most importantly, this has close to none performance impact, as it only checks if one int is not zero.
ihatemykite Posted May 13, 2023 Author Posted May 13, 2023 13 hours ago, Fart N. said: All devices I've tried to use it with, e.g. Bound At Home. Every time. Nope. Yep. It wasn't equipped on the PC but it was in the MCM. UD's General Fixes detect that this is a 'leftover' item and remove it. Pretty sure. I've started several new games, and all had the same issue. Yep. I'm certain I had OSL before DD in the load order when I was running UD. It's at the bottom now - haven't tested this new setup with UD yet. (EDIT: it's very likely I was using OSL 2.2 instead of OSL 2.3 w/ DD 5.2. The patch notes say they added DD 5.2 compatibility only three days ago. If that's the case, I'll give it a test and see what happens.) (EDIT 2: Nope. Quickly tested and still happening.) Could the issue have been caused by either OSL's or DD's zlibs functions not calling the devices' removeDevice? Anyways I'll need to redo my load order to test further, and maybe even start a new game. In that case, I'm really out of the loop. The last possible thing I can do is to take a look at the save, so I can see the local variables. That would give a big insight on what is happening internally. Either way, this really looks like some specific issue that only you have. Try to take a look if there is nothing overwriting any of the UD and DD scripts.
Rogell Posted May 13, 2023 Posted May 13, 2023 (edited) 4 hours ago, ihatemykite said: In that case, I'm really out of the loop. The last possible thing I can do is to take a look at the save, so I can see the local variables. That would give a big insight on what is happening internally. Either way, this really looks like some specific issue that only you have. Try to take a look if there is nothing overwriting any of the UD and DD scripts. I think i have a similar issue. After struggling out of a device the message `{device} is removed` appears on screen but the character is stuck cannot move, open inventory or do anything other than open the escape menu. This happens right in the alternative start prison. I checked and nothing overwrites UD and DD scripts. Didn't try to edit the scripts and add logs to the loop so dont know exactly if it is the same issue. Details: Skyrim SE-AE UD: 2.1b3 DD: 5.2 Edit: attached save game after strugling Saves.7z Edited May 13, 2023 by Rogell Attaching savegame
ihatemykite Posted May 13, 2023 Author Posted May 13, 2023 (edited) 2 hours ago, Rogell said: I think i have a similar issue. After struggling out of a device the message `{device} is removed` appears on screen but the character is stuck cannot move, open inventory or do anything other than open the escape menu. This happens right in the alternative start prison. I checked and nothing overwrites UD and DD scripts. Didn't try to edit the scripts and add logs to the loop so dont know exactly if it is the same issue. Details: Skyrim SE-AE UD: 2.1b3 DD: 5.2 Edit: attached save game after strugling Saves.7z 3.7 MB · 10 downloads Stupid question, but does the device actually disappear ? I'm looking at the save and there is still reference to the script ,but I can't find the it. Its likely only stored as reference but already removed. It also looks like that there might be some existing issue with locking deice, as the mutex variables were not correctly unset. I will try the beta 3 again, and see if the lock function actually works correctly. EDIT 1: Yeah there is something definitively wrong with the lock function. It will most likely have something to do with unlock function too. I will do some debugging and see what is the issue. EDIT 2: Found why the mutex was not reset, but I doubt it has anything to do with the unlock function. I have added more trace function to mutexes, so next time you encounter the issue with papyrus logging on, it should give more accurate information on what happened. For now, you can try the beta 4 which I will upload shortly. It fixes a bunch of issues, so it might as well unintentionally fix this issue. Edited May 13, 2023 by ihatemykite 1
ihatemykite Posted May 13, 2023 Author Posted May 13, 2023 3 hours ago, Rogell said: I think i have a similar issue. After struggling out of a device the message `{device} is removed` appears on screen but the character is stuck cannot move, open inventory or do anything other than open the escape menu. This happens right in the alternative start prison. I checked and nothing overwrites UD and DD scripts. Didn't try to edit the scripts and add logs to the loop so dont know exactly if it is the same issue. Details: Skyrim SE-AE UD: 2.1b3 DD: 5.2 Edit: attached save game after strugling Saves.7z 3.7 MB · 10 downloads By a pure chance I managed to find the source of issue. Just when I was testing the final release before uploading it here, I managed to get the exact same issue, and fix it. Basically, I'm most certain that you have installed main mod UnforgivingDevices.esp after the UnforgivingDevices - DD Patch.esp. I have added the check that will show error message box if that happen, but that will not work if patch is in esl format. The reason is that I have no idea how to check load order of esl in game. So long story short, this have nothing to do with UD, mod is not installed correctly. Also, using LOOT will prevent similar issue in future, as it will correctly order the mods (master mods first). I have also merged edit to LOOT master list so it will also sort some other mods which can cause issues but have no dependency with UD, like SE patch for DD SE, and Devious Lore DD Patch. 2
Rogell Posted May 13, 2023 Posted May 13, 2023 1 hour ago, ihatemykite said: By a pure chance I managed to find the source of issue. Just when I was testing the final release before uploading it here, I managed to get the exact same issue, and fix it. Basically, I'm most certain that you have installed main mod UnforgivingDevices.esp after the UnforgivingDevices - DD Patch.esp. I have added the check that will show error message box if that happen, but that will not work if patch is in esl format. The reason is that I have no idea how to check load order of esl in game. So long story short, this have nothing to do with UD, mod is not installed correctly. Also, using LOOT will prevent similar issue in future, as it will correctly order the mods (master mods first). I have also merged edit to LOOT master list so it will also sort some other mods which can cause issues but have no dependency with UD, like SE patch for DD SE, and Devious Lore DD Patch. I can confirm i had the load order like you said because i forgot to run LOOT. After fixing the load order everything worked properly so far. Maybe the install order are some MO2 shenenigans ? Thanks with your help 1
Fart N. Posted May 14, 2023 Posted May 14, 2023 9 hours ago, ihatemykite said: By a pure chance I managed to find the source of issue. Just when I was testing the final release before uploading it here, I managed to get the exact same issue, and fix it. Basically, I'm most certain that you have installed main mod UnforgivingDevices.esp after the UnforgivingDevices - DD Patch.esp. I have added the check that will show error message box if that happen, but that will not work if patch is in esl format. The reason is that I have no idea how to check load order of esl in game. So long story short, this have nothing to do with UD, mod is not installed correctly. Also, using LOOT will prevent similar issue in future, as it will correctly order the mods (master mods first). I have also merged edit to LOOT master list so it will also sort some other mods which can cause issues but have no dependency with UD, like SE patch for DD SE, and Devious Lore DD Patch. Amazing, that was exactly the issue. I'd never thought to check if the plugins got chucked in the right order, and since they were esl-fied MO2 didn't catch it. Thank you so much. I'm going to try and push a small extra feature to the repo as thanks. 1
Fart N. Posted May 15, 2023 Posted May 15, 2023 Hey just a couple of questions about contributing code: Do you use an automated MCM Menu maker? Or do you code all that stuff by hand? I've done my little things manually, and I'm wondering now if it's going to conflict with any tools you use. Do you have any tools for automating the translations? (e.g. if an entry doesn't exist for a language, chuck in the english one) Would I need to run any lints or other scripts before pushing the code? Or does the github deploy stuff you've set up already do all that?
ihatemykite Posted May 15, 2023 Author Posted May 15, 2023 13 hours ago, Fart N. said: Hey just a couple of questions about contributing code: Do you use an automated MCM Menu maker? Or do you code all that stuff by hand? I've done my little things manually, and I'm wondering now if it's going to conflict with any tools you use. Do you have any tools for automating the translations? (e.g. if an entry doesn't exist for a language, chuck in the english one) Would I need to run any lints or other scripts before pushing the code? Or does the github deploy stuff you've set up already do all that? Nope, everything is written manually. Might redo it in future to use the maker, but not now. No There is only this text about contributing, otherwise there are no tools to check quality of code. Dunno if something like lint exist for papyrus.
cerebus300 Posted May 16, 2023 Posted May 16, 2023 I've been planning on trying this older mod, when it is feasible with my current game. I'm pretty sure that it has its own version of chastity belts and plugs and won't be modified by UD. I'm wondering if you have played with this mod and whether you think that it is possible to modify the devices for this mod to make it work with UD? Devious Regulations
Fart N. Posted May 17, 2023 Posted May 17, 2023 (edited) 10 hours ago, cerebus300 said: I've been planning on trying this older mod, when it is feasible with my current game. I'm pretty sure that it has its own version of chastity belts and plugs and won't be modified by UD. I'm wondering if you have played with this mod and whether you think that it is possible to modify the devices for this mod to make it work with UD? Devious Regulations Your best bet is to use the UD Patching Kit. Look for the below heading in the mod's description: Here is simple tutorial on how to use the xedit Patching script In any case, the devices usually work without issue even without the patch. They just don't use the UD-specific shenanigans. Edited May 17, 2023 by Fart N.
cerebus300 Posted May 17, 2023 Posted May 17, 2023 2 minutes ago, Fart N. said: Your best bet is to use the UD Patching Kit. Look for the below heading in the mod's description: Here is simple tutorial on how to use the xedit Patching script In any case, the devices usually work without issue even without the patch. They just don't use the UD-specific shenanigans. Sounds good. Thanks. I'll look into it. I'll give it a try in vanilla first and see how it works and then try to edit them if it seems like they would benefit from it.
Xarius Posted May 17, 2023 Posted May 17, 2023 (edited) I like the idea of DD being more interactive, but I also don't want things too difficult. How does this mod use the DD difficulty setting? The MCM has many options - what should I look to change to make things a bit more casual? I should also mention that the included DD Patch.esp and Vivi Cockcage Patch.esp have many errors with undefined references in xEdit with missing keywords/AA. Edited May 17, 2023 by Xarius
cerebus300 Posted May 17, 2023 Posted May 17, 2023 3 hours ago, Xarius said: I like the idea of DD being more interactive, but I also don't want things too difficult. How does this mod use the DD difficulty setting? The MCM has many options - what should I look to change to make things a bit more casual? I should also mention that the included DD Patch.esp and Vivi Cockcage Patch.esp have many errors with undefined references in xEdit with missing keywords/AA. I do find myself fiddling with the MCM controls quite a bit to get that right balance for playing vs. distress. I've found that the main controls that I manipulate have to do with the ease of orgasming and the Orgasm Manifest trait that is placed upon some items. Those are often the primary culprits for me. It is easy to get two orgasm manifest items on you that have a decently high score (20% or so) and if you are on the default settings for orgasming, you can find yourself spending significant time trying get items off only to have new ones appear about as fast as the others come off. Not to mention the amount of times that you can be orgasming, which can leave you very few opportunities to attempt to remove items. So, manipulate the custom orgasm settings to make it a bit harder to orgasm, and adjust the orgasm and random manifest traits that are placed on items. Can't remember the tab for that, but it isn't hard to find. With those reduced, it isn't too hard to remove the needed items that interfere with play, when you need to. 4
pnutz78 Posted May 17, 2023 Posted May 17, 2023 Hi, I just wanted to report an issue with "Devious Lore". Contrary to what is mentioned on the intro page, it is not fully compatible. Some devices seems to be custom or otherwise do not get recognized correctly by UD. The ones I have encountered so far are "White Rope Arm and Finger Bindings" and "White Rope Torso and Leg Binds". These do not show in the UD debug menu and when struggling default to the DD standard struggling options. Please let me know if there is some specific patch I have to download in order to make this work or if these devices are indeed incompatible.
Fart N. Posted May 18, 2023 Posted May 18, 2023 (edited) 6 hours ago, pnutz78 said: Hi, I just wanted to report an issue with "Devious Lore". Contrary to what is mentioned on the intro page, it is not fully compatible. Some devices seems to be custom or otherwise do not get recognized correctly by UD. The ones I have encountered so far are "White Rope Arm and Finger Bindings" and "White Rope Torso and Leg Binds". These do not show in the UD debug menu and when struggling default to the DD standard struggling options. Please let me know if there is some specific patch I have to download in order to make this work or if these devices are indeed incompatible. I gave it a look and it looks like the items weren't patched. So I just ran the script and made this patch (it was pretty easy, took me a couple of minutes. Would highly recommend you give it a go if you run across any other mods without UD functionality). Haven't done testing on it yet, though - I'll leave that to you. Unforgiving Devices - Devious Lore.7z Edited May 18, 2023 by Fart N. 5
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