Skip to content

[HL2MP] Enable radio style menus - #2070

Open
speedvoltage wants to merge 4 commits into
ValveSoftware:masterfrom
speedvoltage:feature/hl2mp-radio-menus
Open

speedvoltage wants to merge 4 commits into
ValveSoftware:masterfrom
speedvoltage:feature/hl2mp-radio-menus

Conversation

@speedvoltage

@speedvoltage speedvoltage commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

This has been a long standing issue. Radio menus have never been enabled in HL2DM and menus as a whole rely on an outdated design, and even got broken in the anniversary update without a client-side fix. Besides, cl_showpluginmessages defaults to 0, which does not help as well.

This PR is therefore simple. Enable those radio menus for better and quicker admin access.
20260909115907_1
20260909115912_1

20260909115904_1

The advantage here is that this does not need to rely on cl_showpluginmessages. Those menus will show regardless of the value of this cvar.

Bonus: I might be in the minority here, but I hate the radio menus, just because it interfered in gameplay way back in the CSS days when RTV menus opened during a firefight or when an admin decided to initiate a vote and you wanted to hit 1, 2 or 3 to switch weapons but instead interacted with the menu. So I added cl_radio_menus so that when disabled, it goes back to using the menu panels. However, I also redesigned those panels to also not have to deal with cl_showpluginmessages.
image

Issue:
HL2MP's numbered menus lack the HUD resources and input handling needed for plugin menus.

Fix:
Enable ShowMenu rendering with correct selection keys, fragment assembly and menu lifetimes. Add archived cl_radio_menus, enabled by default, so each player can choose HUD radio menus or an ESC dialog.
Issue:
ESC menus waste space and reset their position.

Fix:
Use a compact styled dialog and save its screen position.
Issue:
New ESC menu pages reset after dragging, and their custom styling differs from GameUI.

Fix:
Save the current position before layouts and on HUD ticks. Use the native GameUI scheme, frame, fonts and controls.
Issue:
Disabling radio menus leaves pending dialogs hidden without a HUD prompt.

Fix:
Show a top-left ESC reminder while a dialog menu is waiting.
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