Jump to content

Recommended Posts

On 11/22/2021 at 3:47 PM, Talesien said:

The update seems to eat my FPS. Probably connected to the papyrus spam it causes:

  Reveal hidden contents

[LiveAct_Main (FE007902)].live_action_main.RegisterForAnimationEvent() - "<native>" Line ?
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Argument variable "::ScanActor_var" was not successfully looked up
stack:
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Cannot register for an animation event on an None object
stack:
    [LiveAct_Main (FE007902)].live_action_main.RegisterForAnimationEvent() - "<native>" Line ?
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Argument variable "::ScanActor_var" was not successfully looked up
stack:
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Cannot register for an animation event on an None object
stack:
    [LiveAct_Main (FE007902)].live_action_main.RegisterForAnimationEvent() - "<native>" Line ?
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Argument variable "::ScanActor_var" was not successfully looked up
stack:
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Cannot register for an animation event on an None object
stack:
    [LiveAct_Main (FE007902)].live_action_main.RegisterForAnimationEvent() - "<native>" Line ?
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Argument variable "::ScanActor_var" was not successfully looked up
stack:
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Cannot register for an animation event on an None object
stack:
    [LiveAct_Main (FE007902)].live_action_main.RegisterForAnimationEvent() - "<native>" Line ?
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Argument variable "::ScanActor_var" was not successfully looked up
stack:
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Cannot register for an animation event on an None object
stack:
    [LiveAct_Main (FE007902)].live_action_main.RegisterForAnimationEvent() - "<native>" Line ?
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?
[11/22/2021 - 04:04:15PM] Error: Argument variable "::ScanActor_var" was not successfully looked up
stack:
    [LiveAct_Main (FE007902)].live_action_main.OnUpdate() - "<savegame>" Line ?


This goes on and on, couple dozen times per second. For the time being, I went back to 0.3.2 which is free of this problem.

 

Did you try to clean the save with ReSaver? I've found that to be the only way to safely upgrade atm.

 

On 11/23/2021 at 1:03 AM, -alpha- said:

Update seems to have broke the MCM.

The select actor key also no longer targets anything.

And I keep getting asked to load in-game data when selecting the actor settings but then nothing happens and the menu there is empty.

 

I ended up getting it working after removing the ESP and doing a save clean.

Once done everything seems to be working

 

Except for the Target actor.

It says its targeted someone but then theres no one selected in the MCM.

Works fine for PC which is all I really care for.

 

The old scripts are stuck in your save unless you remove all of them and do a save clean as you described.

I can't figure out why target actor works sometimes and then doesn't ... This was the most time consuming to fix too.

 

By default the actor in MCM is set to none and to PC if nobody is targeted while pressing the hotkey. It means the target is not selected properly.

 

Does you game send a notification "X selected" when pressing the hotkey at debug level 2?

 

I had to remove the crosshair-based refreshing of the targeted actor as it was amassing suspended stacks. I'll check in my game if I can replicate this issue.

 

23 hours ago, -alpha- said:

 

Yeah this is a problem

 

image.png.22e408c71e9cdd9508a1e7b4a3844e87.png

 

Best to do a save clean as that is abnormal. If it happens again, attach a couple megabytes of the papyrus log to your post. That would help me solve this problem.

Edited by slizer40000
Link to comment
1 hour ago, slizer40000 said:

 

Did you try to clean the save with ReSaver? I've found that to be the only way to safely upgrade atm.

 

 

The old scripts are stuck in your save unless you remove all of them and do a save clean as you described.

I can't figure out why target actor works sometimes and then doesn't ... This was the most time consuming to fix too.

 

By default the actor in MCM is set to none and to PC if nobody is targeted while pressing the hotkey. It means the target is not selected properly.

 

Does you game send a notification "X selected" when pressing the hotkey at debug level 2?

 

I had to remove the crosshair-based refreshing of the targeted actor as it was amassing suspended stacks. I'll check in my game if I can replicate this issue.

 

 

Best to do a save clean as that is abnormal. If it happens again, attach a couple megabytes of the papyrus log to your post. That would help me solve this problem.

That save ended up totally broken.
After about an hr trying to get it working the best I could do was get it to load but it just wouldn't save, it CTD every time.

Went back to version "Live Action 0.3.1b SE LE" as thats the one I was using on an older save.

Its working perfectly fine so far.

 

As for the logs, I no longer have them and couldn't view them when I had them. Apparently Notepad++ cant read files that large.
I'll try loading that save later and see if it still does inflate the log, maybe I can spot it while the game is running.

 

When I tried cleaning the save these things where still present [ STACK Live_Action_Main (HEX) ] (See screen cap)

If I delete them the save loads and I get into game, but the game takes a long time to save and only creates a 5MB save (not the normal 15MB for the time)

If I don't delete them the game loads but then insta CTD when trying to save.

If I don't clean the save and just remove the .esp the game loads but then insta CTD when trying to save.

 

Dropping down to an earlier version didn't help (got a message about down grade not possible or something)

When using the scan to detect NPC it just says ___ selected (as in no name shows)
It also wouldn't allow me to adjust the log level it was stuck on 0 and wouldn't let me change it (I could set it to show in console)

 



image.thumb.png.b4656ad2638a50eb93e0d4fee25bcfd8.png

Edited by -alpha-
added spoiler for image
Link to comment
21 hours ago, -alpha- said:

That save ended up totally broken.
After about an hr trying to get it working the best I could do was get it to load but it just wouldn't save, it CTD every time.

Went back to version "Live Action 0.3.1b SE LE" as thats the one I was using on an older save.

Its working perfectly fine so far.

 

As for the logs, I no longer have them and couldn't view them when I had them. Apparently Notepad++ cant read files that large.
I'll try loading that save later and see if it still does inflate the log, maybe I can spot it while the game is running.

 

When I tried cleaning the save these things where still present [ STACK Live_Action_Main (HEX) ] (See screen cap)

If I delete them the save loads and I get into game, but the game takes a long time to save and only creates a 5MB save (not the normal 15MB for the time)

If I don't delete them the game loads but then insta CTD when trying to save.

