Jump to content

Recommended Posts

So i've run some tests by adding debug messages to the UpdateActorArousals (UAA) and UpdateNakedArousal (UNA) functions:

 

Just the player naked 2 npc's in the cell

  • UAA player observer, empty naked actor UNA called observed actor is invalid
  • UAA First npc observer, empty naked actor UNA called observed actor is invalid
  • UAA Second npc observer, empty naked actor UNA called observed actor is invalid
  • result: no changes in arousal for any actors

One npc naked, player clothed, second npc clothed:

  • UAA player observer, naked npc is naked actor UNA called player arousal updated properly
  • UAA clothed npc observer, naked npc is naked actor UNA called clothed npc arousal updated properly
  • UAA naked npc observer, naked actor == observer no call to UNA
  • result: naked npc actors seem to work fine

Player and one npc naked, second npc clothed:

  • UAA player observer, empty naked actor UNA called observed actor is invalid; naked npc is naked actor UNA called player arousal updated properly
  • UAA clothed npc observer, empty naked actor UNA called observed actor is invalid; naked npc is naked actor UNA called clothed npc arousal updated properly
  • UAA naked npc observer, empty naked actor UNA called observed actor is invalid; naked actor == observer no call to UNA
  • result: the naked npc updates player and clothed npc, naked player fails to update either npc

Conclusions: pushing the player ref into the naked actor list is failing, resulting in an null actor in the list of naked actors

Link to comment
3 hours ago, Lupine00 said:

It's highly dependent on rescan frequency and LOS.

Also, SLA(R) has some bugs in its handling of scans, though it was a while since I worked on SLAX at all, so my memory of what I found is hazy. There were definitely subtle issues.

 

The scan frequency is so low by default in SLA(R) that it's nonsense. Unless you scan more often the results are just junk.

It was written for different times. Though the potato PCs still exist, the high end has extended a long way upwards and the middle ground has shifted.

Also, the many bad non-sex mods that were burning everyone's CPU have been dealt with since then.

SLA(R) ends up being a total non-consumer of resource in a modern game. There's plenty of scope to scan more often.

 

I want to redo scans some more. SLA(R) has two modes for dealing with them - and one existed only for really really slow PCs. I don't think it's helping any more and is just cluttering the code. I retained that mode for now, but you shouldn't use it :) 

 

Link to comment
7 minutes ago, Tenri said:

So i've run some tests by adding debug messages to the UpdateActorArousals (UAA) and UpdateNakedArousal (UNA) functions:

 

Just the player naked 2 npc's in the cell

  • UAA player observer, empty naked actor UNA called observed actor is invalid
  • UAA First npc observer, empty naked actor UNA called observed actor is invalid
  • UAA Second npc observer, empty naked actor UNA called observed actor is invalid
  • result: no changes in arousal for any actors

One npc naked, player clothed, second npc clothed:

  • UAA player observer, naked npc is naked actor UNA called player arousal updated properly
  • UAA clothed npc observer, naked npc is naked actor UNA called clothed npc arousal updated properly
  • UAA naked npc observer, naked actor == observer no call to UNA
  • result: naked npc actors seem to work fine

Player and one npc naked, second npc clothed:

  • UAA player observer, empty naked actor UNA called observed actor is invalid; naked npc is naked actor UNA called player arousal updated properly
  • UAA clothed npc observer, empty naked actor UNA called observed actor is invalid; naked npc is naked actor UNA called clothed npc arousal updated properly
  • UAA naked npc observer, empty naked actor UNA called observed actor is invalid; naked actor == observer no call to UNA
  • result: the naked npc updates player and clothed npc, naked player fails to update either npc

Conclusions: pushing the player ref into the naked actor list is failing, resulting in an null actor in the list of naked actors

That sounds like my problem. It would explain why exposure is so hit and miss.

Link to comment
50 minutes ago, fleabittendog said:

Conclusions: pushing the player ref into the naked actor list is failing, resulting in an null actor in the list of naked actors

Hmm. It shouldn't fail for no reason.

I should investigate further.

 

Do you have an old PapyrusUtil?

Link to comment

After several attempts at trying to push the player into the list of naked actors, all failures, I gave up on that and just put a loop in the isPlayerNaked if statement to update the arousal of the NPCs to be updated. and that works, I don't understand why you can push the player ref into the updateActors array without issue but not the nakedActors array.

 

Here is the updated file (with source) if anyone wants to try it out / impliment into the main download. (I remembered to remove the debug messages)

Removed this patch as there have been further fixes check later post.

 

Link to comment
14 minutes ago, Lupine00 said:

Hmm. It shouldn't fail for no reason.

I should investigate further.

 

Do you have an old PapyrusUtil?

No I have the newest PapyrusUtil at the bottom of MO's left panel so it overrides any other copies of its scripts from other mods.

The strangest thing is it works with one array and not the other.

Link to comment

Unfortunately, I'm getting similar results.  PC can stand naked in a cell and NPC arousal never budges.  Stripping an NPC causes PC arousal to increase, so that part works. 

 

The PC will gain arousal from a naked NPC of a gender the PC is marked as having no interest for (any NPC nudity causes "exposure") but I believe that existed in SLA(R) too. 

Link to comment
2 hours ago, HexBolt8 said:

Unfortunately, I'm getting similar results.  PC can stand naked in a cell and NPC arousal never budges.  Stripping an NPC causes PC arousal to increase, so that part works. 

 

The PC will gain arousal from a naked NPC of a gender the PC is marked as having no interest for (any NPC nudity causes "exposure") but I believe that existed in SLA(R) too. 

Yeah you gain half as much (2 vs 4) for an actor that doesn't match your preference, and fairly sure has always been that way.

Link to comment
7 hours ago, Tenri said:

Yeah you gain half as much (2 vs 4) for an actor that doesn't match your preference, and fairly sure has always been that way.

Thank you very much for that info.  At least it takes gender preference into account to some degree, but I wish the amount were configurable. 

Link to comment
On 12/31/2019 at 12:11 AM, LinksSword said:

how do i make something using the body 32 slot not raise arousal like im naked? 

As far as I can tell, the WIP version currently treats you as if you're always naked regardless of what you're wearing.

 

If you turn exhibitionist on and turn off LOS/naked actor requirement, you will gain arousal non-stop as long as there is even 1 NPC near you. Mods like Naked Dungeon and Blush when Aroused that rely on SLA for their naked scan are also permanently triggered.

 

You're just going to have to wait for the fixed release or go back to using SLAR for now I think.

Link to comment
30 minutes ago, Feruano said:

As far as I can tell, the WIP version currently treats you as if you're always naked regardless of what you're wearing.

 

If you turn exhibitionist on and turn off LOS/naked actor requirement, you will gain arousal non-stop as long as there is even 1 NPC near you. Mods like Naked Dungeon and Blush when Aroused that rely on SLA for their naked scan are also permanently triggered.

 

You're just going to have to wait for the fixed release or go back to using SLAR for now I think.

yeah thats unfortunately seems to be the case or in another case my arousal refused to go up unless i striped and was an exhibitionist, it makes mme a nightmare to use since arousal always skyrockets more then it ever did with the old sla. But i did notice that setting to "respectable" seems to calm down arousal gaining a bit.

 

And gender getting aroused at the wrong gender has always been a issue since the old version of sla. It's never mattered from what i experienced. rather you set character to lesbian or straight or what have you any npc will set arousal.

 

And then another case where one npc gets aroused quicker than another despite setting the exposure rate to almost none or having less exposure then the other npc or me. Got to the point where one of my followers was masturbating every in game hour it seemed and would always drop only to 70 or 80 arousal afterwards so.

 

Not sure how that works since his exposure rate was set to low.

Link to comment
1 hour ago, Feruano said:

As far as I can tell, the WIP version currently treats you as if you're always naked regardless of what you're wearing.

 

