Jump to content

Recommended Posts

sharing my changes to DDi:

 

DDiSlowEffect

 

changed the climax animation from 20 to 10 seconds
changed arousal reduction after climax for males to 0 and females to 50
added slow effect based on vibration strength
* may conflict with other mods that change "SpeedMult" while the vibration is under effect
 

DDiSolo

 

switched animations for horny and climax effect

 

 

DDiSlowEffectSrc-3.3b (10sec climax).7z

DDiSolo-3.3b.rar

Link to comment

 

Thanks guys for the assistance. The problem could well be down to a bugged save since nothing has worked no matter how many times and how many ways I had to go back into bodyslide and try a different body. I guess I will jus have to wipe the lot and reinstall the whole shebang from scratch.

But before I do there is one more thing I want to ask and it's about the racemenu morphs/sliders.

Until recently if I wanted to make adjustments in showracemenu I would use the cbbe morphs to do it but these don't do anything now and I have to do it under body scales further down the menu to the right. I don't know how that came about and I'm stuck with it no matter how I install the mods.

I want to be able to use the cbbe morph sliders and not the bodyscale ones, what am I doing wrong?

I think you need to have the "build morphs" box checked when building in bodyslide for those to work.

 

 

That was it. I always had the box checked when building all the items but I failed to do it when building the body. :blush:

 

Link to comment

Guys not that I want to be a pain but my previous issue hasn't been resolved and I'm holding back from playing until I can fix it...

 

I read your post and your description of the problem and I would suggest you try to reinstall the mods manually if you're comfortable with file explorer and copying and pasting, if not then switch to NMM.

Make sure your firewall isn't blocking any part of Bodyslide and whatever mod installer you use.

Link to comment

Hi,

 

I'm having some trouble creating a script using the EquipDevice command. Would somebody possibly be able to steer me in the right direction? That would be awesome indeed. This scripting stuff is still very new to me and I've been banging my head against the wall for quite some time now. :s

 

OK, so what I'm trying to do is to create a spell that will equip a Devious Device of my choice upon the spell's expiration. Attaching this spell to a device, I could then make it so that it automatically equips another device after removing the first device. I want to use this to circumvent the slot limitations and come up with a "dressed in layers of gear" event, like for example getting out of a catsuit and finding another one underneath it, then a corset under that, and so on...

 

Try as I might though, I keep running into the same dreaded error message:

[None].dude_RestraintsSwapTest1.OnEffectFinish() - "dude_RestraintsSwapTest1.psc" Line 35
[09/14/2017 - 11:37:05PM] ERROR: Cannot call ManipulateDevice() on a None object, aborting function call

 

Here is what I have so far:

 

 

Scriptname dude_RestraintsSwapTest1 extends ActiveMagicEffect

Armor Property SuitRendered Auto
Armor Property SuitInventory Auto
zadlibs Property libs  Auto

Actor savedTarget

Event OnEffectStart(Actor target, Actor caster)
	if (!target)
		return         ; skip saving victim variable if no target actor present
	endIf
	savedTarget = target
	Debug.MessageBox("Inventory Item is " + SuitInventory)
	Debug.MessageBox("Rendered Item is " + SuitRendered)
EndEvent

Event OnEffectFinish(Actor target, Actor caster)
	Debug.MessageBox("We have chosen our victim: " + savedTarget)
	utility.wait(1)
	libs.EquipDevice(savedTarget, SuitInventory, SuitRendered, libs.zad_DeviousSuit, skipEvents = false, skipMutex = false)
        utility.wait(1)
	Debug.MessageBox("Victim is still: " + savedTarget)
	Debug.MessageBox("Inventory Item is still " + SuitInventory)
	Debug.MessageBox("Rendered Item is still " + SuitRendered)
endEvent

 

 

 

As you can see, I have added a ton of debug message boxes. They display all the correct information in the game,  at all times. Player 00000014, and the correct IDs for the rendered/inventory devices I want to equip. Yet I keep getting that same "None object" error for the EquipDevice command. I've also tried it with ManipulateDevice but got the same results.

 

