Hello,
I with some colleagues want to make a game server of our own, but we do not know how to start. Is there a suggested papers or tutorials to read.
Ahmed Saad
Hello,
I with some colleagues want to make a game server of our own, but we do not know how to start. Is there a suggested papers or tutorials to read.
Ahmed Saad
In order to build a server, you need a game idea first! And that greatly affects the design. What had you in mind?
Cas 
It seems to me that the implication is that they mean to serve existing games! No?
Mainly we want to build my own games. The games are some turn based games like (Domino, Cards, Checkers … etc). We may also make some simple real time games like Yahoo! Towers.
I want to ask a question. If we want to support existing games, shall we put all its rules on the server ourselves?
Ahmed Saad
aseldawy: How much programming experience do you have? Any client server programming? What languages?
It would be easier to tell you what you need if we know where you are starting from.
Ok, first u need a layout of this game that u want to design----Like coordinates, what program to use, what Database host to use…and also how is people gonna know about it( local or not)
I use Sql server 2000 and host about 7 data bases on there…But u must know how to use, it takes time and patience to build…u must also know ALOT about working with sql, extensions.ect…
We have a very good programming experience. Actually we are in the computer science department and this will be our graduation project. We do not know how start yet.
The features we want to add is
-Each user is connecting with username and password.
-Score is maintained for each user in every game.
-Ability to choose from different lounges/tables to play.
-Artificial users (computerized) may be added to achieve a minimum number of players at a game.
-Passive user can sit down and watch a game.
-Text chat/Voice chat is available while playing.
We want to apply all those to different games. Games are very simple (domino, cards … etc.)
Ahmed Saad
If you are doing TURN based games (dominos, cards etc.) you can actually get away with mainly PHP/MySQL on the server side. A nice Linux server with Apache, PHP4, MySQL4 is robust, easy to use, and cheap to run. Especially if you have the resources of a computer science department at your disposal! This can easily provide the lounges/etc. and there is a wealth of example code for PHP/MySQL out there.
The Java games themselves (applets if you want them embedded on the web pages) then request specific ‘php pages’, and the php can then send any data it likes as a response (such as the current state of the game). The one aspect to be aware of here is that the php pages cannot contact the clients directly - they can only respond to requests FROM the client. However, if the clients ask for updates every 10 seconds or so it is workable - and possibly the simplest way. Use the MySQL database to maintain the state of each game & any chat messages.
For more complex games (of if you require the server to broadcast messages to clients), either use a Java server or a C++ server. These should still be able to access MySQL databases (although I don’t know hopw the Java does this) - which provide the info for the players in the games, lounges, etc. the applets would then open TCP connections to the server app when the game starts. This is more complex for the networking side - but could be easier if your happier dealing with code & sockets.
Hope this helps (or gives you some possible directions to pursue)