If you turn exhibitionist on and turn off LOS/naked actor requirement, you will gain arousal non-stop as long as there is even 1 NPC near you. Mods like Naked Dungeon and Blush when Aroused that rely on SLA for their naked scan are also permanently triggered.

 

You're just going to have to wait for the fixed release or go back to using SLAR for now I think.

Ya I found that also, had to revert back to SLA. 

Link to comment
1 hour ago, Feruano said:

As far as I can tell, the WIP version currently treats you as if you're always naked regardless of what you're wearing.

 

If you turn exhibitionist on and turn off LOS/naked actor requirement, you will gain arousal non-stop as long as there is even 1 NPC near you. Mods like Naked Dungeon and Blush when Aroused that rely on SLA for their naked scan are also permanently triggered.

 

You're just going to have to wait for the fixed release or go back to using SLAR for now I think.

1 hour ago, LinksSword said:

yeah thats unfortunately seems to be the case or in another case my arousal refused to go up unless i striped and was an exhibitionist, it makes mme a nightmare to use since arousal always skyrockets more then it ever did with the old sla. But i did notice that setting to "respectable" seems to calm down arousal gaining a bit.

 

And gender getting aroused at the wrong gender has always been a issue since the old version of sla. It's never mattered from what i experienced. rather you set character to lesbian or straight or what have you any npc will set arousal.

 

And then another case where one npc gets aroused quicker than another despite setting the exposure rate to almost none or having less exposure then the other npc or me. Got to the point where one of my followers was masturbating every in game hour it seemed and would always drop only to 70 or 80 arousal afterwards so.

 

Not sure how that works since his exposure rate was set to low.

While I was testing things earlier I was not only confirming that naked player wasn't counted for NPCs but also that clothed actors were not counting for arousal gain, clothed actors never triggered arousal gains in my testing.

 

However there are 3 keywords that can be added to armour that will make the actor wearing it count as naked for the arousal checks at least. Those are EroticArmor (the same naked armor toggle we know), SLA_ArmorHalfNaked, and SLA_ArmorHalfNakedBikini.

I don't know directly what ones of Bikini, Sexy, Slooty, Illegal, Respectable, or Ragged are the two Half Naked keywords.

Bikini is SLA_ArmorHalfNakedBikini, and Slooty is SLA_ArmorHalfNaked

 

I would check what the keywords in the script are assigned to but my CK refuses to let me look at the properties for the SLA scripts. And the names of the keywords in the script match the names in the MCM but not the names of the actual keywords in the esm.

 

Edit: Nvm that last section I see they are defined in runtime not as properties. Though I still can't load the scripts in the quest to check properties that isn't something I really need to do unless I plan on rebuilding the mod which I don't.

Link to comment
1 hour ago, Tenri said:

While I was testing things earlier I was not only confirming that naked player wasn't counted for NPCs but also that clothed actors were not counting for arousal gain, clothed actors never triggered arousal gains in my testing.

 

However there are 3 keywords that can be added to armour that will make the actor wearing it count as naked for the arousal checks at least. Those are EroticArmor (the same naked armor toggle we know), SLA_ArmorHalfNaked, and SLA_ArmorHalfNakedBikini.

I don't know directly what ones of Bikini, Sexy, Slooty, Illegal, Respectable, or Ragged are the two Half Naked keywords.

Bikini is SLA_ArmorHalfNakedBikini, and Slooty is SLA_ArmorHalfNaked

 

I would check what the keywords in the script are assigned to but my CK refuses to let me look at the properties for the SLA scripts. And the names of the keywords in the script match the names in the MCM but not the names of the actual keywords in the esm.

 

Edit: Nvm that last section I see they are defined in runtime not as properties. Though I still can't load the scripts in the quest to check properties that isn't something I really need to do unless I plan on rebuilding the mod which I don't.

No keywords were used on any armor.

 

