Skip to content
bryanthaboi edited this page Sep 9, 2026 · 1 revision

Tutorial example bundles

Tutorial 00 lives directly in tutorial-00/. Each later tutorial-XX/finished/ directory is a complete mod folder. Copy every file in that directory into one empty mod folder; do not mix files from two finished bundles. Download individual files from the matching raw wiki URL, for example https://raw.githubusercontent.com/wiki/bryanthaboi/gen1recomp/examples/tutorial-02/finished/main.lua. These files remain review-only until this wiki is published.

Tutorials 06, 07, 08, and 11 are snapshots of one mod, tutorial_world. For each lesson, replace the installed folder with that lesson’s start/ or finished/ directory. Enable exactly one snapshot at a time. Its save values belong to that one mod; do not try to combine the snapshots as separate mods.

The Emberkit PNG files in Tutorials 03 and 12 are original project sample art, copied from the engine repository’s mods/examples/example_mini_conversion/ and generated there by its tools/make_assets.py. They are not imported or generated ROM assets. Do not add files from data/generated/ or assets/generated/ to any bundle.

Validate from the engine checkout without installing a bundle into its live mods/ directory:

python3 tools/modkit.py validate /path/to/wiki/examples/tutorial-02/finished --base imported

These are local single-player lessons. Link Play uses the launcher’s vanilla cart or sealed custom-cart workflow. A sealed custom cart may contain its authored mods; freely enabled arbitrary mods are not supported for Link Play.

Recheck the examples

From the engine checkout with Red imported, run these headless checks:

luajit ../pokemon-gen1-recomp-project-wiki/examples/tests/tutorial_integration_test.lua shop
luajit ../pokemon-gen1-recomp-project-wiki/examples/tests/tutorial_integration_test.lua world
luajit ../pokemon-gen1-recomp-project-wiki/examples/tests/tutorial_integration_test.lua ui
luajit ../pokemon-gen1-recomp-project-wiki/examples/tests/tutorial_integration_test.lua mechanic
luajit ../pokemon-gen1-recomp-project-wiki/examples/tests/tutorial_integration_test.lua capstone
luajit ../pokemon-gen1-recomp-project-wiki/examples/tests/cookbook_integration_test.lua

These commands assume the engine and wiki have the sibling folder names shown. The tutorial test also uses that relative layout to locate bundles. They check loaded records, script/state behavior, collision paths, menu composition, and selected item/status callbacks. They do not render graphics, play audio, or complete a live battle. The in-game checkpoints on each page cover those remaining observations. The headless harness can print missing-font warnings because it does not load the game's graphical font assets.

From any directory, run python3 /path/to/wiki/examples/check_wiki.py for Markdown page/anchor, raw example target, fence, and complete-JSON checks. External URLs are not fetched. To publish the downloads, include examples/ in the wiki alongside the Markdown pages; local validation does not publish those URLs.

Clone this wiki locally