Jump to content

Character height changing


Recommended Posts

Posted

I narrowed down what to look for. I deleted lines from sslActorAlias and compiled and the bug went away!

 

So far I know the line that causes it is either in function PrepareActor() or in function LockActor(). I'll start deleting lines one by one and compiling to see which line is the cause.

 

EDIT: Well this is really weird. If I remove everything from PrepareActor() and LockActor() and make them look like this:

 

 

function LockActor()

endFunction

function UnlockActor()
	; Enable movement
	if IsPlayer
		Lib._HKClear()
		Game.SetPlayerAIDriven(false)
		int[] genders = Lib.GenderCount(Controller.Positions)
		Lib.Stats.UpdatePlayerStats(genders[0], genders[1], genders[2], Controller.Animation, Controller.GetVictim(), Controller.GetTime())
	else
		ActorRef.SetRestrained(false)
		ActorRef.SetDontMove(false)
		ActorRef.SetAnimationVariableBool("bHumanoidFootIKEnable", true)
	endIf
	; Remove from animation faction
	ActorRef.RemoveFromFaction(Lib.AnimatingFaction)
	ActorRef.EvaluatePackage()
	; Detach positioning marker
	ActorRef.StopTranslation()
	ActorRef.SetVehicle(none)
endFunction

function PrepareActor()

endFunction

 

 

then the animation starts with both players dressed and not in the right position, but it does start and it plays out and the height bug doesn't happen.

 

But if I delete the contents of either PrepareActor() or LockActor() alone, the bug is still there.

Guest mayaktheunholy
Posted

Liuli has made me aware of this thread, and that FNIS is mentioned as possible culprit. So let me add my 2 cents here.

 

You all seem to be looking for mods being the cause of this isue. Who tells you it is not a basic "feature" of Skyrim? Uncovered because SexLab is using scaling in a way never done before? Ok, Ashal's experience with not having an issue is a counter-argument to what I said. But I remember long time ago that I read about (vanilla) Skyrim temporary re-scaling in certain situations (most notably furniture animations) in order to avoid clipping or floating issues with static objects. 

 

FNIS doesn't do anything with scaling behaviors. At least neither directly nor knowingly. It could of course do it indirect. By sending an AnimEvent under certain conditions which triggers the engine to cause scaling. But then this has to be the same with vanilla animations. FNIS does NOTHING new to the game. It only replicates data structures which are already used somewhere for similar animations.

 

Generally, behaviors seem to do nothing with scaling. In all 2 million lines of behavior xml there are only 2 occurrences of "scale". Both define an AnimEvent "AdditionalHeadScale", But as far as my tool tells me, it's not even sent or received. Not unusual in the behaviors.

 

But I don't think anyway that scaling is a feature of the animation/behaviors and hkx skeletons. It's probably part of the nif skeletons. So if you look into mods causing this, I would rather concentrate on this whole chain

 

animation/behavior -> hkx skeleton -> nif skeleton -> body mesh

 

I have seen nif skeletons (like monli) being changed without any consideration of their embedding, especially with regards to hkx skeletons. I have stated my discomfort about that a few times. But have given up since I'm not an expert on the nif part of Skyrim. So I suggest someone is compiling a list what users hit by this issue are using (the 4 elements of this "chain")  

 

Thank you again for your input, fore. Couple of things I would like to point out though.

 

The scaling done by SexLab is definitely not the issue. SexLab does not do any scaling to creatures, and even if it did I removed any reference to scaling from SexLab's scripts (and recompiled) and it still happened.

 

About the animation/behavior - hkx - skeleton - nif  : the main problem is creatures, at least for me, as they are the most noticeable (have the largest change in size). And the thing with creatures is, people have to be using the *same* animations, and skeletons (the nif skeleton used for creatures is just the vanilla skeleton), and behavior files (the only ones available are the ones that come with SexLab, you have to have the data pack to make it work) and almost certainly the same nifs as well (either vanilla or the extras pack from Gone). I am using the same nifs as I was before when there was no scaling issue, but the new animations and behavior files. So then, why did SexLab 1.15b (and FNIS 4.0/creature pack4.0) work fine, and the current version has the scaling problem?  Something had to have changed in SexLab and/or FNIS since then. And I didn't mean to imply that you did anything "wrong" with FNIS (hell, none of this would be possible without you), it could very well be a game engine issue that wasn't being called up before, but is now after the changes to FNIS (and/or SexLab). The furniture problem sounds entirely plausible.

 

