Upvote Upvoted 9 Downvote Downvoted
help me pls tf2 project for my cs a level
posted in Projects
1
#1
0 Frags +

.

.
2
#2
4 Frags +

lol i was considering doing this as apart of my a level comp sci too but ended up doing some boring shit instead, too late to go back

i dont have the data but goodluck :DD

lol i was considering doing this as apart of my a level comp sci too but ended up doing some boring shit instead, too late to go back

i dont have the data but goodluck :DD
3
#3
0 Frags +

.

.
4
#4
3 Frags +

I'm pretty sure they're plugins installed on the server that pull their data there. There's not really a post-match api to pull data similar to what dota has

I'm pretty sure they're plugins installed on the server that pull their data there. There's not really a post-match api to pull data similar to what dota has
5
#5
0 Frags +

.

.
6
#6
8 Frags +
id like to know how sizzling stats / logs.tf work in the sense of actually getting the data from the tf2 server

Every match played on mp_tournament 1 generates a log file in the server's orangebox/tf/logs directory, which is either manually or more likely automatically uploaded by the server owner via a SourceMod plugin to the logs site which then parses the log file, adding everyone's stats together, and then makes them look pretty.

e:

Mind, even if you create a plugin you would need to parse the log files correctly because the log files are not very pretty and get people to actually install the plugin to retrieve the log files as well. There's no API to retrieve log files from the servers without owner permission unlike modern competitive games.

[quote]id like to know how sizzling stats / logs.tf work in the sense of actually getting the data from the tf2 server [/quote]

Every match played on mp_tournament 1 generates a log file in the server's orangebox/tf/logs directory, which is either manually or more likely automatically uploaded by the server owner via a SourceMod plugin to the logs site which then parses the log file, adding everyone's stats together, and then makes them look pretty.

e:

Mind, even if you create a plugin you would need to parse the log files correctly because the log files are not very pretty and get people to actually install the plugin to retrieve the log files as well. There's no API to retrieve log files from the servers without owner permission unlike modern competitive games.
7
#7
11 Frags +

Try not to make your project unnecessarily difficult just for the sake of basing it on a hobby or interest if you can, I make this mistake so often and it sucks. By all means try this but it sounds like it's gonna be a bitch.

Try not to make your project unnecessarily difficult just for the sake of basing it on a hobby or interest if you can, I make this mistake so often and it sucks. By all means try this but it sounds like it's gonna be a bitch.
8
#8
SizzlingStats
14 Frags +
SizzlingCalamaiSizzlingStats doesn't parse log lines/files, it reads data directly from game memory. For non scoreboard stats, it does custom game event handling and tracks the stats manually. At the end of tournament rounds, the stats are formatted and shipped off to the web server.

Add me if you want details about how it's done in code.
Code and other goodies are here: https://github.com/SizzlingStats

[quote=SizzlingCalamai]SizzlingStats doesn't parse log lines/files, it reads data directly from game memory. For non scoreboard stats, it does custom game event handling and tracks the stats manually. At the end of tournament rounds, the stats are formatted and shipped off to the web server.[/quote]

Add me if you want details about how it's done in code.
Code and other goodies are here: [url=https://github.com/SizzlingStats]https://github.com/SizzlingStats[/url]
9
#9
2 Frags +

having done a bunch of CS school projects (including half of 2 separate undergrad dissertations) making a logs parser could be a cool project but you'll likely want your project's goals to be flexible (i.e. it's fine if you can't parse the whole logs file, just some bits that you need). this seems possible with logs (they basically look like this

https://i.imgur.com/ktV08DE.png

with different plugins having more events than others). you can download raw logs from logs.tf

parsing itself is kind of tricky sometimes but this seems reasonably simple just by splitting the string and looking for words in certain places. it might be too simple though (my concern is once you've figured out how to bring in a file and figure out how to parse each line it becomes pretty boring, just adding more events and shit) but that's probably for your teacher to decide

i believe gjon's stats used on eu streams are done by parsing logs but im not 100%. instead of just aggregating stats, how about some cool visual representations of a match? stuff like showing capture point progress against time on a graph or maybe something showing damage done for each team against time

i wouldnt worry about getting the logs themselves. if you want you could build in a way to automate downloading a file from http://logs.tf/logs/log_LOGID.log.zip, unzipping it and putting it through your program but i dont think that's the important bit

having done a bunch of CS school projects (including half of 2 separate undergrad dissertations) making a logs parser could be a cool project but you'll likely want your project's goals to be flexible (i.e. it's fine if you can't parse the whole logs file, just some bits that you need). this seems possible with logs (they basically look like this [img]https://i.imgur.com/ktV08DE.png[/img] with different plugins having more events than others). you can download raw logs from logs.tf

parsing itself is kind of tricky sometimes but this seems reasonably simple just by splitting the string and looking for words in certain places. it might be too simple though (my concern is once you've figured out how to bring in a file and figure out how to parse each line it becomes pretty boring, just adding more events and shit) but that's probably for your teacher to decide

i believe gjon's stats used on eu streams are done by parsing logs but im not 100%. instead of just aggregating stats, how about some cool visual representations of a match? stuff like showing capture point progress against time on a graph or maybe something showing damage done for each team against time

i wouldnt worry about getting the logs themselves. if you want you could build in a way to automate downloading a file from http://logs.tf/logs/log_LOGID.log.zip, unzipping it and putting it through your program but i dont think that's the important bit
10
#10
1 Frags +

If you are doing OCR then I would suggest you make something very very simple as there are no marks for your code just the write-up. Lots of my friends did very complex projects and wasted loads of time at the end finishing it whilst others were perfecting their write-up which actually gave them the marks.

As far as I am aware you are allowed to use APIs as long as you give credit so there is no reason you can't use logs.tf API to make it much easier and focus on getting marks.

If you are doing OCR then I would suggest you make something very very simple as there are no marks for your code just the write-up. Lots of my friends did very complex projects and wasted loads of time at the end finishing it whilst others were perfecting their write-up which actually gave them the marks.

As far as I am aware you are allowed to use APIs as long as you give credit so there is no reason you can't use logs.tf API to make it much easier and focus on getting marks.
11
#11
0 Frags +

.

.
Please sign in through STEAM to post a comment.