Jump to content

Devious Devices Framework Development/Beta


Recommended Posts

I've never heard of it (don't use SE) but besides that I would like to know if it actually fixes the issues with FNIS (crashing and slowness) and can be used with FNIS mods out of the box as many mods won't get updates. Or that it's only for some minor function that FNIS lacks. 

 

And if I get the comments right it would also mean the LE to SE will not be so easy to convert. Not sure if that's something the SE support crew wants to deal with. As I'm aware there is no way to make a script either for LE or SE with regards to animations as I presume the LE scripts will fail to compile due to missing sources.

Link to comment

If I understand it right, it's available for both LE and SE, so that shouldn't be a problem. I am not going to add any LE or SE exclusive features, at least not as long as there are still a meaningful number of LE users around. Tbh, allowing switching between bunnyhop and bound walk animations isn't what I am overly interest in. Getting rid of the lengthy delay when switching to a AA set is.

Link to comment
9 minutes ago, Kimy said:

If I understand it right, it's available for both LE and SE, so that shouldn't be a problem. I am not going to add any LE or SE exclusive features, at least not as long as there are still a meaningful number of LE users around. Tbh, allowing switching between bunnyhop and bound walk animations isn't what I am overly interest in. Getting rid of the lengthy delay when switching to a AA set is.

I thought it was exclusive to Nemesis SE but that seems to be a similarly named addin for it.  https://www.nexusmods.com/skyrim/mods/101371 https://www.nexusmods.com/skyrimspecialedition/mods/33746 But it still seems to be more geared towards SE users? As it was asked mainly for SE usage here. The download count on LE is also not that great.

But if it would fix the performance issues and crashes related to FNIS it could be a nice addon. But I'n my opinion it should be a drop-in alternative so anyone can swap their FNIS mods with it without any issues, otherwise the change will result in users forced to make a choice. Which is already a very annoying thing with the main 2 body mods.  

Link to comment
On 5/18/2022 at 1:38 AM, Kimy said:

 

I can add this!

 

Cool!

 

FYI: after some more testing, I found out that if the player is the one locked in the contraption, pressing the activate key will actually activate *twice*, and only one will go through the OnKeyDown function. Probably why I thought it wasn't working before. Honestly, I don't understand why or how that happens at the moment, nor if it's intentional. Regardless, we can still achieve the same result: just move the CanActivate condition to inside the OnActivate function instead (change in green).

 

Spoiler

Event OnActivate(ObjectReference akActionRef)
    ; set a mutex in case the device gets activated multiple times in short order
    If mutex
        return
    EndIf
    mutex = true
    Actor act = akActionRef As Actor
    If !user
        ; lock somebody in the device when it's not occupied.
        If act == libs.PlayerRef
            If !ScriptedDevice
                DeviceMenuLock()
            Else
                libs.Notify("This device cannot be interacted with.")
            EndIf
        Else
            ; ok, so here we need to find out if that NPC got ordered in the device by the player or just wanted to play because some package was mean enough to send her there.
            If act == clib.SelectedUser
                If !ScriptedDevice
                    DeviceMenuLockNPC(act)
                Else
                    libs.Notify("This device cannot be interacted with.")
                EndIf
            Else
                ; wasn't ordered by the player, so just lock that person in, no questions asked!
                LockActor(act)
            EndIf
        EndIf
    Elseif user
        ; device is occupied
        If user != act
            ; someone else is releasing the occupant.
            ; It is conveivable that the user gets unlocked by NPCs. We could handle this here and check for keys etc. Right now we allow NPC to just unlock the user.
            if act == libs.PlayerRef
                If !ScriptedDevice
                    DeviceMenuNPC()
                Else
                    libs.Notify("This device cannot be interacted with.")
                EndIf
            Else
                UnlockActor()
            EndIf
        Else
            ; attempt by the person locked in the device to open it
            if act == libs.PlayerRef
                ; that's the PC unlocking herself
                If !ScriptedDevice && canActivate
                    DeviceMenuUnlock()
                Else
                    libs.Notify("This device cannot be interacted with.")
                EndIf
            EndIf
        EndIf
    EndIf
    mutex = false
EndEvent

 

This way a player locked in the device can't interact with it while canActivate == True. We don't need it in the OnKeyDown anymore either, then:

 

Spoiler

