When deciding what hackathon project we would like to tackle, we knew we wanted to make a fun game for users to enjoy. We also wanted to learn more about developing an application in the terminal that is simple to play, quick/fun, and would provide a learning challenge for us. Therefore, we decided to make a fun game based in the terminal that includes online multiplayer capabilities.
What it does
This game allows users to open the application directly in their terminal window (great for taking a break from coding!). The application connects to the Google Cloud Platform to communicate with other online users to fend off the impending zombie horde. Score points with your team by killing zombies and protecting your teammates from the enemies.
How we built it
The game is built in NodeJS. We are running a server on a VM provided through the Google Cloud Platform that communicates between all of the clients. On the client side, we wrote a native NodeJS application that runs directly in the terminal window.
Challenges we ran into
The most difficult challenge to over come was working with an application directly in the terminal window. We had to find unicode characters to represent our characters and in-game items that worked both on Windows and Mac. Additionally we had to determine how to best layout and represent a virtual world completely in text.
Accomplishments that we're proud of
One of the things we are most proud of is including a simple yet intelligent AI that adds challenge to the gameplay. The zombies that are part of the game are generated with a variety of AI's that track players as they travel, predict their next moves, and randomize behavior in order to avoid and dodge bullets.