fix(QoL): widen never-logout keypress window to prevent missed idle resets - #531
Open
Joinkiee wants to merge 1 commit into
Open
fix(QoL): widen never-logout keypress window to prevent missed idle resets#531Joinkiee wants to merge 1 commit into
Joinkiee wants to merge 1 commit into
Conversation
…esets NeverLogoutScript pressed backspace only when idleness reached idleTimeout - randomDelay with randomDelay between 3000-5000 client cycles (~50/sec, idleTimeout ~15000 = 5 min), i.e. just 60-100s before the logout boundary. A stalled game tick window (world hop, lag, busy client thread) could push the check past the boundary and log the player out despite the setting being enabled. Widen randomDelay to 7500-10000 so the keypress lands at ~100-150s of idle, leaving a 150-200s safety margin. Verified live against client 2.6.19: old logic observed firing at 10572-11426 idle cycles, patched logic observed firing at 5600-5944 with the session staying logged in. Bump QoL version to 1.8.16.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
QoL's "Never log out" setting intermittently fails to prevent the 5-minute idle logout.
NeverLogoutScriptonly pressed backspace whenmin(mouseIdleTicks, keyboardIdleTicks) >= idleTimeout - randomDelay, withrandomDelayrolled between 3000–5000 client cycles. Since idle ticks are client cycles (~50/sec) andidleTimeoutis ~15000 (5 minutes) on live worlds, the keypress landed at 10000–12000 cycles of idle — only 60–100 seconds before the logout boundary. Because the check runs onGameTick, any stall in tick delivery during that window (world hop, lag spike, busy client thread) let the counter cross 15000 and the player was logged out despite the setting being on.Fix
Widen
randomDelayto 7500–10000, so the keypress lands at ~100–150s of idle time, leaving a 150–200s safety margin before the logout boundary. Bumps QoL version to 1.8.16.Verification (live client 2.6.19)
Observed via the agent server with a probe plugin sampling
getMouseIdleTicks()/getKeyboardIdleTicks():LOGGED_INthroughout../gradlew QoLPluginJar -PpluginList=QoLPluginbuilds clean.Note: this only covers the 5-minute idle logout — it cannot prevent the 6-hour force logout or disconnects.