A space shooter game built as a Base Mini App on Base mainnet. Destroy enemies, earn crypto rewards, and compete on an onchain leaderboard.
🎮 Play now: https://base-invaders.vercel.app
This game is deployed on Base mainnet (Ethereum L2) and built using the Base Mini Apps SDK.
| ⛓️ Network | Base Mainnet |
| 📜 Leaderboard Contract | 0xAC89DA9d8508d0865c55083552da91894537aC89 |
| ✅ Check-In Contract | 0x709Ef1bc52a302206E1244Df92Ae0329a9d3C736 |
| 🎮 Platform | Base Mini App (Farcaster / Coinbase Wallet) |
| 🔧 Engine | Phaser 3 |
- Onchain Leaderboard — scores saved to Base mainnet smart contract (
BaseInvadersLeaderboardV2) - Daily Check-in — onchain check-in system via
BaseInvadersCheckIncontract (resets at 00:00 UTC) - Mini App — playable directly inside Farcaster / Coinbase Wallet
- 4 Enemy Types — Hexagons, Base Cubes, Enemy Ships, Boss Motherships
- Shop System — 8 ships, weapons, power-ups, upgrades
- 3 Currencies — Gold 🪙, Lightning ⚡, Diamonds 💎
- Multilingual — i18n support for multiple languages
- Mobile + Desktop — drag/touch + keyboard controls
- Phaser 3 — game engine
- Base Mini Apps SDK / MiniKit — wallet & onchain integration
- Base Mainnet — smart contract deployment
- viem — onchain interactions
- Solidity —
BaseInvadersLeaderboardV2.sol,BaseInvadersCheckIn.sol
- Open in Base Mini App or browser
- Drag/swipe to move your spaceship
- Auto-shoot enemies to earn rewards
- Visit the shop to upgrade your arsenal
- Submit your score to the onchain leaderboard!
| Input | Action |
|---|---|
| Mouse/Touch drag | Move left/right |
| Arrow keys / WASD | Move |
| ESC | Pause |
| Contract | Address | Description |
|---|---|---|
BaseInvadersLeaderboardV2 |
0xAC89DA9d... | Onchain leaderboard — stores top 100 scores on Base |
BaseInvadersCheckIn |
0x709Ef1bc... | Daily check-in (one per UTC day) |
base-invaders/
├── index.html # Main HTML file
├── style.css # Styling
├── game.js # Core game loop
├── player.js # Player ship logic
├── enemies.js # All enemy types
├── shop.js # Shop system
├── ui.js # HUD and menus
├── miniapp.js # Base Mini App / wallet integration
├── leaderboard.js # Leaderboard UI
├── i18n.js # Multilingual support
├── vibration.js # Mobile haptics
├── minikit.config.ts # MiniKit configuration
└── contracts/ # Solidity smart contracts
Issues and PRs welcome! If you find bugs or have ideas for new features, open an issue — especially around Base Mini App integration or onchain mechanics.