My goal for this week was to focus, once again, on learning networking. I wanted to choose a simple (already existing) game, turn it into a multiplayer experience, and perform some simple networking.
I ultimately decided to play around with the game Snake.
Snake seemed like a simple game to incorporate multiplayer elements too and had the added benefit of a movement style that lent itself to very few networking latency issues.
What went right
There were relatively few design challenges related to the task of turning Snake into a multiplayer game. I had to add additional apples for the snakes to eat, but other than that, the game’s original rules remained: Don’t run into walls and don’t run into yourself (or another snake).
Ultimately, two player snake felt very much like a slower version of Light Cycles.
What went wrong
I didn’t have time to incorporate networking into the game. I focused on getting the game itself to work and then added local multiplayer controls (as the control scheme for Snake is extremely simple, it’s easy to share the keyboard) – and I did not manage my time well enough to get the networking completed. This is something that seems to happen most weeks, and is increasingly becoming one of my least favorite traits about myself. As I specifically chose this game to learn more networking, it is a huge problem that I did not add any functional networking to this game.
What I learned
I am very very very bad at managing my time. I need to start front loading my week with working on the task most relevant to my overall goal for the week.