A top-down shooter game built with Phaser 3 and React.
Players can choose between two weapon modes (minigun or shotgun) and must survive as long as possible against waves of increasingly difficult enemies. The game features:
- Fast-paced arcade-style gameplay
- Two distinct weapon systems
- Wave-based and endless survival game modes
- XP and cash systems for player progression
- Dynamic difficulty adjustment through the Chaos System
- Clone the repository
- Install dependencies:
npm install- Start the development server:
npm run devBuild the game for production:
npm run buildThe production build will be in the dist folder.
This project is configured with GitHub Actions for automatic deployment to itch.io when changes are pushed to the main branch.
Create an itch.io account at https://itch.io
Create a new game page on itch.io with project name:
gjg2Generate a Butler API key at https://itch.io/user/settings/api-keys
Add the API key as a GitHub secret named
BUTLER_API_KEYin your repository settings
- When changes are pushed to the
mainbranch, GitHub Actions will:- Build the project
- Deploy to itch.io using Butler
- Channel will be set to
webfor browser-based play - The game will be published to https://fluffymcchicken.itch.io/gjg2
You can also deploy manually using npm scripts:
# Deploy to web channel npm run deploy # Deploy to windows-web channel npm run deploy:win # Deploy to all channels npm run deploy:allInstall Butler: https://itch.io/docs/butler/installing.html
- Or use the included
install-butler.batscript on Windows
- Or use the included
Log in to Butler:
butler loginComprehensive documentation is available in the /docs directory:
- Documentation Home - Overview and index of all documentation
- Architecture - System architecture and project structure
- Game Entities - Player, enemies, and other game objects
- Game Mechanics - Core gameplay systems
- UI Components - User interface elements
- Development Guidelines - Coding standards and practices
See the Documentation Home for a complete list of available documentation.