📐 项目管理案例 · SF-jrpg2d · 2D 日式 RPG 游戏工厂
这一页回答一件事:这个项目实际上是怎么被管的 ——
每件事卡在哪一步、谁验的、凭什么说过了、分数从哪来、以及每一步对应的真命令。
数据全部来自单一状态源
数据全部来自单一状态源
web/terminal/leverage-console/data/projects/sf-jrpg2d.json,本页是派生物,勿手改。
阶段 S1
成熟度 原型
CAPABILITY_FACTORY
现在什么状态:装配线本体+三道机器闸+小怪动作表已过验收并上线可玩;但『这是不是一座厂』还没被证明——缺第二个玩法内核
正在做:T04 第二个玩法内核
为什么现在做这个:它是整个项目唯一的证伪点:换掉玩法规则还能跑出第二款游戏,才叫厂;跑不出来,这就只是一款游戏的三种配置
为什么现在做这个:它是整个项目唯一的证伪点:换掉玩法规则还能跑出第二款游戏,才叫厂;跑不出来,这就只是一款游戏的三种配置
一、完成度是【算出来的】,不是填的
67%
30 / 45 道闸已过 | 6 / 9 件事五闸全通
完成度 = 已过闸数 ÷ (任务数 × 5) = 30 ÷ (9 × 5) = 67%
🔴 这个数字任何人都填不了。它只能靠一道一道去盖闸涨上来,
而每道闸都有机器在拦(产物不存在拒盖、自己验自己拒盖、跳闸拒收)。
这就是它和"我觉得完成了 80%"的区别。
二、流程:每件事都要过同样的五道闸
① 定义
要什么?验收标准写下来
谁能盖:任何人
机器拦什么:没有验收标准就往下走 = 后面谁也说不清算不算做完
② 设计
怎么做?接口和依赖说清楚
谁能盖:任何人
机器拦什么:跳过设计直接写代码 = 返工
③ 建造
东西真的造出来了,有产物路径
谁能盖:执行人
机器拦什么:🔴 产物路径在硬盘上不存在 → 机器拒盖(说造好了但文件不在=表演)
④ 验收
别人查过了,并留下检查记录
谁能盖:审核人(≠执行人)
机器拦什么:🔴 审核人 = 执行人 → 机器拒盖(自证不算通过);没留 evidence → 拒盖
⑤ 交付
已经上线/别人真能用
谁能盖:执行人
机器拦什么:跳闸(前一闸没过就盖后一闸)→ 机器拒收
为什么是五道而不是"做完就算":「做完」这两个字在没有闸的时候,
每个人的意思都不一样。拆成五道之后,"到哪了"变成一个可以指着看的位置,
而不是一句需要互相信任的话。
三、9 件事,各自卡在哪一闸
| # | 要做的事 | ① 定义 | ② 设计 | ③ 建造 | ④ 验收 | ⑤ 交付 | 状态 | 执行人 |
|---|---|---|---|---|---|---|---|---|
| T01 | 装配线本体 GAMEKIT 已复用 把五块零件插进内核就能跑一局游戏 |
● | ● | ● | ● | ● | 已通过 | Griffin · CGO 首席游戏官 |
| T02 | 整机 36 条验收闸 装起来之后还能不能玩,不是零件各自的单测 |
● | ● | ● | ● | ● | 已通过 | Quentin · 质量工程 负责人 |
| T03 | 人物骨架不掉零件 任何动作任何朝向,人都得是完整一块 |
● | ● | ● | ● | ● | 已通过 | Quentin · 质量工程 负责人 |
| T04 | 缺口02:第二个玩法内核 换掉玩法规则,做出玩法不同的第二款游戏 |
● | ● | ● | ● | ● | 已通过 | Dex · IT 开发与项目管理 负责人 |
| T05 | 缺口04:小怪动作表 给 8 只小怪各配一套走路动作(迈步/蹦/深振翅),并按行进方向朝向,不再滑行 |
● | ● | ● | ● | ● | 已通过 | Dex · IT 开发与项目管理 负责人 |
| T06 | 缺口01:音频插槽 打击声/脚步声/背景音——现在全程是哑的 |
○ | ○ | ○ | ○ | ○ | 未开始 | Dex · IT 开发与项目管理 负责人 |
| T07 | 缺口03:第三个渲染器 等距视角实现 |
○ | ○ | ○ | ○ | ○ | 未开始 | Dex · IT 开发与项目管理 负责人 |
| T08 | 接入界面供应商 SF-rpgui 界面窗口改用现成的那座厂,别继续手写 CSS |
○ | ○ | ○ | ○ | ○ | 未开始 | Griffin · CGO 首席游戏官 |
| T09 | 主席能找到并点开的游戏入口 新建一个独立页 /jrpg2d/:点开就是游戏,不用选地图、不用切2D、首页有卡能找到 |
● | ● | ● | ● | ● | 已通过 | Griffin · CGO 首席游戏官 |
四、逐件展开:谁做、谁验、凭什么说过了
T01 装配线本体 GAMEKIT 已复用 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛把五块零件插进内核就能跑一局游戏
为什么要它没有它每做一个游戏都要重写主循环
删了会怎样五块零件各自漂亮但装不起来
做完能看到游戏能打开就能走
验收标准gamekit_smoke 闸③⑤⑥全绿
大类 / 轨C1
| A MUST
执行人Griffin · CGO 首席游戏官
审核人Verity · 独立证据审计官
✅ 与执行人不同
产物
web/terminal/gamekit/kernel.js
✅ 文件真的在资产评分A 档(7.29 分 · AssetLens 13 维)
检查记录(凭什么说过了)线上可玩实测:https://metazero-terminal.pages.dev/jrpg2d/ → HTTP 200,这套装配线(kernel + 5 个插槽)就是该页运行时的骨架。⚠️更正记录:本条最初写的是 /game2d/,那是【另一个项目】(开放世界打警察),当时只 curl 了状态码没核对内容——主席 2026-08-13 实测发现并指出,已改正。
T02 整机 36 条验收闸 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛装起来之后还能不能玩,不是零件各自的单测
为什么要它零件全绿≠装起来能玩(实测:人物工厂全绿而游戏白屏)
删了会怎样改一处就可能悄悄弄坏另一处,没人知道
做完能看到跑一条命令就知道整局游戏还好不好
验收标准退出码 0 且 36/36
大类 / 轨C1
| A MUST
执行人Quentin · 质量工程 负责人
审核人Verity · 独立证据审计官
✅ 与执行人不同
产物
MetaZero-OS/scripts/gamekit_smoke.mjs
✅ 文件真的在检查记录(凭什么说过了)交付形态=任何人可粘贴执行的一条命令 node MetaZero-OS/scripts/gamekit_smoke.mjs;已登记进 SF-jrpg2d/QUALITY_CONTRACT.md(QG-1)与 MANUFACTURING_RECIPE.md 制造第7步,不是散落脚本
T03 人物骨架不掉零件 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛任何动作任何朝向,人都得是完整一块
为什么要它主席肉眼抓到跳跃时脚飞出去
删了会怎样同类错误只能靠人一帧帧看,必漏
做完能看到跳起来手脚跟着身体走
验收标准rig_check 7168 帧 0 掉零件
大类 / 轨C1
| A MUST
执行人Quentin · 质量工程 负责人
审核人Verity · 独立证据审计官
✅ 与执行人不同
产物
web/terminal/pixelactor2d/tests/rig_check.mjs
✅ 文件真的在检查记录(凭什么说过了)交付形态=两条可粘贴命令 rig_check.mjs / monster_delta.mjs,已登记 QUALITY_CONTRACT QG-2/QG-3;检查台网页线上可看 https://metazero-terminal.pages.dev/pixelactor2d/ → HTTP 200 且含『动作检查台』
T04 缺口02:第二个玩法内核 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛换掉玩法规则,做出玩法不同的第二款游戏
为什么要它只换世界源永远只有一款游戏;这是'真厂假厂'的唯一证伪点
删了会怎样本厂 PL2 身份永远停在待证实
做完能看到同一套零件长出玩法完全不同的一款游戏
验收标准新 RuleEngine 插上后闸⑯先拦残缺再放行完整,且 kernel 一行不改
大类 / 轨C2
| B MUST
执行人Dex · IT 开发与项目管理 负责人
审核人Verity · 独立证据审计官
✅ 与执行人不同
产物
web/terminal/gamekit/rules/jrpgx.js
✅ 文件真的在检查记录(凭什么说过了)线上逐字节核实一致:jrpg2d/index.html=5e909cdd366fd126 · jrpg2d/main.js=9a54a3831ffc6233 · gamekit/rules/jrpgx.js=45269083764f9144。入口 https://metazero-terminal.pages.dev/jrpg2d/
T05 缺口04:小怪动作表 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛给 8 只小怪各配一套走路动作(迈步/蹦/深振翅),并按行进方向朝向,不再滑行
为什么要它会动的怪才像活的;滑行一眼假
删了会怎样打怪是玩法核心,可怪本身没有动作
做完能看到怪走起来脚真的在动;野狼往左走时头也朝左
验收标准每只怪至少走/攻击/受击三套姿势并过连通性闸
大类 / 轨C2
| B SHOULD
执行人Dex · IT 开发与项目管理 负责人
审核人Verity · 独立证据审计官
✅ 与执行人不同
产物
web/terminal/pixelactor2d/core.js
✅ 文件真的在检查记录(凭什么说过了)线上已生效并逐字节核实:6 个改动文件(core.js/index.html/jrpg.js/r2d-index.js/juice.js/kernel.js)线上 sha256 前16位与本地完全一致;入口 https://metazero-terminal.pages.dev/pixelactor2d/ (小怪区上排呼吸/下排走路对照) 与 https://metazero-terminal.pages.dev/game2d/ (HTTP 200)。⚠️诚实披露:线上浏览器运行时冒烟【未覆盖】——本机 Chromium 出不了外网(ERR_CONNECTION_RESET),按 smoke_page.mjs 自述的替代凭据执行:线上字节==本地字节 + 本地真浏览器 37/37 全绿
T06 缺口01:音频插槽 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛打击声/脚步声/背景音——现在全程是哑的
为什么要它手感有一半在耳朵上,现在全哑
删了会怎样打起来永远差一口气
做完能看到砍下去有声音
验收标准新增 Audio 插槽并过契约校验;3D 不实现即 no-op
大类 / 轨C2
| B SHOULD
执行人Dex · IT 开发与项目管理 负责人
审核人-
✅ 与执行人不同
产物
-
🔴 路径不存在检查记录(凭什么说过了)-
T07 缺口03:第三个渲染器 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛等距视角实现
为什么要它两个渲染器还可能是巧合,三个才叫插槽
删了会怎样可换渲染器这条卖点没有第三方证据
做完能看到同一个世界第三种画法
验收标准热切换后位置/朝向/世界格仍不变(闸⑤⑥)
大类 / 轨C2
| B OPTIONAL
执行人Dex · IT 开发与项目管理 负责人
审核人-
✅ 与执行人不同
产物
-
🔴 路径不存在检查记录(凭什么说过了)-
T08 接入界面供应商 SF-rpgui ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛界面窗口改用现成的那座厂,别继续手写 CSS
为什么要它已有 SF-rpgui 工厂却没接进来,属于重复制造
删了会怎样两套界面各自演化,越走越不一样
做完能看到界面风格和别的项目一致
验收标准游戏界面组件来自 SF-rpgui 且闸㉘仍绿
大类 / 轨C3
| B OPTIONAL
执行人Griffin · CGO 首席游戏官
审核人-
✅ 与执行人不同
产物
-
🔴 路径不存在检查记录(凭什么说过了)-
T09 主席能找到并点开的游戏入口 ① 定义 ② 设计 ③ 建造 ④ 验收 ⑤ 交付
这是在干嘛新建一个独立页 /jrpg2d/:点开就是游戏,不用选地图、不用切2D、首页有卡能找到
为什么要它做得再对,主席进不去等于没做。这条是上一轮真实翻车的补丁:我给的链接是另一个游戏
删了会怎样删了它,2D 日式 RPG 就只活在 /mapworld/ 里——首页没挂、开场是地球选点器、开局是3D,主席永远找不到
做完能看到首页第一张卡点进去,几秒内站在草地上,旁边有会走路的小怪
验收标准①首页有入口卡 ②点开无需任何选择即进入游戏 ③开局落在草地不是裸岩/城里 ④小怪会刷出来且在走 ⑤线上逐字节与本地一致
大类 / 轨C1
| A MUST
执行人Griffin · CGO 首席游戏官
审核人Verity · 独立证据审计官
✅ 与执行人不同
产物
web/terminal/jrpg2d/index.html
✅ 文件真的在检查记录(凭什么说过了)线上逐字节核实:jrpg2d/index.html=84d4da3a2ca0ac50 · jrpg2d/main.js=63f84418b578b797 · gamekit/sources/islandgen.js=77ffc0979660342c 三个文件线上 sha256 前16位与本地完全一致;首页 curl 实测含 href=./jrpg2d/ 入口卡。入口 https://metazero-terminal.pages.dev/jrpg2d/
五、「打分在哪里」—— 三层分数,各管各的
① 项目完成度67% —— 由五闸算出来,管的是「这个项目做到哪了」。见上面第一节。
② 资产评分AssetLens 13 维打分(S/A/B/C/D 档),管的是「造出来的这个零件有多好」,
和进度无关。看板:assetlens。
上面每件事若有对应资产会直接标出档位。
③ 质量合同工厂级验收条款 QG-1…QG-8,管的是「这一族产品出厂前必须满足什么」。
每条挂一条可粘贴执行的机器闸命令,红了就不许说"做完了"。
见
MetaZero-OS/26-SuperFactory/factories/SF-jrpg2d/QUALITY_CONTRACT.md主席问「他的打分在哪里」—— 答案是它本来就不该只有一个分数。
「做到哪了」「东西好不好」「够不够格出厂」是三件不同的事,混成一个数就一定看不懂。
以前不清楚,是因为这三层散在三个地方、没人把它们并排摆出来。
六、现在能开工什么(依赖已满足)
- T06 缺口01:音频插槽 Dex · IT 开发与项目管理 负责人
python3 MetaZero-OS/scripts/pmos.py gate SF-JRPG2D --tid T06 --set defined --evidence "<要什么+验收标准>" - T07 缺口03:第三个渲染器 Dex · IT 开发与项目管理 负责人
python3 MetaZero-OS/scripts/pmos.py gate SF-JRPG2D --tid T07 --set defined --evidence "<要什么+验收标准>" - T08 接入界面供应商 SF-rpgui Griffin · CGO 首席游戏官
python3 MetaZero-OS/scripts/pmos.py gate SF-JRPG2D --tid T08 --set defined --evidence "<要什么+验收标准>"
被依赖卡住的
- (没有被卡住的)
七、风险与缺口
- ⚠️ 只有一个玩法内核 → 『可反复产出同类游戏』目前是待证实,不是已证实
- ⚠️ 线上浏览器运行时冒烟未覆盖(本机 Chromium 出不了外网),目前靠『线上字节==本地字节 + 本地浏览器全绿』替代
还差什么厂的三条能力缺口还在:没有第二个玩法内核(T04)、没有音频(T06)、没有第三个渲染器(T07);界面仍是手写 CSS(T08)
下一个验收点T04 用同一套零件换出第二个玩法内核并跑通整机闸
八、怎么操作 —— 这一页上的每个数字,都是这几条命令跑出来的
立项
python3 MetaZero-OS/scripts/pmos.py new sf-jrpg2d --title "…" --goal "…" --profile CAPABILITY_FACTORY加一件事
🔴 若和现有零件高度重合,不写
pmos.py task add SF-JRPG2D --tid T10 --name "…" --plain "…" --criteria "…" --owner "…" --cat C1 --track A --priority MUST
🔴 若和现有零件高度重合,不写
--module(复用哪个) 或 --why-new(为什么现成的不行) 就建不出来盖闸(①②③⑤)
pmos.py gate SF-JRPG2D --tid T05 --set built --artifact <真实路径> --evidence "…"盖验收闸(④)
pmos.py gate SF-JRPG2D --tid T05 --set verified --reviewer "<审核人,必须≠执行人>" --evidence "怎么查的+结果"看现在能开工什么
pmos.py ready SF-JRPG2D看全貌
pmos.py board SF-JRPG2D写回真实变化
transparency.py bump SF-JRPG2D --what "…" --why-real "…" --found "…" --changed "…" --verify-next "…"刷新这一页
python3 MetaZero-OS/scripts/pmcase.py sf-jrpg2d && python3 MetaZero-OS/scripts/site_publish.py pmcase
相关页面:← 回 ONEDECK 统一台(主席平时看的那块)
| 全部项目看板
| 资产评分
本页由
本页由
MetaZero-OS/scripts/pmcase.py 从项目档案生成 —— 派生物,改内容请改档案再重生成。