Hands-on onboarding for game packages. Sample project: src/games/example/. Deep behaviour lives in systems/; authoring how-to in guides/.
Prerequisites
- Build and run the sample (editor or game): see Build and packaging.
- Prefer
bin/kaji/kaji editor --workspace=<repo> --project=src/games/example …so Play/Edit and scene authoring are available. - Game code imports
@import("hikari_game")only (Architecture).
Learning path
Core
| # | Tutorial | You will |
|---|---|---|
| 1 | First project | Lay out a game package and ProjectConfig |
| 2 | First entity | Author Zig, Kawa, and mixed actors; place them in a scene |
| 3 | First user_data | Inspector properties, transient fields, onChanged |
| 4 | First mesh and material | asset:// / AssetRef render binds and soft placeholders |
| 4b | Game-facing refs | AssetRef / ContentRef / PrefabRef / ActorRef + sample scenes/refs_demo.json |
| 5 | First physics | Dynamic bodies, triggers, onCollision |
| 6 | First character controller | Capsule CCT, desired velocity, grounded |
| 7 | First session services | Cross-scene state and HUD (not a “global entity”) |
| 8 | First UI | Immediate UI from a scene entity or the session |
| 9 | First input action | Bind a key and read it from Zig or Kawa |
| 10 | First messages | hi.actors / Actors.* — send / emit between Zig and Kawa |
| 11 | Play, Edit, and scenes | Mode rules, replace/additive load, Stop restores the document |
Next
| # | Tutorial | You will |
|---|---|---|
| 12 | First runtime spawn | hi.world().spawn / SpawnDesc, Global hierarchy group |
| 12b | Data, JSON, and modding | Loose resources/ table → spawn cubes (sample scene scenes/runtime_spawn_showcase) |
| 13 | First motion | Tween / motion.wave on entity or HUD state |
| 13b | First skeletal animation | Skinned glTF cook → ComponentAnimation → clip or animation graph |
| 14 | Assets in Play | Soft refs and deferred hot reload during Play |
| 15 | Dynamic editor recompile | When Recompile is enough vs full editor rebuild |
Where tutorials stop
Tutorials stay narrow: one seam, one working path. For contracts and edge cases, follow the “See also” links on each page (scenes, session services, UI authoring, messaging, scripting, assets).