Commit Graph
70 Commits
Author SHA1 Message Date
DKChan 9ed597b452 T17反馈修复批: ①debug调生命上限后当前血不同步bug修复——冒险账本置满/通关回血封顶口径改生效上限同式(表值+永久强化flat+加算区flat后乘TunePanel pct,与LevelRunner.effective_max_hp逐字同源;旧口径两处只算flat:26→104时开局血仍26/回血封顶按26算)+smoke回血断言窗口同步×5口径(pct=0恒等MC锚零漂移)②第17项选路呈现两主因修复(B线调研定位)——通道干线mid_x按源y偏移消共线重叠+选路停点非候选通道降透明35%(旧态:金岔路与石色结构网焊接成整列可走假象);闸=冒烟628/0+ui_probe/ui_input/fx三探针绿(ui_click_probe worktree环境不稳定卡死未决,主区复跑为准) 2026-10-02 04:56:55 +08:00
DKChan a3efce250a T17三修批: ①旗显示回归修复(tex_flag无setter不触发重绘——glyph时代旗靠glyph setter重绘,T13换tex槽后插旗赋值零重绘=旗插上不显示;补setter同值不重绘+paint全路径清残留防挖开后旗印残留已开格)②伤害数字增强20→26px(crit 32)/驻留0.7→1.1s/描边4→6——用户实机完全没看到伤害数字③结算视觉期跟随排播演播(_is_settling加排播队列项+演播完边沿主动刷新——用户没意识到在结算的感知缺口;全锁实现与胜利收尾链存在死锁交互〔ui_click_probe两度挂死实证〕回退为视觉指示形态,呈报用户裁决)④ui_probe明细带断言适配排播态+补交两探针.uid;闸=冒烟628/0+run_all 15套+五探针全绿 2026-10-02 02:45:10 +08:00
DKChan bc737fb0cb Merge branch 'master' into m3-iter10-20261001
# Conflicts:
#	game/smoke/level_autoplay.gd
#	game/smoke/smoke_all.gd
2026-10-01 18:18:03 +08:00
DKChan fcd34b52bc draw calls 优化批:瓦片态非英雄格隐形 StyleBoxFlat 置 null——满负荷帧 504→196 DC
定位(临时 A/B 探针逐档实测,窗口化满负荷帧,探针已删方法存档于本信息):
- 基线 census:100 格已开 92/glyph 23/叠层约 20/tex 变体 12
- 统一全格 tex_base 为单纹理:504→504(零增益——纹理切换非批断裂主因)
- 去 glyph/badge:-23(每字格 1 DC)
- 去矢量叠层(outline/facade/proj/eflag/contact):-23
- 去隐形 bg_sb:-402(100 格×~4 个不可合批 StyleBoxFlat polygon 命令,逐格打断棋盘批)
- 隐整个 board_zone 参照系:37 DC(HUD 外围)
- sb 清除后 100 格 tex quad 合回 ~1 批(隐格仅省 1 DC)——批可跨 item 合并,唯一杀手=sb 多边形

改动(game/presentation/views/board_view.gd _paint_cell 单点):
- 瓦片态非英雄格不再挂透明载体 sb(透明底+零描边=视觉贡献零),u.bg_sb=null
- 英雄格保留蓝框载体 sb(新透明 sb+3px 边框,绘制序不变);平色回退路径零改动
- 核心层/data/smoke 策略参数零触碰

读数与闸门:
- battle_draw_calls 504→196(目标 ≤200 达标;三跑 196/196/196 稳定)
- 视觉零变化:三关棋盘 PNG(board_shot_probe)+四屏截图(shot_probe)改前后 7/7
  逐像素零差异(PIL diff bbox=None,容差 0)
- 冒烟 596/0;四探针 ui_input/ui_probe/ui_click/ui_layout 退出码全 0
- 附:补交 shot_probe.gd.uid(Godot 4.7 uid 元数据,库内 .uid 全跟踪惯例)
2026-10-01 07:09:10 +08:00
DKChan 4f62a489b6 iter10 追加批: 奖励节点三选一共享池(用户拍板)——AdventureRunner 节点API+AuxItems 句柄面+main 共用面分派+node_overlay 道具面退役+autoplay 节点驱动+reward_overlay_test 随面迁移+a裁备选(L3复杀3)+g裁semver(v2兼容断言+存档序列化v1.3)+f裁调研待办(06新条)+文档五件+任务书(冒烟628/0+run_all 15套+五探针+三闸零新增+熵增PASS) 2026-10-01 06:12:25 +08:00
DKChan 36f652c63a iter9-numfix-e: L2/L3 数字可读性二次修复——甲案证伪改色牌垫底(渲染帧取证驱动)
- 用户实机复测「还是看不清」+ 追责「未经验证不许报完成」:补 board_shot_probe 渲染帧取证探针
  (窗口化真实 LevelRunner+novice 18 步+BoardView 真渲染+视口 PNG,L1/L2/L3 三关)——
  深墨直画在 underdark 系地板放大后可辨但观感隐形(双峰纹理:近黑斑+近白筋并存,
  任何墨族直画必融一峰)——甲案(按板自适应墨族)证伪
- 修复改三态呈现:dungeon 亮族直画(p90≥4.5/均值≥2.5)/中暗板深墨直画(均值门收紧 3.0)/
  双峰板色牌垫底(素牌+深墨 12:1 纹理免疫——v2 色牌形制复役)
- 目视验证(本会话亲验渲染帧):L2/L3 数字素牌深墨清晰可读,取证图
  artwork/qa-board-shots-20261001/(board_L1/L2/L3 + _zoom_L2 证伪对照)
- 机检同步:terrain_tile_sets_test 三态断言 19/19;art-bible v3.4(三态+目视验证面入流程);
  冒烟断言随新语义更新(雷当量 6/8/8 钉值/大奖励与 L3 上限允许模拟档购血叠加——v3.4 购物
  改变 max_hp 序列语义,非功能回归)
