Add Debug Settings Architecture#718
Merged
JamesVanBoxtel merged 4 commits intopanel-attack:betafrom Nov 9, 2025
Merged
Conversation
Repost of this commit since it was reverted. The Debug Settings system provides runtime-configurable debug features through a UI overlay. Settings are persisted to config.debug and can be accessed anywhere via the DebugSettings singleton. Also provide a way to generate the debug menu and surface it from a debug button. To support this new button and future overlays, add a root element to the game so we can order overlays Updated Bool Selector to size correctly Updated Style Selector creation to make sure sizing and layout is right Reload main menu when you come back to it Make navigation stack a UIElement so it works with touch handling Fixes panel-attack#697
Endaris
reviewed
Nov 8, 2025
common/engine/Match.lua
Outdated
| local InputCompression = require("common.data.InputCompression") | ||
| local ReplayV3 = require("common.data.ReplayV3") | ||
| local MatchRules = require("common.data.MatchRules") | ||
| local DebugSettings = require("client.src.debug.DebugSettings") |
Collaborator
There was a problem hiding this comment.
We should not introduce a dependency to the client here as it means that we would have to deploy client code on the server which does not make sense.
I think ideally Match should have its own internal debug configuration that is always set on construction and defaults to non-debug values, e.g.
Match.debug = {
enabled = false,
vsFramesBehind = 0
}The client can then update the match configuration from its client configuration after it was created and Match only needs to check values internally that are guaranteed to exist.
Endaris
added a commit
to Endaris/panel-game
that referenced
this pull request
Nov 18, 2025
This reverts commit 7fd334e.
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.
Repost of this commit since it was reverted.
The Debug Settings system provides runtime-configurable debug features through a UI overlay. Settings are persisted to config.debug and can be accessed anywhere via the DebugSettings singleton.
Also provide a way to generate the debug menu and surface it from a debug button.
To support this new button and future overlays, add a root element to the game so we can order overlays
Updated Bool Selector to size correctly
Updated Style Selector creation to make sure sizing and layout is right Reload main menu when you come back to it
Make navigation stack a UIElement so it works with touch handling
Fixes #697