Timaflakkarinn - Icelandic history adventure game
- Python 78.2%
- HTML 21.8%
Tímaflakkarinn (Dímon) shipped in 1998, with a v1.1 in 1999. This repository is the canonical home of the project to recreate it as a web app. CONTENTS Archival mirror (web_import/) — a derivative capture of the deployed prototype at https://835c0363.timaflakkarinn.pages.dev, taken 2026-07-25 UTC: the six chapter GML files, scene.dtd, the application shell, the bundle index-CXa83YST.js, and 1213 media assets under GAME/ tracked in Git LFS. Asset paths were derived from the file= attributes in the GML and passed through the engine's own resolvePath() as read from the deployed bundle, not guessed. Every file was validated against the Cloudflare Pages SPA fallback (which returns HTTP 200 with index.html for missing paths) and against PNG/RIFF-WAVE magic bytes; failures were retried once, and files that failed validation were never written, so no HTML masquerades as a .PNG or .WAV here. The two mouse cursors, GAME/COMMON/BENDILL1.PNG and BENDILL2.PNG, were recovered separately on 2026-07-26. They are hardcoded in the engine constructor rather than referenced from any .gml, so a file list derived from file= attributes could not see them; because index.html sets `cursor: none`, the game rendered no pointer at all. Both were fetched from the same deployment and validated as 30x30 PNGs. Four assets are referenced by the game but absent from the deployment and could not be recovered — one of them only from a commented-out declaration. See web_import/PROVENANCE.md. Documentation (docs/) — engine-and-gml.md describes how the current web engine implements GML: runtime and chapter model, asset path resolution (DOS 8.3 short names, chroma-keyed transparency, non-fatal image loads), the object model, the Sequence/Quantum control flow, and the verb and interaction system. project-state.md records what was verified and what is open, worst first: no engine source in the repository, the unimplemented GuessQuantum that likely soft-locks the Völva puzzle, absent save/load, the missing voice lines, and a typo'd quantum reference at landnam.gml:3028. ownership-and-provenance.md records who owns the work and the intent to open source it. git-hosting-decision.md records why the project self-hosts on Forgejo. Tooling (tools/) — lint_gml.py checks the chapters against the engine's real behaviour rather than the DTD, which is why it reports 5 problems where a naive pass reports 715: action_* are engine built-ins, auto-created states are a deliberate idiom, and most apparent violations sit inside XML comments. PROVENANCE GML is an XML format the original team developed to describe the gameplay, and it shipped readable on the CD along with the media. Halldór started this project from the CD, reverse-engineering the underlying engine and building on those open assets; the original Java engine is lost. The files under web_import/ are a derivative capture rather than original masters — they have been through a build and deployment pipeline and may have been re-encoded, renamed or path-normalised. Two primary sources sit upstream and take precedence where they disagree: the original CD-ROM ISO, and the engine source, present here only as a minified build artifact. Both are inputs to this repository rather than replacements for it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| docs | ||
| tools | ||
| web_import | ||
| .gitattributes | ||
| .gitignore | ||