Context
The board currently infers native-left facing only when no palette entry exists. Basic Proofs, Word Lab, and the FENN example all repeat MIAU: '🐈', so those proofs lose mirroring. The faces palette field already states a custom glyph's native horizontal direction. The 🐈 image has no authored up/down view.
Goals / Non-Goals
Goals: Make the native direction explicit for the built-in cat and have successful horizontal movement face that direction on every board surface. Keep mod glyphs predictable and Undo/reset exact.
Non-Goals: Rotate the side-profile emoji for vertical motion or infer an arbitrary emoji's native direction from its Unicode name.
Decisions
- Resolve native direction from the final glyph: 🐈 used for MIAU or CAT is left-facing even when supplied as a plain string. An explicit palette
facesvalue takes precedence. A different plain glyph stays non-directional. This fixes bundled content without changing the CommonJS schema. - A successful horizontal movement event sets facing to its horizontal direction. A pushed directional actor also faces its actual displacement. If the same actor moves itself later in a turn, its horizontal self direction wins. Vertical movement preserves the last horizontal orientation because the available emoji has no up/down drawing. Blocked intents do not move and do not turn.
- Retain per-ID visual history for Undo and clear it on level load/reset. Rendering compares that direction with the glyph's declared native direction and mirrors only the emoji bitmap.
Risks / Trade-offs
- A platform draws 🐈 with a different native direction → the glyph declaration can be changed in one place; the movement logic remains the same.
- A mod replaces MIAU with a different plain glyph → it will not flip without an explicit
facesdeclaration, avoiding accidental mirroring of front-facing emoji. - Vertical travel lacks a matching emoji view → preserve the last horizontal pose and send a separate design question if a four-direction visual becomes necessary.
Migration Plan
Ship as a presentation correction. Existing packs using MIAU: '🐈' gain forward-facing movement automatically; saved packs and progress require no migration.
Open Questions
- Whether the designer wants a separate up/down direction cue for MIAU in a later visual change.