A Reflection on Making Games

From just talking about games, to actually making them

Games with Geebs
9 min readJan 2, 2021

By Justin Perri, developer and co-founder at Games with Geebs, an indie game studio in California.

I picked up my first controller when I was 2 and haven’t put one down since.

I fell in love with all kinds of games as each one offered something unique. Exploring Hyrule in Zelda filled my soul with a sense of wonder. Mario always kept me intrigued because I never knew what crazy weirdness the next world had in store for me. Duke Nuke’em left me feeling like a badass as I blasted aliens to pieces while saving strippers. Games like Mortal Kombat, Starcraft, and Golden Eye scratched my competitive itch when playing with friends. Needless to say, games have always been a part of my life and always will be.

It’s dangerous to go alone!

Jump ahead to April 2015 to when I met my then girlfriend (now lovely wife), Alyshia. I am extremely fortunate and blessed to have met a woman as brilliant, beautiful and passionate about video games as she is. She supported my “childish” hobby of playing video games and we would frequently throw around game ideas for fun. In 2017, we had the wild idea to actually make one of these ideas into a game. We knew it would be difficult, as we would have to do it on the side between work hours, but we knew we’d have fun doing it.

Fumbling around

Alyshia and I knew we wanted to build 2D games with an emphasis on story, but that was about it. At the time, she was really slammed with work and couldn’t contribute much beyond ideas, but I knew I would have to spend quite a bit of time learning a game engine that fit our needs, so that was fine. After digging through multiple articles on different engines, Unity seemed to be the most robust gaming engine out of the box for creating 2D games. An added bonus was that Unity uses C# for its programming language and I had spent the last 6 years developing business applications for companies mainly using C#. I signed up for a Udemy course that I went through in two months. With my new found skills I felt ready to start our first game!

Let me at ’em!

Without giving too much away, one of our first game ideas we wanted to tackle was about a friendly leopard seal who does adventurous things. Making the seal slide down a slope into water seemed like a good idea, so I started there. Our seal is supposed to be fun and the player should have fun being the seal — he should be able to slide, swim, glide and do other things seals do. Well, my “toy” of this seal sucked. Like, really sucked. See for yourself:

Look at that amazing art by me!

I couldn’t get the character to slide, swim, let alone stay on the damn floor without falling through it into the abyss. After about three months of this, I was ready to give up. I began to think that if this part was this difficult, then how would making an entire game about this water loaf be practical? I convinced myself that this character was too hard to make for a first game and let Alyshia know it wasn’t happening. She was on board with trying something else.

Take two

The next game idea of ours was about a young couple who go on an adventure to their favorite food joint. The quirk was that the girlfriend turns into a monster when she gets hungry. Naturally, we nicknamed this idea ‘Monster Bae’. This idea would be a much smaller game, there wouldn’t be a ton of story, and the main character would only walk, run and jump. It seemed much more achievable. Three months later, I finally had some solid movement in my character. BOOM. I was jazzed about it. I even created some environment art, a stick figure character, learned the basics of animation and animated the sucker:

Proud of my moon

Since the game was about a hungry monster girlfriend, I implemented her doing monster things, like running around flailing:

You better have some cookies in that backpack

I felt like I was on fire. I started telling everyone I was making a game and it’s going to be great. The next several months were spent flailing around in Unity some more. I aimlessly added some lighting, environment parallax and even created some different scenes with my awesome art style. Even though I learned the tool relatively well, I still had no idea how to actually make a game.

Peeling back the onion

Alyshia and I moved back to California and she switched to working fully remote, freeing up some of her time. Ready to commit more fully to our little side venture, she took a way different approach to ramping up than I did. Design is Alyshia’s trade, but this was a whole new area of design for her. Before diving into development, she consumed as much information about game design as possible. She read Gamasutra articles, random blogs, picked up the Art of Game Design, watched youtube videos of indie studios and soaked up whatever resources she could get her hands on.

