#141, #142: the chain teaches research, and asks for the pile before the build

Two gaps between the first quests, both of the same kind: a step the chain
assumed rather than asked for.

#142 - "collect 5 ore" was followed straight by "build the mothership",
which costs twenty. The first thing the chain ever asked for was four times
what it had just taught, with nothing in between saying so. A stockpile
quest sits between them now.

#141 - the crafter quest's brief said "spend ore on the Shipyards doctrine,
then put a ship crafter down", which is two unrelated things off one line:
open a menu the player has never opened, and place a structure. Researching
Shipyards is its own quest now, and it is the one that says where the
research tree lives. Every later quest that needs a doctrine still only
mentions it in passing - once is enough.

That needed a goal kind for researching a doctrine, which the model did not
have.

Both are pinned as properties rather than as positions in a list. The chain
must ask for at least as much ore as the first structure it wants costs; and
the first structure that is gated behind a doctrine must have that doctrine
as a quest of its own. Only the first - demanding one per building would
double the chain for no teaching.

One thing that fell out of writing those: the pile is exactly the starting
fleet's hold. An interceptor carries 20 and the mothership costs 20, and
before the mothership exists there is nowhere to bank anything, so the hold
is the only store there is. It fits with no slack at all, so there is now an
assertion saying so - a pile larger than the hold would be a quest that
cannot be finished, and nothing else would have caught it.
This commit is contained in:
Loïc Wisniewski 2026-08-28 15:47:38 +02:00
commit 90c34f6c74
3 changed files with 138 additions and 7 deletions

View file

@ -36,6 +36,11 @@ const GOAL_EXPLORE: String = "explore"
const GOAL_PLANET_VISITS: String = "planet_visits"
const GOAL_PLANET_KINDS: String = "planet_kinds"
const GOAL_CONQUERED: String = "conquered"
# #141: researching a doctrine, as a step of its own. The chain used to fold
# it into the brief of the thing it unlocks ("spend ore on Shipyards, then
# put a crafter down"), which asks the player to do two unrelated things -
# open a menu they have never opened, and place a structure - off one line.
const GOAL_RESEARCH: String = "research"
const CHAIN: Array = [
{
@ -46,6 +51,18 @@ const CHAIN: Array = [
"brief": "Hull intact. Reactor holding. Everything else we had is on the other side of that hole. There is ore in the rocks out here - break some, and we can start again.",
"done": "Five ore in the hold. It is not much. It is a beginning.",
},
{
# #142: the gap this fills was a real one. "Collect 5 ore" was
# followed straight by "build the mothership", which costs twenty -
# so the first thing the chain ever asked for was four times what it
# had just taught, with nothing saying so.
"id": "stockpile",
"title": "THE PILE",
"objective": "Break asteroids for 20 ore",
"goal": {"kind": GOAL_RESOURCE, "resource": "ore", "amount": 20},
"brief": "Now do that four times over. Nothing permanent gets built out of five ore, and there is nothing else out here to spend it on yet.",
"done": "Twenty in the hold. That is a foundation.",
},
{
"id": "mothership",
"title": "A PLACE TO STAND",
@ -64,12 +81,24 @@ const CHAIN: Array = [
"brief": "So we search. Fly, and let the map fill in behind us - whatever is left of their course is somewhere in it.",
"done": "Thirty sectors charted. No sign of the World Ship, but the sky behind us is no longer blank.",
},
{
# #141: its own step, and the first time the chain sends anyone into
# the research tree at all - so the brief says where the tree IS.
# Every later quest that needs a doctrine only mentions it in
# passing, which is enough once the player has been there once.
"id": "shipyards",
"title": "SHIPYARDS",
"objective": "Research the Shipyards doctrine",
"goal": {"kind": GOAL_RESEARCH, "node": "shipyards"},
"brief": "One hull will not chart a sky, and we cannot build what we have not remembered how to build. The mothership holds the archive - go aboard it and research Shipyards.",
"done": "Shipyard plans recovered. Everything else worth having is in that archive too.",
},
{
"id": "crafter",
"title": "A YARD OF OUR OWN",
"objective": "Build a ship crafter",
"goal": {"kind": GOAL_BUILDING, "building": "ship_crafter"},
"brief": "One hull will not chart a sky. Spend ore on the Shipyards doctrine, then put a ship crafter down: ore goes in, vessels come out.",
"brief": "Now put a ship crafter down. Ore goes in, vessels come out - it is the only way this fleet grows past the one hull that came through the breach.",
"done": "The yard is live. We can build our own now.",
},
{