一键导入
tower-defense
快速製作純原生(零依賴)Canvas 2D 無盡塔防遊戲。當使用者想做塔防、tower defense、守城、放置砲塔擋怪物的網頁遊戲時觸發。提供可直接執行的單頁遊戲,含多種砲塔升級、元素克制、主動技能、無盡隨機波次與 Boss 戰,並用統一設定檔串接 Grok CLI 生成美術。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
快速製作純原生(零依賴)Canvas 2D 無盡塔防遊戲。當使用者想做塔防、tower defense、守城、放置砲塔擋怪物的網頁遊戲時觸發。提供可直接執行的單頁遊戲,含多種砲塔升級、元素克制、主動技能、無盡隨機波次與 Boss 戰,並用統一設定檔串接 Grok CLI 生成美術。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | tower-defense |
| description | 快速製作純原生(零依賴)Canvas 2D 無盡塔防遊戲。當使用者想做塔防、tower defense、守城、放置砲塔擋怪物的網頁遊戲時觸發。提供可直接執行的單頁遊戲,含多種砲塔升級、元素克制、主動技能、無盡隨機波次與 Boss 戰,並用統一設定檔串接 Grok CLI 生成美術。 |
| when_to_use | 觸發語句包含「做一個塔防」「tower defense」「守城遊戲」「放砲塔擋怪」「無盡波次」「塔防遊戲技能」。 |
| shell | powershell |
在幾分鐘內生出一個可直接在瀏覽器執行的 Canvas 2D 塔防遊戲。 技術路線純原生:HTML + CSS + 原生 JavaScript + Canvas 2D,零框架、零建置、零 npm。
當使用者要做塔防類遊戲:怪物沿路徑前進、玩家放砲塔攔截、守護女神。本模板特色:
tower-defense/
├── SKILL.md
├── art-config.json # ★ 美術生成設定(砲塔/怪物/技能提示詞)
├── index.html # 遊戲頁面 + HUD/UI 樣式
├── src/
│ ├── config.js # ★ 資料層:塔/怪/技能/元素克制/平衡參數
│ ├── game.js # 核心引擎:Canvas 渲染、遊戲迴圈、波次、戰鬥
│ └── ui.js # HUD、建塔選單、技能列、升級面板
├── assets/{towers,enemies,skills}/ # 美術圖(生成後放這)
├── scripts/gen-art.ps1 # 用 Grok 批次生成美術
└── references/data-model.md # 加塔/加怪/調平衡說明
# 在 tower-defense 根目錄起 server
python -m http.server 8000
# 開 http://localhost:8000/index.html
玩法:選砲塔 → 點地圖空格建造(不能蓋路徑上)→ 點「開始下一波」→ 塔自動攻擊怪物 → 賺金錢升級/蓋更多塔 → 撐越多波越高分。
⚠️ 用 HTTP server 開(不要 file://),server 開在
tower-defense/根目錄。
config.js 是資料層:塔、怪、技能、元素克制、平衡都在這,改這裡即可調整。game.js 的 drawSprite 優先用 assets/<group>/<id>.png,
沒有才用 emoji。接美術不需改邏輯。startWave() 依波數算血量成長與敵人組成,bossEveryWaves 控 Boss 頻率。elementMultiplier(atk, def) 回傳傷害倍率(克制 1.5、被克 0.66)。這些是預設要做的,不是選配。greybox(純色塊)版本不可接受:
--surface-0/1/2)+ 統一陰影
(inset 0 1px 0 rgba(255,255,255,.05), 0 4px 12px rgba(0,0,0,.35))+ 柔邊框
(rgba(255,255,255,.07))。強調色(綠/金)只用在 CTA,不當大面積背景。:hover 提亮 + :active{transform:translateY(1px)},
觸控目標 min-height:44px。strokeText(黑描邊)再 fillText。getImg 的去背處理融入場景(地圖滿版磚塊用 noBg)。生成時這些是預設機制,缺了就不算「超好玩」:
localStorage 存 bestWave,
破紀錄慶祝、每局產出魂晶(可規劃永久升級)。HUD 顯示歷史最高。base * growth^wave)給金錢出口,塔開放 6 級,
血量分段成長(前期 0.15、後期 0.10)。改完跑 scripts/sim-balance.js 驗證撐波 ≥20。改 config.js 即可,細節見 references/data-model.md:
TOWERS 加一筆(range/damage/fireRate/cost/element/特殊效果)ENEMIES 加一筆(hp/speed/reward/element)GAME.hpGrowthPerWave(波血量成長)、bossEveryWaves 等cd tower-defense
.\scripts\gen-art.ps1 -DryRun # 預覽
.\scripts\gen-art.ps1 # 生成全部
.\scripts\gen-art.ps1 -Group towers # 只生砲塔
生完圖檔自動放到 assets/<group>/<id>.png,遊戲會自動載入。
起 server → 開 index.html → 建幾座塔貼著路徑 → 開始波次 → 確認塔射擊、敵人扣血死亡、 金錢增加、波次循環。Console 只有 favicon/未生成圖的 404 屬正常(會 fallback 到 emoji)。
測試提示:
window.TD暴露state()、startWave()、selectTower()等接口可程式化驗證。