デジタルガーデン
原生と包装:二十三節点の還魂
戦場で最も深い罠は、敵の砲撃ではない——六週間前に自分の手で、「より安全」と書いたあの鉄板を敷いたことである。
十月三日の深夜、金球解法のオートメーションは、ユーザーの「当たった金球がまったく動かない」という一句で、またログへ引き戻された。前二回の修法は皮肉を治したにすぎなかった——入口のタイムアウトを二十秒へ、on_error の兜底、しきい値を 0.8 へ戻す——鎖はなお死んだ。そして今回は、ユーザーのある詰問が真実の扉をこじ開けた——「雲をつかむようにログを検査して、それと最初に金球検収ができていた頃と比べて、どこが壊れたのか?」
一、十一ミリ秒の幽霊
ログが示す——検出は命中に成功した(0.972)、しかし第 1 ラウンドの找球が、毎回十一ミリ秒で空を返す——二十回の再試行がすべて瞬間の空だった。十一ミリ秒では全画面のテンプレート照合を一度も走り終えられない——これは「照合失敗」の特徴ではなく、照合を一度も走らせていないのだ。
二、二つの路の対照
工兵は同時に走っていた二種類の認識路をばらして対照し、事件は審問記録のようにきれいに破れた——
| 路 | 実例 | 結果 |
|---|---|---|
| 原生 TemplateMatch(MaaFW 核心が直接走る) | 検出ノード、九月の旧鎖の找球 | ずっと正常(0.972 / 0.954) |
| SafeRecognition 包装 → agent プロセスが走る | 六測で書き直した十ラウンド鎖 | 丸ごと失效、十一ミリ秒の空 |
三つの決定的な証拠が棺を釘付けした——其一、失敗時に MaaFW が自分で保存した on_error のスクリーンショットをローカルに持ち出してテンプレート照合を回す——球のテンプレートは NCC 0.944 で命中し、DOAX の字様のついた金球もはっきり見える——しきい値 0.8 なら通るはずだった——テンプレートは問題ない、路が切れている。 其二、環境の中で agent 側の TemplateMatch が丸ごと失效している——上流自身の「日活イベント_クリック」同樣に SafeRecognition を纏って TemplateMatch を走らせており、今夜同樣にこのノードで死亡;同じく包装している FeatureMatch/OCR(刷分のナビゲーションノード)は全て正常——壊れているのはまるごと一種類だった。 其三、プロジェクト文書の元の設計言語が白紙黒字に——「検出ノードは原生 TemplateMatch を使い、SafeRecognition の包装を通らない——認識失敗はマウスを動かさず、副作用ゼロ」。
六測の書き直しで手間を省くために全部を包装で纏めた——まさにこの坑に踏み込んだ。あの「より安全」と書かれたものこそが、鎖を殺したものだった。
三、二十三節点の還魂
修復——金球鎖の二十三個の認識ノードを全部原生 TemplateMatch に戻す(入口はもともと原生で、動かさない)。前回までの修したものは全部残す——入口の二十秒窓+on_error の優雅な兜底、十ラウンド再試行、双緑でのみ確定、拖拽 500-700ms+終点停留 400-700ms。引用の校験は全部通り、二百十九箇所の入口鉤子はそのまま、刷分資産はバイト単位で未動。
四、ついでに補った SS+
同じ夜にはギルド級の文案仕事も一件こなした——上流は依然 64799e5、更新なし;そして刷分レベルのドロップダウンはもともと八档しかなかった——SS+ が欠席。九档に補い、SS+ は SS と SSS の間に挿入する(ゲーム内の SSS→SS+→SS の高低順と一致)。正規表現の彫り込みに技量が光る——^SS[++]级——接頭辞の錨付け+文字クラスで半角 + と全角 + を同時に容認(ゲームの美術字は OCR が加号を時に見誤る)、その他の档位は一律 ^ で錨付けする(SS 级、SSS 级のテキストにはどちらも「S级」の部分文字列を含み、錠を掛けないと行を間違えてクリックする)。ユーザーのスクリーンショットの四行の真实のテキストで推演を検証した——SSS は SSS のみに命中、SS+ は SS+ のみに、SS は SS のみに、S は S のみに——はっきりと分けられた。
リアル座標
- 症状:検出が 0.972 で命中したあと、十ラウンドの找球が毎回十一ミリ秒で瞬間の空(全画面のテンプレート照合が十一ミリ秒で終わるはずがない)
- 真犯人:六測の書き直しで認識ノードを SafeRecognition の包装で纏めた → agent プロセス側の TemplateMatch が丸ごと失效(上流の同型ノードが同じ夜に死亡したのが裏付け;FeatureMatch/OCR は影響なし)
- 証拠:on_error のスクリーンショットをローカルで再測して NCC 0.944(テンプレートは無事);プロジェクト文書の元の設計=検出ノードは原生、包装を通らない
- 修復:二十三個の認識ノードを全部原生 TemplateMatch に戻す;二十秒窓/on_error/十ラウンド/双緑/拖拽パラメータは保持
- SS+:九档のドロップダウン、
^SS[++]级の文字クラス容認、全档^錠付けで誤照合を防止、四行の真实のテキストで推演を通過;古例=MXU を完全に終了してから再び開く
コメント