Update 2.204
8/2/2026
v2.204.0.0BETAMINOR
SeymourAug 2, 2026
F7 In-Live ("FFX Editor - In-Live"): RAM Difficulty (global + per-area + fine), Force Last Battle and Music with a working native F7 menu
hooks/F7InLive.{cpp,h}(new): typed config (F7Config) persisted tomodules\config\f7_inlive.json(load + atomic.tmp+MoveFileExsave); gatef7_inlive.flag/config\f7_inlive.flag/FFXHOOKS_ENABLE_F7=1(OFF by default).- RAM Difficulty (per-battle auto-apply): MinHook on
ResolveEncounterToken (0x3828B0)(read-only last-encounter field/group capture) +InitSystemSceneAndActorTable (0x383ED0)(marks needApply) →F7_DifficultyTryAutoApplywaits for stats to be ready and applies area→global + arms the battle music in the same window. Enemy list0xD37634(stride 0xF90, slot occupied when u16@+0x0E≠0xFFFF); offsets validated in the0x79C130decompile on the COPY:+0x594 Max_hp,+0x5A8..0x5AFstats,+0x5DA/5DC/5DDelem absorb/resist/weak,+0x630innate_auto (3×u16),+0x641statusResist[25],+0x6E4/6E8current. Global preset: 10 permille multipliers (hp/mp/str/def/mag/mdf/agi/acc/eva/lck + overkill),autoStatusMask(bits 0..24), elemWeak/Resist/Absorb (OR),statusResist[25]; N2 per-area (F7AreaRule[16], fallback -1) viadiffByArea. - Force Last Battle:
F7_ForceLastBattle()— CALLMsBattleEncountExe (0x380DE0)on the main thread with the captured last field/group;repeatCount 1..9. - Music: lock (override via
FFXHooksBlock_v1musicOverrideTrackIndex+musicSeq), battleTrack (MusicHook pending — single-consumption, 45s expiry), randomizer (picks from playlist via GetTickCount), fade (SetMusicHookMinFadeFrames). - Native F7 menu: 8-row hub + MUSIC (Lock/Battle Entry/Randomizer/Fade/Back), FORCE (Force Last Battle/Repeat/Last Encounter/Back) and DIFF (Off/Hunter/Sombra de Sin/True Nightmare presets + enable + 6 multipliers + auto + weak/resist/absorb + Apply Now/Save/Back) submenus —
F7RT_STEPPER/TOGGLE/ACTION/INFO/BACKrows, glass draw + cascade;f7_inlive.flagalso arms the native menu (StartNativeMenuIfEnabled). - Build PASS (
build_hooks.ps1 -WithPolyHook -Release, 0 errors; F7InLive.cpp already registered in vcxproj and build_hooks.ps1). - RT2 in-game
Needs Testing(Difficulty per-family mutate-observe; Force capture→1-click; Music audible). Doc:docs/reverse/FFX_F7_INLIVE_ARCHITECTURE_2026-08-01.md. ### MINOR
v2.205.0.0