66 lines
3.7 KiB
Markdown
66 lines
3.7 KiB
Markdown
# Lab notes
|
|
|
|
The project's engineering notebook: what was found in `groove.exe` and the game data, how each part
|
|
of LlamaMod works, and what was verified in the game. The notes are detailed and technical (with
|
|
addresses, confidence levels and test logs). For a readable introduction start with the
|
|
[documentation](../docs/README.md) instead.
|
|
|
|
Images used by the notes are in [`img/`](img/).
|
|
|
|
## Formats and engine
|
|
|
|
| Note | Topic |
|
|
|---|---|
|
|
| [geometry.md](geometry.md) | TRAK / MAP / STPC models, coordinate spaces, collision, visibility, writing new geometry |
|
|
| [objects.md](objects.md) | MAP layout, strat records, waypoints, zones, special objects, the other chunks |
|
|
| [textures.md](textures.md) | TEXT chunk |
|
|
| [strat-opcodes.md](strat-opcodes.md) | all 434 strat VM opcodes, conventions, sources |
|
|
| [strat-language.md](strat-language.md) | LlamaMod's strat assembly, script view and script language |
|
|
| [strat_types_table.md](strat_types_table.md) | every object type in every level, with counts |
|
|
| [editor-object-schemas.md](editor-object-schemas.md) | parameters of object types, guards, event bits, start camera |
|
|
| [testlevel-chapters.md](testlevel-chapters.md) | world 9 chapters and the relocation patch |
|
|
| [levelbau.md](levelbau.md) | the Python level builder, measured physics, the exit, the test world |
|
|
| [debugviz.md](debugviz.md) | debug view: colour legend, how it is built |
|
|
| [testharness.md](testharness.md) | `tools/lamatest.py`, PC controls |
|
|
|
|
## LlamaMod app and mods
|
|
|
|
| Note | Topic |
|
|
|---|---|
|
|
| [llamamod-app.md](llamamod-app.md) | build, CLI, data folder, registry, mod framework, exe patches, save games, `tools/apptest.py` |
|
|
| [mod-arena.md](mod-arena.md) | Alligator Arena |
|
|
| [mod-coaster.md](mod-coaster.md) | Llama Coaster (roller-coaster ride; how the original rides work) |
|
|
| [mod-testworld.md](mod-testworld.md) | Test World and its gallery |
|
|
| [mod-levels.md](mod-levels.md) | level projects as mods |
|
|
| [mod-boottolevel.md](mod-boottolevel.md) | Boot to level |
|
|
| [mod-introskip.md](mod-introskip.md) | Intro skip |
|
|
| [mod-mirror.md](mod-mirror.md) | Mirror mode |
|
|
| [mod-practice.md](mod-practice.md) | Practice tools |
|
|
| [mod-randomizer.md](mod-randomizer.md) | Randomizer |
|
|
| [mod-fog.md](mod-fog.md) | Draw distance |
|
|
| [mod-cheats.md](mod-cheats.md) | Built-in cheats |
|
|
| [mod-freecam.md](mod-freecam.md) | Free camera & noclip |
|
|
|
|
## Level editor internals
|
|
|
|
| Note | Topic |
|
|
|---|---|
|
|
| [editor-design.md](editor-design.md) | design brief |
|
|
| [editor-api.md](editor-api.md) | scene model, commands, IO |
|
|
| [editor-format.md](editor-format.md) | the `.llamalevel` project format |
|
|
| [editor-render.md](editor-render.md) | OpenGL viewport, coordinate conventions, culling |
|
|
| [editor-ui.md](editor-ui.md) | application shell and plugin API |
|
|
| [editor-tools-geometry.md](editor-tools-geometry.md) | brushes, tiles, collision, mesh import, library |
|
|
| [editor-tools-objects.md](editor-tools-objects.md) | objects, paths, cameras |
|
|
| [editor-tools-environment.md](editor-tools-environment.md) | zones, fog, music, lights, visibility, baking |
|
|
| [editor-tools-textures.md](editor-tools-textures.md) | texture manager, import, painting, animations |
|
|
| [editor-cross-import.md](editor-cross-import.md) | importing object types from other levels, engine limits |
|
|
| [editor-playtest.md](editor-playtest.md) | play-test straight into the level |
|
|
| [editor-manual.md](editor-manual.md) | the manual window and context help |
|
|
| [editor-guide.md](editor-guide.md) | early short user guide (superseded by [docs/manual](../docs/manual/index.md)) |
|
|
|
|
## Process
|
|
|
|
[`dev/`](dev/) holds the briefs for the AI agents that worked on the project and the review reports
|
|
of the overnight UX and bug reviews (`bug-review-*.md`, `ux-review-*.md`).
|