One Game a Week 2019 Preview
I'm incredibly excited to say that One Game a Week 2019 starts tomorrow, February 11th!
Before I officially embark on developing my first game, I wanted to talk a little bit about some of my plans for the upcoming weeks. I have a few ideas for some of the games and systems I want to develop, and I thought it would be fun to share some of those at the outset. We'll see if these ideas actually end up getting translated into real OGAW entries, or if they stay in my notebook for another time. I also wanted to talk a bit about the tools and technologies I'll be using to create my games, and I wanted to outline some of the constraints that I will (or will not) be applying to my own development process in terms of time commitment and asset acquisition.
But first, let's dive in and run through some of the ideas I've had bottled up for the last few months! So many possibilities, so little time!
Inspirational Works by Amazing Developers
I often find myself inspired when I am playing games made by other creators. I sometimes get ideas for my own games by identifying some feeling or aspect of these awesome games I'm playing, and then I try to emulate or transform that thing into something I can use in my own games. There are a number of times I felt really inspired by some other games while I was working on Omnicube, but I didn't have the time to actually take that inspiration and create a game out of it. Now, I finally have a chance to do that, so I wanted to highlight a few really games and developers that have had a big influence on me.
One of the most influential games I played in the last few years was Stephen’s Sausage Roll. It had brilliant puzzle design, but even more than that, it felt so wacky and original and unique to me. It was so beautifully uncompromising and unapologetic with its art style, and it really just felt like something I'd never played before. I felt simultaneously intrigued and envious of how wonderfully creative this game was -- and I wanted to try and make something similarly creative. I hope that one of my prototypes will get at this core of originality and capture that kind of feeling -- it's definitely a type of game I want to make, even if I don't know exactly what the mechanics are going to be.
Another person whose work I have followed and admired for a long time was Daniel Linssen, aka "managore". Anyone familiar with the recent history of Ludum Dare should be familiar with his work — he’s won the Compo outright multiple times, and essentially everything he works on is polished and fun and amazing. One of the things he makes better than almost anyone else is platformer games -- I’ve always wanted to make a platformer that had similar feel and style to some of the games he's made, and so I will try and find a slot in my One Game a Week project to try and do something along those lines.
I've also always loved games that cover really niche topics or are played in weird, non-traditional ways. One of my favorite games in this archetype is the classic indie game called Papers, Please. In this game, you play an immigration officer for the fictional country of Arstotzka, and you literally process people's paperwork to decide if they are allowed to enter the country. The main mechanic of the game is shuffling papers around on your desk and using stamps to approve or deny the paperwork. Of course, the narrative is a bit deeper than that, and the setting is incredibly authentic and compelling -- in its totality, it's just a wonderful, strange, memorable experience. You wouldn't think this kind of game would be fun, yet it is -- and that kind of dissonance is something I'd like to try and capture in a game of my own.
Other Ideas for OGAW 2019
I’ve had a lot of different game concepts floating around in my head for the last few months. Like many game developers of all ages, I have been hugely influenced by The Legend of Zelda. I’ve always wanted to make a game in that archetype — and in fact, I’ve started to do so a few times but I've never allocated the time required to really build out all of the necessary components properly. It turns out that games in this genre are pretty complicated and there are a lot of moving parts — ideally, I'd implement a dialog system, properly animate the characters, build a system to keep track of all the game state, and a host of other concerns.
I decided for One Game a Week, I have no problem with re-using code between my OGAW projects, or using some sections of code that I've already written. It's not a priority for me to make these games from scratch -- I'm just trying to make games that are fun to work on.
So even though building a Zelda-like game in one week is not feasible -- I thought that I could strategically develop a few games that include some of the core systems I'd need to build for a Zelda-type game, and then bring them all together at some point. For example, one week I might build a game focused on dialog, and another week a game focused on building a 3D world, and so on -- and then I could consider integrating all of these systems together and try to see if I could implement a very basic Zelda-like game. So that's definitely one big idea I've had in my mind -- trying to design some games around some functionality I'd like to implement, and working from that as a starting point.
I've had a few other topics I've always been interested in trying to make into a game somehow. One thing I've always enjoyed is graph theory -- I've never taken a course in the subject, but my partner majored in math and I often found myself drawn to what she was working on. I know this sounds like an annoying humblebrag, but I swear it's not: I would sometimes pick up her textbooks and read some graph theory proofs or try and solve some problems and it always struck me as a great basis for some kind of logical puzzle game. I've never quite figured out how to translate that "wow" feeling of a cool graph theory proof into a compelling game mechanic, but it could be something to spend a week on.
I've also wanted to work on a game where the primary focus is more oriented toward really cool particle/visual effects, rather than my current methodology which usually revolves around mechanics, puzzles, or narrative. I thought it would be a good learning experience to instead have a project where I focus 90%+ of my development time just making really, really polished effects -- maybe layer that on top of some kind of very basic action or arcade or shooter game. I don't have a concrete idea, but I thought something set in a futuristic/neon kind of environment could lend itself to some aesthetic I could do a lot of cool visual stuff with. That might be an idea I work with some week, but I would need to focus the idea a bit more and have some concrete ideas for some of the effects I want to achieve.
I’ve always loved turn-based strategy games and RPG games — although those are typically pretty ambitious projects, I might try my hand at a very scoped-down version of those genres. Maybe building out some robust battle system or creating an RPG that is narrative-focused and devoid of any combat whatsoever -- those could be cool concepts for a game.
I've also long toyed with the idea of making a very, very minimal game in terms of visuals -- making a game entirely out of ASCII art, or making a game that runs entirely from an interface similar to a command prompt. Something like that would probably be a good fit for OGAW since it's probably relatively simple to program.
And of course, I want to leave some open slots for any great ideas I have along the way! I hope to have some other internet friends work on some games, and perhaps I will find some inspiration there — I’ll be checking #onegameaweek and #OGAW for cool screenshots or game links.
Tools of the Trade
I wanted to take a second to talk about what tools I plan on using for developing my games.
Most of my game development experience is with the Unity game engine. For anyone getting started making games, I highly recommend it. There's definitely a lot to learn in order to get started with Unity, but there's a great amount of documentation and forums which can help you with that initial learning phase. I also sometimes work with GameMaker Studio. Usually I will reserve this for 2D projects, particularly turn-based RPG, action-RPG or platformer games. This is another engine with a pretty large community behind it, so there are plenty of beginner-level video tutorials available.
Sometimes people ask me if they should bother learning a game engine or if they should just work with some libraries and implement things from scratch in the programming language they already know. I understand that instinct, but unfortunately for new game developers that go the route of trying to code their own engines, it usually ends up being a very big mistake. It's easy to underestimate how hard it can be to get the most basic things working -- rendering, physics, animation, and more -- trying to figure out a way to implement these systems yourself or trying to pull together several different frameworks to create piecemeal functionality is a massive undertaking. Trust me -- if you want to make games, take the time to learn one of the two engines I've mentioned, or another existing engine. Otherwise, you're in for a world of hurt.
I typically use GIMP for any 2D pixel art needs, and Inkscape for 2D vector art. I usually use Blender for 3D modelling.
For music and sound effects, I usually try to find public domain or assets under the creative commons license to use in my games. Every once in a while I've tried my hand a little bit at creating music and sound effects, but it's something I've always struggled with. I get a lot of my musical resources from opengameart.org, or from the amazing Kevin Macleod on his website. I also sometimes create my own sound effects using a sound effect generator like jfxr.com.
This set of technologies has served most of my needs throughout my One Game a Week projects. I plan to make a few adjustments to my art workflow over the next few weeks, but the above collection of software should be a great set of tools if you are interested in making games and aren't sure what to choose.
I want to talk a bit about some of the constraints I'm going to be imposing on my development process over the next few weeks. Most people doing this kind of project will have other commitments they have to allocate time for, and I'm no different -- I wanted to call some of these out to give people some idea of my work process.
First of all, I want to talk about time budget. I spend about 15 hours a week on non-video game work — so my time is a bit more constrained based on that. Of course, if you’re developing along during next few months, you may have a full-time job, or maybe this will be the only thing you’re working on — either one is okay! I also plan to dedicate a couple of hours each week to writing some content about my development process, so I'm going to try to budget some time for that.
I also want to talk about financial budget. One of the big lessons that I learned in my game development career this far is that I am not an artist. Even though I enjoy making art, I don’t really have the skills to make the 2D or 3D art, animations, sound effects, or music that are required to make the games I want to make.
I often spend a lot of time working with awesome free options like opengameart.org, but sometimes it can be hard to find art that works together in a cohesive way. So I've decided that I'm going to allocate a bit of money for an art budget, whether that is through the Unity asset store or some other avenue. I'm going to try and allocate about $500 USD for the entire duration of One Game a Week -- I might use none or I might use all of it, but I want to be upfront about the fact that this will be one method I use to acquire the art I will be using in my games. I also want to acknowledge this is not possible for everyone, and that's okay too -- there are a ton of options for finding art that don't require any money. I didn't have a dollar to spare when I did this project back in 2014, and I still came up with plenty of awesome games.
Time to Get Started!
All right! Now that I've outlined some my ideas, as well as the rules I plan to follow and some of the goals I hope to achieve, I'm finally ready for One Game a Week 2019! Development will begin tomorrow after I announce the theme for week 1.
I can't wait to get started!