Upvote Upvoted 103 Downvote Downvoted
1 2 3 4 ⋅⋅ 6
Spec Tools
posted in Projects
1
#1
0 Frags +

This is the beta public release of a spectating tools plugin I've been working on. It adds a number of potentially useful features to the display for anyone watching a game on STV or analysing a demo. There's no real expectation that this would be useful for a cast on stream as it produces a lot of clutter, but if someone wants to use it I certainly have no objections.

You must use this with -insecure launch option as it only works in SourceTV and with demos. Don't forget to remove this when going back to play on a normal server.

The features described in more detail below are:
Health bar appearing over players
Health numbers appearing over players
Player names appearing under players
Minimap/radar of player positions
Player switching commands based on class and team without having to know names

This is an "everything on" video which is not recommended for use but illustrates what's available
http://www.mediafire.com/watch/b935ykt3119lhyx/output.mp4

All commands are detailed in the readme in the relevant zip and below. This should work with any Hud as long as it has a default font defined. Without that it will probably crash, I don't know if it's even possible to make a hud without one so this may not be a problem. I've tested it with a handful and had no problems but your mileage may vary. If you get a crash you can try changing hud.

Health Bar
Some details are described in this image:
http://www.mediafire.com/convkey/3422/vhjyebkm9ya7cxcfg.jpg?size_id=7

Command: spec_player_health 1/0 for on/off

The colour of the health bars can be customised using RGB values. This is done with the same commands as bluee's advspec plugin
Command: health_color [r|b] [0-255] [0-255] [0-255]
This is an example of altered colours
http://www.mediafire.com/convkey/8cca/gu4wr8s9tuhw6vtfg.jpg?size_id=6

Health Numbers
Some details shown here:
http://www.mediafire.com/convkey/b06c/c8twj6vcc3f1c04fg.jpg?size_id=6

Command : spec_player_health_numbers 1/0 (on/off)
The font is the hud default. It doesn't scale as it becomes more distant, a specific type of font is required for this and no one uses them.

Player Names
Some details shown here:
http://www.mediafire.com/convkey/2923/ya8qi9l76egn0czfg.jpg?size_id=6

Command: spec_player_name 1/0 (on/off)
The same font notes as with health numbers above apply here.

Everything works in first person as show here
http://www.mediafire.com/convkey/b941/6f8ze1rhicygy59fg.jpg

Controlling clutter
With everything on it becomes very cluttered and the wallhack effect (everything is visible through walls) can be a problem. Unfortunately there's no easy way I'm aware of to establish line of sight through in-game geometry. To alleviate the problem I've implemented an alternative, a variable strength of fade-out over distance. These screenshots illustrate the effect
http://www.mediafire.com/convkey/d1c0/edo9yfvbfmjkbiefg.jpg
http://www.mediafire.com/convkey/b2c8/yja8199onf3z73tfg.jpg
http://www.mediafire.com/convkey/c83b/lajz74a4a4aj5wqfg.jpg

Command: spec_player_fade_strength <fractional multiple of default fade strength>

Minimap
To use this effectively you must download the texture pack as well
I'm not really entirely happy with this feature but it can be useful so I'm making it available. Problems include static orientation and the player positions aren't perfect on every map.
This shows the default map when initially invoked
http://www.mediafire.com/convkey/978c/m3xmx2yv7i5ij47fg.jpg

The map can be repositioned, resized and class icons can be used for the players as show here
http://www.mediafire.com/convkey/8824/a6oohoesr6i2re8fg.jpg?size_id=6

Commands:
spec_player_radar 1/0 to (on/off)
spec_player_radar_vertical_pos <pixel value> 0 is the top of the window
spec_player_radar_horizontal_pos <pixel value> 0 is the leftmost position
spec_player_radar_size <fractional multiple of default map size> use values like 1.5, 2, etc to multiply the minimap size from the default size
spec_player_radar_icons 1/0 (on/off)
spec_player_radar_icon_size <width in pixels> use this to control the size of the player icons to work with the map size you select

Ideally I'd have liked to make it possible to rotate the map to match the free cam or spectated player rotation, but there is no reliable way I've found to identify the spectated player without making the game crash. If you know of something idiotically simple I'm missing for client plugins to get this info from STV demos I would like to know.

Player Selections
I've added a command to allow player selection based on team and class without having to know names.

