Crypt of Greed
A browser-based turn-based deckbuilding roguelite prototype built to validate a bank-or-risk Greed mechanic before moving to a production game engine.
Current portfolio record
Verified against the public repository and current documentation
Purpose and use case
Why this project was built
Built for validating whether the core deckbuilding and Greed loop is understandable and enjoyable before investing in a native engine, larger content pipeline, audio, controller support, and platform integrations.
Overview
What the project is
Crypt of Greed is a playable web prototype for testing combat rules, room progression, rewards, equipment, and the central decision to bank progress or risk continuing. The repository is intentionally positioned as a gameplay and product-validation environment rather than a release-ready Steam or console build.
Problem
What it is designed to solve
A commercial game concept needs more than a design document, but building a complete native game before proving the main loop creates unnecessary cost. The original prototype also mixed gameplay with abandoned blockchain ideas and duplicated domain behavior.
Approach
How the project addresses it
The active application removes wallet and NFT behavior, centralizes important combat and progression rules, adds deterministic tests for core systems, and documents a staged path from the web prototype to a production game engine.
Key features
- Turn-based card combat with health, block, energy, enemy intent, and rewards
- Room progression across combat, rest, merchant, and event experiences
- Deterministic shop inventory and authenticated atomic purchases
- Character creation, equipment slots, revival rules, and server-side validation
- Responsive keyboard-accessible desktop and mobile interfaces
- Automated domain tests and a documented Unity or Godot migration path
Architecture highlights
- Game-domain rules are isolated under lib/game and tested outside React rendering
- Server-side ownership and transaction checks protect purchases, revival, and character changes
- The active codebase is separated from the removed blockchain experiment
- The web build is treated as disposable validation rather than the final multi-platform architecture
Engineering challenges
- Centralizing combat and room progression after duplicated logic had developed across managers and screens
- Keeping transient run state, persisted character state, and client presentation responsibilities separate
- Deciding when to stop refining the web prototype and move proven rules into a production game engine
Implemented outcomes
- Removed custodial wallet, private-key, NFT, Hardhat, and blockchain runtime behavior from the active product
- Added tests for combat turns, rewards, revival, progression, shops, equipment, and character creation
- Produced a clear game-design, engineering, platform, and migration roadmap for the next development stage