Event OnKeyDown(Int KeyCode)
    If (KeyCode == Input.GetMappedKey("Activate", 0) && canActivate)
        self.Activate(libs.PlayerRef)
    Endif
EndEvent

 

There's some overlap with the ScriptedDevice functionality, but conceptually they do slightly different things: ScriptedDevice is more like an object property: "this thing shouldn't be usable as a normal device", while CanActivate is more of a generic temporary thing: "Just block activation for now". Might make more sense to rename canActivate to something like CanFreeSelf to make it more clear, but I'll leave that decision up to you ?.

 

Link to comment
3 hours ago, Kimy said:

I have no experience with DAR. But adding it to DD would make it a hard requirement for DD, I suppose. So my first question would be: How popular is it, both LE and SE side? I am pretty reluctant to add any new hard requirement to DD, but I might consider it if DAR is so widespread that most people have it in the loadorder anyway.

 

It is very popular with SE, I've seen it in just about every load order I've had to look at for others and the downloads are pretty good. Just looking at the downloads, it's not nearly as popular for LE. It is just an skse plugin, there's no additional esp required. Since anyone using DD has to have skse installed anyway, it shouldn't be an overly burdensome additional requirement, but i understand not wanting to force the change.

 

Maybe just an install option to use DAR instead of FNIS AA where possible? The animation files aren't that large, so it shouldn't increase the DD download size that much. It can be an install step before selecting the animation options currently in the installer.

 

Or maybe just let Roggvir publish it as a patch or put up a guide for those that want it if you don't want to add it as an option or a hard dependency for everyone?

 

2 hours ago, naaitsab said:

I thought it was exclusive to Nemesis SE but that seems to be a similarly named addin for it.  https://www.nexusmods.com/skyrim/mods/101371 https://www.nexusmods.com/skyrimspecialedition/mods/33746 But it still seems to be more geared towards SE users? As it was asked mainly for SE usage here. The download count on LE is also not that great.

But if it would fix the performance issues and crashes related to FNIS it could be a nice addon. But I'n my opinion it should be a drop-in alternative so anyone can swap their FNIS mods with it without any issues, otherwise the change will result in users forced to make a choice. Which is already a very annoying thing with the main 2 body mods.  

 

It is completely separate from FNIS or Nemesis, and is normally used alongside either of them. It's not a one or the other thing like picking between FNIS and Nemesis. DAR animations also do not contribute FNIS/Nemesis animations limits. So it could improve crashes due to getting close to the animation limit by reducing the burden on FNIS/Nemesis and moving it to DAR. And as mentioned already is very performance friendly. It will not replace FNIS/Nemesis in this case, as FNIS/Nemesis would still be needed for the sex animations.

Link to comment
7 hours ago, Kimy said:

I have no experience with DAR. But adding it to DD would make it a hard requirement for DD, I suppose. So my first question would be: How popular is it, both LE and SE side? I am pretty reluctant to add any new hard requirement to DD, but I might consider it if DAR is so widespread that most people have it in the loadorder anyway.

I feel the need to clarify that DAR is simply a SKSE plugin completely separate from FNIS and Nemesis that replaces vanilla animations by changing the file path the game looks for during runtime. It doesn't require any external patching executables like FNIS and Nemesis does. So, it's a lot more user-friendly than the other two animation frameworks.

 

Judging by how many mods require it on the Nexus, it might be becoming more popular than either Nemesis or FNIS for the SFW modding scene.

Edited by Code Serpent
Link to comment
12 hours ago, Kimy said:

I have no experience with DAR. But adding it to DD would make it a hard requirement for DD, I suppose. So my first question would be: How popular is it, both LE and SE side? I am pretty reluctant to add any new hard requirement to DD, but I might consider it if DAR is so widespread that most people have it in the loadorder anyway.

I am not sure how to gauge its popularity.

 

On the SE Nexus it has 654K unique and 1.477.516 total downloads over the course of ~2 years.

I don't know how sensible it is to compare to for example USSEP with 3.397.757 unique and 10.559.306 total downloads over the course of ~6.5 years.

Or to FNIS with 2.250.901 unique and 10.022.987 total downloads over the course of ~6.5 years.

If we would simply divide the unique downloads by years, you get 522K for USSEP, 346K for FNIS, and 327K for DAR, which seems comparable, and if we use the total numbers, you get 738K for DAR, 1.624.508 for USSEP and 1.541.998 for FNIS, which isn't bad either, but...

It doesn't account for any popularity fluctuations, maybe USSEP or FNIS had some thin years where nobody downloaded them and their numbers would be much higher,
or maybe DAR's popularity will drop and never get to comparable numbers.

 

If you sort Nexus mods by downloads, you will find DAR on 6th page, just after Mfg Fix, and Better Message Box Controls, so that doesn't look too bad either, again considering those mods had 3 to 4 years head start.
 

Is it even a sensible thing to compare mods with such vastly different purpose? i don't really think so, but i had to pick something.

In short, i've no idea ?

 

 

 

12 hours ago, naaitsab said:

I've never heard of it (don't use SE) but besides that I would like to know if it actually fixes the issues with FNIS (crashing and slowness) and can be used with FNIS mods out of the box as many mods won't get updates. Or that it's only for some minor function that FNIS lacks.

It doesn't fix any FNIS issues, whatever issues FNIS may have, it will still have them after you install DAR. DAR doesn't modify FNIS.
But if you move some mod's functionality from FNIS to DAR, so FNIS won't be used for something that used to make your game crash, then yeah, that crash should be gone (unless it was crashing because you were using corrupted animation file, and still are trying to use the same file, just now that animation file gets loaded thanks to DAR instead of thanks to FNIS AA).

 

As for whether DAR can be used with FNIS mods out of the box...
I am not sure i understand the question. In general, DAR doesn't interfere or interact with FNIS in any way. If you have a mod that uses FNIS AA to make the game use some alternative animations, you can usually throw that mod away and use DAR instead, unless that mod also contained some scripted logic as to when to use a given Alternate Animation set.
For example, if the mod was activating the AA set after player presses a hotkey, then even with DAR, you still need some script to be listening for that hotkey, so when it gets pressed, it adds/removes some keyword on the player or whichever actor - a keyword that is used in some DAR's condition (doesn't have to be a keyword, it's just an example).
So, in such case, you would need to edit and recompile the scripts to cut out the FNIS AA stuff, and alter the logic to better suit DAR (usually, that means simplifying it, but YMMV).

If you cannot do that for some reason, then you can still use that mod unchanged, while using DAR for other things.
 

Also, DAR is not a replacement for FNIS. DAR doesn't do what FNIS does, it doesn't modify behavior files to tell the game "hey, now you have a new animation of a giant grinding on a house roof!".
DAR just catches when the game is trying to load animations that are already known to the game (be it vanilla, or something FNIS injected into behavior files) and if DAR has some rules for it, DAR changes where the game loads that animation from, making it load different animation file depending on set conditions.
You still need FNIS for SexLab animations. DAR can only replace FNIS AA (Alternate Animations), which is what is used in DD for forcing bunny hopping, hobbled walk animations, pony animations, pet suit animations, bound combat, etc., instead of normal vanilla walk/run/sprint/fighting animations.
 

 

 

11 hours ago, naaitsab said:

I thought it was exclusive to Nemesis SE but that seems to be a similarly named addin for it.  https://www.nexusmods.com/skyrim/mods/101371 https://www.nexusmods.com/skyrimspecialedition/mods/33746 But it still seems to be more geared towards SE users? As it was asked mainly for SE usage here. The download count on LE is also not that great.

But if it would fix the performance issues and crashes related to FNIS it could be a nice addon. But I'n my opinion it should be a drop-in alternative so anyone can swap their FNIS mods with it without any issues, otherwise the change will result in users forced to make a choice. Which is already a very annoying thing with the main 2 body mods.  

DAR has NOTHING to do with Nemesis.

DAR is NOT geared towards SE users. It is simply an SKSE plugin with versions for SE, LE, AE, and VR.
Why users of LE aren't using it as much, i have no idea (besides the fact that there aren't as many of them as there used to be, as the userbase is now spread amongst 4 different game versions).


Anyway, if DD can use DAR as optional component, so be it, but i am afraid that having to maintain MORE stuff instead of less, woudln't make Kimy too happy.
But i can also imagine as viable, if it would be optional from the beginning, to try and see how it goes, and for the next next version decide on just one and go back to FNIS AA only, or go DAR only.

 

 

8 hours ago, zarantha said:

Or maybe just let Roggvir publish it as a patch or put up a guide for those that want it if you don't want to add it as an option or a hard dependency for everyone?

