Tag Info

New answers tagged

1

You're worried that if you optimize something now, it might turn out to be wasted effort in the future. But more importantly, if your system is working now, as-is, then it's wasted effort here in the present! That said, minimizing server-client traffic is generally a good idea, especially if the clients are out in the real world, on unknown networks, and ...


0

I suppose you seek having a Main Server with Game Rooms. You can use Multi-Dimensional Arrays (stored in memory) for the data of each game. If you have player customized card decks then those are stored in the DB and queried to load into memory when a game begins. Every game-event occurs in memory, broadcasted to the clients that are inside that room. ...


0

You should take a look at how games like Minecraft, Halflife, and World of Warcraft handle this, most games take the simulated client input actions and send them to the server and simulate the world on both the client and server and correct when the simulations differ by correcting the client state to match the server state. Here you can see the entire ...


0

It isn't necessarily as clean cut as you expressed but in overly simplified terms and generalized notions, you are on track. The thing to remember is that the client expresses it's intent to perform some operation. Some operations are entirely authoritative by the server. In these cases, the server must respond before the client can proceed. This works ...


0

Most turn based multiplayer games do still keep all game state in memory and have the server living and listening to the players; if you won't be constantly listening to the players and are going to set it up with requests i.e.: host your game server and send RPC/REST requests via HTTP(S) for the player moves, then a KV store like Redis or MongoDB would be a ...


2

The server has to have a copy of the game state. If you can reasonably expect that the game server will be up and running during a particular game, and that all interaction between players in that game will always occur with that particular game server instance, you can simply hold the state in memory. If, on the other hand, you expect a server to only be ...


0

A thought. Have the player have their own world that's synched with the server world, then check for out of sync by using a special sync object with positional values (compare them every so often).


3

Something seems wrong to me in your implementation of the authoritative server. Basically an authoritative server controls everything. It is the pivot of your network architecture. Clients just "ask gently" when they want to do some actions, and the server has the authority to say "NO I DON'T WANT YOU TO DO THAT BECAUSE I'M THE BOSS HERE!"... That said, I ...



Top 50 recent answers are included