Skip to content

docs: add appearance guide - #14

Merged
Kheartz merged 1 commit into
hogwarts-mp:mainfrom
Kheartz:appearance
Oct 14, 2026
Merged

Kheartz merged 1 commit into
hogwarts-mp:mainfrom
Kheartz:appearance

Conversation

@Kheartz

@Kheartz Kheartz commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

Third of three stacked PRs. #12 and #13 have merged, so this is now based on main and its diff is this page alone.

Adds Appearance to the Players section (order 33), written for 1.8.2 and checked against the v1.8.2 Mod source:

  • The look: getLook() fields, playerAppearanceChanged(player, look, revision), appearanceRevision.
  • Saving and restoring looks:
    • Nothing is saved and players join as the default character, so the sample restores on loadingFinished.
    • It doesn't save until the restore is done, because the first look a joining player sends is the default.
    • It skips looks with no presets.
    • It notes that setLook replaces the whole look; that the callback runs after the rebuild (20 s timeout); and that it throws INVALID_APPEARANCE without a callback.
    • A look's gear and house don't dress the player's own body. Clothes come from the inventory and the house from player.house.
  • The character creator: Creator.open() and the creatorConfirmed / creatorCancelled client events. A disguise pauses look publication, so take it off first. A short note covers script sessions, CreatorPreview and Portrait.
  • Clothes, house and gender, size, disguises, props:
    • Gear covers player.gear.apply, inventory.give(..., { equipped: true }) and playerGearChanged.
    • player.house changes robes and crest. player.gender only sets the dormitory.
    • setScale has full and visual modes.
    • setTransmog should be checked with Character.isAllowed, isn't part of the look, and setLook removes it.
    • equipProp drops a prop sent before the player has a body.
    • All of these last for the visit only.

Also fixes the events table, which named playerAppearanceChanged's second argument blob; it is the parsed look.

Checks: check_samples (116 samples, 1.8.2 contract), docs.mjs build, check_links and git diff --check all pass.

@Kheartz
Kheartz changed the base branch from main to mounts-and-races October 14, 2026 03:34
New Players page (order 33), written against 1.8.2: the look and playerAppearanceChanged, saving and restoring looks without saving the default first, the character creator and portraits, clothes as gear, house and gender, size, disguises and held props. The events table now names playerAppearanceChanged's look argument.
@Kheartz
Kheartz changed the base branch from mounts-and-races to main October 14, 2026 03:41
@Kheartz
Kheartz merged commit 9729f1e into hogwarts-mp:main Oct 14, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant