Upvote Upvoted 20 Downvote Downvoted
huge_status_monitor
1
#1
19 Frags +

Reposting this from natf2 before it disappears. At some point, I'll update this so it can work with demo and log files.

It would be nice if, while watching SourceTV, you could catch all of the frags. spec_autodirector sort of does this, but it does it at the worst possible third person camera angles imaginable. I'm sure more people than just me have played around with "spec_autodirector 1;firstperson" binds to try to get around this, but the autodirector doesn't kick in until after a few seconds, so this doesn't really work. Hence, I decided to make my own, and wound up with the huge_status_monitor.

Download: http://dl.dropbox.com/u/29208222/huge_status_monitor.zip

Reposting this from natf2 before it disappears. At some point, I'll update this so it can work with demo and log files.

It would be nice if, while watching SourceTV, you could catch all of the frags. spec_autodirector sort of does this, but it does it at the worst possible third person camera angles imaginable. I'm sure more people than just me have played around with "spec_autodirector 1;firstperson" binds to try to get around this, but the autodirector doesn't kick in until after a few seconds, so this doesn't really work. Hence, I decided to make my own, and wound up with the huge_status_monitor.

Download: http://dl.dropbox.com/u/29208222/huge_status_monitor.zip
2
#2
19 Frags +

What does this do, specifically? It uses a part of SourceLib https://github.com/frostschutz/SourceLib to mimic the request you make to a server when you do "view game info" on someone through steam and collects the results. It tracks the change in frags for each player over a number of intervals (default 9 intervals, 10s each if the tv_delay is 90s) and fills a queue with the top-fragging player over each interval (taking into consideration frags that occur in future intervals, but with a lower weight). Once the SourceTV has caught up to when those frags happened on the server, we write a cfg file to spectate the best player from that interval. Hence, all you need to do as a spectator is to bind a key to "exec spec_best" and press it periodically to switch to the view of whoever is about to go huge.

I find this particularly useful for when I'm casting and streaming, since I can pay minimal attention to the camera while talking and still get a good picture of what's going on. I'm happy enough just using this script for my own benefit, but it should also be useful for other casters, streamers, and really just anyone who wants to watch a match and catch the maximum number of frags in first person.

To use this, the first thing you'll need is python http://www.python.org/getit/ . I recommend getting python 2.x.x; the 3.x.x have some issues on windows that may prevent this script from running. Then, drop the files from the archive into your tf/cfg folder, run cmd, and cd your way into your tf/cfg folder (I might make a GUI for this someday, but this is command-line only!). You can check out the options with "huge_status_monitor.py -h". The minimum that this script needs to run is the server IP. If the port isn't 27015, you'll also need to provide that (note that you need to give the server info, not info for the SourceTV or relay -- on ESEA you can get the IP/port from viewing game info on a friend, or going into the client and viewing server info from there). The tv_delay is assumed to be 90s (what ESEA uses); you'll have to change that if there's a different delay (and possibly modify the period count as well, depending on what you're after -- more sprees, or more individual frags?). Once that's all taken care of, bind a key to "exec spec_best" while you're in game, and have fun. Here's some sample output from the match I watched tonight (you won't see this if you don't give -v, and you don't really need to see it if you're just pressing your bind ingame)

> huge_status_monitor.py -i 206.217.135.162 -p 27267 -v
Monitor initialized! Now running...
Best is Shwan.vec with 1 points
Best is Shwan.vec with 1 points
Best is Shwan.vec with 3 points
Best is DougyG.vec with 2 points
Best is DougyG.vec with 4 points
Best is thrckstr.vec with 4 points
Best is rb-^SYOPS with 1 points
...

Note that in its current implementation, it gives the next player to watch a bit earlier than the frags actually start happening. I prefer it this way because I get to see the leadup -- after trying it with it directly synced, I found that I'd just jump to a player who immediately killed someone and I couldn't see how they got into position. This does make it so that if you constantly press your bind, you'll switch away from some frags before they happen, so the best way to use it in practice is to hit the bind, wait until frags happen/it looks like they're not in position to do anything more, then hit the bind again. Also note that since this can't track ubers/damage at all (would be possible with log analysis, but you need rcon on the server to do that), you may end up watching a scout hiding in a corner who comes in late and gets 2 frags over a pocket who takes an uber and does a ton of damage. Hence, this isn't a perfect subsitute for good camera work, it's just a tool that helps out a bit.

What does this do, specifically? It uses a part of SourceLib https://github.com/frostschutz/SourceLib to mimic the request you make to a server when you do "view game info" on someone through steam and collects the results. It tracks the change in frags for each player over a number of intervals (default 9 intervals, 10s each if the tv_delay is 90s) and fills a queue with the top-fragging player over each interval (taking into consideration frags that occur in future intervals, but with a lower weight). Once the SourceTV has caught up to when those frags happened on the server, we write a cfg file to spectate the best player from that interval. Hence, all you need to do as a spectator is to bind a key to "exec spec_best" and press it periodically to switch to the view of whoever is about to go huge.

