Skip to content

dm: let players opt into a refresh rate below 0.5s - #2103

Open
dfrisone wants to merge 1 commit into
EllesmereGaming:mainfrom
dfrisone:feat/dm-unsafe-refresh-rate
Open

dfrisone wants to merge 1 commit into
EllesmereGaming:mainfrom
dfrisone:feat/dm-unsafe-refresh-rate

Conversation

@dfrisone

@dfrisone dfrisone commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds an Unsafe Refresh Rate toggle (cog next to Refresh Rate, off by default) that extends the slider down to 0.1s
  • Off (default): unchanged, floor stays at 0.5s
  • On: any value below 0.5s snaps back up immediately when toggled back off, not just on next login
  • A 0.05s hard floor applies either way, so a corrupt/hand-edited SavedVariables value can never reach the ticker as 0 or negative

Why

The 0.5s floor added in v9.1.5 (allocation cost per full session snapshot per window per tick) was a hard, unconfigurable cap. A user asked to be able to go lower on a machine that can handle it. This makes it an informed opt-in instead of removing the protection outright.

Test plan

  • Enable Unsafe Refresh Rate, drag Refresh Rate down to 0.1s, confirm meters refresh faster in combat
  • Toggle off after setting a sub-0.5s value, confirm it snaps back to 0.5s immediately
  • A different profile that never touched this setting still defaults to the 0.5s floor
  • A SavedVariables value below 0.5s with the toggle off still clamps to 0.5s on login (unchanged migration)
  • A SavedVariables value of 0 or negative with the toggle on clamps to the 0.05s hard floor, not 0

A cog next to Refresh Rate exposes an Unsafe Refresh Rate toggle,
off by default. On, the slider extends down to 0.1s with a tooltip
about the allocation cost. Off, the 0.5s floor is unchanged, and any
sub-floor value snaps back up immediately instead of waiting for the
next login migration.

An absolute 0.05s hard floor still applies regardless of the toggle,
so a corrupt or hand-edited SavedVariables value can never reach the
ticker as 0 or negative.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant