個人開發的瀏覽器戰術角色扮演遊戲,靈感取自《天使帝國》、《火焰之紋章》、《三國志》系列。
🟢 10 章節完整故事 — 主線 8 章 + 番外 TRUE END 2 章
主線(ch1-8)+ 番外(ch9-10 真·最終決戰)。章節背景氛圍色、ESC 暫停選單(動畫速度 / 靜音)、localStorage 設定持久化。
npm install
npm run dev # → http://localhost:5173
npm run build # 型別檢查 + 打包到 dist/# 一次性:安裝 Rust(rustup.rs)、安裝 tauri CLI
npm install
# 開發
npm run tauri:dev
# 打包安裝檔(macOS .dmg / Windows .msi / Linux .deb)
npm run tauri:build設定檔位於 src-tauri/:tauri.conf.json / Cargo.toml / src/main.rs。
- 標題:「新遊戲」開新局;有存檔時顯示「繼續」與「清除存檔」
- 過場:點擊或任意鍵推進對話
- Hub(出陣前):點武將卡片看詳細資訊,按「出陣」進戰鬥
- 戰鬥:
- 點藍色我方單位 → 綠格移動 → 紅/橘/紫框攻擊(紫=被剋、橘=剋制)
- 滑入敵人看傷害預判 tooltip
- 攻擊有動畫:近戰 lunge / 弓兵 projectile / 法師 magic burst
- 受傷時跳出傷害數字
- 「原地待命」結束行動,「結束我方回合」交給敵方
- HP 0 → 撤退(不死亡)
- 全滅一方 → 結算 → 自動存檔 → 下一章
| 章 | 標題 | 主要內容 | BOSS / 招募 |
|---|---|---|---|
| 隱11 | 修羅戰場(TRUE END 後解鎖) | 6 BOSS 同場(伯朗+卡爾+影武者+主教+副教主+教主・黯) | |
| 1 | 初遇敵軍 | 邊境遭遇法因海姆斥候 | — |
| 2 | 森林伏擊 | 密林反擊埋伏 | 弗拉德 |
| 3 | 邊境決戰 | 與伯朗將軍對決 | 伯朗將軍 |
| 4 | 河岸渡口 | 救援被圍的法米爾學院魔法師 | 招募 ★夏倫 |
| 5 | 艾斯瑞特城 | 城市保衛戰 | 卡爾將軍 |
| 6 | 王宮密室 | 揪出王宮內奸 | 影武者 |
| 7 | 黑暗山遺跡 | 阻止邪神禱詞 + 救出雷恩 | 黑暗主教(招募 ★雷恩) |
| 8 | 虛空大殿 | 與教主・黯 決戰 | 教主・黯 |
| 9 | 殘黨追擊 | 教派殘黨企圖復活教主 | 副教主・凜 |
| 10 | 虛空裂縫 | 真·最終決戰:邪神碎片本體 | 邪神碎片(TRUE END) |
- 語言:TypeScript (strict)
- 遊戲框架:Phaser 3.90
- 打包:Vite 5
- 平台:Web
| 系統 | 內容 |
|---|---|
| 6 兵種 | 劍士、槍兵、騎兵、弓兵、法師、飛兵(高機動 / 怕弓兵) |
| 多元相剋 | 矩陣式(含法師 vs 劍士特殊互動 + 弓兵 ×1.8 vs 飛兵) |
| 武將系統 | 22 名(5 玩家可用 + 17 敵方含 7 BOSS + 飛兵) |
| 武將特技 | 14 個技能真實生效(HP 觸發、移動觸發、剋制觸發、faction 觸發) |
| 等級 + EXP | 攻擊+1/傷害、擊殺+10、滿20 升級加數值 |
| 裝備 | 武器/防具,13 件可裝備物品 |
| 地形 | 平原 / 森林 / 山地 / 水域;移動成本 + 防禦加成 |
| 戰術預判 | hover 顯示我方/敵方傷害與剩餘 HP |
| 攻擊動畫 | 近戰 lunge、遠程 projectile、法師魔法 burst |
| 傷害數字 | 跳出浮動數字(紅色),EXP/升級也以浮動文字呈現 |
| 音效 | Web Audio 合成(劍揮 / 槍刺 / 弓箭 / 法術 / 命中 / 升級 / 勝負)— 無資產檔案 |
| 存檔 | localStorage 持久化章節進度 + 武將等級 + EXP |
| 章節循環 | 序章 → Hub → 戰鬥 → 結算 → 下一章 |
| 10 章節 | 主線 8 章 + 番外 2 章(TRUE END) |
| 章節氛圍色 | 每章獨特背景色調(邊境冷藍/森林綠/城牆黃昏/虛空赤紅 …) |
| 章節氛圍 BGM | 5 種 mood(peaceful / tense / dark / epic / finale)程序合成 drone,無音檔 |
| 6 種兵種身體 | 圓角方塊(劍)/ 五邊形(槍)/ 箭頭(騎)/ 梯形(弓)/ 菱形(法)/ 六邊形(飛) |
| Hub 換裝 | 每位武將可自由更換 9 種武器、5 種防具(picker overlay,setCommanderEquipment 存 localStorage) |
| 粒子效果 | 每次命中爆出小光點,顏色依攻擊兵種(劍金、槍綠、騎橘、弓藍、法紫、飛白) |
| 成就系統 | 14 個成就(10 章節通過 + 無傷 + LV 10/15 + 招募 + TRUE END 隱藏) |
| 隊伍編組 | Hub 中可逐一切換武將「✓ 出陣中/✗ 候補」狀態,候補者該章不參戰 |
| 難度 | 休閒/普通/困難 — 敵方攻擊倍率 0.7/1.0/1.3,暫停選單即時切換 |
| 隱藏挑戰 | 修羅戰場 — TRUE END 後解鎖,6 BOSS 同時降臨的最終試煉 |
| 戰鬥結算 | 每場戰鬥勝利後顯示傷害/擊殺/EXP/等級變化 + ★ MVP 標記,MVP 自動 +5 EXP |
| 戰場藥草 | 每場 3 個共用藥草(治療 12 HP,使用結束該武將回合) |
| BGM 打擊層 | dark/epic/finale mood 加入低頻心跳(80→40 Hz drop)增添緊張感 |
| 全程 BGM | 標題、Hub、戰場各自啟動 mood 對應的 drone+melody |
| 暫停選單 | ESC 開啟,含動畫速度(0.5/1/1.5/2x)+ 音效開關 + 回標題 |
| 設定持久化 | 動畫速度與靜音設定存於 localStorage |
| Phase | 內容 | 狀態 |
|---|---|---|
| 0 | 學習 + 設計文件 | ✅ 完成 |
| 1 | 微型原型 | ✅ 完成 |
| 2 | MVP 垂直切片(3 章節 + 完整系統) | ✅ 完成 |
| 3 | 戰鬥視覺強化(攻擊動畫、傷害浮動) | ✅ 完成 |
| 4 | 章節 4–6(招募夏倫 + 2 BOSS) | ✅ 完成 |
| 5 | 章節 7–8(招募雷恩 + 最終 BOSS + 結局) | ✅ 完成 |
| 6 | 武將特技生效 + 飛兵新兵種 + Web Audio 音效 | ✅ 完成 |
| 7 | 章節背景氛圍色(10 套色調) | ✅ 完成 |
| 8 | ESC 暫停選單 + 動畫速度 + 音效開關 + 設定持久化 | ✅ 完成 |
| 9 | 番外章 9–10(殘黨追擊 + 真·最終決戰 TRUE END) | ✅ 完成 |
| — Hex 重構 — | 方格 → 六角格(pointy-top/odd-r/cube 數學) | ✅ 完成 |
| 10 | HubScene 隨章節限定可出陣武將 | ✅ 完成 |
| 11 | i18n 多語系骨架(zh/en)+ 標題語言切換 | ✅ 完成 |
| 12 | Tauri 2 桌面打包設定檔(需 Rust 才能 build) | ✅ 完成 |
| 13 | 平衡輕調(影武者/教主・黯/邪神碎片數值微調) | ✅ 完成 |
| 15 | 6 種兵種獨特身體形狀(圓方/五邊形/箭頭/梯形/菱形/六角) | ✅ 完成 |
| 16 | 程序化 BGM(5 種 mood,依章節自動切換的氛圍 drone) | ✅ 完成 |
| 14 | HubScene 換裝 UI(武器/防具自由配,picker 全選擇器,存檔持久化) | ✅ 完成 |
| 18 | BGM 旋律層(不只 drone,每 mood 有 8 音符循環旋律) | ✅ 完成 |
| 19 | 命中粒子效果(依攻擊兵種染色:劍金/法紫/弓藍 etc.) | ✅ 完成 |
| 23 | 標題 / Hub BGM(peaceful drone,與戰鬥 mood 自動切換) | ✅ 完成 |
| 24 | 成就系統 — 14 個成就 + Toast 通知 + 標題列表 | ✅ 完成 |
| — 修按鈕 hit area — | 所有按鈕改用透明 Rectangle hit child(Phaser 3.90 quirk 修正) | ✅ 完成 |
| 21 | 隊伍編組 — Hub 各武將可切換「出陣 / 候補」狀態 | ✅ 完成 |
| 25 | 隱藏章節 — 修羅戰場(TRUE END 解鎖、6 BOSS 同場決戰) | ✅ 完成 |
| 26 | 難度模式 — 休閒 0.7x / 普通 1.0x / 困難 1.3x(敵方攻擊倍率) | ✅ 完成 |
| 27 | BGM 打擊樂層(dark/epic/finale 加低頻心跳) | ✅ 完成 |
| 28 | 戰鬥結算畫面(傷害 / 擊殺 / EXP / 等級變化 + MVP 標記) | ✅ 完成 |
| 29 | MVP 額外 EXP +5(戰鬥結算自動計入該章 MVP 武將) | ✅ 完成 |
| 30 | 戰場藥草(每場 3 個,治療 12 HP + 結束行動,「藥草」按鈕) | ✅ 完成 |
| 章節內容深度優化(ch1-11) | 地圖 11×8 化、序章對話 4-5 倍擴充、新增伊歐侯爵 BOSS | ✅ 完成 |
| 17 light | i18n 加入 22 武將/11 章節/6 兵種 en 翻譯 | ✅ 完成 |
| 20 | UI 主題切換 dark/sepia(暫停選單可切) | ✅ 完成 |
| 美術替換 — 立繪整合 | 10 張 AI 立繪(Nano Banana 生成)入 Hub + Cutscene 顯示 | ✅ 完成 |
| 17 full, 22+ | 全英化 cutscene(200+ 行)/ 攝影機 / 戰場 sprite | ⚪ 未開始 |
src/
├── main.ts # Phaser 設定 + 場景註冊
├── BattleScene.ts # 戰鬥主場景
├── Unit.ts # 武將單位類別(含攻擊動畫)
├── Grid.ts # 棋盤工具(Dijkstra/座標轉換)
├── types.ts # 共用 TS 型別
├── data/
│ ├── commanders.ts # 17 名武將
│ ├── unitTypes.ts # 5 兵種
│ ├── equipment.ts # 13 件裝備
│ ├── terrainTypes.ts # 4 地形
│ ├── scenarios.ts # 8 個戰場
│ ├── chapters.ts # 8 章
│ ├── cutscenes.ts # ~24 段對話腳本
│ ├── skillEffects.ts # 14 個武將特技效果註冊
│ └── save.ts # 存檔 load/save/clear
├── battle/
│ ├── CounterSystem.ts # 兵種相剋(含飛兵)
│ ├── DamageCalculator.ts # 傷害計算(地形+特技+剋制)
│ └── Leveling.ts # EXP/Level 常數
├── utils/
│ ├── audio.ts # Web Audio 合成音效
│ ├── settings.ts # 動畫速度/靜音/語言(localStorage)
│ ├── i18n.ts # zh/en 雙語表 + t() 函式
│ └── hexDrawing.ts # 六角形 path 繪製
└── scenes/
├── TitleScene.ts # 標題(新遊戲/繼續/清除/語言切換)
├── CutsceneScene.ts # 對話過場
└── HubScene.ts # 出陣前資訊(依章節篩武將)
src-tauri/ # Tauri 2 桌面包設定
├── tauri.conf.json
├── Cargo.toml
├── build.rs
└── src/main.rs
| 檔案 | 內容 |
|---|---|
DESIGN.md |
完整設計藍圖(玩法、世界觀、系統、技術選型) |
LEARNING_ROADMAP.md |
原本的個人學習路徑(Claude 接手後跳過實際學習) |
- 不設死線
- 漸進式垂直切片:每階段都是「完整可玩」
- 商業化是 Phase 6+ 後再評估的選項
武將養成型戰術 SRPG,兵種相剋為戰術骨幹,故事章節推進的西方奇幻長篇。