halflife icon indicating copy to clipboard operation
halflife copied to clipboard

HL25 (Linux Native) - Multiplayer scoreboard doesn't appear

Open ceeb9 opened this issue 2 years ago • 13 comments

Pressing tab, or whatever the multiplayer scoreboard is bound to, doesn't do anything.

ceeb9 avatar Nov 18 '23 05:11 ceeb9

try to bind tab +showscores

SanyaSho avatar Nov 18 '23 06:11 SanyaSho

Still doesn't do anything. Typing +showscores in console doesn't do anything either.

ceeb9 avatar Nov 18 '23 07:11 ceeb9

Can confirm. It looks like all vgui1 elements don't show up. Motd and spectatator menu don't render as well.

FreeSlave avatar Nov 18 '23 09:11 FreeSlave

Also includes currently active voice chatters (that's supposed to show up on the right side), and makes it completely impossible to join a team in Team Fortress Classic (effectively rendering it unplayable).

nixRidge avatar Nov 18 '23 18:11 nixRidge

+1. Gentoo Linux I have this issue.

WhitleyStriber avatar Nov 22 '23 01:11 WhitleyStriber

Interestingly this works on my laptop (Arch Linux, same as my desktop), which has a Radeon RX Vega 7 integrated graphics chip, in the Ryzen 5 5600H. Can see the scoreboard just fine on OpenGL and software rendering.

My desktop, where it doesn't work, has a Radeon RX 6700 XT.

The MOTD does not show up on either machine, however.

Not sure if this info is at all helpful, but putting it here anyway.

nixRidge avatar Nov 26 '23 00:11 nixRidge

~~Latest patch fixed scoreboard for me on my desktop PC =) (29th of November, 19:30 CET)~~

~~However, the end of round scoreboard, MOTD, and voice chatters still do not show up. But in-game scoreboard is the most important out of those four things for sure.~~

It did not, see comment below.

nixRidge avatar Nov 29 '23 18:11 nixRidge

WAIT, I just found something weird. I have three 1080p monitors, so HL1 on left monitor is position 0,0, keep this in mind.

When I play HL1 on my left monitor, the MOTD, scoreboard, voice chatters, end-of-round scoreboard, they ALL appear! But when I move it to my middle or right monitor, it does not work anymore. Hopefully this is a good clue to what may be causing the issue.. Also explains why it works on my laptop, since it only has one screen.

Edit: Can confirm that the game behaves as expected as long as it's on the leftmost screen as defined by KDE Plasma settings, with any screen configuration and amount of screens.

nixRidge avatar Nov 29 '23 18:11 nixRidge

@FridgeRacer nice finding! I too have Half-Life forced to run on the right monitor (I had to force it because unlike Source games HL didn't detect the primary screen). If I run it on the leftmost monitor, the vgui panels show just fine.

FreeSlave avatar Nov 30 '23 10:11 FreeSlave

I tried putting my left monitor "above" my main, middle monitor in the KDE Plasma settings, and it doesn't work then either. If the left monitor is "below" the main monitor, it works fine. Examples:

Assuming the Philips monitor is the desired monitor to play on, this works:

bilde bilde

These do NOT work:

bilde bilde

Half-Life MUST be played on the top AND left monitor. I.e. the monitor it spawns on, position 0,0 pixels as defined by the desktop environment. If it's moved away from the monitor it wants to be on, none of the elements work. If it's moved back to where the window spawned, they start working again.

nixRidge avatar Dec 01 '23 19:12 nixRidge

Can we have this issue prioritized somehow? This needs to be fixed. Impossible to play HL deathmatch or TFC like this.

FreeSlave avatar Nov 03 '24 12:11 FreeSlave

As a temporary workaround, you can trick the game into thinking it is spawning its window at 0,0 by using gamescope.

I won't go over its usage entirely in this comment as it is described in detail in the official repository linked above, but I am enjoying a fully functional experience by launching Half-Life like this (set the launch options to something like this, adjust to your own setup):

gamescope -w 1920 -h 1080 -W 1920 -H 1080 -r 60 -b --force-grab-cursor -- gamemoderun %command%

What each option does (click to expand)
  • -w -h is the rendering resolution for the game
  • -W -H is the monitor/output resolution
  • -r is refresh rate/framerate
  • -b is for borderless window
  • --force-grab-cursor is necessary at least on my setup as the cursor doesn't get captured otherwise.
  • gamemoderun simply enables Feral GameMode, entirely optional.

By spawning Half-Life in gamescope, and in effect desktop position 0,0, VGUI 1 elements work perfectly fine.

As a suggestion to Valve, why not start shipping gamescope as an option in the compatibility tools menu, directly in Steam? Fixing the actual issue itself is of course preferable, but in some cases it's probably, understandably, not worth the time investment. I wouldn't want to be the one to dig into 25+ year old code and fix a Linux port specific issue either..

nixRidge avatar Nov 19 '24 22:11 nixRidge

If it's a VGUI1 specific issue I think the code for that is from about 2001-2002. The 2003 "green Steam" look was VGUI 1

sabianroberts avatar Nov 20 '24 15:11 sabianroberts