If I use Naked Dungeon's own naked status check, it can detect slot 32 properly and updates my character from naked to dressed in vanilla armor (rags in this case). If I turn on the integrated SLA naked armor check and leave the check to SLAX, the debug menu says that I'm naked.

 

SexLab Disparity uses its own check and says I'm dressed properly, so SLAX seems to be the only one with an issue.

 

Looking at your posts, I noticed that you fixed the NPC reaction issue by inserting a new if statement altogether. So rather than saying that NPCs don't react to the naked player, it seems like your correction is making NPCs react to the original boolean and not what SLAX assigns to the player. In this case, the original boolean is working properly, and whatever variable SLAX is using is not being accepted as a valid input.

 

I'm also not sure if you checked for the player's own gains with exhibitionism on; you seem to have only tested for gains while looking at other naked people. Even if NPC reactions are fixed, as long as SLAX is still using its own system to check nakedness for exhibitionism, your arousal should still be incorrectly skyrocketing.

Link to comment
29 minutes ago, Feruano said:

No keywords were used on any armor.

 

If I use Naked Dungeon's own naked status check, it can detect slot 32 properly and updates my character from naked to dressed in vanilla armor (rags in this case). If I turn on the integrated SLA naked armor check and leave the check to SLAX, the debug menu says that I'm naked.

 

SexLab Disparity uses its own check and says I'm dressed properly, so SLAX seems to be the only one with an issue.

I haven't done any tests for how SLAX flags naked player, I will look into it tomorrow if no changes before then.

29 minutes ago, Feruano said:

Looking at your posts, I noticed that you fixed the NPC reaction issue by inserting a new if statement altogether. So rather than saying that NPCs don't react to the naked player, it seems like your correction is making NPCs react to the original boolean and not what SLAX assigns to the player. In this case, the original boolean is working properly, and whatever variable SLAX is using is not being accepted as a valid input.

I did not add a new if statement, the if statement was already there, that is where it would add the player to the list of naked actors to check against viewers. That function was failing for an as of yet unknown reason to me. As part of my fix I had to move a few things before the if statement but the condition is not changed, just what is done when it is met.

29 minutes ago, Feruano said:

 

I'm also not sure if you checked for the player's own gains with exhibitionism on; you seem to have only tested for gains while looking at other naked people. Even if NPC reactions are fixed, as long as SLAX is still using its own system to check nakedness for exhibitionism, your arousal should still be incorrectly skyrocketing.

The exhibitionism arousal increase is done in the exact same function as the viewing naked arousal increase. It updates the viewer's arousal based on preference then in the same function updates the viewed character's arousal if they are exhibitionist. So when the player was never being seen naked, they could never gain arousal from exhibitionism. This means that an exhibitionist actor will gain 2 (base) arousal for every actor that is looking at them every time it runs the viewing naked arousal update, meaning with default settings if you have 10 people looking at a exhibitionist actor they gain 40 exposure every update.

 

This might be too much of an increase but I'm not sure if it is any faster than old SLA. edit: just confirmed it, It should not be any faster than old SLA, the aforementioned function is virtually identical in SLAX to SLAR, the only changes I see are cleaning up the probably excessive comments, the functional flow of the function is the same.

Link to comment

Ok so did a quick check on the function NDun calls to use SLA to determine nakedness, there is a major issue with the function used.

 

It forgets to check if you are wearing a slot 32 armour that is not flagged as naked... It checks wearing 32 that is naked, and wearing bikini armour slots that are flagged as covering, but misses that important check. And not only does that screw up IsActorNakedExtended it by extension screws up IsActorNaked as if the player was flagged as not naked it checks the extended function overriding its own result of player not naked.

 

So in short you were right, the check for player naked was always returning player naked, however clothing works correctly for naked npc's because that check is done differently.

 

Here is another updated script and source (same files as before keeping the changes made previously) I am going to sleep now, if it works let me know (also I deleted the previous download as it is redundant).

 

This file has been removed as redundant see my later posts for an updated download.

 

Link to comment

Further testing shows PC nakedness not affecting NPC arousal with SLAX, even with the patch provided by Tenri. 

 

