Game: Scarecrow's Song records or plays far too slowly above 60 fps #87

Open
opened 2026-11-13 02:27:27 +00:00 by mooki · 0 comments

Longshot version

The original player's version was not supplied. Longshot main still lacks the three song-clock carry changes; pull request 78 now carries the fix and is open, not merged.

What kind of problem

Sound

What happened

jordanella opened this report on a player's behalf: a song taught to the scarecrow as young Link plays extremely slowly as adult Link while the rest of the game runs normally. c47n1P separately reported slow animation with a 120 cap on an RTX 5090, and said reducing output and render resolution helped. That workaround remains their observation, not an explanation established by my tests.

I took on the timing. Earlier Linux/RTX 4090 tests confirmed both playback starvation and lost recording durations above 60 native frames per second. Three updates share the elapsed counter and discard fractional time. A normally recorded song finished in about 3.93 seconds at 60, but did not finish in the observed intervals of over 86 and 88 seconds with higher caps. A high-rate recording kept its pitches but stored zero note durations.

The prepared fix retains the fraction across all three updates. A complete eight-note recording then played at about 3.60 seconds with caps 60, 120 and 240; the older correctly recorded song also completed at the adult scarecrow. These are earlier Hookshot correctness observations, not a new Longshot speed comparison. The first two-site attempt lost the last note and was rejected; the completed fix covers that path too.

Longshot's carry table still covers only pickups, water and the day clock; the later main changes through 77f605a25 do not alter it. Pull request 78 adds the complete three-site fix and four new Longshot correctness runs, separately labelled from the earlier evidence above. Its test request for the reporter's scenario (T-LZ6Y) and its platform limits are explicit.

Old recordings whose durations were lost cannot have their rhythm reconstructed from pitches alone: re-record as young Link after the fix. Correctly recorded songs do not need that. Keeping the cap at 60 while recording and playing is the temporary workaround. Windows, AMD and Intel gameplay, audible output and physical-controller input have not been checked here. This is not a fix for every above-60 fault.

Where in the game

Teaching the short song at Lake Hylia as young Link, then playing it as adult Link or elsewhere.

How often

Repeated slow playback in the report; exact frequency and teach/play settings unknown. Reproduced in the controlled high-rate cases above.

Graphics card and driver version

Original player's GPU/driver unknown. c47n1P: RTX 5090, driver unstated. My earlier tests: RTX 4090, NVIDIA 615.78.08.

CPU, RAM and operating system

Original system unknown. My earlier tests: Core i9-13900K, Arch Linux kernel 7.2.15-1-omarchy.

Changes from the defaults

Reporter confirmation: cap 120, recording rate only estimated. My tests used caps 60/120/240, 1280×720, 50% render scale, the game's upscaler, frame generation off, disposable saves and muted output.

Other software hooked into the game

Not reported for the original player. My tests used local observation-only instrumentation, not part of the proposed fix.

Reported on GitHub as NotRexed/Hookshot#2668; taken on there by mooki.

### Longshot version The original player's version was not supplied. Longshot main still lacks the three song-clock carry changes; [pull request 78](https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/78) now carries the fix and is open, not merged. ### What kind of problem Sound ### What happened [jordanella opened this report on a player's behalf](https://github.com/NotRexed/Hookshot/issues/2668): a song taught to the scarecrow as young Link plays extremely slowly as adult Link while the rest of the game runs normally. c47n1P separately reported slow animation with a 120 cap on an RTX 5090, and said reducing output and render resolution helped. That workaround remains their observation, not an explanation established by my tests. I took on the timing. Earlier Linux/RTX 4090 tests confirmed both playback starvation and lost recording durations above 60 native frames per second. Three updates share the elapsed counter and discard fractional time. A normally recorded song finished in about 3.93 seconds at 60, but did not finish in the observed intervals of over 86 and 88 seconds with higher caps. A high-rate recording kept its pitches but stored zero note durations. The prepared fix retains the fraction across all three updates. A complete eight-note recording then played at about 3.60 seconds with caps 60, 120 and 240; the older correctly recorded song also completed at the adult scarecrow. These are earlier Hookshot correctness observations, not a new Longshot speed comparison. The first two-site attempt lost the last note and was rejected; the completed fix covers that path too. Longshot's [carry table](https://git.magicbean.dev/MagicBeanDev/Longshot/src/commit/6b2dafefe5a5108bc1ab99deb98dab74a5ba9dd6/nx2/oot_patches.py#L458-L474) still covers only pickups, water and the day clock; the later main changes through `77f605a25` do not alter it. [Pull request 78](https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/78) adds the complete three-site fix and four new Longshot correctness runs, separately labelled from the earlier evidence above. Its test request for the reporter's scenario (T-LZ6Y) and its platform limits are explicit. Old recordings whose durations were lost cannot have their rhythm reconstructed from pitches alone: re-record as young Link after the fix. Correctly recorded songs do not need that. Keeping the cap at 60 while recording and playing is the temporary workaround. Windows, AMD and Intel gameplay, audible output and physical-controller input have not been checked here. This is not a fix for every above-60 fault. ### Where in the game Teaching the short song at Lake Hylia as young Link, then playing it as adult Link or elsewhere. ### How often Repeated slow playback in the report; exact frequency and teach/play settings unknown. Reproduced in the controlled high-rate cases above. ### Graphics card and driver version Original player's GPU/driver unknown. c47n1P: RTX 5090, driver unstated. My earlier tests: RTX 4090, NVIDIA 615.78.08. ### CPU, RAM and operating system Original system unknown. My earlier tests: Core i9-13900K, Arch Linux kernel 7.2.15-1-omarchy. ### Changes from the defaults Reporter confirmation: cap 120, recording rate only estimated. My tests used caps 60/120/240, 1280×720, 50% render scale, the game's upscaler, frame generation off, disposable saves and muted output. ### Other software hooked into the game Not reported for the original player. My tests used local observation-only instrumentation, not part of the proposed fix. Reported on GitHub as NotRexed/Hookshot#2668; taken on there by mooki.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Longshot#87
No description provided.