What am I doing wrong here?

 

Any help would be much appreciated.

Link to comment

Hi,

I've come up with a few problems when I tried to make some 'more customized' devious devices for myself. Take this as an example. When the player wears a gag, she cannot equip any shout. Then I'd like to create a gag without preventing the player from using shouts, based on scripts in DDi. However, after I annotated the related codes in zadGagEffect.psc, the gagged player still can't shout. And that's my problem - can these - 'basic magic effects', such as gags preventing player from using shouts - be modified as we like, or they're just fixed in the Devious Devices framework. Further, if those effects can be modified, which scripts should we modify.

 

Will then, after all, what am I doing wrong here? Or where's the best way? Any help would be appreciated.

 

PS, it seems that when a certain device is equipped, the framework will send a DeviousEquippedXXX event, but I couldn't find a script that contains such event. So weird. (Or perhaps I forgot something.)

 

PPS, my English is poor. Sorry for that.

 

 

Link to comment

Compatibility report:

 

https://www.nexusmods.com/skyrim/mods/68776/?

GameFever's 1rst Person Combat Items Fix causes problems with Devious Devices.

If you are having the problem:

"my devious head items block my view in first person"

That mod is why. It makes everything you're wearing show up in first person, and while it works fantastically for things like Immersive Jewelry or Dovahbling, it's ALSO going to make things like your Devious gags and other gear block your view close up.

 

Just thought I'd leave that, to be added to compatibility info in case other people had the issue that I spent a while solving on my own game.

Link to comment

Compatibility report:

 

https://www.nexusmods.com/skyrim/mods/68776/?

GameFever's 1rst Person Combat Items Fix causes problems with Devious Devices.

If you are having the problem:

"my devious head items block my view in first person"

That mod is why. It makes everything you're wearing show up in first person, and while it works fantastically for things like Immersive Jewelry or Dovahbling, it's ALSO going to make things like your Devious gags and other gear block your view close up.

 

Just thought I'd leave that, to be added to compatibility info in case other people had the issue that I spent a while solving on my own game.

 

Its shouldn't by default, not unless you're using the sexlab config from this site.

Link to comment

 

Hi,

 

I'm having some trouble creating a script using the EquipDevice command. Would somebody possibly be able to steer me in the right direction? That would be awesome indeed. This scripting stuff is still very new to me and I've been banging my head against the wall for quite some time now. :s

 

 

OK, so what I'm trying to do is to create a spell that will equip a Devious Device of my choice upon the spell's expiration. Attaching this spell to a device, I could then make it so that it automatically equips another device after removing the first device. I want to use this to circumvent the slot limitations and come up with a "dressed in layers of gear" event, like for example getting out of a catsuit and finding another one underneath it, then a corset under that, and so on...

 

Try as I might though, I keep running into the same dreaded error message:

[None].dude_RestraintsSwapTest1.OnEffectFinish() - "dude_RestraintsSwapTest1.psc" Line 35

[09/14/2017 - 11:37:05PM] ERROR: Cannot call ManipulateDevice() on a None object, aborting function call

 

Here is what I have so far:

 

 

Scriptname dude_RestraintsSwapTest1 extends ActiveMagicEffect

Armor Property SuitRendered Auto
Armor Property SuitInventory Auto
zadlibs Property libs  Auto

Actor savedTarget

Event OnEffectStart(Actor target, Actor caster)
	if (!target)
		return         ; skip saving victim variable if no target actor present
	endIf
	savedTarget = target
	Debug.MessageBox("Inventory Item is " + SuitInventory)
	Debug.MessageBox("Rendered Item is " + SuitRendered)
EndEvent

Event OnEffectFinish(Actor target, Actor caster)
	Debug.MessageBox("We have chosen our victim: " + savedTarget)
	utility.wait(1)
	libs.EquipDevice(savedTarget, SuitInventory, SuitRendered, libs.zad_DeviousSuit, skipEvents = false, skipMutex = false)
        utility.wait(1)
	Debug.MessageBox("Victim is still: " + savedTarget)
	Debug.MessageBox("Inventory Item is still " + SuitInventory)
	Debug.MessageBox("Rendered Item is still " + SuitRendered)
