Acryte
Smash Ace
- Joined
- Mar 30, 2005
- Messages
- 986
For Melee's growth as an e-sport, something that is useful but arduous to maintain and aggregate is statistics. Tafostats are very interesting, and the booth they had a couple tourneys ago was phenomenal.
We can obtain these statistics from the game by communicating it via wifi and then automatically assimilating it into a database, which can be filtered for content. Something like this would be amazing to push the analysis side of things. I believe there are many useful statistics that can be analyzed.
Stats that could be easily obtained and populated in the database:
-The name of each Player.
-The character used by each player.
-The stage being played on.
-Recorded Win for one Player, Loss for the other.
-APM of each player.
-Total % of time in air vs % of time on ground.
-Total match Length.
-Offensive and Defensive efficiency ratings based off average death % per stock (defense) and average KO % per stock (offense).
-Total Grab # and accuracy %.
-Total Grab breaks #.
-KO and KOed by move info. Each type of attack (dtilt, fair, uthrow) is assigned a reference #. A KO moves’ # is recorded.
-Total Invincibility/Invulnerability frames when not waiting in spawn platform.
-Total Powershielded attacks.
-Total Powershielded projectiles.
-Total Projectile # and accuracy %.
-Action Frequency. Can log the numbers for how often various things like Rolls, Get-up-attacks, Fairs, etc are done in a match by said player. Use the reference #’s etc to keep tally.
Other information provided Automatically or provided by outside sources to the analysis program:
-Tourney Location/Region.
-Tourney Entrants.
-Date of Tourney (for use in filtering by Years).
-ELO for players prior to tourney results.
What would the end result be when using an Application to check people’s stats? What does it need to accomplish or allow for?
1) Check stats according to criteria.
2) Compare 2 Players according to criteria.
3) Rank Players according to criteria.
4) Tourney history according to criteria.
Most criteria you select are optional and will further filter the results. If you leave something out, the result will be broader. What are some basic examples of what could be accomplished based off this structure?
Lighter characters may have a poorer Defensive efficiency rating, but puffs in particular could be compared for example. Let’s say you want to compare 2 players Hbox and Soft under certain criteria. You Select compare, then for criteria you happen to select both players, timeframe of 2014-2015, Jigglypuff as their character, Fox and Marth as their opponent, dreamland as the stage. It will list their stats, filtering the data according to each additional criteria selected.
If we wanted to look at how all Jigglypuffs ranked, we could just choose Rankings. Then select Jigglypuff as the character and that we want to rank them by Defensive Efficiency. Alternatively, we could have the program list all the stats for Jiggs, and then have each stat column it lists be clickable where clicking it rejigs the table according to the selected stat.
You could have it list the Matchup history of 2 specific players, or of 1 player vs Falco for example. It could list it chronologically. It could lump by tournament, or by set. Concerning the history of 2 players, you could view the tournament history involving sets, and stage/character CPs and the win/loss rate for each, etc. It could even list a player's tourney results history.
You see the % of the time Mango loses to Fox on FD.
You could see how often PPMD gets grabs with marth, or if he takes to the air more vs certain opponents or characters than others. You could compare a player’s stats against a specific player, vs their stats against all other players (from specific regions etc.).
Registration info could provide regional location info if we wanted to compare a player's success vs players from another region etc. Like Hax vs International Sheiks.
Truly, it would be a versatile and useful analysis tool where a stats analyst could provide information to commentators that could be passed over stream. Players could do their homework and look for a player’s weaknesses, forcing them to improve in certain matchups or stages, etc. For example, we could check and see if Hungrybox rests Zhu significantly more often than other players.
It sounds great and all, but how would we even go about tackling a monster like this? How should it function and what are some of the necessary features that could streamline the experience for both tourney-goers and TOs?
-Player registers for tournament with his PlayerID or an official Gamertag associated with his PlayerID.
-The players' names are used to populate statistics for those players.
-The player's tag can be selected on the CSS but can then be toggled on/off from the CSS so that tagless players can have stat collection too.
-A fixed-size non-scrolling and revamped results box for each player could be used on the results screen. Alongside passing the info, it can be seen visually on any recorded streams making video analysis of a match simpler (you don't need to use the client). If someone is watching a set wants to pause and take a quick look at some of the statistics, they will be able to do so.
20XX or 20XX TE would output relevant tourney info on the results screen and the statistics information could be communicated via GCN modem or Wii wifi, allowing for documentation of match statistics even for non-streamed sources. It could connect with a local server running the analysis program to do work client-side. The Analysis program can interface and pass information to the tournament organizing software and the TO’s software could communicate with the Analysis program letting it know to send control signals to the GCN/Wii assigning TAGS for the next players at the station and force quitting to the CSS if friendlies are being played. In addition, the tags should be the 1st two on the list so they don’t have to scroll forever if they switch ports.
The analysis program can timestamp the match info it logs and then roughly sync up with the TO software to ‘understand’ which matches correspond to which sets so that the database is accurately maintained. This would allow the TO software to get and update match results automatically. After all tourney information has been compiled by the client-side program, it can be submitted to the main server to have the master database updated. After that, the client-side one can just ‘update’ their own databases to match the master, OR can simply make a request to the main server to provide whatever statistics information you are querying.
If L+R+A+Start is pressed by both players synchronously, either mid-match or on the results screen, the match is not counted. This can be used for handwarmers, or if a match had to be replayed for some reason etc. If from the results screen ‘start’ is pressed by both players, it will communicate the result to the analysis program/TO software.
From the CSS it should be extremely obvious (visually apparent) when a station is in friendlies mode or when it switches to Tourney Mode. Such as how the colors change (Blue/Orange) when using Custom Moves in Smash4. The analysis program can control whether a setup is in Friendly mode or not. When a set ends, if another set isn’t immediately scheduled via the tournament software, or there is scheduled downtime, it can temporarily switch the station to friendly mode and people may play on it for the duration.
Lastly, if we have a client-side application that can query specific information, it’s possible that we could have it feed into our stream displays.
All-in-all... I think that aquiring all the stats and sending them across a network is quite feasible. The biggest challenge would be effectively designing the Analysis program (just because it has to be built from scratch) and making it interface with TO software (because that is a joint venture).
We can obtain these statistics from the game by communicating it via wifi and then automatically assimilating it into a database, which can be filtered for content. Something like this would be amazing to push the analysis side of things. I believe there are many useful statistics that can be analyzed.
Stats that could be easily obtained and populated in the database:
-The name of each Player.
-The character used by each player.
-The stage being played on.
-Recorded Win for one Player, Loss for the other.
-APM of each player.
-Total % of time in air vs % of time on ground.
-Total match Length.
-Offensive and Defensive efficiency ratings based off average death % per stock (defense) and average KO % per stock (offense).
-Total Grab # and accuracy %.
-Total Grab breaks #.
-KO and KOed by move info. Each type of attack (dtilt, fair, uthrow) is assigned a reference #. A KO moves’ # is recorded.
-Total Invincibility/Invulnerability frames when not waiting in spawn platform.
-Total Powershielded attacks.
-Total Powershielded projectiles.
-Total Projectile # and accuracy %.
-Action Frequency. Can log the numbers for how often various things like Rolls, Get-up-attacks, Fairs, etc are done in a match by said player. Use the reference #’s etc to keep tally.
Other information provided Automatically or provided by outside sources to the analysis program:
-Tourney Location/Region.
-Tourney Entrants.
-Date of Tourney (for use in filtering by Years).
-ELO for players prior to tourney results.
What would the end result be when using an Application to check people’s stats? What does it need to accomplish or allow for?
1) Check stats according to criteria.
2) Compare 2 Players according to criteria.
3) Rank Players according to criteria.
4) Tourney history according to criteria.
Most criteria you select are optional and will further filter the results. If you leave something out, the result will be broader. What are some basic examples of what could be accomplished based off this structure?
Lighter characters may have a poorer Defensive efficiency rating, but puffs in particular could be compared for example. Let’s say you want to compare 2 players Hbox and Soft under certain criteria. You Select compare, then for criteria you happen to select both players, timeframe of 2014-2015, Jigglypuff as their character, Fox and Marth as their opponent, dreamland as the stage. It will list their stats, filtering the data according to each additional criteria selected.
If we wanted to look at how all Jigglypuffs ranked, we could just choose Rankings. Then select Jigglypuff as the character and that we want to rank them by Defensive Efficiency. Alternatively, we could have the program list all the stats for Jiggs, and then have each stat column it lists be clickable where clicking it rejigs the table according to the selected stat.
You could have it list the Matchup history of 2 specific players, or of 1 player vs Falco for example. It could list it chronologically. It could lump by tournament, or by set. Concerning the history of 2 players, you could view the tournament history involving sets, and stage/character CPs and the win/loss rate for each, etc. It could even list a player's tourney results history.
You see the % of the time Mango loses to Fox on FD.
You could see how often PPMD gets grabs with marth, or if he takes to the air more vs certain opponents or characters than others. You could compare a player’s stats against a specific player, vs their stats against all other players (from specific regions etc.).
Registration info could provide regional location info if we wanted to compare a player's success vs players from another region etc. Like Hax vs International Sheiks.
Truly, it would be a versatile and useful analysis tool where a stats analyst could provide information to commentators that could be passed over stream. Players could do their homework and look for a player’s weaknesses, forcing them to improve in certain matchups or stages, etc. For example, we could check and see if Hungrybox rests Zhu significantly more often than other players.
It sounds great and all, but how would we even go about tackling a monster like this? How should it function and what are some of the necessary features that could streamline the experience for both tourney-goers and TOs?
-Player registers for tournament with his PlayerID or an official Gamertag associated with his PlayerID.
-The players' names are used to populate statistics for those players.
-The player's tag can be selected on the CSS but can then be toggled on/off from the CSS so that tagless players can have stat collection too.
-A fixed-size non-scrolling and revamped results box for each player could be used on the results screen. Alongside passing the info, it can be seen visually on any recorded streams making video analysis of a match simpler (you don't need to use the client). If someone is watching a set wants to pause and take a quick look at some of the statistics, they will be able to do so.
20XX or 20XX TE would output relevant tourney info on the results screen and the statistics information could be communicated via GCN modem or Wii wifi, allowing for documentation of match statistics even for non-streamed sources. It could connect with a local server running the analysis program to do work client-side. The Analysis program can interface and pass information to the tournament organizing software and the TO’s software could communicate with the Analysis program letting it know to send control signals to the GCN/Wii assigning TAGS for the next players at the station and force quitting to the CSS if friendlies are being played. In addition, the tags should be the 1st two on the list so they don’t have to scroll forever if they switch ports.
The analysis program can timestamp the match info it logs and then roughly sync up with the TO software to ‘understand’ which matches correspond to which sets so that the database is accurately maintained. This would allow the TO software to get and update match results automatically. After all tourney information has been compiled by the client-side program, it can be submitted to the main server to have the master database updated. After that, the client-side one can just ‘update’ their own databases to match the master, OR can simply make a request to the main server to provide whatever statistics information you are querying.
If L+R+A+Start is pressed by both players synchronously, either mid-match or on the results screen, the match is not counted. This can be used for handwarmers, or if a match had to be replayed for some reason etc. If from the results screen ‘start’ is pressed by both players, it will communicate the result to the analysis program/TO software.
From the CSS it should be extremely obvious (visually apparent) when a station is in friendlies mode or when it switches to Tourney Mode. Such as how the colors change (Blue/Orange) when using Custom Moves in Smash4. The analysis program can control whether a setup is in Friendly mode or not. When a set ends, if another set isn’t immediately scheduled via the tournament software, or there is scheduled downtime, it can temporarily switch the station to friendly mode and people may play on it for the duration.
Lastly, if we have a client-side application that can query specific information, it’s possible that we could have it feed into our stream displays.
All-in-all... I think that aquiring all the stats and sending them across a network is quite feasible. The biggest challenge would be effectively designing the Analysis program (just because it has to be built from scratch) and making it interface with TO software (because that is a joint venture).
Last edited: