新增AGENTS.md:工作区专注Star Raid,含命令/结构/验证规则/设计禁忌

This commit is contained in:
JOJO 2026-08-06 01:28:00 +08:00
parent 927e4ed293
commit 7629cdf877

77
AGENTS.md Normal file
View File

@ -0,0 +1,77 @@
# AGENTS.md — Star Raid 工作区
**这个工作区只做一个项目Star Raid像素风竖版弹幕射击游戏。** 无关项目已移至 `~/Desktop/测试1`,不要在这里新建其他项目的文件。
## 项目概述
- 纯 HTML5 Canvas + 原生 JavaScript**无构建、无依赖、无框架**
- 240×320 像素画布,竖版弹幕射击(主武器/副武器/僚机/Boss 战/Boss Rush 模式)
- 游戏本体在 `star-raid/` 子目录
## 常用命令
```bash
cd star-raid
# 语法检查(每次改完 JS 必须跑)
for f in js/*.js; do node --check "$f" || echo "FAIL $f"; done
# 本地运行(用户试玩用)
python3 -m http.server 8643 # 然后访问 http://localhost:8643
# 注意8642 端口有浏览器缓存污染,固定用 8643
# Git仓库根 = 工作区根目录,游戏在子目录)
git add -A && git commit -m "提交信息"
```
## 验证规则(最高优先级,违反会被用户骂)
1. **禁止运行游戏测试视觉效果**——包括 playwright 截图、浏览器数据断言。视觉和手感全部由用户亲自验收。Agent 只做:`node --check` 语法检查 + git 提交。
2. 交付时必须诚实标注验证状态:"仅语法检查通过,未运行验证"。
3. 完成了操作 ≠ 任务完成,未经验证不得说"修复了/完成了"。
## 项目结构
```
star-raid/
├── index.html # 入口 + 全部覆盖层 UI 结构
├── css/style.css # 全部样式(像素风 UI 变量配色)
├── js/
│ ├── config.js # BAL 平衡参数、常量
│ ├── data.js # WEAPONS/SUBS/DRONES 装备数据表
│ ├── core.js # 游戏状态 G、发射逻辑、explodeFx 爆炸特效库
│ ├── combat.js # 子弹运动/碰撞/光束判定/zones 区域效果
│ ├── enemies.js # ENEMIES 杂兵表、BOSSES 表、bossMain/bossMinor 攻击库
│ ├── render.js # 全部渲染drawBoss 各 Boss 绘制、zones、子弹
│ ├── sprites.js # 像素字符画 bake 系统、SPR 精灵表、BHALO 弹光晕
│ ├── audio.js # SFX 音效WebAudio 合成)
│ └── ui.js # 菜单/图鉴/rush 选择/老虎机/结算
├── demo/ # 动作设计 demo如 tentacle-sweep.html 触手扫击)
└── research/ # Boss 参考图与调研(不进 git
```
## 代码规范
- 单文件不超过 500 行;新增大功能先考虑拆模块
- 严格 `"use strict"`全局函数跨文件直接调用无模块系统script 标签顺序加载)
- 编辑技巧:`edit_file` 的 old_string 必须先 grep/sed 读原文确认(含中文注释易有不可见差异);整批替换任一失败则全部不写入
## 设计禁忌(用户铁律)
1. **AoE 区域效果禁止画圆形区域**——用纯粒子、不规则雾团、电弧(钢琴蓄力圈是唯一批准的例外)
2. **禁止恢复已删除的武器**:弹跳光碟、钻头弹、感应水雷、全息诱饵、圣水领域
3. **武器命中禁止屏幕白闪**(玩家受伤/Boss 死亡的闪光保留)
4. 子弹差异化是最高优先级:颜色/形状/运动/拖尾/命中效果五轴都要拉开
5. Boss 变形=同一几何体连续演化(裂开/展开/伸长/滑开露出),禁止部件凭空出现;俯视图禁止画立体尖塔
## Boss 设计标准
设计或修改任何 Boss 前,必须读取项目记忆 `.astrion/memory/boss_design_standard.md`(视觉公式/攻击节奏/判定同源原则/小兵差异化)。触手扫击类动作设计参考 `star-raid/demo/tentacle-sweep.html` 的"前摇→释放→后摇"三段式。
核心原则一句话:**视觉 = 判定**(碰撞坐标每帧只算一份,渲染与判定同源)。
## 工作流约定
- 大改动先讨论方案再动手;视觉效果由用户验收后再迭代
- 每完成一个逻辑单元立即 git 提交(提交信息写清改了什么+为什么)
- 项目记忆(`.astrion/memory/`)沉淀重要约定,发现新约定主动更新