endEvent

 

 

 

As you can see, I have added a ton of debug message boxes. They display all the correct information in the game,  at all times. Player 00000014, and the correct IDs for the rendered/inventory devices I want to equip. Yet I keep getting that same "None object" error for the EquipDevice command. I've also tried it with ManipulateDevice but got the same results.

 

What am I doing wrong here?

 

Any help would be much appreciated.

 

 

 

After more, a lot more, of banging my head against the wall, I think I figured it out. As it turns out, I seem to have made this overly complicated by trying to accomplish the "equip device 2 after unequipping device 1" scenario with the help of a spell. Instead, all I really needed to do was to extend the zadEquipScript and attach that then to my new custom device and set up the two new armor properties for the second suit in the first suit's script device. Like so:

 

 

Scriptname dude_MultiStageCatsuitStg1 extends zadEquipScript

Armor Property SuitRendered Auto
Armor Property SuitInventory Auto

Function OnUnequippedPost(Actor akActor)
	string msg = ""
	if akActor == libs.PlayerRef
		msg = "Success! You have unlocked the suit. To your great shock, you find another one locked on your body after peeling off the first one!"
		libs.NotifyActor(msg, akActor, true)
	EndIf
	libs.EquipDevice(akActor, SuitInventory, SuitRendered, libs.zad_DeviousSuit, skipEvents = false, skipMutex = true)
EndFunction

Event OnUnequipped(Actor akActor)
	Parent.OnUnequipped(akActor)
	OnUnequippedPost(akActor)
EndEvent

 

 

I don't know how elegant or clean this code is, but so far it seems to do its job. I only got this to work after studying Kimy's Cursed Loot code over and over again and borrowed some of its snippets, too. The Devious Devices Wiki on the Github page was also very, very helpful in my quest to "finally get it working, damn it!" I'm posting this here in case anybody else ever finds themselves in a similar situation and wants to avoid getting a bruised forehead.

Link to comment

hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?


hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?

Link to comment

hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?

You would have to make a new item with different slots, and do the same with the armor addon and nifs.

Link to comment

 

hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?

You would have to make a new item with different slots, and do the same with the armor addon and nifs.

Is that hard to do ????

Link to comment

 

 

hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?

You would have to make a new item with different slots, and do the same with the armor addon and nifs.

Is that hard to do ????

 

Not really, but you'll need to use either the creation kit or tes5edit and also nifscope.

Link to comment

 

 

 

hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?

You would have to make a new item with different slots, and do the same with the armor addon and nifs.

Is that hard to do ????

 

Not really, but you'll need to use either the creation kit or tes5edit and also nifscope.

 

 

And potentially either edit the scripts attached to the new harness or delete it completely from the new harness keywords and such.

Link to comment

Quick question: Is there a way to prevent actors from playing their random horny animations?

 

I have a NPC who's tied on a rack while equipped with vibrating plugs. Since she's tied up, she shouldn't be able to move her arms and legs. But then she does every time her animation triggers.

 

 

You need to tell DDi your actor is already animating with this. 

 Libs.SetAnimating(aSlave, True)

and 

 Libs.SetAnimating(aSlave, False)

when done. 

 

Libs = zadLibs script

 

 

Also, you can do something similar for ZAP so you do not have to remove ZAP restraints before striking a pose. (ZAP restraints will break poses if left equipped)

 zbfBondS.SetBusyAnimating(aSlave)

and

 zbfBondS.StopBusyAnimating(aSlave)

when done.

 

zbfBondS = zbfBondageShell script

Link to comment

You need to tell DDi your actor is already animating with this. 

 Libs.SetAnimating(aSlave, True)
and 

 Libs.SetAnimating(aSlave, False)
when done.

 

 

 

