119 KiB
美术圣经(Art Bible)— Dungeon Sweeper
项目:Dungeon Sweeper(扫雷 × 自动战斗 闯关 Roguelike)· 状态:第 1–9 节定稿;现行为 v3.42,历次修订明细见 git 提交史
Art Director Sign-Off(AD-ART-BIBLE):历次批均未签核——此为 Lean/Solo 模式(非 PHASE-GATE)下的现行治理状态;full 门禁签核时机待用户表态。 风格基调:地牢题材但非暗黑风——轻快明亮的幻想冒险风,全年龄;像素风;角色 2~3 头身。 参考池(用户审阅选定,三者相融):Into the Breach(网格信息分层;雷图棋盘呈现基准 = 其战棋地块质感 × 正俯视角,见 §3.2)× Moonlighter(明亮像素地牢质感)× Peglin(明快全年龄地牢色彩);参考截图存于
design/art/references/(三款 × 2 张,与点名池一一对应);Enter the Gungeon 不作参考,反面条款见 §9.2。 约束:本圣经是纯表现层文档——明亮轻快是美术风格,不是玩法成分。圣经禁止引入、暗示或预设任何玩法语义,不改变任何 GDD 已锁机制;凡表现层需要玩法钩子才能表达之处(如完美封印检测、Boss 预警),一律标注「待 GDD 定夺」,圣经只规定"若有,则如何呈现"。GDD 机制与圣经冲突时,机制语义以 GDD 为准,呈现方案以本圣经为准。 条款验收标注纪律(全文书写规范):条款尾部按三档标注验收方式——验收:机检〈判据>(可量化,脚本能断言)/验收:目检〈判据>(机器测不了,但看什么、怎么算有明确判据)/验收:方向性(气质与方向原则,不承担验收);推导源尾注「←」继续表达推导来源,与验收标注同句并存时,验收标注放句末;数值类条款推荐「待定现用」态(现行即执法、修订走登记,释义见 §4.1)
1. 视觉身份宣言
1.1 一句话视觉规则
「明快的地牢,轻快的扫荡,仔细的推理。」 验收:方向性
三拍定调:世界观(明快的地牢)× 玩法动作(轻快的扫荡)× 玩法心智(仔细的推理)。本句为气质宣言,不承担裁决;视觉决策歧义时,依 1.2 三条支撑原则依次裁决(每条附设计测试),原则全部不过的方案否决。本节是美术圣经的最高裁决层,后续章节与本节冲突时,以本节为准。
1.2 支撑原则
原则一|预告上格(取自 Into the Breach;锚定 P1 推理的掌控感、P2 规划的延迟兑现)
继承其格内信息分层与"攻击预告画在目标格上"的范式:一切威胁、伤害与结算预告必须直接绘制在雷图格本体上,禁止只进侧栏或悬浮提示;格内绘制优先级固定:数字(含色牌) > 小人标记 > 封印印记 > 变异纹带 > 装饰变体 > 底色,任何元素禁止遮挡数字。格面类型预读 = 类型微光单通道,色相+明度双码(色带见 §4.2、键契约见 §4.6;徽章小图标族保留给库存与结算明细;类型微光为底效泛光层,不入遮挡栈、不遮任何元素)。与 ITB 之别:只取其信息骨架,弃其冷暗军事色调。验收:目检〈预告画在雷图格本体上,任何元素不遮挡数字〉
范围注:本原则约束"已存在的信息往哪里画",不新增信息种类;预告类信息以战斗侧 GDD 实际定义的为准(如 P2 已锁的结算来源标注),GDD 未定义的预告不因本条而存在。
设计测试:当某信息歧义于"画进格子"还是"收进面板"时,画进格子。
原则二|明亮为皮,明度分档为骨(取自 Moonlighter、Peglin;锚定 P1 可读性前提、P4 探险氛围)
取 Moonlighter 的暖质地砖与亲和冒险者气质、Peglin 的明快全年龄洞穴色彩:全局暖倾向、无压抑。可读性由格底明度分档承载——已开格(数字所在格)明度走世界底层档(§2 明度分层;格态语义见《排雷玩法》;美术侧据此未开格走受光墙顶档、已开格走挖出空间沉暗档,与 §8.5 图底分离同轴),亮族数字墨直接画在格底上,直画对比 ≥4.5:1 恒成立。数字色牌为后备手段——仅复杂格底(物件纹样/变异纹带/微光叠加致格底对比不足)时垫牌后备(画法 §3.3、色值 §4.1)。格子本体美术放开:纹理、材质、装饰变体、类型纹样皆可入画;格底参数域见 §4.1 硬指标(分档明度域、饱和上限),仍避 Boss 禁入色相带。与参考之别:ITB 以半透明压暗板承载信息;本作格底功能分档(信息可读性服务)。验收:机检〈1–8 全档数字对所在已开格底对比 ≥4.5:1〉
设计测试:当格子美术与数字可读性冲突时,先调格底明度档,复杂格底垫色牌后备,不动格子画。
原则三|一砖一世界(融合 Moonlighter 地砖观;锚定 P3 风险与收益同源、P4 地牢下探隐喻)
格子即地牢地砖:未开 = 覆尘完整砖,已开 = 碎裂裸露,雷 = 被惊动的巢穴(格态定义与玩家说法见《排雷玩法》),图类型(board_type)= 同款地砖换色板。图类型与变异格的视觉差异一律先做色板变体,不做新资产;一切危险状态必须"形状 + 颜色"双通道冗余,色弱可辨。像 Moonlighter 之处在砖缝质感与暖色道具,但装饰禁止伪装成逻辑差异——玩家须一眼分清"好看"与"有雷"。验收:目检〈危险状态均为形状+颜色双通道,色弱模拟下可辨〉
格子同时是内容舞台,格与格的美术表达按格内实态分层多样化(画法细则 §3.2)。已开格按当格结果整格表达——产资源格嵌对应家族物件纹样(地图战斗资源九类型,§4.6.3)、纯安全格呈现干净裸土、危险格巢穴更凶。未开格在覆尘完整砖之上叠加装饰变体(裂纹/碎石斑/物件级点缀等氛围层),用途是破除大面积同砖平铺的重复感。物件级装饰(小石块/陶片/骨殖等)须走专属装饰形状家族:形与信息元素(数字/小人/封印印记/纹样)形状语言隔离,灰度下不与任何逻辑元素同形。零信息纪律:随机分布、与雷/安/类型零相关、禁止构成可读线索、分布每板一次跨轮不复掷。焦点预算约束:装饰不构成完整凸形、不抢读(§3.4);数量配额按图类型定(候选 3–5 种,样张已冻结,§1.4)。未开格的类型预读画为类型微光单通道(色相+明度双码;仍只表达类型,不泄危险格与安全格——呈现契约见 §4.6.3;概念定义、可见范围与生命周期见《HUD框架》「未开格类型微光」节)。验收:目检〈物件级装饰与逻辑元素形状隔离;装饰不构成完整凸形〉
设计测试:当新图类型或新变异格需要新视觉时,先换色板加形状,再谈新资产;当格子多样化与"好看/有雷"之辨冲突时,砍装饰,不动逻辑通道。
1.4 格子样张测试(验收标准)
立意:扫雷数字可读性与暗色氛围相冲突,由一次格子样张测试定风格,具体形态由样张测试定稿。样张 = 一张按本圣经参数画成的格子风格试验图,是砖面形态的定稿闸——样张通过前,§3.2/§4.1 的一切参数只是候选,通过后冻结为制作标准。
样张内容清单(一图齐备,缺项即无效):未开格(覆尘完整砖,含至少两种装饰变体)、已开格(碎裂裸露,含 0 格与 1–8 全档数字)、危险格(被惊动的巢穴)、封印印记、小人两态(独立占格 + 与数字同格——后者须验"边框高亮不覆盖文本")、图类型色板变体组(§4.3 四槽换色,至少两套)、数字呈现组(已开格底亮墨直画组 + 复杂格底色牌后备组——素底/装饰变体底/变异纹带底至少三种格底上各一组数字)、已开格结果表达组(纯安全格 + 至少两类型物件纹样)、类型微光呈现组(至少三个类型的微光在纯砖格上呈现——样张为静态定格测试图,非运行时行为承诺,实际可见时机见《HUD框架》「未开格类型微光」节;含两两相邻格微光并列;微光格内零角嵌/箭头/加号类附加图形)。验收:目检〈样张图含清单全部组项〉
验收项按序判定,第一项不过 = 整张否决(数字可读性定风格,风格服从可读):
- 第一验收项|数字可读性(硬指标,可测):1–8 全档数字对其所在已开格底直画 WCAG 对比 ≥4.5:1(参数域见 §4.1:已开格底走世界底层档、棋盘数字墨亮族);复杂格底(物件纹样/变异纹带/微光叠加致直画对比不足)启用色牌后备,牌墨组合 ≥4.5:1(色牌与牌上深墨族数字的定值见 §4.1),牌缘灰度可分;0.5× 缩放抽检数字仍可辨;纹带/裂纹/巢穴纹/物件纹样禁止侵入数字字形占位区(砖心留白,§3.2)。验收:机检〈1–8 数字对已开格底直画与牌墨组合对比均 ≥4.5:1〉
- 格态三形可辨(灰度通道):未开/已开/雷三态转灰度截图后仍可逐格分类;明度差(墙亮/空间暗)与碎裂形同为合法分类通道,双通道冗余(§3.2 完整度叙事)。装饰变体禁止制造新的分类特征——同一格态下带与不带变体的灰度差异禁止成为三态分类线索。色弱模拟(去色相)下封印印记、巢穴纹不与裂纹混淆。五组类型微光互辨:色弱玩家的类型主通道 = 微光,色相+明度双码,微光以明度梯度承载分组(组内不细分,属 §2 信息面层内梯度);微光禁止侵入数字字形占位区,明度梯度禁止压破格底明度档(三态分类不受扰)。验收:目检〈三态灰度逐格可分类;五组微光互辨;色弱模拟下封印印记、巢穴纹不与裂纹混淆〉
- 焦点预算成立(§3.4):任意一格至多一个完整凸形;数字所在格无第二焦点。验收:目检〈任一格至多一个完整凸形,数字所在格无第二焦点〉
- 图类型换皮抽测(§4.3):变体组中数字墨亮族三档、封印黑、危险红、奖励金、小人蓝、数字色牌(后备件)、类型微光五组恒定不动;变体格底仍过第 1、2 项指标。验收:机检〈换皮后不变槽色值恒定,变体格底仍过第 1、2 项〉
判定与回退:第 1 项不过时按原则二设计测试回退——先调格底明度档,复杂格底垫色牌后备,禁止缩字号换字形逃避;第 2–4 项不过时修形不修数。样张通过 = 砖面形态与色板冻结;新增图类型/变异色板须重跑本测试(§4.3)。执行时机:正式砖面资产开工前;《HUD框架》以本节为引用依据。验收:机检〈样张机检断言集全绿后方可冻结砖面形态与色板〉
整屏样张闸:格子样张验"格",整屏样张验"屏"——战斗屏/关卡屏/菜单屏/营地屏各出一张整屏样张,验收四项:①全部文字(含菜单/说明/tooltip/按钮)对其直接背景 ≥4.5:1(WCAG AA),大字(≥18px 或加粗档)底线 3:1、目标 4.5:1;②明度分层三档带成立(信息面层 > 世界中层 > 世界底层,层间灰度可分);③整屏焦点预算(§3.4:首焦唯一——数字区/立绘/主按钮,无第二焦点竞争;负空间服务焦点,不属空窗);④文字禁直接压纹理底(垫容器或罩层)。验收顺序 = 方向稿目检先行(防"机检过闸但气质否决"式返工),目检过后机检冻结。执行时机 = 屏级视觉落码开工前;过闸前一切屏级视觉为占位临时态(§7.1 完成条款)。样张判定物的产出手段与素材输入级别不进圣经定值——圣经只定样张要验什么,不定样张以何种手段产出、也不定它取哪一级别素材输入。验收:机检〈整屏样张四项断言全绿,且目检先行过审〉
战斗一屏样张:整屏样张闸已过——整屏四项机检全绿,方向稿目检已通过(用户实机目检核销,沿革查 git 提交史)
样张现状:格子样张已冻结,冻结凭据 = §4.1/§8.2 定值表;样张 v3 产物原件已丢失、未入 git。现行冻结态:色板与帧数档维持冻结;数字形制 = 亮墨三档直画 + 色牌后备(值见 §4.1);新增图类型/变异色板须重跑本节测试。验收:机检〈冻结项定值均以 §4.1/§8.2 对应 owner 表为准〉
2. 氛围与情绪(Mood & Atmosphere)
本节服从第 1 节宣言「明快的地牢,轻快的扫荡,仔细的推理」。能量值为全作统一 0–10 刻度:0 静谧,10 沸腾。
明度分层(硬规则):明度按视觉层分带——信息面层(数字/UI 数据/预告/语义标识)最高、世界中层(格底顶面/角色/物件)居中、世界底层(背景/纵深/远景/已开空间)可更低;层间明度差服务空间纵深与光照(Moonlighter 式洞穴层次)。类型微光的明度梯度(§4.2)属信息面层内梯度,不扰世界层明度档。验收:目检〈三档明度带层间灰度可分〉
世界底层两子带:世界底层拆两条子带——底层下沿带 L 0.014–0.06(远景、洞窟纵深、B 区舞台底、屏幕根底)与底层上沿带 L 0.08–0.14(已开格底、迷雾记忆态合成底),子带间隔 ≥0.02。拆两子带用于解决世界底层内部 B 区舞台底(L=0.036)与 D 区已开格底(L≈0.10)同层难辨的问题——两者同属世界底层,单带下跨度 0.126 吃掉层间间隔 0.08,灰度图上会表现为两个不同的底。§1.4 整屏②项约束的是层间可分(底层上沿 0.14 对世界中层下沿 0.22,差 0.08 本就满足),②项不约束同层内可分,故本条不属②项的成立要件,而是世界底层内部的可读性纪律。验收:机检〈同一屏的世界底层成员全部落进两条子带之一,两子带 L 区间不重叠且间隔 ≥0.02〉
2.1 挖掘阶段(核心状态,占时最长)
- 主情绪:棋手式清明专注——视线始终被数字牵引,画面无一处杂音抢焦;久推不生视觉疲劳
- 色彩性格:暖石色低饱和打底(世界中层),高饱和高亮只属于信息面层(数字与封印印记)
- 氛围形容词:清爽、井然、可读、耐心
- 能量:2/10
- 承载元素:可挖域接触带呼吸微光——光画在英雄格周界的接触面上(正交邻墙 = 整条边,斜向邻墙 = 共享角点 + 向两侧各延伸半条边;画法 §3.2,蓝族色 §4.2)——画面里唯一在动的,是玩家的思路。验收:目检〈挖掘期仅接触带微光在动,棋盘与数字静止〉
2.2 轮末自动战斗结算
- 主情绪:延迟兑现的清算爽感——扫雷之因逐行兑现为战果;完美封印(概念定义与兑付结构见《地图战斗资源》)的高光兑现——结算带高光行,以其为全场喝彩级的最高反馈档
- 色彩性格:情绪由色相与饱和承载——金橙主导、饱和拉高,明度分层不动;数字色转译为弹道色沿行推进
- 氛围形容词:酣畅、递进、一气呵成
- 能量:7/10,随连击爬升
- 承载元素:兑现光带逐行横扫棋盘,开格化箭雨、印记化暴击砸向敌人,因果全程可见可归因。验收:目检〈兑现光带逐行横扫、因果可见可归因〉
2.3 清图奖励与换图
- 主情绪:短促丰收——宝箱揭盖式的喜悦,三五秒即收,不拖节奏
- 色彩性格:全屏饱和峰值:金粒喷泉与彩纸迸发,饱和瞬时拉满后回落;明度分层不动
- 氛围形容词:丰收、轻快、干脆
- 能量:8/10,尖峰后速降
- 承载元素:最后一格碎砖中喷出的 GP 喷泉,叮当落入 UI 钱袋。验收:目检〈金粒喷泉短促收敛,饱和峰值后回落〉
2.4 战斗胜利
- 主情绪:从容自信——「我算对了」的盖章确认;克制而非狂欢,胜利属于头脑
- 色彩性格:暖白与金,不用红与爆炸
- 氛围形容词:笃定、舒展、体面
- 能量:6/10
- 承载元素:棋盘中央落下一枚金色蜡封,碎砖自动拼出胜利纹章。验收:方向性
2.5 战斗失败(冒险终结)
- 主情绪:温柔的惋惜与「再来一次」的邀请——有分量、不惩罚,像合上一册冒险日志
- 色彩性格:情绪由色相承载——色相转暖灰掺暮蓝,明度分层不动;全作禁血红与黑场,唯此一拍最静
- 氛围形容词:惋惜、安静、余温、可再来
- 能量:1/10
- 承载元素:小人坐在碎砖上摇头掸灰,落下的封印印记逐枚化作光点收回行囊。验收:目检〈无血红与黑场;色相转暖灰掺暮蓝〉
2.6 Boss 与精英遭遇
- 主情绪:被注视的郑重感——预告更华丽,但预告上格规则不变,掌控仍在玩家
- 色彩性格:格底保持基准,Boss 专属紫赤为全场唯一占用的色相——郑重感来自色相独占,不来自压暗
- 氛围形容词:郑重、锋利、仪式感
- 能量:5/10,静水深流,结算时才沸腾
- 承载元素:Boss 影子先于本体爬过棋盘,扫过处短暂留下紫赤足迹(纯视觉预告;是否绑定机制由战斗侧 GDD 定夺)。验收:目检〈紫赤足迹为纯视觉预告;高饱和紫赤仅 Boss 战占用〉
2.7 下探过渡(关卡间)
- 主情绪:纵深的期待——「下面还有一层」的探险引力,如降落时一瞬失重
- 色彩性格:整层色板随图类型(board_type)递进换挡,以色相层进预告「更深更险」;世界层明度带允许随深度整体微移(空间纵深表达,非情绪;候选,待整屏样张冻结)
- 氛围形容词:纵深、期待、换气、进阶
- 能量:4/10
- 承载元素:镜头沿竖井匀速下移,两侧砖层色板渐变,预演下一层主色。验收:目检〈下探过渡中砖层色板随图类型渐变〉
2.8 菜单与元进度(存档/永久强化)
- 主情绪:可靠的营地感——成长可见、可点、可规划,归来即蓄势
- 色彩性格:全作最暖:烛光黄与木色,中等饱和,无棋盘式高对比
- 氛围形容词:温暖、笃实、归属
- 能量:3/10
- 承载元素:一张可点击的营地场景图——远景天空与远山,中景木围墙(密排竖木桩、桩顶削尖、不透缝无横木)与半开的营地大门,近景中央的篝火、左侧锻炉铁砧、右侧帐篷与宝箱、帐篷旁的笔记本,另有木桩与挂在围墙上的布告板;点画面里的物件进入对应界面(冒险/锻造工坊/秘宝匣/生涯记录/天赋树/图鉴/离开营地)。钥石余额常驻画面顶部的一行小 HUD 栏。场景构成、七物件绑定与呈现位见 §6.2。验收:目检〈点营地物件进入对应界面,钥石余额常驻顶部 HUD 栏〉
2.9 状态间区分度自检
推理与兑现靠「谁在动 + 饱和」区分:挖掘时棋盘静止,唯光标微光在动、高饱和只在数字上;结算时棋盘自体运动,金色光带横扫、饱和扩散至全屏。胜利与失败以色相即判(金蜡封对暮蓝收印),Boss 战以紫赤色相是否登场作标记。验收:目检〈任两场景依「谁在动+饱和」或色相可即时区分〉
自动战斗过场化与「我算对了」缺高光的风险对策见 2.2;全年龄失败表现对策见 2.5。
3. 形状语言(Shape Language)
规则尾注「←」标注推导来源:P1–P4=游戏支柱(P1 推理的掌控感/P2 规划的延迟兑现/P3 风险与收益同源/P4 地牢下探隐喻,语义见 §1.2 各原则「锚定」注);原一/二/三=1.2 支撑原则;§2.x=第 2 节条目。本节只定画法;凡涉具体变异、状态种类之处一律待 GDD 定夺,本节只规定"若有,则如何画"。
总纲|圆角为世,直线为信:本作形状二分——一切物件用圆角方形(地砖、角色体块、UI 面板共用同一圆角率),一切逻辑信息用直线直角(数字框、准线、结算光带)。玩家凭"圆还是方"即分清世界与信息。验收:目检〈物件呈圆角方形、逻辑信息呈直线直角〉 ←气质宣言;原一
3.1 道具点剪影(角色剪影见 character-design.md §5.1)
角色四类 archetype(小人/普通怪/精英/Boss)与轮廓通道硬规则见 character-design.md §5.1;本节保留唯一非生物剪影:
- 道具点:唯一非生物剪影——直线几何体(晶体/箱体),禁有机曲线;风险与收益在剪影层即为两类。验收:目检〈道具点均为直线几何体,无有机曲线〉 ←P3
3.2 环境几何
- 雷图棋盘呈现基准:战棋地块质感 × 正俯视角——取 ITB 参考图(
references/itb_1.jpg)的地表质感骨架:地块纹理多样、起伏体块感、岛缘/砖缘厚度、格上装饰小立牌;但相机一律正上方垂直向下,格线屏轴对齐,禁等距/斜视角与菱形格;形状语言仍守总纲圆角方形。砖缘厚度与岛缘立体面属形体塑造(顶面格底仍守 §4.1 参数域)。装饰小立牌属 ITB 参考的观感元素,本作不采用;装饰变体走氛围层纪律(纹理级/物件级形状家族,见下方装饰变体条),零信息纪律以原则三为准。验收:目检〈棋盘正俯视、格线屏轴对齐、无菱形格〉 ←原二;原三;§2 - 地砖:一切环境体由同一圆角方形衍生:未开 = 完整凸砖,已开 = 同形缺角碎裂,雷 = 碎裂加巢穴纹(危险格玩家说法见《排雷玩法》);只以"完整度"叙事,不为状态新造形。验收:目检〈三格态仅以完整度区分,无新造状态形〉 ←原三;P4
- 装饰变体(未开格氛围层):覆尘完整砖之上叠加裂纹/碎石斑/物件级点缀等装饰。物件级装饰(小石块/陶片/骨殖等)须走专属装饰形状家族(与信息元素形状语言隔离、灰度下不与任何逻辑元素同形),数量配额按图类型定(候选 3–5 种,样张已冻结,§1.4),一律残缺、内凹、低对比而自然后退(§3.4);零信息纪律(分布随机、与雷/安/类型零相关、灰度下禁止制造新分类特征、分布每板一次跨轮不复掷)以原则三为准,此处不赘。验收:目检〈物件级装饰不与任何逻辑元素同形;装饰残缺低对比后退〉 ←原三
- 结果整格表达(已开格):已开格按当格结果整格表达(结果清单见原则三);画法——产资源格的家族物件纹样用 §3.1 道具点剪影语言(直线几何体)角嵌于砖缘,砖心与数字字形占位区留白(已开格仍承载数字);危险格巢穴纹较已开格更凶一档,形状+颜色双通道。验收:目检〈产资源格嵌家族纹样且砖心留白;巢穴纹更凶一档〉 ←原三;P3
- 未开格预读通道(微光单通道):类型预读 = 类型微光单通道(色相+明度双码,色带 §4.2);色弱类型主通道 = 微光明度梯度(组粒度——组间互辨;§2 微光明度例外);格内零角嵌/箭头/加号类附加形(微光格只留微光)。验收:目检〈微光格内零角嵌/箭头/加号类附加形〉 ←原一;原三
- 封印印记:封印动作的叙事呈现 = 封印(玩家可见专名,术语定义见 术语表「封印」条;动作面见《排雷玩法》)——封印动作落在格上的印记称封印印记。形 = 法阵:一圈外环+环内一个十字,十字四端顶到环内沿、与环连成一体——两层构成取法阵通用骨架(外环=圈定范围,环内图形=力量图形,非指特定作品):环=封印圈定,十字=钉住此格。画法 = 参数化绘制(着色器按格边实时画环与十字,不出贴图):格边 26–46px 连续可变,任何贴图源都得非整数缩放(32px 源在 28 格缩到 0.875、在 46 格放到 1.44),像素必宽窄不均;参数化按比例画,任意格边清晰。环外光圈:印记外面一圈压暗光(纯黑只加透明度)——自环外缘起、向外衰减到格边为止、不外溢邻格,作用 =「此格被罩住」;禁中心亮、禁色相、禁呼吸。尺寸定值见 §8.2「封印印记参数表」(本处不复述数值)。色 = 封印黑
#000000(§4.1),光圈只改 alpha、不新增色。占位:印记居格心,环外留 9% 格宽给光圈(见 §8.2);封印印记只出现在未开格,不与数字同格。格内栈位见 §1.2;层序纪律——印记层低于小人,且迷雾态(区外全黑/记忆态)隐藏(§6.5「封印随格隐没」)。封印特效两件:常显形态即本件,施印瞬间未实装。战末金蜡封徽记仍取贴图seal_mark.png(与棋盘侧参数化绘制并存,两处互不依赖)。验收:目检〈环径占格宽 82%±1px;光圈只在环外且不出格;纯黑无色相〉 ←原一;P2 - 可挖域接触带微光(交互反馈层):挖掘期,英雄格周界与可挖域(概念见《排雷玩法》动作合法性节;呈现义务见《HUD框架》可挖域指示)的接触面画呼吸微光——正交邻墙 = 该侧整条边,斜向邻墙 = 共享角点 + 向两侧各延伸半条边;光只画英雄格(空间)一侧、不进墙格(与装饰变体零冲突,数字砖心不涉);微光 = 空间的灯光边界(画法规则)。色相 = 蓝族浅一档(§4.2 蓝条;与主角蓝框的分层由样张测试定,§1.4);呼吸 = §2.1 挖掘期唯一在动元素,减动效停格。角点为斜墙与正交墙共享、不逐格归因,逐格指认 = 悬停金框(呈现交互归《HUD框架》悬停指示域)。验收:目检〈微光只画英雄格一侧接触面:正交邻墙整条边、斜向邻墙角点 + 半边〉 ←§2.1;§4.2;P1
- 墙体:圆角砌块堆叠,禁尖刺装饰——尖刺专属危险语义,装饰禁止伪装逻辑差异。验收:目检〈墙体无尖刺装饰〉 ←原三
- 高墙瓦片体系|术语与定义:未挖格 = 一整块 32×32 自含凸起岩体;素材语义名——未开格素材 = 墙瓦片,已开格素材 = 地面瓦片。瓦片以自含岩体为单位,Tiny Dungeon 拼块套不进自含岩体定义,不作瓦片参考。验收:目检〈未开格为整块凸起岩体,无拼块接缝感〉 ←原三
- 高墙瓦片体系|边界墨线纪律:墙瓦片与相邻格分界一律 1px 深墨线、直线贴格边、零锯齿;墨线职责 = 分隔,不追求与地面融合。验收:目检〈分界为 1px 深墨直线贴格边、零锯齿〉
- 高墙瓦片体系|光照纪律(单一北受光):北缘 = 墨线内侧 1px 微亮棱(就地取色提亮,禁宽亮带);西/东缘 = 墨线后直进纹理、不加修饰;南缘 = 墨线 + 立面窄暗条(约 1/3 格高,横层理叠石、禁竖条纹栅栏感)。验收:目检〈北缘亮棱、南缘窄暗条;无宽亮带、无竖条纹栅栏感〉
- 高墙瓦片体系|凹角收头:角点单像素落线;南立面侧凹角加 1px 立面收头——带身与转角竖线同列收尾,禁悬空、禁突出。验收:目检〈凹角收头与转角竖线同列,无悬空突出〉
- 高墙瓦片体系|现行定稿:
game/assets/art/board/terrain_*(16 唯一墙瓦片 + 5 地面瓦片变体;词表与查表逻辑落码于board_world.gd)。验收:机检〈terrain_* 素材 16 墙瓦片 + 5 地面变体在库,查表逻辑与词表一致〉 - 高墙瓦片体系|高墙感 D 投影档与整板悬崖:南临空墙格 = 立面口沿高光 2px
#C9AF83(201,175,131——代码色BRICK,与掩尘枚同源单点) + 双段暗带(0.16/0.25 格边,黑罩 α0.60/0.82);北邻墙地面格 = 三段渐隐投影(顶带 0.22 格边,α0.28 起);整板悬崖 = 板底/右侧DEPTH_PX 8px暗面 + 列分隔竖缝 + 岩层横纹 + 口沿高光 + 接触 AO + 底线收边 + 悬浮影(游戏board_world.gd同款结构件,样张脚本与游戏渲染常量同源)。验收:目检〈南临空墙格呈口沿高光+双段暗带;北邻墙地面格呈三段渐隐投影;整板悬崖结构件齐备〉 - 变异格形状通道(双通道之"形",与色无关):底砖圆角外轮廓不变,砖面内缘绘一圈定宽专属几何纹带(纹带形全作不与他类共用),砖心留白予数字与封印印记;验收标准 = 灰度截图下仍可分类。种类清单 = 地形变异六类型已定稿(地形变异 GDD;荆棘丛/藤蔓缠绕/岩浆/烬覆/落石/矿尘):纹带形按轴只分两种——伤害轴(荆棘丛/岩浆/落石)= 刺/缺排斥形,信息轴(藤蔓缠绕/烬覆/矿尘)= 遮蔽/缠绕形;同轴跨图类型只做色板变体(§4.3
variant_tint槽),不做新纹形。岩浆纹带橙红须与危险红互辨(变异格不是雷,色相邻近有混淆风险);信息轴遮蔽呈现禁止侵入数字字形占位区(§1.4 验收 1 延伸)。验收:目检〈六类型纹带灰度下仍可分类,同轴不新增纹形;岩浆纹带与危险红互辨〉 ←原一(纹理位次第 4,让位于数字/小人/封印印记);原三
3.3 UI 形状语法(方向指导,细则见 §7.1)
方向指导:半拟物——容器穿戏服、数据素面;圆角 = 可触摸的物件,直角 = 须精确的信息(总纲「圆角为世,直线为信」的 UI 侧落法)。画法细则(面板/按钮/蜡封/数字色牌/参考分界)成文于 §7.1。验收:方向性 ←原二;§2.4
3.4 主角形状与对比预算
显著度 = 完整度:每格至多一个"完整凸形"(数字/小人/封印印记,依 1.2 优先级让位;装饰变体贴砖缘分布、不构成第二完整凸形——§4.6;数字色牌随数字一体,不作独立焦点;类型微光为底效泛光,不作焦点、不抢完整凸形预算),底砖与装饰一律残缺、内凹、低对比而自然后退;危险用刺与缺(排斥形),收益用满与圆(吸引形),同表预算、此消彼长。焦点分配双机制:完整度(形状,本条上文)+ 明度带(§2 明度分层——信息面层恒亮于世界层,焦点天然落信息面);明暗只做层间分离,层内禁明暗竞争(不靠明暗抢焦)。验收:目检〈任一格至多一个完整凸形;信息面层恒亮于世界层〉 ←原二;P1;P3
4. 色彩系统(Color System)
尾注「←」同第 3 节:P1–P4=支柱(P1 推理的掌控感/P2 规划的延迟兑现/P3 风险与收益同源/P4 地牢下探隐喻,语义见 §1.2「锚定」注);原一/二/三=1.2 支撑原则;§x=对应节。本节只定用色;凡涉具体变异、状态种类之处一律「待 GDD 定夺」,只规定"若有,则如何用色"。
总纲|彩为世,墨为信:逻辑信息(数字、UI 数据、物件轮廓)一律用近黑暖墨族;世界与物件(砖、封印面、金、氛围)用彩。墨管可读,彩管气质。验收:目检〈逻辑信息用近黑暖墨族,世界与物件用彩〉 ←原一/原二;§3.3
4.1 主色板
- 掩尘
#C9AF83|未开格底色,覆尘完整砖:全作的"未知",画面最大沉默面。验收:机检〈未开格底色 = #C9AF83〉 ←原二;§2.1 - 裸土
#B39A78|已开格底色,碎裂裸露:更收更退;明度分层——已开格(挖出的空间)走世界底层档,明度低于未开格墙体一档(与 §8.5 图底分离同轴),L 0.08–0.14 带(更高明度底实测达不到 4.5:1,故取本带;样张已冻结,§1.4)。验收:机检〈已开格底 L 落在 0.08–0.14,对亮墨数字 ≥4.5:1〉 ←原三 - 数字墨双色制:1–8 不做八色分色,按密度分三档色温(冷 = 稀疏,暖 = 密集);字形为唯一数值载体,色温只作密度氛围。验收:目检〈1–8 数字按密度呈三档色温而非八色〉 ←原一/原二;P3
- 棋盘数字呈现 = 按板自适应三态:暗纹理板(dungeon 系)= 亮族三档 1–3 冷亮青白 #D8ECF0/4–5 暖白 #F0E2C8/6–8 金亮 #F8E3A8 直画(判据 = 族最弱成员对 p90 ≥4.5:1 且对均值 ≥2.5:1);双峰纹理板(underdark/deep_underdark 系)= 色牌垫底(素牌 DIGIT_PLATE + 深墨 #33261B 12:1,纹理免疫——双峰纹理板上任何墨族直画都不可读,渲染帧取证;判据 = 亮深两族皆不过门,深族均值门 3.0);缺盘平色回退态(#B39A78 中明度底)默认深墨直画。选模式管线落码单点
board_view._digit_ink_mode(三态:亮直/深直/落牌),机检面 =terrain_tile_sets_test三关呈现模式断言;目视验证面 = board_shot_probe 渲染帧取证(机检≠看得清)。验收:机检〈terrain_tile_sets_test 三关呈现模式断言全绿,board_shot_probe 渲染帧目视复核〉 - 垫牌与 UI 数据墨 = 深墨族
#33261B系(L≤0.027,§7.2)。验收:机检〈垫牌与 UI 数据墨取深墨族,L≤0.027〉 - 八色弃用:八色必与红/金/蓝/紫赤语义冲突,故弃。验收:方向性
- 封印黑
#000000|封印宣告色,无色相:玩家的宣告"此格封印"。封印现行 = 无色相黑——紫色与微光蓝族(魔法微光 256° 等)色相冲突,黑色无色相天然避开 300°–345° 禁入带与全部微光色带;未开格墙顶明度 ≈113 对纯黑对比 ≥4.4:1,纯黑实心剪影单靠明度差即成立,不依赖任何浅色细件。封印紫不再用于棋盘(色史归 git 提交史);红族棋盘侧只剩危险红;主角随身背包件为朱红矩形件(人设侧见 character-design),与棋盘封印色脱钩。验收:机检〈封印宣告色 = #000000,未开格墙顶对其对比 ≥4.4:1〉 ←原一;P2 - 危险红
#A8321F|危险色:雷 = 被惊动的巢穴,兑现档红,更深更沉。验收:机检〈危险语义色 = #A8321F〉 ←原三;P2 - 奖励金
#F0A828|已兑现的收益:GP/宝箱/蜡封,全作唯一亮金。验收:机检〈收益语义色 = #F0A828〉 ←P2;§2.3/2.4 - 小人蓝
#2E86DE|小人主色:棋盘唯一"己方",与光标准线同族。验收:机检〈己方语义色 = #2E86DE〉 ←P1;§2.1 - 数字色牌
#F5EAD3|数字底具,后备手段:素色暖纸白直角小牌,仅复杂格底(物件纹样/变异纹带/微光叠加致直画对比不足)垫于数字正下方;素面无纹理、不随图类型/装饰变体变。验收:机检〈色牌 L≥0.70,仅复杂格底垫用〉 ←原二 - 收益金亮档
#E0B860(GOLD_BRIGHT)|UI 徽标可读性亮档 token:敌顺位徽标①②③与重甲徽标对舞台底 6.47:1(GOLD_DEEP 3.26:1 不达 §7.2 带,故另立亮档);金族亮档,与奖励金 #F0A828 同族不同岗——奖励金 = 已兑现收益语义(§4.2 金条),本 token 只承载徽标可读性、不占收益语义。GOLD_DEEP/HERO_BLUE 常量本尊不动(standee 意图判据等语义岗现行使用)。验收:机检〈GOLD_BRIGHT 对舞台底 ≥4.5:1〉 - 小人蓝亮档
#7EBAF0(HERO_BLUE_BRIGHT)|魔法护甲徽标对舞台底 5.88:1(HERO_BLUE 3.23:1 不达带,故另立亮档);蓝族亮档,与小人蓝 #2E86DE 同族不同岗——本 token 只承载徽标可读性,不占用「蓝只说己方」的语义。验收:机检〈HERO_BLUE_BRIGHT 对舞台底 ≥4.5:1〉 - 图标槽柔和档
#806A4E(SLOT_BACKDROP_SOFT)|BCard 图标槽底:对米色卡面 PANEL_DATA 3.69:1(深档 SLOT_BACKDROP #3E362C 8.53:1 过强、像硬贴补丁,故槽底另立柔和档),槽内白图标 5.14:1,满足 ≥3:1 图形参考线硬约束;仅 BCard 图标槽换档,B 区状态槽仍用深档 SLOT_BACKDROP。验收:机检〈槽内白图标对槽底 ≥3:1〉 - 群伤微光暗档
#A61D37(TG_GLOW_AOE)|类型微光群伤组的明度档(UI token 板,占 1 枚额度,余量 3→2):色相 349° 与亮档#FF2D55零移动,明度落 V=0.65 档——即 §4.2「微光 = 色相+明度双码」里明度侧的落法;与 §4.2「红只说危险」不相撞(微光组色相刻意错开语义红,见 §4.2「类型微光色带」条)。已在役(ui_kit.gd常量与type_glow_test.gd守门断言),本节为登记转正。验收:机检〈ui_kit.gd TG_GLOW_AOE 与 type_glow_test 断言的 H/S 逐位一致、V 落 0.65 档〉 - 站桩石板地台板身
#968264(STAND_STONE)|战斗屏场景环境子板(分层②,不占 48 token 额度):B 区站桩地台板身与顶缘的材质色,跨三关恒定、不吃 §4.3wall_ambienttint(地台是 §6.1 定死的世界中层承载面,随关卡变会破 §2 明度分层的层间关系)。转正前即在役。验收:机检〈战斗屏场景环境子板色数 ≤32 且本值在册〉 - 营地场景环境子板(分层②,不占 48 token 额度):营地场景十层环境色按子板制落地——各层独立量化并集 272 色经最近对合并收敛至 32 色、违例对 0,十层按终版色板重量化回写。色值不另立逐值清单,事实源=入包素材
scene_camp_*十件的量化产物;换算与合并过程登记于 artwork 工作区换算式登记。验收:机检〈营地屏唯一色数判据(shot_checker 闸件承载,2026-11-01 用户裁口径)〉 - 重甲冷灰金属材质色
#868C9A(ARMOR_PLATE_COLD,token 名暂拟)|语义/UI token 板(分层①,占 1 枚额度;用户裁):重甲档甲材质色;character-design §5.3 通道 = 甲面覆盖率 × 甲材质色,甲材质色按甲档统一,故石君王岩石板甲同引本枚、不另计额度;材质色跨屏恒定,落分层①不落分层②(环境色才随场景走)。过门情况:第二道门按宽松口径(禁止三通道全 <8)与在册色逐一比对,无三通道全 <8 的对 → 过门;§4.2 语义检查过门(色相 222°,不占红/金/蓝/紫赤/绿语义段、不在 300°–345° 禁入带;材质色不进信息层与语义物件岗)。对比实测:对深素底#2822204.65:1、对舞台底#3E362C3.52:1(图形 ≥3:1 门槛);相对亮度 L≈0.261 落 §2 世界中层 0.22–0.45 带。验收:机检〈本值入板后全板色对中三通道差全部 <8/255 的对数 = 0〉 - 卓尔浅紫灰皮
#A79CB8(DRIDER_SKIN,token 名暂拟)|语义/UI token 板(分层①,占 1 枚额度,额度用尽;用户裁):蛛化卓尔精灵上体皮色(体块主色,L≈0.355 落 §2 世界中层带)。过门情况:第二道门同上行口径,无三通道全 <8 的对 → 过门;§4.2 语义检查过门(色相 264°,避开 300°–345° 禁入带,紫赤独占仍归#8F2F6A;不占本节五语义段)。对比实测:对深素底#2822206.04:1、对舞台底#3E362C4.57:1——两处均过图形 ≥3:1 门槛。验收:机检〈本值入板后全板色对中三通道差全部 <8/255 的对数 = 0〉 - 换色合并登记五处(用户裁,部件色落值)|按本表「不过门即触发换色合并、禁加色绕行」执行,五处零新增额度(各件原拟新增候选一律不取):① 主角铲刃浅铁灰(原拟
#A8AEB8)→ 并入FOG_MEMORY_INK #C4C4C4,部件取值 =#C4C4C4;② 主角提灯铜色(原拟#C08A3A)→ 并入GOLD_DEEP #B07A14,部件取值 =#B07A14;③ 食人魔酋长暖褐皮(原拟#B08050/#A97C4E)→ 并入暖石 #B8A582,部件取值 =#B8A582;④ 石君王灰皮(原拟#9A968C/#949089,按次级皮口径——板甲视同体块主色、灰皮属次级皮故不受 L 0.22–0.45 约束)→ 并入STONE #786E62,部件取值 =#786E62;⑤ 轻甲护甲图标木色#8A5A34(深素底下 2.72:1 不过门;原拟新增木色亮档#C49A5E)→ 并入WARM_FAINT #CDB88C,部件取值 =#CDB88C(8.08:1)。一色两岗代价已随裁定接受:① 的#C4C4C4语义岗 = 迷雾记忆墨(§6.5)、② 的#B07A14属金族(§4.2 金只说收益与兑现)——两者均作角色随身件材质色用,不进信息层与语义物件岗;③④⑤ 无语义岗冲突。验收:机检〈五处部件取值点全部改指合并目标色,四枚原拟新增候选值零入板〉 - 换色合并登记三处|按本表「不过门即触发换色合并、禁加色绕行」执行,三处零新增额度:①地台顶缘受光线
#C4AC84已并入#C9AF83(掩尘枚BRICK,与 §8.2 高墙口沿高光同枚)——源常量已删除(全仓零引用,退役断言测试串为预期例外),绘制点全部改指#C9AF83;②地台描边#5A4C3A已并入#4C4038(代码PLAZA_EDGE,ui_kit 唯一落点)——源常量已删除,绘制点全部改指;③舞台底#3E342A(代码STAGE_BG)→ 并入#3E362C(状态槽底)——源常量已删除(常量表零键),背景资产接管该绘制面,程序化平色缺图回退改指SLOT_BACKDROP(#3E362C)。程序化回退绘制与已落合并值的贴图保持一致。验收:机检〈①②两枚源常量全仓零引用,绘制点全部改指合并目标色〉
对比硬指标(可测):数字可读性由格底明度分档承载——棋盘数字亮墨 L≥0.75 对已开格底 L 0.08–0.14 ⇒ 直画对比 ≥4.5:1 恒成立(WCAG AA,样张逐组合抽测冻结);色牌后备:色牌素色恒定 L≥0.70、牌上数字深墨 L≤0.027 ⇒ 任意牌墨组合 ≥4.5:1(实测样例:#33261B/#F5EAD3 = 12.3:1)。未开格底槽(含全部图类型)相对亮度 L≥0.30(墙顶面受光档)、HSV 饱和 ≤0.55、避 Boss 禁入色相带;已开格底走世界底层档(见上)。物件识别不依赖格底(§5.1 轮廓通道),封印印记、金色不作识别依赖。验收:机检〈亮墨对已开格底 ≥4.5:1;未开格底 L≥0.30、饱和 ≤0.55;任意牌墨组合 ≥4.5:1〉 ←原二;地形变异 AC-9
色板增量纪律(数值状态 = 待定现用):全作色板硬上限 48 色(防色板无限膨胀的封口条款;额度已用尽、余量 0,后续余量以色板检查器实报为准);新色入板须同时过两道门:①§4.2 语义检查(不占语义色段/禁入带);②与既有任一色的 RGB 三通道差禁止全部 <8/255——即三通道里至少一通道 ≥8/255 即过门,「三通道差全部 <8」才算不过门(条文原写的「三通道差 ≥8/255」有「逐通道全过」与「禁止全灭」两种互斥读法,前者下现行色板 247 对不达标、与本节自认的「现行即执法」合规状态不能同真,故取后者;用户裁)。额度已用尽:后续任何新增须先压缩或合并既有色——按本节「额度不足时呈报作者」口径呈报,压缩或合并哪几枚由作者裁,本节不代裁、不预指对象。反例实证:#3A2E22 ↔ #362B20 三通道差均 <5,肉眼不可辨,同板共存只增噪。不过门即触发「换色合并」(把意图色并进最近既有色),禁加色绕行;加色义务同时登记于本表修订。「待定现用」态释义:数值现行即执法(色板检查器按此拦,§8.3)——非候选(不存在"等冻结"空窗)、非死规(后续需求引入时可变);调整走本节修订并登记,改值 = 修订不是违约。验收:机检〈色板总数 ≤48;新色入板过两道门〉
-
换色合并欠账清单(全板重扫 6 对不达标,逐对清偿):
#18120C↔#181410、#33261B↔#362B20、#362B20↔#3A2E22、#3E362C↔#3E3731、#3E4048↔#3F4147、#453723↔#4A3B2A——六对按「不过门即换色合并」纪律逐对清偿(并进最近既有色);清偿前该对不视作合规,清偿动作落本节修订。本节所举反例#3A2E22↔#362B20正在这 6 对之内,与本口径自洽。验收:机检〈全板色对中三通道差全部 <8/255 的对数 = 0〉 -
色板分层:色板分两层管理——① 语义/UI token 板:全作共享,硬上限 48 色,管 UI 语义色、墨色、材质色,跨屏恒定;② 场景环境子板:每屏一套,≤32 色,允许跨屏不共享(环境色 = 天空、地面、植被、石材、火焰等随场景走的颜色)。新增环境色仍须过两道门(§4.2 语义检查 + 与既有任一色 RGB 三通道差禁止全部 <8/255),但不占用 48 token 额度;不过门照旧走「换色合并」,禁加色绕行。单张 PNG 的像素域色数上限 ≤32 色另由
standee_asset_check执法(按单图像素域取值方式计数,与本表 token 计数互不干扰)。额度不足时向作者报告,由作者决定压缩或合并既有色。验收:机检〈token 板 ≤48;每屏环境子板 ≤32〉 -
整屏有效色数总闸(色板第三层,2026-11-02 用户裁)|整屏的色板纪律裁判面=画面上成片出现的颜色数(有效色数),不是逐像素去重总数:多源并集与程序混合(压暗遮罩/软阴影/渐变/tween 中间帧)使逐像素色数随素材与渲染状态大幅漂移(实测同屏不同时点差一至九倍),不可治理也不承载观感。整屏唯一色数只保留「渲染真实发生」的存在性地板(地板值归闸件承载);色板纪律的上限闸=每屏有效色数 ≤128(待定现用——现行即执法、修订走登记,释义同色板增量纪律条)。构成推导源:双环境层 32×2+token 板 48+混合容差 16(←本条色板分层;推导源非额度分配,各层额度照旧独立执法)。超限处置沿色板增量纪律:先合并压缩既有色再进,禁加色绕行。有效色的测量口径(面积阈值等实现参数)归色数检查器承载,本圣经不载。验收:机检〈各屏有效色数 ≤128,口径=色数检查器现行定义〉
4.2 语义色彩规则
适用域:本节「X 只说 Y」约束信息层(格内信息/UI 数据/预告/语义标识)与语义物件(GP=收益金、血条=危险红等);纯环境氛围(背景/装饰变体/远景/非语义物件)不受色相独占约束,改受 §3.4 焦点预算与低饱和后退约束(不抢读即可用色)。禁入带 300°–345°:信息层与语义物件禁入不变;环境层可入但限低饱和(高饱和紫赤仍 Boss 独占,§2.6)。验收:目检〈信息层与语义物件不落禁入带、不占语义独占色相;环境层用色低饱和〉
- 红只说危险:危险红 = 兑现档,红族单档。禁(信息层域):红禁止用于奖励、装饰性标识与常规 UI(微光群伤组除外——见「类型微光色带」条,其色相刻意错开语义红)。验收:目检〈信息层域红色仅出现在危险语义与微光群伤组〉 ←原三;P2;§2.1
- 血条填充 = 危险红
#A8321F(语义物件显式落法):血条是本节适用域点名的语义物件,填充色族一律归危险红,不因敌我分色、不因关卡换族。读数不依赖填充色对比——血量数字 11px 压HP_BAR_BACK素牌(§7.4 豁免①,14.3:1),填充只承载「剩余比例」的形状语义。蓝族引擎默认近似值#689CE8登记为违例值、已退役:它同时撞本条「血条=危险红」与蓝条「蓝禁止表示敌方危险」,禁再入任何血条绘制点。验收:机检〈血条填充绘制点取值为 #A8321F 且全仓零 #689CE8 字面量〉 - 金只说收益与兑现(奖励、结算、胜利)。禁(信息层与语义物件域):金禁止作危险障碍色、不上格底、不作日常 UI 强调(防通胀;微光通用增益组的芥末黄属「类型微光色带」条色带,非收益语义金)。验收:目检〈信息层与语义物件域金色仅承载收益与兑现〉 ←P2;P3;§2.2–2.4
- 蓝只说己方与冷静信息(小人、光标、工具信息——含可挖域接触带呼吸微光,蓝族浅一档
#D6ECFF)。禁(信息层域):蓝禁止表示敌方危险;暮蓝#5A6C8C为失败独占(§2.5),只作全屏氛围,不作物件色。验收:目检〈信息层域蓝色仅承载己方与冷静信息;敌方危险无蓝色〉 ←P1;§2.5 - 紫赤只说 Boss 与精英
#8F2F6A(色相 323°):郑重来自色相独占,不来自压暗。禁:HSV 色相 300°–345° 为信息层与语义物件禁入带——UI、粒子、类型微光、语义物件及图类型色板信息面禁止落入;环境层(背景/装饰)可入但限低饱和,高饱和紫赤仍 Boss 独占。验收:机检〈信息层与语义物件色值色相不落 300°–345°;高饱和紫赤仅 Boss 战〉 ←§2.6;原三 - 绿只说自然生机(环境植被;恢复类状态若有则用绿——待增益状态定夺)。例外:类型微光治疗组(见下条「类型微光色带」)。禁(信息层域):绿禁止承载逻辑状态(微光色带除外),禁止与红构成唯一区分对。验收:目检〈信息层域绿色仅微光治疗组;绿红不构成唯一区分对〉 ←原三
- 类型微光色带 = 格面类型先验专用逻辑色带(未开格类型预读的色彩通道;概念定义、可见范围与生命周期见《HUD框架》「未开格类型微光」节):未开格类型微光的信息色彩按以下五组执行——通用增益组(attack/defense/weaken/action/gp 五族)芥末黄
#D6C13A(≈52°)、治疗组(heal)黄绿#5CB83A(≈104°)、穿刺组(pierce)青#2E9E9E(≈180°)、魔法组(magic)紫罗兰#7B5BD6(≈256°)、群伤组(blast)绯红#FF2D55(≈349°,刻意避开危险红色相段与 300°–345° 禁入带)。验收:机检〈类型微光五组色值与本表一致〉 - 微光呈现参数:内缘带状泛光 α170、带宽 cell÷8(亮度不压格底明度档,§2 微光例外);组间互辨以抽检核对。验收:机检〈微光泛光 α=170、带宽=cell÷8〉
- 微光分域纪律与双码:微光色相只承载类型先验,不迁移复用为物件/阵营/UI 语义色;微光 = 色相+明度双码——明度梯度承载分组(组间五色相、组内不细分:通用增益组五族同色相、不承诺组内分型;§2 微光明度例外:梯度禁止压破格底明度档与三态分类);色弱玩家的类型主通道 = 微光双码(组粒度:组间五色相 + 各组一档明度互辨)。验收:目检〈五组微光两两互辨,明度梯度不压破格底明度档与三态分类〉 ←§4.6.3
- 金/红兼作极性色相槽(§4.6):极性(概念定义与符号矩阵见《地图战斗资源》极性提案)的视觉取色只在这两族间——有利兑付 = 金族,有害兑付 = 红族,不新增语义色。验收:目检〈极性视觉取色仅金/红两族〉 ←§4.6;原二
4.3 图类型色板换皮规则(board_type)
换皮只换四槽,永不变信。模板按棋盘生成产物 board_type 标签直接消费(键名与词表事实源 = 棋盘生成 GDD 与 board_gen.tres:dungeon / underdark / deep_underdark);清单与词表待 关卡节点地图/地形变异/地图战斗资源 定稿后归其所有,本节只定模板。验收:机检〈换皮仅动下列四槽,其余槽位与不变槽恒定〉
tile_closed未开底:L 与饱和同 §4.1 硬指标,避禁入色相带。验收:机检〈各图类型 tile_closed 底色 L 与饱和落 §4.1 未开格底带〉tile_open已开底:世界底层档(L 带见 §4.1)、饱和 ≤0.55,避禁入色相带。验收:机检〈各图类型 tile_open 底色 L 落 §4.1 已开格底带〉wall_ambient墙雾氛围 tint:可带主题色相,L≥0.30。验收:机检〈wall_ambient tint L≥0.30〉variant_tint变异纹带染槽:只改色相不改纹形(纹带形按轴两分,见 §3.2 变异格形状通道;种类 = 地形变异六类型已定稿)。验收:目检〈同纹带形跨图类型仅色相不同〉
不变槽:棋盘数字墨亮族三档、数字色牌(后备件)、封印黑、危险红、奖励金、小人蓝、紫赤、绿、类型微光五组——信息与语义层全图类型恒定;换挡动色相饱和,格底两档明度关系(墙亮/空间暗)全图类型恒定(§2 明度分层)。新增色板须重跑 §1.4 格子样张(灰度可辨+对比抽测)。验收:机检〈换皮前后不变槽色值逐项一致〉 ←原三/原二;地形变异 AC-9
4.4 UI 色板(方向指导,细则迁 §7.2)
方向指导:数据素面的墨来自世界的墨——UI 数字/进度/准线一律主墨 #33261B 系;容器按场景穿材质色(营地全作最暖、战斗中性石);UI 不新增语义色,强调沿用 §4.2。色板细则成文于 §7.2。验收:方向性 ←原一;§2.8
4.5 色弱安全清单
依赖色相的语义对逐对点名(冗余通道:形/图标/位置/运动):
- 已开 vs 未开:§3.2 完整/碎裂形承载,无需另加。验收:目检〈色弱模拟下两态以完整度可辨〉
- 已开 vs 变异格:纹带形状通道,灰度截图可辨,无需另加。验收:目检〈灰度截图下变异格可辨〉
- 封印印记 vs 巢穴(危险格):印记形物件对砖面巢穴纹,无需另加。验收:目检〈色弱模拟下印记与巢穴纹可辨〉
- 奖励金 vs 危险红(色弱下皆偏褐):§3.1 道具点两类剪影 + §3.4 满圆对刺缺 + 金粒运动,无需另加。验收:目检〈色弱模拟下奖励金与危险红可辨〉
- Boss 紫赤 vs 其他敌:§5.1 形状独占,无需另加。验收:目检〈色弱模拟下 Boss 可辨〉
- 小人蓝 vs 青墨数字:明度悬殊 + 小人轮廓与底盘,无需另加。验收:目检〈色弱模拟下小人与数字可辨〉
- UI 红/金强调对:纹带不管面板——需补图标+文案冗余,且破坏性确认禁止与常规确认同位(位置通道)。验收:目检〈UI 红/金强调位有图标+文案冗余,破坏性确认与常规确认不同位〉 ←原三
- 失败暮蓝 vs 小人蓝:状态互斥,不承载区分,无需冗余。验收:方向性
- 图标键族(§4.6):图标身份全靠纹样形状通道(一键一纹样,色相不承载身份);未开格类型预读 = 类型微光单通道(五组色带,§4.2;色相+明度双码——明度档间互辨承载色弱场景);极性金/红对由框形满/缺冗余——色相全失效时图标仍可逐一辨认与定极性。验收:目检〈色相全失效时图标仍可逐一辨认与定极性〉 ←原三;增益状态×4②
4.6 图标键契约(Icon Key Contract,键与通道分配已冻结)
白话:图标键 = "哪个数据行配哪枚图标"的固定对照表——效果、奖励、格面类型、敌种各自的数据表主键(effect_id / reward_id / cell_type / enemy_id)直接作图标键,一枚键配一枚专属纹样。本节冻结的是键与通道的分配,不冻结终稿美术:纹样造型、具体色值、动画帧归格子样张(§1.4)与资产规格文档定稿。先行冻结是为了 HUD框架/战斗表现开工不必等美术终稿;映射一经冻结全局恒定、跨 run 禁重掷(enemy_id / reward_id 键恒定同款纪律),增键走本节修订,禁运行时换图。验收:机检〈各键族图标与数据表主键一一对应、跨 run 不换图〉
承接义务:增益状态×4②(effect_id→icon 映射键契约)· 地图战斗资源×5①(奖励身份恒定可读)· 敌人系统×4①②(敌种图像线索清单成文 + 全局恒定)· 极性提案 §3(类型图标/极性视觉语言)。引用方:HUD框架、战斗表现、教学引导、地图战斗资源库存呈现。
通道分配(全键族通用,双通道之"形+色"):
- 身份 = 形状纹样键:一键一纹样,全作不复用;色相不承载身份(七效果不七色——防色相爆炸,亦防色弱失效)。验收:目检〈同族键共图、异族键纹样可辨〉
- 极性 = 色相槽 + 框形:有利兑付 = 金族(§4.2"金只说收益"),有害兑付 = 红族("红只说危险")——零新增语义色;框形冗余:满框对缺框(§3.4"收益用满与圆,危险用刺与缺")。极性判定的数据源 = 战斗结算 SettlementTable 效果语义(非 magnitude 符号——增益状态×4③),本契约只锁视觉通道、不锁数据映射。验收:目检〈正负极性以金满框/红缺框可辨〉
- 格面身份预读 = 类型微光;徽章 = 附属小图标:格面的类型身份预读画在格上——类型走类型微光(§3.2/§4.2,底效泛光不入遮挡栈),禁止构成格内第二焦点(§3.4);徽章小图标族用于库存条与结算明细。角嵌位已不存在。验收:目检〈格面类型预读仅微光且非第二焦点;徽章仅出现于库存条与结算明细〉
- 未开格预读 = 类型微光单通道(色相+明度双码):微光五组色带见 §4.2「类型微光色带」。只表达类型、不呈现极性、不泄雷/安(信息定义见《HUD框架》「未开格类型微光」节;约束出处见《地图战斗资源》极性提案 R3);兑付面与库存徽章可用语义族色,终稿归格子样张(§1.4)。验收:目检〈未开格类型预读仅微光,无极性与雷/安信息〉
4.6.1 效果图标键(九行 = 增益状态现行实态;键集事实源归增益状态 GDD 与 status_effects.tres,本表键名随其修订自动跟随)
| 键(effect_id) | display_name | 纹样描述 | 极性 |
|---|---|---|---|
| attack_up | 增伤 | 白色长剑为主体(大,斜向、剑尖朝右上),右下角一枚小绿色向上箭头 | 有利 |
| ac_up | 盾牌加护 | 正面白色盾牌为主体(大),右下角一枚小绿色向上箭头 | 有利 |
| alert | 警觉 | 一只白色眼睛 | 有害 |
| weaken | 削弱 | 同 attack_up 白剑主体,右下角一枚小红色向下箭头 | 有利 |
| enrage | 暴走 | 与 attack_up 完全同图(同为攻击提升族:攻击提升一档) | 有害 |
| off_guard | 失衡 | 同 ac_up 白盾主体,右下角一枚小红色向下箭头 | 有害 |
| sapped | 乏力 | 与 weaken 完全同图(同为攻击削弱族:攻击削弱一档) | 有害 |
| empower | 蓄力 | 同 attack_up 白剑主体,右下角两枚小绿色向上箭头(叠放:攻击提升两档) | 有害 |
| fortify | 硬化 | 与 ac_up 完全同图(同为防御提升族:防御提升一档) | 有害 |
-
纹样系统:主体符号表达属性轴——白剑=攻击轴、白盾=防御轴、白眼=警觉特例;主体右下角的小箭头表达方向与幅度——绿↑=提升一档、红↓=削弱一档、双绿↑=提升两档(蓄力)。同族键共用同图:attack_up=enrage、weaken=sapped、ac_up=fortify;图标不区分归属方,主角/敌方由 HUD 状态槽挂载位置表达。极性列保留为数据语义。验收:目检〈九行纹样按表落图——同族键同图、异族键可辨、箭头数表幅度〉
-
呈现位 = HUD 状态槽(增益状态×4①);堆叠层数呈现归 HUD框架/战斗表现,不入本契约。验收:目检〈效果图标呈现于 HUD 状态槽〉
4.6.2 奖励徽章键(九型字典正负 18 行 + 清图槽 1 行 = 地图战斗资源现行实态;键集事实源归地图战斗资源 GDD 与 reward.tres,本表键名随其修订自动跟随)
| 键(reward_id) | 型/极性 | 徽章语义锚 | 极性视觉 |
|---|---|---|---|
| attack_up | attack 正向 | 增伤增益(与 §4.6.1 同语义域共族、键分立) | 金族满框 |
| enrage | attack 负向 | 敌方增伤 | 红族缺框 |
| ac_up | defense 正向 | 盾牌加护 | 金族满框 |
| off_guard | defense 负向 | 主角失衡(与 §4.6.1 共族、键分立) | 红族缺框 |
| heal_minor | heal 正向 | 小额回复 | 金族满框 |
| heal_backlash | heal 负向 | 恢复倒扣(直伤) | 红族缺框 |
| spark_aoe | blast 正向 | 爆破群伤 | 金族满框 |
| enemy_alert | blast 负向 | 警觉(引用 alert 状态行,与 §4.6.1 alert 共族) | 红族缺框 |
| weaken | weaken 正向 | 削弱(与 §4.6.1 共族) | 金族满框 |
| sapped | weaken 负向 | 乏力(与 §4.6.1 共族) | 红族缺框 |
| pierce_strike | pierce 正向 | 穿刺弹——锐锥 | 金族满框 |
| pierce_snare | pierce 负向 | 穿刺陷阱 | 红族缺框 |
| magic_bolt | magic 正向 | 魔法矢——秘法/星辰 | 金族满框 |
| magic_recoil | magic 负向 | 魔法反噬 | 红族缺框 |
| ap_up | action 正向 | 行动点 +1——疾步/沙漏 | 金族满框 |
| ap_drain | action 负向 | 迟滞——沙漏倒置 | 红族缺框 |
| gp_coin | gp 正向 | GP 袋——钱币/财货 | 金族满框 |
| gp_lose | gp 负向 | 破财 | 红族缺框 |
| clear_blast | 清图槽 | 清图群伤——blast 族、整图作用域 | 按正向视觉 |
- 负向徽标用于踩雷反噬的结算呈现;权重与摇号语义见《地图战斗资源》。验收:目检〈踩雷反噬结算以红族缺框徽标呈现〉
- 库存常读条义务与兑付/库存语义见《地图战斗资源》。验收:方向性
- 格面预读按家族类型微光呈现(§4.6.3;呈现粒度决策见《地图战斗资源》极性提案 R1)。验收:目检〈格面预读仅到家族类型粒度〉
- 资产契约:19 枚 =
ui/icons/reward_<reward_id>.png(键 = 本表 reward_id,正向/负向/清图槽同模式;状态图标 §4.6.1 同款「键→文件名→尺寸」模式),源 40×40、显示 20px(格面小记号级)/40px(明细面)双档,尺寸为候选,样张验收时冻结;极性视觉按本表「极性视觉」列(金族满框/红族缺框 = 形状+色彩双通道纪律)。本族现无终稿图,以程序化占位承载;出图工单归 art-assets-checklist/PRD,交付后同步登记 art-status-checklist ✅。验收:机检〈reward_*.png 文件名键与本表 reward_id 一致,源 40×40〉
4.6.3 格面类型图标键(九类 = 地图战斗资源现行实态;键契约已冻结,终稿归格子样张 §1.4)
| 键(cell_type) | 类型 | 纹样语义锚 |
|---|---|---|
| attack | 增伤族 | 攻击/锋锐 |
| defense | 减伤族 | 护盾/壁垒 |
| heal | 回复族 | 修复/生机 |
| blast | 爆破族 | 迸裂/波及 |
| weaken | 削弱族 | 钝化/压制 |
| pierce | 穿刺族 | 破甲/锐锥 |
| magic | 魔法族 | 秘法/星辰 |
| action | 行动族 | 行动点/疾步 |
| gp | GP 族 | 钱币/财货 |
- 呈现约束:未开格呈现类型微光单通道(五组色带见 §4.2「类型微光色带」,色相+明度双码;可见范围与时机见《HUD框架》「未开格类型微光」节);不呈现极性、不呈现雷/安(信息定义见该权威定义节);微光组间互辨抽测含明度档互辨(误读率指标出处见《地图战斗资源》极性提案)。验收:目检〈未开格仅微光呈现,无极性与雷/安信息;五组互辨含明度档〉
- 状态声明:键集九值封闭(attack/defense/heal/blast/weaken/pierce/magic/action/gp,与 RewardTable 现行 cell_type 词表一致),扩键走本节修订。验收:机检〈cell_type 键集九值与 RewardTable 词表一致〉
- 与 §4.6.1 的关系:同语义域的键(attack↔attack_up 等)可共族设计,键分立、纹样须可区分(格面小记号级对槽内图标级)。验收:目检〈同语义域两键纹样同级可辨〉
- 资产契约:纹带族 =
board/band_<variant_id>.png(键 = 变异类型 id,键集事实源 = 地形变异「变异框架与类型清单」region 六行〔荆棘丛/藤蔓缠绕/岩浆/烬覆/落石/矿尘〕+ 地形变异文档的池门槛域;通配 global 型〔贫矿脉〕无格子布置域、不在纹带族),源 64×64 四边无缝(叠于已开格底)、显示 1× = 格边长,尺寸为候选,样张验收时冻结。呈现锚 = 「变异格未开时无预告呈现(遭遇式)」——纹带是已开变异格的标识层(地形变异 GDD 视觉标识条款的素材承载),半透明叠加、禁止侵入数字字形占位区(§4.1 砖心留白同理)。现以程序化占位承载(◐);出图工单归 PRD,交付后同步登记 art-status-checklist ✅。验收:机检〈band_*.png 文件名键与六类型 id 一致,源 64×64〉
4.6.4 敌种线索键(映射键 = enemy_id;键集事实源归敌人系统 GDD 与 data/tables/enemy.tres)
| 线索通道 | 冻结内容 |
|---|---|
| 意图姿态 | 动画三档:① 普通攻击 = 常态待机(零独立资产);② 攻击技能 = 特殊准备动画(放光/高举武器);③ 重击/硬化类 = 蓄力动作或防御姿态。不显示文字与技能名(信息定义见《敌人系统》意图线索节);三档在灰度/剪影层可辨(双通道纪律) |
| 强度档位 | 体量通道:§5.1 archetype 体量/垂直延伸("大个子多半有重击");护甲类型(light/ward/heavy)视觉区分方案已落 §5.3(已定稿) |
| 预告时序 | 预告语义见《敌人系统》意图线索节,呈现义务(挖掘期全程可见)见《HUD框架》;本表只锁「结算不另设独立意图播片」的动画形态 |
| 恒定义务 | enemy_id 键映射跨 run 恒定、禁重掷;图像不报数——精确数值的明细承载见《战斗结算》。验收:机检〈enemy_id 键映射跨 run 恒定、禁重掷〉 |
- 敌种键集 = 八敌种:goblin 地精(light)/ bugbear 熊地精(light;L2 熊地精 = bugbear 复用,第二关三行显示名熊地精系,同剪影换色板,非独立键)/ ogre_chief 食人魔酋长(light,第一关关底 Boss)/ giant_spider 巨蜘蛛(light,群行 [2,3])/ drider 蛛化卓尔精灵(ward,第二关 Boss)/ duergar 灰矮人(heavy)/ hook_horror 钩爪恐魔(light,群行)/ duergar_king 灰矮人石君王(heavy,第三关 Boss)。键数据与甲档实态见《敌人系统》与
enemy.tres。验收:机检〈八敌种键集与 enemy.tres 一致〉 - 资产需求下限三类(敌人系统登记,呈现归 HUD框架/战斗表现):受击反馈(可共用一组)/ 死亡表现(灰化+碎裂退场,禁止直接消失)/ 顺位标记(敌多时可读)。验收:目检〈三类呈现齐备,死亡为灰化+碎裂退场非直接消失〉
- Boss 表现约束:§2.6 紫赤色相独占 + §5.1 Boss 形状独占双通道;键集扩容时随内容修订入本表。验收:目检〈Boss 呈现同时满足色相与形状双独占〉
- 剪影通用性:剪影禁止借特定格底色成立(§5.1)——棋盘/结算/任一战斗舞台同一套。验收:目检〈同一剪影在棋盘与结算两舞台均成立〉
5. 角色设计(Character Design)
本节内容已整体迁至独立文档
character-design.md(小节号 §5.1–§5.6 在该文档中沿用不变)。迁移动机:人设高频改动,独立成档免动圣经;本存根保证既有 "art-bible §5.x" 式引用(§4.1/§4.5/§4.6.4、art-assets-checklist、战斗表现)经此仍可达,新引用直指该文档。
内容速览:§5.1 角色剪影与轮廓通道 · §5.2 头身比与体量档位 · §5.3 护甲类型视觉区分(已定稿) · §5.4 主角三态规格(形象锚 = 蓝兜帽披肩的暖装小冒险者:圆头挖掘铲 + 冒险背包插朱红矩形旗(与棋盘封印色脱钩) + 护目镜腰灯) · §5.5 八敌种逐卡 · §5.6 意图准备动画三档。
6. 环境与场景(Environment & Scenes)
本节定格面之外的场景容器怎么画:战斗舞台背景、营地场景、三关图类型色板方向、关卡间下探过渡、棋盘视野迷雾遮蔽(§6.5)。格内画法归 §3.2,情绪与能量归 §2,换色模板归 §4.3;本节不新增信息通道、不承载玩法语义。屏级分区布局(三区 B/C/D)的裁决权归 battle.md,本节只定环境资产的视觉规格。
6.1 战斗舞台背景(B 区环境)
- 双舞台常驻下的 B 区环境:战斗画面区(站桩立绘所在)的背景 = 明亮地窟,与 §1 风格基调同源——暖倾向、无压抑;背景整体低对比自然后退(§3.4 焦点预算延伸):背景禁止构成完整凸形、禁止抢 B 区立绘与 D 区数字的焦点,识别层级恒为 立绘 > 背景。验收:目检〈背景无完整凸形、立绘最抢眼〉
- 舞台正面目标:B 区 = 地窟看台——立绘脚下地台/落影承载(世界中层),背景环境层低饱和后退、明度走世界底层档;角色禁止直接贴平色底。规格与终值归整屏样张闸(§1.4)冻结。地台面上零文字——暖白
#F0E2C8对地台板身#968264实测仅 2.89:1,已越 §7.2 的 4.5:1 硬指标,落法按 §7.2「文字禁直接压纹理底」(垫容器、素牌或罩层),非新条款;站桩文字位改垫素底或落进结算明细带(实装=站桩名字行垫HP_BAR_BACK深档素底牌、文字基线上移至地台顶上方)。验收:目检〈立绘脚下有地台/落影,非贴平色底〉+机检〈B 区站桩文字位正下方像素非地台板身色 #968264〉 - 明度分层适用:空间纵深与洞穴感走明度分层——世界底层档、光照氛围、色相饱和与形体承载(§3.2 同款逻辑)。验收:方向性
- 图类型联动:背景层按
board_type选三张变体(scene_stage_bg_dungeon.png/scene_stage_bg_underdark.png/scene_stage_bg_deep_underdark.png,方向取 §6.3 三关色板候选);背景不再走 §4.3wall_ambienttint(该槽保留给棋盘/世界的墙雾氛围,避免对三张背景二次染色)。紫赤仅 Boss 战允许短暂进入背景氛围纹样(§2.6 色相独占的舞台侧延伸,高饱和独占不变),非 Boss 战高饱和紫赤禁入。验收:机检〈背景吸色无非 Boss 高饱和紫赤;背景素材不引用wall_ambient槽〉 - 场景构成(2026-10-31 用户裁):B 区舞台从远到近分三段——顶部空区:洞顶以上的昏暗空间,只留深色空区,不画钟乳石、吊锥、悬挂物或任何可辨形状;远景(纵深洞厅):不是贴墙的后壁,按远/中/近三层组织——远层暗剪影(远处洞口/通道、层叠岩体、洞底轮廓)、中层主要细节层(岩台、岩柱、凹壁、裂缝)、近层左右暗色岩框;剪影被中层部分遮挡、不贴顶、不孤立,禁贴墙感、禁单件圆柱贴顶、禁砖石墙/规则砌缝/方整石块;三关母题(地精=支洞/木栈道/木桩围栏;卓尔=巨柱/石笋/蛛网/螺旋塔剪影/巨菇/石桥;灰矮人=石笋城郭/棱角石厅/石桥/矿道口/烟囱塔)见
battle-stage-prompts.md§3.2;分隔带:远壁根部与近景地面之间一条不规则碎石带/阴影缝,边界清楚但不笔直,禁瓷砖缝、踢脚线、规则台阶;近景地面:干净压实泥土为主,全幅只零星几颗小石、散点分布,中央平缓留空给角色站位,禁成排/成堆碎石、满铺砂砾、泥点噪声、瓷砖、规则铺装、草、木地板。纵深与三段构图归 §1.4 样张;逐条要素、分层提示词与否定后缀 =battle-stage-prompts.md(本文件不重复维护)。验收:目检〈顶部无钟乳石/吊锥;远景有纵深、非贴墙;无孤立圆柱贴顶;近景为泥土碎石;分隔带不规则;中央无大障碍〉 - 图层归属(2026-10-31 用户裁):背景层 = 三关变体
scene_stage_bg_dungeon/_underdark/_deep_underdark.png(顶部空区+纵深洞厅远景,不画近景地面;按board_type选一张);近景地面 = 独立连续地面层scene_stage_ground.png(泥土/砂砾/碎石地面,全宽、底边贴 B 区底、顶缘即分隔带;高度读布局表ground_h,字段值 100);现有每角色小石台scene_stage_plaza.png保留,叠在连续地面之上。连续地面层与小石台三关共用、跨关恒定、不吃wall_ambienttint(世界中层承载面随关卡换明度会破 §2 层间关系);背景三张变体各自带关卡色族,不再叠 tint。验收:机检〈三张背景文件名带 board_type 后缀;地面层/小石台文件名无 board_type 后缀;背景与地面层均不引用wall_ambient槽〉 - 资产渠道与契约:✦ 插画级(演出类场景贴图,清单 §4 联动登记);战斗一屏样张(§1.4 清单 1.2)含背景出样。背景层 = 三张按关卡变体
scene_stage_bg_dungeon.png/scene_stage_bg_underdark.png/scene_stage_bg_deep_underdark.png(源 = 基准屏宽 ×stage_h,读布局表game/data/tables/battle_layout.tres;显示 1×;按board_type选图;不走wall_ambienttint);三张共用本节构图规则,仅岩体形态与色族按 §6.3 三关方向不同。背景只画顶部空区+纵深洞厅远景,不画近景地面:结算期明细带整条压住 B 区底带(带高 =log_band_h_settle,读布局表),近景地面在独立层;画进背景等于画一件永远看不见、且会随背景变体重复的东西。连续地面层 =scene_stage_ground.png(源 = 基准屏宽 ×ground_h,读布局表;显示 1×;三关共用、跨关恒定、不吃 tint);地面层是极宽薄条,出图与后处理按battle-stage-prompts.md§2.2 的工艺(可平铺纹理条/最宽档裁切,禁横向拉伸)。光柱不迁入背景:三张背景均不画光柱/光带/光束/光晕与任何光源实体,明暗只由岩体层理与暗部承载;原四柱程序层与平色底已退役(背景资产接管该绘制面,平色缺图回退改指状态槽底色)。资产已入包;出图工单 =battle-stage-prompts.md,交付记录见本节「B 区舞台背景与共用地面的交付绑定」。验收:目检〈三关背景可辨为不同洞窟,非同一图换色;远景有纵深、非贴墙;无孤立圆柱贴顶;背景无地台/地面结构件、无砖石墙、无瓷砖地面、无光柱/光带;地面层为泥土/砂砾/碎石〉 - B 区舞台背景与共用地面的交付绑定:三张背景与一张地面已按本节契约入包
game/assets/art/scene/——scene_stage_bg_dungeon.png/scene_stage_bg_underdark.png/scene_stage_bg_deep_underdark.png均 1280×252、不透明全幅、单张 ≤32 色、按board_type选图;scene_stage_ground.png1280×100、顶缘以上透明、单张 ≤32 色、三关共用。地面按作者裁保留候选 v12b 原亮度(实测不透明域 L≈0.132,低于 §2 世界中层 0.22–0.45,登记为作者例外;后续调亮归调参/替换,不重开设计);背景实测 L:dungeon 0.0148、underdark 0.0132、deep_underdark 0.0111(后两者低于世界底层下沿带下限 0.014 不超过 0.003,登记读数)。验收:机检〈四件文件名与尺寸逐位相符;地面顶缘以上 alpha=0、不透明域 ≤32 色;背景不透明全幅 ≤32 色〉+目检〈三关可辨、无光柱、地面读作泥土〉。参考指针:asset-path-map.mdscene/行、battle-stage-prompts.md§2/§4。 - 近景地面与地台走独立件:连续地面层
scene_stage_ground.png与角色脚下小石台scene_stage_plaza.png均为独立层,三关共用、跨关恒定。小石台源 48×12、九宫格横向拉伸、顶缘受光线 2px 不随拉伸变形(规格见 §8.2);连续地面层的顶缘即分隔带(不规则碎石/阴影缝,不是直线亮边)。独立的两条理由——① 三张背景按关卡变体,地面若画进任一背景就得三张各画一遍、且三关站位面会漂移;② 结算期明细带整条压住底带(带高读log_band_h_settle),地面在独立层才能跨关恒定并保持世界中层承载面不变。小石台先保留,是否退役归后续裁决。验收:机检〈地台件按九宫格拉伸后顶缘受光线宽度恒为 2px〉+目检〈连续地面为泥土碎石、顶缘不规则〉
6.2 营地场景
- 情绪与色域:承载 §2.8——全作最暖:烛光黄
#F6C667× 木色#8A5A34(§7.2),中等饱和,无棋盘式高对比。 - 场景构成:一张可点击的营地场景图(1280×800,与工程档同幅面)。远景=天空与远山;中景=独立成层的木围墙(密排竖木桩、桩顶削尖、不透缝无横木)与半开的营地大门;近景=中央篝火、左侧锻炉铁砧、右侧帐篷与宝箱、帐篷旁的笔记本,另有木桩与挂在围墙上的布告板。中景带自底部往上约 2/3 处起;近景物件可覆盖围墙,唯一例外=中间门洞必须留空、不被任何物件遮挡。七个可点物件的功能绑定归
camp.md,本节只定画法。 - 图层拆分(10 张):场景按「远景/中景/近景要素各自成层」拆——
scene_camp_bg背景层(z0,不透明全幅)=天空+远山+整片地面+门洞内一条通向远处的小路;scene_camp_wall围墙层(z1,透明底)=横贯全宽密排木桩墙(左右两段)+两根略高的门柱,门洞处留透明缺口透出背景层的小路;scene_camp_board布告板(z2)、scene_camp_gate门扇(z3)、scene_camp_dummy木桩/scene_camp_forge锻炉/scene_camp_tent帐篷(z4)、scene_camp_chest宝箱/scene_camp_notebook笔记本(z5)、scene_camp_campfire篝火(z6,最前)=八个物件层,各透明底单件一张。帐篷为承载件、不可点。围墙独立成层的好处:桩高可单独锁死、门洞做透明缺口、背景层不混入暖木色。提示词与坐标 =camp-scene-prompts.md,消费常量 =asset-path-map。 - 交付形态:背景层 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,浮层覆盖,不挤压画面)。
- 事实源边界:解锁条件/价格/存档写入归元进度 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 追认现值(各素材第一张样本稿已过审为终稿,重定即触发重出,不裁)。
6.3 三关图类型色板候选(board_type 换挡方向)
- 模板与不变槽:换皮只换 §4.3 四槽(
tile_closed/tile_open/wall_ambient/variant_tint),信息与语义层全图类型恒定——本节只给三关方向性候选,终值按 §4.3 现行规则重跑 §1.4 格子样张冻结。终值的取值程序:先跑「三关色相 × 五组类型微光」互辨抽测(抽测任务登记在待办清单),再按 §4.3 现行规则重跑 §1.4 格子样张冻结——本节不填终值色值,待该抽测与格子样张重跑后落本节修订。验收:机检〈本节三关行无tile_closed/wall_ambient终值色值字面量(终值未冻结前禁填)〉 - 三关背景变体:§6.1 的三张背景取本节三关方向作为岩体形态、剪影语言与色族差异(dungeon 暖石棕+地精巢穴支洞/木栈道/木桩围栏;underdark 冷蓝灰+卓尔巨柱/石笋/蛛网/螺旋塔剪影/巨菇/石桥;deep_underdark 灰黑+灰矮人石笋城郭/棱角石厅/矿道口/烟囱塔);背景不复用
wall_ambienttint(该槽作用于棋盘/世界),背景色值归战斗屏场景环境子板。验收:目检〈三关背景可辨为不同洞窟,非同一图换色〉 - 深度轴叙事(§2.7 下探过渡):色相层进预告「更深更险」,明度档不动——
- dungeon 地精洞窟(第一关):现行掩尘系暖石棕(
#C9AF83基)即基准档,wall_ambient暖棕; - underdark 幽暗地域(第二关;方向:冷调幽暗):主调灰白蓝候选(低饱和蓝灰域,
tile_closed),少量紫黑倾向点缀——紫系取紫罗兰域(≈256°)候选,禁入带 300°–345° 不变;wall_ambient冷蓝灰; - deep_underdark 灰矮人矿城(第三关;方向:灰黑主调 + 矿脉金属色点缀候选,守 §4.1 明度地板 L≥0.30):矿脉点缀走金属质感族(冷银/铜灰候选)——「金属色」以材质感承载,奖励金亮金仍禁上格底(§4.2),不占用收益语义金;
wall_ambient铁灰。
- dungeon 地精洞窟(第一关):现行掩尘系暖石棕(
- 共同纪律:三套候选色相均须与五组类型微光色带(§4.2)抽测互辨(格底与微光同在未开格面,邻近色相有吞没风险);避 300°–345° 禁入带;L≥0.30、饱和 ≤0.55(§4.1 硬指标)。
6.4 关卡间下探过渡
- 视觉承载(§2.7 情绪的画法面):竖井下移镜头,两侧砖层色板渐变,预演下一层主色——渐变取色 = 下一关
tile_closed/wall_ambient槽候选值入画,只动色相/饱和;明度带随深度微移候选归 §2.7(空间纵深表达,非情绪)。 - 资产与排期:程序化色板渐变(⚙ 脚本管线),无独立插画需求(候选);演出编排与时序归冒险结构/战斗表现 GDD,本节只定渐变取色与明度纪律。
6.5 视野迷雾与黑暗区域渲染(棋盘灯光区)
白话:战斗棋盘不再整板可见——只有以角色为中心的菱形灯光区看得清,区外没开过的格子沉入全黑,开过的格子留下灰阶的「记忆」。像在洞穴里举灯探索。机制规则(可见性/生命周期/纯呈现纪律)的现行事实源 =《HUD框架》「视野迷雾:菱形灯光区与黑暗边界」节(全项目唯一事实源,引用只指路),该节点名「黑暗区域渲染规格(暗淡态明度、迷雾过渡)归 art-bible」,本节即其承载——只管"怎么画",不复述机制。纯呈现层:格态、数字真值、清图判定零影响;零素材新增(全部程序化遮罩/调制);类型微光语义零改动。
- 菱形灯光区(遮罩几何):灯光区 = 以角色所在格为中心、曼哈顿距离 ≤ LIGHT_RADIUS 的格集,区内照常渲染。LIGHT_RADIUS 走表值/常量参数化,基准 8——现行事实源「灯光区起步半径=微光环 8 格」的落码取值(半径数值沿微光「周围 8 格」的 8 起步,实测后可调)。两圈分立注:类型微光作用圈 = 英雄贴身 8 邻格(与可挖域同圈,现行事实源《HUD框架》「未开格类型微光」节),不随灯光区扩(权威文档配套裁决)——灯光区只裁可见性,微光锚仍是可挖域,两圈几何分立、半径参数互不读写。提灯插值位:FOG_LANTERN_BONUS = +2(flat 整数档,权威文档配套裁决;落码常量名
board_view.gd FOG_LANTERN_BONUS),已接效果入库(载体=秘宝·同调位 fog_lantern「魔法提灯」行,组合根每战装配链显式重算接线;呈现画法零改动——本节只管"怎么画",机制现行事实源仍归《HUD框架》)。边界随角色格位逐格重算,无半径插值动画。←现行事实源;§2 光照氛围允许域 - 区外未开格:全黑不渲染(不透明档,照抄现行事实源):现行事实源原文「区外未开格=全黑不渲染」——不透明纯黑(L=0),非高遮蔽半透档。理由注记(为何不用高遮蔽档):①三档信息阶梯干净——未开格不可见=零信息、记忆格=弱信息、活格=全信息,叠读不打架;②高遮蔽档下砖面纹理隐约残留,与「类型微光=未开格唯一信息通道」(§4.2/§4.6.3)冲突——纹理残影泄格面观感;③现行事实源验收线「区外未开格不可见」须二值态才能逐格断言。←现行事实源;§4.2
- 区外已开格:暗淡记忆态(灰显可读档):画法 = 地板纹理原样 + 灰罩压顶——纹理直画后
FOG_MEMORY_PLATE #3A3A3Aα0.66 灰罩盖顶,素材零改动(原「程序化素色记忆板平涂」已弃用);格内元素灰阶随罩隐现:记忆墨 #C4C4C4(中性灰 L≈0.55)。双峰板色牌格在记忆态退牌归板——牌面并入记忆态、数字以记忆墨直画。封印印记不在记忆态面:印记只落在未开格,区外未开格全黑——印记随格隐没、灯光区移回复显(纯呈现,封印数据零影响,现行事实源的显式推论)。←HUD框架 可访问性基线;§4.1;§3.2 - 记忆态可读性判据:数字对合成底归一后(真实渲染面)三关 ≥4.5:1(WCAG 硬指标;合成底 L1 #4C4038/L2 #3F4147/L3 #3E4048;行值与素材随动,测点=ui_contrast_probe 迷雾段)。归一注:装载亮度归一是现行生产路径(
board_view._normalize_floor_luma),原图均值≠渲染面,复算须落归一后底。可辨性自查(三通道,随样张/实机自检):①对全黑未开格——合成底 #3E3731(L≈0.036)对 L0,实机目检常光档可分(暗房档一并抽检);②对灯光区内活态已开格——主判据=数字墨灰度差(记忆墨 L0.55 对亮墨三档 L≥0.75 / 色牌 #F5EAD3 L≈0.83,灰度 ΔL≥0.20)+ 色相通道(记忆态近中性灰,对活态暖底暖墨);③格态三形在记忆态保持灰度可辨——形通道经纹理+灰罩形态不变,沿 §1.4 验收 2 同源判据。验收:机检〈ui_contrast_probe 迷雾段记忆墨对比 ≥4.5:1〉←§1.4 - 迷雾过渡边:硬边(逐格二值):灯光区边界 = 整格二值切换(区内全渲染 / 区外全黑或记忆态),不做渐变过渡带、不做半透明晕边。理由:①边界是信息边界不是氛围晕——渐变中间态 =「看得见但看不清」,破数字可读硬指标与记忆态明度档;②现行事实源验收断言(边界格呈态、两态逐位一致)须格级二值可判;③与砖面整格表达(§3.2 高墙瓦片体系)、ITB 格内信息分层气质同轴。无动画,减动效无涉。←现行事实源;§1.2 原则一;§3.2
- 与结算期去饱和的叠加共存:结算期去饱和偏移(settlement_fx_view,同族先例)与迷雾调制叠加规则 = 记忆态为终态档——区外已开格在结算期保持记忆态档、不再叠加结算去饱和(灰显已含去饱和语义,二次调制无信息增量且明度不可控);灯光区内格照常吃结算去饱和;全黑格两态无差。叠加态随实施批共存校验 + 探针断言(provisional,实机目检可代拍)。验收:机检〈叠加态下记忆态灰显不被二次调制〉
7. UI 设计(UI Design)
白话:这一章管 UI 长什么样式,UI 的具体选择都在本章定义。布局落在哪里、占多少像素,屏级权威在 battle.md、系统契约在 HUD框架;本章节内容——形状语法与色板细则(自 §3.3/§4.4 迁入)、布局栅格、字体字号、营地界面画法、引擎原生控件与按钮状态规格。
7.1 形状语法细则(自 §3.3 迁入)
**半拟物:容器穿戏服,数据素面。**面板=石板圆角矩形(与地砖同圆角率,全 UI 恒定),按钮=凸圆角的"可按的砖"(按压态=下沉一档,运动手段 §2),仪式性确认(胜利等)=圆形蜡封(呼应 §2.4);数字框、准线、进度条一律直角细线、无纹理;数字色牌 = 直角小素牌(后备件)——宽随数字位、无纹理无装饰,仅复杂格底兜底时垫于数字正下方一层(色值 §4.1),属"须精确的信息"侧、走直角律。判据:圆角=可触摸的物件,直角=须精确的信息。与参考分界:取 ITB 的信息分层,弃其冷硬斜切 HUD;取 Moonlighter 的木石亲和,不做全拟物。验收:目检〈面板圆角/按钮凸圆角/数据直角三态可辨〉
- 极性强调冗余(§4.5⑦):UI 红/金强调对必须补图标+文案冗余;破坏性确认与常规确认禁止同位(位置通道)。验收:目检〈红/金强调位有图标+文案,破坏性确认独立位〉
- 圆角率单点注记:容器/按钮圆角值收敛为全站唯一
RADIUS_OBJECT = 5(ui_kit 单点;面板与按钮同圆角率即满足本节「全 UI 恒定圆角率」);数据框/数字牌/AP 点阵/准线/血条维持 0 直角;例外三件保留=标题屏底座椭圆 17/结算金印 200(圆形蜡封)/状态脉冲环 100(圆形)。验收:机检〈ui_kit 圆角取值仅 RADIUS_OBJECT 与例外三件〉 - 九宫格切片注记:panel 石皮
PANEL_SLICE = 16(button 维持 8、仪式框维持 12——素材 panel_stone/button_stone 均 48×48 不动);panel_skinned工厂内 content margin clamp=低于切片的分量自动抬到切片(石框纹理不吃内容;工厂单点,调用点零改)。验收:机检〈九宫格面板切片 16、边角无错位〉 - 资产渠道:♻ 九宫格面板/按钮改色过复用闸优先(清单 §0),⚙ 兜底;样式终稿随 §1.4 样张闸后定稿。验收:方向性
- 占位完成条款:程序化占位 = 临时态,任何屏的终稿闸 = §1.4 整屏样张过闸;占位态禁止跨里程碑。验收:目检〈过闸屏无程序化占位残留〉
- 实现侧边界:样式收敛 ui_kit;ui_kit 的工程契约归《HUD框架》,本节不重述。
7.2 UI 色板细则(自 §4.4 迁入)
全局文字可读性硬指标:一切文字(含菜单/说明/tooltip/按钮/底栏,无区域例外)对其直接背景 ≥4.5:1(WCAG AA);大字(≥18px 或加粗档)底线 3:1、目标 4.5:1;文字禁直接压纹理底——垫容器或罩层。站桩石板地台面同理(显式落法):地台板身 #968264 是 §6.1 定死的世界中层承载面,暖白 #F0E2C8 对其实测仅 2.89:1,文字禁直接压地台面——须垫容器、素牌或罩层,或落进结算明细带的素底。核验闸 = §1.4 整屏样张。验收:机检〈ui_contrast_probe 全文字位 ≥4.5:1;B 区站桩文字位正下方像素非地台板身色 #968264〉
数据素面的墨来自世界的墨:UI 数字、进度、准线一律主墨 #33261B 系——棋盘与面板读同一种墨;容器穿木石材质色,数据只穿墨。营地与棋盘:菜单容器背景用全作最暖的烛光黄 #F6C667 与木色 #8A5A34(§2.8;场景构成 §6.2);战斗容器转中性石色,防暖色渗入棋盘分走数字对比预算——氛围色向可读色让路。UI 不新增语义色,一切强调沿用 §4.2。暗底呈现态双色墨制(样张冻结):暗底系(已过/未来/候选/Boss 方块、暗数据框)图标与读数一律暖白 #F0E2C8(WARM)、亮底(当前金 #F0A828)转深墨 #181410(INK_ROUTE)——各态对比 ≥4.5:1;已过节点暗金冻结 GOLD_DONE #68562C(专用呈现态值;旧 GOLD_DIM 对双色墨不达标、已退出该呈现位);Boss 描边 = 紫赤 2px + 外缘 1px 深墨环(灰度冗余通道——§4.2 色相独占本色不变,§4.5 灰度可分类承载)。验收:机检〈暗底/亮底各态文字对比 ≥4.5:1〉
- 琥珀双岗注记:主操作色与收益金分轨——主按钮/候选节点/钥石徽章底用烛光黄
#F6C667(CANDLE,独立 token),奖励数字/钥石读数/地图「当前位置」仍独占 §4.1 奖励金#F0A828。烛光黄族身兼「主操作 + 收益邻近氛围」双岗系主动取舍,非疏忽,防回改。底色三件套:BG_ROOT#3A2E22/BG_OVERLAY#362B20/BG_BRIGHT#453723(配色总纲「提暖提亮禁近黑」);暖米族 WARM_SOFT#E8D5A8/WARM_FAINT#CDB88C(「米色去灰」)。验收:方向性 - 色板五件对齐注记(来源 = 原型 demo):数据板
PANEL_DATA #E9D9B8/板线PANEL_BORDER #786E58/状态槽底SLOT_BACKDROP #3E362C/血条深底HP_BAR_BACK #282220/营地头带CAMP_HEADER_BAND #6E4526五 token 取值向原型 v2.1 对齐(Δ≤6/255 目视不可辨)。色板唯一来源 = ui_kit 单点不变;原型文件只读不改(artwork 红线)。验收:机检〈ui_kit 五 token 与本表一致〉
7.3 布局栅格
- 结构:双舞台三区(B 战斗画面/C 数据框/D 棋盘;字母保持不重编)为结构冻结项,分区几何的唯一事实源 =
game/data/tables/battle_layout.tres,分区尺寸与像素级裁决归 battle.md(HUD框架只载 1280×800 基座口径,不复写数值)。验收:机检〈三区结构常驻〉 - 栅格规则(候选):面板间距/内边距按 4px 步进档(8/12/16/24 候选),全 UI 恒定;数据区直角细线不占圆角预算。终值归样张。验收:目检〈间距落在步进档〉
7.4 字体与字号
- 字体:全局一套像素字,单套即终稿——缝合像素字体 Fusion Pixel(OFL,已接入
game/assets/fonts/ui_font_fusion_pixel_zh_hans.ttf),拉丁字符与数字沿用其自带拉丁字形,不另设拉丁专件(现状即终稿;旧拉丁候选 Kenney Fonts 已弃;生产工单=清单 §3.6);墨色走主墨系(§7.2);换字体 = 全局决策。验收:机检〈主题字体指向 Fusion Pixel 件〉 - 字号:像素字体整数倍缩放,禁非整数缩放(像素模糊);下限(1280×800 基座):棋盘数字 ≥18px(公式 =
max(18, ceil(格边长 × 0.5))不变)、正文/明细 ≥16px、tooltip ≥14px(1280×800 低于 1080p 基准,同字号实际更小)。验收:机检〈静态文字位点字号 ≥ 档位表值〉 - 字号档位表(六档):全站 UI 文字字号只经
UiKit.FS_*单点取值,裸数字字号弃用——FS_CAPTION 12/FS_HINT 14/FS_BODY 16/FS_SUB 18/FS_TITLE 24/FS_H1 34。旧实测档按就近归档收编(10/11/12→CAPTION、13/14→HINT、15/16→BODY、17/18/20→SUB、21/22/24/26→TITLE、32/40→H1;静态位点全归档,数据驱动动态字号位点除外);棋盘数字公式maxi(18, ceil(格边长×0.5))与站桩血数 11px(条带内读数豁免)不入表。注:六档相邻比 12→14→16→18 三段 <1.25×,系裁决值优先于字重纪律的档差参考线,该参考线对新层级设计仍有效。验收:机检〈全站无裸数字字号,位点走 FS_*〉 - 小字号豁免条款(合并单条不开两口子):下款两类豁免于本节下限——①条带内读数:压在窄条带(血条/进度条等 ≤12px 高带)内居中的数字,受条带高度物理约束,维持 11px 下限,且必须按 §7.2 垫素色牌后计对比(实装=B 区站桩血数 11px 压 HP_BAR_BACK 牌 14.3:1);②装饰性 overline/caption:不承载须精确读取的信息、仅作分区标题或氛围小字者,可至 12px。豁免逐处清单(撤除史归 git 提交史,余清单如下):条带内读数=B 区站桩血数一处;装饰 caption 档(FS_CAPTION)在册面=棋盘底操作提示条/营地柜台说明文与结构位预留注记/图例 RAP 词条说明/设置警示文两处/关卡地图底栏组标(生命/属性/特性)与分隔系/站桩消散提示/B 区状态槽微计数(×N●○)/bcard 脚注/RAP 反馈行/刷新余量徽标——清单外 11-13px 文字一律按正文/tooltip 下限提档,新增 caption 位须同批增补本清单。站桩顺位徽标 ①②③ 不增列本清单:既不在①条带内读数在册面、也不在②装饰 caption 在册面,按本条纪律取
FS_HINT14 归六档;为它单独入册等于开第二口子,与「合并单条不开两口子」的立条理由正面相撞。站桩名字行同理:名字行(敌人名与护甲文字)承载须精确读取的信息,不在①②两在册面,按本条纪律取FS_HINT14 归六档、不增列②在册面,名字行几何(素底牌矩形、文字基线、宽度测量)随档位联动。②装饰 caption 在册面逐处维持不变。验收:机检〈豁免文字位均可对上本清单,清单外无 <14px;站桩顺位徽标与站桩名字行绘制点取 UiKit.FS_HINT,且②在册面不含该两位〉 - 字重纪律(字重两档不启用):层级手段为两件——字号档差(相邻层级 ≥1.25×)+ 墨色深浅;全局单字重,不上第二个字重(重开钩子已注销——整屏样张复核确认:屏内各级文字全部能归进本节六档字号,顺位徽标与站桩名字行两处按本节纪律提档即可,屏内实测对比全部达标(暖白对舞台底 9.49:1、GOLD_BRIGHT 6.47:1、血数 14.3:1),未实证标题层级不足,维持单字重,不另立条目);数字禁描边/阴影伪加粗不变(字形为唯一数值载体,§4.1 同源纪律)。验收:机检〈主题仅注册单字重〉/目检〈屏内标题与正文层级仅靠字号档差与墨色深浅两件即可分辨,无一处需要第二字重才读得清〉
7.5 营地界面
- 营地界面=一张可点击的场景图 + 七物件点选:点画面里的物件进入对应界面(冒险/锻造工坊/秘宝匣/生涯记录/天赋树/图鉴/离开营地)。场景构成、七个物件清单、画法、分层与交互四态的唯一出处 = §6.2,本节不复述;色域走 §7.2 最暖一档;钥石余额常驻顶部一行小 HUD 栏。界面视觉终稿以表现层样张过审为前置(§1.4 整屏样张闸)。验收:目检〈七物件可点、门洞留空〉
7.6 引擎原生控件与按钮状态规格
边界:定值单点纪律(§8 头注)遵守:本节只锁形态/尺寸档/对比度底线等规则,色值一律指路——主题色值事实源 =
game/assets/theme/README.md溯源表(与 ui_kit 常量双源,见本节末注),本节不复述色值。
(一)按钮五态矩阵(冒烟五态断言在闸)
- 五态齐全:全站按钮(普通/主/危险三厂)必须五态非空——常态 / 悬停 / 按下 / 禁用 / 键盘焦点;任一态缺档即违本条。验收:机检〈冒烟五态断言全绿〉
- 悬停 = 常态图 + modulate 提亮:提亮档
Color(1.06,1.06,1.06),零素材;主钮承CANDLE.lightened(0.06)同纪律。验收:机检〈悬停态样式非空且非常态图直贴〉 - 按下 = 本族下沉:石纹钮
button_stone_pressed九宫格;危险钮补本族 pressed 深档(深红darkened(0.18))。验收:机检〈三厂 pressed 样式各归本族〉 - 禁用 = 本族底 + α0.45 幽灵化:flat 两厂 bg+border 同 α 全幽灵化;文字禁用色同档。(注:本条管 UI 按钮;营地场景图里的物件禁用态另按 §6.2——降明度 + 去饱和,不走 α 幽灵化。)验收:机检〈禁用态非按压图、α0.45〉
- 键盘焦点 = INK 2px 内缩 1px 环:负 expand margin 实现内缩;引擎 focus 样式盒叠加绘制、不遮钮底;逐实例 override、主题层零新增词条(冒烟双红线在闸)。验收:机检〈焦点样式在位、主题词条数不增〉
- 新增按钮位须同批过五态清单;验收 = §1.4 样张 + 冒烟五态断言。验收:机检〈新增按钮位入冒烟五态清单〉
(二)引擎原生控件组件规格(15 类型词条全覆盖,预盖件零实役)
- 滚动条:V/HScrollBar 的 scroll 槽(直角)+ grabber 三态;引擎事实 = grabber 走 StyleBox 非 Icon(4.7.2 源码实证),滚动条无位图、无箭头按钮(increment/decrement 默认主题未定义);粗细 = content margin 4(8px)、柄最小 8px。验收:目检〈滚动条非引擎默认灰〉
- 滑轨:HSlider/VSlider 的 slider(槽轨)+ grabber_area(填充段)两段必须一眼可辨(§7.2 可读性硬条款的滑轨侧落法——判据 = 拖到中点两段可辨,机检对 ≥4.5:1 文字位不覆盖该面,归样张目检);抓子三态位图;H/V 边距为旋转换位。验收:目检〈拖到中点两段可辨〉
- 悬停气泡(Tooltip):TooltipPanel/TooltipLabel 深底 + 边 + 暖字,标题屏观感承旧值原样迁入;字号走 §7.4 既有档(tooltip 14)。验收:目检
- 输入件:LineEdit(数据框惯例:牌色底 + 板线 +
RADIUS_OBJECT圆角 + 占位色)、SpinBox(updown 合并箭头位图 + 箭头底 hover/pressed 覆盖)、H/VSeparator(单线 1px,默认灰 #808080 实证在位须接管)。验收:目检 - 预盖件(零实役,备案待启用时复查):CheckBox/CheckButton 共用一套
checked/unchecked(+_disabled) 四态图标(引擎事实 = 4.7 无 on/off 词条,两类同名同套——否则预盖静默空转)、OptionButton(button_stone 九宫格 + 箭头位图)、PopupMenu(panel + hover 高亮 + 字色字号)。验收:方向性 - 字体防御:主题
default_font显式指向全局像素字(与 project.godottheme/custom_font同文件),冒烟双断言(主题非空 + Label 实取非空);default_font_size不设——全站字号走 §7.4UiKit.FS_*逐实例 override。验收:机检〈冒烟字体双断言全绿〉 - 组件新增位:新引擎控件入 UI 须同批在本节登记规格(尺寸档/圆角/对比度底线),禁裸用引擎默认灰圆角现代风。验收:目检〈新控件无默认灰样式〉
(三)氛围层平滑件与抖动派并存
- vignette / gradient_base / beams 三件程序化平滑渐变件保平滑连续 alpha(已裁),与卡顶类型色带 DitherBand 的 Bayer 有序抖动派并存不一致——整屏样张已裁:维持三件保平滑,并存事实按本节登记,不再统一。裁定的依据:三件保平滑有用户裁背书、且已在 §8.2 显式 LINEAR 豁免清单在册(该清单写的是「怎么继续维护」不是「要不要取消」),统一派等于推翻用户裁并清空该清单;「把两派调参拉到同一颗粒感知档」在圣经里无任何条款依据,属自造动作。本节只登记并存事实,不统一。验收:方向性(目检复核:三件氛围件与卡顶抖动带同屏时,两派颗粒语言差异不构成观感冲突)
主题色值双源注记:主题色值现存两处——
main_theme.tres字面量与 ui_kit 常量(README 溯源表缓解)。长期收敛候选 = 程序化 Theme 生成回代码单点,属重构面、未排期;新增色值仍按现状双落并同批登 README 溯源表。
8. 资产与技术规范(Asset & Technical Specs)
白话:这一章是给所有出图者(人与脚本)的技术底线——多大的画布、什么格式、怎么命名。屏级格边长定值的裁决权在 battle.md;本节锁资产侧:分辨率档位、像素基准与缩放纪律、导出与命名、帧数规格。生产工单视图 = art-assets-checklist。
定值单点纪律:全文数字定值只落在两张表——§4.1 主色板(全部色值+明度/饱和边界)与 §8.2(画布/体量/立绘源档/圆角率/缩放);其余章节一律指路、禁复述数字(修订改值只动单点处);character-design §5.5 为档位语义表(普通/精英/Boss + 例外),数值权威 = §8.2。
8.1 分辨率档位与格边长
- 两档定案:1280×800(基座)+ 1920×1080,窗口不可调;后续调整走修订。验收:机检〈工程分辨率配置与两档一致〉
- 格边长取值:按档位与板形计算——固定档位下格子量增加则格边长相应变小;公式、单位与现行算例的唯一出处 = battle.md「棋盘格尺寸公式」,本节不复述数值。资产侧锁两条比例:瓦片整格铺满(32×32 源随格边长缩放,允许非整数倍——瓦片不适用 §8.2 甲类整数倍纪律)、棋盘小人显示占位 ≤ 0.75× 格边长。(1920 档已裁决全局等比缩放)验收:机检〈瓦片显示尺寸随格边长、小人占位 ≤0.75×〉
8.2 像素基准与画布
- 缩放纪律(硬规则,按资产两类分级;不做个案豁免):
- 甲类·文本与语义件(数字、图标、格面纹样):维持严格整数倍缩放硬规则——可读性与语义精确性优先,禁非整数缩放不变。封印印记不属本类(参数化绘制件,见本条末「封印印记参数表」)。砖面 tile 亦不属本类,随格边长整格铺满(见 §8.1)。验收:机检〈甲类件显示尺寸为源整数倍〉
- 全局纹理过滤与平滑渐变件例外:
project.godotdefault_texture_filter=0(Nearest)全局——像素风 UI 皮(九宫格/主题石纹样式盒/滑轨抓子/勾选/箭头图标)翻 Nearest=意图面;显式 LINEAR 豁免清单(有意例外)= vignette / gradient_base / beams 三件程序化平滑渐变件——保平滑连续 alpha 的程序化氛围件(§7.6 三已裁);新增平滑件须同批入册本清单,禁静默挂 LINEAR。翻转面枚举与冒烟断言(6 条)在闸。验收:机检〈过滤面枚举与 LINEAR 清单逐项一致〉 - 显示档登记例外(64 源 0.5×,待素材批消除):柜台四枚
icon_forge/workshop/atlas/keystone(64×64 源)显示档统一 32px = 0.5×;状态九枚(32×32 源)mini(站桩)档 16px = 0.5×。两处均系「显示尺寸侧唯一可调、素材一字节禁改」红线下的人工检整数半倍档,登记为待消除例外——素材设计出 32px 源后回归 1×。常规档显示一律 1×(状态九枚 32px、手绘十枚 20px/40px 双档、BCard 图标槽 40px=2×、护甲类型图标三枚 24px=1×——源 24×24,归甲类整数倍纪律)。验收:机检〈显示档与登记表一致〉 - 乙类·角色与单位精灵(有机形体、非文字):允许运行时非整数倍缩放(NEAREST 过滤不变),容忍轻度像素宽窄不均;判据 = 实机目检,可感不适即回整数档。乙类免逐案豁免。验收:目检〈立绘无可感拉花〉
- 站桩立绘槽位=高定宽随:立绘/精灵槽位只定「高度的绝对档(档高取整数像素值)」,宽度随源图宽高比自适应——禁止把全部立绘塞进统一方框强拉(纵横倍率必须恒等)。反面实例:统一方框把窄条生物源(细长本体裁掉透明边)按主角比例横拉压扁发花。乙类的非整数豁免只覆盖等比缩放,不含纵横异倍变形。验收:机检〈立绘纵横倍率恒等〉
- 1920×1080 档策略:全局等比(stretch=canvas_items+aspect keep)——16:10 设计在 16:9 窗口=等比 1.35×+左右黑边各 ~96px,构图与 1280×800 基准档完全一致;甲类 1.35 非整数缩放例外注记:轻度宽窄不均系本档位接受代价(像素游戏 shipped 常态),实机目检可感不适→回乙案(1920 独立 2× 基准)重议;乙类同前款。验收:目检〈1920 档构图与 1280 档一致〉
- 画布基准(暂定值):
- 主角人设原图 = 48×72(1× 基准,暂定;与站姿降采样可读性验证一致);
- 棋盘小人 = 32×32 二头身派生版(暂定,允许更小)——独立资产,自人设定稿压缩派生(character-design §5.4),不吞数字位、占位 ≤ 0.75× 格边长;板越小占比摩擦越大(13×13 / 14×14 更小,算例见 battle.md「棋盘格尺寸公式」),32px 源档的去留已定终值 = 保留 32×32 源档(沿「独立小源档」路线;N=12 板下显示占位上限 27px = 0.84 倍,正落本节乙类非整数缩放许可范围,连豁免都不用再办),待决标注注销;
- 封印印记参数表(绘制件,非贴图件):形与画法见 §3.2。定值——环外径 = 0.82 × 格边(26 格 21.3px/46 格 37.7px);环壁厚 = 0.11 × 环径(≈2.3/4.1px);十字臂宽 = 0.156 × 环径(≈3.3/5.9px);环外光圈宽 = 0.09 × 格边(≈2.3/4.1px),向外衰减指数 1.6、峰值 alpha 0.50;圆心 = 格心。色 = 封印黑单色(光圈只改 alpha)。本件随格边连续缩放,不适用甲类整数倍纪律(非贴图件,见上条清单)。参数单点 =
ui_kit.gd六枚常量SEAL_RING_FRAC/SEAL_WALL_FRAC/SEAL_ARM_FRAC/SEAL_HALO_ALPHA/SEAL_HALO_GAMMA/SEAL_HALO_FRAC,本节为条款侧对照值。改值须本节与 §3.2 同批修订。验收:机检〈ui_kit 六常量与本表逐值一致〉+目检〈渲染帧量环径落 82%±1px、光圈不越格边〉 - 站桩立绘显示档 = 三档绝对高:小型 96 / 中型 144 / 大型 188。逐件归档——小:地精、巨蜘蛛、灰矮人;中:主角、钩爪恐魔、熊地精;大:食人魔酋长、蛛化卓尔、灰矮人石君王。源 = 原稿像素网格(八敌
pixel-1、主角手修 2× 三态稿),紧裁后原样入包,禁再降采样;显示倍率 = 档高 ÷ 源高,NEAREST,宽度随源图比例(高定宽随不变,见上条)。定档依据 = 生物体型(体量=物种体型,非强度线性映射,见 character-design §5.2),顺序由显示档承载、不由源高承载。已接受项:中型三件与地精/巨蜘蛛的源高(92/94/123/90/81)低于档高,属放大显示;食人魔酋长显示宽 157 超桩盒 150。验收:机检〈standee_asset_check 逐件显示档高与归档一致、纵横倍率恒等〉+目检〈同屏体量顺序成立〉 - 站桩立绘排版:① 区高 B 区 ≈1/3 屏 / C 区 ≈2/3 屏,扫雷盘原尺寸不缩、格子不变(区高事实源 = 布局表
battle_layout.tres;压缩由 C 区面板空档吸收);② 站桩内部重排——立绘双脚落石台上缘(弃盒内居中)、血条+状态/名字行落底排(立绘→血条→状态 顺序,全场血条对齐一线;血条嵌石板位、台缘线留作地面线、落影保留接地感),状态空时该行退化为名字行;③ 大体档(显示 >150px 级:食人魔酋长/蛛化卓尔/灰矮人石君王)允许向上溢出盒顶 N px(N 按实测尺寸算定,与背景/光柱无关——现行溢出区恰为临时光柱氛围层〔§6.1 方向稿四柱,x 基准 110/900/1055/1210@1280,battle_stage_view.gd:47-56〕,正式舞台背景插画(三关变体)到位后该层直接退役(背景不画光柱),溢出判定不随之变更;横向禁止压到顶部中央轮次·阶段指示,溢出上限用真图复算 x 区间定),血条仍落底(落底排的第二个收益=头部探顶不带出血条);意图徽标悬浮头顶上方(探顶档压胸);④ 「血条悬浮头顶+立绘盒内居中」排式已弃——盒顶固定 y 与盒内居中在高盒下拉开血条-立绘空洞。验收:目检〈血条一线对齐、大体档溢出不压轮次指示〉 - 站桩石板地台件:
scene_stage_plaza.png,源 48×12、九宫格横向拉伸、顶缘受光线 2px 不随拉伸变形;跨三关恒定、不吃 §4.3wall_ambienttint(独立理由见 §6.1 近景地台独立件条)。验收:机检〈地台件按九宫格拉伸后顶缘受光线宽度恒为 2px〉
8.3 导出格式与命名规范
- 归档纪律:图片素材不入 git 版本管理——仓库只保留运行时引用资产(game/assets);生成链路原始产物(AI 原图/中间产物/候选版本)归档至
archive/并择机上对象存储备份;主文档(圣经/GDD/清单)禁引用 artwork/ 散文件路径——定稿成图以 game/assets 为唯一事实源,过程稿引用一律用归档包路径或描述性出处。验收:机检〈主文档 grep 无 artwork/ 散文件路径〉 - 入包与对账检查器(挂点已立,实现随 PRD 工具批):①色板检查器——扫描新素材色板,报新增色/近色告警/超 §4.1 上限(48)拦截,挂素材流入包步(asset-path-map §2 第 3 步);②路径核对器——扫描 asset-path-map 声明的全部路径,悬空/未清即报,随大批与审计例行跑;③standee_asset_check 硬闸升级规格——按 §8.2 显示档逐件校验显示档高与归档、纵横倍率恒等、像素域色数 ≤32、描边亮度达标(亮描边明度档);把「高定宽随」教训变成代码闸而非文字。验收:机检〈三检查器在闸可跑〉
- 交付格式:PNG 透明底;动画 = 序列帧或引擎精灵表(SpriteFrames),帧尺寸恒定、横向等宽排列(候选)。验收:目检〈交付件透明底无杂边〉
- 命名规范(候选草案):
<域>_<对象键>_<状态|变体>[_<序号>].png,全小写 snake_case;对象键 = 数据表主键(effect_id/reward_id/cell_type/enemy_id——图标键契约 §4.6 的文件侧延伸:资产文件名键 = 图标键,全局恒定禁运行时换图);图类型变体后缀 = board_type 键(_dungeon/_underdark/_deep_underdark);候选评审件与终稿分目录(artwork/candidates/承载评审件)。验收:机检〈命名与目录检查器零红〉
8.4 帧数规格(样张冻结)
- 帧数规格(样张冻结):待机循环 4 帧;攻击/技能准备 6 帧单次;受击 2 帧;死亡 = 灰化+碎裂退场(§4.6.4 语义硬规则),序列帧归 ✦ 缺料清单;帧时长与结算节拍对齐(预告时序见 §4.6.4)。验收:机检〈序列帧数与档位一致〉
- 方向集:棋盘小人=一份画稿+左右镜像(现行资产=朝左帧两态 idle/walk,右向 =
flip_h;下/上向无独立帧);斜向移动/挖掘按主导轴吸附最近正交向呈现,不出 45° 斜向帧(斜向信息由位移轨迹与目标格预告承载,ITB 实态同款)。镜像与「旗面恒画右」纪律(character-design.md 冒险背包条)的相容归属:棋盘小人默认镜像豁免、旗右纪律限立绘侧——代拟口径已追认(棋盘小人朝左时旗面朝左,与立绘侧「旗面恒画右」并存;画稿维持一份 + 镜像,零新增资产)。验收:目检〈侧向镜像无破绽〉
8.5 结构件完整性与参考核验
白话:格子读感里的立体结构——顶面、缘件、角件、周界轮廓——必须是素材里画出来的结构件;素材缺件就停下报缺,拿调色/渐变/滤镜顶替不是变通,是违规。
- 结构件完整性:格面立体感(高墙顶面/坡缘/角件/周界轮廓)只能来自素材本体绘制的结构件拼装(样例=Necesse 式缘件:专属底色+手绘细节+暗轮廓线的独立贴图);禁止以调色、渐变、明暗滤镜、跨格投影等生成手段伪造素材中不存在的结构。样稿暴露缺件时,正确动作=停下报告缺口与「换素材/自产缺件」选项,由用户裁决后执行。验收:目检〈立体感逐件来自素材本体,无滤镜伪造〉
- 参考核验:宣称「参考 X 游戏」前,必须取得并实际查看 X 的截图证据(像素级放大核验其实现方式),证据存
artwork/mockups/或design/art/references/;仅凭文字资料、记忆或宏观印象作出「X 是这样做」的断言无效。验收:目检〈参考结论有截图证据在库〉 - 图底分离:已开地面的明度须低于未开格墙体,由素材选型承载(选更暗的地板砖),不靠渲染压暗实现。验收:机检〈已开格底明度低于墙顶面〉
- 生产分工:格面地形类素材=材质归模型、结构归程序——AI 生图模型只出无缝填充纹理(无边框/无亮边/均匀光照/方形);一切结构件(缘件/轮廓/立面/角件/收头)一律程序化绘制或手修,因为 autotile 任意拼接的边界像素约束超出 2D 生图模型能力(实证:生图 5×5 瓦片表每枚砖自带啃咬边框与宽亮带,提示词无法根除)。镜像规则:东西对称结构件只许水平翻转(flip_h)复用、禁旋转——北受光下东西侧缘光照对称,镜像无损真;旋转会把北受光转到东边。验收:目检〈瓦片表无自带边框/亮带;对称件仅 flip_h〉
9. 参考与反参考(References & Anti-References)
白话:正面参考 = 向谁抄什么;反面参考 = 避什么。两者同等效力——方案违反反面条款时,禁止以「参考了某游戏」辩护。参考图库存于
design/art/references/(点名池三款×2 张,与头注点名池一一对应)。
9.1 正面参考(点名池,用户审阅选定)
| 参考 | 取 | 弃 |
|---|---|---|
| Into the Breach | 格内信息分层、攻击预告上格范式、战棋地块质感骨架(§1.2 原则一;§3.2) | 冷暗军事色调、压暗信息板、斜切 HUD(原则二;§3.3) |
| Moonlighter | 暖质地砖与砖缝质感、亲和冒险者气质、木石暖色道具(原则二/原则三);光照层次与明度纵深(亮地板/暗深渊/发光体三档,§2 明度分层) | 全拟物倾向(§3.3 半拟物边界);Darkest 式压暗(§9.2 反面基准) |
| Peglin | 明快全年龄洞穴色彩、胖体量亲和怪(§5.1 普通怪原型) | 色块依赖——先读轮廓后读颜色(§5.1) |
- 反面条款已成文(§9.2);反面参考图证待本作素材生成后增补。验收:方向性
9.2 反面参考(每条绑定违反条款)
| 反面参考 | 违反条款 | 立法理由 |
|---|---|---|
| Darkest Dungeon 式压暗 | §9.2 反面基准(风格取向记录,非禁令——压暗属普通设计决策,逐案走样张与目检) | 失败重开,世界无光暗记忆——明亮基调下不以整屏变暗作常态表达 |
| 传统扫雷白牌/贴纸式数字承载 | §1.2 原则二(明度分档为骨) | 数字由格底明度分档承载、直画入世界;色牌仅复杂格底后备——满屏白牌=电子表格观感,非游戏画面 |
| Enter the Gungeon 式粒子与色相爆炸 | §3.4 焦点预算;§4.2 色相纪律 | 信息层禁止被特效与杂色吞没,特效入画先过焦点预算 |
| Hades 式特效密度 | §2.2 兑现爽感的上限 | 爽感靠逐行因果归因,不靠满屏特效;承载元素以 §2.2 清单为界 |
| 传统扫雷 1–8 八色分色 | §4.1 数字墨三档 | 八色必撞红/金/蓝/紫赤语义色段;数字只走墨族三档色温,字形为唯一数值载体 |