- 轻闸:冒烟 596/0+四探针 PASS;剂量-响应点(slip 半档 N=100)L1 36%/战役 1%——悬崖三点齐
2026-10-01 05:57:12 +08:00
DKChan 71502ceecd iter10 T3-T9: 奖励重构实装——adventure表扩列(回血20/池六种/权重/上限/同调位过渡键)+boss_keystone重锚3-2+rng扩签reward_pick+E-S加权洗牌+三选一停点(零自动推进/可中断)+加算区四轴AP(BattleOrchestrator排队兑现)+钥石逐杀掉落(收束无二次派生)+同调位约束(停点替换两路/战斗沉没/节点拒绝)+BonusPickOverlay+Narrator文案族+save v3迁移+冒烟619/0(+23断言)+断点P5往返单测+run_all 15套全绿 2026-10-01 04:30:13 +08:00
DKChan 2301db5540 iter9-numfix-a: L2/L3 数字可读性修复(甲案——数字墨族按板自适应)
- 根因:v3.5 冻结④亮墨三档(#D8ECF0 系)直画只按 L1 dungeon 验收;underdark/deep_underdark
  地板亮白筋纹归一后 p90=0.40/0.66,亮墨对亮斑 CR 1.0-1.9 融字(用户实机截图 2026-09-30 实证)
- 修法:_digit_ink_mode 按归一后地板逐像素分位数选墨族——对 p90 ≥4.5 且对均值 ≥2.0,
  亮族过选亮族否则深墨三档(青墨/赭墨/锈墨色温语义同构);缺盘平色回退态默认深墨
- 实测(引擎口径):dungeon 亮族 4.79/5.80 维持;underdark 深族 5.34/2.41;deep_underdark 深族 5.08/2.42
- 机检面:terrain_tile_sets_test 增三关对比断言(同一归一+选族管线+期望族表)21/21 绿
- 轻闸:冒烟 596/0+ui_input/ui/click/layout 四探针 PASS
2026-10-01 00:43:54 +08:00
DKChan c7646c5489 iter9-T14: 卡⑭ 营地界面视觉终稿(对照方向稿 4-camp.png 重排)——石纹全屏底(浅 dim 透出)+顶栏铭牌(标题+副题)/钥石徽(暗底金文)+三柜台列(属性锻造/道具工坊/奖励格图鉴:头带深棕 122,82,50+米板身+内嵌行板,暗底暖白族→亮板深墨族双色墨制)+底栏关闭钮/操作注记+最近冒险收条带;行结构短格式(名 +N/级/Lv/价签 N 钥石——列宽收敛防溢出,行文=代拍板);信号面/投影契约零变化(buy_requested/closed、open_camp/refresh_camp、_forge_rows 行键——探针依赖面保持);闸=冒烟 596/0+click 问题=0(营地购买真实路径)+doc 三闸零新增+熵增 PASS 2026-09-30 07:27:02 +08:00
DKChan 9ab540ee9a iter9-T13: 卡⑬ 封印旗纹理自产+tex_flag 接线(迭代 8 卡⑤降级债务清偿)——自产 flag_seal.png 32×32(旗杆 2×22+矩形旗面 13×10,封印黑 #000000 纯色,整数像素格;素材不入 git 随批拷主区)+board_view 独立可选件装载(TILE_FLAG_SEAL/load_tex exists 守卫——缺盘=字形「旗」回退原语义,不触发瓦片整批回落)+tex_flag 逐 paint 重置防串格;轻闸=冒烟 596/0+ui_input 十四断言(flag_place 路径过)+shot_probe 问题=0 2026-09-30 07:11:41 +08:00
DKChan 1ecad0b580 iter9-T6: 卡④ B 区舞台(圣经 §6.1 正面目标批 B4)——世界底层暗背景 Color8(62,52,42)+PANEL_BORDER 描边(替换浅石板皮)+顶光柱氛围层(四柱@1280 基准 110/900/1055/1210,暖光 60 段渐窄渐隐,bg<光柱<世界层序)+站桩石板地台落影(椭圆落影 α0.27+板身/描边/顶缘受光线=方向稿取色 150,130,100/90,76,58/196,172,132)+暗底双色墨制随迁(轮次标签/演出区文案/敌名行/轻甲图标切暖白族);轻闸=冒烟 596/0+ui_input 十四断言+fx 全链+click 问题=0+layout 退出 0(中途 SCRIPT ERROR=for 循环 Variant 推断 typed 修复——探针挂死 20 分钟教训:解析错误致 probe 等 never signal) 2026-09-30 06:03:36 +08:00
DKChan f0a77a4a8c iter9-T5: 卡③ ui_kit 对比度与字号(圣经 v3.5 批 B3)——四处不达标修复:C 区属性行显式主墨(1.31:1→≈10:1)/结算明细条摘要+提示暖白(2.63:1→≥5:1)/菜单玩法说明暖白+16px(2.58:1→≈6.8:1)/菜单副标题 WARM_SOFT→WARM(3.54:1→≈6.8:1);字号下限:正文 ≥16 落地(帮助文 13→16/种子标签 15→16/强化行 13→16/明细摘要 14→16/区头 14·15→16,辅助提示 14 维持);暗底双色墨制=触达暗底文字簇显式暖白族(全暗底件扫尾由卡⑤四屏 ≥4.5:1 断言机检兜底);轻闸=冒烟 596/0+ui_input PASS+click 问题=0 2026-09-30 05:18:52 +08:00
DKChan f9965a4ce8 iter9-T4: 卡② 数字承载切换(圣经 v3.5 冻结④批 B2)——数字亮墨三档直画已开格底(UiKit 新增 INK_L_COLD/WARM/GOLD=#D8ECF0/#F0E2C8/#F8E3A8,_digit_ink 切亮族,实测 6.0-6.3:1)+色牌降后备(plate 收窄=雷/「?」维持牌载,数字必垫牌路径退役;深墨三档转后备专用;复杂格底判定随装饰瓦片自产批扩);轻闸=冒烟 596/0+ui_input 十四断言+fx_probe 全链 PASS 2026-09-30 05:10:34 +08:00
DKChan e30f6dcb9a iter9-T3: 卡① 棋盘渲染落码(圣经 v3.5 冻结①批 B1)——E 格高墙 30% 承接(CellUnit 新增 facade_strip/tex_facade+E_FACADE_FRAC 常量,墙顶 center 瓦片顶部区带原亮度直贴+墙脚阴线 1px,方向稿 draw_facade/is_facade_cell 移植)+(b)-(c) 交界无边框(墙格北向 2px 描边瓦片态退役,平色回退保留)+地板归一 L0.10(_normalize_floor_luma 程序归一:8×8 线性域测光+增益钳 [0.6,1.8],方向稿 _v3_darken_floors 同式;南向厚度面/D 投影零触碰);轻闸=冒烟 596/0+ui_input 十四断言+click 问题=0+layout 退出 0(首跑 SCRIPT ERROR=Image.duplicate() Variant 推断,typed 修复) 2026-09-30 05:07:47 +08:00
DKChan 70341bd40f iter8-三轮修改批(用户二轮目检反馈):#1 弹窗 z 序修复=ConfirmDialog.open 自提宿主子级最末(根因:弹窗构建序早于开始覆盖层而开始层组合根尾部才 add=绘制最上,弹窗被整层盖住——用户实机实证「看不见弹窗/离开菜单才显形」,探针 pressed.emit 合成路径不暴露树序遮挡故全绿漏网);#3 结算逐条演出重做=SettlementFxView 新增 play_damage_number(站桩头顶数字浮现上飘渐隐+描边+crit 加大)与 play_status_pulse(Buff/Debuff 色环扩散),_consume_row 挂 _play_settlement_mark 逐条标出(effect 色环→damage 数字打谁标谁→heal 绿字,目标解析失败兜棋盘中心),段内节奏 0.06→0.22s 逐条可感知;fx_probe ④c 逐条标出断言——闸:冒烟 596/0+run_all 15 套+六探针全绿 2026-09-29 23:56:26 +08:00
DKChan 2400dbe49e iter8-二轮修改批(用户一轮目检四裁决实装):A 互斥确认弹窗化=ConfirmDialog 通用实底确认框(开新冒险/取消两钮,按钮换面 3s 机制退役)+main 三态接线+锁面入列;B 结算框/冒险终局实底面板化=BattleEndOverlay 石板皮面板(墨字判定行/GP 行/按钮列),金蜡封改面板头部静态徽记(坠落演出退役——落点被面板遮挡),纹章环/掸灰/旗收回锚点移屏心(fx 计数断言面不变);C 结算伤害数字突出=明细带 damage 行值放大 17px 朱红独立色(#d9402a——数字即信息主角);D1 退出游戏提级一级菜单(开始菜单与设置并行,设置面内退出移除);D2 设置开关换 UiKit toggle 按钮形态(全屏:开/关 文字随态)——click 探针三段同步(弹窗双路断言/退出层级断言/开关查找器换 Button)——闸:冒烟 596/0+run_all 15 套+六探针全绿 0err 2026-09-29 23:29:40 +08:00
DKChan 79427d0f98 iter8-T8 卡⑤ 打磨包:①图例解码=RAP 行(LegendOverlay 构造参数表值注入 rap_refresh_cost——禁字面量)+九徽章解码条目(攻守爆医弱穿魔行金九键)②放弃按钮文案收敛 level-map 4 字上限(基态「放弃」,同失败结算语义移确认态)③判定文案两处措辞统一(phase_text 相位行战斗结束→随 battle_end_text 同词战斗胜利/失败)④封印旗纹理=素材在盘缺位(board/ui 全目录核证无旗件)→降级案维持文字占位+06 债务登记(HUD框架节新条目)——闸:冒烟 596/0+click/input/layout 全绿 2026-09-29 20:19:28 +08:00
DKChan b8e6b27538 iter8-T6 卡⑦ 轮间结算节奏化:演出层排播队列(_on_step_row 入队+_process 泵+段间 0.3s/段内 0.06s 阶梯——核心层零 await 契约零触碰,step_row 消费体原样搬入 _consume_row 排播后逐位一致)+轮切换「第 N 轮」横幅(settlement_fx_view.play_round_banner 驻留 0.6s 淡入消隐——白名单内取值)+轮首分隔行随队排队(带序正确)+减动效双态(开=同帧直落快路+横幅静态化 create_timer 即隐——行呈现不跳过)+flush-on-modal(任何覆盖层开启前排空队列=明细回看/停点面明细恒完整)+fx_probe 轮横幅双态断言④b——闸:冒烟 593/0+fx/click/input 全绿(click 主循环全程排播态实跑)——MC 零扰动=结构性(纯呈现层,逻辑信号消费零改)T10 复拍。时间盒评估(T6 收口切点):T0-T6 单会话落籍远快于估时,T7-T9 余量充足,不触发切迭代 2026-09-29 19:58:25 +08:00
DKChan d599743433 iter8-T2/T3/T4 卡②③④:继续上局按钮(有断点亮起+文本带关卡序号+真实信号路径续玩)+新冒险互斥二次确认(首击换面3s回落二击提交+提交即弃旧断点)+T3 三结局清断点(_settle 统一收口)+最小设置面(SettingsStore 独立存储 user://settings.cfg 三节+SettingsOverlay 音量 master bus 实时/全屏/减动效转正/退出游戏+DS_DEBUG 调试门控+调整板旧开关退役)——探针隔离补全(click/input/layout/ui_probe/ui_tune 五探针 main.save_manager 隔离+首次布尔置位,真实档探针污染事故两起已清〔教训:断点写盘面随 save_manager 引用走,probe 换 meta 不换 save_manager 即漏〕)——闸:冒烟 593/0+五探针全绿+click 断点段问题=0——代拍板:互斥确认文案/设置面排布/确认窗口 3s(追认清单呈报)+设置与本地化 v0.2 随批 2026-09-29 19:25:19 +08:00
DKChan 6673bbba5f fix(t5-hotfix): 奖励节点三选一函数体补落——show_reward_items 在合并时丢失(worktree 内补丁断言中断未写盘+重做轮漏项;探针无路径触达奖励节点 UI 故闸绿实机炸——模拟盲区案底再+1);UiKit.button 单参签名对齐;冒烟复跑绿 2026-09-29 15:01:55 +08:00
DKChan beea5d6b06 fix(merge-t7): 主区合成态三修——grant_ap 对齐相位 enum(审查批3 Phase.ACTIVE)/outline_sides typed Array assign(审查批3 类型收紧)/mutation_mark 默认值伪影归零;冒烟577/0+五探针全绿 2026-09-29 09:25:28 +08:00
DKChan fd39a58aee merge: M-3迭代7魔法道具内容+元进度数值标定 T0-T8全落——AuxItemTable六行+掉落投放(解锁门控空集零投放)+库存四步受理+三选一奖励节点+HUD两步交互+叠加层呈现+工坊封存呈现+换算率复核读数(6/9/1 vs 实测1.7/4.1/0.0 U1呈报);重闸全绿(冒烟577/0+五探针+单测12套+doc三闸熵增零新增+机检11/11+MC剥additive 0/400逐位);出口=T9目检(检查单已交);台账259-263
# Conflicts:
#	game/presentation/views/node_overlay.gd
2026-09-29 08:59:31 +08:00
DKChan 9553d6b182 feat(t5): 奖励节点三选一+工坊解锁门控+封存呈现+node-reward spec 出生
①node_overlay:show_reward_items 三选一(池≤3 全列——当前三件即全列;池空直通=切片期合法空态保留;选择前继续隐藏=强制构筑点语义)+item_chosen 信号+close_reward 收屏
②main:奖励分支接三选一(活行∩解锁集,注册序前 3,呈现侧零 RNG)+_on_reward_item_chosen(入库存来源归因 reward_node→toast→_on_node_continue 兑付确认回选路零自动推进)+_reward_node_choices
③解锁门控链(拍板③甲=解锁进投放池):main _aux_unlocked_set(工坊解锁∩活行;罗盘退役/失义件不入集)→adventure params.aux_unlocked→LevelRunner.set_aux_unlocked→BattleOrchestrator 公有 setter→RewardEconomy.set_aux_unlocked+_rollable_rows aux 行过滤——空集默认零投放=白板/夹具态模拟读数零扰动
④工坊呈现:workshop_status 投影+deferred/retired 状态面;camp 文案=已解锁·能力封存中(失义件)/已退役(罗盘)
⑤node-reward.md spec v1.0 出生(06 条目兑现)
坑一轮:BattleOrchestrator 无公有 reward_economy(E1/E3 封装)——公有 setter 转发;竖线锚四处拼接病自愈
闸:冒烟 577/0+四探针 PASS(click 问题=0)+单测 0 FAIL
2026-09-29 07:43:51 +08:00
DKChan 2f3a87e98f feat(t4): 魔法道具 HUD 面——C 区四槽接线+两步使用交互+叠加层呈现+清空反馈
①hero_info_panel:四槽 gui_input 可点+aux_slot_clicked 信号+set_aux_inventory 投影渲染(空槽虚位/used 暗态/不可用置灰/选中金框/tooltip 全名+语义)
②main:选中态 _aux_use_selection+槽点击(AP 类 target=none 即用/空间类 toggle 选中)+_on_board_action dig 劫持(选中期点格=目标拾取不落挖格;move/flag 不冲突)+_attempt_aux_use(拒绝零消耗 toast 可辨认)+_aux_inventory_projection(字形=名首字;usable 回调接排雷玩法只读面)+use 成功后槽位/叠加层双刷+_on_board_action 行尾槽位重查(授予同步走完)
③叠加层呈现:CellUnit.aux_mark(真视=危险红内缩框)+board_view.set_aux_overlays 投影注入(refresh 消费;预读格=badge_glyph 注入 REWARD_BADGE 字形走 identity_resolver 既有只读面零数据复制;旗格让位不注)
④清空反馈:LevelRunner aux_cleared 快照(payload 已有 T3)→AdventureRunner additive 扩签(big_reward_paid.aux_cleared/summary.aux_cleared_last,_last_aux_cleared 捕获)→main 大奖励屏 toast「上关剩余 N 件魔法道具已随关卡结束清空」
闸:冒烟 577/0+三探针 PASS;T() 拼接病累计八处全自愈(board_view 混行尾归一 LF/adventure_runner _first_script 重复声明去重/两 var 拼接)
2026-09-29 07:21:58 +08:00
DKChan 104cea6461 fix(review-batch3): 类型收紧生产清零137处(P1-2三步+延伸)+autoload class_name(ConfigDb/RngServiceCore)与_init标注(P2-1)+validate_skill_pool_links/ShopTable标注(P2-4)+相位enum外String面(P2-2)+typed-rows探针实证.tres装载转换;smoke缝合20处rows.assign+str(bb)同语义;审计生产双归零(240→103/83→59全测试链),单测7套绿,冒烟576/0同基线 2026-09-29 07:01:29 +08:00
DKChan f5edb65d25 fix(review-batch2): 视图信号可审计性+封装收口——生产24处lambda转命名方法含bind两处(P1-3)+recent_summaries/hero_effects值拷贝出户(P2-3);生产lambda审计归零(83→59全smoke),冒烟576/0同基线 2026-09-29 06:21:32 +08:00
DKChan 442156bfb7 feat(t6): flat_damage 变异格视觉标记——危险红角标+resolver 注入面
①board_cell_unit 增 mutation_mark 程序化角标(flat_damage=左下角危险红三角 0.28 格边,危险红=「开此格有代价」语义位与雷族同源;tex_mutation 纹带槽留给变异纹带六型自产批——代拍板二选一择角标待追认)
②board_view 增 set_variant_mark_resolver 只读回调(同 mask_resolver 注入先例)+_paint_cell 未开格赋值(已开=威胁已兑现标记退位;回调缺位=无标记回退态)
③main 增 _variant_mark_lookup(flat_damage 效应解析,变异数据行动零特判)+接线
④ui_input_probe 扩 case⑭(角标落位+resolver 复位断言,十三→十四断言)
轻闸=冒烟 576/0+三探针 PASS;交叉对拍=master HEAD MC 与 worktree T0 锚 400/400 逐位一致(重锚验证闭合,主区在飞文件全非行为面)
2026-09-29 04:21:26 +08:00
DKChan 6578b284b1 feat(t5): 主角受击+死亡演出——拆两处早退,演出密度与敌方对等
①battle_stage_view.on_step_row_fx hero 早退拆除:受击态+弹道到达拍(0.33s)闪白+打击火花+击杀塌陷(killed 行)——与敌方路径同构同密度;树外守卫即时执行
②main._play_cross_zone_fx hero 早退拆除:敌→主角伤害行 ⚔ 危险红弹道飞向主角站桩;crit 只加重字号不加金(金=收益/胜利语义位,不用于敌方输出——代拍板待追认)
③standee_body flash_hit 增 _flash_count 探针计数;fx_probe 扩第六段=主角受击路由(闪白计数增量+火花)与击杀塌陷断言(BattleStageView 实体级路由测试)
轻闸=冒烟 576/0+三探针 PASS
2026-09-29 04:16:40 +08:00
DKChan 8723d9d826 feat(t4): 命中特效终稿+敌方演出链复核——打击火花六枚+弹道到达拍对齐
①standee_body.play_hit_impact:立绘盒中心六枚短火花放射(程序化色块,确定性方向 i*60°,亮金GOLD_LIT/暖白WARM 交替=物理打击语义不占 危险红=雷/奖励金=收益 位;0.12s 一拍即回收);fx_probe 增 hit_sparks 计数+第六断言段
②弹道到达拍对齐:on_step_row_fx 敌方路径 闪白/火花/击杀塌陷 延迟 0.33s≈弹道飞行(0.16+0.19)——呈现链序=弹道→闪白+火花→血条→灰化;突发多定时器互不干扰(flash 重启/死亡幂等),卡片释放 is_instance_valid 守卫,树外即时执行
③flash_hit 强度时长复核=维持现行(1.6,1.4,1.2)/0.08s+回0.2s——白光可读不糊,±30% 白名单内零调整;④伤害飘字子项代拍板=不做(血条已有「当前/最大」即时数字面,飘字=同一伤害第二呈现触 UI 禁重复展示铁律;审计备注项未立项)
2026-09-29 04:12:42 +08:00
DKChan cabb6b07bf feat(t3): 主角三态切换——portrait 换装 new-normal+attack/hit 入包+挂事件切换+结算回 idle
①48px 档生成器默认补 attack/hit 两档(hero-ref/edit 1x 源→character_hero_attack/hit.png;new-hit.pxo 09-27 已程序导出 hit_1x 在位,U1 手出预案不触发);机检 11/11 过
②ui_kit 增 TEX_HERO_ATTACK/TEX_HERO_HIT;TEX_HERO_PORTRAIT 注记改 normal 态(48px 档换装)
③standee_body 状态机:register_hero_state(组合点注册,缺位不注册=该态保持现纹理)/set_hero_state(短驻 0.35s 自回 idle;未注册态保持)/hero_state_probe;_revive 增态回 idle;set_hero 增死亡残位复活(hp>0——敌侧 set_data 同款)
④battle_stage_view:三态注册+_init;on_step_row_fx 主角攻击行→attack 态/受击行→hit 态(闪白弹道归 T5 拆早退);settle_hero_idle 显式收尾挂 main 两侧 battle_finished/adventure_finished
⑤fx_probe 扩第五段:三态切换+短驻自回+死亡复活断言
轻闸=冒烟 576/0+三探针 PASS(编辑器刷缓存后)
2026-09-29 04:09:13 +08:00
DKChan ac43e1333d feat(t2): 敌种立绘落位——八张真图服役+字形回退退役为纯缺位兜底+站桩纹理非空断言
①八张 character_enemy_<键>.png 服役(T1 产物原位=ui_kit 常量名,worktree 本地不入 git);朝向核证=八敌像素源朝左/正面,flip=false 呈现朝主角——battle_stage_view 旧注记「基准朝右」措辞失真随手修
②standee_body._portrait_glyph 三档体量字形(▂/▆/█)退役,保留 人/✕/敌 纯缺位兜底(C7 回退链保持);相对体量语义由 48px 档统一比例承载;新增 portrait_probe() 探针出口
③ui_probe 扩两断言(只增):敌站桩+主角站桩 portrait_probe().has_tex 全真
轻闸=冒烟 576/0+三探针 PASS(新 png --editor --quit 刷导入缓存后过)
2026-09-29 04:02:59 +08:00
DKChan 6dcd40bce8 feat(ux): T3+T4 视觉终稿落码+转场挂点——GOLD_DONE/底栏墨色/血条深底/Boss 双描边+换层 tint 渐变挂点(UiKit.motion 包装) 2026-09-28 13:56:28 +08:00
DKChan 4ece929315 feat(ux): T2 节点图标组接线——五键量化过复用闸四道+load_tex 守卫接线+字形退役(缺位回退) 2026-09-28 13:51:41 +08:00
DKChan a055722372 feat(ux): T3 全链流程随独立屏——兑付覆盖层本屏域内弹出+出屏分支
_submit_choice 节点类型分支:战斗/Boss=出屏(visible=false 后发射);奖励/恢复/商店=本屏保持激活发射——兑付覆盖层由节点事件在本屏域内弹出(模态栈打开低层自动隐藏高层本屏、关闭自动恢复,零机制改动复用),兑付确认回图即本屏就地刷新(open_choices 幂等,was_visible 判据不重放淡入)。组合根 _on_route_chosen 改视图去留随动:出屏才收栈记录+_exit_level_screen 回战斗屏;放弃/冒险终局强制回战斗屏呈现摘要(T2 已落)。零自动推进纪律零改动。轻闸=冒烟 557/0+五探针 PASS(click_probe 岔路/商店路径含域内弹出全程实测)。
2026-09-28 06:42:39 +08:00
DKChan ae2ca4ffd4 feat(ux): T2 独立屏落地——RouteOverlay 升格 LevelMapScreen+组合根屏级互斥
类/文件改名 route_overlay.gd→level_map_screen.gd(RouteOverlay 退役,uid 随迁);屏底=暗幕 0.6 半透→不透明 BG_ROOT+石纹底噪(TEX_BACKDROP_STONE load_tex 守卫缺位纯色回退,spec Layout 形态升格);open_choices 进入转场 alpha 淡入 200ms(UiKit.motion;就地刷新/模态栈恢复不重放)。
组合根:_battle_root 宿主引用留存+_level_screen_active 状态+_enter/_exit_level_screen 单一出口(进屏隐战斗屏/出屏显战斗屏);_on_choices_presented 走进屏;_on_route_chosen 出屏分支;_on_adventure_finished 强制回战斗屏呈现摘要(放弃入口终局兜底)。_input_locked/模态登记序(节点层与商店层之间)不变——兑付覆盖层域内弹出的遮挡恢复语义由模态栈零改动复用。
探针机械改名 main.route_overlay→main.level_screen(ui_probe 5/ui_click_probe 4/ui_input 5/ui_tune 2 处)。坑⑤再证:新 class_name 后未刷编辑器缓存致四探针 Parse Error 超时——--editor --quit 后全绿。轻闸=冒烟 557/0+五探针 PASS。
2026-09-28 06:40:16 +08:00
DKChan 83c11a13a7 merge: 关卡画面深层节点不可点根修——画布随图自适应+图上命中真实输入回归闸(用户目检 bug 反馈) 2026-09-28 05:06:44 +08:00
DKChan b184f951e7 fix(ux): 关卡画面深层节点不可点根修——画布随图自适应+图上命中真实输入回归闸(用户目检 bug)
- 根因: T4 图上点击把命中搬上 620x240 固定画布,L1 单链层深=节点序(Boss 内容 x=70+6*122=802)深层节点全在 gui_input 命中区外——draw 不裁剪看得见、事件收不到点不中;press_candidate 直调命中函数不经画布矩形,headless 探针全绿盲区(切片表现逻辑层盲区案底再+1)
- 根修: route_overlay 画布随图自适应(level-map.md Layout 既有条款'画布宽随层数高随同层最大节点数'的实装件)——open_choices 先 _fit_canvas 按分层公式求内容包络设 min 尺寸(下限 620x240 小图观感不变),_layout 按内容包络居中;_assign_layers 拆共享件
- 命中坐标改事件自带 position(gui_input 事件坐标=接收控件局部坐标,push_input 同成立)
- 回归闸: ui_input_probe 增 ⑫图上命中真实输入(push_input motion+click 到 route_chosen)⑬画布拟合断言(复刻分层公式独立推导最深内容 x 断言 min 尺寸覆盖)——十一断言→十三断言
- 轻闸: 冒烟 557/0+ui_input_probe 十三断言+ui_click_probe 问题=0
2026-09-28 05:06:38 +08:00
DKChan 9abf5ff448 merge: M-1 迭代 2「样张冻结与表现定稿」loop——样张 v2 机检 16/16 四冻结+框材组 8 件接线+演出密度终稿+棋盘数字终稿+M-1 出口闸检查单
五批次 a08d89c/f9b0765→2d1388b:①T1 样张 v2(机检闸形 A 全过即冻结——新增 A3 Δ≥55/F6 双明度带/F7 DEPTH_PX 同源/A6 观感密度四断言,art-bible v2.13 落四冻结+UiKit 小人蓝同步 #2E86DE+图例旗色封印黑漏网修)②T2 框材组 8 件(♻ Kenney/OGA 全 CC0 量化改色入包,UiKit 单点工厂+五视图接线,✦ 背景横幅列缺料)③T3 演出四项(死亡碎裂/胜利纹章/失败掸灰/意图三档+结算光带缘线)+fx_probe 新探针④T4 数字形制冻结值落码(三档墨色温/字号 ≥18 公式/色牌 0.60·0.62)⑤T5 M-1 出口闸检查单(design/qa/m1-exit-gate-checklist-2026-09-28.md——真人目检八项+✦ 缺料清单)+06 两已解决条目移除+roadmap 挂起清单对齐。
验证:样张机检 16/16+冒烟 557/0(基线持平)+五探针(ui_input/ui_probe/ui_click/ui_tune/fx 新增)全 PASS+doc 三闸对基线零新增(lint 8=8/term 215=215/死链 0)+熵增闸 PASS。
2026-09-28 04:58:58 +08:00
DKChan 2d1388b466 feat(art): T4 棋盘数字呈现终稿批——数字形制冻结值落码
①数字墨三档色温:UiKit 新增 INK_COLD #132E36/INK_OCHRE #3C250C/INK_RUST #4A1E14,board_view._digit_ink(d) 按 1-3/4-5/6-8 分档(冷=稀疏暖=密集氛围档,字形为唯一数值载体——§4.1 禁八色分色不变);②字号下限 14→18+ceil 口径=max(18, ceil(格边×0.5))(§7.4 冻结公式);③色牌 0.66/0.68→0.60/0.62 格边=样张 v2 冻结值(留白 ≥2px),旗条注释旗朱→封印黑随文。
§1.4 验收 1 硬指标不放松(牌 L≥0.70/墨 L≤0.027/WCAG≥4.5:1 样张 A3 机检在闸)。ui_tune_probe 回归 PASS。轻闸=冒烟 557/0+五探针全 PASS(修复本批一次编辑缩进事故——SCRIPT ERROR 归零后复跑)。
2026-09-28 04:52:02 +08:00
DKChan d458e393de feat(art): T3 演出密度终稿批——演出四项落码+fx_probe 新探针
死亡碎裂(standee mark_dead 增五碎块抛物线弹飞 0.45s——§4.6.4 灰化+碎裂禁瞬间消失+§8.4 冻结值);意图三档动画终稿(§4.6.4:档①普通攻击零表示不变/档②特殊准备=弹入+二次弹跳高举/档③重击蓄力=缓推 1.22+定格微顿+回落——三档运动签名互异灰度可辨);胜利纹章(battle_end open_victory 蜡封落定后十碎砖自四周拼纹章环,驻留至 close——§2.4);失败掸灰(open_defeat 八尘絮飘落——§2.5)+既有旗光收回挂探针;结算轮光带终稿(加 2px 亮金前导缘线——§2.2 逐行横扫方向可读)。全部程序化 tween 零新帧资产,确定性散布禁全局随机,时长全走 UiKit.motion 减动效包装。
新探针 smoke/fx_probe.tscn+gd:死亡碎裂5/意图三档+零表示/纹章10/掸灰8+旗光8/光带+缘线 五断言全 PASS。
连带:图例旗条目名回退『旗』(click_probe 图例基线精确匹配;T1 曾改旗(封印印记)——封印语义移描述列,色 #000000 保留)。轻闸=冒烟 557/0+五探针(ui_input/ui_probe/click/tune/fx)全 PASS。
2026-09-28 04:34:51 +08:00
DKChan 0ad16747fc feat(ui): T2 框材组 8 件换皮接线批(样张 v2 冻结色板量化)——UiKit 单点工厂+五视图接线
♻ 复用件审阅+量化改色(tools/quantize_ui_skin.py,全 CC0,闸①色板 token 渐变带重映射/闸②token 天然合规/闸③图标四形互异/闸④授权干净):panel_stone/button_stone 两态/backdrop_stone/border_stone/营地图标四件(钥石金+柜台暖白)九件入 game/assets/art/ui/(PNG 不入 git,缺位 load_tex null 回退)。
接线=UiKit 单点:panel_skinned(B 区舞台 tint PANEL_STAGE/C 区主面板/图例面板+墨字随行改色 §7.2)+_apply_button_skin(全站按钮两态皮+墨字,UiKit.button 消费点零改)+frame_skinned(营地仪式石框容器)+icon_rect(营地钥石行/三柜台头图标,缺位纯文本回退)+开始界面石纹底噪底层(ui_assembler,z 序 dim 之上内容之下)。数据框/暗卡/结算回看保持素面或暗底(§7.1 数据素面纪律)。
✦ B 区背景横幅不生图列缺料清单(归 T5 交付)。8 件=面板九宫格/按钮常态/按钮按压/石纹底噪/仪式石框/钥石图标/柜台图标组/B 区横幅(缺料)。轻闸=冒烟 557/0+四探针 PASS(带素材模式)+编辑器导入 9 件零报错。
2026-09-28 04:10:49 +08:00
DKChan f9b0765412 feat(art): T1 样张 v2 冻结批(机检闸形 A)——16/16 全绿触发四冻结
样张 v2 重出:D 投影档+整板悬崖(board_world 同款 DEPTH_PX=8 同源)+微光泛光增强+物件纹样增至四类型+S3 角嵌漏网清除;产物命名带 v2(v1 覆盖欠账清偿),报告迁 design/research/sample-v2-机检报告-2026-09-28.md。机检扩展:现行 13 条+A3 图底分离 40→55+F6 顶面立面双明度带≥18(南临空墙格实测均 106.3)+F7 DEPTH_PX 同源断言+A6 观感密度梯度均值≥4.70(v1 同口径实测 4.09×1.15,口径注记=低频双峰被墙地结构锁死、细节层次住高频)。
四冻结:①砖面=方案甲+D 投影参数+悬崖(圣经 §3.2)②色板=小人蓝 #2E86DE 定稿(UiKit 同步 #2E6E8E→#2E86DE+图例 hex)+接触带微光 #D6ECFF+类型微光五组定稿(§4.1/§4.2/§4.6.3)③动画=§8.4 帧数档冻结(死亡=灰化+程序化碎块弹飞 5 块 0.45s)④数字形制=色牌形制定稿。
圣经 v2.13(v2.9 过期头注顺手修)+图例旗色封印黑漏网修正(#C63D22→#000000)。轻闸=冒烟 557/0+ui_input_probe/ui_probe PASS。
2026-09-28 03:59:42 +08:00
DKChan aa18eb9d96 merge: M-1 迭代 1「测试兜底与表现先行」loop——六卡落籍(T1 单元测试九套件/T2 高墙 D 投影/T3 Fusion Pixel 字体/T4 关卡画面三拍板/T5 胜利结算 GP/T6 瓦片换色两套) 2026-09-28 03:46:32 +08:00
DKChan f2642a87a6 feat(art): T6 underdark/deep_underdark 瓦片换色——程序换色产 L2/L3 两套入包+机检(台账164 换色遗留清偿)
- tools/recolor_terrain_tiles.py: 槽位家族保持重映射(源唯一色→最近 dungeon 锚定家族→家族内亮度秩序线性映射目标色表);目标锚=归档生成器 PALETTES(圣经 §4.3 三关方向,三关换色证明条在案);确定性零随机;源=盘上 v9.3 定稿 21 枚(活件未动)
- 产物: game/assets/art/board/terrain_*_underdark|deep_underdark.png 各 21 枚(素材不入 git 与 dungeon 套一致,.import 编辑器刷)
- BoardView: 瓦片路径按 board_type 后缀参数化(词表名单单点 TILE_WALL_NAMES);rebuild 按板图型切换(_tiles_board_type 守卫零重载);套缺位→整批回落 dungeon(禁同板混渲染),dungeon 亦缺位→程序化平色原回退
- 机检: terrain_tile_sets_test 入 manifest(第 9 套件)——词表 3 型×套完整性(16 墙+5 地面)+墙顶色相域抽检(dungeon 0.089/underdark 0.625/deep 0.639 各落圣经方向带)+图底分离×3+deep 更暗方向;素材工作区缺位=SKIP 不红(不入 git 纪律)
- 轻闸: 冒烟 557/0+ui_input_probe(缺位回退断言保持)+ui_click_probe+9 套件全绿
2026-09-28 03:42:15 +08:00
DKChan 16f9b5d276 feat(ux): T5 战斗胜利结算 GP 接线——总量+增量落胜利总结结算(OQ14 口径)
- BattleEndOverlay 新增战利品行(open_victory 可选参 gp_summary;失败侧恒不呈现——GP 总量+增量归胜利总结结算)
- main 两个胜利分支(level_end/standalone_end)装配'战利品 GP +增量 · 合计总量':增量=battle_finished 载荷 gp_dropped,总量=runner.gp 现值(LevelRunner 入账连接先于组合根 handler——读数即战后总量)
- 纯呈现接线,账本语义零改动;账本入账/清零路径零触碰
- 轻闸:冒烟 557/0+ui_probe+ui_click_probe(全冒险含胜利终局)+ui_input_probe 全绿
2026-09-28 03:28:13 +08:00
DKChan b07d11fc18 feat(ux): T4 关卡画面实装——level-map 三拍板落地+停点标题+GP 徽章+图上命中探针改造
- 三停点标题定稿(布局决策1):入口='出发——选择首个节点'/单链='继续前进'/岔路='选择下一节点'——台账143「继续前进(战斗房)」措辞矛盾清偿
- 图上点击选路唯一通道(布局决策2):候选按钮整列退役;悬停预承诺=亮金描边加粗4px+通道增亮+指针;命中=布局公式矩形+6px 容差,非候选格不响应
- press_candidate 探针面改造:候选序号→节点中心坐标→同一命中检测→提交(探针走真实命中路径);ui_probe/ui_click_probe 选路段注记同步
- 放弃二次确认(布局决策3):首击转确认态(文案'再点一次确认放弃——不可逆'+危险红脉冲约3秒超时回落/减动效静态),二击提交 abandon_requested;单击不提交=ui_probe 战斗中按下被拒语义保持
- 顶栏:关卡名(level_row.display_name)+GP 常驻徽章(◈+runner.gp,直角细线数据框);底栏状态组(HP 当前/上限+迷你血条/攻击·AC 有效值+加成角标/本关加成三段零加成隐藏)——open_choices 命令式刷新纪律
- 画布字形走 get_theme_default_font(随包字体);旧按钮路径 grep 收净零死引用
- 轻闸:冒烟 557/0+四探针全绿(click_probe 全冒险段经新命中路径含岔路交替)
2026-09-28 03:23:16 +08:00
DKChan a0ed48fa88 feat(ui): T3 CJK 字体随包落码——Fusion Pixel OFL zh_hans 入包接线(2026-09-27 用户拍板)
- 资产: game/assets/fonts/ui_font_fusion_pixel_zh_hans.ttf + OFL-fusion-pixel.txt 授权随包(授权干净定案);命名遵 art-bible §8.3 snake_case 域前缀
- project.godot gui/theme/custom_font=全 Control 默认主题字体单点
- SubViewport 两世界不继承 Control 主题: ui_assembler 装配点经 UiKit.load_font 守卫装载注入 set_world_font(C6 挂点链首次接线,缺位=null 回退引擎字体不炸)
- 单元断言: tests/unit/presentation/ui_font_asset_test.gd(装载非空/中文字形 has_char/采样宽度>0)入 run_all manifest(8 套件)
- 轻闸: 冒烟 557/0+ui_probe(hp='攻击 2 ' 中文渲染断言不减)+ui_input_probe+ui_click_probe 全绿
2026-09-28 03:13:54 +08:00
DKChan 7c9320b98e feat(art): T2 高墙感 D 投影档落码——南立面双段暗带+地面投影(2026-09-27 用户挑档)
- CellUnit 新件:facade_south(口沿高光 2px+双段暗带 0.16/0.25 格边,自底边坐标推导)+proj_band(北缘三段渐隐 0.28/0.16/0.06)
- 参数出处:研究件 64px 拼版逐像素实测(高光 196,172,132/立面罩 α0.60·0.82/投影贴墙 α0.28),非蒙数
- BoardView paint:墙格南邻地面→立面+南缘 2px 描边让位防叠黑;地面格北邻墙→投影带 WALL_PROJECTION_FRAC=0.22
- 常量落渲染层:带宽比在 BoardView(WALL_PROJECTION_FRAC),色/段参数在 CellUnit(绘制侧单点)
- 素材缺位程序化回退同样服役(结构归程序);叠层序不变(底<立面/投影<微光<数字牌<旗<焦点高亮)
- 轻闸:冒烟 557/0+ui_input_probe 十一断言+ui_click_probe 问题=0(瓦片模式与回退模式双过)
2026-09-28 03:04:55 +08:00
DKChan e440360ea5 feat(art): 封印黑批(用户拍板 2026-09-28)——封印色 封印紫 #7C3AA8→封印黑 #000000(紫与微光蓝族色相冲突,黑无色相天然合规):UiKit.SEAL_PURPLE→SEAL_BLACK+board_view/board_fx_view 换色+胜利彩带紫位改亮金(紫赤 Boss 独占不入装饰)+样张脚本同步(旗面/图例/UIKIT 键)+字体素材路径随迁目录收敛(artwork/ui-reuse);文档七文件现行规则改封印黑(圣经 §4.1 条目重写+v2.11 行/character-design/comfyui/远程单 purple→black 十六进制重锁/清单/battle.md),历史注记与 v2.10 行按 ADR 纪律留痕不改;冒烟 557/0+ui_probe/ui_input_probe PASS+样张机检 12/12+doc 三闸零新增 2026-09-28 02:57:26 +08:00
DKChan 20c131c1a7 feat(art): seal purple batch -- flag color C63D22 -> 7C3AA8 (hue 267, ban-band safe); code 8-way split (seal items -> purple, attack/warn reds -> danger family, boss border -> boss purple) + docs 5 files + sample script sync + ledger 185 2026-09-27 02:12:12 +08:00