How it Works
The multiplayer game is built on a node app and uses Socket.IO to handle the communication between player actions. As this was just a project for experimenting, all game data is saved in JSON files within the node app. The problem I realized is that Heroku (where the game is hosted) doesn't save the updated JSON so the top scores are refreshed every once in a while. Maybe someday when I have some time to kill I'll go back and save the data to a database instead.
The idea for this actually came from a comment I received on my original CodePen version of the game. See below for the original pen.