Jump to content
IGNORED

Bringing Atari Highscores into the 21st century


Klemen

Recommended Posts

Introduction
We all know the value of highscore systems and the competitiveness and longevity they provide to a game and its community. In fact, most atari 2600 games are all about high-scores - but there is a problem. Sometimes with hundreds of game modes and various different A/B settings, it is quite daunting to even know where to start. It's even more difficult to figure out how you compare with other players out there. Because of this, I never had much interest in chasing global highscores, but a recent development in the 2600 scene sparked my interest: the PlusCart. This WiFi cartridge has the amazing ability to send your highscores to a server to compare your performance to other players. As mindblowing as this is, the  PlusCart's highscore tables are - as expected - lackluster. The cart is not yet released and has a small playerbase, with only 14 games having the online highscore functionality and the tables are already a meaningless mess. This will only get worse as more people adopt the cart and more games are added.

 

This is a suggestion directed at the developer of the PlusCart or anyone else that is able to provide online scores for the Atari 2600.

 

 

Quick overview
Recent innovations in game design led to Histogram scores (great examples can be found in Infinyfactory, Opus Magnum etc.). The idea is quite simple; consolidate the scores and display them visually in the form of a graph. But the ramifications this has are quite astounding - no matter how well or badly you perform at the game, you can now compare your score to the rest of the players in a non-trivial manner and it pushes you to be better by reaching at least the top of the bell curve.

 

More importantly for our purpose, you are able to display several histograms on one page (for different game variations, difficulties an so on) without compromising the readability of these scores, making it in my opinion the perfect way to display Atari scores.

 

Here is a concrete example I made for Asteroids. Instead of dozens (or hundreds) of pages of this:

Oww6w2M.png

 

You would have only one page like this:

gOO3kWK.png

 

(Numbers on the Y axis show the number of players, X axis shows scores, the orange line is your placement on the highscore histogram. In practice, it would be possible to display the graphs much smaller with less information, while still maintaining its practicality. The regular highscore tables would still be accessible via the "Leaderboard" link, in case the player wishes to see details.)

 

 

The specifics

Here is a rough overview of how these histograms would in theory work.

 

Step 1: in case a user doesn't have a score, assign a zero score to them. This will help us determine rankings later

Step 2: take only the highest score of each user, since you don't want a single player to be able to completely skew the graph. Also disregard any 2-player modes (make those into a completely separate category)

Step 3: assign user rankings according to scores. The player with the highest score receives rank 1. Player in second place receives rank 2 and so on. If multiple players have the same score, they will also have the same rank

Step 4: split the scores between 0 and the highest score into brackets; the exact number of brackets doesn't matter.

Step 5: map the brackets onto the graph. Each bracket is a column. The Y axis shows the amount of players (disregard number of players who reached a score of zero for this step)

Step 6: display the user's score on the histogram with a vertical line

 

The advantages this system offers should be clear; I can see at a glance in which game modes I can still perform better and my placement on the curve naturally pushes me to try and achieve a better score.

 

 

Going a step further

Now that the scores and rankings are clear to see and easy to understand, we can push the concept a step further - with Game-wide and Global Rankings.

 

Game-wide rankings: this takes all of the user's rankings from a single game across different game modes and difficulty settings and simply adds them up. The lower the sum of a user's rankings, the higher their game-wide rank is.

Global rankings: sum of a user's game-wide rankings. The lower the sum, the higher the global rank

 

 

This function would add a much needed overview to Atari scores and encourage competition across all games and game modes. I believe the goal of the PlusCart is to also eventually allow developers to sell ROMs via the PlusStore, so proper leaderboards would be a fantastic feature to have and give the platform a unique selling point (both for users and developers), since anyone interested in pursuing Global Rankings would want to get the game.

 

If anything I wrote is unclear, please ask and I'll be happy to elaborate on the idea.

 

Edited by Klemen
  • Like 5
Link to comment
Share on other sites

6 hours ago, Klemen said:

You would have only one page like this:

gOO3kWK.png

 

(Numbers on the Y axis show the number of players, X axis shows scores, the orange line is your placement on the highscore histogram. In practice, it would be possible to display the graphs much smaller with less information, while still maintaining its practicality. The regular highscore tables would still be accessible via the "Leaderboard" link, in case the player wishes to see details.)

 

If anything I wrote is unclear, please ask and I'll be happy to elaborate on the idea.

 

@Klemen is the page shown just a graphical mockup, or do you have a system for highscore histograms and leaderboards already?

Link to comment
Share on other sites

2 hours ago, Al_Nafuur said:

@Klemen is the page shown just a graphical mockup, or do you have a system for highscore histograms and leaderboards already?

Hey, it's only a quick mockup I threw together yesterday evening. Though looking around, there are quite a few out-of-the-box solutions for displaying histograms out there, and while I have no idea how to make them work, I can offer up my front-end web design skills to this project if you're interested though.

  • Like 1
Link to comment
Share on other sites

