# nasubi

- **Event:** [Gemini 3 ハッカソン 東京](https://cerebralvalley.ai/e/gemini-3-tokyo-hackathon)
- **When:** Sat, Feb 21 at 9:00 AM – 10:00 PM (GMT+9)
- **Where:** 東京都渋谷区渋谷 3 丁目 21 - 3 渋谷ストリーム 5F
- **Team:** [Shingo NAKAZEKO](https://cerebralvalley.ai/u/shingo002), [aln ALN](https://cerebralvalley.ai/u/ALN)
- **GitHub:** https://github.com/t22m003/ghost-plot
- **Demo video:** https://drive.google.com/file/d/1Il3IFk5X-VTEI5LJWs984WV_s2P8EKNC/view?usp=sharing
- **Gallery:** https://cerebralvalley.ai/e/gemini-3-tokyo-hackathon/hackathon/gallery
- **Page:** https://cerebralvalley.ai/e/gemini-3-tokyo-hackathon/hackathon/gallery/49

# PROMPT WARS: GHOST PLOT

AIで生成したユニット画像と自分で配分したステータスを武器に、
**ドラフト（配置）→プロット（移動経路の指定）→ショーダウン（サーバー側での解決）**で戦う、2人対戦のボード×ストラテジー・プロトタイプです。

プレイヤーは「どのユニットをどのタイミングで、どれだけ消費して盤面に出すか」「次ターンの衝突をどう読んで経路を組むか」といった、読み合いとリソース管理を楽しめます。

## できること（現状）
- 2人マッチング（Auto Match / ルームID参加）
- ユニット作成（画像生成は開発用モック）とステータス配分
- 7x7 盤面でのドラフト配置、移動経路（プロット）入力
- サーバーサイドでの衝突判定・勝敗決定（チート耐性を意識）
- 1ゲーム=複数バトルのセットマッチ（スコア制）

## 技術スタック
- Frontend: React + TypeScript + Vite + socket.io-client
- Backend: Node.js + Express + Socket.io
- Shared: クライアント/サーバー共通の型定義（TypeScript）

## リポジトリ構成
- packages/frontend: ブラウザUI
- packages/backend: ゲームサーバー（ルーム管理・ゲーム進行・解決）
- packages/shared: 共有型（RoomState / Unit / Player / Room など）

---

Markdown version of https://cerebralvalley.ai/e/gemini-3-tokyo-hackathon/hackathon/gallery/49. Site index for agents: https://cerebralvalley.ai/llms.txt · full text: https://cerebralvalley.ai/llms-full.txt
