Jump to content

Dynamically altering skeleton with NetImmerse(Override?) ?


Recommended Posts

Hi! So, I've got quite a unique dilemma.

 

I'm attempting to make a werewolf replacer. So as not to interfere with other mods, I used the vanilla transform spell as the base (and didn't do ANY edits to it.) However, I have an added magic effect that is put on the character that detects when you transform into werewolf. If you do, it swaps the ArmorAddon with a custom one.

 

That's working fine, except... My model looks very similar to how the Randy Savage model in Macho Dragons did - it was super stretched out and looked bizarre. I'm attempting to make a more humanoid looking werewolf, and thus I want to use something as close to the base skeleton as possible.

 

The first way I thought to tackle the problem: Call another racechange to one with the skeleton I want. This doesn't work as it bugs out the vanilla werewolf ability (it thinks you untransformed and locks you in wolf form forever.) So that's a no-go.

 

My current attempt is to use NetImmerse or NetImmerseOverride to dynamically manipulate the skeleton nodes to the positions I want them in, so that I don't have to call a racechange.

 

As for NetImmerse:

Calling SetNodeLocalPosition#() doesn't appear to do anything at all.

 

As for NiOverride:

I'm assuming I can achieve what I want with the AddNodeTransformPosition() function. My problem is that I don't quite understand all of the data types that the function is asking me for.

 

Function AddNodeTransformPosition(ObjectReference akRef, bool firstPerson, bool isFemale, string nodeName, string key, float[] pos) native global

 

akRef = My actor to shift the nodes on, got that

firstPerson = false, werewolf is third person

isFemale = I am using a bool that utilizes ThisActor.GetActorBase.GetSex()

 

nodeName = A little confused about this one. I know it's asking for a string value, but what kind of data do I feed it? For the neck for example, would I put "NPC Neck" or "NPC Neck [Neck]" as it is in nifSkope? Or something else?

 

key = Very confused as to what it's actually asking for. Some string value, but I have absolutely no idea. Does anybody know what data it's asking for?

 

pos = Easy - an array float (which I have set)

 

 

All of my attempts thus far have not had any effect, so I was hoping maybe some kind soul could help shed some insight on what the key string is, and the proper notation for nodeName.

 

Very much appreciate any help, as documentation on NiOverride seems to be sparse.

Link to comment
Share on other sites

  • Recently Browsing   0 members

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