If I don't clean the save and just remove the .esp the game loads but then insta CTD when trying to save.

 

Dropping down to an earlier version didn't help (got a message about down grade not possible or something)

When using the scan to detect NPC it just says ___ selected (as in no name shows)
It also wouldn't allow me to adjust the log level it was stuck on 0 and wouldn't let me change it (I could set it to show in console)

 

 

  Reveal hidden contents

 

 


image.thumb.png.b4656ad2638a50eb93e0d4fee25bcfd8.png
 

 

 

 

Actually you can downgrade by cleaning the save/deactivating and reactivating esp. The message is to remind the user that issues could occur by doing so.

 

I am wondering why OnAnimationEvent is still present in your save as it is a leftover from the previous version. It was causing stack dumps so I removed it entirely.

 

Have you tried to do player.kill in console after removing the .esp? Does this allow you to save afterwards when the game autoloads after death?

 

Not being able to adjust log level means the scripts are broken in your save. It's dangerous to continue that save without cleaning.

 

Unfortunately there are still problems with this particular script despite my best efforts ☹️.

Link to comment
52 minutes ago, slizer40000 said:

Unfortunately there are still problems with this particular script despite my best efforts ☹️.


its ok there are alot of moving parts gonna take a bit to get as perfect as possible... 

on surface i dont notice any wrong with my fresh game but im not looking at logs just playing so :D

Link to comment

I am officially too stupid for the MCM version of this mod.  :c

 

We have to choose specific animation installations but then there's still toggles for all of them?  Do I need to use the spreadsheet/.bat files or is that just for further customization? Then there's the profiles- if I chose female-only animation installations, am I supposed to enable all or choose the female only profile?

I got it barely working by setting the timer to 6 seconds but certain animations were constantly missing.  Aroused crouching worked, but sitting/standing didn't.

Going back to 0.2.4b I guess  :/

The only thing I noticed this had over the DAR-only version was that it left some of the original animations intact.  But the new ones were so rare it wasn't that much of an improvement.

Edited by 012009
Link to comment
10 hours ago, slizer40000 said:

 

Actually you can downgrade by cleaning the save/deactivating and reactivating esp. The message is to remind the user that issues could occur by doing so.

 

I am wondering why OnAnimationEvent is still present in your save as it is a leftover from the previous version. It was causing stack dumps so I removed it entirely.

 

Have you tried to do player.kill in console after removing the .esp? Does this allow you to save afterwards when the game autoloads after death?

 

Not being able to adjust log level means the scripts are broken in your save. It's dangerous to continue that save without cleaning.

 

Unfortunately there are still problems with this particular script despite my best efforts ☹️.

 

I just loaded my old save the only difference is that I have the older version installed.

It displayed the message about the down grade but I left it to run for about 30 sec then hit save.

The game saved OK but when I went to check the log it was 305MB and its been ~40 sec.

When opening the log this is whats spamming it. it starts at line 351 all the way to line 7001244.

 

[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] [slamainscr <sla_Main (08042D62)>]: starting maintenance... Update frequency 120.000000
[11/25/2021 - 01:10:06PM] FNIS PCEA2 Quest started (load)
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)

 



image.thumb.png.5bdb3ba8f97ed0faea7b56acc2771333.png

 

Link to comment
19 hours ago, 012009 said:

I am officially too stupid for the MCM version of this mod.  :c

 

We have to choose specific animation installations but then there's still toggles for all of them?  Do I need to use the spreadsheet/.bat files or is that just for further customization? Then there's the profiles- if I chose female-only animation installations, am I supposed to enable all or choose the female only profile?

I got it barely working by setting the timer to 6 seconds but certain animations were constantly missing.  Aroused crouching worked, but sitting/standing didn't.

Going back to 0.2.4b I guess  :/

The only thing I noticed this had over the DAR-only version was that it left some of the original animations intact.  But the new ones were so rare it wasn't that much of an improvement.

 

The MCM version lets you turn categories of animations on/off in-game for everyone. Also, it randomizes the animations in a more reliable way than the original DAR approach.

 

Separate rules can be applied for a selected person. Look at a nearby person and press the hotkey to populate the actor settings menu for them. This menu allows you to create different rules for the selected people and also the player.

Essentially, you can customize your experience without having to manually modify the _conditions.txt in each of the hundreds of sets.

 

The spreadsheet is there to show you what has to be installed separately with the .bat files. It's your choice what to install.

If you selected female only during FOMOD installation, then it does not matter a lot if you select "enable all" vs "female only" in the MCM.

There's about 10 sets total that apply for female and male at the same time.

So, to ensure that only females are processed, disable male animations and enable female animations globally in the first page of the MCM.

 

TL;DR: Use the same settings in the MCM as during FOMOD installation.

 

I'm not sure which timer you mean, so I'll explain what both do.

 

The swap timer affects how often animations are rotated. If set to 6 seconds, animations will swap 10 times between a maximum of 4 options per minute in a random pattern.

 

The scan timer affects how often NPCs and the PC are checked for the actor specific processing. This setting only affects those characters whose toggles have been modified in the actor setting page in the MCM. Thus, setting the scan timer to 6 seconds will only stress the script engine.

 

 

10 hours ago, -alpha- said:

 

I just loaded my old save the only difference is that I have the older version installed.

It displayed the message about the down grade but I left it to run for about 30 sec then hit save.

The game saved OK but when I went to check the log it was 305MB and its been ~40 sec.

When opening the log this is whats spamming it. it starts at line 351 all the way to line 7001244.

 

[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] [slamainscr <sla_Main (08042D62)>]: starting maintenance... Update frequency 120.000000
[11/25/2021 - 01:10:06PM] FNIS PCEA2 Quest started (load)
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)
stack:
	[None].Live_Action_Main.OnUpdate() - "<savegame>" Line ?
[11/25/2021 - 01:10:06PM] Error: Array index 4 is out of range (0-3)

 

 

  Hide contents

 

 


image.thumb.png.5bdb3ba8f97ed0faea7b56acc2771333.png

 
 

 

 

These messages are related to the NPC scan function that creates an array of nearby NPCs. There's 5 values in an array that expects 4.

I'm curious what Resaver/Fallrimtools says about this save. Have you checked if there's a lot of suspended stacks or active scripts related to this mod?

 

If there are no suspended stacks and the number of active scripts is what you expect, then it's just harmless papyrus spam. In that case, feel free to turn the logging off and focus on playing the game.

 

If that is not the case, did you try to load that save again? It's possible that these papyrus errors will disappear by themselves.

If they don't then use Resaver to remove all scripts and changeforms created by Live Action.esp. Does that modified save file load without issues?

 

In addition, if there are suspended stacks remaining after cleaning, toggle off scanning for NPCs in the MCM and leave the game running in an indoors space without moving the player character.

You can also try wait via menu for about 24h in-game.

Alternatively, the "Super fast input wait menu" mod lets you wait for a month or more in a few seconds.

 

Waiting should help papyrus get on its feet and process the other suspended stacks.

 

This small mod is creating huge problems and I'm not sure how to make upgrading to new scripts safer. The strangest thing is that 0.3.3 is running without issue for me in a lvl 40 save, even though I've upgraded many times by removing scripts with Resaver while developing.

Edited by slizer40000
Link to comment
46 minutes ago, slizer40000 said:

 

The MCM version lets you turn categories of animations on/off in-game for everyone. Also, it randomizes the animations in a more reliable way than the original DAR approach.

 

Separate rules can be applied for a selected person. Look at a nearby person and press the hotkey to populate the actor settings menu for them. This menu allows you to create different rules for the selected people and also the player.

Essentially, you can customize your experience without having to manually modify the _conditions.txt in each of the hundreds of sets.

 

The spreadsheet is there to show you what has to be installed separately with the .bat files. It's your choice what to install.

If you selected female only during FOMOD installation, then it does not matter a lot if you select "enable all" vs "female only" in the MCM.

There's about 10 sets total that apply for female and male at the same time.

So, to ensure that only females are processed, disable male animations and enable female animations globally in the first page of the MCM.

 

TL;DR: Use the same settings in the MCM as during FOMOD installation.

 

I'm not sure which timer you mean, so I'll explain what both do.

 

The swap timer affects how often animations are rotated. If set to 6 seconds, animations will swap 10 times between a maximum of 4 options per minute in a random pattern.

 

The scan timer affects how often NPCs and the PC are checked for the actor specific processing. This setting only affects those characters whose toggles have been modified in the actor setting page in the MCM. Thus, setting the scan timer to 6 seconds will only stress the script engine.

 

 

 

These messages are related to the NPC scan function that creates an array of nearby NPCs. There's 5 values in an array that expects 4.

I'm curious what Resaver/Fallrimtools says about this save. Have you checked if there's a lot of suspended stacks or active scripts related to this mod?

 

If there are no suspended stacks and the number of active scripts is what you expect, then it's just harmless papyrus spam. In that case, feel free to turn the logging off and focus on playing the game.

 

If that is not the case, did you try to load that save again? It's possible that these papyrus errors will disappear by themselves.

If they don't then use Resaver to remove all scripts and changeforms created by Live Action.esp. Does that modified save file load without issues?

 

In addition, if there are suspended stacks remaining after cleaning, toggle off scanning for NPCs in the MCM and leave the game running in an indoors space without moving the player character.

You can also try wait via menu for about 24h in-game.

Alternatively, the "Super fast input wait menu" mod lets you wait for a month or more in a few seconds.

 

Waiting should help papyrus get on its feet and process the other suspended stacks.

 

This small mod is creating huge problems and I'm not sure how to make upgrading to new scripts safer. The strangest thing is that 0.3.3 is running without issue for me in a lvl 40 save, even though I've upgraded many times by removing scripts with Resaver while developing.

 

yep this log was from the old save I reloaded.

It does indeed have that stacks problem in the save (the one screen shot of savecleaner is from this save)

 

Its not really a big deal, I loaded up another save and its all working.

I'll try updating to the latest version again perhaps this weekend and see what happens.

 

Link to comment
On 11/20/2021 at 1:25 AM, slizer40000 said:

 

The answer is simple. Version 3.2 is buggy because I am inexperienced and wrote the polling scripts incorrectly without proper in-game testing.

That's why none of the conditions are triggered and nothing is happening.

 

I've been lagging in repairing the mod because real life takes precedence and I was burned out from debugging.

 

Since the last release I've eliminated the game- and function-breaking bugs which were reported or that I could find.

 

I plan to release 3.3 this weekend after correcting the scripts and adding necessary toggles to the actor menu, and _conditions.txt to make the actor toggles work as intended.

 

During debugging, I managed to break most some functionality while fixing other stuff. I am trying to get the actor select hotkey to work without causing stack dumps for papyrus. I don't know why this script gets permanently suspended sometimes. I also removed the event based polling because the triggers are indiscriminate and overload papyrus very fast, ergo the CTD reports. ConsoleUtil is also not needed anymore. In short, expect 3.3 to work properly.

 

MCM Global settings:

 

  Reveal hidden contents

Global toggles: disable/enable animations per group and not aroused or aroused globally. Everything is enabled by default. These settings apply immediately.

  • Toggle on/off the scanning, which triggers actor specific randomization. The scanning disables Live Action animations if the actor is in combat, sleeping, or swimming, and then re-enables for them after the duration of the respective timer set in MCM.
  • Scanning is not necessary if you do not care for the cooldown regarding combat, sleeping, and swimming.
  • Actor based randomization only triggers if at least one toggle has been enabled for the specific actor in the Actor Settings page.
  • You can save/load these settings via 4 different .json profiles (fixed in 3.3).
  • You can save/load actor specific overrides via a .json profile (fixed in 3.3) named after the actor, e.g. Arissa.json, Inigo.json.
  • Reset timers is supposed to set every timer back to default and restart them. Not 100% sure if it's working as intended.
  • Reset and clean functions are supposed to reset the mod scripts safely, but it's relatively untested (fixed in 3.3 hopefully).
  • Select NPC hotkey is in function a slimmer carbon copy of what SL Aroused Redux does. If nobody is in the crosshairs, PC is selected. Otherwise, the NPC in crosshairs is selected by pressing the hotkey. What happens if you hold it down for 6 seconds ? ? (not sure if it works 100% before version 3.3)

 

Global settings are accessible via console as globalvariables.

 

Type "help Liveact 3" without quotation marks in the console to see these settings.

 

Actor toggles work by changing the relevant faction rank for a character to 0 or 1 so DAR can detect it. It's the only way other than magic effects that worked for me.

 

Actor timers work by changing the relevant faction rank for a character to the slider value and by reading its value in the scripts.

 

Custom sets can be made by combining fragments of the _conditions.txt that are included. All the factions and global variables are listed in the Excel spreadsheet as well with an example.

 

 

 

No issue with your English. I am personally using (FNIS +) Nemesis Patcher with Combat Gameplay Overhaul, Jump Behavior Overhaul, Animated Potion Drinking, Movement Behavior Overhaul, True Directional Movement (this gives you 360 movement), Attack Behavior Revamp for CGO, Stances, and Standalone Unarmed Revamp.

 

You should be able to use any movement animations in 360 style with True Directional Movement and Nemesis.

 

As for FNIS only, it's impossible to get 360 movement without changing movement behavior files. So, I recommend Realistic Animation Project - Movement 360 files.

 

Actually, you can use DAR to replace FNIS Sexy Move entirely.

 

Here's how:

  Hide contents

Make new folders e.g. DynamicAnimationReplacer\1000000-1000020.

Then, make a _conditions.txt file and paste these lines inside:

 

IsActorBase("Skyrim.esm" | 0x00000007) AND

Random(0.5)

 

This means your PC will use this set randomly 50% of time.

 

You can add other conditions, e.g. heavy armor, light armor, unarmed, holding weapon, etc. using examples found at Nexus DAR movement mods.

To randomize between multiple sets, change 0.5 to 1/n, where n is the number of the current set in the sequence. For example

 

First set in folder \1000001:

 

IsActorBase("Skyrim.esm" | 0x00000007) AND

Random(1)

 

or if you want it for all female followers

 

IsInFaction("Skyrim.esm"|0x00000DB1) OR
IsInFaction("Skyrim.esm"|0x00019809) OR
IsInFaction("Skyrim.esm"|0x0001DD09) OR
IsInFaction("Skyrim.esm"|0x00048362) OR
IsInFaction("Skyrim.esm"|0x00051596) OR
IsInFaction("Skyrim.esm"|0x00053514) OR
IsInFaction("Skyrim.esm"|0x0005C84D) OR
IsInFaction("Skyrim.esm"|0x0005C84E) OR
IsInFaction("Skyrim.esm"|0x00084D1B) OR
IsInFaction("Skyrim.esm"|0x000A2C8D) OR
IsInFaction("Skyrim.esm"|0x000BD738) OR
IsInFaction("Skyrim.esm"|0x000BCC9A) OR
IsInFaction("Skyrim.esm"|0x000C6472) OR
IsActorBase("Skyrim.esm"|0x000007) OR
IsPlayerTeammate() AND
IsFemale() AND

Random(1)

 

3rd set in folder \1000003

 

IsActorBase("Skyrim.esm" | 0x00000007) AND

Random(0.3333)

 

or

 

IsInFaction("Skyrim.esm"|0x00000DB1) OR
IsInFaction("Skyrim.esm"|0x00019809) OR
IsInFaction("Skyrim.esm"|0x0001DD09) OR
IsInFaction("Skyrim.esm"|0x00048362) OR
IsInFaction("Skyrim.esm"|0x00051596) OR
IsInFaction("Skyrim.esm"|0x00053514) OR
IsInFaction("Skyrim.esm"|0x0005C84D) OR
IsInFaction("Skyrim.esm"|0x0005C84E) OR
IsInFaction("Skyrim.esm"|0x00084D1B) OR
IsInFaction("Skyrim.esm"|0x000A2C8D) OR
IsInFaction("Skyrim.esm"|0x000BD738) OR
IsInFaction("Skyrim.esm"|0x000BCC9A) OR
IsInFaction("Skyrim.esm"|0x000C6472) OR
IsActorBase("Skyrim.esm"|0x000007) OR
IsPlayerTeammate() AND
IsFemale() AND

Random(0.3333)

 

10th set in folder \100010

 

IsActorBase("Skyrim.esm" | 0x00000007) AND

Random(0.1)

 

or

 

IsInFaction("Skyrim.esm"|0x00000DB1) OR
IsInFaction("Skyrim.esm"|0x00019809) OR
IsInFaction("Skyrim.esm"|0x0001DD09) OR
IsInFaction("Skyrim.esm"|0x00048362) OR
IsInFaction("Skyrim.esm"|0x00051596) OR
IsInFaction("Skyrim.esm"|0x00053514) OR
IsInFaction("Skyrim.esm"|0x0005C84D) OR
IsInFaction("Skyrim.esm"|0x0005C84E) OR
IsInFaction("Skyrim.esm"|0x00084D1B) OR
IsInFaction("Skyrim.esm"|0x000A2C8D) OR
IsInFaction("Skyrim.esm"|0x000BD738) OR
IsInFaction("Skyrim.esm"|0x000BCC9A) OR
IsInFaction("Skyrim.esm"|0x000C6472) OR
IsActorBase("Skyrim.esm"|0x000007) OR
IsPlayerTeammate() AND
IsFemale() AND

Random(0.1)

 

This will give each set an equal probability of 10%. If you divide all Random(1/n) by 2, then each has an equal probability of 5%, total 50%, and 50% remains for lower priority or vanilla.

 

Now place the animations inside the created folder and run Cathedral Assets Optimizer to convert .hkx if you're on SSE.

Make sure that the animations are named after vanilla and are placed in the right subfolder.

 

You can look at the folder structure in Live Action to see where to place specific movement hkx files.

Walk, run, mt_idle, and sprint are in \female or \male. Sneak and combat is not.

 

 

 

The .bat file specifically works only for the listed mods. It is not sophisticated enough to swap files without rewriting the batch file. You can see how it is written if you right click and edit the bat file in a text editor.

 

