Phoenix USC is a fast action space combat game inspired by SubSpace (www.subspace.co). Phoenix USC is an MMO that will handle hundreds of players per server and will come complete with it's own map/world editor. Phoenix USC is currently in the beta stage of development. If you like massively multiplayer fast action addictive top down shooting games, then this is the game for you. This project will begin open beta testing soon so check us out. :)
Progress update on the client and server networking model used in Phoenix USC.
Posted by Vidiot_X on Feb 9th, 2014
I have been working on the server and client model for Phoenix USC over the last month. This, with out a doubt is the toughest portion of the project to code and develop. My goal is to make the client/server model as secure and cheat free as possible. This requires an approach known as client side prediction and an authoritative server. Basically a system that takes control away from the clients and makes the server the supreme authority on all aspects of the game.
The biggest problem with developing a system like this in a 'twitch' style game like Phoenix USC is the lack of position, velocity and other data being sent from the clients. In the above model only moves (left, right, thrust) and a time code are sent to the server. This makes it especially tough to implement in inertia style games where the client ship (actor) keeps moving between packets sent from the client or server. Additionally the ship can move in any direction and can form curved paths and also react to hitting a wall or other forces such as repel. All very difficult to predict and maintain a parity between the server game state and the clients games state.
So I am working on two different networking models at the moment. One as described above and another that allows additional client data to be sent to the server that is secured by encryption and other security measures. This second method uses a authoritative server and client prediction but relies on additional data from the client such as velocity and position. While potentially open to cheating the server monitors the actions of a client and can reposition a client if needed or discontinue a client that is cheating.
So, I am wading through all of this and it is really a matter of balancing security and performance. I will keep you posted on my progress and I am not to far off from locking this all down and moving forward. I have a working server and client and it is now a matter of choosing the best model for networking and security.
As some of you know it is just me here working on coding and developing this project and I can assure you that I am working every day to research and develop the best game possible. That said there is a need to help fund this project through a cash donation or hardware donation. I am getting to the point where I am in need of additional hardware such as an Android tablet, IPAD and a system setup to properly support Linux and Mac OSX. If you can help please donate at my site www.phoenixusc.com or if donating hardware message me here on Indie BD or at email@example.com. These hardware devices and systems are needed to compile and test Phoenix USC so if you have an older system or device you are replacing why not help out a worthy project like Phoenix USC by donating your hardware.
- Rich -