From 00d7bbfba188f2d8bdb589b7469554126a907307 Mon Sep 17 00:00:00 2001 From: DKChan <524912269@qq.com> Date: Thu, 5 Nov 2026 07:07:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=87=E6=A1=A3=E8=AE=BE=E8=AE=A1(=E8=90=A5?= =?UTF-8?q?=E5=9C=B0=E4=BA=A4=E4=BA=92=E4=BF=AE=E5=A4=8D=E6=89=B9=C2=B7?= =?UTF-8?q?=E5=AE=9A=E7=A8=BF=E8=90=BD=E6=96=87=E5=9B=9B=E5=A4=84):=20?= =?UTF-8?q?=E5=BE=85=E8=A3=81=E7=82=B9=E6=B8=85=E9=9B=B6=E5=90=8E=E5=86=99?= =?UTF-8?q?=E5=85=A5=E2=80=94=E2=80=94=E2=91=A0camp.md=20v2.8=20=C2=A7?= =?UTF-8?q?=E9=A1=B6=E6=A0=8F=20=E8=A1=A5=E6=A0=8F=E4=BD=93=E5=AE=9A?= =?UTF-8?q?=E5=80=BC(=E5=BA=95=3DCAMP=5FHEADER=5FBAND=20#6E4526=C3=97?= =?UTF-8?q?=E4=B8=8D=E9=80=8F=E6=98=8E=E5=BA=A60.80=E3=80=81=E9=AB=9848?= =?UTF-8?q?=E5=85=A8=E5=AE=BD=E6=B5=AE=E5=B1=82=E3=80=81=E6=A0=8F=E5=86=85?= =?UTF-8?q?=E5=8F=AA=E9=92=A5=E7=9F=B3=E5=BE=BD=E7=AB=A0=E4=B8=80=E4=BB=B6?= =?UTF-8?q?=E5=8F=B3=E4=BD=8D=E9=A1=B6=E6=A0=BC=E3=80=94=E5=BE=BD=E7=AB=A0?= =?UTF-8?q?=E8=87=AA=E9=AB=9848=EF=BC=9D=E6=A0=8F=E9=AB=98=E6=95=85?= =?UTF-8?q?=E6=97=A0=E9=A1=B6=E8=B7=9D,=E7=B3=BB=E5=B0=BA=E5=AF=B8?= =?UTF-8?q?=E6=8E=A8=E5=AF=BC=E9=9D=9E=E9=80=89=E6=8B=A9=E3=80=95=E3=80=81?= =?UTF-8?q?=E5=B7=A6=E4=BD=8D=E4=B8=8D=E6=94=BE=E4=BB=B6,=E9=AA=8C?= =?UTF-8?q?=E6=94=B6=3D=E7=9B=AE=E6=A3=80=E7=AA=84=E5=B8=A6=E5=8F=AF?= =?UTF-8?q?=E8=BE=A8=EF=BC=8B=E6=9C=BA=E6=A3=80=E6=A0=8F=E4=BD=93=E5=91=88?= =?UTF-8?q?=E8=89=B2=E5=AF=B9=E8=90=BD=E4=BD=8D=E5=B8=A6=E5=BA=95=E8=89=B2?= =?UTF-8?q?=E2=89=A53:1)=20=E2=91=A1art-bible=20v3.43=20=C2=A76.2=20?= =?UTF-8?q?=E9=92=A5=E7=9F=B3=E4=BD=99=E9=A2=9D=E8=A1=8C=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E5=90=8C=E7=BB=84=E5=AE=9A=E5=80=BC=E5=B9=B6=E6=8C=87=E5=9B=9E?= =?UTF-8?q?=20camp=20=C2=A7=E9=A1=B6=E6=A0=8F=20=E4=B8=BA=E5=94=AF?= =?UTF-8?q?=E4=B8=80=E4=BA=8B=E5=AE=9E=E6=BA=90(=E9=98=B2=E4=B8=A4?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E5=90=84=E8=AF=B4=E4=B8=80=E5=A5=97)=20?= =?UTF-8?q?=E2=91=A2HUD=E6=A1=86=E6=9E=B6=20=C2=A7=E6=8F=90=E7=A4=BA?= =?UTF-8?q?=E4=B8=8E=E5=BC=B9=E5=B1=82=20=E7=94=B1=E3=80=8C=E4=B8=A4?= =?UTF-8?q?=E6=9D=A1=E7=BA=AA=E5=BE=8B=E3=80=8D=E6=94=B9=E3=80=8C=E4=B8=89?= =?UTF-8?q?=E6=9D=A1=E7=BA=AA=E5=BE=8B=E3=80=8D=E6=96=B0=E5=A2=9E=E5=85=B6?= =?UTF-8?q?=E4=B8=89=3D=E7=A1=AE=E8=AE=A4=E5=BC=B9=E7=AA=97=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E4=BD=8D=E6=AC=A1=E5=AE=9A=E5=80=BC(=E6=8E=A8?= =?UTF-8?q?=E8=BF=9B=E9=92=AE=E5=9C=A8=E5=B7=A6=E3=80=81=E7=BB=B4=E6=8C=81?= =?UTF-8?q?=E7=8E=B0=E7=8A=B6=E9=92=AE=E3=80=94=E5=8F=96=E6=B6=88/?= =?UTF-8?q?=E7=95=99=E4=B8=8B/=E5=90=A6=E3=80=95=E5=9C=A8=E5=8F=B3?= =?UTF-8?q?=E3=80=81=E4=B8=89=E9=92=AE=E5=BD=A2=E6=80=81=E6=AC=A1=E6=8E=A8?= =?UTF-8?q?=E8=BF=9B=E5=B1=85=E4=B8=AD,=E5=9B=9B=E5=A4=84=E6=B6=88?= =?UTF-8?q?=E8=B4=B9=E6=96=B9=E5=85=B1=E7=94=A8=E5=90=8C=E4=B8=80=E4=BB=B6?= =?UTF-8?q?=E5=90=8C=E4=B8=80=E5=BA=8F,=E4=BD=8D=E6=AC=A1=E4=B8=8D?= =?UTF-8?q?=E9=9A=8F=E6=96=87=E6=A1=88=E5=8F=98=E8=AF=AD=E4=B9=89=E7=94=B1?= =?UTF-8?q?=E6=96=87=E6=A1=88=E6=89=BF=E6=8B=85),=E5=87=BA=E5=A4=84?= =?UTF-8?q?=E6=8C=89=E7=94=A8=E6=88=B7=E8=A3=81=E8=90=BD=20HUD=E6=A1=86?= =?UTF-8?q?=E6=9E=B6=20=E8=80=8C=E9=9D=9E=20interaction-patterns=20?= =?UTF-8?q?=E5=BA=93(=E8=AF=A5=E5=BA=93=E6=96=87=E4=BB=B6=E5=A4=B4?= =?UTF-8?q?=E8=87=AA=E5=A3=B0=E6=98=8E=E3=80=8C=E4=B8=8D=E5=BC=95=E5=85=A5?= =?UTF-8?q?=E6=96=B0=E8=AE=BE=E8=AE=A1=E5=86=B3=E7=AD=96=E3=80=8D=E4=B8=94?= =?UTF-8?q?=E5=85=B6=E6=88=90=E6=96=87=E6=9D=A5=E5=8E=86=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=AD=98=E7=96=91)=20=E2=91=A3=E5=BE=85=E5=8A=9E=E6=B8=85?= =?UTF-8?q?=E5=8D=95=E6=9C=AC=E6=9D=A1=E7=8A=B6=E6=80=81=20=E5=BE=85?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E8=AE=BE=E8=AE=A1=E2=86=92=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E5=B7=B2=E9=97=AD=E5=90=88=EF=BC=8B=E5=BE=85?= =?UTF-8?q?=E5=86=99=E5=8D=A1,=E5=88=A0=E3=80=8C=E7=BC=BA=E5=8F=A3?= =?UTF-8?q?=E3=80=8D=E5=B1=9E=E6=80=A7(=C2=A712.1:=E5=B7=B2=E9=97=AD?= =?UTF-8?q?=E5=90=88=E6=80=81=E4=B8=8D=E5=BE=97=E6=AE=8B=E7=95=99),?= =?UTF-8?q?=E5=AE=9E=E5=86=B5=E6=94=B9=E5=86=99=E4=B8=BA=E4=B8=89=E4=BB=B6?= =?UTF-8?q?=E4=B8=80=E5=BC=A0=E5=8D=A1=EF=BC=8B=E4=B8=89=E4=BB=BD=E5=AE=9A?= =?UTF-8?q?=E7=A8=BF=E6=8C=87=E9=92=88=E5=B8=A6=E7=89=88=E6=9C=AC=E5=8F=B7?= =?UTF-8?q?,=E6=9D=A1=E7=9B=AE=E5=90=8D=E3=80=8C=E5=BC=80=E5=B1=80?= =?UTF-8?q?=E5=9B=9E=E4=B8=BB=E8=8F=9C=E5=8D=95=E3=80=8D=E8=AE=A2=E6=AD=A3?= =?UTF-8?q?=E4=B8=BA=E3=80=8C=E5=BC=80=E5=B1=80=E8=A2=AB=E5=BC=80=E5=A7=8B?= =?UTF-8?q?=E5=B1=82=E7=9B=96=E4=BD=8F=E3=80=8D(=E7=9C=9F=E6=9C=BA?= =?UTF-8?q?=E7=8E=B0=E8=B1=A1=E7=B3=BB=E5=86=92=E9=99=A9=E5=B7=B2=E5=9C=A8?= =?UTF-8?q?=E5=BA=95=E4=B8=8B=E5=BC=80=E5=B1=80=E3=80=81=E5=BC=80=E5=A7=8B?= =?UTF-8?q?=E5=B1=82=E7=9B=96=E4=BD=8F=E2=80=94=E2=80=94system=5Ftest.gd:8?= =?UTF-8?q?7-89=20=E5=B1=82=E5=BA=8F=E6=96=AD=E8=A8=80=E4=B8=BA=E6=8D=AE);?= =?UTF-8?q?=20=E8=AE=BE=E8=AE=A1=E4=BE=9D=E6=8D=AE=3D=E6=9C=AC=E4=BC=9A?= =?UTF-8?q?=E8=AF=9D=E7=94=A8=E6=88=B7=E8=A3=81(=CE=B10.80=20=E5=8D=8A?= =?UTF-8?q?=E9=80=8F=E6=98=8E=E6=A1=A3=E4=B8=BA=E5=AE=9A=E5=80=BC/?= =?UTF-8?q?=E6=A0=8F=E5=86=85=E5=8D=95=E4=BB=B6/=E9=92=AE=E5=BA=8F?= =?UTF-8?q?=E5=B7=A6=E6=8E=A8=E8=BF=9B=E5=8F=B3=E7=BB=B4=E6=8C=81)+?= =?UTF-8?q?=E9=A2=84=E8=A7=88=E4=BA=BA=E5=AE=A1=E3=80=8C=E6=88=91=E7=9C=8B?= =?UTF-8?q?=E4=BA=86=E9=A2=84=E8=A7=88=E7=9A=84=E6=95=88=E6=9E=9C=E6=98=AF?= =?UTF-8?q?OK=E7=9A=84=E3=80=8D;=20=E6=9C=AC=E6=AD=A5=E5=87=AD=E6=8D=AE:?= =?UTF-8?q?=20pipeline=5Fgate=20=E7=9B=B4=E8=B7=91=20PASS(=E6=9D=A1?= =?UTF-8?q?=E7=9B=AE25/=E5=8D=A1=E7=89=87=E5=8F=A3=E5=BE=841=E5=BC=A0?= =?UTF-8?q?=E5=85=A8=E8=BF=87)+tools/run=5Fall=5Fgates.sh=20--docs=20exit?= =?UTF-8?q?=3D0=20=E9=97=B8=E5=86=B5=E4=B8=8E=E5=9F=BA=E7=BA=BF=E4=B8=80?= =?UTF-8?q?=E8=87=B4=E6=97=A0=E6=96=B0=E5=A2=9E=E7=BA=A2(=E5=9B=9E?= =?UTF-8?q?=E6=89=A7=20domain=3Ddocs,=E5=9F=BA=E7=BA=BF=20cc2be27b)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- design/art/art-bible.md | 4 ++-- design/gdd/systems/表现与支撑/HUD框架.md | 2 +- design/gdd/ux/camp.md | 4 ++-- 待办清单.md | 15 ++++++--------- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/design/art/art-bible.md b/design/art/art-bible.md index 1ca77c1f..7b973957 100644 --- a/design/art/art-bible.md +++ b/design/art/art-bible.md @@ -1,6 +1,6 @@ # 美术圣经(Art Bible)— Dungeon Sweeper -> 项目:Dungeon Sweeper(扫雷 × 自动战斗 闯关 Roguelike)· 状态:**第 1–9 节定稿**;现行为 v3.42,历次修订明细见 git 提交史 +> 项目:Dungeon Sweeper(扫雷 × 自动战斗 闯关 Roguelike)· 状态:**第 1–9 节定稿**;现行为 v3.43,历次修订明细见 git 提交史 > > **Art Director Sign-Off(AD-ART-BIBLE)**:历次批均未签核——此为 Lean/Solo 模式(非 PHASE-GATE)下的现行治理状态;full 门禁签核时机待用户表态。 > 风格基调:地牢题材但**非暗黑风**——轻快明亮的幻想冒险风,全年龄;像素风;角色 2~3 头身。 @@ -395,7 +395,7 @@ - **交付形态**:**背景层 1 张(不透明全幅)+ 围墙层 1 张 + 八个物件层 = 10 张**,其中 9 张透明底、1 张不透明全幅 + 一份坐标表(贴图矩形/命中矩形/z 序)。**篝火例外**:命中矩形只取下半(火堆),上半(火焰)只作特效展示。围墙层落盘按细条裁,不做全幅(全幅约 3.9 MB 显存,细条约 0.35 MB);**实装落盘矩形 `(0, 261, 1280, 49)`、底锚 y310**(Y 压缩按桩身 43px 终稿锁定值精确,落带内〔规划带 (0,240,1280,70)〕;备选 A′〔带高 70/桩身 62〕存档 artwork 同目录)。 - **色彩与氛围依据**:营地场景的冷暖分工(冷的大面积后退、暖的小面积前进)、空气透视三档与大面积用色规则 = `reports/提案-营地色彩与氛围脚本-2026-10-23.md`。本节不复述色值;新增环境色按 §4.1 场景环境子板条款登记(每屏一套、≤32 色、过 §4.2 语义检查与 RGB 三通道差 ≥8/255 两道门)。 - **交互四态(零新素材,全部程序化)**:悬停=**轮廓亮边 + 浮动**(浮动须整像素吸附);按下=位移 1px;**禁用/未解锁=降明度 + 去饱和**(§2 已缩窄至情绪域,状态表达不受限),**仅锻炉(锻造工坊)与宝箱(秘宝匣)两件会有此态**;已解锁=常态。 -- **钥石余额**:常驻画面顶部的一行小 HUD 栏(高 48px,**浮层覆盖,不挤压画面**)。 +- **钥石余额**:常驻画面顶部的一行小 HUD 栏(高 48px,**浮层覆盖,不挤压画面**)。栏体底=`CAMP_HEADER_BAND` `#6E4526`(§7.2 五 token 对齐表在册色)× 不透明度 0.80;栏内只钥石徽章一件、右位顶格,左位不放件。呈现定值的唯一事实源=[camp](../gdd/ux/camp.md) §顶栏,本节不复述判据。验收:目检〈顶栏成一条可辨窄带,徽章落在带内〉 - **事实源边界**:解锁条件/价格/存档写入归元进度 GDD 与 `MetaProgression`;素材命名与路径归 `asset-path-map`;清单登记归 `art-assets-checklist` §3.5。 - **已裁(2026-11-01 用户裁)**:① **营地环境子板色值**——不前置拍板:量化场景实际用色后按 §4.1 场景环境子板条款登记(每屏一套、≤32 色、过 §4.2 语义检查与 RGB 三通道差 ≥8/255 两道门);② **门扇与门洞的高宽比例**——门扇 240×220 追认现值,坐标按门洞 x520–760 对齐(`camp-scene-prompts.md` §2.3);③ **帐篷的落地尺寸**——300×170 追认现值(各素材第一张样本稿已过审为终稿,重定即触发重出,不裁)。 diff --git a/design/gdd/systems/表现与支撑/HUD框架.md b/design/gdd/systems/表现与支撑/HUD框架.md index 3ee13988..50deaeb7 100644 --- a/design/gdd/systems/表现与支撑/HUD框架.md +++ b/design/gdd/systems/表现与支撑/HUD框架.md @@ -87,7 +87,7 @@ HUD框架站在玩家与全部玩法系统之间:挖掘期它是输入的翻 | toast | 非模态 | 自动消退 2.5 秒,不打断挖掘 | | 图例面板 / 明细回看 / 胜负终局 | 模态 | 同一张登记序栈:统一入栈出栈、后开置顶、关闭逐层恢复 | -两条纪律横跨两族。其一,"第一次遇到"类提示(本作没有双击快开、挖不相邻格要先走近)走 toast,每场冒险至多弹一次。其二,拒绝反馈不属于一次性族——每次被拒都要可感知,且图标与文案双通道冗余(不靠颜色单独承载);棋盘面拒绝(动作不合棋盘规则,目标格边框闪)与资源面拒绝(行动点或储备不足,数字脉冲)必须可区分。图例面板恒可随时打开回看,不设解锁门。 +三条纪律横跨两族。其一,"第一次遇到"类提示(本作没有双击快开、挖不相邻格要先走近)走 toast,每场冒险至多弹一次。其二,拒绝反馈不属于一次性族——每次被拒都要可感知,且图标与文案双通道冗余(不靠颜色单独承载);棋盘面拒绝(动作不合棋盘规则,目标格边框闪)与资源面拒绝(行动点或储备不足,数字脉冲)必须可区分。图例面板恒可随时打开回看,不设解锁门。其三,**确认弹窗的按钮位次定值**:推进操作的钮在左、维持现状的钮(取消/留下/否)在右,三钮形态的次推进钮居中;全项目确认弹窗共用同一件、同一序,四处消费方(删档确认/营地大门有断点的三出口/营地大门无断点是否开局/篝火离场)皆然。**位次不随文案变**,语义由文案承担。 ### 呈现层订阅纪律:界面不自持状态、订阅面只留两条线 diff --git a/design/gdd/ux/camp.md b/design/gdd/ux/camp.md index 991baf70..0c81f411 100644 --- a/design/gdd/ux/camp.md +++ b/design/gdd/ux/camp.md @@ -1,6 +1,6 @@ # 营地场景 UX spec(camp) -> 状态:v2.7(现行) +> 状态:v2.8(现行) > 事实源:本 spec(呈现)+ [元进度](../systems/跨局循环/元进度.md)(机制) > 美术画法:[art-bible](../../art/art-bible.md) §6.2/§7.5;素材命名与路径:[asset-path-map](../../art/asset-path-map.md) > 相邻:[level-map.md](level-map.md)(主菜单语境) @@ -38,7 +38,7 @@ ## 顶栏 -钥石余额常驻画面顶部一行小 HUD 栏(高 48px、全宽窄条、**浮层覆盖在场景图上层,不挤压画面**)。刷新入口已实装=营地刷新单口(进档与营地内写口尾触发,现开界面与顶栏余额同步取现值)。 +钥石余额常驻画面顶部一行小 HUD 栏:高 48px、全宽窄条、**浮层覆盖在场景图上层,不挤压画面**。栏体底=营地头带深棕 `#6E4526`(token `CAMP_HEADER_BAND`,色值出处 [art-bible](../../art/art-bible.md) §7.2 五 token 对齐表)× **不透明度 0.80**——半透明系定值,底下画面透出 20%。栏内**只放钥石徽章一件**,右位、顶格落座(徽章自高 48px=栏高,无顶距可言),左位不放件。验收:目检〈顶栏成一条可辨窄带、徽章落在带内〉+机检〈栏体呈色对其下方落位带底色对比 ≥3:1〉。刷新入口已实装=营地刷新单口(进档与营地内写口尾触发,现开界面与顶栏余额同步取现值)。 ## 叠层与开合 diff --git a/待办清单.md b/待办清单.md index fe0f38d3..c7de721a 100644 --- a/待办清单.md +++ b/待办清单.md @@ -2,19 +2,16 @@ 本清单是流水线的唯一登记处:以后才做的事在此登记一条,随流水线段推进改状态,做完整条删除(条目记进度,不是各段的开工前置);各系统文档的「待办」节只留一行指路存根,不再自建条目。条目格式(标题=登记元数据含可选优先级,正文=实况/缺口/改动面/状态四属性)与状态机以 [doc-conventions §12.1](design/engineering/doc-conventions.md) 为权威。 -#### 营地交互修复批——大门无断点开局回主菜单/确认框钮序/营地顶栏形态(2026-11-05 登记,来源=会话提及) +#### 营地交互修复批——大门无断点开局被开始层盖住/确认框钮序/营地顶栏无栏体(2026-11-05 登记,来源=会话提及) -**实况**:三件同批解决、互不依赖素材,后续拆卡不合卡。 -- bug 证据①无断点开局回主菜单:`game/presentation/camp_shop_presenter.gd:85`(`on_camp_closed()` 无条件显开始层)→ `game/presentation/main.gd:211-212`/`223-224`(大门两出口先关营地再开局)→ `main.gd:292-311`(`_start_adventure()` 无隐藏语句);该路径测试与探针零覆盖(启动全走 `_start_adventure_from_menu()`) -- bug 证据②确认框否左是右:`game/presentation/views/confirm_dialog.gd:31-39`(`_init` 内 add_child 序=取消→次→确认;信号按按钮对象路由不按位次,换文案不改位次) -- bug 证据③营地顶栏无栏体:`game/presentation/views/camp_hud_band.gd:10-17`(透明 Control 只挂右上钥石徽章) -- 相关文档 [营地屏 UX spec](design/gdd/ux/camp.md) v2.7 §顶栏(只定高 48px/全宽/浮层覆盖,未定底色·内容排布·徽章落位) - -**缺口**:camp.md §顶栏 段待补(底色/内容排布/徽章落位);确认框目标钮序待裁(确认左/确认右)。 +**实况**:三件同批一张需求卡片,改动—验收对照表内一件一行。设计定稿=design/gdd/ux/camp.md v2.8 §顶栏、design/gdd/systems/表现与支撑/HUD框架.md §提示与弹层、design/art/art-bible.md v3.43 §6.2。 +- bug 证据①无断点开局被开始层盖住:`game/presentation/camp_shop_presenter.gd:85` 显开始层 → `game/presentation/main.gd:211-212`/`223-224` 先关营地再开局 → `main.gd:292` `_start_adventure()` 不隐藏;该动线测试与探针零覆盖 +- bug 证据②确认框否左是右:`game/presentation/views/confirm_dialog.gd:31-39` 加入序=取消→次→确认 +- bug 证据③营地顶栏无可见栏体:`game/presentation/views/camp_hud_band.gd:10-17`(件已装配落座,缺栏体底与落座定值) **改动面**:文档+游戏代码 -**状态**:待文档设计 +**状态**:文档设计已闭合+待写卡 #### 三关色相 × 五组微光互辨抽测——三关图类型色板终值冻结的前置抽测(2026-10-28 登记,来源=会话提及)