Chronicle - Quests With Branches, on Notices That Draw Themselves, for GameMaker
A downloadable asset pack
Chronicle is a quest system whose quest board is drawn from the quests. It keeps your quests - objectives with counts, branches that end a quest one way or another, prerequisites, faction standing and deadlines - and prints every quest as its own notice pinned to a cork board.
Every image on this page was drawn by the package itself, rendered by the shipped build.
Every notice is composed from its quest
- Who is asking: 10 issuers - crown, guild, temple, merchants, thieves, mages, farmers, harbour, army, hunters - each with its own wax seal, header and ink, printed on its own stock of 6 papers
- What the job is: an engraved picture for each of 12 kinds of job - slay, gather, escort, deliver, explore, rescue, hunt, investigate, craft, defend, retrieve, bounty
- Where it stands: sealed with its requirements written out in words, posted, TAKEN with tape across the corner, REPORT BACK when there is a choice to make, COMPLETED with the branch you took, or VOID when it failed
- How long it has been up: the paper tones, stains, foxes, folds and finally tears at the corner
- URGENT stamps, hours left on a deadline, the reward on a ribbon, a nail or a tack holding it up
Quests with consequences
- Branches: a quest can end more than one way. The choice sets flags, moves faction standing, and posts whatever it unlocked - report the smugglers and a bounty goes up; keep quiet and the thieves send you a job instead
- Prerequisites as short strings:
"quest:wolves=done","branch:cove=spare","rep:temple>=20","flag:gold>=100","!flag:met_king"- an unreadable one is refused by name - Deadlines that fail a quest "out of time", reputation tiers from hated to honoured, and the chronicle: every posting, acceptance, choice and failure in order, for your journal screen
- Save the whole book as one string and load it back
my_book = chq_book_create();
chq_quest_add(my_book, "wolves", { title: "Wolves at the Mill", issuer: "farmers", kind: "hunt",
objectives: [{ id: "pelts", text: "Wolf pelts", need: 5 }], reward: "40 silver", deadline_hours: 96 });
chq_quest_add(my_book, "cove", { title: "Lights in the Cove", issuer: "harbour", kind: "investigate",
objectives: [{ id: "cove", text: "Find the landing" }], requires: ["quest:wolves=done"],
branches: [{ id: "report", text: "Reported the smugglers", rep: { crown: 15 } },
{ id: "spare", text: "Took their coin, said nothing", rep: { thieves: 20 } }] });
chq_accept(my_book, "wolves");
chq_progress(my_book, "wolves", "pelts", 1);
// Draw GUI
chq_draw_board(my_book, 20, 20, 880, 680, "NOTICES");
A runnable demo room is included: a tavern board over a twelve-quest campaign in which one choice decides which of two follow-up jobs is ever posted.
Tested, not just compiled
The in-engine suite reported 121 of 121 assertions on the shipped build: the condition language and its refusals, every quest of the sample campaign through its life, both branches and what each posts, deadlines, reputation, save and load, and real drawing measured in pixels - twelve vignettes and ten seals all pairwise distinct, notices inside their rectangles, a board with no overlaps. The package was imported into a blank GameMaker project and used the way the Readme documents it (21 of 21 checks), 160 hostile calls against its documented API crashed nothing, and every function the Readme names was checked against the package (42 of 42).
Compatibility
- GameMaker 2024.14 or later; built and tested on runtime 2024.14.4.268 (not tested on GMRT)
- Pure GML: no extension, no shader, no sprite. Everything is namespaced
chq_,CHQ_andglobal.chq_ - Two Open Sans font resources (Apache-2.0, notice included) set every printed word
- You get the
.yympspackage, the full readable project, the Readme and the licence
Also from CSAF
Save the run with Colophon, save slots drawn as printed leaves, and light the tavern door with Neon, generated neon signs.
AI disclosure: the code and the generated artwork of this package were written with AI assistance. It contains no audio.
| Published | 1 day ago |
| Status | Released |
| Category | Assets |
| Author | CSAF — Core Systems Asset Factory |
| Made with | GameMaker |
| Tags | branching, GameMaker, gml, journal, no-sprites, parchment, quest, quests, quest-system, sourcecode |
| Languages | English |
| Links | Homepage |
| AI Disclosure | AI Assisted, Code, Graphics |
Purchase
In order to download this asset pack you must purchase it at or above the minimum price of $12.99 USD. You will get access to the following files:







Leave a comment
Log in with itch.io to leave a comment.