I find this particularly useful for when I'm casting and streaming, since I can pay minimal attention to the camera while talking and still get a good picture of what's going on. I'm happy enough just using this script for my own benefit, but it should also be useful for other casters, streamers, and really just anyone who wants to watch a match and catch the maximum number of frags in first person.

To use this, the first thing you'll need is python http://www.python.org/getit/ . I recommend getting python 2.x.x; the 3.x.x have some issues on windows that may prevent this script from running. Then, drop the files from the archive into your tf/cfg folder, run cmd, and cd your way into your tf/cfg folder (I might make a GUI for this someday, but this is command-line only!). You can check out the options with "huge_status_monitor.py -h". The minimum that this script needs to run is the server IP. If the port isn't 27015, you'll also need to provide that (note that you need to give the server info, not info for the SourceTV or relay -- on ESEA you can get the IP/port from viewing game info on a friend, or going into the client and viewing server info from there). The tv_delay is assumed to be 90s (what ESEA uses); you'll have to change that if there's a different delay (and possibly modify the period count as well, depending on what you're after -- more sprees, or more individual frags?). Once that's all taken care of, bind a key to "exec spec_best" while you're in game, and have fun. Here's some sample output from the match I watched tonight (you won't see this if you don't give -v, and you don't really need to see it if you're just pressing your bind ingame)

> huge_status_monitor.py -i 206.217.135.162 -p 27267 -v
Monitor initialized! Now running...
Best is Shwan.vec with 1 points
Best is Shwan.vec with 1 points
Best is Shwan.vec with 3 points
Best is DougyG.vec with 2 points
Best is DougyG.vec with 4 points
Best is thrckstr.vec with 4 points
Best is rb-^SYOPS with 1 points
...

Note that in its current implementation, it gives the next player to watch a bit earlier than the frags actually start happening. I prefer it this way because I get to see the leadup -- after trying it with it directly synced, I found that I'd just jump to a player who immediately killed someone and I couldn't see how they got into position. This does make it so that if you constantly press your bind, you'll switch away from some frags before they happen, so the best way to use it in practice is to hit the bind, wait until frags happen/it looks like they're not in position to do anything more, then hit the bind again. Also note that since this can't track ubers/damage at all (would be possible with log analysis, but you need rcon on the server to do that), you may end up watching a scout hiding in a corner who comes in late and gets 2 frags over a pocket who takes an uber and does a ton of damage. Hence, this isn't a perfect subsitute for good camera work, it's just a tool that helps out a bit.
3
#3
0 Frags +

could you please explain the process of cd'ing in python? im not a computer person at all

my tf2 is located in D:/program files 86/steam/steampps etc

could you please explain the process of cd'ing in python? im not a computer person at all

my tf2 is located in D:/program files 86/steam/steampps etc
4
#4
0 Frags +
MR_SLINcould you please explain the process of cd'ing in python? im not a computer person at all

my tf2 is located in D:/program files 86/steam/steampps etc

since you are not good with computers I doubt you actually installed python correctly (if so good job). You can CD into the correct directory by doing this.

cd D:\"Program Files 86"\Steam\steamapps\username\"team fortress 2"\tf\cfg

make sure you replace username with your steam name. remember that quotes are needed for folders with spaces in them.

[quote=MR_SLIN]could you please explain the process of cd'ing in python? im not a computer person at all

my tf2 is located in D:/program files 86/steam/steampps etc[/quote]

since you are not good with computers I doubt you actually installed python correctly (if so good job). You can CD into the correct directory by doing this.

cd D:\"Program Files 86"\Steam\steamapps\[b]username[/b]\"team fortress 2"\tf\cfg

make sure you replace username with your steam name. remember that quotes are needed for folders with spaces in them.
5
#5
1 Frags +

I used this to cast for extv tonight, and it's awesome. I highly recommend any casters to use the for live casts!

Awesome work, Sigma.

I used this to cast for extv tonight, and it's awesome. I highly recommend any casters to use the for live casts!

Awesome work, Sigma.
6
#6
0 Frags +

why do I keep misreading the title as huge_stultus_monitor please help.
An excellent tool, I hope it helps get more casters into casting and helps those already doing the service.

why do I keep misreading the title as huge_stultus_monitor please help.
An excellent tool, I hope it helps get more casters into casting and helps those already doing the service.
7
#7
4 Frags +

This is great, been trying it out recently. It's pretty legit. I'm still a bit new at coding but working on bringing it to a UI, and combining with the functionality of stvkeybinds.

This is great, been trying it out recently. It's pretty legit. I'm still a bit new at coding but working on bringing it to a UI, and combining with the functionality of [url=http://teamfortress.tv/forum/thread/5589-repost-stvkeybinds-a-tool-for-stv-streamers]stvkeybinds[/url].
8
#8
4 Frags +

RIP the mad scientist of Tf2

RIP the mad scientist of Tf2
9
#9
-6 Frags +
Tino_RIP the mad scientist of Tf2

^

[quote=Tino_]RIP the mad scientist of Tf2[/quote]
^
Please sign in through STEAM to post a comment.