You can make a personalized version by swapping the files. If it's less than 10 animation files then doing it manually is faster though.

 

The error means that the folder is missing. I will check if the folder is not created properly by the code.

 

If you want to get it to work immediately, you can fix this error by adding "md "%~dp0348000" to the start of any of the .bat files. Then the folder will exist when the extraction/renaming occurs.

Hello I wonder if you may help me even it is not regarded to any problem with your mod. In fact your last version is working fine for me now.

 

The thing is that I took your advice and tried to make FNIS and nemesis work with Vortex, as is said in this Reddit post.

https://www.reddit.com/r/skyrimmods/comments/ofvtl3/fnis_and_nemesis/

 

No problem with that, and also running Fnis and Nemesis alone works fine. But installed Combat Gameplay Overhaul, True Directional Movement and Movement Behavior Overhaul and with Nemesis patched, when I launch the game happens that PC and NPCs start to rotate and spin over their axis,

 

Like this: https://imgur.com/a/YlK9vEi https://skyrimforums.org/sf/threads/characters-rotate-in-place.145932/ 

 

Then the FPS fall down and the game freezes.

 

I've searched about the trouble but found no solution, only some dead posts talking about this trouble. 

https://www.reddit.com/r/skyrimmods/comments/k56iu7/serious_issue_with_npcs_including_my_character/

https://www.reddit.com/r/skyrimmods/comments/io5wql/skyrim_se_nemesis_bug/

https://github.com/ShikyoKira/Project-New-Reign---Nemesis-Main/issues/301

 

 

I wonder if it could be due to the heavy load scripts of other animation mods, in fact nemesis counts that I've around 31.000 animations loaded.

 

If you know something about this trouble or any place where people is discussing about this, please, let me know :) Thx in advance!

 

 

 

 

Edited by zoluadru1980
Link to comment
1 hour ago, zoluadru1980 said:

Hello I wonder if you may help me even it is not regarded to any problem with your mod. In fact your last version is working fine for me now.

 

The thing is that I took your advice and tried to make FNIS and nemesis work with Vortex, as is said in this Reddit post.

https://www.reddit.com/r/skyrimmods/comments/ofvtl3/fnis_and_nemesis/

 

No problem with that, and also running Fnis and Nemesis alone works fine. But installed Combat Gameplay Overhaul, True Directional Movement and Movement Behavior Overhaul and with Nemesis patched, when I launch the game happens that PC and NPCs start to rotate and spin over their axis,

 

Like this: https://imgur.com/a/YlK9vEi https://skyrimforums.org/sf/threads/characters-rotate-in-place.145932/ 

 

Then the FPS fall down and the game freezes.

 

I've searched about the trouble but found no solution, only some dead posts talking about this trouble. 

https://www.reddit.com/r/skyrimmods/comments/k56iu7/serious_issue_with_npcs_including_my_character/

https://www.reddit.com/r/skyrimmods/comments/io5wql/skyrim_se_nemesis_bug/

https://github.com/ShikyoKira/Project-New-Reign---Nemesis-Main/issues/301

 

 

I wonder if it could be due to the heavy load scripts of other animation mods, in fact nemesis counts that I've around 31.000 animations loaded.

 

If you know something about this trouble or any place where people is discussing about this, please, let me know :) Thx in advance!

 

 

 

 




if you installed the new faster SMP from nexus you might of chosen the wrong option because I got the same thing and choose options until one worked 

so try 
1. Make sure dar + animation fix limit for dar is actually installed right
2. Fnis XXL 
3. reinstall your physics stuff 


break dancing was always solved for me by looking at my body / physics stoof. 
all i can really thing of besides any other engine fixies, like sse display tweaks etc. 
 

Link to comment
2 hours ago, MuchW0W said:




if you installed the new faster SMP from nexus you might of chosen the wrong option because I got the same thing and choose options until one worked 

so try 
1. Make sure dar + animation fix limit for dar is actually installed right
2. Fnis XXL 
3. reinstall your physics stuff 


break dancing was always solved for me by looking at my body / physics stoof. 
all i can really thing of besides any other engine fixies, like sse display tweaks etc. 
 

Mmmm Fisrt thanx for your fast answer, I'm a bit worried we are invading slizer40000 blog with this issue.

I have FNIS XXL and DAR correctly installed. And what do you mean with "animation fix limit"? Are you refering to Animation Motion Revolution 1.4 or to Animation Limit Crash Fix SSE? And the "faster SMP" are you refering is the new CPBC or 3BBB Amazing mods? Because HDT-SMP is same as always.

 

Edited by zoluadru1980
Link to comment
2 hours ago, zoluadru1980 said:

Mmmm Fisrt thanx for your fast answer, I'm a bit worried we are invading slizer40000 blog with this issue.

I have FNIS XXL and DAR correctly installed. And what do you mean with "animation fix limit"? Are you refering to Animation Motion Revolution 1.4 or to Animation Limit Crash Fix SSE? And the "faster SMP" are you refering is the new CPBC or 3BBB Amazing mods? Because HDT-SMP is same as always.

 



there is a dll file somewhere floating around increasing dars limit to 32k https://www.nexusmods.com/skyrimspecialedition/mods/33746?tab=posts

page one "tollerhannes" comment 

 

Edited by MuchW0W
Link to comment
11 hours ago, MuchW0W said:



there is a dll file somewhere floating around increasing dars limit to 32k https://www.nexusmods.com/skyrimspecialedition/mods/33746?tab=posts

page one "tollerhannes" comment 

 

Yep, you mean this post https://forums.nexusmods.com/index.php?/topic/8506968-dynamic-animation-replacer/?view=findpost&p=99006863 There are some dll files like this one over the cloud, but since slizer40000 talked about Animation Motion Revolution in post #286 (May 28) of this thread and linked some other DAR dll file from mediafire, is the file that I'm using. I don't think Animation Motion would be the problem here

 

 

Edited by zoluadru1980
Link to comment

Hi! I love the concept behind this mod. But... Not sure if already reported. 