Yeah, I tried that (along with putting the alias in the zadAnimatingFaction). However, the status seems to get cleared after some time. And then I get the animations again.

 

I put this into my OnUpdate event (called every 5 seconds):

 

    if zadQuest.IsAnimating(Raynila)
        TIRUtilScr.Log("Raynila is animating", Self)
    else
        TIRUtilScr.Log("Raynila is NOT animating", Self)
        TIRUtilScr.DisableRandomAnimations(Raynila)
    endif

 

 

And these are the relevant (filtered) entries in my log:

 

[09/19/2017 - 03:48:10PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:30PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:35PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:40PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:45PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:50PM] [Zad]: Actor already in animating faction.
[09/19/2017 - 03:48:51PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:56PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:01PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is NOT animating
[09/19/2017 - 03:49:06PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:11PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:16PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:21PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:26PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:31PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:33PM] [Zad]: Actor already in animating faction.
[09/19/2017 - 03:49:36PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:42PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:47PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:52PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:57PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is NOT animating

 

 

As you can see, every now and again, the check says that the actor (Raynila) isn't actually in the "animating" status anymore.

 

 

Let's take a closer look at one of those incidents:

 

[09/19/2017 - 03:49:47PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:49PM] [Zad]: UpdateExposure([Actor < (712FEF4A)>],5.750000,TRUE)
[09/19/2017 - 03:49:50PM] RNPC: Periodic update check.
[09/19/2017 - 03:49:52PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:54PM] [Zad]: EndThirdPersonAnimation(Raynila Herendoth,[False, False])
[09/19/2017 - 03:49:55PM] [Zad]: UpdateExposure([Actor < (712FEF4A)>],5.750000,TRUE)
[09/19/2017 - 03:49:57PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is NOT animating

 

 

As you can see: At first, everything is fine. Then comes a call to zadLibs.EndThirdPersonAnimation. And that one clears the animating status of the actor (as one can see in the code of that function). And this is the typical situation. Every time I have a log entry saying that Raynila isn't animating anymore, it is preceded by a call to EndThirdPersonAnimation.

 

Who makes that call to EndThirdPersonAnimation? I'm not sure, but certainly not one of my scripts. At least not directly. I do make some manual calls to zadLibs.VibrateEffect besides the random events that DDi triggers on its own. That's the whole point of this part of the quest. The actor is tied up and gets relentlessly stimulated.

 

So... what am I doing wrong here?

Link to comment

 

 

 

 

hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?

You would have to make a new item with different slots, and do the same with the armor addon and nifs.
Is that hard to do ????

Not really, but you'll need to use either the creation kit or tes5edit and also nifscope.

And potentially either edit the scripts attached to the new harness or delete it completely from the new harness keywords and such.

 

 

 

 

hi, does anyone know any way so that we the character in game can wear 2 harnesses at the same time? I know there is only one slot for body. Im trying to equip the black iron harness from heretical resources and the slave harness from devious devices at the same time. Does anyone know how to make that possible?

You would have to make a new item with different slots, and do the same with the armor addon and nifs.
Is that hard to do ????

Not really, but you'll need to use either the creation kit or tes5edit and also nifscope.

And potentially either edit the scripts attached to the new harness or delete it completely from the new harness keywords and such.

 

I see, okay i know this is alot to ask but can you give me like a rough guide of what i need to do. Also btw thanks for answering my question in the first place.

Link to comment

I would inform the person and link to the thread. As it turns out, the issue hasn't been resolved and I am keeping both posts in check. Will edit when solved!

 

Thanks for the information however. I'm just looking for a quick answer and not to cause trouble.

 

Edit: Questions from the other thread:

 

 

First of all, I would suggest looking in MO if nay mod, other than the bodyslide output, is overwriting things from the DD mods.

Also, did you remember to reinstall DDa and DDx with the correct body when you changed bodytype? (Not just the bodyslide files, but the normal meshes too) Items like gags do not use bodyslide and should therefore work anyway, assuming you're not playing a beast race. If you are, you will need a beastrace conversion mod as well.

If nether of those help, I would suggest checking with tes5edit to find the path it's looking for the meshes and seeing if they exist in the propper places.

 

And lastly, if you're using any equipitem fix mod, that will break the DD mods causing them not to work properly.

 

Done it all except Tes5 Edit which I have no experience with (edit: I've been playing around in TES5 Edit but I'm not sure what I should be looking for)

 

When you built with bodyslide, did you make a new folder, or did you set the mod itself as the output folder?

 

I built it into DDa and DDx

 

Check to see if the Meshes\devious\expansion folder in DDx has .nif files for the items that don't work. 

There should be either 2 or 3 files per item. One with "_0" and one with "_1" at the end, or just a single one without a number. And all of them should have one end in "_go", thats just for the inventory/ground.

 

Yep and they aren't dummy files either. I thought it might be a problem with my DDi (hence my first post over there)

 

Have to tried disabling all hiding in the devicehider section of the dd menu?

 

Yes

 

Will update this.

 

 

Not sure if you have checked  or not - do you have more than 1 armor equipping the same slot?

Also, do you have LSAR installed?  That can affect armor slots too.  Just some thoughts.

 

 

Link to comment

My apologies if this has been asked (I tried to skim back some, but 443 pages is a lot and after 5 or so my eyes were hurting! )

Is there any plan/thoughts/likelihood to update to the Zaz Animation pack 7?  I recently updated all my mods upon returning to playing and had not realized zaz was ahead of the game so to speak lol.  This is causing a lot of errors in my papyrus, so wondering if I need to revert back my zaz.

 

Thanks :)

Link to comment

My apologies if this has been asked (I tried to skim back some, but 443 pages is a lot and after 5 or so my eyes were hurting! )

Is there any plan/thoughts/likelihood to update to the Zaz Animation pack 7?  I recently updated all my mods upon returning to playing and had not realized zaz was ahead of the game so to speak lol.  This is causing a lot of errors in my papyrus, so wondering if I need to revert back my zaz.

 

Thanks :)

 

They are working on dropping the use of the ZAZ Animation Pack and are building their own animations.

Link to comment

 

My apologies if this has been asked (I tried to skim back some, but 443 pages is a lot and after 5 or so my eyes were hurting! )

Is there any plan/thoughts/likelihood to update to the Zaz Animation pack 7?  I recently updated all my mods upon returning to playing and had not realized zaz was ahead of the game so to speak lol.  This is causing a lot of errors in my papyrus, so wondering if I need to revert back my zaz.

 

Thanks :)

 

