"It's made of details": Staying focused as a hobbyist game developer
CreatorCrate's Jori Ryan on how part-time developers can keep themselves undaunted by bigger picture worries as they work on their project
I just released CreatorCrate. It's a game about a cute appliance with a grabby arm that goes on a chaotic rampage through a massive, circular space station.
I want to tell you how I finished it, but first, I need to show you what I found in my closet.
My landlord is selling my building, and I need to move. That's why, even though I've been so busy with the game release, I was in my closet, digging around for things to throw away. In the very back, I found a drawing of concentric circles. I hadn't seen the drawing in years. It's the space station from my game, from very early in the project when it was just an idea.
If you look closely at the drawing, you see a tiny stick figure person next to a tiny stick figure CreatorCrate.
CreatorCrate took me seven years to develop, sometimes part time, sometimes full time. I've struggled a lot with feeling unable to make meaningful progress
Somehow, I'm here today, and the plan that I drew then is a game now. I don't have the words to tell you how I feel about that. I could say that I'm overjoyed, but it's bigger and weirder than that. I never really thought that I'd get here, and I've never been happier to be wrong.
CreatorCrate took me about seven years to develop, sometimes part time, sometimes full time. I've struggled a lot with feeling unable to make meaningful progress no matter how hard I tried. I've known a lot of other independent game developers who deal with the same issues.
Big projects are hard. The work you did last year on your project is deeply enmeshed with the work you're doing today. Each new decision has to fit into everything that you've done before and everything that you plan to do. This accumulating weight wrecks game developers' passions to keep working on projects long enough to finish them.
Over the years, I've gotten better at ignoring the dread that comes from making something that won't be finished for a very long time. I've formed habits for paying attention to the immediate work. I've learned how to make the best use of inspiration when I have it, and I've learned how to keep going when I'm not inspired. I want to share how I've learned to stay focused, moment to moment, while the project slowly becomes more complete.
What works for me might be very different from what works for you. Find the techniques that help you the most, keep those, and throw away the rest.
What if you don't want to work on the game?
I and nearly every other game dev has had the feeling of just not wanting to work on a project anymore. This isn't a problem in itself, but it usually comes with other issues. At some level, you probably have a strong desire to be able to finish the game. It's very rewarding to have your work become complete and see people enjoy it.
You could start a different, more exciting project. You could do things differently this time. Sometimes, that works out really well. There's a danger, though. You might find yourself in the same situation six months later, when the new project starts looking like an old project. You might also need to finish the current game for economic reasons, or you don't want the work you've already put in to be wasted.
Making a game is a really overwhelming idea. Even the idea of working on the game is overwhelming
It's probably not that you don't want to work on the current game. More likely, you really, really want to get work done on the game, but you don't feel motivated right now.
Taking care of yourself has to come first. Make sure that you're getting enough sleep. Take breaks, get exercise, and spend time doing the things that you love outside of game development. This might be all that you need to come back to your project feeling refreshed and inspired. If you still don't feel like working on the game after that, I've found work habits that help.
- Open the project
Making a game is a really overwhelming idea. You can probably imagine playing your game after it's made. The full process of bringing the game from where it is now to where it will be when it's done, though, is unbelievably time consuming and packed with carefully considered details and moments of concentration and surprises.
Even the idea of working on the game is overwhelming, because there are so many different things that you want to work on to help bring the game closer to that finished goal. What does working on the game even look like?
You can't hold it all at once.
When I've thought, "I don't want to work on my game," I was thinking about how big and unfinished it was, and all of the things that I needed to do to make it finished.
At some point, I stopped thinking "I'm going to work on my game." I replaced it with "I'm just going to open my project"
At some point, I stopped thinking "I'm going to work on my game." I replaced it with "I'm just going to open my project." It doesn't seem like much of a change, but in my mind, it's the difference between years of unimaginably complicated work and a simple action.
Opening my project takes two clicks.
- I might as well look around while I'm here
My project is open, so I look at my to-do list. There's a note at the top about something I was working on last night that I didn't quite finish. I'll start there. Then I move on to the next item on my list, and then the next. Then I figure out some more work that needs to be done.
The best time to ignore the crushing expectations of finishing the project is when you're in the middle of it.
You're not asking yourself, "When will this project ever be finished?"
You're too busy thinking, "What should this enemy do?"
"How can I make this player ability?"
"Where should I put the traps in this room?"
The game is huge and intimidating, but the details are small enough that you can do something about them.
When you're working, it's all made of details.
Turning plans into actions
Remember the to-do list I mentioned? It's important.
I organize my work by planning out chains of very small, easily accomplished steps. Then, I work my way through those steps one at a time until I reach the end of the steps. Then, I make another plan.
My process is very writing focused. There's a good chance that your project has to-do lists, devlogs, or some other kinds of writing. Yours might also involve concept sketches or visual brainstorming, or other techniques that work for you.
My approach and most forms of project planning have the same basic idea. Make a plan for what you want to do. Take the plan and turn it into actions. Follow the actions to complete the plan. Repeat.
- Begin the plan
Recently, I put challenge game modes in CreatorCrate. When the player turns on a challenge mode, it changes a few rules to radically alter how the game is played. My favorite is the no legs challenge (Crate Mode). Players can't run, jump, or climb in the mode. Instead, they have to use their robot arm to swing from wall to wall. This turns the whole game from a platformer into a harrowing Getting Over It style obstacle course.
Make a plan for what you want to do. Take the plan and turn it into actions. Follow the actions to complete the plan. Repeat
I start by making a few changes. I already have a system that lets players swing on lamps. I add a few lines of code to turn the lamp swinging system into a wall swinging system. I don't want players walking in the challenge, so here's a few lines of code to prevent walking. That's all I have to do, right?
It's always more complicated than that. In this case, the part that I need to figure out is the idea of "unlockable challenge modes."
I start with free journaling. This is very rough and often begins with asking myself, "What am I trying to do?" The answer is usually something I've been thinking about for a while but still don't have a clear plan for.
This is how I start: "I want to make challenge modes to give players different fun ways to play the game. What's the first step in doing that?"
- Explore the plan
I continue writing. A lot of the time, I'll contradict myself several times during this stage. The goal is to write as freely as possible and just follow the ideas around. If the problem that you're trying to solve seems impossible, just explore the details of why it's impossible.
"Players will need a way to select challenge modes.
Players will need a way to know what challenge mode is enabled during a game.
Challenge modes should be unlocked so that players start the regular game first.
I'll need to track stats so that the game knows when to unlock the challenge modes.
Maybe a stats screen is a good place to tell players what challenge is enabled?
Can the stats screen be the same as the challenge mode screen? Probably not, since the challenge mode screen is used at the start of the game and the stats screen is used during the game.
The challenge mode system needs a stats system. The stats system can exist on its own. That means that I should work on the stats system first."
- Break the plan into small actions
Once I feel like I've come to a conclusion, I move on to the next step of condensing my thoughts into small tasks. This might look something like:
* Stats
- Track stats (player deaths, time, current challenge mode, etc.)
- Save & load stats
- Make screen that displays stats
- Make menu option to access stats
- Display stats on death
- Display stats on game win
- . . . (many, many other tasks)
- Add challenge mode where the player has to swing on walls instead of walking
- Follow the plan
Keep breaking the actions into smaller actions until they are easy and small enough that you can flow from one to the next.
Accomplishing things and moving from completed task to completed task builds up a sense of momentum. This momentum helps you to stay focused on the current small, manageable goal. It reverses the feeling of stagnation that builds up in large projects.
If you continue this process long enough, you'll find yourself in a changed project where you've fixed many of the old problems, and there are interesting new things that need to be done.
Adjusting difficulty settings
Do you really need to break plans into such tiny pieces?
That depends.
I know that my level of focus changes in predictable ways during the day. I'm very awake in the morning and late in the evening, and I'm tired right after lunch. Some days I just feel more energetic or more inspired than other days.
Each day is a cycle of using some tools more as I need them and moving others aside when they get in the way.
- Regular difficulty
I use the process that I just described to save energy. Sometimes, I can get away with just writing "Implement Stats System" on my to-do list and leave it at that. After a while, though, I really feel the extra weight of remembering the plan over and over each time that I move to the next step.
Keep breaking the actions into smaller actions until they are easy and small enough that you can flow from one to the next
The moment when you're trying to remember what comes next slows you down and adds to the sense of being unable to make meaningful progress. It leaves you vulnerable as old anxieties creep back in. When will this project ever be done?
You avoid all of that if the next step is already there when you need it. By writing it down, you save yourself the trouble of figuring out the whole plan again and again.
Try to make each task somewhere between a minute to an hour to complete. You want it small enough that you could probably finish the task if you're feeling distracted or unmotivated. If you come to an item that's especially complicated, it's useful to take a moment to break it down into smaller steps. If the goal isn't clear, it's time for more free journaling.
If you don't know how to accomplish a task, research it. Learning new skills can also be broken into many steps.
- Working on easy mode
You might find yourself working for long periods of time with no extra planning. If you're getting things done, and you feel comfortable flowing from one step to the next, you might not need to write anything down. You're already doing what the written steps are there to help you do.
If you find yourself feeling distracted or overwhelmed by the size of the project, go back to planning out your process in writing step by step.
- Working on hard mode (a little at a time)
There are some kinds of work that are terrible and tedious or draining for other reasons. These need to be done eventually, or they'll hold the rest of your project hostage.
Take frequent breaks through these sections. Tiny amounts of work add up over time to erode these challenges. Doing a little bit is so much better than not doing anything. Very explicitly break apart each step so that they're smaller than you think they need to be. Be patient with yourself if it doesn't seem like much is changing. It is.
- Step away and work on something else
When you hit your limit, work on another part of the project for a while. Some indie devs make art to take a break from coding or code to take a break from music. If it's all in the same project, the project never stops moving forward.
I recommend only doing work that you can immediately use. Plans and systems change, so what you put on the shelf today might not fit in the game two years later. I've made a lot of 3D models that never quite found a place in CreatorCrate. What you put in the game right now will grow as the game grows.
I recommend only doing work that you can immediately use
If you really need to get away, game jams let you take a vacation from a project without abandoning it. You can also come up with your own small projects to help you recharge without requiring too much of you.
- Same problem, different day
Every now and then, come back to the hard work in your project and take another chunk out of it. Maybe after the time away, you'll see solutions that weren't there before. If not, just keep resting and chipping at it.
You'll get to the other side.
Be kind to yourself
I feel lucky that I had the huge amount of time it took to make CreatorCrate. I feel incredibly lucky to be releasing it now.
Many different things in my life totally outside of my control had to come together for me to release this game. Having good work habits helped, but there's so much more that I couldn't have changed. It's strange and humbling for me to be here at all.
There are also many factors that can make maintaining focus difficult, and so many other ways that some developers are starting from much harder positions than others.
Productivity isn't everything, and you shouldn't set your self worth based on how much you get done. That's the most vital part of such a huge undertaking: remembering that you're more important than your projects. It's only through practicing self-care that you'll be in the right mindset to persevere through the rough patches and keep doing what you love.
A queer trans woman, Jori Ryan has been a committed hobbyist game developer from an early age, wholly self-taught across a variety of development disciplines. After many smaller game projects, she started her first major project CreatorCrate over seven years ago, using her love for science fiction and monster movies as inspiration.