
Chapters, quests and storylines from datapack files, played entirely on a vanilla client. A quest is offered by a person standing in the world, or a block, or a place you walk into; it is told in beats, with choices that branch and consequences the world remembers; and it ends, sometimes, in one of several endings. Chronicler is the quest mod for people who found FTB Quests a checklist and wanted a story.
Your players do not need to install anything. Offers arrive on the action bar and in chat with clickable buttons, progress is tracked on the action bar, the journal is a written book handed to every new player, choices are buttons, and completions are a title card. A player who does install Chronicler gets the journal as a panel on the backtick key: chapters with their quests under them, a quest map of what leads to what, and a page per quest with its buttons. That is sugar; nothing is required.
! on offer, ? while you are on
it, a tick once it is done.
Chronicler ships with ZARP, built for CityWorld's apocalypse cities, ZombieMod and the LegendQuest Wasteland pack, and playable without any of them. A camp of five near spawn, a fire in the middle of it, four acts through the streets, the hospital, the Nether and the End, a finale with three endings, a side chapter whose refusals have consequences (leave the mechanic without his parts and come back to find a nest where the garage was), a bounty board, and a handful of new undead for the wards and the fortresses, including a Patient in a gown and a surgical mask. It turns itself on when ZombieMod is present. It is also the worked example: every mechanism above is in it, in readable JSON.



A quest is a JSON file in a datapack, or YAML under config/chronicler/. Every word a player sees
lives in messages.yml, so a fantasy server says Quests and Chapters while a wasteland says
Missions and Acts.
name: Night Watch
chapter: prologue
stages:
- text: Get a light. The dark is not empty.
objectives: [ { type: collect, item: minecraft:torch, consume: false } ]
- text: They found you. Hold until it is quiet.
on_enter: [ { type: spawn, entity: minecraft:zombie, count: 2 } ]
objectives: [ { type: kill, target: minecraft:zombie, count: 2 } ]
- text: A stranger asks for your torch.
choices:
- { label: Give it, effects: [ { type: karma, delta: 5 } ], ending: kindness }
- { label: Keep it, effects: [ { type: karma, delta: -5 } ], ending: cold }
Restart the server and it is there. /quests lists what is loaded, /quest alone says what you
are doing now, and the journal (a book, or a panel on a client with Chronicler) does the rest.
Standards and Cast are required; the other three are optional, and Chronicler says so when one is absent.
chronicler:flag spawn condition it can use, so finishing a
storyline changes what spawns./quest (and /quests) is for players: list, info, accept, abandon, track, choose,
journal, replay, and alone, what you are doing now. /chronicler administers: status (what
is loaded, what is detected, which build this is), reload (messages), flags, quest items, a
journal for someone, a reset.
| Minecraft | NeoForge | Java |
|---|---|---|
| 1.21.11 | 21.11.42+ | 21 |
| 26.1.2 | 26.1.2.95+ | 25 |
| 26.2 | 26.2.0.72+ | 25 |
There is a jar per Minecraft version, named for the one it was built against — take the one that matches your server.
Install on the server, with SableCraft Standards and Cast. Both are required: Standards is the economy, groups and reputation the quests pay through, Cast is the people who give them. LegendQuest, ZombieMod and CityWorld are optional and make it richer. Nothing your players have to do.
Chronicler is licensed under MIT, by Sablednah. Source, docs and the full authoring reference: github.com/Sablednah/Chronicler.