Complete a hackathon every year. It’s a great excuse to leave your everyday problems behind for a day or two and force yourself to overcome new challenges.
Last weekend, I built a game for Global Game Jam 2021. I brought my 4 year old son into the process. He’s great at videogames for his age (thanks pandemic). I wanted to show him that he could be a creator of those experiences, not just a consumer. It was a great opportunity to let him feel a part of a larger tribe of creative humans. You can download and try Ash the Pirate.
The theme for Global Game Jam was “Lost and Found”. During the brainstorming session that Buffalo Game Space ran for the event. My son piped up and offered this idea:
“How about you’re a pirate, that’s lost his parrot. You have a boat and there’s holes in the boat where sharks try and bite you. You have to press ‘A’ to jump over them.”“Ash” Age 4
It sounded like a well scoped hackathon project. It had a theme, a win condition, and a game mechanic. Now it was time to make it Testable, Usable, Loveable.
Invest in the experience
You need art, music, and sound effect to make a game immersive. Stephen Petoniak composed an awesome Sea Shanty for the game. But it still needed sprite sheets, tiles, and sound effects. Investing $30-40 in those assets from artists on Envato Elements and Graphic River was worth it. The really made the Game look much higher quality and allowed me to focus my energy on learning Game Maker 2 and writing code.
Play Test Repeatedly
The best part of the experience was watching my kids Play Test the game. Every few hours, I would take a break and explain the work I was doing and let them test it out. If you want your software to be bug-free, only use it yourself. If you want to make rock solid software, have other people test it. Your assumptions about how your software should work are rarely congruent with theirs.
Collisions Happen Every Frame
My biggest takeaway as a newly minted Game Developer, was that collision detection happens once a frame. I repeatedly created bugs in my code by not realizing that a statement would be executed more than the first time it happened. I hacked around the issue of triggering things multiple times using if-statements and Booleans. I’m not sure if that’s a design pattern or an anti-pattern, but in the context of a hackathon – it doesn’t matter.
Ask for Help at Hackathons
As a Hackathon organizer, I’m always disappointed by how participants underutilized mentors. People volunteer their time to help novice developers, but they rarely get asked to supply their expertise. Instead of asking for support, folks spend 4 hours on a bug or an error that a Senior Developer will crush in 5 minutes. As an experienced developer, I didn’t make that mistake. I pinged the mentors and they debugged my code incredibly fast (thanks John, Kendall, Matt, & Jared). This rule about asking for help applies to all domains of expertise. Find mentors, ask questions, you’ll be more successful in life.
- Design some levels using graph paper with my children
- Replace the sound effects with recordings of the kids (so they can be in the game)
Ash The Pirate was playable after 48 hours. My kids learned a little bit about how games are built. I’m pretty happy with the results. This happened because my son tightly scoped the project. I invested in assets to speed up and improve the quality of production. My children play tested the game repeatedly while in development. I didn’t let perfect get in the way of good enough. I asked for help.
If you read this far, you should sign up for my newsletter: