One hour of play, five acts, zero boredom: thinking about the hook like a Netflix series
The engine holds up, the smooth scroll passes muster. It's time to think about what will really matter: why the player keeps playing. An evening digging into serial hook techniques, and the Lore of the Ember mechanics that come out of it.
The problem I put off for too long
I've been working on the engine for several months. Smooth scroll, grid corruption, sprites prepared ahead of time, a plague that spreads without stutter. It looks good, it runs, but none of those technical posts answers the real question: why would anyone see this game through?
The Atari ST homebrew scene turns out plenty of technically impressive demos. Some are gorgeous. Many are abandoned by the player after 15 minutes. A scroll at full speed isn't enough. What holds people is wanting to know what happens next.
So I put the keyboard down and spent an evening digging into a precise question: what makes you click "next episode" on Breaking Bad at 2 in the morning instead of going to bed? And how do you transpose that to a game that lasts an hour, in 5 acts of 15 minutes, on a machine from 1989?
The three engines worth knowing
The Zeigarnik effect
A bit of seriousness at the back there! In 1927, Bluma Zeigarnik showed that a waiter remembers perfectly the orders he hasn't yet served, and instantly forgets the ones he has just served. The brain retains interrupted tasks far better than completed ones.
The whole structure of the cliffhanger rests on that. If you end an episode of a series on a complete action (the door closes, the credits roll), the brain moves on. If you end in the middle of an action (the door opens a crack, cut to black), the brain stays stuck on it. It's mechanical, not cultural.
The mystery box
JJ Abrams, then Damon Lindelof on Lost, industrialised a simple idea: a closed box has infinite narrative potential as long as you don't open it. The classic trap of the technique is to pile up boxes and never open any of them. The healthy version is that every mystery solved opens a bigger mystery. Narrative recursion.
The fractal interest curve
Jesse Schell (The Art of Game Design) talks about the interest curve: an opening hook, escalation with peaks and troughs, a final climax. And crucially, that curve is fractal. The whole game has its curve, each act has its own, each room too. Without troughs, the peaks no longer feel like peaks. Narrative calm isn't a flaw, it's a condition of tension.
Games that solved this in a short format
A few case studies I looked at closely, because they manage a hook without being 80-hour RPGs:
- Return of the Obra Dinn (Lucas Pope) cuts a big mystery into 10 self-contained disasters. Every revelation recontextualises the earlier scenes. The brain replays them spontaneously.
- Outer Wilds (Alex Beachum) makes knowledge itself the progression. You don't unlock items, you understand. The short loop naturally pushes the player into another run.
- Dark Souls (FromSoftware) shows you distant places from the very first hour. Anor Londo visible in the distance for 15 hours of play creates a permanent anchor.
- Hades (Supergiant) has a narrative that watches your gameplay and reacts to it.
Applying all this to Lore of the Ember
Abstract principles are one thing. Transposing them to a one-hour game on this machine is another. Here are the directions I'm keeping.
The spoken text channel with a portrait of the speaker
At first I imagined the narration would be silent or ultra-minimal. Digging in, I realised I had an underused character: the lantern itself. It's an object that speaks to the hero. Why forbid myself from giving it a real presence on screen?
So: a 16-bit JRPG style text panel, with the speaker's portrait on the left, either the hero's face when he thinks or speaks, or the lantern's flame when it's the one answering. No dialogue box that freezes the game in combat. Never any text while the player can die. Only in quiet rooms, between fights, or on the inter-act screens.
The good news is that I already coded the basic block a few weeks ago while preparing zones 3 and 4 of Act I. A low box with the portrait on the left and the text on the right, pagination on the button, a blinking "next page" arrow. Two portraits are in production, the hero and the flame. The game world freezes cleanly during the display, without flicker. Several triggers are wired into zones 3 and 4: stepping on a specific tile launches the dialogue, and the game remembers the ones already read so they don't fire again.
In other words, the block is there and it runs. What the recent research gave me was mostly an understanding of what it should be for narratively across the 5 acts, and identifying the few layers still missing on top.
The cunning part is that the hero's portrait can evolve across the 5 acts. The dark circles, the pallor, the look in his eyes. If I do it well, an attentive player notices without it ever being pointed out. The pipeline is already there for the base portrait: I just have to draw four variants and swap the image according to the current act.
Seeds planted
The principle is simple: in every act, one passive detail you don't notice. A sprite lurking at the back of the scenery, a sound that comes back, an element that follows the character without intervening. These details aren't interactive. They aren't flagged. They are just there.
Later in the game, that detail takes on meaning. The player remembers seeing it. It creates a very particular sensation: the impression that the game knew. That you hadn't seen.
Technically it costs almost nothing: one extra sprite per act, sometimes just a modified piece of scenery.
Act endings on an interrupted action
This is the part where I most revise my own work. The 5 inter-act texts I had written were all reflective: the hero asks himself a question and puts it into words. That works for a novel, not for a game.
Corrected version: every act ending finishes on a movement in progress. A hand rising, a noise behind you, an object falling. We never finish a sentence. We cut mid-gesture. The player's brain finishes it for me, and that is exactly what we want. Zeigarnik.
The visible counter
A daft detail that changes everything: showing progress at the top of the inter-act screen (I / V, then II / V, and so on). Free technically, enormous in feel. The player knows they are 40% of the way to the truth. Anticipation climbs with the counter.
What hasn't changed (and will not)
Rule 1 remains absolute: no text is displayed while the player is in action. No dialogue that cuts the action. No cutscene that forces itself in mid-fight. Text arrives in the breathing spaces, on the inter-act screens, and in the trap rooms that are deliberately quiet.
The other rule that holds: no chatty NPCs, no merchant telling you his life story, no textual side quests. Just two written voices, the hero and the flame, and silence around them.
Priorities
The dialogue box already runs, with freeze and portrait. The architecture of the layers that go on top is locked down, all that remains is to code them and draw the assets. Four building blocks, in order:
- A discreet, non-blocking mode that reuses the same low box, but without pagination and without stealing control from the player. A line of text appears, holds for about three seconds, withdraws, and the game takes over again. It serves the short murmurs that have to slip by while you walk. Forbidden during combat, as always.
- The progress counter on the inter-act screen: "I / V", "II / V", and so on to the end. The player permanently sees where they are in the five acts, and feels the last one approaching.
- Rewriting the end of the first act so that it cuts on an action rather than on a question asked.
The memory cost of all this is negligible on the STe's scale. The real cost will be writing the lines, which is a very different exercise from code.
What I learned doing this research
Two things above all.
The first is that you can spend months on technique without the game really moving forward. I had refused to think about narrative game design until the engine was stable. The result: I nearly arrived at Act II with inter-act screens that would make nobody want to carry on. Forcing myself into an evening of pure theory spared me that.
The second is that the big ideas of serial narrative are surprisingly compatible with the STe's constraints. A dialogue box with a portrait and text costs less than many of the graphical effects I have coded. The Zeigarnik effect asks for nothing more than a sentence cut in the right place. A planted seed is one extra sprite.
The machine doesn't limit this kind of design. What limits it is the writing. Every line has to carry weight, because there aren't many of them.
What comes next
Spec locked, all that is left is to code it. Next session I wire up the discreet mode, draw the portrait variants and write the text. In a future article I will come back to the choices around text rendering (in particular how to bring a sentence in gently, spoiler: no fade, we go typewriter). And if it lives up to its promise, I will show a small demo that runs an opening sequence through both display modes.
Until then, if you know of games that nailed the hook in a short format and I have missed them, I'm all ears.
Leave a comment