A modern remake of the classic 1990 Atari Rampart arcade game built with Next.js, TypeScript, and Phaser.js.
Rampart is a hybrid strategy/action game where players defend territory by building walls, placing cannons, and engaging in timed combat. The game features three repeating phases:
- Build Phase - Patch breaches or expand territory using Tetris-like blocks
- Deploy Phase - Place cannons inside fully walled areas
- Combat Phase - Fire cannons at ships (single-player) or enemy walls (multiplayer)
- Frontend: Next.js 14 (App Router) + TypeScript
- Game Engine: Phaser.js 3.x
- Hosting: Vercel
- Logging: Server-side API routes + client-side console
rampart-remake/
├── app/ # Next.js App Router
│ ├── api/ # API routes
│ │ └── log/ # Server-side logging endpoint
│ ├── layout.tsx # Root layout
│ ├── page.tsx # Main page
│ └── globals.css # Global styles
├── components/ # React components
│ └── PhaserGame.tsx # Phaser game wrapper
├── game/ # Game logic (pure TypeScript)
│ ├── core/ # Game loop, scenes, config
│ ├── grid/ # Tile system, maps
│ ├── systems/ # Build, combat, territory, AI
│ ├── types/ # TypeScript interfaces/enums
│ └── logging/ # Logger implementation
├── public/ # Static assets
└── docs/ # Design documents
- Node.js 18+
- npm or yarn
- Clone the repository:
git clone https://github.com/bmccall17/rampart-remake.git
cd rampart-remake- Install dependencies:
npm install- Run the development server:
npm run dev- Open http://localhost:3000 in your browser
npm run build
npm start- Push your code to GitHub
- Go to vercel.com
- Click "New Project"
- Import your
rampart-remakerepository - Vercel will auto-detect Next.js and deploy
- Install Vercel CLI:
npm i -g vercel- Login to Vercel:
vercel login- Deploy:
vercel- For production:
vercel --prodNo environment variables are required for Phase 1. Future phases may require:
- Database connection strings
- API keys for multiplayer services
- Analytics tokens
- Next.js project setup, Phaser.js integration, logging, Vercel deployment
- Tile rendering, map data structure, visual differentiation
- Game phase management (BUILD/DEPLOY/COMBAT/SCORING)
- Tetris-style wall placement with rotation
- Cannon placement in enclosed territories
- Ships, shooting, projectiles, hit detection, crater creation
- Lives system, scoring, game over/victory screens, restart/continue
- Sound effects (Web Audio API), visual effects (particles)
- Screen shake, level progression, multiple map presets
- Phase speedup when objectives complete
- Differentiated ship types (Scout/Frigate/Destroyer)
- Wave composition system with level scaling
- Smarter ship AI targeting
- Boss ship encounters
- Enhanced combat statistics
- Phase 10: Local Multiplayer
- Phase 11: Power-ups & Special Abilities
- Phase 12: Mobile & Accessibility
- Phase 13: Online Features (Leaderboards, Achievements)
Comprehensive game design documentation is available in the /docs folder:
GDD_Rampart__based_off_the_90s_arcade_game..pdf- Complete game design specDeployment_Approach_(today-friendly).pdf- Technical implementation plan
This is a personal project remake. Feel free to fork and create your own version!
ISC
Based on the original Rampart arcade game by Atari (1990).