Skip to content

Releases: Exoridus/ffx-fpsunlock-mod

Release list

v0.0.1

v0.0.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Sep 11:10

ffx-fpsunlock-mod v0.0.1 (2026-09-09)

Experimental preview. Build success does not establish in-game compatibility. See the README for known limitations.

Pre-built mod package for Final Fantasy X HD Remaster running under Fahrenheit:

Installation

  1. Install Fahrenheit and start the game once, so fahrenheit/ exists next to FFX.exe.
  2. Extract fhfpsunlock-mod-v0.0.1.zip into that fahrenheit/ directory. It contains mods/fhfpsunlock/.
  3. Add fhfpsunlock on a line of its own to fahrenheit/mods/loadorder.

Changes in This Release

View this tag | All Releases

  • fix: öffentliche Fahrenheit-Quelle und vollständigen Commit verwenden (93ba3f6)
  • feat: öffentliche CI und experimentelle Release-Pakete vorbereiten (cb5124f)
  • refactor: rename the mod to fhfpsunlock, and put the rate in Fahrenheit's settings (c5c94e5)
  • fix(motion): make the hold take full precedence over the lend (4ed76b9)
  • fix(motion): stop writing the rate correction into a field that is never reset (9efd5bb)
  • fix(particles): hold the field particle restart countdown on skipped frames (be051f5)
  • feat(motion): sample the uncorrected clip position, and offer a hold for it (d424b64)
  • feat(particles): probe the field manager restart countdown (d63d821)
  • fix(particles): stop the field step being scaled twice (65dfb4f)
  • feat(overlay): make the marker capture the counters, not just the time (25fee25)
  • fix(overlay): draw the clock at the default font size (e55a7e3)
  • feat(overlay): add a diagnostic timer overlay and log its clock every sample (bdcf7e1)
  • fix(battle-cursor): verify the blink gate operand against sg_count's runtime address (fcf7216)
  • fix(buoyancy): hold the swimmer's vertical channel on skipped frames (79a4495)
  • fix(atel,style): drop invented deadline-setter names, clean stray whitespace (4cb74e6)
  • fix(rate): refuse a present-rate window that overlapped a syncdata scene (832fa9d)
  • fix(overlay): retime the twenty overlay spawn gates through gMagicFunctions slot 764 (638d0a9)
  • fix(atel): retime the worker motion and rotation records, and the position they integrate (07a7064)
  • fix(neck): hold the three head-tracking clocks on skipped frames (57a6b1b)
  • fix(idle-sway): suppress the look-around advance on held frames instead of undoing it (dcc3dd1)
  • fix(eternal-calm): draw the copyright card every frame but advance it every other (2d60b15)
  • fix(patches): record the derived value before verifying the bytes, not after (583c0f3)
  • fix(rate): keep the three image patches in step with the scale they derive from (9406d04)
  • fix(texanim,battle,overlay,telemetry): six small corrections, and one probe removed (593772f)
  • fix(timing): isolate the movie wait's carry with the flag that gates it (7f38773)
  • fix(timing): scale the ATEL wait's movie-frame delta, not just its counter (d117467)
  • fix(motion): stop lending the rate flag to the actors a scene opted out (b8ecb1e)
  • fix(fades): do not install the cross-fade hold without its re-entrancy guard (7c4958d)
  • fix(fades): hold the cross-fade slot instead of doubling the frame count it was given (7acc8d9)
  • fix(timing,particles,events): three corrections the frame-bound audit turned up (bfbcd0f)
  • fix(particles,fmv): hold the eight generic integrators, and hold the video by call (192c7fe)
  • fix(particles): the age step must divide the vanilla one, and the rate must be settled first (d4ff03c)
  • feat(particles): halve the timeline itself, in the two instructions that define it (6d7cc5e)
  • feat(timing): derive every correction from the measured rate, not from twice 30 (8a99924)
  • feat(texanim): hold the new format's step byte, and log what the battle camera receives (68d2ab5)
  • feat(effects): scale the lens sprite clock, and let the effect advance hold in battle (87cd8f7)
  • feat(tools): read engine globals out of the running game (0310a6a)
  • feat(tools): read minidumps without installing a debugger (badb7bf)
  • fix(retiming): correct four wrong hooks, and add the measurements that close the rest (54779f7)
  • fix(particles): never hold a kernel on the tick its keyframe lands (4786613)
  • fix(effects): hold MsEffectProcess only where skipping it skips only the advance (2142af8)
  • feat: name the actors on each motion path, not only count them (792ec4d)
  • feat: stop holding the Lns update kernels, and probe the screen texture animator (41090a5)
  • fix: three hook calling conventions, read off the bytes instead of the catalog (0e9ef14)
  • feat: add an observe-only survey of the per-actor motion advance (16625a1)
  • feat: force the event worker's animation clock onto the corrected counter (bc98919)
  • docs: correct the claim that this image never uses ret imm16 (8fb2fe4)
  • feat: retime particles at the step kernels, and never hold an object's first frame (884f45f)
  • feat: add the field particle hold, and measure that it flickers ([16a955e](16a955eb05f3ab2bffae...
Read more