Local development workspace for the 2D fighter game.
- Node.js 24
- pnpm 11
pnpm installDependencies are installed in this workspace. The local pnpm store is ignored by git at .pnpm-store/.
Run the game frontend:
pnpm devOpen:
http://localhost:5173/
The root start and dev package scripts call ./start-app.sh, which runs @workspace/flight-sim.
Run the focused rule tests:
pnpm testRun type checking:
pnpm run typecheckRun the production build:
pnpm run buildartifacts/flight-sim- React/Vite canvas game app
- Missions progress through 500 levels. The daytime city backdrop changes to a space scene from level 50 onward.
- Boss encounters are available from level 3. Milestone bosses appear at levels 3, 5, 8, 10, 12, 15, 18, and every fifth level from level 20 onward.
- TIE fighters perform an evasive vertical dodge roughly every 1.5 seconds.
- From level 20 onward, specialist enemies can appear: healers repair damaged allies, shield generators protect nearby ships, and kamikaze fighters rush the player.
- From level 50 onward, enemies can also spawn as armored, swift, or frenzied elites with increased score rewards.
- At the end of a mission, the score is converted to credits at a 1:1 rate (for example, 1,000 points award 1,000 credits).
- Shop skins and upgrades are displayed in rarity order: rare, epic, legendary, ultra legendary, then ultimate. Legendary and higher items receive an additional visual glow; ultimate uses an iridescent, colorful silver treatment.
- Purchasable shop items cost 50,000 credits for rare, 100,000 credits for epic, 200,000 credits for legendary, 400,000 credits for ultra legendary, and 1,000,000 credits for ultimate rarity. The default Steel skin remains free.
The game production build is written to:
artifacts/flight-sim/dist/public
Remove installed dependencies and the local pnpm store:
rm -rf node_modules .pnpm-store