Stature documentation
unreleasedMinecraft 26.3Fabric + NeoForge
Stature changes how big a living entity is and how its body is proportioned. A command or a datapack chooses a scale, a box shape and a silhouette; the server owns those numbers and sends them to the clients that can see the entity. Vanilla physics stays vanilla unless a channelChannelOne named number a scale can drive, such as reach or motion. Unset, it follows the base scale raised to an exponent; an override replaces it.See also Scale frame says otherwise.
What it needs#
| Minecraft | 26.3, on Fabric or NeoForge |
| Java | 25 |
| Fabric | Fabric Loader 0.19.5+ with Fabric API 0.162.0+26.3 |
| NeoForge | 26.3.0.76+ |
| Both sides | Stature is required on the client and on the server. A client without it is refused rather than shown a wrong-size world |
| Armature | 1.1.0 or newer, required on both sides. Stature uses its loader seam, networking and config reader |
Do not install Stature beside Pehkui or Pehkui Rebuilt. All of them write the game's
minecraft:scale attribute, and Stature expects to be the one choosing its base value. See
Compatibility.
The pieces#
| Piece | What it is |
|---|---|
| Scale | One uniform number, stored in the game's minecraft:scale attribute. It decides collision, camera height, name-tag height and shadow size because vanilla already scales those |
| Shape | Three multipliers on the entity, one per axis, so a box can be wider, taller or deeper than it is wide |
| FrameScale frameA named size and shape a datapack declares for an entity, with optional part factors, hurt regions and threshold overrides. Stature ships none.See also Rig, Part factor, Hurt region | A named size and shape a datapack declares, with optional parts, hurt regions and thresholds |
| ChannelChannelOne named number a scale can drive, such as reach or motion. Unset, it follows the base scale raised to an exponent; an override replaces it.See also Scale frame | A named number a scale can drive, such as reach or motion. Unset, it either follows the scale by its own exponent or stays off, depending on the channel |
| RigRigA named set of part groups and the model paths each group covers, loaded from a datapack. The built-in stature:humanoid rig is the fallback.See also Part factor, Hurt region | A named set of part groups and the model paths each group covers |
| Part factorPart factorA per-axis multiplier on one model part, or on every part a rig group covers. It changes the silhouette, not the entity's box, unless a frame sets hitbox_from_parts.See also Rig, Scale frame | A per-axis multiplier on one model part, or on every part a group covers |
| ThresholdThresholdOne of the two scale edges that decide when the micro and macro mechanics run. A frame may move either edge for its entities.See also Micro, Macro | The micro and macro edges that turn the tier mechanics on |
| Hurt regionHurt regionA part of a frame's body that takes a different damage multiplier. A region names a rig group, uses that group's fractional box and carries a tag for other mods.See also Rig, Scale frame | A part of a frame that takes a different damage multiplier |
Where to start#
| Page | What it is |
|---|---|
| Commands | Every /stature subcommand, with examples |
| Frames | The frame file format, assignments, precedence and worked examples |
| Channels | The 48 built-in channels, their defaults and what an override means |
| Parts and regions | Rigs, part factors, first-person arms and hurt regions |
| Thresholds | The server config file, the M10 channel options and the micro and macro mechanics |
| Dangerous sizes | Sizes past the game's scale envelope, and how the box and the model separate |
| Compatibility | Pehkui, other scale modifiers, claims, shaders and the client and server rules |
| The Stature API | The supported facade for another mod: sizes, shapes, channels and integration frames |
| API events | The change events, their causes and the ordering and thread guarantees |