Skip to content

feat: add Skybound Adventure fullscreen Explore and reference card - #90

Merged
hoainho merged 2 commits into
mainfrom
add-demo/skybound-adventure
Oct 17, 2026
Merged

hoainho merged 2 commits into
mainfrom
add-demo/skybound-adventure

Conversation

@hoainho

@hoainho hoainho commented Oct 17, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Demo: skybound-adventure — Skybound Adventure: The Floating Kingdom.
  • Author: hoainho; commit author hoainho <nhoxtvt@gmail.com>.
  • Add an outer Archive / 2D Games card using the supplied original reference, with Explore Skybound Adventure opening skybound-adventure.html.
  • Port the existing playable PixiJS game into a standalone, full-viewport entry, following the Greenvale host pattern rather than the passive Three.js/Pixi artwork registry.

Fullscreen and gameplay

  • Begin requests native fullscreen during the trusted click. F and the visible fullscreen button toggle it; Esc exits.
  • Native fullscreen owns #game-shell, including canvas, HUD, Back and exit controls. State and aria-pressed follow the actual browser fullscreen element; denied requests retain truthful full-window play.
  • Preserve the 26×42 player, all-13 crystal route, checkpoints and the exhausted-heart fresh-run reset. No simulation setters added; the production DEV handle is absent.
  • Namespace 150 byte-identical runtime PNGs and the manifest beneath public/skybound-adventure/; bundle the original local Press Start 2P font and license. The Archive reference WebP is 155,102 bytes, below 800 KiB.

Verification

  • npm run test:skybound: 53 passed, 0 failed, including all-13 traversal and final-heart resets.
  • npm run build: TypeScript, Vite production build and existing pre/post-build integrity gates passed.
  • node scripts/check-showcase-safety.mjs --base main: no violations.
  • Real production-browser flow: gallery reference loads → Explore → Begin/native fullscreen → live keyboard movement → F/button/Esc exit → Back to gallery.
  • Layout checked at 1440×900, 393×852 and 852×393; canvas fills the viewport, HUD clears navigation, narrow controls are 44×44.
  • Forced native-request rejection stays windowed with visible explanation; a later successful request clears the message. Editable-field F and held-F repeat behavior checked.
  • Runtime HUD images decode and local font loads. Static UI detector warnings concern dynamically assigned image src values, not broken runtime images.

Screenshot

Outer reference card:

Skybound Archive card displaying the original reference and Explore link

Actual native-fullscreen gameplay (captured with document.fullscreenElement.id === 'game-shell'):

Skybound native-fullscreen gameplay

Provenance, scope and limits

  • Art rights not independently established: the reference was supplied with the existing game. This port does not relicense it; maintainers must confirm redistribution rights before merge. Font license is bundled unchanged.
  • Deliberately marked Experiment: source-derived raster artwork, inferred hidden regions/animation, not a procedural Three.js model or recovered original layers. Generic 3D-factory/final-status checklist items are not applicable.
  • Keyboard gameplay only; narrow-viewport checks do not certify real iOS/native-fullscreen or touch controls.
  • An unrelated 408px gallery document width at a 393px viewport remained 408px with the new card removed. No shared gallery CSS was changed; the game itself had no horizontal overflow in the checked layouts.
  • Includes only Skybound, its archive metadata/assets, standalone build input, scoped test runner and README. Unrelated house-tour/tropical-island work and generated build/reconstruction evidence are excluded.

Cleanup audit

  • Removed unused reference-map/player.png; the player layer now names the already-used player-atlas.png. Geometry, simulation and rendered textures are unchanged.
  • Removed the two PR screenshots from the current public/deploy tree. README and PR evidence use their immutable original-commit URLs, which remain accessible.
  • PR net changes: 179 → 176 files; deployed assets reduced by 160,258 bytes. Git history was not rewritten.
  • All 150 remaining PNGs belong to the runtime asset closure, with no missing or orphaned textures. The full-resolution source reference, font/license and regression helpers are retained.
  • Post-cleanup: 53/53 tests, production build and PR safety scan passed; real browser smoke confirmed rendering, movement and native fullscreen. Deleted files are absent from the built output.

Maintainer review

  • Confirm source-art redistribution rights and experiment presentation.
  • Review core workbench/build/package touchpoints and bundle impact.
  • Confirm PR checks before merge.

@hoainho
hoainho merged commit 07c601c into main Oct 17, 2026
1 check 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