It would be a pain, but one thing to do might be to try an older version of FNIS with the newest SexLab, and/or an older version of SexLab with the newest FNIS (although it might not even function).

 

And it looks like several of us are finding workarounds anyway, so it may not be much of an issue at this point. I just can't leave a problem alone, I have to dig into it and figure it out.

 

 

Edit: I was testing animations with Defeated, matchmaker, and my own dialogue-driven mod which just uses a simple StartSex fragment. The idea was to try mods that called SexLab in different ways to see if that made any difference. It didn't. And as I said, the chaurus and spiders don't have any custom skeleton, using the meshes from the bestiality extras pack.

 

Posted

Edit:

 

I messed some more with sslActorAlias. So far I've discovered that by doing the following...

 

Removing the following line from LockActor():

	ActorRef.SetVehicle(MarkerRef)

And also removing the following line (there are two of this line there) from PrepareActor():

	GoToState("Ready")

Makes the bug go away. The problem then though is that the actors are of course out of position. Deleting one of this lines doesn't make the bug go away, only deleting them both and compiling makes it disappear.

 

EDIT2:

Dug a bit deeper. GoToState("Ready") links to another part of the script.

Under State Ready there's the following line:

		Active = true

Removing it (or changing it to Active = false) together with removing ActorRef.SetVehicle(MarkerRef) from LockActor() fixes the bug yet still the problem remains of the positions being messed up.

Posted
 

 

 

...............

 

Edit:

 

I messed some more with sslActorAlias. So far I've discovered that by doing the following...

 

Removing the following line from LockActor():

	ActorRef.SetVehicle(MarkerRef)

...................

 

 
Liuli, mayaktheunholy: I have prepared a file, and I was just going one of you guys to make a test so we could definitely exclude that FNIS 4.0 was the problem. When I saw Liuli#s post.
 
I think this is a REAL hot track. SetVehicle() does something similar to furniture animations. It fixes a character to an object. So maybe Beth has added this forced scaling just like with furniture anims? I have checked SL 1.12. Ashal already has used 2 pairs of set/un-set vehicle. But in 1.24 there is one more pair. Maybe this new setvehicle is causing the effect?
 
Since this FNIS test I had in mind will take some effort on your side and probably will not bring us closer to a solution, I think we should wait until this track should fizzle out.
Posted

Its ActorRef.SetVehicle(MarkerRef). If you remove all calls to SetVehicle, actors don't scale anymore. But then positoning doesn't work. Actors are here and there and jump and push and twitch. Ugly.

 

So its Bethesda bug :/

 

I'll live with scale bug, because with current SL version, positioning is perfect.

 

Posted

Its ActorRef.SetVehicle(MarkerRef). If you remove all calls to SetVehicle, actors don't scale anymore. But then positoning doesn't work. Actors are here and there and jump and push and twitch. Ugly.

 

So its Bethesda bug :/

 

I'll live with scale bug, because with current SL version, positioning is perfect.

Oh wow you're right. Removing all the ActorRef.SetVehicle(MarkerRef) from sslActorAlias fixes the bug, and the animations actually start in the right position. The problem remaining is that actors can be pushed around by passersby then... Honestly I kinda prefer that happening to the scale problems.

Posted

 

Its ActorRef.SetVehicle(MarkerRef). If you remove all calls to SetVehicle, actors don't scale anymore. But then positoning doesn't work. Actors are here and there and jump and push and twitch. Ugly.

 

So its Bethesda bug :/

 

I'll live with scale bug, because with current SL version, positioning is perfect.

Oh wow you're right. Removing all the ActorRef.SetVehicle(MarkerRef) from sslActorAlias fixes the bug, and the animations actually start in the right position. The problem remaining is that actors can be pushed around by passersby then... Honestly I kinda prefer that happening to the scale problems.

 

 

