RaceMenu High Heels - explained. (2024)

Writing of this has been prompted by the general amount of confusion around the purpose ofRaceMenu High Heels (Height Fixes)(RMHHF) mod by ousnius.

Specifically, if one looks at the "Mods requiring this file" section of RMHHF, you see that a lot of mod authors put in a comment "Needed to keep the heels from sinking into the ground". You can also see such statements as "this functionality is now included in RaceMenu, so this mod is now optional".

The grand irony is that the purpose of RMHHF is, and ever was, to MAKE the heels SINK into ground.

The source of this confusion lies mostly in the way RMHHF description is organized. Out of the entire description, only a single line is about the mod itself and what it does:

This mod contains a few fixes for said system, such as correcting the sitting and swimming height while wearing high heels

The rest is about what RaceMenu does, and how to make high heel mods work with the wearable transforms system. Additionally, RMHHF lists RaceMenu as requirement, which sort of makes the misconception self-fulfilling.

Here, I will try to explain in more detail, how this is all organized.

RaceMenu by Expired is a massively popular mod that most associate with greatly extending character customization options - including advanced edits such as 3D sculpting and also using and creating presets. RaceMenu includes skee64.dll SKSE plugin, which is responsible for a lot of things. Among them, is something called 'wearable transforms'.

The wearable transforms system examines mesh (.nif) files of any object equipped by an actor, looks for specific extra tags, and upon finding, applies NiOverride transforms with "internal" key to specific skeleton nodes. Generally, the tag it looks for is a string in JSON format, titled 'SDTA'. But it also watches out for a few 'special cases' such as 'HH_OFFSET'. If an actor puts on shoes that have 'HH_OFFSET' extra data tag with a value of 7, skee64 will apply a positional (0,0,7) transform on the actor's root ("NPC") node, which will shift actor position by 7 points along Z axis (up). If you open the shoes mesh file in either NifScope or Outfit Studio and turn on the floor grid, you will notice that wearer heel is at ground level, and high heel itself extends below the floor. Thus 'sunk into ground' is the default state, and the Racemenu-applied wearable transform is what lifts them up.
The key of the transform is a string which identifies which mod owns which transform. This allows different mods to keep track of their own transforms and analyze what other mods may be contributing.

Above paragraph may sound like a bunch of tech jargon, so the simple version is:

  • RaceMenu finds the 'HH_OFFSET = X' bit in the equipped mesh file.
  • RaceMenu adds an adjustment that permanently lifts the wearer up by X points.

So it is RaceMenu, NOT RMHHF, that 'keeps heels from sinking into ground'

The problem, however, is that as long as heels are equipped, the entire actor is lifted up at all times. Which is great when the actor is standing/walking/running/fighting. Not so great when the actor is doing pretty much anything else. Their butt floats a few inches above chairs or benches when sitting. When leaning on a counter, they lean on empty air. When sleeping, they hover above the bed. And so on.

To prevent this, one needs a correcting mod. And that is exactly what RMHHF is. It is a correcting mod. It applies a script effect on the player and all NPCs in certain radius of player. This effect monitors for when its subject:

  • Equips or unequips an item
  • Mounts or dismounts a horse
  • Starts or stops swimming
  • Starts or stops interacting with some furniture marker.

When any of the above occur:
If actor has a RaceMenu-added root transform AND actor status is Sitting, Swimming or Riding
RMHHF adds an opposing root transform.
Otherwise, if actor has an RMHHF-added root transform
RMHHF removes its transform.

Example:
onSit event occurs on the actor. Actor status is now 'Sitting' and actor has a (0, 0, 7) root transform from RaceMenu ("internal" key):
RMHHF applies a (0, 0, -7) transform on the root under "RacemenuHH" key. The two mutually cancel and actor height is now back at 0. Actor is now aligned to the furniture they are using. As a downside, depending on their pose, their high heels may now be sunk into the ground, but that is not as visually bad as say, actor hovering above a chair.

onGetUp event occurs on the actor. Actor status is no longer 'Sitting' and actor has a"RacemenuHH"-keyed root transform:
RMHHF removes this transform. The "internal"-keyed (0, 0, 7) root transform remains, so actor is lifted back to height 7.

And that is what RMHHF does, in a nutshell. Not responsible for 'keeping heels from sinking into ground' - that is RaceMenu's job - but responsible for removing the heel elevation when it is not needed. And you do want to use a correcting mod in order for high heels to look good.
But it does not have to be RMHHF. RMHHF is the oldest and most well known, but it is rather basic, and there are better alternatives.

Misc High Heels Sitting Height Fix is an SKSE plugin (.dll) that alters actor's posture, typically by elevating knees and bending legs at a sharper angle. It works quite well, but unfortunately was never updated for Skyrim AE or VR, and its author has apparently left the scene. If you are staying with Skyrim SE 1.5.97, it should still work for you.

Heels Fix (this mod) was born when I updated to AE, and Misc HH fix stopped working for me. Heels Fix is written using RMHHF as base for correcting effect delivery, but the correcting algorithm itself is a lot more complex. It determines exactly what sort of interaction is taking place, and decides what sort of correction should be applied. I.e. when sitting on a chair, it will push the root node down so that actor's bottom is not hovering. And it will also rotate legs at the hip up a bit bringing the knees - and the heels - up. However, if leaning on a counter, it will leave the root elevated, but will apply rotation on the spine to make the actor lean a bit more forward. For many markers - i.e. beds - it just cancels the root elevation. And for some - such as leaning against a wall - no correction is applied. Heels Fix is Papyrus-based, so as long as you have proper versions of SKSE/RaceMenu etc, it works fine for SE, AE or VR.

Thanks for reading, and I hope you found this useful.

RaceMenu High Heels - explained. (2024)
Top Articles
Latest Posts
Article information

Author: Zonia Mosciski DO

Last Updated:

Views: 6192

Rating: 4 / 5 (51 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Zonia Mosciski DO

Birthday: 1996-05-16

Address: Suite 228 919 Deana Ford, Lake Meridithberg, NE 60017-4257

Phone: +2613987384138

Job: Chief Retail Officer

Hobby: Tai chi, Dowsing, Poi, Letterboxing, Watching movies, Video gaming, Singing

Introduction: My name is Zonia Mosciski DO, I am a enchanting, joyous, lovely, successful, hilarious, tender, outstanding person who loves writing and wants to share my knowledge and understanding with you.