Snow Fight

Snow Fight, a game for the network weekly assignment. Reuses much of the code from the Maze Server.

Goal

My goal for this assignment was to create a competitive limited visibility game.

Method

The idea of this game is that there is a large snowstorm, and some kids have gone outside to play in it. The snow is falling heavily, so they can only see a bit around them. However, they also leave trails which gradually fade away as time passes. I would also like it to be such that the snow rises above their heads. Thus, the can only see through the snow trenches they have made or encounter, resulting in lots of surprise encounters and following trenches in hopes of finding the person who made them. Also, if you are in a trench, you move more quickly, allowing you to catch up to the person making the trench.

Novelty

There are many 2d overhead shooters, but adding in a limited view and following people through trenches brings up lots of new strategy, including looping back to lose people and lots of surprise encounters.

Results

There was no good way I could come up with to do the view limited along trenches, so I decided to keep it at a small view range limit instead. Everything else works and seems to work really well. I originally was planning on putting a speed limiter on the server loop, keeping it from asking for input from the servers more than 10 times a seccond. However, after playing the unlimited version a bit, I decided that this actually makes the game more fun running really fast. However, this makes lag very obvious, as one person lagging makes the server slower, and any speed difference in the server affects the update and running speed on every client.

Because we are using TCP, all messages are guarenteed to reach the target. Thus, I was able to only pass differences in all of my messages instead of passing player position and difference. This simplifies both sides, as I can assume they have all the information that exists. Also, because of this, I have the client entirely relient on the server for all updates and do no self updading.

KIRBY DANCE <('-'<) ^( '-' )^ (>'-')> ^( '-' )^ <('-'<) ^( '-' )^ (>'-')>