True, that sounds preferable.  You can always realign the actors if they get pushed plus be in an isolate area.  I mean, if THAT's the only bug left, I'd rather take that, too, instead of the scaling, although I imagine this will have issues when the terrain is uneven.  Actually the whole thing sounds exactly like 1.15 :P

Posted

So my temporary self solution is this - I went through sslActorAlias and changed every ActorRef.SetVehicle(MarkerRef) line into the following:

	if IsPlayer
		ActorRef.SetVehicle(MarkerRef)
	endIf

The sex animations work fine for me now. I'll test this over a longer period of time to see what problems pop up from this (like NPCs pushing me around) and probably post them here in some days.

Posted

Removing SetVehicle doesn't fix the problem, you're just hiding it in that case.

 

I continue my previous stances, the problem isn't with SexLab but being caused by a bad interaction with a different mod.The fact remains that many people have zero problems with scaling going buggy, myself included. Which points to the root of the problem being elsewhere outside of SexLab, and SetVehicle is just the entryway for the bug happening.

 

I won't be removing SetVehicle, it remains a bug only affecting a few and it's inclusion is largely responsible for most of the alignment fixes that came with 1.20, not just stopping actors from being pushed by others, but also locking them into a single plane which helps with aligning on rough terrain immensely and also has a part to play in being able to align the player up and down during animation. It is not a trade off worth it in my opinion, not when the source of the problem for people experiencing it is being caused by something else.

Guest mayaktheunholy
Posted

Removing SetVehicle doesn't fix the problem, you're just hiding it in that case.

 

I continue my previous stances, the problem isn't with SexLab but being caused by a bad interaction with a different mod.The fact remains that many people have zero problems with scaling going buggy, myself included. Which points to the root of the problem being elsewhere outside of SexLab, and SetVehicle is just the entryway for the bug happening.

 

I won't be removing SetVehicle, it remains a bug only affecting a few and it's inclusion is largely responsible for most of the alignment fixes that came with 1.20, not just stopping actors from being pushed by others, but also locking them into a single plane which helps with aligning on rough terrain immensely and also has a part to play in being able to align the player up and down during animation. It is not a trade off worth it in my opinion, not when the source of the problem for people experiencing it is being caused by something else.

 

First, I can't speak for others, but I was not suggesting you make any changes to SexLab based on a problem you can't reproduce. That would be a bit unreasonable I think.

 

On the subject of mods interacting, though. Catchai said he tried a game with only SexLab and matchmaker running and still got the problem. I just did the same this morning. Started a new game, no mods other than SexLab, SkyUI, and matchmaker. Still spiders, chaurus, and wolves at least are re-sizing and staying that way. I even removed dll based mods like HDT physics extension to be thorough. And reinstalled SexLab's scripts to be sure none were still in there that I changed.

 

On that note I have a crazy question. What are the chances that you and others who can't reproduce this are running something that actually *fixes* this issue, so you don't see it? You said before you run a heavily modded game. If this isn't the case, what could be going on? How can we be having this issue with nothing apart from the requirements running, but it doesn't affect others?

 

On the subject of SetVehicle, it was there in SexLab 1.20, I just had a look at the script. And I didn't see this problem in 1.20 if I recall correctly.

Posted

 

First, I can't speak for others, but I was not suggesting you make any changes to SexLab based on a problem you can't reproduce. That would be a bit unreasonable I think.

 

Yes. I think we're just at brainstorming mode to learn more about this bug at this point. :)

 

On the subject of SetVehicle, it was there in SexLab 1.20, I just had a look at the script. And I didn't see this problem in 1.20 if I recall correctly.

 

It was there in 1.20, I first encountered it during the 1.20 beta. It wasn't there in 1.15b.

 

I'd hazard a guess though that there's probably people suffering from this bug and either don't notice it since they mostly start sex scenes with characters their own heights or they had 'even actors heights' turned on to begin with, in which case they'd only notice the bug with some creatures anyways.

 

