Skip to content

Add native skin studio, library and complete editor and picker ownership - #387

Closed
Roxas2712 wants to merge 78 commits into
UNDERdecoded:mainfrom
Roxas2712:codex/upstream-skin-studio
Closed

Roxas2712 wants to merge 78 commits into
UNDERdecoded:mainfrom
Roxas2712:codex/upstream-skin-studio

Conversation

@Roxas2712

@Roxas2712 Roxas2712 commented Oct 28, 2026 •

Copy link
Copy Markdown

The native host lacked the skin library/editor and its real launcher/input lifecycle. This draft builds on #124, #383 and #386, using the existing older native launcher and flat options owner. It includes the complete library/editor and widget/cursor implementation, 62 independently drawn vector icons, real PNG/ZIP import/export, scoped device-preview input and deferred cartridge admission.

Desktop file selection uses the actual capability/pointer-release owner, one-backend cancellation and protected binary reads. SkinStudio keeps original Windows UTF-8 filenames through a readonly Win32 wide-character reader; other generic chooser callers retain their staging contract. The actual Windows test has no dependency on newer services absent from this older base.

Validation:

  • Exact prerequisite ce4a825a: official scripts/test.sh gives 100/110 engine and 3/3 SDK. Exact earlier offered source c23c6627 gives 117/127 and 3/3. The same ten suite failures are reproduced in both.
  • Actual native-owner/public-event tests replace stale fixtures; the earlier independently audited registry pin is retained with section/removal/mutation checks. No production no-op guards or coverage-debt entries are added. See docs/qa/native-stack-test-baseline.md and tests/goldens/fixture_fingerprint.md.
  • Exact tested source fb1519ef: official scripts/test.sh passes 131/131 engine and 3/3 SDK suites, all other available tiers green. ROM-dependent content/link tiers are skipped without generated Red data.
  • Focused repaired contracts pass, including real Game _step/profiling and soft-reset ownership, native twelve-action rebinding, actual quit veto/Android ordering, native update assets plus foreign-payload rejection, animation anchors and public field/hatch/intro/HUD events.
  • Earlier actual offered-source LÖVE12/Apple M3 Metal and OpenGL each pass 18 studio GUI/Test framebuffers, owned PNG save/reload and ZIP import/export, nine on-disk skins and all 62 icons. This is not a current upstream-main or full-window/gameplay/release qualification.
  • Exact offered 1aaeb40b passes the dedicated native-file workflow40734094679: real Windows Unicode file IO24 checks and all portable picker, pointer-release, cancellation and mobile fallback contracts. The one-line root-test repair stops counting a prose comment as a second io.popen call; native picker behavior stays covered. The corresponding fork-source Windows job separately passes25 real-file checks.

Identified Gen1 studio/cursor/widget code and adapted tests retain Copyright(C)2026 BOIS CLUB GAMES, LLC and GPLv3/Section7 terms in licenses/GEN1RECOMP-TOUCH-SKINS.md. Native integration, FilePicker/NativeFile provider and vector artwork contributions by Roxas2712 are offered to Cedric/UNDERdecoded under LICENSE-ROXAS2712.md, subject to existing grants and other authors' rights. Required original-project and contribution credits remain in README and the existing visible native launcher footer. Excluded Gen1 launcher files/art are not included.

Mods and player installations are not modified. Current upstream-main integration, complete Gen1 behavior parity, all conditional unchanged-mod scenarios, physical mobile/Windows GPU and the final packaged release remain open. Do not merge this dependency stack without qualifying its actual combined upstream tree.

# Conflicts:
#	src/mods/Loader.lua
# Conflicts:
#	docs/modding.md
#	src/mods/Loader.lua
#	src/world/WorldAPI.lua
@Roxas2712 Roxas2712 closed this Nov 4, 2026
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