But even after a "clean start" (with version 0.3.3), when full debug Papyrus output is enabled I get this in the log:

 

[12/09/2021 - 08:22:37AM] Error: Array index 10 is out of range (0-2)
stack:
    [LiveAct_Main (FE1AB902)].live_action_main.OnUpdate() - "--------------------" Line 283

 

It repeats every second, and of course it floods the log and slows down the whole game (FPS wise).


It seems to happen only if "Cell Scan" is enabled. After some short research, I tracked it up to here in the code inside LIVE_ACTION_MAIN.PSC :

 

 

            If (ToggleScan == 1) ;/ && (bCheckNormalGEnabled() == TRUE) || (bCheckArousedGEnabled() == TRUE) /;
                
                ;ScannedActorsA = ScanCellNPCs(ObjectReference CenterOn, Float Radius == ScanRadius, Keyword HasKeyword = none, Bool IgnoreDead = true)
                ScannedActorsA = ScanCellNPCs(PlayerRef, radius, IgnoreDead = TRUE)    
                float fTimeStartA = GetCurrentRealTime()
                
                Log("Found " + ScannedActorsA.Length + " actors in first scan.")
                
                While (i <= iActor) ; First loop to add NPC actors to LiveAct_Scanned_NPC faction with rank 1 and register animations for OnAnimationEvent().

                    If (i == iActor)
                        ScannedActorsA[iActor] = (PlayerRef as Actor)
                        ScannedActorsA[iActor].RemoveFromFaction(LiveAct_Scanned_NPC)
                        ScannedActorsA[iActor].SetFactionRank(LiveAct_Scanned_NPC, 1)
                        Log("First loop: Player processed.")
                        iActor -= 1
                    Else
                            
                        If ((ScannedActorsA[iActor] != None) && (!ScannedActorsA[iActor].IsDeleted()) && (!ScannedActorsA[iActor].IsChild()))
                            ScannedActorsA[iActor].RemoveFromFaction(LiveAct_Scanned_NPC)
                            ScannedActorsA[iActor].SetFactionRank(LiveAct_Scanned_NPC, 1)
                            iActor -= 1
                            Log("First loop: " + ScannedActorsA[iActor].GetLeveledActorBase().GetName() + " processed. " + iActor + " remaining.")
                        EndIf
                    EndIf        
                
                EndWhile

...

 

For whatever reason, seems that ScannedActorsA is trying to read beyond its length (that's why we get an Array Index Out of Range).

It is possible that as the loop ( WHILE (I <= IACTOR) ) tries to run, even if the IACTOR count equals to ZERO?

That will cause the loop to iterate once, even if ScannerActorsA is EMPTY.

 

I hope this may be of some help to the author. 

(Or I may be mistaken!)

 

Thanks in advance. 
Please keep up the good work with the mod!

 

Edited by rmaku
Link to comment
12 hours ago, rmaku said:

Hi! I love the concept behind this mod. But... Not sure if already reported. 

But even after a "clean start" (with version 0.3.3), when full debug Papyrus output is enabled I get this in the log:

 

[12/09/2021 - 08:22:37AM] Error: Array index 10 is out of range (0-2)
stack:
    [LiveAct_Main (FE1AB902)].live_action_main.OnUpdate() - "--------------------" Line 283

 

It repeats every second, and of course it floods the log and slows down the whole game (FPS wise).


It seems to happen only if "Cell Scan" is enabled. After some short research, I tracked it up to here in the code inside LIVE_ACTION_MAIN.PSC :

 

 

            If (ToggleScan == 1) ;/ && (bCheckNormalGEnabled() == TRUE) || (bCheckArousedGEnabled() == TRUE) /;
                
                ;ScannedActorsA = ScanCellNPCs(ObjectReference CenterOn, Float Radius == ScanRadius, Keyword HasKeyword = none, Bool IgnoreDead = true)
                ScannedActorsA = ScanCellNPCs(PlayerRef, radius, IgnoreDead = TRUE)    
                float fTimeStartA = GetCurrentRealTime()
                
                Log("Found " + ScannedActorsA.Length + " actors in first scan.")
                
                While (i <= iActor) ; First loop to add NPC actors to LiveAct_Scanned_NPC faction with rank 1 and register animations for OnAnimationEvent().

                    If (i == iActor)
                        ScannedActorsA[iActor] = (PlayerRef as Actor)
                        ScannedActorsA[iActor].RemoveFromFaction(LiveAct_Scanned_NPC)
                        ScannedActorsA[iActor].SetFactionRank(LiveAct_Scanned_NPC, 1)
                        Log("First loop: Player processed.")
                        iActor -= 1
                    Else
                            
                        If ((ScannedActorsA[iActor] != None) && (!ScannedActorsA[iActor].IsDeleted()) && (!ScannedActorsA[iActor].IsChild()))
                            ScannedActorsA[iActor].RemoveFromFaction(LiveAct_Scanned_NPC)
                            ScannedActorsA[iActor].SetFactionRank(LiveAct_Scanned_NPC, 1)
                            iActor -= 1
                            Log("First loop: " + ScannedActorsA[iActor].GetLeveledActorBase().GetName() + " processed. " + iActor + " remaining.")
                        EndIf
                    EndIf        
                
                EndWhile

...

 

For whatever reason, seems that ScannedActorsA is trying to read beyond its length (that's why we get an Array Index Out of Range).

It is possible that as the loop ( WHILE (I <= IACTOR) ) tries to run, even if the IACTOR count equals to ZERO?

That will cause the loop to iterate once, even if ScannerActorsA is EMPTY.

 

I hope this may be of some help to the author. 

(Or I may be mistaken!)

 

Thanks in advance. 
Please keep up the good work with the mod!

 

 

Seems like I made a mistake in counting the cycles.

I'll take a look at it this weekend. I've been busy with other matters as of late.

 

The easiest fix I'll try is to combine two conditions:

 

While ((i <= iActor) && iActor <= 1)  Something like this?

i = 0 could be swapped to i = 1 as well.

 

I have plans to separate the scanning toggles in the next release so people can choose what scanner will run instead of all of them.

 

@zoluadru1980

Quote

Yep, you mean this post https://forums.nexusmods.com/index.php?/topic/8506968-dynamic-animation-replacer/?view=findpost&p=99006863 There are some dll files like this one over the cloud, but since slizer40000 talked about Animation Motion Revolution in post #286 (May 28) of this thread and linked some other DAR dll file from mediafire, is the file that I'm using. I don't think Animation Motion would be the problem here

 

The 32k dll linked before is not special in any way. You can try others as well.

 

Spinning and contorting NPCs = issue with physics mod.

SSE Engine Fixes, Display tweaks and Havok fix 64 is what I use.

Play with the lower fps limit setting for havok in the mod .ini file to see what works for you.

 

Physics can easily cause slowdown, CTD, and freezing if there's too many bouncy bits.

If your FPS is below 40 when looking at HDT-SMP or CBPC enabled bodies then the game might spaz out.

 

With HDT-SMP, occasionally typing "smp reset" to console will delay problems.

The SMP mod on Nexus that allows you to set a radius for physics really helps.

 

Regarding Animation Motion Revolution, it's working for me together with 30k animations, FNIS+Nemesis. Be sure to update Nemesis engine each time before generating behaviors.

Edited by slizer40000
Link to comment
On 12/9/2021 at 8:28 PM, slizer40000 said:

The easiest fix I'll try is to combine two conditions:

 

While ((i <= iActor) && iActor <= 1)  Something like this?

i = 0 could be swapped to i = 1 as well.

 

That will not work as well... 

You have just to make sure that iActor is never higher nor equal to the length of ScannedActorsA, as well as making sure that ScannedActorsA is not set to None.


I didn't have the time to properly check the entire code yet, but I'll think I may have some time tomorrow morning to review at least LIVE_ACTION_MAIN.PSC

 

Also, a couple of pieces of advise:

 

- Do you really need to scan the cell every time? Maybe scanning it every 15 seconds or maybe 60 seconds would have a much lower impact.

 

- If you make separate toggles for the scans... the "scanner" can still be one... what changes is just the toggles you apply. As the Scanner just provides you with the actors in a certain radius, there's no need to run it several times.

 

- I had to manually edit several of the custom rules for the animations, as the were completely screwing up other DAR animations I have. It might not be a bad idea to add a certain degree of randomness to the animations. That way, it will not always be the same animation overruling the ones I already had... This may help in some cases.

 

Hope this helps, somehow...

I'll post whatever I'm able to do with the first piece of code (with recommendations and "fixes" where I think they may be needed)...  but it's your project after all. I'm just trying (and may completely fail) to help because I like and really want to enjoy YOUR mod... Sorry if I'm being too nosy.

 

Link to comment
On 12/10/2021 at 12:28 AM, slizer40000 said:

 

Seems like I made a mistake in counting the cycles.

I'll take a look at it this weekend. I've been busy with other matters as of late.

 

The easiest fix I'll try is to combine two conditions:

 

While ((i <= iActor) && iActor <= 1)  Something like this?

i = 0 could be swapped to i = 1 as well.

 

I have plans to separate the scanning toggles in the next release so people can choose what scanner will run instead of all of them.

 

@zoluadru1980

 

The 32k dll linked before is not special in any way. You can try others as well.

 

Spinning and contorting NPCs = issue with physics mod.

SSE Engine Fixes, Display tweaks and Havok fix 64 is what I use.

Play with the lower fps limit setting for havok in the mod .ini file to see what works for you.

 

Physics can easily cause slowdown, CTD, and freezing if there's too many bouncy bits.

If your FPS is below 40 when looking at HDT-SMP or CBPC enabled bodies then the game might spaz out.

 

With HDT-SMP, occasionally typing "smp reset" to console will delay problems.

The SMP mod on Nexus that allows you to set a radius for physics really helps.

 

Regarding Animation Motion Revolution, it's working for me together with 30k animations, FNIS+Nemesis. Be sure to update Nemesis engine each time before generating behaviors.

 

On 12/8/2021 at 7:11 PM, MuchW0W said:




if you installed the new faster SMP from nexus you might of chosen the wrong option because I got the same thing and choose options until one worked 

so try 
1. Make sure dar + animation fix limit for dar is actually installed right
2. Fnis XXL 
3. reinstall your physics stuff 


break dancing was always solved for me by looking at my body / physics stoof. 
all i can really thing of besides any other engine fixies, like sse display tweaks etc. 
 

Hello there! I have to take some time to try your advises. Thanks to both of you!

 

I had previously installed SSE Engine Fixes and also Bethini and since you had told me to use Havok fix I saw that Bethini had also a tool to change fMaxTime from Havok. I played with it and set some others parameters in Bethini and it worked, no more contorsions.  However, after that I've also installed Display tweaks and Faster HDT-SMP. I'm trying to know how they work now.

 

So, thanks again for helping me to solve this problem :)

Link to comment
19 hours ago, rmaku said:

That will not work as well... 

You have just to make sure that iActor is never higher nor equal to the length of ScannedActorsA, as well as making sure that ScannedActorsA is not set to None.


I didn't have the time to properly check the entire code yet, but I'll think I may have some time tomorrow morning to review at least LIVE_ACTION_MAIN.PSC

 

Also, a couple of pieces of advise:

 

- Do you really need to scan the cell every time? Maybe scanning it every 15 seconds or maybe 60 seconds would have a much lower impact.

 

- If you make separate toggles for the scans... the "scanner" can still be one... what changes is just the toggles you apply. As the Scanner just provides you with the actors in a certain radius, there's no need to run it several times.

 

- I had to manually edit several of the custom rules for the animations, as the were completely screwing up other DAR animations I have. It might not be a bad idea to add a certain degree of randomness to the animations. That way, it will not always be the same animation overruling the ones I already had... This may help in some cases.

 

Hope this helps, somehow...

I'll post whatever I'm able to do with the first piece of code (with recommendations and "fixes" where I think they may be needed)...  but it's your project after all. I'm just trying (and may completely fail) to help because I like and really want to enjoy YOUR mod... Sorry if I'm being too nosy.

 

 

I'm always happy to read constructive feedback. I'm not a professional programmer by any means so I may have likely made many redundant checks/mistakes.

 

I am concerned about the polling too. I suspect that the script pauses for the combat/sleep/swimming cooldown (Wait() function) as the while loop progresses. I am not 100% sure if the while loop will complete and create parallel threads or wait for the cooldown to end until it processes the next NPC.

 

If it's the first case then I will apply what you proposed, but if the script processes every actor in sequence then I'll have to rewrite that part.

 

Randomization and animation swapping is more important for the core functionality though.

 

I am planning on improving the scanner but fixing the existing bugs takes priority. I will likely split the polling to separate scripts so that each scan rate can be adjusted and scanners turned on/off.

 

Initially, I wanted to use the faction specific cell scan function as a second step but scrapped the idea as it didn't work for some reason.

 

Further randomization is doable if I make another adjustable random function on a separate timer. In that way, other animations can appear more often.

 

11 minutes ago, zoluadru1980 said:

 

Hello there! I have to take some time to try your advises. Thanks to both of you!

 

I had previously installed SSE Engine Fixes and also Bethini and since you had told me to use Havok fix I saw that Bethini had also a tool to change fMaxTime from Havok. I played with it and set some others parameters in Bethini and it worked, no more contorsions.  However, after that I've also installed Display tweaks and Faster HDT-SMP. I'm trying to know how they work now.

 

So, thanks again for helping me to solve this problem :)

 

