During and after our industry’s biggest trade shows, we always enjoy highlighting the talents and insights of some of the developers behind the games we enjoy discovering and playing. Today we’re chatting with Jori Ryan, who recently released CreatorCrate on Steam. Here’s what we found out about her journey through game development and towards the release of CreatorCrate.
A lot of your programming skills were self-taught – what would be your advice to aspiring game developers looking to take their first steps in development?
I think that a lot of people who want to get into game development over prepare. You can watch hundreds of Youtube tutorials and GDC talks trying to figure everything out in advance, but there’s no substitute for beginning work on a project. My approach has always been to look up what I need when I need it. At the very start, you might need to copy a few example projects so that you can start building up a set of tools, but after that, it’s much more motivating to work on your own game. I’d recommend starting out by making something on the scale of a retro arcade game. Make it simple enough that you might be able to finish it as a beginner, but personalize it enough to keep yourself motivated.
You started with game development at a very young age – what have been some of the “games you wish you had made” over the years?
These would have to be the roguelikes that got me into working on CreatorCrate in the first place. Spelunky was especially influential, but Nuclear throne, Binding of Isaac, and even Nethack played a big role in inspiring me to start this project over 7 years ago. These games reshaped how I thought about the time I spent playing video games. They helped me realize that what I really value isn’t winning; it’s enjoying the game minute to minute, trying to survive a little longer, learning from my mistakes, and laughing it off when things don’t work out.
Your first computer was a Commodore 64, where many games were less than 100kb in size including all of the game’s graphics and sound effects. To what degree do you feel like the indie scene is a return to that era of game development?
It’s true that indie developers can’t create the photo realistic styles of triple A studios, so indie games have retro and stylized graphics that can be made by small teams. I want to talk about something different, though. Many of the games I played on the C64 were barely recognizable by genre. They were all weird experiments, some more successful than others, but all of them utterly unique. All of that wild experimentation shaped everything to come, and it was so valuable for me to have that experience that games can be anything you make them to be. I think that today, triple A games have more or less stagnated into a mush of open world action sandboxes with RPG and crafting mechanics. At the big studios, all of the sharp corners have been rounded off, and no risks are being taken. Indie developers, just like early video game developers, are still small enough to try new things.
Procedural level generation, like you’re using in CreatorCrate, always is somewhat at odds with carefully designed levels that offer unique/clever challenges but don’t have as much replay value. How did you manage this balance in your game?
CreatorCrate’s procedurally generated levels are made of very small pieces of pre-designed content. These “rooms” can be as small as 16 by 16 blocks, but they can be larger and irregularly shaped. These pre-designed rooms are placed seamlessly together into a coherent level. Gameplay flows from one room to the next with no defined borders, so an enemy from one room chases you into another room. A gun turret from one room can be tricked into shooting a security camera in another room. The gun turret and the security camera were never designed to go next to each other, but they’re both made of systems that are designed to interact together. This is how the whole game works. I fill the game with dense systemic interactions. Then, the procedural generation joins the systems together in chaotic, emergent ways between the rooms. Within the rooms, the systems interact in more reliable, designed ways. The result is a level that feels intentional without feeling predictable.
CreatorCrate takes place across multiple levels of a curved spaceship, and the curvitude and gravity changes according to how far away you get from the center. What kind of programming challenges did you have to face when designing that?
I’ve always been fascinated by circular, rotating space stations in science fiction. Some examples of these are 2001, a Space Odyssey and the more recent Expanse tv series. Before I made CreatorCrate, I’d never found a game that lets you explore a structure like this. Now I know why. The seamless, circular world of CreatorCrate easily added a few years to development. Instead of cube shaped blocks, CreatorCrate’s space station is made of many different kinds of wedge shaped blocks. All of these blocks interlock to form curved rooms that are generated as chunks of multiple blocks in code. The space station also needs a different kind of coordinate system. All positions are calculated by measuring angle and distance from the center of rotation. Even pathfinding has to work with curved levels in mind.
Because the circumference of the circle shrinks as you travel towards the center, fewer rooms can fit in a ring near the center than in a ring farther out. This means that at certain key points, one room is stacked on two smaller rooms. This all has to work with airlocks that create air pockets. When an explosion breaks a window, the area is depressurized, killing humans, and sucking objects out the window. It’s so amazing to finally be able to share my wonder at exploring this kind of hard science fiction structure, but it was so much work to make it all come together.
What are some of the mechanics you have in place to ensure a sense of progression for the player throughout the game’s campaign?
There are different kinds of progression. One of them is about scaling. You start a game with a gun that does 1 damage per bullet, and by the end of the game, each bullet does 10,000 damage. This kind of progress is easy for the developer because you just keep making the number go up. For the player, though, it can feel cheap and grindy because you’re always scouring levels for slightly better equipment just to avoid falling behind.
Instead of scaling stats, CreatorCrate is all about mechanical progression. You find tools that let you do new things, but the old tools never stop being useful. The vial of acid lets you melt shortcuts through walls and do massive amounts of damage. The knife lets you climb walls and cut wires to security systems. Gravity changes in realistic ways, giving you new abilities. Some areas require high flying acrobatics over electrified floors, while in other areas, you are totally weightless and must float through the air or run along the walls. The challenges increase as you travel. Each area tests your knowledge of the areas that came before and asks you to do a little more a little differently. Above all else though, CreatorCrate is a game about learning. You start with a very powerful character, with lightning fast movement and the horrifying ability to devour everything and everyone in your way. The game is hard because you don’t know how to use that power, and little by little, you figure it out.
What have been some of your biggest challenges during the development of CreatorCrate?
CreatorCrate plays differently from any other game, so the hardest part has always been teaching people how to play it. The player’s grabby robot arm is just as important as the player’s ability to run and jump. The grabber arm and the way that it interacts with physical objects opens up so many gameplay possibilities that need to be taught. For instance, you can take a guard’s gun, shoot the guard with the gun, grab the guard’s body and use it as a human shield to protect yourself from a gun turret, and then throw the dead guard at the gun turret to blow it up. This can all take place in a few seconds for skilled players, but I’ve also seen more cautious play styles that involve hanging back and really thinking about the challenges in each area before attempting them. I’ve experimented with so many different ways to structure the tutorial and other techniques for teaching new players how to play the game, and little by little, I’ve seen a huge increase in how quickly players pick up the game.
What’s next for you, now that the game is out?
I’d love to make tools for player generated content in CreatorCrate. Since the game’s level generator uses small predesigned maps, it would be so fun to have a level editor where players could create and share their own pools of maps for the level generator. When I’m ready for it, I want to make an endless mode expansion for the game. This would let players try to beat an endless series of levels that get harder and harder for a really classic roguelike experience.