Currently the High Score Club is hosted on a separate subdomain at the same webspace than the PlusStore. But this can easily moved to another webspace/domain.
@Andrew Davie has offered his domain atari2600.org for PlusCart/PlusROM purposes, so currently 

http://highscore.atari2600.org/
is a html redirect to the High Score Club. Maybe we can find some webspace with PHP/MySQL and move the High Score Club and use the highscore.atari2600.org domain.

 

There you could work on the frontend, without interference to my other projects in my webspace. And anyway it is my goal to keep the PlusStore and the PlusROM backends separate (Many people still confuse it)

 

 

 

Link to comment
Share on other sites

2 hours ago, Al_Nafuur said:

@Andrew Davie has offered his domain atari2600.org for PlusCart/PlusROM purposes, so currently 

http://highscore.atari2600.org is a html redirect to the High Score Club. Maybe we can find some webspace with PHP/MySQL and move the High Score Club and use the highscore.atari2600.org domain.

 

There you could work on the frontend, without interference to my other projects in my webspace.

Sounds great, lets make something happen.

Link to comment
Share on other sites

5 hours ago, Klemen said:

Sounds great, lets make something happen.

I have a very old web hosting plan, and I am thinking about upgrading for some time already. I will add the questions for adding foreign subdomains and extra SFTP user to the list when I contact my hoster.

 

Link to comment
Share on other sites

@Klemen

I will switch the hosting plan of the PlusStore, the PlusCart API and the database tomorrow (14:00 CET).
After the switch I'll move the high score tables to a separate database and I will set up a user for you for the high score web frontend subfolder.
I'll PM you the details tomorrow. 

  • Like 1
Link to comment
Share on other sites

I've taken a look and it seems that using Google Charts might be a good way of approaching this. They already provide a solution for histograms: https://developers.google.com/chart/interactive/docs/gallery/histogram

 

The only thing we would have to "hack in" is the vertical line displaying the user's score, but considering the charts are drawn using the svg method, that shouldn't be too much of an effort.

Edited by Klemen
  • Like 1
Link to comment
Share on other sites

4 hours ago, Klemen said:

I've taken a look and it seems that using Google Charts might be a good way of approaching this. They already provide a solution for histograms: https://developers.google.com/chart/interactive/docs/gallery/histogram

 

The only thing we would have to "hack in" is the vertical line displaying the user's score, but considering the charts are drawn using the svg method, that shouldn't be too much of an effort.

or Plotly:
https://plotly.com/javascript/histograms/

 

but there are also no vertical lines, I suppose..

Link to comment
Share on other sites

Eventually, it would be nice to replace the vertical (my score) line with a different set of axis.

 

Date (vert), Score (horz) - so you can see your improvement (or lack there of) over time. Maybe a rolling last 20-50 scores though, depending upon how long of a history you want to store in the database.

Additionally, it would be nice to have how many standard deviations your highest score for a game variation  (SqRT (Sum(ABS(X - Mean)) / Y data points)) is from the mean (Avg high score for all Players). 
 

I cannot think of any other interesting statistics to keep track of (maybe RageResets, but I don’t know if the PlusCart HS interface would track that information.

  • Like 1
Link to comment
Share on other sites

On 10/16/2020 at 4:06 AM, Al_Nafuur said:

gOO3kWK.png

 

(Numbers on the Y axis show the number of players, X axis shows scores, the orange line is your placement on the highscore histogram. In practice, it would be possible to display the graphs much smaller with less information, while still maintaining its practicality. The regular highscore tables would still be accessible via the "Leaderboard" link, in case the player wishes to see details.)

 Those are nice analytics but I think they might be better as a drill-down link than the default view for those players who prefer modern reporting over a top player list like the Arcades.

 

Link to comment
Share on other sites

2 hours ago, Mr SQL said:

a top player list like the Arcades.

Given the many game modes and game difficulty settings, it's simply not practical to emulate arcade-stlye highscores for online Atari highscores. The highscores will be hidden behind a link or a drop-down menu regardless, so you might as well put them behind something actually useful.

 

What you could use the classic highscores for are the Game-wide and Global rankings though. I understand the motivation of having your name written at the top if you perform well, but the significance of that motivator is gone when the individual highscores cannot be prominently displayed, so game-wide and global rankings could fill that role.

Edited by Klemen
Link to comment
Share on other sites

5 hours ago, Klemen said:

Given the many game modes and game difficulty settings, it's simply not practical to emulate arcade-stlye highscores for online Atari highscores.

I like those options and set the variations for some games, but many classics are also played with just the default settings. 

 

The PlusCart highscore page also shows the game settings and many players are not changing them.

 

I wonder if it would be possible to detect the unusual double-shot startup option for Space Invaders? That's one where I usually change the defaults.

 

  • Haha 1
Link to comment
Share on other sites

2 hours ago, tman03 said:

Pac-Man CE is the best example of a modern take on high score action in general gaming

Are you able to elaborate on that? I'm not familiar with that version of Pac-Man but if I'm not mistaken, it also utilizes charts and graphs to convey your performance against other users.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...