Inspiration
Even before arriving at HackBCA, our group knew we wanted to make a multiplayer game, something we could actually play and enjoy. We didn't want to make "just another shooter," or "just another platformer." As founders of our school rocketry club and Kerbal Space Program enthusiasts, space was a logical setting for our game, and a solution to our problem.
Gameplay
Imagine a capture the flag game: players are split into two teams, and are tasked to capture the enemy team's flag. However, there's a twist: all of this is happening... in space. In order to navigate the map, players must perform orbital maneuvers, deftly jumping between and avoiding planets while contending with enemy players. Players can also shoot other players for both defense, offense, and propulsion. The game ends when either the flag is captured, or all of the members of a team have been killed.
How we built it
The game was built using web technologies to make it accessible and universal, in addition to allowing us to play around with fun new technologies. A javascript front-end (served with apache) renders shapes sent from the server onto a HTML5 canvas and funnels user input to the server, in addition to providing menus such as game room and player name selection. This communication is done using socket-io. The python flask backend handles all the physics, logic, and gameplay, using pymunk as a physics engine.
Challenges we ran into
This was our first time really using flask, socket-io, pymunk, or the canvas in a project. It was also the first time (for some of our team) making a game.
Accomplishments that we're proud of
It's actually playable and fun; everybody at our table was vying for a chance to play Vulcan.
What we learned
Although beautiful menus may be beautiful, they also may not be the best uses of time at a 24 hour hackathon.
What's next for Vulcan
After the hackathon, we'd like to polish the codebase and formally publish Vulcan.
Log in or sign up for Devpost to join the conversation.