概要
Tower of Time は、時間操作とタワーディフェンスを融合したブラウザゲーム。 AIによるコーディング支援で開発され、 Beginner's Jam Summer 2025 に提出。 Phaser.jsを用いた初のゲーム制作経験を詳細に記録。 AI活用のメリット・課題、技術構成、開発プロセスを公開。 GitHubでコード・プロンプト全公開、誰でも学べる資料提供。
Tower of Time:AIと共に作るタイムトラベル・タワーディフェンス
- Tower of Time は、時間を巻き戻して戦略を再構築できる新感覚タワーディフェンスゲーム。
- 敵のウェーブ に対して拠点を守る、時間操作を駆使するプレイ体験。
- 複数のタワータイプ (基本タレット、スナイパータワー、スローダウン、スプラッシュダメージ)を活用。
- エネルギー管理 によるタワー設置・時間巻き戻しのリソース戦略。
- ウェーブ制敵出現 による緊張感とリプレイ性。
主な機能
- 時間巻き戻し機能 による戦略の再構築。
- 多彩なタワー とアップグレード要素。
- エネルギーシステム を用いたリソース管理。
- キーボード・ゲームパッド両対応 の操作性。
操作方法
- 移動 :矢印キー / アナログスティック
- アクション :スペースバー / Cross(PlayStation) / A(Xbox)
- 巻き戻し :Backspace / Left Trigger
AI活用によるゲーム開発の実証
- 本作は AI支援によるゲーム開発のPoC(概念実証) として制作。
- コードの約95% をAI(Augment Code, Cursor, Claude Sonnet 4等)で生成。
- Claude Sonnet 4 はPhaser.jsにも精通、特定機能は公式ドキュメントURLを共有して精度向上。
- デバッグ時は AIにログ出力を指示、解決困難時はプロンプトの再設計が有効。
- AIはコード量が多くなりがち、冗長性に注意。
技術スタック・開発環境
- ゲームエンジン :Phaser 3(v3.90.0)、Phaser Editor v4
- 言語 :TypeScript
- ビルドツール :Vite
- 開発要件 :Node.js、pnpm
- 主なコマンド
- pnpm install:依存関係インストール
- pnpm dev:開発サーバー起動
- pnpm build:本番ビルド
プロジェクト構成
- src/
- main.ts:エントリーポイント
- scenes/:シーン管理
- prefabs/:プレハブ(プレイヤー・タワー・敵)
- systems/:システム(エネルギー・ビルド等)
- components/:コンポーネント(入力・巻き戻し)
- ui/:UI部品
- utils/:ユーティリティ
- public/
- assets/:画像・音声・フォント
- style.css:CSS
- index.html:ゲーム開始ページ
クレジット・ライセンス
- 企画・コーディング・アート :m4v3k
- バランス調整・メニュー音楽・テスト :death_unites_us
- ゲーム内音楽 :"Amnesia Fortnight - A - Spacebase DF-9"
- アートアセット :jonik9i, Robocelot, Foozle, Lunarnia, Screaming Brain Studios
- サウンド :freesound.org
- ライセンス :MIT License
開発者ノート・学び
- 20年以上のソフトウェア開発経験 を持つが、ゲーム制作は未経験。
- AIコーディングエージェント の登場により、初挑戦を決意。
- Phaser.js の基礎を学び、 Beginner's Jam Summer 2025 へ参加。
- 約25~30時間 (本業後の作業)で Tower of Time を完成・提出。
- AIでのゲーム開発は十分実用的、特にプロトタイピングが高速。
- プロトタイプから本番移行時はAIの出力精査が必要。
- コードとプロンプトをGitHubで全公開、学習資料として活用可能。
- アートはitch.ioの無料素材中心、サウンドはfreesound.org利用。
- 開発過程の一部をTwitchで配信 (5時間超の長編動画)。
- 次回作はさらに野心的なプロジェクトを目指す。
- コメント・質問歓迎、知見の共有を重視。
プレイ・資料リンク
- ゲームプレイ :https://m4v3k.itch.io/tower-of-time
- GitHub(コード・プロンプト公開) :提出リンク参照
- Twitch開発配信 :https://www.twitch.tv/videos/2503428478