Fast Piggie: fix outlier z-order and min display time tracking#67
Merged
Fast Piggie: fix outlier z-order and min display time tracking#67
Conversation
#57) Agent-Logs-Url: https://github.com/acrosman/BrainSpeedExercises/sessions/ac6e6268-05ec-4219-920b-68490ae16792 Co-authored-by: acrosman <2972053+acrosman@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Improve user experience for Fast Piggie
Fast Piggie: fix outlier z-order and min display time tracking
Apr 14, 2026
acrosman
approved these changes
Apr 15, 2026
This was referenced Apr 15, 2026
Closed
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.
Two UX bugs in Fast Piggie: the target image could be obscured by distractors at high image counts, and the game card "Min Display Time" stat was showing answer response time (~87ms) instead of the actual minimum display duration (~10ms).
Outlier image z-order (
index.js→drawBoard)Canvas 2D z-order is draw order. Previously all images were drawn wedge-by-wedge, so distractors rendered after the outlier would cover it. Fix defers the outlier's
drawImagecall until after the loop completes, ensuring it always renders on top.Min display time tracking (
game.js+index.js)lowestDisplayTimewas being populated fromtopSpeedMs(time-to-click after images hide), not the actual round display duration. IntroduceslowestRoundDisplayMsto track the minimumdisplayDurationMsacross all rounds, passed from_currentRoundintoaddScore/addMiss.addScore(guineaPigs, answerSpeedMs, displayDurationMs)— new third paramaddMiss(guineaPigs, displayDurationMs)— new second paramgetBestStats()andstopGame()now exposelowestRoundDisplayMsstop()usesbestStats.lowestRoundDisplayMs→lowestDisplayTimewhen saving score