I found it more difficult than I expected to implement high scores in my little game applet - I just wondered if I was reinventing the wheel and something was readily available.
I wanted to record the best score for any given ip and name combination. I preferably wanted it to remember who the player was and default to their user name. I thought I’d worked out how to do it well when I discovered you can get the MAC address through Java - I then found that apple computers will then refuse to run the applet! I thought Java was run anywhere???
The best solution I could come up with was just to have a PHP page on the web that I would call. This would store a score along with a user name and IP address. The problem I now have is when there are many computers at the same IP address - how do I return the best score for that user? Also if someone plays the game should I automatically ask for a name before sending the score to the server? I should if it’s a new player but I shouldn’t if the player has played before and this is a relatively poor score for them.
Also what do I do if the applet is running as a standalone application - how do I mix a local high score file with the server high scores? It would be easy if I just ignored user names and treated all users at one IP address as a single user. I guess I could easily expand things to remove swear words and robot IP addresses. But is there a simple “out of the box” solution that I can plug in that solves all this without any effort?