JARVIS-MAGIC
更新 2.189
2026/7/10
v2.189.0.0REVISIONJarvis-MAGIC-DLL / SOL2026年7月10日
PPP C2 第一波 + SOL 稽核 + 處理常式表佈局
- C2 第一波 (GLM-5.2): 透過 IDA MCP 在標準 IDB 中反編譯出的 193/193 個唯一處理程序
ffxoficial_post_vtable_struct_20260710_110730.i64. 已識別出 10 個類別(Nullsub、Euler Matrix、Rand/Pattern、Transform/Matrix、Menu2D/Projection、FieldMap/Scene、Draw/VFX、Push/Copy Node、Animation State、Misc)。PPP_HANDLER_ENCODING_SPEC.md內容涵蓋呼叫規約、槽位佈局、節點結構以及 5 種存取模式。SOL_PACKAGE_V2.md已為交接工作完成整合。包含 22 個 DLL 的測試套件,擁有 6,650 多個測試槽位。已編寫覆蓋率報告。68/68 項測試均已維護完畢。 - SOL 審計 (GPT-5.6): 針對標準 IDB 進行的 V2 套件對抗性審計。已驗證處理器表佈局:40B (0x28) 條目,其中
name_ptr@+0x00, 模式指標@+0x04/+0x08/+0x0C, 填充@+0x10..+0x27.0x730050已確認為……的中場球員ApplyTransformPattern_F(非入口點)。0x75B320已確認為UpdateAnimationState(內部輔助函式,未與分派表建立交叉引用)。pppRandUpFV已確認的字串指針位於0xB50E0C. 解釋器0x7170F0已反編譯:僅供閱讀+4(direct_handler) 位於可見路徑中;級聯+8/+C未經證實。 - 基於證據的暫停: C2/C3 被鎖定,直至取得可重現的調度表提取器 + 由處理器具體化的證據 + 語義
+4/+8/+C已通過驗證。SOL_PACKAGE_V2.md其中仍包含一項未實現的聲明:「193/193 個已反編譯的處理器」(反編譯結果未儲存於個別檔案中)。HANDLER_TABLE_LAYOUT.md以及OPEN_QUESTIONS.md在工作樹中建立。 - 著色器負責人(非阻塞): 797 個 Phyre D3D11 檔案位於
work/vanilla_bins/ffx_data/gamedata/ps3data/shaders;用於分析「draw」與「material」之間相關性的次要線索,並非 PPP 編碼的直接證據。 - 狀態:C2/C3
bloqueadas por evidência incompleta. 層 A/B/C1 維持閘門有效。 ### 重點摘要
v2.189.0.0MINORJarvis-MAGIC-DLL2026年7月10日
Magic DLL / PPP Assembler 通道:A + B + C1 層級 + 第二階段 + 深度分析
- 層 A — WD3 結構化序列化器 (
wd3_writer.py): 重建 224 位元組的前綴(標頭、指標表、間隙、5 個流標頭),且不進行複製raw_bytes. 守護者end_offset=0, 保留欄位與不變量total_size/count_entries. - B 層 — WD3 物理有效載荷模型 (
payload_map.py+wd3_blob_writer.py): 將 110,272 位元組的 blob 分割為具類型的前綴 (224B),post_prefix_gap不透明 (5.296B) 以及body不透明(104.752B)。9 個標準物理跨段,各擁有 1 至 5 個邏輯所有者。無模板的往返積分.data. - 層 C1 — PPP 可重新配置插槽編解碼器 (
layer_c_slot.py+layer_c_resource.py):將 WD3 與 PPP 資源 blob 分離,偵測根節點,遍歷區段/程式,並重新發送 16B 的磁碟槽位。 Steam 353/353 通過(355 個根節點、1,623 個區段、24,888 個程式、274,732 個槽位);測試案例 16/16 通過(4,450 個槽位)。 - PPP 指令碼目錄:已編目 274 個指令碼,222 個調度條目,約 50 個反編譯處理常式。
- 第二階段變異實驗:已在遊戲中驗證紋理路徑交換;已在遊戲中驗證 .data 交換;已驗證 float4/BGRA 個別修補並不會改變可見顏色(5 次嘗試)。
- 深度分析:分析了 Blizzara/Watera/Thunder;繪圖著色器系統 Family A 已映射(PPP→DXBC);找出目標導向動畫的根本原因;在 11 份文件中修正了 HOST_CONTEXT_MAP;
magic_0383重新歸類為假陽性。 - 證據:68/68 次測試通過;Layer A/B Steam 6/6 + 測試案例 16/16;C1 Steam 353/353 + 測試案例 16/16;零診斷錯誤。
- 狀態:A/B 層與 C1 層
validadas; Layer C2+(有效載荷、尺寸調整、新特效)research only.**
v2.188.0.0
v2.189.0.0Jarvis-AI/RE2026年7月10日
UNI-003 低生命值衝鋒 + 交叉驗證 RE 完成 + 生命值門檻修正
- HP 門戶修正(NearDeath): 最終根本原因 — 字段 0x0000/0x0002 為 CTB 計量表/回合數,並非 HP/最大 HP。 已修正為欄位 0x0119(NearDeath 布林值,讀取
[edi+594h]maxHpStat 對比[edi+5D0h]curre ntHp)。已在 Skoll m014 遊戲中透過 RT2 驗證:當 HP 低於 50% 時,HP 閾值機制能正確觸發。 - UNI-003「低血量衝鋒」: 已作為編輯器中的一鍵預設效果實裝。當血量 < 50%(瀕死狀態)時,會對自身施加「加速」效果,並透過
findMatchingChr(FrontlineChars, isAlive, 0, Any),透過私有變數進行一次性呼叫。複合守護程序:var==0 && NearDeath(LAnd)。由使用者手動修改的 m014 二進位檔通過 RT2 驗證。 - 新的 IR 記錄:
PerformCommandOnRandomFrontlineChr在SinChainRecipe— 透過以下方式在執行階段計算出的目標模型findMatchingChr. - 通用排程器:
SinDryRunPlanner.PlanGuarded現在支援多項動作組合(先前僅支援 1 項);LowerLinearAction支援PerformCommandOnRandomFrontlineChr. - RE 通道完整交叉驗證: SUPERMD(2115 行,針對二進位檔驗證了 150 多個假設)。87 項已確認,20 個實際錯誤已修正,120 個新函式 ID 已歸檔。 已映射 346 個案例的開關寫入端 (0x7B4B80) — 確認 0x7018 = WriteChrProperty。
- 已修正的關鍵錯誤: 0x7050→0x705A (ForcePerformCommand)、0xB6→0xD8 (CALLPOPA)、UNI-007 70%→50% (NearDeath 閾值)、 0xFFF1 標籤 (AllAeons)、0x7078→0x706C (ReadMovePropertyForActor)、哨兵標籤 (0xFFEC/0xFFEB/0xFFE9)。
- 播放過的檔案:
SinChainRecipe.cs,SinPresetRecipeResolver.cs,SinDryRunPlanner.cs,MonsterAiEditor_DataModel.Sin.cs,SinScaleInject/Program.cs,SinPresetRecipeResolverTests.cs,AiChrPropertyNames.cs,AiScript_File.cs,AiTargetNames.cs,universal.csv,PORT_STATUS.md,SESSION_HANDOFF.md. - 編譯: 0 個錯誤。 測試: 1/1 GREEN(SinPresetRecipeResolverTests)。RT2: 在 Skoll m014 關卡中,遊戲內已確認 HP gate + PhaseRotation 功能正常。
- 狀態:
Precisa Testar— UI(.axaml.cs)中 UNI-003 按鈕的接線尚未設定,且「一鍵式」按鈕的 RT2 尚未設定。
v2.188.0.0