更新 2.219
2026/8/2
v2.219.0.0BETAMINOR
Seymour2026年8月2日
i18n:完成 7 種語言翻譯 (已套用 ES/FR/DE/IT + 暫存中的 JA/KO/ZH)
- 工作線 IFRT-2
- 已翻譯 2,197 個鍵值,涵蓋 7 種語言,使用官方 FFX 詞彙表 (34 個術語:Overdrive→Turbo/Ekstase、Scan→Libra/Analyse 等) + 通用 UI 術語 (40 個術語:儲存/載入/開啟/關閉/套用等) + 自然翻譯。
- ES/FR/DE/IT 已套用到附屬 resx 檔案 (Strings.{es,fr,de,it}.resx):每種語言更新了 2,197 個鍵值。編輯器現在在 5 種語言中擁有完整的 UI (EN/ES/FR/DE/IT)。
- JA/KO/ZH 在暫存中 (
work/_i18n_staging_{ja,ko,zh}.json):使用官方 FFX 術語在日文/韓文/中文中生成了 2,197 個翻譯,NOT 已套用到 resx (font-bank 待處理 —SlotGlyphMeta表格僅在運行時存在;現在套用會顯示錯誤字元)。這成為一個 AI 義務,需要在 RT2 解決它時套用 (記錄在docs/ai/SESSION_HANDOFF.md中)。 - 翻譯管線:
work/_i18n_gen_all_translations.py(批次生成拉丁翻譯) +work/_i18n_apply_translations.py(套用到 resx) +work/_i18n_gen_asian_staging.py(在 JSON 暫存中生成亞洲翻譯)。 - 閘道: 建置 0 個錯誤;套件 379/379 PASS。在 6 份文件中完成版本控管 (csproj + CHANGELOG + changelogUS + VERSIONING + PORT_STATUS + SESSION_HANDOFF)。
v2.218.5.0
v2.219.0.0BETAMINOR
Lulu2026年8月2日
魔法 DLL 編輯器: UNIVERSAL 操作碼解析器 (來自 DLL 自身 .rdata 的 pppProgTbl_FP)
- 觸發器: 使用者的手動煙霧測試 —
magic_0117.dll以 ALL 插槽開啟,顯示「操作碼未編目 / 原始十六進位」(嵌入式目錄僅有 0021/0098,且 mag_0117 沒有 Yonishi fp.h)。 - RE 發現: 本機的 handler-name 表格 (pppProgTbl_FP) 存在於 DLL 自身的
.rdata中,以ppp*字串按照 handler_table_index 順序排列 — 0021 .rdata == Yonishi fp.h (37/37,順序相同);0098 .rdata 有 39 個,而 PS2 上有 35 個 (PC 插入了 KeZCrct/KeZCrctShp/DrawMdl3/DrawShapeX mid-table)。通用: 每個 DLL 都有它 (12-DLL 樣本)。 - 修正:
MagicFpHandlerTable.TryExtractFromDll— 解析器順序: Yonishi fp.h > DLL 自身的 .rdata > 嵌入式目錄。覆蓋範圍掃描: 30,436 個已命名插槽 (原本約 32K 個 RAW),4 個 RAW,0 個位於 field_map 之外的 opcode (7 個新的 SEM_PAYLOAD 家族: pppDrawHook, pppDummyFunc, pppKeOfsMatXYZ, pppMatrixFront, pppNei*PointLight)。 - 具體案例: P0 的 s11 (金鑰 0x040C) 在 0117 中 = 處理器 #22 = pppDrawMatrixFront (不是 pppMatrixScl — 0117 的順序從 #12 開始與正規順序不同)。
- 閘門: 建置零錯誤;MagicDll 套件 70/70 PASS (3 個新的 0117/0021/0098 測試);49/49 DLL 覆蓋度。
- 文件:
docs/reverse/PPP_RDATA_PPPROGTBL_UNIVERSAL_20260802.md。 ### PATCH
v2.218.5.0
v2.219.0.1BETAPATCH
Seymour2026年8月2日
Dataset-driven 生成器已插入合成中:
- 場景設定檔現在支援
"layout_mode": "pattern"(BuildMonsterPattern— 距離約 105,弧度 ±55-90°,per-battle 種子)取代保留 — 隊伍/攝影機 CONSTANT + 怪物在 ever-changing 模式中。預設"preserve"(目前行為)。已測試:remiem x4 模式 → 4 隻怪物在 ±60° 弧度(種子 ### MINOR
v2.219.0.0
v2.219.0.2BETAPATCH
Seymour2026年8月2日
MUSIC FINALLY REALLY DISABLED 工作
- 先前:
v2.219.0.1] - MUSIC (priority):
ModuleFlagEnabledonly checked flag EXISTENCE (ignored.flag.off) — 我之前的.off沒有用。修正: (1)arena_plus_music.flag在遊戲中重 新命名為.bakin the game (MusicHook off on next boot — IMMEDIATE, no rebuild); (2) code:ArenaPlusMusicFlagEnabledRaw/MusicHookEnabledFromConfig現在遵循.flag.off(專案模式) 。音樂將於下 - 次開機時恢復。Calm Lands載體x4網格 在 29u same-side points at ~29u (mon1-mon2 29u, mon1-mon3 27u — "stacked"). Grids 4/5 spaced (back 78/front 116 on x4): cavern x4 now mon1-mon2 44u, mon1-mon3 52u, mon0-mon1 (地圖顯示4個召喚獸分散)。頭目微調已 停用 (它導致中間的召喚獸碰撞)。Stea
- m部署 (掛鉤12:39 + 實驗室)。 ### PATCH
v2.219.1.0BETAPATCH
Seymour2026年8月2日
ViewerShell PIN:檢視器固定在描述場景(noclip 首頁/關於已封鎖)
- 診斷:使用者看到的是 noclip HOME(他們的選單包含「關於」),而非 Monster Studio——
#ffx/monster-studio雜湊未被保留(應用程式退回首頁;僅更換外觀無法解決,因為首頁缺少隱藏 ID)。 WebView2Host.NavigatePinned(url, hash):(1) 網域防護——NavigationStarting取消任何離開我們來源的導航(http://loopback:8769——封鎖外部連結,例如「關於」的 GitHub);(2) 雜湊強制——在NavigationCompleted上,若location.hash≠ 描述雜湊,則透過 re-applies 對其進行ExecuteScriptAsync(noclip 處理hashchange並導航至場景)。檢視器絕不停留在首頁:即使應用程式退回其選單,外殼也會將其帶回。ViewerShell在載入和重新載入時使用NavigatePinned。- 閘門: 建置 0 錯誤;編輯器冒煙測試(附加 → Monster Studio——應於工作室中開啟 DIRECTLY,無首頁/關於;外部連結已封鎖)。
v2.219.0.0
v2.219.2.0BETAPATCH
Lulu2026年8月2日
嵌入式目錄 [98] 來自 REGENERATED 的 PC .rdata (35→39 處理常式) + 完整的 effect→table 對應表已版本化
- 潛在錯誤修正: 關於 0098 的 Yonishi (PS2) fp.h 從 #26 開始就 SHIFTED — PC 插入了 KeZCrct(26)/KeZCrctShp(27)/DrawMdl3(32)/DrawShapeX(34) mid-table。嵌入式目錄現在使用真實的 PC 順序 (39) — 當 .rdata 不可用時的正確回退。
- 工件:
docs/reverse/PPP_PROGTBL_ALL_20260802.json— 掃描了 589 個 Steam DLL,其中 583 個包含 pppProgTbl_FP(effect → 局部表格,按 handler_table_index 順序)— 檢視器所需的 effect→opcode 連結。 - 閘門: 建置 0 錯誤;MagicDll 套件 70/70 PASS(0098 測試現在錨定精確位置:39, KeZCrct@26, DrawMdl@28)。 ### REVISION
v2.219.1.0
v2.219.2.1BETA
Lulu2026年8月2日
RE 文件:7 SEM_PAYLOAD 已在標準 DB 中通過 IDA MCP + pppDrawMatrixFront 反編譯驗證(INFRA,無負載)
- 已將 5 個 opcode→handler 註解應用至 .i64(0x757460 DrawHook / 0x7344D0 KeOfsMatXYZ / 0x737280 NeiChrPointLight / 0x74A2B0 + 0x74AF40 Nei*PointLight 輔助函式)— 現有名稱確認正確(不要 blind-rename:偏移量 12 的 handler_ptr = pC=繪製輸入欄位,可能是 MagicHost 輔助函式)。
- pppDrawMatrixFront (0x734CA0) = INFRA: 複製 ppvWorldMatrix → a3+128,並使用 HUD 肖像(FFX_BtlUI_HudParty_GetPortrait)— NOT 是否讀取該記錄。0117 的 s11 是一個指令槽(名稱可見,原始編輯正確)。
- 文件:
docs/reverse/PPP_RDATA_PPPROGTBL_UNIVERSAL_20260802.md§6-7。 ### PATCH
v2.219.2.0
v2.219.2.2BETAPATCH
Seymour2026年8月2日
國際化:還原批次套用所覆寫的 441 筆手冊 ES 翻譯 + FR/DE/IT 透過領域字典(136 個詞彙)進行的覆蓋範圍擴展 + 遷移 2 個原始 ViewerShell 字面值
- 工作線 IFRT-2
- 在 post-translation 驗證期間發現的錯誤: 自動套用 (
_i18n_apply_translations.py) 以 ES+詞彙表覆寫了品質手冊 EN 翻譯(chrome、官方術語、Mod_* 描述)。修正:work/_i18n_restore_manual_es.py— 合併 491 個手冊金鑰 (_i18n_tr_es_1..5c.py) ON TOP 自動套用的金鑰(441 更新 + 50 新增);移除 50 個孤立項(虛構名稱,在 Strings.cs 中無屬性,在程式碼庫中也無參考),以維持 2197/2197 對齊。 - 覆蓋範圍擴展:
work/_i18n_expand_coverage.py+work/_i18n_domain_dict_{1,2}.py(136 個 FFX/編輯器領域詞彙)— 將 ONLY 套用至仍等於 EN 的金鑰(等冪):FR +495(18.7%→41.2%),DE +454(19.0%→39.7%),IT +498(19.3%→41.9%)。 - 遷移 2 個原始 ViewerShell_Control.axaml 字面值(其他工作線的 ViewerHub 檔案) — StringsIntegrityTests 捕獲了
iniciando…和servidor in-process→ 在所有 9 個 resx 及U_*中的 props 裡建立 Strings.cs 金鑰 + 精準替換(僅該 2 行)。 - 閘門: 建置零錯誤;測試套件 396/396 PASS(StringsIntegrityTests 通過)。最終覆蓋率:ES 33.4%(手冊品質),FR 41.2%,DE 39.7%,IT 41.9%;JA/KO/ZH 仍暫存 (font-bank)。
v2.219.2.1
v2.219.2.3BETAPATCH
Seymour2026年8月2日
國際化: FR/DE/IT/ES 涵蓋範圍已擴展(399 詞 PT→FR/DE/IT 字典 + 22 個 EN 片語 + ES 領域)AND index-corruption 修正了 FR/DE 中混合語言的問題
- 工作線 IFRT-2
- PT→FR/DE/IT 字典:
work/_i18n_pt_dict_{a,b1,c1,c2,c3}.py(399 詞 — UI 動詞,FFX 遊戲玩法、世界、素材/時間/稀有度)+_i18n_en_phrases.py(22 個常用片語)+_i18n_expand_coverage.py現在涵蓋 ES(索引 0)。 - 在抽查中發現 BUG:
_i18n_apply_pt_dict.py的第一次執行了使用索引 1/2/3 對應 (fr,de,it) 元組 → FR 獲得了 GERMAN 值,而 DE 獲得了 ITALIAN 值(修正後的第二次執行無法覆寫它們,因為鍵不再等於 EN)。修正:work/_i18n_regenerate_fr_de.py從中性基準從頭重新產生 FR/DE,並以正確順序包含所有 4 個層級(官方詞彙表 > 領域 > EN 片語 > PT)。 - 修正後的實際涵蓋率: ES 50.3% (+372), FR 58.6%, DE 55.8%, IT 59.9%(相較於這一輪之前的 33-42%)。9/9 個 resx 已對齊(2199 個金鑰)。
- 閘道: 建置 0 個錯誤;套件 396/396 PASS。PT 10.2%(官方術語;PT-BR 是編輯器的實用中性語言);JA/KO/ZH 仍暫存(font-bank)。
v2.219.2.2