Command: spec_player_cc <team> <class> <skip - optional> where team is 2 for red or 3 for blu.
Class numbers are: 3 = soldier, 5 = medic, 1 = scout, 2 = sniper, 4 = demo, 9 = engie, 7 = pyro, 8 = spy, 6 = heavy (TF2's internal numbers)
Skip 0 = off, 1 = on

The first 2 parameters should be obvious, but the skip parameter needs explanation. In a 6v6 game there are usually two soldiers and two scouts, so to access the second soldier or scout set the skip parameter to 1 to skip over the first of the selected class.

Obviously if a player off-classes then things may become confused, but you'll just have to have your binds setup and your eyes open to know when it happens. This is the disadvantage of using a class based select over name, but it's certainly useful for highlander.

So to spectate the first red soldier
spec_player_cc 2, 3

And to spectate the second red soldier
spec_player_cc 2, 3, 1

Downloads & Installing
The downloads come in two parts, the plugin itself and a texture pack for the minimap. The plugin is here:
http://tf2playerdatagetter.azurewebsites.net/spectools/spectools_b_0206.zip

This should be extracted into the tf\custom folder so you end up with tf\custom\spectools\addons\spec_tools.dll and other files, including the readme

The minimap textures can be downloaded from here:
http://tf2playerdatagetter.azurewebsites.net/spectools/radar_maps_2.zip

I can't get these to work in the custom folder so I think they have to be extracted to the tf\materials folder, so you end up with tf\materials\radar\ and a variety of vtf and vmt files.

Other Notes
As far as I can see most things work on a first person demo except the map detection so you tend to end up with a useless default texture.
If you're playing a map outside the included group (granary, badlands, Gullywash, Metalworks, Viaduct Pro, Snakewater & Badwater) you will probably get Granary.
I've tested on varying resolutions and things have worked OK but I think this is potentially suspect so you may have problems with an unusual resolution

Open Source?
Unfortunately the quality of code is so fucking shameful I'll have to refactor it to an acceptable standard before any source release, which may or may not get done.

Roadmap:
Add more maps (extremely tedious process)
Rotating minimap if I ever figure it out
? - make requests, you never know I might implement them

This is the beta public release of a spectating tools plugin I've been working on. It adds a number of potentially useful features to the display for anyone watching a game on STV or analysing a demo. There's no real expectation that this would be useful for a cast on stream as it produces a lot of clutter, but if someone wants to use it I certainly have no objections.

You must use this with -insecure launch option as it only works in SourceTV and with demos. Don't forget to remove this when going back to play on a normal server.

The features described in more detail below are:
Health bar appearing over players
Health numbers appearing over players
Player names appearing under players
Minimap/radar of player positions
Player switching commands based on class and team without having to know names

This is an "everything on" video which is not recommended for use but illustrates what's available
http://www.mediafire.com/watch/b935ykt3119lhyx/output.mp4

All commands are detailed in the readme in the relevant zip and below. This should work with any Hud as long as it has a default font defined. Without that it will probably crash, I don't know if it's even possible to make a hud without one so this may not be a problem. I've tested it with a handful and had no problems but your mileage may vary. If you get a crash you can try changing hud.


[b]Health Bar[/b]
Some details are described in this image:
http://www.mediafire.com/convkey/3422/vhjyebkm9ya7cxcfg.jpg?size_id=7

Command: spec_player_health 1/0 for on/off

The colour of the health bars can be customised using RGB values. This is done with the same commands as bluee's advspec plugin
Command: health_color [r|b] [0-255] [0-255] [0-255]
This is an example of altered colours
http://www.mediafire.com/convkey/8cca/gu4wr8s9tuhw6vtfg.jpg?size_id=6


[b]Health Numbers[/b]
Some details shown here:
http://www.mediafire.com/convkey/b06c/c8twj6vcc3f1c04fg.jpg?size_id=6

Command : spec_player_health_numbers 1/0 (on/off)
The font is the hud default. It doesn't scale as it becomes more distant, a specific type of font is required for this and no one uses them.


[b]Player Names[/b]
Some details shown here:
http://www.mediafire.com/convkey/2923/ya8qi9l76egn0czfg.jpg?size_id=6

Command: spec_player_name 1/0 (on/off)
The same font notes as with health numbers above apply here.


Everything works in first person as show here
http://www.mediafire.com/convkey/b941/6f8ze1rhicygy59fg.jpg


[b]Controlling clutter[/b]
With everything on it becomes very cluttered and the wallhack effect (everything is visible through walls) can be a problem. Unfortunately there's no easy way I'm aware of to establish line of sight through in-game geometry. To alleviate the problem I've implemented an alternative, a variable strength of fade-out over distance. These screenshots illustrate the effect
http://www.mediafire.com/convkey/d1c0/edo9yfvbfmjkbiefg.jpg
http://www.mediafire.com/convkey/b2c8/yja8199onf3z73tfg.jpg
http://www.mediafire.com/convkey/c83b/lajz74a4a4aj5wqfg.jpg

Command: spec_player_fade_strength <fractional multiple of default fade strength>


[b]Minimap[/b]
To use this effectively you must download the texture pack as well
I'm not really entirely happy with this feature but it can be useful so I'm making it available. Problems include static orientation and the player positions aren't perfect on every map.
This shows the default map when initially invoked
http://www.mediafire.com/convkey/978c/m3xmx2yv7i5ij47fg.jpg

The map can be repositioned, resized and class icons can be used for the players as show here
http://www.mediafire.com/convkey/8824/a6oohoesr6i2re8fg.jpg?size_id=6

Commands:
spec_player_radar 1/0 to (on/off)
spec_player_radar_vertical_pos <pixel value> 0 is the top of the window
spec_player_radar_horizontal_pos <pixel value> 0 is the leftmost position
spec_player_radar_size <fractional multiple of default map size> use values like 1.5, 2, etc to multiply the minimap size from the default size
spec_player_radar_icons 1/0 (on/off)
spec_player_radar_icon_size <width in pixels> use this to control the size of the player icons to work with the map size you select

Ideally I'd have liked to make it possible to rotate the map to match the free cam or spectated player rotation, but there is no reliable way I've found to identify the spectated player without making the game crash. If you know of something idiotically simple I'm missing for client plugins to get this info from STV demos I would like to know.


[b]Player Selections[/b]
I've added a command to allow player selection based on team and class without having to know names.

Command: spec_player_cc <team> <class> <skip - optional> where team is 2 for red or 3 for blu.
Class numbers are: 3 = soldier, 5 = medic, 1 = scout, 2 = sniper, 4 = demo, 9 = engie, 7 = pyro, 8 = spy, 6 = heavy (TF2's internal numbers)
Skip 0 = off, 1 = on

The first 2 parameters should be obvious, but the skip parameter needs explanation. In a 6v6 game there are usually two soldiers and two scouts, so to access the second soldier or scout set the skip parameter to 1 to skip over the first of the selected class.

Obviously if a player off-classes then things may become confused, but you'll just have to have your binds setup and your eyes open to know when it happens. This is the disadvantage of using a class based select over name, but it's certainly useful for highlander.

So to spectate the first red soldier
spec_player_cc 2, 3

And to spectate the second red soldier
spec_player_cc 2, 3, 1


[b]Downloads & Installing[/b]
The downloads come in two parts, the plugin itself and a texture pack for the minimap. The plugin is here:
http://tf2playerdatagetter.azurewebsites.net/spectools/spectools_b_0206.zip

This should be extracted into the tf\custom folder so you end up with tf\custom\spectools\addons\spec_tools.dll and other files, including the readme

The minimap textures can be downloaded from here:
http://tf2playerdatagetter.azurewebsites.net/spectools/radar_maps_2.zip

I can't get these to work in the custom folder so I think they have to be extracted to the tf\materials folder, so you end up with tf\materials\radar\ and a variety of vtf and vmt files.

[b]Other Notes[/b]
As far as I can see most things work on a first person demo except the map detection so you tend to end up with a useless default texture.
If you're playing a map outside the included group (granary, badlands, Gullywash, Metalworks, Viaduct Pro, Snakewater & Badwater) you will probably get Granary.
I've tested on varying resolutions and things have worked OK but I think this is potentially suspect so you may have problems with an unusual resolution

Open Source?
Unfortunately the quality of code is so fucking shameful I'll have to refactor it to an acceptable standard before any source release, which may or may not get done.

[b]Roadmap:[/b]
Add more maps (extremely tedious process)
Rotating minimap if I ever figure it out
? - make requests, you never know I might implement them
2
#2
12 Frags +

Thanks:
Biggest possible thanks to bluee for his work on AdvSpec that helped me realise what was possible, and for his help with this one
Admirable (chief tester <3), CX, getawhale, Warhuryeah & Byte for ideas and feedback, and general encouraging noises from many others.

Oh yeah, it works together with the AdvSpec plugin fine, I've had no problems.

New Stuff added 22nd April 2014

Bugs Fixed (hopefully)
Fixed map proportions bug on some resolutions
Fixed health bar appearing in first person for the spectated player. This isn't perfect, it may flicker on briefly every now and then and sometimes causes very occasional flicker amongst other players health bars, but barely noticeable in my testing. I will continue to try to improve it.
Fixed some special characters not displaying properly in player names

Health bar width and height commands
spec_player_health_bar_width <1-x> - sets the maximum width of the health bar in pixels
spec_player_health_bar_height <1-x> - set the height of the health bar in pixels. Note that health bars are still scaled horizontally as they become more distant so making this very high can produce odd visual effects

Floating Text Commands
spec_player_show_text_background <1/0> - shows or hides a dark rectangle behind player overlay text
spec_player_text_border <1/0> - shows/hides a rectangular border around player overlay text
spec_player_text_shadow <1/0> - shows/hides a drop shadow on player overlay text to improve legibility in the absence of a background

New Stuff added 23rd April 2014

Filter effects by player class
This allows a spectator to only see the overlay effects on a specific class or set of classes. By default filtering is off and must be activated as well as have the individual class filters defined.

Activation Command: spec_player_use_class_filters <1/0>
1 or 0 turns the effects filter on or off respectively

Filter Command: spec_player_class_filter <1-9> <1/0>
The first parameter is the class, this follows the same class selection criteria as the player switcher: 3 = soldier, 5 = medic, 1 = scout, 2 = sniper, 4 = demo, 9 = engie, 7 = pyro, 8 = spy, 6 = heavy

The second parameter sets whether effects are shown for a player of the selected class or not. 0, which is the default, means they're not shown. 1 means they are shown.

New Stuff 26th April 2014
Show player stickies - renders a small team coloured circle where a sticky bomb is placed (also highlights rollers I think but they only last a few seconds).

Command spec_player_show_stickies <1/0>

Team Health Bars - shows configurable total team health bars. Requires activation then further configuration commands to show up properly.

Command: spec_player_team_health <1/0> - activates bar
spec_player_team_bar_format [r|b] [0-255] [0-255] [0-255] [t|b] [0-x] [l|r] [0-x] [0-x] [0-x]

[r|b] sets which team bar these settings apply to, r for red and b for blu
[0-255] for the next 3 parameters are the colour of the bar in RGB values
[t|b] is which side the vertical position will be measured from, t for top and b for bottom
[0-x] is how far from the selected side the top of the bar will appear
[l|r] is which side the horizontal position will be measured from, l for left and r for right
[0-x] is how far from the selected side the bar will appear
[0-x] width of bar
[0-x] height of bar

If the bar is positioned relative to the left side it's right side will move as health changes, if positioned relative to the right side it's left side will move (this makes sense when you see it). It only changes in a horizontal direction.

Layout examples:
Big and simple: http://www.mediafire.com/convkey/138f/zswq5dvauxtfw5qfg.jpg?size_id=7
Opposite sides: http://www.mediafire.com/convkey/e8c3/ohxmcsrvgr9xcl7fg.jpg?size_id=a
Centrally aligned: http://www.mediafire.com/convkey/e9e7/ljseb2we82sb7fjfg.jpg?size_id=a
Unobtrusive: http://www.mediafire.com/convkey/281b/7xu1djckvaz508yfg.jpg

Player Health Shown on Damage - a pair of commands to configure player health bars only appearing when they suffer damage (not including overheal decay). There's no way to filter out self-damage so you get them appearing on rollout and rocket jumps. This completely overrides normal health bar behaviour so has to be deactivated to get that back.

Command: spec_player_health_on_hit <1/0> - turns the effect on or off
spec_player_health_on_hit_decay <0-x> - how long the health bar fades in terms of RGB alpha channel values per game frame. Will accept fractional amount such as 0.5. Default is 1.

New Stuff - Added 27th April 2014
Show Medic Uber Info - shows the medic's medigun and charge percentage on floating text to the player's right. It looks like this: http://www.mediafire.com/convkey/fd85/yl605g0gaxd64p3fg.jpg?size_id=5

Command: spec_player_medic_info <1/0>

Show medic changed medigun type message - shows a message when a medic selects a different type of medigun. The colour and position can be customised to enhance visibility. This is bright green in the middle: http://www.mediafire.com/convkey/e0e5/9d3mkrevde2a89tfg.jpg?size_id=7

Commmand: spec_player_uber_change_alert <1/0>
spec_player_uber_change_alert_format <0-255> <0-255> <0-255> <0-x> <0-x>

The first 3 values are the RGB colour commponents, 4th is the left position and 5th is the vertical position. It defaults to white text top left.

New Stuff - May 23rd 2014
New Maps - turbine, upwards, steel, gravel pit

File names - included the version number in the file name so it's a bit clearer what you're downloading. Also moved the download location to webspace with no ads.

Choose fonts - allows you to choose fonts based on entries in the Fonts section of the clientscheme.res file in the hud.
Commands: spec_player_name_font <font name>
spec_player_health_numbers_font <font name>
spec_player_medic_info_font <font name>
spec_player_uber_change_alert_font <font name>

So if the font entry in clientscheme.res looks like this:

		"Regular19"
		{
			"1"
			{
				"name"		"AvenirLTStd-Medium"
				"tall"		"19"
				"additive"		"0"
				"antialias"	"1"
			}
		}

The result looks (slightly ridiculously) like this: http://www.mediafire.com/convkey/62b1/vehx7zm66smvvccfg.jpg?size_id=5

You can obviously choose a more sensible font, although this might suit the uber alert. If you use a font that doesn't exist in the clientscheme.res it may cause crashes or may just not appear. My mileage has varied.

Health bar customisation - outline and overheal colour are configurable by team
Commands: spec_player_health_overheal_color <r|b> <0-255> <0-255> <0-255> <0-x> <0-x>
spec_player_health_outline_color <r|b> <0-255> <0-255> <0-255>

Low health flash - makes the health bar or health text flash when a player's health goes below a configurable threshold between the health bar colour and a team configurable colour

Commands: spec_player_health_flash <1|0> - turns the effect on or off
spec_player_health_flash_speed <0-x> - interval in milliseconds between flashes, default 125
spec_player_health_flash_threshold <0-x> - the health threshold below which the health bar will flash. Default 50
spec_player_health_flash_color <r|b> <0-255> <0-255> <0-255> - the colour the health bar flashes to, configured for each team

Download links in original post updated

Thanks:
Biggest possible thanks to bluee for his work on AdvSpec that helped me realise what was possible, and for his help with this one
Admirable (chief tester <3), CX, getawhale, Warhuryeah & Byte for ideas and feedback, and general encouraging noises from many others.


Oh yeah, it works together with the AdvSpec plugin fine, I've had no problems.

[b]New Stuff[/b] added 22nd April 2014

[b]Bugs Fixed[/b] [size=11](hopefully)[/size]
Fixed map proportions bug on some resolutions
Fixed health bar appearing in first person for the spectated player. This isn't perfect, it may flicker on briefly every now and then and sometimes causes very occasional flicker amongst other players health bars, but barely noticeable in my testing. I will continue to try to improve it.
Fixed some special characters not displaying properly in player names

[b]Health bar width and height commands[/b]
spec_player_health_bar_width <1-x> - sets the maximum width of the health bar in pixels
spec_player_health_bar_height <1-x> - set the height of the health bar in pixels. Note that health bars are still scaled horizontally as they become more distant so making this very high can produce odd visual effects

[b]Floating Text Commands[/b]
spec_player_show_text_background <1/0> - shows or hides a dark rectangle behind player overlay text
spec_player_text_border <1/0> - shows/hides a rectangular border around player overlay text
spec_player_text_shadow <1/0> - shows/hides a drop shadow on player overlay text to improve legibility in the absence of a background

[b]New Stuff[/b] added 23rd April 2014

[b]Filter effects by player class[/b]
This allows a spectator to only see the overlay effects on a specific class or set of classes. By default filtering is off and must be activated as well as have the individual class filters defined.

Activation Command: spec_player_use_class_filters <1/0>
1 or 0 turns the effects filter on or off respectively

Filter Command: spec_player_class_filter <1-9> <1/0>
The first parameter is the class, this follows the same class selection criteria as the player switcher: 3 = soldier, 5 = medic, 1 = scout, 2 = sniper, 4 = demo, 9 = engie, 7 = pyro, 8 = spy, 6 = heavy

The second parameter sets whether effects are shown for a player of the selected class or not. 0, which is the default, means they're not shown. 1 means they are shown.

[b]New Stuff[/b] 26th April 2014
[b]Show player stickies[/b] - renders a small team coloured circle where a sticky bomb is placed (also highlights rollers I think but they only last a few seconds).

Command spec_player_show_stickies <1/0>

[b]Team Health Bars[/b] - shows configurable total team health bars. Requires activation then further configuration commands to show up properly.

Command: spec_player_team_health <1/0> - activates bar
spec_player_team_bar_format [r|b] [0-255] [0-255] [0-255] [t|b] [0-x] [l|r] [0-x] [0-x] [0-x]

[r|b] sets which team bar these settings apply to, r for red and b for blu
[0-255] for the next 3 parameters are the colour of the bar in RGB values
[t|b] is which side the vertical position will be measured from, t for top and b for bottom
[0-x] is how far from the selected side the top of the bar will appear
[l|r] is which side the horizontal position will be measured from, l for left and r for right
[0-x] is how far from the selected side the bar will appear
[0-x] width of bar
[0-x] height of bar

If the bar is positioned relative to the left side it's right side will move as health changes, if positioned relative to the right side it's left side will move (this makes sense when you see it). It only changes in a horizontal direction.

Layout examples:
Big and simple: http://www.mediafire.com/convkey/138f/zswq5dvauxtfw5qfg.jpg?size_id=7
Opposite sides: http://www.mediafire.com/convkey/e8c3/ohxmcsrvgr9xcl7fg.jpg?size_id=a
Centrally aligned: http://www.mediafire.com/convkey/e9e7/ljseb2we82sb7fjfg.jpg?size_id=a
Unobtrusive: http://www.mediafire.com/convkey/281b/7xu1djckvaz508yfg.jpg

[b]Player Health Shown on Damage[/b] - a pair of commands to configure player hea[s][/s]lth bars only appearing when they suffer damage (not including overheal decay). There's no way to filter out self-damage so you get them appearing on rollout and rocket jumps. This completely overrides normal health bar behaviour so has to be deactivated to get that back.

Command: spec_player_health_on_hit <1/0> - turns the effect on or off
spec_player_health_on_hit_decay <0-x> - how long the health bar fades in terms of RGB alpha channel values per game frame. Will accept fractional amount such as 0.5. Default is 1.

[b]New Stuff[/b] - Added 27th April 2014
[b]Show Medic Uber Info[/b] - shows the medic's medigun and charge percentage on floating text to the player's right. It looks like this: http://www.mediafire.com/convkey/fd85/yl605g0gaxd64p3fg.jpg?size_id=5

Command: spec_player_medic_info <1/0>

[b]Show medic changed medigun type message[/b] - shows a message when a medic selects a different type of medigun. The colour and position can be customised to enhance visibility. This is bright green in the middle: http://www.mediafire.com/convkey/e0e5/9d3mkrevde2a89tfg.jpg?size_id=7

Commmand: spec_player_uber_change_alert <1/0>
spec_player_uber_change_alert_format <0-255> <0-255> <0-255> <0-x> <0-x>

The first 3 values are the RGB colour commponents, 4th is the left position and 5th is the vertical position. It defaults to white text top left.

[b]New Stuff[/b] - May 23rd 2014
[b]New Maps[/b] - turbine, upwards, steel, gravel pit

[b]File names[/b] - included the version number in the file name so it's a bit clearer what you're downloading. Also moved the download location to webspace with no ads.

[b]Choose fonts[/b] - allows you to choose fonts based on entries in the Fonts section of the clientscheme.res file in the hud.
Commands: spec_player_name_font <font name>
spec_player_health_numbers_font <font name>
spec_player_medic_info_font <font name>
spec_player_uber_change_alert_font <font name>

So if the font entry in clientscheme.res looks like this:
[code] "Regular19"
{
"1"
{
"name" "AvenirLTStd-Medium"
"tall" "19"
"additive" "0"
"antialias" "1"
}
}[/code]

The result looks (slightly ridiculously) like this: http://www.mediafire.com/convkey/62b1/vehx7zm66smvvccfg.jpg?size_id=5

You can obviously choose a more sensible font, although this might suit the uber alert. If you use a font that doesn't exist in the clientscheme.res it may cause crashes or may just not appear. My mileage has varied.

[b]Health bar customisation[/b] - outline and overheal colour are configurable by team
Commands: spec_player_health_overheal_color <r|b> <0-255> <0-255> <0-255> <0-x> <0-x>
spec_player_health_outline_color <r|b> <0-255> <0-255> <0-255>

[b]Low health flash[/b] - makes the health bar or health text flash when a player's health goes below a configurable threshold between the health bar colour and a team configurable colour

Commands: spec_player_health_flash <1|0> - turns the effect on or off
spec_player_health_flash_speed <0-x> - interval in milliseconds between flashes, default 125
spec_player_health_flash_threshold <0-x> - the health threshold below which the health bar will flash. Default 50
spec_player_health_flash_color <r|b> <0-255> <0-255> <0-255> - the colour the health bar flashes to, configured for each team

Download links in original post updated
3
#3
33 Frags +

holy shit

holy shit
4
#4
4 Frags +

yo. those health bars look awesome

yo. those health bars look awesome
5
#5
4 Frags +

next level shit

next level shit
6
#6
2 Frags +

It's beautiful...

Awesome job! This is amazing!

It's beautiful...

Awesome job! This is amazing!
7
#7
ozfortress
3 Frags +

Very well done

Very well done
8
#8
5 Frags +

Very nice! Anyway of implementing Uber Percentages as an overlay for the medics?

Very nice! Anyway of implementing Uber Percentages as an overlay for the medics?
9
#9
5 Frags +

Great to see this released, fantastic work man

Great to see this released, fantastic work man
10
#10
7 Frags +

open source?
I know you said the quality of the code needs improving, don't worry this happens to the best of us.
I for one would love to able to see the source code and mess around with it.

open source?
I know you said the quality of the code needs improving, don't worry this happens to the best of us.
I for one would love to able to see the source code and mess around with it.
11
#11
1 Frags +

Amazing

Amazing
12
#12
0 Frags +

Would it be possible to control this stuff? It looks great but it looks like during pushes it'd be too big and whatnot, and doesn't fit with the style of a lot of huds. Even if it's just the sourcecode being public, customizability is good.

Would it be possible to control this stuff? It looks great but it looks like during pushes it'd be too big and whatnot, and doesn't fit with the style of a lot of huds. Even if it's just the sourcecode being public, customizability is good.
13
#13
1 Frags +
JarateKingWould it be possible to control this stuff? It looks great but it looks like during pushes it'd be too big and whatnot, and doesn't fit with the style of a lot of huds. Even if it's just the sourcecode being public, customizability is good.

For text elements the font used is the hud default, so that should fit in with a hud style wise but may not be an ideal size. The text size problem is the result of TF2 only resizing bitmap fonts (which no one uses) so there's no easy way to just change the size with distance from the camera.

It might be an idea to make a font selectable by users if they know the names of other fonts in their hud, I should probably take more of a look at it in general to see if I can extract more useful font information from the hud schema and make changes based on it available via the plugin. It's quite ime consuming to work with though as mistakes made when working with fonts tend to cause crashes.

[quote=JarateKing]Would it be possible to control this stuff? It looks great but it looks like during pushes it'd be too big and whatnot, and doesn't fit with the style of a lot of huds. Even if it's just the sourcecode being public, customizability is good.[/quote]
For text elements the font used is the hud default, so that should fit in with a hud style wise but may not be an ideal size. The text size problem is the result of TF2 only resizing bitmap fonts (which no one uses) so there's no easy way to just change the size with distance from the camera.

It might be an idea to make a font selectable by users if they know the names of other fonts in their hud, I should probably take more of a look at it in general to see if I can extract more useful font information from the hud schema and make changes based on it available via the plugin. It's quite ime consuming to work with though as mistakes made when working with fonts tend to cause crashes.
14
#14
6 Frags +

this is fucking incredible

this is fucking incredible
15
#15
1 Frags +

wow

wow
16
#16
4 Frags +

is there a video with all these things in action?

is there a video with all these things in action?
17
#17
1 Frags +

You could do a lot with some binds to change the size of the minimap to fill the whole screen during stalemates and rollouts, would really give a better sense of perspective of what's going on.

You could do a lot with some binds to change the size of the minimap to fill the whole screen during stalemates and rollouts, would really give a better sense of perspective of what's going on.
18
#18
15 Frags +

Jon is the Jesus of TF2, he is leading us towards a new life of TF2.

Jon is the Jesus of TF2, he is leading us towards a new life of TF2.
19
#19
1 Frags +
GentlemanJonJarateKingWould it be possible to control this stuff? It looks great but it looks like during pushes it'd be too big and whatnot, and doesn't fit with the style of a lot of huds. Even if it's just the sourcecode being public, customizability is good.For text elements the font used is the hud default, so that should fit in with a hud style wise but may not be an ideal size. The text size problem is the result of TF2 only resizing bitmap fonts (which no one uses) so there's no easy way to just change the size with distance from the camera.

It might be an idea to make a font selectable by users if they know the names of other fonts in their hud, I should probably take more of a look at it in general to see if I can extract more useful font information from the hud schema and make changes based on it available via the plugin. It's quite ime consuming to work with though as mistakes made when working with fonts tend to cause crashes.

Well, if you've got the time to do it then would it be possible to set the black box backgrounds to be a border, and change a whole bunch of variables like the height/width of the health bar or the offsets for each element to be editable?

[quote=GentlemanJon][quote=JarateKing]Would it be possible to control this stuff? It looks great but it looks like during pushes it'd be too big and whatnot, and doesn't fit with the style of a lot of huds. Even if it's just the sourcecode being public, customizability is good.[/quote]
For text elements the font used is the hud default, so that should fit in with a hud style wise but may not be an ideal size. The text size problem is the result of TF2 only resizing bitmap fonts (which no one uses) so there's no easy way to just change the size with distance from the camera.

It might be an idea to make a font selectable by users if they know the names of other fonts in their hud, I should probably take more of a look at it in general to see if I can extract more useful font information from the hud schema and make changes based on it available via the plugin. It's quite ime consuming to work with though as mistakes made when working with fonts tend to cause crashes.[/quote]
Well, if you've got the time to do it then would it be possible to set the black box backgrounds to be a border, and change a whole bunch of variables like the height/width of the health bar or the offsets for each element to be editable?
20
#20
1 Frags +
JarateKingWell, if you've got the time to do it then would it be possible to set the black box backgrounds to be a border, and change a whole bunch of variables like the height/width of the health bar or the offsets for each element to be editable?

I'll add it to the to-do list, it should be pretty simple to set up most of it.

[quote=JarateKing]Well, if you've got the time to do it then would it be possible to set the black box backgrounds to be a border, and change a whole bunch of variables like the height/width of the health bar or the offsets for each element to be editable?[/quote]
I'll add it to the to-do list, it should be pretty simple to set up most of it.
21
#21
2 Frags +

This looks awesome. I don't know if anyone else would be interested, or if it's an easy thing to do, but I think it would be a neat feature if you had a team-wide healthbar for each side next to each other, so we can see the overall health of each team during fights. Not incredibly useful, but might still be a bit insightful.

Also please open source it, I've been slowly trying to pick up on C++ and Source stuff and it would be cool to see how you did this (plus then I could look into making the change myself :V).

This looks awesome. I don't know if anyone else would be interested, or if it's an easy thing to do, but I think it would be a neat feature if you had a team-wide healthbar for each side next to each other, so we can see the overall health of each team during fights. Not incredibly useful, but might still be a bit insightful.

Also please open source it, I've been slowly trying to pick up on C++ and Source stuff and it would be cool to see how you did this (plus then I could look into making the change myself :V).
22
#22
0 Frags +

thats pretty sweet, could easily become cluttered, but is a awesome feature.

thats pretty sweet, could easily become cluttered, but is a awesome feature.
23
#23
5 Frags +

This could be really useful if you have a laptop or another PC so you can run a second instance of TF2 next to the one you're casting with, zooming out above the map and disabling the fade so you always have an overview of the entire map and the players without cluttering what the spectators see.

And I'll just join in with the others requesting an open source, not just for learning from it, but maybe to port it to Linux, so I can use my laptop to try out the aforementioned method.

This could be really useful if you have a laptop or another PC so you can run a second instance of TF2 next to the one you're casting with, zooming out above the map and disabling the fade so you always have an overview of the entire map and the players without cluttering what the spectators see.

And I'll just join in with the others requesting an open source, not just for learning from it, but maybe to port it to Linux, so I can use my laptop to try out the aforementioned method.
24
#24
4 Frags +
shiznois there a video with all these things in action?

I just quickly capped this
http://www.mediafire.com/watch/b935ykt3119lhyx/output.mp4

It's got everything on at once which is not recommended but gives an idea of the info available. The map can be made much bigger, repositioned, etc. You can see the scout Bash escapes by the skin of his teeth at the end.

The host has compressed the shit out of it.

[quote=shizno]is there a video with all these things in action?[/quote]
I just quickly capped this
http://www.mediafire.com/watch/b935ykt3119lhyx/output.mp4

It's got everything on at once which is not recommended but gives an idea of the info available. The map can be made much bigger, repositioned, etc. You can see the scout Bash escapes by the skin of his teeth at the end.

The host has compressed the shit out of it.
25
#25
1 Frags +
SuyoAnd I'll just join in with the others requesting an open source, not just for learning from it, but maybe to port it to Linux, so I can use my laptop to try out the aforementioned method.

I'm not opposed to making it open but the code really needs sorting out beforehand. Seeing as there's interest I'll push it up the priority list of things to do.

[quote=Suyo]And I'll just join in with the others requesting an open source, not just for learning from it, but maybe to port it to Linux, so I can use my laptop to try out the aforementioned method.[/quote]
I'm not opposed to making it open but the code really needs sorting out beforehand. Seeing as there's interest I'll push it up the priority list of things to do.
26
#26
ozfortress
1 Frags +

Really well made, very impressed

Would it be possible to modify the name bars? Take the picture below for example: Hoosier's and Swanny's name bars are a lot longer than what they have to be. And with the health numbers there's extra space above the number which can be cut out. That's just an OCD thing from me, very insignificant issue.

Love the work you are doing! Setting very high standards~

http://puu.sh/8hA7S.jpg

Really well made, very impressed

Would it be possible to modify the name bars? Take the picture below for example: Hoosier's and Swanny's name bars are a lot longer than what they have to be. And with the health numbers there's extra space above the number which can be cut out. That's just an OCD thing from me, very insignificant issue.

Love the work you are doing! Setting very high standards~

http://puu.sh/8hA7S.jpg
27
#27
2 Frags +

Wow Jon, you've gone above and beyond what could have been expected from STVs, this has serious potential to further improve the production quality of casts. Great work!

EDIT: Also, does this break during pauses or is it like the medic charge bars?

Wow Jon, you've gone above and beyond what could have been expected from STVs, this has serious potential to further improve the production quality of casts. Great work!

EDIT: Also, does this break during pauses or is it like the medic charge bars?
28
#28
0 Frags +
oblaciteHoosier's and Swanny's name bars are a lot longer than what they have to be.

It's a bug handling the special characters in their names. Can you provide a link to the stv demo?

[quote=oblacite]Hoosier's and Swanny's name bars are a lot longer than what they have to be. [/quote]
It's a bug handling the special characters in their names. Can you provide a link to the stv demo?
29
#29
ozfortress
0 Frags +
GentlemanJonoblaciteHoosier's and Swanny's name bars are a lot longer than what they have to be. It's a bug handling the special characters in their names. Can you provide a link to the stv demo?

PM sent. Cheers.

[quote=GentlemanJon][quote=oblacite]Hoosier's and Swanny's name bars are a lot longer than what they have to be. [/quote]
It's a bug handling the special characters in their names. Can you provide a link to the stv demo?[/quote]

PM sent. Cheers.
30
#30
2 Frags +
NusemanAlso, does this break during pauses or is it like the medic charge bars?

Haven't checked, but I imagine it will still work. The pause break is a bug in Valve's HUD code.

[quote=Nuseman]Also, does this break during pauses or is it like the medic charge bars?[/quote]

Haven't checked, but I imagine it will still work. The pause break is a bug in Valve's HUD code.
1 2 3 4 ⋅⋅ 6
Please sign in through STEAM to post a comment.