Prism Wars (2015)
Project: Prism Wars
Platform: C#, XNA, RakNet Networking API, Farseer Physics API
Position: Network Gameplay Programmer
Team Size: 2
Timeframe: 20 Weeks
Prism Wars is a 2D multi-player action arena platformer game that I worked on for my final capstone project at NEIT. We presented this game at Pre-PAX East 2015, where
dozens of people enjoyed it. Everything was created from scratch in an object-oriented fashion.
I successfully implemented a server-client model. The client launcher pings the local network
and enumerates available games. The client can then select and join any of the games and begin playing. Once in game, physics objects are synced across
the network by using a priority accumulator.
The priority accumulator works as follows. Each game object that
must be synced over the network has a priority float property. For every frame that this object is NOT synced over
the network, this value is summed with the delta-time (in ms) from last frame. The top 10 game objects with the highest
priority get broadcasted over the network that frame. This ensures that objects which have not been synced recently get synced over
the network, and that only up to 10 objects may be synced over the network, limiting network traffic.