game server seem more simple that game client

Started by
4 comments, last by Drigovas 16 years, 11 months ago
game client must be care of graphic(model,texutre) sound,complex math,huge data handle(mainly about 3d graphic),game server contain only logic(that need no complex background forexample graphic,vector math etc..what do you think of it?
Advertisement
It depends on the type of game,

however in general you want the server to be authorative which means that it has to do all the "complex math" (physics etc) that can affect the game.
(the client can do its own physics for special effects though).

If you are dealing with a large number of players the server becomes even more complex though. (There are large differences in writing a server that handles 64 players and one that handles a couple of thousand players).

If the game contain AI entities the server gets even more responsibility.
[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!
the server can be just as if not more complex then the client its self. in general the more stuff that is server sided the less complex the client becomes.

AI, colision detection, mobs, npc's just to name a few sould be controled by the server.
anyway,server never need to handle graphic sound these complex task which is a must for client. so server could be very simple or very complex(mmorpg).client (3d game) must contain graphic sound etc, so client is not very simple if it is big or small.
really they can be as complex or as easy as you want them to be.
If you are really good you can make a server that controls pretty much the whole client...
As was already mentioned, it depends on the type of project you're doing [then again, the client complexity depends on this too]. There are plenty of rather amazing and complicated 3d games that run with rather simple servers, and plenty of massively complex servers that feed super-simple clients [MUDs that use telnet, for example. Clients don't get much simpler than that.] In most instances though, servers have to deal with the majority of the same problems that the client side does [physics, visibility, AI... graphics and sound are by far not the most complex systems in most serverless games], and they have to do it for all the clients at the same time. It's still not too bad though, since they can run at a slower time step than most clients, and the client can fill in between updates.

So when does a server complexity explode? 10 users?... not likely, not even 20 users likely. For many games though, there is some magic number of users where a single machine becomes physically incapable of dealing with the users all by itself. Suddenly you need two machines, that pretend to be a single one, and shortly after that you need N machines presenting a single gaming experience. At that very moment, servers become truly *hard*, in absolutely every sense.

So no, the client for a top-of-the-line 3d-graphics-client-using de-synchronized 2-person chat-room is not complicated compared to the server. But you'd be hard pressed to find a game that uses a client that is more complicated than it's server when you're looking at a synchronized server with a reasonably sized user base, especially once that server becomes distributed.

This topic is closed to new replies.

Advertisement