Game Design
This document details the game concepts, loops, mechanics, and design decisions for CROSS.
🔁 Core Game Loop
graph TD A[Viewer Joins Chat / Uses Extension] --> B[Spawn Avatar on Stream Screen] B --> C[Wave Spawns: Monsters attack rooms] C --> D[Avatars auto-fight & Viewers trigger abilities] D --> E{Defeated?} E -- Yes --> F[Earn XP, Gold & Resources] E -- No --> G[Rooms damaged, Gold spent to repair] F --> H[Use Gold to upgrade own Character] F --> I[Contribute Resources to Streamer's Rooms] I --> J[Unlock global/local buffs & unique cosmetics]
- Spawning: Viewers spawn their character by sending a message in chat (e.g.,
!join) or interacting with a Twitch overlay extension. - Defending: Waves of enemies spawn from the left side of the screen and march rightwards toward the streamer’s rooms. Active avatars engage them.
- Rewards: Clearing waves grants Gold (for personal character progression) and Resources (for room building).
- Base Building: Viewers donate their resources to help the streamer build and upgrade rooms.
- Progression: Personal characters maintain their level, class, equipment, and resources when moving from one streamer’s channel to another.
🛡️ Character Classes & Progression (Inspired by “The Dark Herbalist”)
To support a deep RPG system suitable for both cross-stream play and a future standalone solo game, character profiles are split into three layers: Race, Combat Class, and Profession.
🎭 Character Layers
- Races (with stat/social modifiers):
- Goblin: Low physical stats, stealth/trap-finding bonuses, faster gathering, but carries negative faction rep with standard towns.
- Human: Balanced stats, increased reputation gains, standard vendors friendly.
- Elf: Magical affinity, faster organic resource collection, lower physical defense.
- Dwarf: High armor/HP, mining and blacksmithing bonuses.
- Combat Classes: Traditional archetypes (Warrior, Rogue, Mage, Priest) that branch into specialized subclasses in the solo game.
- Non-Combat Professions: Essential for gathering/crafting.
- Herbalist: Passively gathers virtual herbs on the stream plane, identifies rare flora, mixes raw poultices.
- Alchemist: Brews complex potions, poisons, and buffs using gathered ingredients.
- Scribe / Translator: Deciphers ancient scripts, writes spell scrolls, translates languages.
- Miner / Blacksmith: Extracts ores and crafts unique equipment.
⚔️ State-Based Chat Commands (No Chat Spam)
Rather than spamming commands to trigger instant actions, chat commands toggle character states. Once a state is entered, the character acts automatically until the state is changed or all enemies are dead.
| State Command | Target/Argument | Behavior |
|---|---|---|
!attack | [enemy_name] (optional) | Pathfinds to target or nearest enemy; hits automatically at weapon speed until combat ends. |
!support | <username> | Pathfinds to player and stays in range to heal or buff them. |
!goto | <position> | Walks to coordinate (e.g. left, right, room1). Autodefends/attacks if blocked on path. |
!defend | None | Stands still at current location, gaining +20% armor bonus but refusing to initiate combat. |
💥 Physical Interception Aggro
- Aggro Draw: A player draws an enemy’s attention simply by moving their character’s collision boundary directly into the enemy’s path. Intercepting or blockading an enemy stops it from marching towards the building.
- Subclass Skills: Taunts (like a Warrior’s area-of-effect cry) are secondary active abilities used to pull multiple enemies in a wider radius.
📦 Interactive Object Components (Post-MVP)
Objects and rooms crafted by streamers/viewers can have predefined, configurable behaviors attached to them:
- Bottle / Flask:
Fillable,Drinkable - Chair / Throne:
Sitable - Door / Gate:
OpenClosable - Chest:
Storable,Lockable
These components allow high gameplay extensibility without writing custom scripts for every custom asset.
🏰 Room Building System
Streamers start with a bare plane and a few empty slots on the right side of the overlay screen. Viewers can contribute to construction projects.
Room Types
- The Blacksmith:
- Function: Upgrades viewer weapon damage while in this stream.
- Viewer Benefit: Contributor gets a permanent discount on blacksmith gear.
- The Tavern:
- Function: Increases passive XP gain rate.
- Viewer Benefit: Unlocks unique food/potion buffs.
- The Keep/Core:
- Function: Represents the overall health of the streamer’s base.
- Viewer Benefit: Provides defensive shields to defending avatars.
Contributions & Cooperation
- Viewers pool their resources (e.g., Wood, Stone, Iron) gathered from any stream to fund construction.
- Upgrades require streamer approval (or automatic criteria met) to complete.
- Dynamic visual growth: Rooms start as scaffolds and morph into complete, animated 2D buildings.
🔮 Twitch-Specific Integrations
1. Chat vs. Overlay Extension
- Chat Commands: Low barrier to entry, works on all platforms (mobile, TV, web). However, can lead to spam.
- Twitch Overlay Extension (WebGL/HTML5): Clickable visual interface on top of the video player. Viewers click buttons to use abilities, view their inventory, and equip gear. Highly recommended for premium UX.
2. Raid Boss Events
- When another streamer raids the channel, the game triggers a Raid Boss event.
- The Raid Boss is styled or named after the raiding streamer.
- Viewers must cooperate in real-time to defeat the boss, rewarding both chats with loot and bonuses.
3. AFK Prevention
- To prevent viewers from farming rewards in 24/7 lurk streams, players must perform active actions (e.g., using an ability, chatting, clicking active events) to receive full rewards.
- Auto-sleep mode: If a viewer has not interacted for 15+ minutes, their avatar goes to “sleep” and stops gaining rewards.