Tower of Time
Entry for Beginner's Jam Summer 2025
A time-traveling tower defense game where you defend your base against waves of enemies using the power to rewind time.
🎮 Play the game at https://m4v3k.itch.io/tower-of-time
About the game
Tower of Time is a unique tower defense game that combines strategic building with time manipulation mechanics. When enemies overwhelm your defenses, use your time-travel powers to rewind and rebuild your strategy. The game features multiple tower types, energy management, and wave-based enemy spawning.
Key Features
Time Rewind : Roll back time to survive the enemy waves
: Roll back time to survive the enemy waves Multiple Tower Types : Basic turrets, sniper towers, slowdown towers, and splash damage towers
: Basic turrets, sniper towers, slowdown towers, and splash damage towers Energy System: Manage energy for building towers and rewinding time
Controls
Game supports both keyboard and gamepad.
Move : Arrow Keys / Gamepad Analog Stick
: Arrow Keys / Gamepad Analog Stick Action : Spacebar / Cross (PlayStation) / A (Xbox)
: Spacebar / Cross (PlayStation) / A (Xbox) Rewind: Backspace / Left Trigger
Vibe Coding Proof of Concept
This game serves as a proof of concept for AI-assisted game development. Approximately 95% of the codebase was written by AI using:
Augment Code - Advanced codebase context and AI coding assistance
- Advanced codebase context and AI coding assistance Cursor - AI-powered code editor, mostly using Agent mode
- AI-powered code editor, mostly using Agent mode Claude Sonnet 4 - My LLM of choice for this project (also used OpenAI o3 and Claude Opus 4 occasionally)
For detailed prompts and development process, see PROMPTS.md.
What I've learned:
It is entirely possible to develop a game with AI, but you need to know what you're doing
AI makes prototyping super fast, but as you transition from prototype to final game you need to be careful
AIs like to write a lot of code, this project could probably have two times less code
Claude Sonnet 4 knows Phaser.js pretty well but for key areas I've given it a URL to the docs for the specific feature I was working on and it helped
If the AI gets stuck on something ask it to add debug/console logs and share them with the agent
If after that it still gets stuck don't fight it, roll back everything and try rephrasing the prompt or giving it more context
Tech Stack
Engine : Phaser 3 (v3.90.0) with Phaser Editor v4
: Phaser 3 (v3.90.0) with Phaser Editor v4 Language : TypeScript
: TypeScript Build Tool: Vite
Development
Requirements
Available Commands
Command Description pnpm install Install project dependencies pnpm dev Start development server pnpm build Build for production
Project Structure
src/ ├── main.ts # Entry point and configuration ├── scenes/ # Scenes (Title, Level, Configure) ├── prefabs/ # Prefabs (Player, Towers, Enemies) ├── systems/ # Systems (Energy, Building, Config) ├── components/ # Components (Input, Rewind) ├── ui/ # UI components (Bars, Menus, Dialogs) └── utils/ # Utilities (Sound, Music, Keys) public/ ├── assets/ # Assets (Images, Sounds, Fonts) ├── style.css # Basic CSS styles index.html # Game entry point
Credits
Idea, coding & art : m4v3k
: m4v3k Balancing, menu music & testing : death_unites_us
: death_unites_us In-game music: Amnesia Fortnight - "A - Spacebase DF-9"
Art Assets
Space Station-Game asset by jonik9i
asset by Ocunid Monster by Robocelot
Monster by Void Main Ship by Foozle
by Pixel purple gem by Lunarnia
by Seamless Space Backgrounds by Screaming Brain Studios
by Sounds from freesound.org
License
MIT License - see LICENSE file for details.