I've expanded on the original post, so here are some quick reference links to anyone new passing through. There's a lot of text at this point, so I recommend just clicking through some of the sample images for the various designs linked below to get started.
Design List
______________________________________________________________________________________________
Original Match Hud
I created a modified match hud (the player info section listed at the top of the screen) that presents information in a much more useful way than the default. To be very clear, this isn't an entirely standalone hud. This is just a modification that you can append to your existing custom huds. I mostly focused on formatting for competitive play so it gets a bit cluttered (names especially) with 24 players, but I think it's still quite usable in that form.
Sample Images
6v6
6v6
9v9
12v12
Installation
This takes some minor hud editing knowledge but it's a pretty simple process overall. In short, just add the match hud source then add fonts. This section is only lengthy in an effort to make it as clear as possible.
Do not overwrite entire files. Each pastebin source should be pasted inside of existing files as shown below.
- Match Hud Source
Paste this in your hudmatchstatus.res file."Resource/UI/HudMatchStatus.res"
{
*Paste here* (Overwrite your "TeamStatus" block if it exists)
...
- Match Hud Font Source
Paste this in clientscheme.res (or wherever your hud defines your fonts, potentially in something like resource/scheme/fonts_clientscheme.res).Scheme
{
...
Fonts
{
*Paste here*
...
If your existing hud does not already include Cerbetica_edited.ttf (rayshud uses it), you'll want to either change the font used in the section above to one included in your hud (look at the list under CustomFontFiles) or just add Cerbetica_edited.ttf. To add it
- Custom Font Source
Paste this in clientscheme.res. Scheme
{
...
CustomFontFiles
{
*Paste here* (be sure to update the number at the top)
...
- Cerbetica_edited File (straight from rayshud)
Add this file in your resource -> fonts directory.
General Notes
- You may need to move your kill feed down in hudlayout.res. Look for HudDeathNotice -> ypos. I opted to just let my respawn timers sit on top of the kill feed but that's easily changed.
- I've only tested on 2560x1440 so I'm not quite sure how this will look at other resolutions.
_____________________________________________________________________________________________
Customization Notes
If you want modify the match hud yourself, you'll want to watch out for the following.
- Beware that hud_reloadscheme alone isn't enough to see your updated changes for any parameters within playerpanels_kv. Your changes need to trigger a refresh of the entire field as well. Perhaps there's a better way of doing this, but I settled on modifying TeamStatus -> max_size along with my changes inside playerpanels_kv then calling hud_reloadscheme each time. The max_size change seems to be enough for the match hud to be reevaluated. Note that I believe max_size only has an effect on teams with 6 players or fewer. If you have 7 or more players on your team, team1_max_expand and team2_max_expand are used. Thus, if you're using this trick, make sure you have 6 or fewer players on your team or your changes won't appear.
- Lots of parameters and features are broken as far as I can tell because Valve didn't bother to finish implementing what they weren't using. Every block below respawntime in my file is disabled. The death and skull panels work, but I couldn't get anything useful out of the other disabled sections (which includes chargeamount sadly). Let me know if you get one of these features working.
- The background underneath your own player indicator seems to be forced to a brighter color and can't be modified.
- Player indicators are only expandable horizontally as far as I can tell so I don't believe you would be able to put them on the sides of your screen stacked vertically.
Some design factors you might want to keep in mind.
- Easy class identification
- Easy dead player identification
- Clear health identification
- Retaining team colors (you could arguably go without this)
- Name clarity and number of displayed characters
- Screen space usage
I think I managed a pretty good balance here, but me know if you have any suggestions! I'd love to see what others can accomplish.