Glad to hear that you solved it.

Link to comment

The actual fix, is quite simple. Just substract 1 from the calculation you do for both iActor and jActor. That will fix the exception you get on every iteration... but there's a lot more you can improve just in the OnUpdate Event function (I sent you a private message with some comments).

As for randomization, you can just add that at the DAR conditions file, no need to add more stuff to the script in that regard.

 

BTW, the "select actor" key has NEVER worked for me either.

Link to comment
On 12/12/2021 at 8:56 PM, rmaku said:

The actual fix, is quite simple. Just substract 1 from the calculation you do for both iActor and jActor. That will fix the exception you get on every iteration... but there's a lot more you can improve just in the OnUpdate Event function (I sent you a private message with some comments).

As for randomization, you can just add that at the DAR conditions file, no need to add more stuff to the script in that regard.

 

BTW, the "select actor" key has NEVER worked for me either.

 

I saw and replied to your message. It is most helpful in solving the OnUpdate mess I caused. I split the NPC and PC checks in the while loop because some functions related to sleeping status work only for the PC and some only for NPCs.

 

Would it help to change the scan to index the people who fulfill the conditions, e.g. sleeping/in combat/, and then process them in three while loops?

 

As for randomization, the DAR default random() function is sometimes skewed toward some sets. Also, it's weird for me to see NPCs swap to a totally different animation after every few seconds, constantly. That's why I constricted the randomization to change after ~60 seconds. Also, the DAR randomization sometimes seems to repeat the start of the same idle in quick succession. Maybe a vanilla bug?

 

If the default randomization doesn't bother people I could make a toggle that skips the randomization code in the scripts and uses the DAR default. Then, only the conditions files would matter and people would be free to choose whichever. Not sure if it means rewriting all of the conditions files again, though.

 

As for the select actor key, it only works properly if the OnCrosshairRefChange() event at the end of the "main" script is enabled, but doing so creates suspended stacks that kill the save file after a few minutes. The event spams every time the object under the crosshair changes.

 

Should I just create a separate script for that function with a cooldown that unregisters polling and then swaps to an empty state for X seconds? I basically replicated the code from Sexlab aroused redux, but the hotkey doesn't work properly or creates a bunch of unattached script instances. Not sure if I have to add "!IsInMenuMode()" to the hotkey event as well.

Link to comment
On 12/16/2021 at 9:20 PM, slizer40000 said:

 

I saw and replied to your message. It is most helpful in solving the OnUpdate mess I caused. I split the NPC and PC checks in the while loop because some functions related to sleeping status work only for the PC and some only for NPCs.

 

Would it help to change the scan to index the people who fulfill the conditions, e.g. sleeping/in combat/, and then process them in three while loops?

 

As for randomization, the DAR default random() function is sometimes skewed toward some sets. Also, it's weird for me to see NPCs swap to a totally different animation after every few seconds, constantly. That's why I constricted the randomization to change after ~60 seconds. Also, the DAR randomization sometimes seems to repeat the start of the same idle in quick succession. Maybe a vanilla bug?

 

If the default randomization doesn't bother people I could make a toggle that skips the randomization code in the scripts and uses the DAR default. Then, only the conditions files would matter and people would be free to choose whichever. Not sure if it means rewriting all of the conditions files again, though.

 

As for the select actor key, it only works properly if the OnCrosshairRefChange() event at the end of the "main" script is enabled, but doing so creates suspended stacks that kill the save file after a few minutes. The event spams every time the object under the crosshair changes.

Should I just create a separate script for that function with a cooldown that unregisters polling and then swaps to an empty state for X seconds? I basically replicated the code from Sexlab aroused redux, but the hotkey doesn't work properly or creates a bunch of unattached script instances. Not sure if I have to add "!IsInMenuMode()" to the hotkey event as well.

I understand the need for the "split" into PC and NPC. But what can be greatly improved is the way in which to threat the array of actors, and of course fixing the bug there.

The way you scan them is not essentially wrong, but you should try to:
- Scan them all in a single loop (there's no need to do it more than once per iteration)

- Check the PC separately from the NPC loop (right now the bug is about how you index items in that loop; and how you "artifically" insert the PC into that loop).

 

Not sure about the problems in DAR... It's one of my favourite mods. A pity that its code is not available. Maybe a bug... 

Randomization every 60 seconds is ok. Because of the bug you had, the OnUpdate was running always every 1 second (because the "wait" until next Update was set at the end of the function, it was never set... as the function "crashed" always before reaching the end)

 

I'll have a look at the OnCrosshairRefChange() and let you know what I find.

 

Keep up with the good work.

Moving so many good animations from so many sources into an easy to set mod like yours has been a dream of mine since ever!

 

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