Hi! I'm thinking about building a free online leaderboard service for Playdate games distributed outside Catalog.
Developers would be able to register a game, create one or more leaderboards, get an API key, and use a small Lua library to submit and retrieve scores over HTTPS.
The goal would be to make adding online high scores to sideloaded games as simple as possible.
Before I start building it, I'd like to know if there is actually interest in something like this.
Would you use such a service in your Playdate games? And are there any features you would consider essential?
I've thought about it for my itch versions. I was just going to use https://www.leadr.gg/#pricing because it's pretty much impossible for a playdate game to leave the free tier. and the Rest API is super simple.
The reason in the end that I didn't go for it, is I didn't want to have to ask every catalog player for networking permissions and if I made it itch only, there would only be like 10 people on the itch-only leaderboards. Didn't seem worth it for me.
All that said, do what you want to do. It's a hobby after all!
I came to a similar conclusion. I also found Talo, which already provides a free hosted backend and REST API, so building another backend probably doesn’t make much sense. A good Lua wrapper might be enough.
The networking permission is the tricky part. I think the player should clearly understand why the game wants internet access before the system dialog appears.
I made a flowchart with the main cases. It looks a bit complex at first, but the logic is pretty straightforward. Ideally, the Lua library would handle all of this out of the box, with customizable messages.
We only sell on itch, so this is relevant to us. I agree the permission prompt is the hard part – a Lua library that explains why the game wants internet before the system asks is the piece we'd actually use, whatever backend sits behind it.
At first, I thought nobody was really interested in this idea, but gradually more people have shown interest!
I've already got a working version. The biggest challenge now is making it as simple and flexible as possible, so developers can easily integrate it into their games and customize it to match their own UI.
I have a pretty clear vision of how it should all work. Give me another week or two, and I'll definitely release it!