We added a Game Mode to an e-reader

VN Theater turns any novel on your shelf into a visual-novel performance mid-read — no conversion, no separate project, one shared reading position. A builder's note on the single design decision everything hangs on, why we refused to guess who's speaking, and what a choice made on stage does to the book.

An open paperback standing on a tiny theater stage, stage lights projecting a dialogue box onto its pages

Every project that turns novels into visual novels makes the same move: it converts. Feed in a book, run a pipeline, get a game project out the other side. Some of those pipelines are genuinely clever. And every one of them shares a flaw nobody talks about — the moment the conversion finishes, the game and the book stop being the same thing. Fix a typo in the book? Re-convert. Continue the story? The game doesn't know. Make a choice in the game? The book never hears about it.

When we started building VN Theater we wrote one sentence on the whiteboard and refused to compromise on it: the theater is not a copy of the novel — it is the novel.

Theater mode in the full demo — one continuous screen recording, cued to the moment the book starts performing.

One position, two surfaces

That sentence has a very concrete meaning. Our reader already tracks your position to the paragraph. The theater reads that same anchor: enter from chapter 28 and the performance opens where you stopped, not at the chapter head. Advance the play, exit, and the reader sits on the page the performance reached. Kill the app mid-scene, reopen, and you're back on stage where you left off.

Boring plumbing? Absolutely. It's also the entire product. The moment enter/exit costs you your place, the theater becomes a novelty you try once. When it costs nothing, it becomes what it was meant to be: a second way of holding the same book.

Choices write back

The same principle decides what a story choice does. At a fork, the stage presents candidate directions. First tap expands the outline; second tap confirms — the same anti-fat-finger guard our app puts in front of anything that costs money. On confirm, the AI continues the novel in that direction, and the result lands as a real branch of the book: visible in the reader, streaming in as it writes, sitting in the branch tree next to the canon line.

Re-enter the theater afterwards and the stage recompiles around the new text — new scenes, and a fresh set of choices at the new frontier. You can keep playing indefinitely, and everything you play accumulates in the book. Our branching system has always promised that no direction ever overwrites the original; the theater just gave that promise a stage.

The part we refused to be clever about

A visual novel needs to know who speaks every line. The research on this is humbling: in novel2galgame, the representative open-source pipeline we studied (an 8B model fine-tuned on 669 Chinese webnovels), pure-text scene segmentation — just the precondition for attribution — peaked at an F1 of 30.5%, and the dedicated speaker-attribution model reached 86.7% accuracy under forced choice. That still means roughly one nameplate in eight is wrong.

The compilation itself — scene cuts, attribution, choice wiring — runs on local rules with zero AI calls. Free, offline, reproducible. The only two things that ever cost money are the two things you explicitly confirm: a generated backdrop, and a continuation.

What "first" actually means here

We're wary of "world's first" claims; they're usually a definition looking for a trophy. So here is the narrow, checkable version: we could not find another shipping app where a novel becomes a playable visual novel in place — same progress in and out, choices written back as branches of the same text. The offline converters are real and some are good; they're just a different shape. If you find a second one shaped like this, we genuinely want to hear about it.

The playable demo lives on the VN Theater page — including the typewriter text box and the tap-twice choice, running right in your browser.

FAQ

Does Game Mode convert the novel into a game project?

No. The theater compiles the book's current branch into a stage script on the fly, locally, with zero AI calls. There is no exported project and no migration — the theater and the reader share one reading position, so you exit exactly where the performance stopped.

What happens when I pick a story choice on stage?

After the tap-twice confirm, the AI continues the story in that direction and the result lands as a real branch of the book — with full continuation history. You can read the branch in the reader, or re-enter the theater and keep playing it; the stage recompiles automatically around the new text.

How does it decide who is speaking?

Local structural rules with a hard bias: when unsure, the line goes to the narrator. No LLM calls, no guessing. On a real published novel we hand-annotated dialogue-dense passages and checked every strong attribution — none pointed at the wrong character.

Does the stage compilation cost anything?

Nothing. Compiling prose into scenes, attributing speakers, and wiring up choices are all local rules — offline-capable and free. Money only moves when you explicitly confirm it: generating a scene backdrop (behind a cost dialog) or confirming a story choice that triggers AI continuation.

Questions or ideas? Join our Discord →

We Added a Game Mode to an E-Reader. Here's the Design Decision That Made It Work · Foreverse · Xinmeng