So far my ifPlayer change solves my problem with uneven terrain the player is involved in, and NPCs don't really engage each other on uneven terrain areas with my mods anyways. Though I don't think it's a good solution for others to use.

Posted

I just want to say thanks Liuli for coming up with the ActorRef.SetVehicle(MarkerRef) trick.  That fixes the scaling issue on my end as well.  You're awesome!

Posted

So I did a fresh install, only mods I am using are Sexlabs framework and defeat, and I swapped defeat out with submit the resizing occurs on both so this is definitely happens somewhere in either sexlabs or one of these mods. This may not be happening to a lot of people but it is definitely happening. 

 

Posted

I've got a potential solution I'd like somebody to test, since I have zero problems with this bug I can't test it myself.
ScaleResetDebugScripts.zip

 

With an existing up to date install of 1.24, Just drop the new scripts folder into your data folder and overwrite the two existing files (sslActorAlias.pex and sslActorAlias.psc)

 

What this does is relatively simple, since the height changing is apparently happening after being attached to the marker with SetVehicle(), I've added an additional call afterward which will set the actor scale back to their default, or to their evened scale if that option is enabled, then at the end of animation, an actor is reset back to their starting scale. This should, in theory, counteract any scaling effects being caused by SetVehicle().

 

Let me know your results.

Posted

I've got a potential solution I'd like somebody to test, since I have zero problems with this bug I can't test it myself.

attachicon.gifScaleResetDebugScripts.zip

 

With an existing up to date install of 1.24, Just drop the new scripts folder into your data folder and overwrite the two existing files (sslActorAlias.pex and sslActorAlias.psc)

 

What this does is relatively simple, since the height changing is apparently happening after being attached to the marker with SetVehicle(), I've added an additional call afterward which will set the actor scale back to their default, or to their evened scale if that option is enabled, then at the end of animation, an actor is reset back to their starting scale. This should, in theory, counteract any scaling effects being caused by SetVehicle().

 

Let me know your results.

 

I had this issue as well and while I wasn't particularly bothered by it I gave the modified script a go and it fixed my scaling issues perfectly. Tested both with a short PC (0.9 scale) and a large wolf (1.3 scale). While they did still reset briefly to 1.0 scale during the aligning phase (which was to be expected) they successfully returned to their proper values before they started animating. It's also worth noting that before hand I had also tried rescaling actors via console during an animation and they would revert to to 1.0 at the beginning of the next animation stage. With this fix they remain the proper scale from one stage to the next without even the brief scale reset noted when the animation first begins.

Seems to be working as intended for me. Thanks for the fix.

Posted

I've got a potential solution I'd like somebody to test, since I have zero problems with this bug I can't test it myself.

attachicon.gifScaleResetDebugScripts.zip

 

With an existing up to date install of 1.24, Just drop the new scripts folder into your data folder and overwrite the two existing files (sslActorAlias.pex and sslActorAlias.psc)

 

What this does is relatively simple, since the height changing is apparently happening after being attached to the marker with SetVehicle(), I've added an additional call afterward which will set the actor scale back to their default, or to their evened scale if that option is enabled, then at the end of animation, an actor is reset back to their starting scale. This should, in theory, counteract any scaling effects being caused by SetVehicle().

 

Let me know your results.

 

 

Fixed the scaling issues for me, thank you. I only recently started having scaling issues (or I didnt notice them before?), its not a big deal but hey it looks way smoother now, thanks again. :)

Posted

I've got a potential solution I'd like somebody to test, since I have zero problems with this bug I can't test it myself.

attachicon.gifScaleResetDebugScripts.zip

Gave this  some testing. Characters grow/shrink  before sex start and immediately revert to their real size, and they also grow/shrink every time the animation advances a stage, again immediately reverting. The grow/shrink effect is near instantaneous, it's sort of like blinking every 10~15 seconds during the animation's length.

 

All in all a good fix, though. :D

Posted

 

I've got a potential solution I'd like somebody to test, since I have zero problems with this bug I can't test it myself.

attachicon.gifScaleResetDebugScripts.zip

