CROSS: Characters Roam Over Shared Streams
Welcome to the documentation vault for CROSS (Characters Roam Over Shared Streams) — a persistent, cross-stream 2D RPG Twitch overlay game built using Godot and a centralized server.
🗺️ Documentation Index
- Game Design: Core game loops, character classes, room building, combat mechanics, and viewer interaction ideas.
- Combat and Simulation Design: Hybrid simulation (client physics/AI vs. server validation), viewer controls, and cooldown overrides.
- Stats and Attributes: Core attributes (STR, AGI, INT, VIT), secondary stats, and formulas preventing min-maxing.
- Equipment and Stats: Weapon types (swords, bows, staves), armor classes (cloth, leather, plate), and weight/defense scaling math.
- Skills and Talents: Racial passive traits, active combat skills, and talent progression tree structures.
- Rooms System: The room slots, swapping mechanics, and the refining and crafting pipelines.
- Room Assets and Props: Detailed asset list of interior decorations and prop pools for each room.
- Gameplay Loops: Detailed loops for viewers (XP, Gold, AFK limits), streamers (base defense, alert triggers), and cross-stream systems.
- Resources and Biomes: The resources (Wood, Stone, Iron, Herbs), biome layouts causing resource scarcity, and streamer-unique resources.
- Item Sinks and Economy: Preventing resource inflation, base construction scaling brackets, and community item sinks.
- Viewer UX: How viewers interact with the game (equip, upgrade, shop) using Twitch integrations or companion pages.
- Standalone Client Design: Idle progression loops, profession minigames, and critical trade/security challenges.
- Architecture: System design, server components, client rendering choices, API definitions, and auth flows.
- Decisions: A record of key technical and design decisions, trade-offs, and justifications.
- Todo List: The master checklist of tasks spanning database setup, server implementation, client development, and integration.
🚀 The Vision
CROSS aims to build bridges between different Twitch communities. Instead of avatar overlays being isolated to individual streams, viewers can level up their character and gather resources on Streamer A’s channel and carry those achievements, inventories, and progression directly into Streamer B’s channel.
Together, viewers collaborate to defend the streamer’s base, build unique rooms, and coordinate attacks, turning Twitch streams into a shared, persistent multiplayer world.