Meanwhile, I kept implementing features into our “game”. I have the tendency to be heads-down and hard-working, but not always smart. I was convinced that our game was going to be awesome because the idea was different and funny, so I charged forward adding whatever ideas popped into my head.

Once Alyshia was ready to dive in with me, I believe she quickly got overwhelmed at how little I actually knew about game design. I could make objects move on screen and knew a little bit about my tool, but that was it. Alyshia pushed me to challenge all of my ideas and to determine whether or not they truly fit with the experience we were trying to build. I began to understand the importance of game design, but still had no idea how to do it. So, I broke from coding and started to research the topic myself. I learned what a “toy” is, the basics of how to tell a story in a video game, how to develop game loops, and how everything you do or have in the game should work together to sell the believability of what it is you’re creating. All of this new information really made me step back from coding — which I initially believed was the most important aspect of game development — and see that making a great game involves many (equally important) facets.

Alyshia and I spent several more months immersing ourselves in all things game design. My tasks shifted from hacking at code to things like writing stories, listening to audio clips of rushing water or rustling leaves to help me visualize an environment I wanted to recreate, and mentally putting myself in the shoes of our characters to understand the decisions they’d make. Things started clicking and I understood why: I was acting like a game designer, not just a game-loving programmer.

The big realization

Deep in pre-production of “Monster Bae”, we began to realize how big the game was and that it was going to take a long time to make it to our standards. Hungry to learn from the end-to-end process of making and shipping a game, we didn’t want to wait that long to complete our first project. With the shit show of a year that was 2020, Alyshia thought it would be fun and therapeutic to take a small break from Monster Bae and work on a smaller Oregon Trail parody game about 2020. My reaction in real time was something like:

Our Monster Bae idea was intriguing and fun to me and making a game about 2020 sounded lame. Not to mention, there was already a flood of indie COVID-19 games that came out in response to the virus. However, even though the topic was unappealing, I knew it was a good idea to step back and create something from start-to-finish and learn from that. We agreed to keep the scope smaller, and it helped that we already had a soft template for the game (since it was a parody of an existing game). The more we talked about it and planned, the more excited we became about the game.

A foundation is formed

Even though we had a base design to work from, there was quite a bit of design still needed — we didn’t want it to feel or play just like the Oregon Trail. We designed and scoped out the game before writing any code. A roadmap of all of the things we wanted in it was the result of weeks of planning. By the time I was ready to sit down and code, I knew exactly what I was building. At this pivotal moment, I realized the power of designing a game upfront.

My mindset shifted from “Hmmm what should I make?”, to “Okay, I know what I need to make, now how do I do that optimally?”. I was growing in leaps and bounds. I learned more in the last 4 months of developing this game than I have in the last year and a half I spent fumbling. My code is much more organized, I’m easily able to identify when something should be reusable and how to make it reusable, I learned some nifty camera tricks, some fun post-processing tricks, wrote a save system I’m proud of, created a slick dynamic weather system and countless other things. Looking back, I realized that if we created a game as large as Monster Bae with the little-to-no upfront design approach, the game would have crumbled. Stepping back from it was one of the best decisions we’ve made. Monster Bae will be a better game for it.

2020 Trail is really shaping up to be something that we are both proud of. Not just that, it’s actually fun! It may not have been the game we desired to make initially, but it is the foundation we needed to stand on before creating anything else.

In closing

We are planning to release 2020 Trail for free on both Steam and Itch.io for PC and Mac in early 2021. Going forward, I plan to continue sharing my experience with designing and developing games here at our studio, Games with Geebs. I find blogging to be a great way to get thoughts out of my head and I hope that people either enjoy reading these experiences or can benefit from it if they themselves are on a journey to make games. I won’t be sticking to a specific format as I plan to bounce between more high level blogs like this one and more technical dev logs. Who knows, maybe a wild Alyshia might even appear and write a blog herself! Happy New Year!

--

--

Games with Geebs

We’re an indie game studio. We live to serve a cat named Geebs and craft quirky games for you. | gameswithgeebs.com