r/gamedev • • 18h ago

Discussion Backend Of Choice

All developers out here.

  1. What's your backend solution of choice ?

  2. Do you still roll out your own ?

  3. What all features you want for a backend solution to consider it complete and willing to pay for it ?

4 Upvotes

20 comments sorted by

1

u/KriKraKrischi 18h ago

I use nakama for basic stuff, but still had to implement my own backend for launcher and game updates.

1

u/Eye_NeO 18h ago

What do mean by launcher ?

1

u/Dentist0 Commercial (AAA) 18h ago

Pragma

1

u/Eye_NeO 18h ago

Are you satisfied with it ? Any features you wish it had but doesn't right now ?

1

u/jax024 18h ago

Last time I wrote my own in Go

1

u/WubsGames Commercial (Indie) 18h ago

Steamworks, plenty satisfied.

1

u/Much_Inspector_9447 17h ago

I still ended up with a tiny custom piece for our auto-battler, but only because the fights are async and I wanted a match log I could pull later. Steamworks already covers the cloud saves and the leaderboard, so I wouldn't pay for a full backend unless it gave me that history without me hosting anything. Last time I wrote the log bit myself it was the part that kept breaking whenever I changed the fight format.

1

u/Dorian182 15h ago

How much does being able to export player data and migrate to another provider influence your choice, especially for a game you expect to support for years?

1

u/Eye_NeO 15h ago

Much needed feature. But it comes with its own complexity and manual intervention. Cannot and should not be just click of a button feature.

1

u/Dorian182 15h ago

Nakama probably the closest match for what you're describing. Because it's open source and sits directly on top of Postgres (or CockroachDB), you retain full root access to the underlying database. You aren't stuck dealing with black-box proprietary export APIs or vendor lock-in, but you still get a production-ready game backend out of the box with auth, matchmaking etc. and if you ever have to migrate, it's a standard SQL dump and ETL pipeline rather than reverse-engineering by 3rd party

1

u/Eye_NeO 15h ago

I am handling this in my backend thr same way. Though thinking of other ways too.

1

u/brainzorz 15h ago

I used to work and roll out my backends in Java or Node. I made also a generic turn based server, I am running as a service https://turnkit.dev/ , its free up to 20 CCU, has matchmaking, relay (with some extra functions like hiding hands, turn functions and similar), leaderboards and a database. Its running several of my games.

1

u/Eye_NeO 15h ago

Are you earning with it ? If so any rough figure ?

1

u/brainzorz 15h ago

My games are earning, but just few devs have tried the server as a service so far and none have went over the 20 CCU so far.

1

u/Fit_Explanation8833 15h ago

I'd separate core game services from things like launcher updates and patch delivery. For authentication, player data, matchmaking, leaderboards and server side logic, nakama is one option worth comparing. i'd also look at hosting costs and how much custom code each solution needs before deciding

1

u/fsk 5h ago

I would pick a language I already know well, which would be Python or PHP. A huge chunk of the Internet runs on PHP, and it's relatively easy to scale up to larger servers.

•

u/CompanionsGames 51m ago

Using Nakama or Firebase for standard stuff, then writing custom code and regretting all life choices at 3 AM when a database query breaks.

•

u/Eye_NeO 27m ago

I like Nakama for all the features it offers but don't like it's reverse proxy model with GRPC Gateway. Wish it had all features of Nakama Enterprise.

•

u/CompanionsGames 25m ago

Yeah, gRPC Gateway is such a headache. Classic enterprise paywall pain.