Sure, i can do that.
But that will require me to distribute the animation files inside the patch package (because they MUST be named differently and located in different paths), or i would have to include some installation script/program that will build a mod package for the users after they run it (which... jeez, i can already see how that would go with some less savy users and combined with various Mod Managers).

A guide should be easy - it should still provide a small download with modified "zadBoundCombatScript" script, the animation files folder structure with the "_conditions.txt" files, and then just tell the users where to copy which files from DD and how to rename them.

Edited by Roggvir
Link to comment

One more possible advantage of using DAR instead of FNIS AA...
Due to how DAR works, the animations it makes the game load, do not count towards the "FNIS animation count".
 

For some users, simply not having to use FNIS to add 1063 animation files from DD, could be just enough difference between crashing and not.

(if their crash would have something to do with heavy animation count).

Edited by Roggvir
Link to comment
11 hours ago, Kimy said:

 Tbh, allowing switching between bunnyhop and bound walk animations isn't what I am overly interest in.

 

@Kimy Not to drudge this back up, but my original post was so poorly worded that the conversation went way off from what I was asking about.

Your character moves extremely slow when wearing extreme hobbling devices. I dont have a problem with standard movement speed, but I was hoping for a feature change that would allow you to "run" while wearing those devices at the exchange of a rather quick stamina drain. I think it would make having to traverse long distances across the map much more bearable, but still take quite some time.

The reason bunnyhopping was mentioned in the first place was because if you look at followers who get too far away from you, when the run to catch up to you the animation chances to bunnyhopping, similarly if you put on God mode which allows you to run, the dragonborn uses that animation to run.

I dont think you should move too much faster while running, and I think stamina drain should be pretty fast, but I think it would be nice to have as an option to get around just a little faster.

Link to comment
2 hours ago, serranna said:

 

@Kimy Not to drudge this back up, but my original post was so poorly worded that the conversation went way off from what I was asking about.

Your character moves extremely slow when wearing extreme hobbling devices. I dont have a problem with standard movement speed, but I was hoping for a feature change that would allow you to "run" while wearing those devices at the exchange of a rather quick stamina drain. I think it would make having to traverse long distances across the map much more bearable, but still take quite some time.

The reason bunnyhopping was mentioned in the first place was because if you look at followers who get too far away from you, when the run to catch up to you the animation chances to bunnyhopping, similarly if you put on God mode which allows you to run, the dragonborn uses that animation to run.

I dont think you should move too much faster while running, and I think stamina drain should be pretty fast, but I think it would be nice to have as an option to get around just a little faster.

Currently the hobble dress make you encumbered. I think your inventory space got reduced to -150 or so. And you cannot sprint/normal run with encumbered inventory.

Maybe to make it that you can run, the mod need to change how hobble dress work. This may be more troublesome than it seem.

Link to comment
21 minutes ago, Kimy said:

Does DAR require different/converted animations, or can it play the ones already made for FNIS?

It uses the same animations, same as they are.

They only need to be renamed to have the same name as their vanilla counterpars (ie. no more "abc5_" prefixes, etc.), and sorted into subfolders (obviously, if you rename hobbled walk forward anim to however the vanilla walk forward is named, and then try to do the same for elbowtie walk forward, you would overwrite the first one - each goes into a different anim set = each goes into its own subfolder).
I can send you my folder structure, and list of files what goes where, and the "_conditions.txt" files, and my notes that explain where to get what and what to rename it to.

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

It uses the same animations, same as they are.

They only need to be renamed to have the same name as their vanilla counterpars (ie. no more "abc5_" prefixes, etc.), and sorted into subfolders (obviously, if you rename hobbled walk forward anim to however the vanilla walk forward is named, and then try to do the same for elbowtie walk forward, you would overwrite the first one - each goes into a different anim set = each goes into its own subfolder).
I can send you my folder structure, and list of files what goes where, and the "_conditions.txt" files, and my notes that explain where to get what and what to rename it to.

And if you would run a mod that hasn't been 'converted' will DAR wreck it or will it just work with FNIS as backbone? Aka will it only affect 'compatible' mods?

Link to comment
5 minutes ago, naaitsab said:

And if you would run a mod that hasn't been 'converted' will DAR wreck it or will it just work with FNIS as backbone? Aka will it only affect 'compatible' mods?

If you mean any mod, then no, DAR will not "wreck" anything.

 

If you mean something like SexLab, then no, DAR will not interfere with any animations for which it doesn't have an alternative, so any SL stuff will still work the same.

 

