Zero RPG is a "zero-player" autobattler experiment. You load the page, enable audio, and the hero does the rest—brawling through Sunmire Meadows, shopping in ribbon-choked villages, and desperately searching for bushes before bladder disasters.
- Auto-play simulation – Procedurally generated heroes explore, fight, shop, and camp without user input.
- Biome + settlement art – Every Sunmire village/town/city roll now renders bespoke illustrations (Rushlight, Petalspan, Honeyfen, Ribbonvale, Draftwell, Bloomwarren).
- Dynamic combat log – Animated combat queue with crit flashes, quips, traits, and Web Audio API sound effects.
- Need & bio system – Hunger, thirst, bladder, and bowel meters trigger events, with new art-supported camp/bio scenes.
- Temporary buffs/debuffs – Time-limited effects (e.g., ribbon sash bonuses, Sticky Boots) tick down automatically and appear in the character sheet’s new Temporary trait section.
- Town scarcity – Encounters respect random cooldowns to keep merchants scarce; CHA-driven discounts and grocer/gear sellers feel meaningful.
- Fully responsive UI – Layout clamps heights, scrolls gracefully on tablets/ultra-wide screens, and supports lightbox zoom for every event illustration.
- Framework: React 18 + Vite
- Language: TypeScript (strict mode)
- Styling: Custom CSS utility sheet (Tailwind-like tokens) + light Tailwind remnants
- Audio: Web Audio API (procedural SFX, no binary assets)
- State: Custom
useGameLoophook orchestrating hero ticks, encounters, and combat animation
- Node.js (v18 or higher)
- npm
-
Clone the repository:
git clone https://github.com/segordon/zero_rpg.git cd zero_rpg -
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open your browser and navigate to the local URL (usually
http://localhost:5173).
- Load the site – The hero spawns immediately with a random background, race, and trait mix.
- Enable audio – Tap the 🔊 button once (required by browsers) to hear combat stingers.
- Kick back – The hero cycles through 8 turns per day (combat/town/random/weather) and camps on turn 9.
- Monitor UI – Character sheet displays stats, equipment, long-term traits, and temporary effects with tick badges.
- Pause if needed – The ⏸️ button freezes the loop so you can inspect logs or admire art.
npm run dev # Start dev server (HMR)
npm run build # Type-check + bundle for production
npm run preview # Serve the dist build locallyThis project is open source and available under the MIT License.
