67 lines
3.2 KiB
Markdown
67 lines
3.2 KiB
Markdown
_model: project
|
|
---
|
|
schema_version: 1
|
|
---
|
|
project_id: twungeon
|
|
---
|
|
title: Twungeon
|
|
---
|
|
summary: A Twitch-controlled cooperative dungeon game where viewers share a live world, control individual characters, and discover whether the core loop is worth building into a full game.
|
|
---
|
|
status: active
|
|
---
|
|
started: 2026-08-17
|
|
---
|
|
author: Christopher Chambers
|
|
---
|
|
repository_url: https://git.labyricorn.com/Labyricorn/Twungeon
|
|
---
|
|
default_branch: main
|
|
---
|
|
tags: Twitch, Twitch Extension, Channel Points, RPGJS, Twurple, TypeScript, game development, proof of concept, MVP, architecture, acceptance testing, documentation
|
|
---
|
|
body:
|
|
|
|
Twungeon is a Twitch-controlled cooperative dungeon game. Viewers watch a
|
|
shared dungeon on the stream while controlling their own characters through a
|
|
Twitch Extension. Followers join intentionally with `!spawn`, take turns using
|
|
simple action points, fight or evade a Goblin Guard, and cooperate to reach the
|
|
exit.
|
|
|
|

|
|
|
|
*Concept image illustrating the intended mature stream and viewer experience.*
|
|
|
|
The MVP is designed to prove the complete interaction loop with real Twitch
|
|
viewers: eligibility, identity binding, spawning, movement, combat, healing,
|
|
death, Channel Points resurrection, floor advancement, and total-party reset.
|
|
It uses a deliberately small two-room floor with one Goblin Guard so the
|
|
project can test the social game idea before investing in balance, polish,
|
|
progression, or production art.
|
|
|
|
The stream-facing experience has three required regions: a compact
|
|
control/status area, the shared game view, and a running action log. When no
|
|
players are active, the current floor remains loaded in a dormant state and
|
|
invites an eligible follower to type `!spawn`.
|
|
|
|
The runnable proof of concept uses an authoritative TypeScript game core,
|
|
deterministic two-room floor generation, HTTP and WebSocket boundaries, and a
|
|
shared broadcast/controller interface. Twurple supplies the production Twitch
|
|
boundary for chat, follower verification, Channel Points redemptions, and a
|
|
Twitch Extension identity flow. The RPGJS boundary remains an authority-free
|
|
render adapter rather than a completed engine integration.
|
|
|
|
The product source of truth is the
|
|
[Twungeon MVP Product Requirements Document](https://git.labyricorn.com/Labyricorn/Twungeon/blob/main/Twungeon_MVP_PRD_Current.md).
|
|
The approved
|
|
[technical specification](https://git.labyricorn.com/Labyricorn/Twungeon/blob/main/Twungeon_MVP_Technical_Specification.md)
|
|
defines the authoritative architecture and game behavior. The
|
|
[acceptance-test and build checklist](https://git.labyricorn.com/Labyricorn/Twungeon/blob/main/Twungeon_MVP_Acceptance_Test_and_Build_Checklist.md)
|
|
sequences implementation and maps evidence to all 33 MVP success criteria.
|
|
|
|
The repository can run locally with synthetic viewer identities and has passing
|
|
lint, type-check, domain, integration, and production-build gates. This is a
|
|
proof of concept, not an accepted MVP: live Twitch credentials, independent
|
|
setup, first-time-viewer usability, and real-viewer concept validation have not
|
|
yet produced acceptance evidence.
|