Skip to content

Step 15: the tools on maps of our own - #61

Merged
jeany55 merged 1 commit into
trigscript-4from
tools
Oct 23, 2026
Merged

jeany55 merged 1 commit into
trigscript-4from
tools

Conversation

@jeany55

@jeany55 jeany55 commented Oct 23, 2026

Copy link
Copy Markdown
Contributor

TrigScript 4, step 15 of the way off eudplib: everything that read a built map through the Python build's log now reads a map of our own the same way, and every probe is built our way by default.

The two maps from the layout (compiler/backend/maps.ts, buildOwnMap's maps). The trigger map: every trigger of the payload by rising offset, its conditions and actions counted off the bytes as the game counts them, the statement it was made for as "file:line:column", each action's own where a trigger holds several lines' work. The variable map: a row a run (a per-player program's runs each with their owner), each variable's cell out of the layout — a unit its EPD and uniqueness byte (epd), a made text its block's EPD and length, a text of the table its number in the pool (textBase), a growing array its handle and the heap's region as cells, a fixed array its region, a list its data. Said in the Python's own lines, so readTriggerMap, readVariableMap, programVariables, the cost by line, the desync detector, Find an EUD Error and the debugger are unchanged; the editor's build logs them under withVariableMap.

build-fixture on the own build, the default now (EUDPLIB=1 builds through plugin-eudplib as before); the maps beside the map with TRIGGER_MAP/VARIABLE_MAP; MAP_NAME, KEEP_TRIGGERS, STACK_DEPTH/HEAP_CELLS, OWN_FREE; the compile without the emitter's graphs for the own path. test-game, game-check, debug-game, lifted-weigh and bench-lowering run on maps of our own unchanged; build-own.mts is gone.

Held in the lifted game: probes/game-program.ts 3 of 3 in the game (after two faults the first run found: a text of the table read as its pool number, a unit's uniqueness byte kept as the byte); probes/game-debug.ts through debug-game, every check held; game-check on own-triggers and game-emitter: lines named, 0 ending the game, 0 never seen.

The lowering bench's baseline anew: all lines 42,936 ns against 90,559 (−53 %); two lines slower (REF_FIELD_WRITE +20 %, DIV_CONST_R +12 %), in the Open list.

End to end in CI (tests/ownWalk.ts): the built file's payload walked as the game walks the lists, Display Text read from the file's own string table, against the IR simulator frame by frame, and the variables read back through the map — no lifted game needed.

Tests: tests/own-build.test.ts +2, tests/service.test.ts (the maps logged under withVariableMap); the suite green. Docs: README's source table, docs/v4-plan.md ("The tools on maps of our own (2026-10-23)", step 15 ✓, the Open list's leftovers).

🤖 Generated with Claude Code

https://claude.ai/code/session_01En4SHqafb1QFJ4xgbUkAe5

The trigger map and the variable map come out of the layout (compiler/backend/maps.ts),
in the Python build's own lines, so every tool that reads a built map in the lifted game
— sim.program(), the cost by line, the desync detector, Find an EUD Error, the debugger —
reads a map of our own unchanged; the editor logs them under withVariableMap.
build-fixture builds through the own build by default (EUDPLIB=1 for the Python side),
so test-game, game-check, debug-game and bench-lowering run on maps of our own: the
program-variables probe 3 of 3 in the game, the debugger's record held, the bench's
baseline anew (-53%). tests/ownWalk.ts walks the built file as the game does, against
the simulator, with the variables read back through the map: end to end in CI.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En4SHqafb1QFJ4xgbUkAe5
@jeany55
jeany55 merged commit 675e21e into trigscript-4 Oct 23, 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