Communitygithub.com

Pranesh0805-S/Game-Dev-Skills

適用於任何2D或3D遊戲、任何類型的通用遊戲設計規則。在設計或實作遊戲機制、碰撞、物理、移動、遊戲循環、狀態機、勝利/失敗條件或計分時使用,或在審查遊戲規則結構的一致性時使用。

Game-Dev-Skills 是什麼?

此技能提供了一套與遊戲類型無關的核心規則,適用於任何2D或3D遊戲的設計與開發,涵蓋平台、射擊、益智、賽車等多種常見類型。其主要優點在於能強制開發者在編寫程式碼前先定義規則集合,確保遊戲邏輯的一致性與可測試性,並避免將邏輯與幀率綁定等常見陷阱。技能支援所有程式碼編輯器或AI代理,透過定義清晰的流程:從確定維度、類別、攝影機與輸入方案開始,到產出結構化的RULES.md文件,從而實現規則的明確紀錄與測試。其工作流程包含四個步驟:辨識遊戲屬性、在編碼前定義規則、實作通用模式,並最終產出可供測試的規則文件。技能強制規定了實體應包含位置、碰撞體、速度、狀態及自有規則;遊戲狀態機必須包含明確的轉換;每個規則都需要有觸發條件、前提、效果與邊界案例的表格形式。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Pranesh0805-S/Game-Dev-Skills/tree/HEAD/skills/game-rules-core

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Game Rules Core

與遊戲類型無關的規則,每個遊戲都需要。特定類型的特色邏輯應建構於這些規則之上,不得取代它們。

工作流程

  1. 確定維度(2D/3D)、類型、攝影機與輸入方案。
  2. 在編寫程式碼之前定義規則集合:實體、狀態、規則、勝利/失敗條件、邊界案例。
  3. 使用以下模式進行實作。
  4. 閱讀 references/collision.md 以了解碰撞/物理的具體細節。
  5. 在專案中產出 RULES.md,列出每一條遊戲專屬規則,以便後續測試。

通用結構

  • 遊戲循環:輸入 -> 更新(固定時間步長)-> 碰撞 -> 狀態解析 -> 渲染。物理使用固定時間步長,渲染使用可變時間步長。
  • 遊戲狀態:Boot -> Menu -> Playing <-> Paused -> GameOver/Win -> Menu。每個轉換必須明確,不得有隱式狀態變更。
  • 實體:每個實體擁有位置、大小/碰撞體、速度、狀態,以及屬於自己的規則。
  • 規則表格:每條規則應寫出 觸發條件 -> 前提 -> 效果 -> 邊界案例。

每個遊戲必須定義的規則

  • 勝利條件、失敗條件,以及重啟時發生的事(哪些重置、哪些保留)。
  • 分數/進度:如何增加、上限及如何存檔。
  • 玩家生命值/命數:傷害來源、無敵窗、死亡處理。
  • 生成/銷毀:位置、時機、限制與清理(無洩漏)。
  • 難度曲線:哪些項目會隨著時間變化,以及變化速度。
  • 輸入:同時輸入、輸入緩衝、按鍵重新綁定、暫停行為。

類型附加規則(選擇適用的)

  • 平台遊戲:重力、跳躍高度/可變跳躍、跳躍放寬時間(約100ms)、跳躍緩衝(約100ms)、單向平台、移動平台跟隨、掉落死亡平面。
  • 跑酷/無盡遊戲:速度曲線、程序化生成間距確保可通行、種子值以支援重現性。
  • 射擊遊戲:射速、子彈存活時間、命中判定、彈藥/換彈。
  • 益智遊戲:確定性狀態、復原、可解性檢查。
  • 賽車/3D遊戲:檢查點、圈數驗證、防抄捷徑規則、攝影機碰撞。

硬性規定

  • 永遠不要將遊戲邏輯綁定到幀率。
  • 永遠不要讓實體無定義結果地離開可遊玩邊界。
  • 每條規則都應有數值(不要使用「快速」,應使用單位/秒)。
  • 隨機性必須可透過種子控制。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相關技能