They are working on dropping the use of the ZAZ Animation Pack and are building their own animations.

 

 

Cool, thanks for the swift response :)

 

Link to comment

 

You need to tell DDi your actor is already animating with this. 

 Libs.SetAnimating(aSlave, True)
and 

 Libs.SetAnimating(aSlave, False)
when done.

 

 

 

Yeah, I tried that (along with putting the alias in the zadAnimatingFaction). However, the status seems to get cleared after some time. And then I get the animations again.

 

I put this into my OnUpdate event (called every 5 seconds):

 

    if zadQuest.IsAnimating(Raynila)
        TIRUtilScr.Log("Raynila is animating", Self)
    else
        TIRUtilScr.Log("Raynila is NOT animating", Self)
        TIRUtilScr.DisableRandomAnimations(Raynila)
    endif

 

 

And these are the relevant (filtered) entries in my log:

 

[09/19/2017 - 03:48:10PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:30PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:35PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:40PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:45PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:50PM] [Zad]: Actor already in animating faction.
[09/19/2017 - 03:48:51PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:48:56PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:01PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is NOT animating
[09/19/2017 - 03:49:06PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:11PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:16PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:21PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:26PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:31PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:33PM] [Zad]: Actor already in animating faction.
[09/19/2017 - 03:49:36PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:42PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:47PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:52PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:57PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is NOT animating

 

 

As you can see, every now and again, the check says that the actor (Raynila) isn't actually in the "animating" status anymore.

 

 

Let's take a closer look at one of those incidents:

 

[09/19/2017 - 03:49:47PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:49PM] [Zad]: UpdateExposure([Actor < (712FEF4A)>],5.750000,TRUE)
[09/19/2017 - 03:49:50PM] RNPC: Periodic update check.
[09/19/2017 - 03:49:52PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is animating
[09/19/2017 - 03:49:54PM] [Zad]: EndThirdPersonAnimation(Raynila Herendoth,[False, False])
[09/19/2017 - 03:49:55PM] [Zad]: UpdateExposure([Actor < (712FEF4A)>],5.750000,TRUE)
[09/19/2017 - 03:49:57PM] [TIR] <[TIRMQ404Scr <TIRMQ404 (7130DAB0)>]> (Debug) Raynila is NOT animating

 

 

As you can see: At first, everything is fine. Then comes a call to zadLibs.EndThirdPersonAnimation. And that one clears the animating status of the actor (as one can see in the code of that function). And this is the typical situation. Every time I have a log entry saying that Raynila isn't animating anymore, it is preceded by a call to EndThirdPersonAnimation.

 

Who makes that call to EndThirdPersonAnimation? I'm not sure, but certainly not one of my scripts. At least not directly. I do make some manual calls to zadLibs.VibrateEffect besides the random events that DDi triggers on its own. That's the whole point of this part of the quest. The actor is tied up and gets relentlessly stimulated.

 

So... what am I doing wrong here?

 

 

You might want to 'TraceStack' that function in zadLibs to see who calls it. That should narrow your search. 

Link to comment

You might want to 'TraceStack' that function in zadLibs to see who calls it. That should narrow your search.

 

The call comes from line 2014 in zadlibs.psc, function VibrateEffect:

 

		;;;;;;;;;;
		; Stop horny idle?
		;;;;;;;;;;
		if (vibAnimStarted != 0) && (timeVibrated - vibAnimStarted >= 6) ; Stop animation after 5 seconds.
			; Log("XXX Stopping Horny Idle")
			ApplyExpression(akActor, expression, (timeVibrated / duration) * 75, openMouth=False)
			EndThirdPersonAnimation(akActor, cameraState, permitRestrictive=true)
			vibAnimStarted = 0
			; Log("XXX VibrateEffect: Done stopping horny idle")
		EndIf

Thing is, it shouldn't be called. But I think I may have found the culprit. I took another look at the whole loop in that function and think there's a bug here, in line 1994:

 

		;;;;;;;;;;
		; Play horny idle?
		;;;;;;;;;;
		if (Config.HardcoreEffects || akActor != PlayerRef) && (vibAnimStarted == 0) && Utility.RandomInt() <= (3+(VibStrength * 2)) && !IsAnimating(PlayerRef)
			; Log("XXX Starting Horny Idle")
			ApplyExpression(akActor, expression, (Aroused.GetActorExposure(akActor) * 0.75) as Int, openMouth=true)
			; Select animation
			string randomAnim
			if (nPiercings && !(vPlug || aPlug))
				randomAnim = "Horny03"
			Else
				randomAnim = "Horny01"
			EndIf
			cameraState=StartThirdPersonAnimation(akActor, AnimSwitchKeyword(akActor, randomAnim), permitRestrictive=true)
			vibAnimStarted = timeVibrated + 1
			; Log("XXX VibrateEffect: Done starting horny idle")
		EndIf

Take a look at the very last condition in the first if-statement. It always checks against the player. But shouldn't it check against the actor that the function is called on? Because the way it's written there, I can see why it's not working. Whatever factions the actor is in, don't actually matter. As soon as the loop decides to play the horny animation, it'll happen.

 

To test my theory, I changed my code so that the player is also set to be animating. And lo and behold, now the actor can be stimulated for several minutes and she never plays a horny animation or loses her animating state. But I don't think that's how it's supposed to work.

 

 

So either there's something I have yet to understand, or there might be a bug in the zadlibs.psc that needs fixing.

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • 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