I tested by having the PC stand completely naked (no clothes) in front of NPCs for several minutes.  For science, you know.  Using SLAX (with or without the patch) NPC arousal did not change.  I reverted to SLA(R) and repeated the test.  NPC arousal increased, as it should.  I reinstalled SLAX and the patch from Tenri and retested.  No NPC arousal.

 

I really want the improvements in SLAX and I like the direction the author is taking with it, but NPC arousal is fundamental to what the mod should do.  For now I'm reluctantly reverting to SLA(R). 

 

I discovered that the patch does work, it just didn't work for me when I dropped it into a game with SLAX already installed.  It worked on an older pre-SLAX save. 

Link to comment
11 hours ago, Tenri said:

I did not add a new if statement, the if statement was already there, that is where it would add the player to the list of naked actors to check against viewers. That function was failing for an as of yet unknown reason to me. As part of my fix I had to move a few things before the if statement but the condition is not changed, just what is done when it is met.

Yeah that was my bad; I skimmed over your post too fast and didn't read it correctly.

 

I haven't gotten around to looking at the code myself; I just made some deductions on what the error could be based on your debug messages and my own observations of how it interacted with other mods.

 

There's still a few hours before I have free time to test it in game, but I'll let you know what happens.

Link to comment
1 hour ago, HexBolt8 said:

Further testing shows PC nakedness not affecting NPC arousal with SLAX, even with the patch provided by Tenri. 

 

I tested by having the PC stand completely naked (no clothes) in front of NPCs for several minutes.  For science, you know.  Using SLAX (with or without the patch) NPC arousal did not change.  I reverted to SLA(R) and repeated the test.  NPC arousal increased, as it should.  I reinstalled SLAX and the patch from Tenri and retested.  No NPC arousal.

 

I really want the improvements in SLAX and I like the direction the author is taking with it, but NPC arousal is fundamental to what the mod should do.  For now I'm reluctantly reverting to SLA(R). 

That is strange as I was definitely seeing npc arousal in my tests from naked player. I will do another test for it.

Link to comment

Yeah did a quick test with my latest patch, after a few minutes of female player standing naked, an actor attracted to males went up around 10 exposure, and one attracted to females went up over 20 about double as one would expect.

 

second test, starting from 0 exposure 0 time rate, naked exhib player, two clothed npc one prefers players gender the other prefers the other gender.

after a couple mins exhib player was at 15 exposure, actor that preferes player gender was also at 15 exposure. (correct gender is 4, exhib is 2 per actor, matching values is expected), npc that prefered other gender was at 7 exposure (incorrect gender is 2, half value is expected)

 

third test, starting from 0 0 again:

one naked exhibitionist npc, clothed exhibitionist player and clothed npc both prefer naked npc gender

after a couple mins, all three actors at 15 exposure (2x2 for exhib, 4 for preferring naked gender, non naked player is not triggering exhib player or additional gains for other actors) all results as expected.

 

final test starting from end of previous (15, 0)

naked exhibitionist npc gender that player and other npc both prefer, naked exhibitionist player gender that naked npc doesn't and clothed npc does prefer. second npc still clothed.

after a couple mins naked npc at 39 exposure (increase of 24), player at 47 exposure (increase of 32), clothed npc also at 47 exposure (increase of 32)

naked npc increase of 24 would be 4 sets of 6 (4 from exhib, 2 from player naked wrong gender), player increase of 32 would be 4 sets of 8 (4 from exhib, 4 from naked npc correct gender), clothed npc increase of 32 would be 4 sets of 8 (4 from each naked npc and naked player) all results once again as expected.

 

So my testing shows that my patch is working correctly at least in my game.

Link to comment

So as far as why it works for me and might not others, I don't know, I redownloaded and replaced my install with the newest version then overrode the slaminscr psc and pex with the files I put in the second patch before doing my testing. I have no other mods that are overriding or being overwritten by SLAX in my load order.

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