If you mean some mod that adds a new item/outfit to DD that comes with its own NEW animations, then no, DAR will not interfere with those NEW animations, because it doesn't have

alternatives for them.
But if you cut out the FNIS AA code from DD (which you should if DD goes DAR), then DD will have no means to force those NEW animations, unless they are put into appropriate DAR ani mset subfolder with appropriate condition file.
Which is why any such mod should use DAR if DD will use DAR - that should be a no brainer and come naturally.
Besides, if such mod would want to use FNIS AA functionality provided by DD, it would have to edit at least one DD script, which means it would have to go through Kimy anyway, so i don't even understand the question anymore at all - like what mod are we talking about??? afaik there never was such a thing, no?).
 

 

DAR knows what kind of alternate animations it has in its subfolders, and what are the conditions to use them.
When the game is trying to load animation called "walk forward.hkx" for soem actor, then if DAR has an alternative animation set subfolder containing animation of the same name "walk forward.hkx", AND if the conditions for that animation set evaluate as true, it will make the game load that alternative animation instead of the vanilla.
So, unless you make alternative animation sets for "Anubs_Giant_Smiles_At_Troll.hkx", then your SexLab shennanigans between giants and trolls have nothing to fear from DAR.

Link to comment
5 minutes ago, Kimy said:

I suppose it could be made optional, provided there is an easy way to detect by script if DAR is installed. It doesn't have a ESP, right?

Nope, it has no plugin apart from the DLL.
But, you could just look if that file exists anyway using for example JContainers.fileExistsAtPath()

Edited by Roggvir
Link to comment
15 minutes ago, Roggvir said:

Nope, it has no plugin apart from the DLL.
But, you could just look if that file exists anyway using for example JContainers.fileExistsAtPath()

 

Haha, I have JContainers in my loadorder for so long, I can't even tell you from the back of my head if it's a direct or indirect requirement of DD already. But this mod is so widespread, I'd have no issues making it a requirement....

 

So, yeah, that would work.

Link to comment
42 minutes ago, Kimy said:

 

Haha, I have JContainers in my loadorder for so long, I can't even tell you from the back of my head if it's a direct or indirect requirement of DD already. But this mod is so widespread, I'd have no issues making it a requirement....

 

So, yeah, that would work.

LOL, yeah, i can't remember what is The "essential" mod that requires it, and why almost everybody has it, i think maybe SL Anim Loader?

 

I use JC for a lot of my stuff, working with it almost daily on bunch of soon-to-be-released mods, which is why i remember there is this function.
But i would be surprised if similar function wouldn't be in some other common plugins and mentioned JC just as an example :)
But since almost everybody has it anyway...

Edited by Roggvir
Link to comment
7 hours ago, naaitsab said:

Better or stick with the black?

I preferred the more metallic looking version. That being said, why not add both? Make make the shiny ones ebonite white/red/black and these the normal white/red/black.

 

Edit: Didn't look or read closely and realize this was a padding color change, not a metal color change. I honestly like both, maybe post the textures for each in the DD downloads so people can replace it if they want, or add it as a FOMOD option?

Edited by TrickyK
Link to comment
35 minutes ago, Kimy said:

If it's just replacement textures, post them here, so people can try them in their game and see what they like better. I will merge what people like better. :)

Good idea, here goes:

Padding Change.7z

 

21 minutes ago, TrickyK said:

I preferred the more metallic looking version. That being said, why not add both? Make make the shiny ones ebonite white/red/black and these the normal white/red/black.

 

Edit: Didn't look or read closely and realize this was a padding color change, not a metal color change. I honestly like both, maybe post the textures for each in the DD downloads so people can replace it if they want, or add it as a FOMOD option?

I also like the glossy stuff more as I like shiny things :P An "Ebonite" version could be done with a finish like the black Cursed set on DCUR. But not sure if we should add those as well. Might be a bit to much?

But on the other hand we also have many "duplicates" in leather and Ebonite look so why not?

 

I'll let @Kimy decide on this one.

Link to comment
1 hour ago, naaitsab said:

I also like the glossy stuff more as I like shiny things :P An "Ebonite" version could be done with a finish like the black Cursed set on DCUR. But not sure if we should add those as well. Might be a bit to much?

But on the other hand we also have many "duplicates" in leather and Ebonite look so why not?

 

I'll let @Kimy decide on this one.

 

The more, the merrier!

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use