Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
(+1)

Ya, the way I used Playroom isn’t a documented feature, but I leveraged the ability to skip the lobby/matchmaking and directly use a common hardcoded roomCode that is shared for all players. That effectively creates a single persistent server for everyone. I also cut down the network data sync for a single player to be pretty small (~50 bytes of state update per second when moving) so having more players doesn’t require a lot of data usage for that single Playroom room.

(+1)

Oh ok nice, I wonder if that setup is scalable or not. I'm interested in making massively co-op games like this but haven't found an easy way to do it yet. Hmm does this mean there is no host/source of truth for the game state? (besides the room's persisted data) I guess for this game it doesn't matter but it would prevent a lot of other kinds of games.

(1 edit)

Agreed, the hardcoded room is definitely not scalable to even larger numbers. Ideally, you would be able to shard the world, but I couldn’t find a good way to do that with the current exposed APIs in the short jam period we had.

Players are authoritative for their own state, but you are right that certain types of games need more server authoritative approaches (like League of Legends or Counterstrike). For a simple coop game like this, I think it is fine.