Gave this  some testing. Characters grow/shrink  before sex start and immediately revert to their real size, and they also grow/shrink every time the animation advances a stage, again immediately reverting. The grow/shrink effect is near instantaneous, it's sort of like blinking every 10~15 seconds during the animation's length.

 

All in all a good fix, though. :D

 

 

Same here, although I didn't test extensively yet, only tried the nearest NPCs.  So far it works nicely though.

  • 3 weeks later...
Posted

Wow this thread has been a big help to me.  I have been having this very same problem with a few exceptions.  My PC would only change size when the even actor height was turned on.  However all other characters that were a non standard size would adjust at the same point that has already been pointed out in this thread(around the set/lock position stage before the animation started.)  If my PC interacted with a NPC that was set to the same nonstandard size, then the NPC that was my size then changes size while my PC stays the same.  Even though they started out at the same scale only the NPC was effected.  

 

I have tried the sexlabutil1 with moderate success. When "change scale at start to 1" is selected an NPC that was doing a solo scene would flash the wrong size and then complete the scene the proper size. However a scene involving multiple characters and it would not play out the proper size.  If "change scale at end to 1" was selected the scene would play out at the wrong size, but the characters would return to their normal size.  This where I first encountered my current big problem.  The first person camera is at the wrong height.

 

 I have done the replacement with Ashal's ScaleResetDebugScripts and replaced the sslactoralias files.  This does a great job of fixing the original scaling problem. But leaves me with the wrong first person camera height just like the other fix.  The third person camera goes unchanged and still works perfectly.  Only the first person camera height is effected.  From the looks of things the new first person camera is moved to the height of the base scale value.  So if my character has a base of 1.10 then the camera is raised to the level the character would be if I typed player.setscale 1.10. In addition when that is entered into the console the first person camera is then raised further keeping the same distance above the PC head that it had at player.setscale 1

 

Looking through the script I don't know what would be effecting the first person camera like that.  A possible solution that I can think of is being that my PC was not effected the original scaling problem, is to set the added scaling to only effect npc actors instead of all actors.  What do I need to add/change in the script to do that?  

  • 6 months later...
Posted

This doesn't work for 1.58b. The .pex and .psx files are completely different between the two versions. Different formatting, new programming, etc. The "fix" just breaks everything.

Posted

I just started experiencing this with NPCs (using 1.58b).

 

Even actor height is off. NPCS that are scaled above or below 1.0 shrink or grow when the animations start. When the animations end they return to their assigned size.

Posted

same thing here, its scaling to 1. i dont understand why it bothers to fiddle with scale if the average scale option isnt set. if it causes position problems, isnt that what the adjust keys are for? wouldnt the code be faster without this scaling ? would copying the stuff about calculating scales from the fix psc to the 1.58b psc and recompiling sslActorAlias.pex work? (i wouldnt try it without backing both those up first tho)

 

my main problem is if they scale them up the npc seems to have big heads lol.

 

answer is no. the compile failed endif expecting END FUNCTION. i dont know this stuff so i was expecting failure. but this scaling thing is slightly annoying. maybe we should ask for a no rescaling at all menu option

 

Posted

Ever since updating to the new 1.58b version I too have been having this problem again.  I've followed the FAQ troubleshooting guide and still haven't been able to fix my custom height NPCs from automatically scaling to 1.  At least this time the NPCs do return back to their original size after the animations end, and it only seems to be affecting NPCs.  When I create a new character at a custom height, they seem to be immune to the automatic rescaling.  If I click on the affected NPC and type setscale 1 in the console during the animation they do return to their correct height, but only until the next stage of the animation starts or an adjustment key is pressed. 

 

I've tried reinstalling skyrim from scratch and redownloading sexlab, only using its requisite mods to try and narrow it down thinking maybe its an issue with the skeleton/SOS mods, but no matter what I do the NPCs will always automatically scale as if the rescaling option is enabled (even though it isn't).  After all that and trying all the suggestions from the troubleshooting FAQ, I'm all out of ideas of what could be causing it and how to fix it.

 

Anyone else have any thoughts or ideas on what might be the issue?

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...