更新 2.65
2026/6/10
v2.65.0BETA
Seymour
PC/玩家成長於 Spira 數據圖鑑(read-only、`proved-candidate`、byte-grounded、工作線/獨立)
- 將 REAL 來源的 PC 成長/數值插入提供者:新的
SpiraDataAtlasDetailKind.PlayerGrowthStat+ value-guarded 存取器SpiraDataAtlasCatalog.TryGetPlayerGrowthStat(source, characterIndex, field, currentRawValue)。來源 =ply_save.bin(基礎/當前數值)+ply_rom.bin(成長 ROM:AP-requirement 曲線ApReq A/B/C/Max+ per-stat auto-growth 係數*CoefA/B),SAME 表格呈現PlayerGrowthEditor編輯(解析器PlayerKernel_File、RT0-proved 由--player-rt0)。20 個插槽(0–6 PC,7 來賓=Seymour,8–17 召喚獸,18–19 未對應)來自一個 byte-grounded 編譯表格(FfxLib/SpiraDataAtlas/PlayerGrowthData.cs,由tools/ffxdataparser_bridge/build_player_growth_index.ps1 -EmitCSharp從.bin檔案產生),因此它們存在於 ANY 構建 WITHOUTwork/(不同於PcAeonFineStat,它依賴於work/pc_save_stats_catalog.csv且僅為快照)。標籤在執行時透過Character_Enum解析(單一事實來源)。誠實說明(non-obvious): stat-growth 係數是 Aeon-only — PC/來賓插槽帶有 ZERO 係數(主要角色透過幻光盤成長數值);在此 PC 中唯一的 ROM 成長控制是 AP-requirement 曲線。這是來自 DIFFERENT 的 BRASKA 的一個sum_grow.bin軸(auto-level ≠ 自定義配方)。REGION-SPECIFIC:ply_save/ply_rom是 NOT locale-invariant(new_uspc數據部分不同於 jppc/inpc;編譯表格 =new_uspc,編輯器載入的區域)。in-game AP-per-level / per-coefficient 獲得公式是RT2-pending(字節/欄位已證實,執行時算術未反轉)。 Value-guard = 相同 value-space 編輯器編輯 → 編輯該欄位(原始不匹配),或未知的插槽/來源/欄位 → 存取器false→ 徽章隱藏(鏡射自 Aeon/商店/Mix)。閘門--spiraatlas-rt021296 → 21316(+20;全部唯一) + 18 個新斷言 (計數 20/8/10/2;PC 係數為零;Aeon 係數 non-zero;區域 uspc;查找 Tidus BaseHp 520 / ply_rom AP 最大值 22000 / Valefor HpCoef 6;value-guard9999隱藏;out-of-range 插槽/來源/欄位缺失;網域搜尋;BIBLE 網域 player-growth)。Read-only:無寫入器/UI/執行時/SIN;不會觸及WriteSave/WriteRom、PlayerGrowthEditorUI、ANIMA 的Common引擎(僅消耗),或 BRASKA/AURON/JECHT/RIKKU/WAKKA/VALEFOR/AURORA/SIN。建置 0 錯誤 / 361 警告;--player-rt0+--spiraatlas-rt0+--aicmdmeta-rt0PASS。文件:docs/ai/ATLAS_TIDUS_PC_GROWTH_PROVIDER_RESULT_2026-06-10.md+ 偵察docs/ai/ATLAS_TIDUS_PC_GROWTH_SCOUT_RESULT_2026-06-10.md
v2.64.3
v2.65.1BETA
Seymour
在 PlayerGrowthEditor 中的 Atlas 證據徽章 + 誠實 Sphere None/被動標籤 (read-only, value-guarded, hide-on-edit)
- Atlas UI 掃描. (1) PlayerGrowthEditor: 在「成長曲線」卡片 (
<common:AtlasEvidenceBadgeStrip>) 中的新 ply_rom.bin, 使用 already-built 存取器SpiraDataAtlasCatalog.TryGetPlayerGrowthStat(source, characterIndex, field, currentRawValue)(v2.65.0, TIDUS)。在AtlasEvidenceInfo? SelectedCharacterEvidence中的新PlayerGrowthEditor_DataModel,在插槽變更時以及在CharacterRowChanged(編輯)中重新計算 → hide-on-edit: 徽章錨定在跨越兩個檔案/卡片的 3 個 gate-proven 成長值上 (ply_save基礎 HP +ply_romAP 最大值 + HP 係數 A — 相同的查找--spiraatlas-rt0證明:520 / 22000 / 6);如果任何錨點偏離 byte-grounded 語料庫,則條帶 self-hides(與 Mixv2.64.1/Aeonv2.64.3徽章相同的錨定深度)。 (2) Sphere 標籤 (誠實,partial):sphere.bin ActionValue=0x0000現在顯示為 "None / 被動",而RangeValue=0x00顯示為 "None",取代了「Unknown」—0x00是第三個合法的語料庫值(約 40% 的 Sphere 沒有 on-touch 效果,Jarvis-AURON 偵察),並非未知;一個「None」選項已加入下拉選單中,並修正了後備標籤。 (3)AiBibleWhereAppears.For: read-onlyplayer-growth和mix情況(誠實的「出現位置」文字,無 runtime-effect 提升;sphere-grid-node已存在)。PATCH (REUSE 現有功能:UI 使用 already-built 存取器 + ANIMA 的Common引擎 + 標籤潤飾;直接先例:Mixv2.64.1/Aeonv2.64.3/Shopv2.61.2徽章為 PATCH; tie-breaker 懷疑→PATCH). 沒有新的寫入器:SphereGridExplorer 徽章已出貨(v2.60.1);player-growth 寫入器/儲存路徑與球體拓撲 保持不變。不觸碰提供者/閘道(--spiraatlas-rt0完好)、ANIMA'sCommon引擎(僅消耗)、執行期/Aurora/native-menu/SIN、或 TIDUS/BRASKA/JECHT/RIKKU/WAKKA/VALEFOR/AURORA。建置 0 錯誤 / 361 警告;--spiraatlas-rt0+--player-rt0+--spheregrid-layout-rt0+--aicmdmeta-rt0PASS. 文件:docs/ai/ATLAS_LULU_PLAYER_GROWTH_SPHERE_BADGE_UI_RESULT_2026-06-10.md. [先前:v2.65.0] — Jarvis-LULU
v2.65.2BETAPATCH
Seymour
晶球盤:empty-node RedundantContent preserved (0xFFFF) + Atlas where-appears polish
- Atlas Polish / Evidence Housekeeping (Jarvis-BARTHELLO). (A) Sphere Grid hardening (byte fidelity): in
SphereGrid_File.Builder.cs(the v2 LAYOUT writer, gated by--spheregrid-layout-rt0), the AUTHORING/EDIT pathsAddNode/NodeWithwroteRedundantContent = (ushort)(contentIndex & 0xFF)→ for an empty node (content0xFF) that produced0x00FF, diverging from shipped data. The corpus (Jarvis-AURON scout, 3,444/3,444 nodes: low byte == ContentIndex, high byte set only on the 23 empty Expert nodes) proves an empty node =0xFFFF, a filled node =0x00<content>. New private helperRedundantContentFor(contentIndex)mirrors the shipped convention (empty→0xFFFF, filled→0x00NN).FromExisting/Clonestill copiesRedundantContentverbatim → the no-edit round-trip stays byte-identical (untouched, re-proved by the gate). New assert in--spheregrid-edit-rt0(synthetic + the 3 corpus grids):SetNodeContent(idx, 0xFF)→ layout writes0xFFFFat node+0x06 + contents byte0xFF+ re-reads empty. Gameplay risk low (redundant field; the game reads content fromdat09/10/11+ reach-lists — IDA-proved by AURON on both binaries), but it is a fidelity divergence in an already-shipped writer. (B)AiBibleWhereAppears.Forpolish (read-only): added theaeon-growthcase (an Atlas domain closed inv2.64.0that was falling through to the empty fallback) with honest "where it appears / mapping" text; updatedsphere-grid-node(was stale: "Unknown6 stays raw/unknown") to reflect AURON's burn-down —Node.Unknown6is gameplay-inert (IDA-proved on both binaries), the possible residual = menu layout/visual (metadata-only), with no invented gameplay semantics. (fixes a latent fidelity bug in an already-shipped writer — "a consumer would benefit" → yes, byte fidelity — plus read-only text polish; tie-breaker doubt→PATCH). No new writer, no new UI, no provider/gate-count change (--spiraatlas-rt0intact), noCommonengine (ANIMA), runtime/AURORA/VALEFOR/native-menu/SIN, CHAPPU/save, or real grid topology (create/move/relink node stays a frontier) touched. Build 0 errors / 361 warnings;--spheregrid-edit-rt0+--spheregrid-layout-rt0+--spiraatlas-rt0+--aicmdmeta-rt0PASS. Doc:docs/ai/ATLAS_BARTHELLO_POLISH_RESULT_2026-06-10.md
v2.65.1
v2.65.3BETAPATCH
Seymour
SEYMOUR 稽覈:Atlas 的 124 個 ATEL `unknown-call-shape` 列已解析為正規類別(read-only、byte-proven)
- ATEL Call-Shape 稽覈(pre-SIN)。 那些
124field-writes v8 語義傳遞無法分類的(field-write-unknown-call-shape)已在整個語料庫(FFXDataParser 目標/文字,346 個腳本)的位元組碼層級進行稽覈,並完全分解為 TWO 已證明的類別,剩餘 0 個。 (1)0x70A8 btlSetMotionData— 116 列(100%): 統一形狀PUSHII actor · PUSHII field · (PUSHII|PUSHF) value · CALLPOPA=(actor, field, value)進入 motionProperty 命名空間(欄位0x00..0x09,全部以AiMotionPropertyNames命名);參與者是一個 REAL 參照(113 個 Self0xFFF3+ Monster#01/#02/#030x15/16/17h),橫跨 25 個怪物 → 類別set-motion-data-actor-field-value(explicit-actor 的兄弟類別0x70B2 setMotionField;NOTsetStatField)。 (2)0x7032 setActorFacingAngle— 8 列: NOT 一個欄位寫入 — 它就是(actor, angle),一個沒有 field-id 的雙推送呼叫;它們以正規表示式 false-positive 的形式滲漏到欄位目錄中(只有 FLOAT 角度會呈現.facingAngle = 90.0 [42B40000h],而 v7 正規表示式匹配了該小數的.0 [hex];63 個 integer-angle 兄弟站點= 90 [5Ah]並未滲漏) → 類別not-field-write。 變更: 橋接tools/ffxdataparser_bridge/build_atel_semantic_catalog.ps1(Get-FieldWriteSemanticKind+ 風險備註)重新分類了兩個 call-ids;v8 以0未知重新生成(新類別中 116+8);AtelFieldWriteShape計數保持202(重新標記保留了callId|fieldHex|fieldName|semanticKind|fieldCategory鍵基數,前後已證明);unknown-health傳遞捨棄了199 → 75(124 個 ATEL 離開了「blocked-until-audited」桶);SpiraDataAtlasCatalog敘述(atlas:field-call-shapes+ 護欄 +atlas:unknown-health)已更新; 該--spiraatlas-rt0斷言移動 (detail entries 21316→21192,Unknown health rows 199→75) + 2 個新的 lock-asserts (0剩餘未知 call-shapes +0x70A8motion-data 存在)。誠實來說: 分類不等於授權撰寫者 — 每個AtelFieldWriteShape保持為read-only;not-writer-authority,70A8仍然沒有按鈕/寫入,沒有任何內容被提升為 SIN。Read-only 保真度發現: EDITOR 解碼器 (AiScript_File.cs) 不修飾70A8(不存在於FieldArgBack/FieldNameForFunc)且AiStackModel缺少其參數數量 → 一個顯示缺口移交給 MAGIC 工作線 (docs/ai/HANDOFF_SEYMOUR_ATEL_DECODER_GLOSS_GAP_2026-06-10.md),不影響遊戲性。PATCH(精煉/分類一個現有的 read-only 目錄,解決一個 SIN data-blocker;先例v2.61.3/v2.62.1;tie-breaker 疑問→PATCH)。無新增撰寫者;不觸及執行時期/AURORA/VALEFOR/native-menu/SIN-chain-builder/CHAPPU/存檔。經由對抗性工作流程驗證(3位反駁者+完整性評論員)。建置0錯誤/361警告;--spiraatlas-rt0+--aicmdmeta-rt0+AiScriptLab --ai2(346/346) PASS。文件:docs/ai/ATLAS_SEYMOUR_ATEL_CALL_SHAPE_AUDIT_RESULT_2026-06-10.md
v2.65.2