Share your repls and programming experiences

← Back to all posts
ATTENTION: Scoreboard API
amasad (1374)

You can use this to create and persist a scoreboard for your game.

It's very simple:

  1. include a script in your app <script src="https://scoreboard--amasad.repl.co/scoreboard.js"></script>

  2. You'll get a global object scoreboard

  3. scoreboard.submit\({username: 'playerNameHere', score: numberScoreHere}\)

  4. List the scoreboard using scoreboard.list\(\).then\(topTenScores => console.log\(topTenScores\)\)

The script is smart enough to create a board for your game (it's domain-based) so it's very easy to use. End to end example here: https://repl.it/@amasad/scoreboard-example

Here is the source code for the service if anyone is interested https://repl.it/@amasad/scoreboard 😉

Commentshotnewtop
numcomx (103)

i really like that creates the board based on domain :)

amasad (1374)

@numcomx: thanks for noticing, I decided that the API should be as simple as possible.

JSer (1105)

You missed a ) at the end of the fourth point

numcomx (103)

i think is awesome the api was made with GO lang :)

amasad (1374)

@numcomx: we love go at Repl.it, fun fact that our infrastructure, that runs all your code, is written in Go

JSer (1105)

People can hack the scoreboard using the Developer tools (Ctrl + Shift + i) and type scoreboard.submit\({username: 'Their Names', score: 10000000000}\) in the console 😂😂😂
(You can see that I hacked into your scoreboard demo)

Calamari1 (87)

@iamcaleblol: Really securing a leaderboard is pretty hard, if you have both front and back totally open source (inclusive the secrets)

amasad (1374)

@iamcaleblol: lol yes, not sure how we can secure it though. You can do that with Firebase or any other clientside data API. Open to ideas.

JSer (1105)

If a player wants to submit his score multiple times, how can I make it so it can delete his previous scores?

amasad (1374)

@iamcaleblol: I made it so that it picks the highest score.

E.g.

  1. amasad scored 10
  2. amasad scored 8 (it's still 10 because it's higher)
  3. amasad scored 12 (it will register 12 because it's the highest)

Does it make sense?

amasad (1374)

@iamcaleblol: Let me know if you want to reset the data or delete something and I'll do it for you

itbarsoum (37)

wow great assistant to games

bradenrueter (7)

HTML5 <crying emoji>

426729 (145)

Does this work in just a normal HTML file that you open on your computer?