林知微把三個候選出口的概率投上戰術屏,沒有一個超過百分之三十四。
東口百分之三十四,南口百分之三十三,西口百分之三十三。
許燃看了半天:「這一點差距值得單獨寫嗎?」
「值得。東口多出的百分之一來自公開站位修正,不是系統偏好。」
「那你覺得折光會提前壓哪邊?」
「這是你要驗證的問題。」
「我問你的判斷。」
「我沒有足夠證據。」
許燃靠在椅背上,沒有滿意,也沒有繼續逼她給答案。
林知微把概率來源展開。第一層是基礎種子的公開候選表,三個出口各占三分之一;第二層是當前陣容能夠改變的地圖權重,曜石在東側多保留一枚可交互設施,因此東口增加百分之一;第三層原本應當寫實時行為修正,但那部分對賽前戰術不可見,她把整欄標成「未知」,沒有用過去項目中的經驗補數。
「所以這不是系統最終概率。」許燃說。
「不是。是我們在合法信息里能得到的概率。」
「最終概率可能差很多?」
「可能。沒有接口,不能寫多少。」
她在表格右上角加上數據截止時刻和地圖版本。若下一次公開熱修改變設施權重,這組三十四、三十三、三十三就必須作廢,不能因為已經寫進戰術屏而繼續使用。
顧沉舟看完來源欄,只問:「未知項會不會讓測試失效?」
「不會。測試的不是出口是否真等概率,是曜石給出的三條行為證據能否等量。真實概率屬於對手可能擁有的其他依據,正是我們不提前假定的部分。」
林知微能告訴他的只有公開層。基礎種子給出三個出口候選,雙方站位和剩餘資源會在階段切換前修正權重,但最終結果直到狀態欄公布才對選手可見。她見過更深的參數界面,卻不能把舊項目經驗偽裝成這場比賽的證據。
更重要的是,即使她直接說折光可能依賴某種預測,場上的問題也不會變簡單。曜石不能靠猜中對方的信息來源贏下比賽,只能設計一套無論對方是否提前知道,都不至於先輸掉的方案。
「先定義成功。」林知微說,「不是讓折光猜錯出口。」
許燃抬眼:「那是什麼?」
「讓他們無法根據曜石公開行為,判斷哪條是我們真正要走的路線。折光如果仍然壓中,只能說明他們使用了未列入測試的依據。壓不中,曜石照正常戰術執行。」
顧沉舟問:「如果他們三條都不壓?」
「測試沒有結果,比賽繼續。不能為了逼答案主動送掉資源。」
她在成功條件下面寫了三項失敗邊界:真實路線至少保留一層基礎保護;秦越在任何出口都有可撤退通道;許燃製造假槍線的彈藥消耗不得影響第一輪正式集火。
沒有這三項,等量證據只是把隊伍平均削弱。
測試表又分成三欄。可控制變量是支援鏈長度、火力暴露和前排初始站位;觀察項是折光第一名轉向者、第一條預瞄線與資源交接方向;不能控制的是出口真實權重、對手臨場口令和弧核未公開修正。
許燃指著最後一欄:「寫這麼多不能控制,最後是不是任何結果都能解釋?」
「所以賽前先鎖解釋。」林知微說,「折光連續壓中,不直接記為拿到答案,只記為三項公開變量不足;折光沒有壓中,也不記為他們過去作弊,只記為當前方案削弱了預瞄收益。」
「沒有最痛快的那一格。」
「有。比賽獲勝。」
唐梨把剛建的「許燃需要」一欄提前寫了一個勾。
唐梨先算資源。支援電容只能完整轉移一次,淨化覆蓋也不能同時落在三路。她提出不交實體資源,只在三個出口依次建立相同長度的支援鏈,再在最後一秒將真正電容交給撤出公開視野的人。
「鏈路光效一樣,實際保護不一樣。」秦越說。
「對方看得到光效,看不到我最後一秒在靜默區里把電容給誰。」唐梨回答,「代價是最後交接很趕。超過零點六秒,真線保護到不了。」
她沒有說自己一定能做到,而是把失敗閾值報在方案前面。
許燃負責火力。他給三個出口各安排一條預瞄線,射擊時間、彈藥價值和暴露身位相同。若他知道真線,手腕的第一段移動仍可能泄露偏好,因此真實出口由周硯在三條槍線全部完成後決定。
顧沉舟只封出口外的公共回援路,不參與選線。他問:「我的牆落在哪邊,會成為第四項證據。」
「所以牆要晚於選擇。」林知微說,「出口公布以後再落。你少零點四秒先手,換測試乾淨。」
「失敗代價是折光先過第一道窄口。」
「秦越能不能補?」
秦越在地圖上量了一遍距離:「能補一次,第二輪不行。」
方案只適合第一次候選出口,不能當成整場答案。
林知微把限制寫在最上面。對手看到一次以後會調整,第二次再用同樣結構,三條等量證據本身就會成為「曜石正在做測試」的證據。
模擬開始前,她將出口選擇交給一隻離線隨機盒。盒子只在周硯確認三項公開行為都完成後亮燈,許燃看不見結果,顧沉舟也拿不到預覽。林知微自己只負責記錄,不參與按鍵。
第一輪,許燃的視線在南口多停了零點二秒。
「重來。」他自己說。
「原因?」周硯問。
「我猜你們會選南,槍線先過去了。」
「實際出口是東。」林知微公布。
許燃猜錯,卻仍然暴露了自己猜南。他把三條槍線重新按時間拆開,不讓最順手的第一槍總落在自己認為可能性最高的位置。
林知微把他的滑鼠軌跡隱藏,只給全隊看角色畫面。即使沒有輸入曲線,許燃轉向南口前也少做了一次微調。火力位本人感覺不到,旁觀者卻會把更流暢的那條路線視作真實意圖。
「槍線一樣還不夠。」許燃說。
「對。準備動作也要一樣。」
他把三個出口的起手路徑改成相同弧度,寧可每一邊多轉半個角度,也不給最熟悉的路線省操作。多出來的動作耗時零點一七秒,仍在彈藥與撤退閾值內。
林知微沒有替他設計滑鼠路徑。她只把差異顯示出來,由火力位自己決定怎麼消除。分析師若把所有動作都寫成固定腳本,折光下一輪需要讀的就不是許燃偏好,而是腳本本身。
第二輪,三條火力線間隔一致。唐梨的支援鏈也依次亮過,秦越在中央等候,不向任何一邊提前轉身。
隨機盒給出西口。
許燃在選擇公布前猜的是東。
出口點亮後,顧沉舟晚零點四秒落牆,折光模擬組已經越過第一道窄口。秦越按預案補位,承受一輪控制後退回保護範圍;唐梨的真實電容在零點五四秒完成交接,沒有超過閾值。
隊伍順利進入真線,假線也沒有留下無法解釋的資源空白。
回放里仍有一處不對稱。唐梨在西口亮支援鏈時,人物朝出口內側偏了半步;東、南兩路只擦過邊緣。她解釋自己不是提前知道出口,而是西口地形較窄,正常走位自然靠內。
「對手也會這樣解釋。」顧沉舟說。
「所以不能強行拉成完全一樣。」唐梨回答,「我如果三路都貼同一坐標,西口反而會顯得刻意。等量不是坐標相同,是每條行為都有正常理由。」
林知微保留三條自然路徑,只把它們換算成對手能看見的支援覆蓋時間。三路相差不超過零點零九秒,比公開視頻的幀間誤差還小。
「第二輪成功?」唐梨問。
林知微搖頭:「只能證明我們能執行。模擬對手知道方案,不能判斷折光會讀哪項證據。」
「你這個崗位很擅長不給成就感。」許燃說。
「成就感不在測試指標里。」
唐梨在一旁給表格增加一列,標題寫「許燃需要」。林知微看見了,沒有刪。那一列目前是空的,不影響結果。
第三輪由韓岑臨時調整模擬組。他只告訴對面「根據公開行為選最可能出口」,不說明曜石具體方案。模擬組可以追許燃槍線,可以看唐梨支援鏈,也可以根據秦越站位判斷。
三路行為完成後,模擬組兩人提前轉向南口。
許燃也猜南。
隨機盒亮起東口。
雙方都錯了。
曜石仍按東口執行。顧沉舟封回援,秦越補窄口,唐梨在靜默區交出電容。模擬組發現錯誤後立刻轉線,沒有按訓練腳本繼續被騙;他們用最短路線回追,在上傳開始前重新形成五打五。
假動作沒有白送曜石一分,只換來一點六秒站位差。那一點六秒必須由正常執行放大,才會變成優勢。
韓岑把第三輪錄像剪掉出口公布後的部分,只留選擇前五秒,隨機交給秦越和兩名沒有參與方案的替補訓練員判斷真線。三個人共看九段打亂順序的片段,只猜中三次,恰好等於隨便選一個出口。
樣本仍然太少,不能證明三路線永久不可區分。至少在第一次觀看時,沒有哪一項公開行為讓內部觀察者穩定認出答案。
林知微把結果寫成:公開行為無法穩定指向真線;方案不依賴預測者猜錯;真實路線資源比常規方案少一層基礎保護;首次使用可執行。
她沒有寫「能夠識別折光作弊」。
許燃看著三輪結果,忽然問:「如果折光每次都選中,我們能證明什麼?」
「在這場比賽里,只能證明他們的判斷依據沒有被我們的三項變量消除。」
「不能證明提前拿到出口。」
「不能。還可能有我們沒控制的公開變量,比如你的第一段轉身、周硯口令前的站位,或者顧沉舟封路習慣。」
「那為什麼還做?」
「因為比賽不需要一次證明全部原因。先讓他們最常用的三項判斷失效,曜石就有正常贏法;若留下穩定現象,賽後再擴大測試。」
許燃把自己的三次預判寫進記錄:南、東、南。實際出口依次是東、西、東,三次全錯。
他的個人命中率是零。
林知微原以為他會要求再做一輪。許燃確實在意這種數字,哪怕它不進入公開統計。他卻沒有重開隨機盒,只逐幀檢查三條假槍線是否等長、等亮、等消耗。
第三輪的西口彈道比另兩條短一個身位。他重新調整站點,把自己放到更容易被模擬組命中的位置,換三條槍線完全一致。
「這樣會少一個安全掩體。」顧沉舟說。
「真線也少,才一樣。」
「你不需要讓自己三條都更差。」
「需要。不然對面看見最安全那條,就知道我希望它是真的。」
許燃確認修改,關閉個人命中欄。
「方案可以用了。」他說。
林知微問:「不再猜一次?」
「我要贏的是折光,不是隨機盒。」
三次猜錯沒有給出折光的信息來源,卻證明許燃願意執行一套不要求自己猜中的方案。