Inspiration What if the objects on your desk were actors—and you were the director trying to keep their show alive? We wanted to make a small, playful experience where the interface could become part of the joke. Early versions leaned too heavily on explaining the premise and clicking through dialogue. Feedback pushed us toward a better question: what can the player actually do, and how will the characters remember it? That became the heart of Object Theatre: an absurd little cast, a rehearsal that keeps going wrong, and choices that leave visible traces. What it does Object Theatre is a three-act browser visual novel featuring Cup, Eraser, and Key. You help rehearse their show, respond to backstage mishaps, and reach an ending shaped by your route. During the horror audition, Mouse starts dragging the stage away like a desktop window. Grab Mouse and things get worse. Trap it under Cup and the stage returns—but Cup becomes a rental apartment. Pull the USB cable instead and the theatre loses power. Subsequent dialogue and scenery carry those consequences forward. The game supports English and Chinese, choice history, revisiting decisions, keyboard controls, browser autosave, and optional music. No account, API key, or backend is required. How we built it We used HTML, CSS, and vanilla JavaScript, deployed on GitHub Pages. The story is a graph of prewritten scenes. Character memories are derived from the player's route rather than stored as disconnected flags. Revisiting a decision rebuilds those memories, keeping dialogue and scenery consistent with the revised history. A separate presentation layer controls expressions and visual consequences. Local storage saves progress in the current browser. The music controller handles explicit opt-in, act changes, and story-driven pauses. The artwork uses generated character and stage assets; the published game does not generate stories at runtime. Music by Kevin MacLeod is used with attribution under CC BY 4.0. Challenges we ran into Our biggest challenge was making choices feel like actions rather than interruptions between paragraphs. Adding an early choice was not enough: the following scene needed to acknowledge it. Rewinding also meant removing outdated consequences without losing the player's original progress. Other challenges included narrow-screen layouts, recognizable characters, safe skipping of previously read dialogue, and audio that never starts without permission. Accomplishments that we're proud of
- A playable, bilingual three-act story accessible through a simple link.
- A prop interaction that changes both the stage and subsequent dialogue.
- Route-derived memories that stay consistent when decisions are revisited.
- An English demo recorded from the deployed game, showing actual choices and consequences. What we learned A premise is not the same as a reason to keep playing. Choices become more convincing when players can see what changed and hear the cast respond later. We also learned to separate technical reliability from entertainment. Tests can verify navigation, saving, and state consistency; they cannot prove that strangers enjoy the story. That requires independent playtesting. What's next for Object Theatre We want to deepen the rehearsal scenes so players build a relationship with the cast before the larger meta-fictional moments. We also plan to add more interactions to the other audition routes, improve mobile pacing, and test whether new players continue after their first meaningful choice. The next milestone is better play, not simply more dialogue.
Log in or sign up for Devpost to join the conversation.