Repository navigation
Releases: Exoridus/ffx-parry-mod
Release list
v0.5.1
fahrenheit-parry-mod v0.5.1 (2026-08-17)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.5.1.zip
- Mod-only package: fhparry-mod-v0.5.1.zip
- SHA256: fhparry-mod-v0.5.1.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.5.1 (6df470c)
- fix(setup): discover MSBuild via vswhere instead of PATH only (f93c2a2)
- build(fahrenheit): re-pin to 0a90818 (18 commits, ImGui 3.x) (7e5f198)
Full Changelog: v0.5.0...v0.5.1 | README
v0.5.0
fahrenheit-parry-mod v0.5.0 (2026-07-27)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.5.0.zip
- Mod-only package: fhparry-mod-v0.5.0.zip
- SHA256: fhparry-mod-v0.5.0.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.5.0 (7ab2b5a)
- feat(counter): fire counters at block end via the sequence rule (d9375c2)
- build(deps): bump System.Security.Cryptography.Xml to 10.0.10 (604eb2b)
- build(restore): restore managed projects in their own process (7339c70)
- build(fahrenheit): build managed core instead of publishing it (aa3a16e)
- feat(debug): command mechanics inspector panel (eb7694f)
- feat(bundles): add command Mechanics to runtime bundle (f1e1919)
- feat(parry): drive parry block via manual motion 0x2F instead of native 0x43 (4236c3f)
- refactor(overdrive): move the overdrive code out of the debug file (c227092)
- perf(hooks): cache the hook delegates instead of re-converting per call (247a3ec)
- build(fahrenheit): pin to origin/main e11c74d for the alpha11 branch (62be771)
- feat(alpha11): migrate to the ref-struct hook API (52243d6)
Full Changelog: v0.4.1...v0.5.0 | README
v0.4.1
fahrenheit-parry-mod v0.4.1 (2026-07-11)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.4.1.zip
- Mod-only package: fhparry-mod-v0.4.1.zip
- SHA256: fhparry-mod-v0.4.1.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.4.1 (42f4087)
- fix(release): keep committed Fahrenheit pin in release-bump (fb00ec6)
- build(fahrenheit): pin release ref back to v1.0.0-alpha09 (c6e8733)
Full Changelog: v0.4.0...v0.4.1 | README
v0.4.0
fahrenheit-parry-mod v0.4.0 (2026-07-11)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.4.0.zip
- Mod-only package: fhparry-mod-v0.4.0.zip
- SHA256: fhparry-mod-v0.4.0.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.4.0 (7d69c64)
- refactor(camera): drop custom saved cameras; keep the static hold + freecam (65ccccb)
- fix(camera): hold suppresses camera requests too, not just enemy turns (2457e3a)
- refactor(camera): strip to freecam + one save button; drop encounter table & follow-cam (1e9cc15)
- feat(debug): selectable, copyable log box; drop timestamps (858f2af)
- fix(camera): settle-grace fallback keeps the correct default framing; caret to screen corner (13b89e5)
- feat(camera): zoom-punch on parry — quick eye dolly toward the gaze (f5672ed)
- chore(mappings): slim runtime bundles from 24MB to 3.5MB (1bdc23f)
- feat(camera): follow-cam — look-at tracks the acting enemy, damped (5e6b64b)
- feat(camera): dedicated Camera tab with per-map encounter table (4fbe0f0)
- feat(freecam): anchors keyed by battle map + enemy constellation (0c04f59)
- fix(freecam): move back to WASD + Q/E — it reads more natively than the numpad (c87d172)
- feat(freecam): numpad movement, inverted look, persistent battle-start anchor (b1176bb)
- feat(freecam): experimental hand-controlled battle camera + angle capture (2470fac)
- feat(debug): manual screen-shake test buttons; whole-party shake 0.80s (6f60613)
- feat(camera): AllTurns hard-lock suppresses the ATEL position writers (557baf2)
- fix(shake): single parry 0.40s, whole-party 0.73s (f2b3354)
- feat(overlay,shake): whole-party shake, corner-caret window, retire sweep (df10347)
- refactor(settings): two-column feedback grid, inline checkbox labels (dbd0932)
- refactor(cleanup): drop write-only CheckHit MISS cache, relocate turn drivers (edf88be)
- feat(overlay): titleless window, proximity fade, collapse caret, timing readout (3f23624)
- refactor(debug): drop the cue-preview panel for a slimmer state panel (6ca3e68)
- refactor(settings): prune dead toggles, fold magic camera into the lock combo (275582d)
- feat(timing): restore tiered windows, de-toxify Expert, bring back the dodge cooldown (16cc05b)
- fix(streak): a streak dies when the player regains control; lock all turns by default (5aea319)
- feat(timing): gameplay timers count ticks; the dodge window comes from the model (4ae29f9)
- feat(timing): count battle ticks, and stop letting difficulty move the window (2f98c90)
- refactor(overdrive): move the overdrive code out of the debug file (9bbd9de)
- feat(ui): move the settings into the mod's own window (8b23cd6)
- refactor(offsets): drop the FhCall dependency entirely (a7b5de7)
- refactor(hooks): funnel every orig_fptr call through a single seam (c936f92)
- fix(evade): identify MISS_ALIVE structurally instead of guessing the enum (60b3220)
- feat(debug): probe the ATEL opcodes that actually move the battle camera (69ccdfd)
- fix(parry): reset per-action parry state at cue boundaries (8531445)
- fix(camera): return -1, not 0, when suppressing MsAtelRequestCamera (a7ea9fb)
- feat(debug): shake duration sweep with a shuffled bag and a debug-overlay panel (a04e586)
- fix(parry): stop a successful parry from erasing its own evidence; decorrelate the shake axes (0ef9a4c)
- feat(dodge): terminate the evade motion deterministically instead of letting it run out (86062bd)
- build(fahrenheit): pin to v1.0.0-alpha10 (ea602d4)
- fix(combat): a perfect dodge is a dodge — no impact shake, no parry consequences (c826512)
- feat(combat): fire the engine's native screen shake on parry and perfect dodge (d6a80bf)
- docs(overdrive): riposte no longer charges on perfect dodge (22961c1)
- feat(overdrive): make learn-by-parrying unconditional, remove learn_custom_overdrive setting (c8140f1)
- feat(combat): overdrive is the parry's reward alone, and the labels read whiter (507ffda)
- feat(overdrive): learn custom mode by parrying instead of unconditional unlock (062ea22)
- feat(debug): dump overdrive learn counters in the read-only save probe (ba3bcc2)
- feat(overdrive): unlock custom mode 0x11 in save mask behind default-off setting ([2c45dae](2c45dae7ec6cf4e19465b43e1acae...
v0.3.1
fahrenheit-parry-mod v0.3.1 (2026-04-07)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.3.1.zip
- Mod-only package: fhparry-mod-v0.3.1.zip
- SHA256: fhparry-mod-v0.3.1.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
Full Changelog: v0.3.0...v0.3.1 | README
v0.3.0
fahrenheit-parry-mod v0.3.0 (2026-04-07)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.3.0.zip
- Mod-only package: fhparry-mod-v0.3.0.zip
- SHA256: fhparry-mod-v0.3.0.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.3.0 (40d7e38)
- feat(parry): stabilize combat flow and build-mode config defaults (8dfbeaf)
- feat(tools): auto-ensure local tool dependencies (79b24b2)
- refactor(build): make setup primary onboarding workflow (37ecf83)
- refactor(parry): startup ATEL patches, BtlPos queue cleanup, and audio fixes (814e523)
- chore(ci): bump softprops/action-gh-release from 2.5.0 to 2.6.1 (532326b)
- chore(ci): bump dependabot/fetch-metadata from 2.5.0 to 3.0.0 (cac3310)
- chore(ci): bump microsoft/setup-msbuild from 2.0.0 to 3.0.0 (23233ef)
- chore(ci): bump actions/cache from 4.3.0 to 5.0.4 (310b809)
- chore(ci): bump actions/upload-artifact from 6.0.0 to 7.0.0 (4849c9d)
- refactor(build): CLI surface cleanup, data isolation, and CI alignment (48fa8fc)
- fix(hooks): expand h_ms_set_damage_internal p5 handling and Pending→None transition (038657f)
- ci: integrate vcpkg for windows-2025 runners (1cbc818)
- build: standardize verbosity surface and CLI shorthands (80e917c)
- feat(build): add quiet/verbose modes and reduce deploy preserve log noise (809080d)
- feat(clean): require --yes for purge and add OCR index reuse (d0ce949)
- refactor(build): migrate tooling scripts to C# and add clean purge flags (e2f8035)
- chore(ci): align workflows with new build flags (0237da3)
- fix(build): support target/config overrides and auto-deploy flags (1544317)
- refactor(parry): update combat hooks and diagnostics (87e6d21)
- docs: refresh workflow docs and local config schema (ce2a3fb)
- build: refactor command surface and local tooling workflows (ceb860f)
- build: unify deploy settings and add dry-run sync (0067cdd)
- fix(combat): restore ram.hp at MsDamageSetMotion to undo unknown native HP reducer (a4e5411)
- feat(combat): intercept damage at MsCalcDamageInternal to block both damage_hp and native buffer writes (a93b9b0)
- feat(diagnostics): add per-hook HP probes for magic attack pipeline analysis (1179e85)
- fix(combat): remove r1.held pre-arm from monitor_attack_cues (305d0d0)
- feat(ui): overhaul debug overlay logging with colors, cleaner text, and broader impact detection (c9154d5)
- fix(combat): revert broken pre-arm that checked R1 input state inside hook (a69408a)
- fix(combat): pre-arm _parryExpiry in h_ms_exe_input_cue before orig to enable return-0 interception (7ddd3f4)
- feat(build): add DeployBlocklist to dev.local.json to skip files during deploy (7c580fc)
- fix(combat): scope TurnImpactMissedSeen clear to attacker identity change (cba0835)
- feat(combat): defer parry feedback from MsCalcDamage to MsDamageSetMotion for visual sync (1262113)
- fix(combat): demote poll path from resolver to diagnostic, clear TurnImpactMissedSeen on window open (d49bf24)
- feat: improve discord-sync to automatically fix asset extensions (cf34a6c)
- feat(combat): replace IMMUNITY_HP_DAMAGE with return-0 from MsCalcDamage per-actor expiry (128649a)
- chore: remove missing ParryTimeSource test references (dd0dadd)
- fix(combat): restore HP snapshot to undo direct damage applied by MsSetDamage orig (5df955a)
- feat(combat): activate MsSetDamage hook for parry damage negation (b732501)
- feat(diagnostics): add MsCalcDamage pass-through probe with confirmed 11-param signature (ca68207)
- refactor(hooks): migrate pre_update to Fahrenheit GameLoop event subscription (3544997)
- chore: update Fahrenheit release ref and untrack .claude directory (34dd404)
- feat(build): add discord-sync workflow for incremental Discord JSON export (50d7585)
- fix(diagnostics): correct MsSetDamage spike to community-confirmed byte param_1 signature (d5d64b8)
- feat(diagnostics): add experimental MsSetDamage hook with hypothesized int(void*,int,int) signature (fee489e)
- fix(combat): cancel active parry window when enemy turn context clears (aeb7ac3)
- fix(combat): arm parry window for pre-held R1 on zero-latency attacks (beb7494)
- fix(diagnostics): stabilize cue baseline and preserve signed w...
v0.2.1
fahrenheit-parry-mod v0.2.1 (2026-03-08)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.2.1.zip
- Mod-only package: fhparry-mod-v0.2.1.zip
- SHA256: fhparry-mod-v0.2.1.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.2.1 (60e9002)
- fix(mappings): correct property name casing in runtime bundle loader (b8ad35f)
- feat(parry): surface DamageType from command mappings in resolved command diagnostics (9d1ee58)
- feat(mappings): add DamageType field to command domain extracted from parser dump (f5593f0)
Full Changelog: v0.2.0...v0.2.1 | README
v0.2.0
fahrenheit-parry-mod v0.2.0 (2026-03-08)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.2.0.zip
- Mod-only package: fhparry-mod-v0.2.0.zip
- SHA256: fhparry-mod-v0.2.0.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.2.0 (5eaf39d)
- feat(overlay): add anti-spam tier indicator to parry state HUD (7c39954)
- feat(difficulty): revise tier durations and remove Debug difficulty from UI (d0de3da)
- feat(settings): add user-facing penalty toggle for anti-spam tier escalation (fa7f6aa)
Full Changelog: v0.1.2...v0.2.0 | README
v0.1.2
fahrenheit-parry-mod v0.1.2 (2026-03-08)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.1.2.zip
- Mod-only package: fhparry-mod-v0.1.2.zip
- SHA256: fhparry-mod-v0.1.2.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.1.2 (f08c0c7)
- refactor(state): read spam controller state directly, remove shadow copies from ParryRuntimeState (f040e77)
- fix(config): use File.Move for atomic settings file replacement (5de85b9)
- fix(combat): guard try_get_chr against returning pointers to unoccupied slots (6818ee0)
- fix: preserve feedback overlay state when clearFeedbackFlashes is false (ff89fe1)
- fix(audio): use SND_PURGE to prevent GCHandle use-after-free (fb44bc6)
Full Changelog: v0.1.1...v0.1.2 | README
v0.1.1
fahrenheit-parry-mod v0.1.1 (2026-03-08)
This release provides pre-built ZIP packages for Windows (FFX/X-2 HD Remaster + Fahrenheit):
- Full package: fahrenheit-full-v0.1.1.zip
- Mod-only package: fhparry-mod-v0.1.1.zip
- SHA256: fhparry-mod-v0.1.1.zip.sha256
Installation
Prerequisite: Microsoft .NET Runtime 10 (x86 recommended).
If missing, fahrenheit/start-fahrenheit.cmd will prompt to install it via winget.
- Download one of the ZIP packages above.
- Extract into your game directory (folder containing
FFX.exe). - For the full package, start via
fahrenheit/start-fahrenheit.cmd(recommended). - Alternatively run
fahrenheit\bin\fhstage0.exe ..\..\FFX.exefromfahrenheit\bin.
Changes in This Release
- chore(release): v0.1.1 (1d1291b)
- refactor: remove IParryBattleAdapter single-implementation interface (eb32618)
- docs: annotate raw hook addresses and remove stale comment (698acde)
- refactor: remove dead movie hook infrastructure (ca447c7)
- ci: pin all GitHub Action references to SHA digests (1e12243)
Full Changelog: v0.1.0...v0.1.1 | README