Communitygithub.com

Pranesh0805-S/Game-Dev-Skills

适用于任何2D或3D游戏、任意类型的通用游戏设计规则。在设计或实现游戏机制、碰撞、物理、移动、游戏循环、状态机、胜负条件或计分时使用,也可用于审查游戏规则结构的一致性。

Game-Dev-Skills 是什么?

该技能提供了一套与游戏类型无关的核心通用游戏设计规则,可应用于任何2D或3D游戏。它帮助开发者从底层构建稳健的游戏结构,包括游戏循环、状态机、实体管理、规则表以及胜负条件等基础要素。技能文档详细说明了在不同游戏类型(如平台跳跃、射击、解谜、竞速等)下的特定扩展规则,并强调了关键的硬性规则,例如不将游戏逻辑绑定到帧率、边界处理、数值化所有参数以及可种子的随机性。该技能适用于所有主流游戏开发平台,旨在通过结构化的规则定义和实现模式,确保游戏设计的逻辑一致性和可测试性。

兼容平台~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 的新对话。

文档

游戏规则核心

跨类型通用规则,适用于每一款游戏。类型特性应构建于这些规则之上,而非取而代之。

工作流程

  1. 确定维度(2D/3D)、类型、相机和输入方案。
  2. 在编写代码前定义规则集:实体、状态、规则、胜负条件、边界情况。
  3. 使用以下模式进行实现。
  4. 阅读 references/collision.md 了解碰撞/物理细节。
  5. 在项目中输出 RULES.md,列出所有游戏特定规则,以便后续测试。

通用结构

  • 游戏循环:输入 -> 更新(固定dt) -> 碰撞 -> 状态解决 -> 渲染。物理使用固定时间步长,渲染使用可变时间步长。
  • 游戏状态:启动 -> 菜单 -> 游戏中 <-> 暂停 -> 游戏结束/胜利 -> 菜单。每次转换必须明确,不允许无声状态变更。
  • 实体:每个实体具有位置、尺寸/碰撞体、速度、状态及其自身规则的所有权。
  • 规则表:为每条规则编写 触发条件 -> 条件 -> 效果 -> 边界情况。

每款游戏必须定义的规则

  • 胜利条件、失败条件以及重启时发生的情况(重置什么,保留什么)。
  • 分数/进度:如何增加、上限及保存方式。
  • 玩家生命/生命数:伤害来源、无敌窗口、死亡处理。
  • 生成/消失:位置、时机、限制及清理(无泄漏)。
  • 难度曲线:哪些内容会缩放以及缩放速度。
  • 输入:同时输入、输入缓冲、按键重绑定、暂停行为。

类型扩展(按需选择)

  • 平台跳跃:重力、跳跃高度/可变跳跃、边沿缓冲(约100ms)、跳跃缓冲(约100ms)、单向平台、移动平台跟随、坠落死亡平面。
  • 跑酷/无尽:速度递增、程序化生成间距确保可通过性、用于可重现性的种子。
  • 射击:射速、子弹生命周期、命中判定、弹药/装填。
  • 解谜:确定性状态、撤销、可解性检查。
  • 竞速/3D:检查点、圈数验证、防抄近路规则、相机碰撞。

硬性规则

  • 绝不能将游戏逻辑绑定到帧率。
  • 绝不允许实体在未定义结果的情况下离开游戏边界。
  • 每条规则必须编号(不写“快速”,使用单位/秒)。
  • 随机性必须可种子化。

Individual skills in this repo

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

相关技能