https://help.play.date/catalog-developer/scoreboard-api/
Don't want scoreboards? Don't connect to wifi. It baffles me that someone would be paranoid about this.
https://help.play.date/catalog-developer/scoreboard-api/
Don't want scoreboards? Don't connect to wifi. It baffles me that someone would be paranoid about this.
I also found the scoreboards surprising. I wouldn't expect a Gameboy-like device to be reporting things back to a server. I don't have any particular privacy concerns about it myself, but it is surprising, and I can see why people might object.
It also seems to contradict their privacy policy (https://panic.com/privacy/):
Panic apps and products _do not_ send out _any_ private information. This includes
...
Usernames
...
But the scoreboard API seems like it's tied to usernames...> Except as described above
And further up there is a carve-out for Playdate logging.
They also don't really need to send out your username for the API call -- they already know who you are because your device is tied to your account.
I do find it surprising that there is no way to not participate in leaderboards.
Not only that, but the API link provided by the author specifies that scores are stored in the device if Wifi is offline and uploaded later, so aparently, there's no way to block uploading unless the device is hard-reset (is that even possible?) before connecting to Wifi to get another game.
The only good thing I see is that the score board is not mandatory and it seems pretty benign if no other data is attached by the OS when scores are uploaded. But then, if scores are supported, 90% of the tracking infrastructure is already there.
playdate.scoreboards.addScore sends just the rank, player and value data, or is there a device ID added in the background? If not, how do they prevent spamming/cheating? Is player value user-defined? For this game only or all games on the device? Is it sent with https or just http?
Thank you.
playdate.scoreboards.addScore(boardID, value, callback)
So you only send the boardID and the score. You get the player name back as part of the callback.