**Note: I have updated my requirements**
I am looking for a very simple client server based game. The game must be written in C++ preferbly using MSVS 2005.
Winsock API must be used for the networking part. You will be responsible to post two applications, one being the server and the other being the client.
The server must be able to replicate the game world in real time and show what is happening.
The client must accept a single user control and also include at least 1 movement algorithm for enemies.
The server must be able to support at least 3 clients.
The "Dead Reckoning" algorithm must be implemented in the game. Perhaps also develope a simple function that will emulate lag/high latency to observe how the algorithm works in real time.
Note that I don't want an award winning game with nice graphics and soundtrack, the game can be as simple as possible as I can work on that later on. The most important point to focus on is the networking part and also make sure the game is fully functional and easy to integrate new classes into the code in the future (this should be easy if you make use of C++'s OOP).
I would appreciate if you could include a brief description on your plan for the project while submitting your bid. **Please do not post pre-generated bid response when initiating your bid.**
You are free to select what API to use to render the game but I would prefer either **Ogre3D, DirectX or OpenGL**.
I have some 3D art assets that I can provide if there's a need however the are all based on a 3D space shooter game. So I have mainly planets, shapeships and alien enemies.
I would need the code to be very structured and well commented.
There will be no doubt a lot of discussion or questions that will take place during this stage so I hope that the coder is prepared for constant updates and communication with me.
The coder must be patience, commited and also have a positive attitude.
**These are some general requirements :
1) Use the WinSock API for creating a real-time interactive network application.
2) At least two separate applications.
Client : Minimum two objects in the client, one user controlled and another moving via algorithm of your choice.
Server : Host the game and also able to display exactly what is going on in real time.
3) Prefer to use TCP/IP, UDP. Justified to the purpose of the game.
4) The application will be running on three or more clients and everything should be in real time.
5) Network lag/latency must be handled. **"Dead reckoning" algorithm implementation a must**. Must also be able to simulate network lag to show the algorithm in action.
6) The project should be able to be opened in any computer with compatible Visual Studio without the need to install/link additional libraries or software. So preferbly do not use MFC.