When I first encountered Baba Is You, it was in its game jam version. Alike all great games that found my way (or is the other way round? I like to think it’s the former), I still remember how I felt during those 30minutes spent on the game. “Delightful”, “so clever”, were said out loud as I had this huge smile spread across my face, joyfully taking that little dog-pig figure along the puzzles laid out for me.
I met Arvi later, at the IndieCade EU 2018. He was just like his game ( except he doesn’t look like a dog-pig ): soft-spoken, genuine, welcoming and delightfully clever.
Arvi Teikari is no newcomer when it comes to game development — after all, it’s been his dream since kindergarten!
Our finnish developer has already released under his studio Hempuli the metroid-like Environmental Station Alpha in 2015, and is one third of the trio composing the Nolla Games team, currently working on the very exciting physics-based platformer Noita.
Now, 5 months after we met, his Awards-winning, exciting operator-based puzzler is coming out, and we had the chance to pick a little bit of the brain behind the game!
Hi Arvi, and welcome to our Coffee Break interview!
Baba is You’s release now getting closer, how exciting!
While we know that Baba was born from a jam (Nordic Game Jam 2017 –Ed.), how did this “logic operator puzzle” idea came to mind?
The theme of the jam was “Not There”: this made me think of logic operators, especially the way one can negate the meaning of a statement with “not”.
I had also been playing various turn-based block-pushing games such as Snakebird, A Good Snowman Is Hard To Build, Jelly no Puzzle and Stephen’s Sausage Roll in the years before the jam.
Inspiration from those games kind of combined in my head with the jam theme during the evening it was announced. Eventually the concept solidified in my head to the mental image of a block of ice remaining frost in a pool of lava due to the statement “Ice Is Not Melt”! I started semi-hesitantly prototyping this idea and while the “Is Not”-statement didn’t make it into the entry, the basic concept stayed fairly similar.
Baba is You has garnered a lot of attention.
What do you think is the recipe for its appeal?
The dichotomy between cute, minimal looks and fiendish mechanics?
Maybe the crazy combinations one can make, while keeping the game very accessible?
A design aspect that I usually try to strive for when making games is surprising/amusing the player; I think Baba’s concept lands in a lucky spot where the mechanics provide some interesting situations without the basic system seeming too complicated to players, so there are several low-bar sources of surprise/amuse that catch people’s interest. For example, I’ve noted that showcasing “Baba Is You” turning into, say, “Wall Is You” and have the player controlling the walls seems cool to a lot of people, while being very simple in terms of in-game implementation.
I guess this means that in my eyes the game’s main “meat”, (i.e. most of the puzzles), might not be what players’ll be interested in the most.
The game gets really tough and while I’ve tried to offer amusing interactions throughout the game (and I think I’ve succeeded ^^), the difficulty curve and the effort required to see some of those will probably turn many non-puzzle lovers people away. A tester suggested giving the players the ability to “opt out” of the rest of the game by offering an ending quite early, and I liked this idea a lot because it meant that people not into super-tough puzzles could play the game and appreciate the concept without having to worry about the difficulty curve as much.
Some people have commented that they like the artstyle, but since the game’s aesthetic is still quite minimalist, I’d imagine that it’ll be a somewhat divisive aspect.
Did you ever feel like your game, as you kept enhancing it for a full version, was becoming a kind of Frankenstein’s creature?
I’ve seen a lot of crazy GIFs from your twitter account, where Baba’s behaving, well, not quite you envisioned ^^
There was definitely some feature creep in the mix when designing the rules, but I feel that the game managed to mostly avoid becoming too chaotic, one factor being that the most complicated words do so much on their own that they usually benefit from appearing alone. Therefore I could design areas with a specific new rule/word in the spotlight, with the more basic words acting as a supporting cast. This meant that I ended up having to have quite a few levels to teach those more basic “supporting” words first, though.
Even with the words that are in the game right now, the whole rule system had to be rewritten multiple times to make the game logic consistent(-ish). On top of this, I have multiple ideas for words/puzzles that didn’t make it in for various reasons, and during the development I had to cut a couple existing words for being too confusing or not interesting enough (e.g. “Back”, a word that made objects move backwards in time).
Some of the words that did make it into the full game had to be adjusted/simplified over the development for similar reasons!
To give a fairly confusing example: “Baba Is Push” makes Baba pushable (and in turn push other pushable objects when pushed). “Baba Is Shift” makes Baba act like a conveyor belt, moving objects on top of it. Since the objects on a conveyor-Baba weren’t technically “pushed” rather than “moved”, it made sense at one point that they wouldn’t be able to push other objects, and consequently not care about walls, either. As a result there was a level about moving through a wall with the aid of conveyor belts. Tester feedback helped me realize pretty soon afterwards that this wasn’t a very good logic to pursue.
How did you go from jam build to full game version?
Was your initial game engine open enough for all those additions, or did you basically have to redo the whole game?
I‘ve built’ the full version on top of the jam build, but very very little has stayed unchanged between then and now. As mentioned earlier, I’ve had to re-implement some of the most fundamental systems several times, and changing the graphical style has meant that things like the game’s resolution, visual code and so on have had to be changed as well.
I use a game-creation tool called Multimedia Fusion 2 by Clickteam along with the language lua, and MMF’s relatively easy workflow combined with how easy lua is to approach have made the process of rebuilding everything mostly a fairly painless experience. The jam version supported only square-shaped levels and all the objects were hardcoded. Breaking these limitations were some of the larger undertakings during the progress from the jam version to a finished Baba!
How do you keep those logic operator rules manageable?
Meaning, having the puzzles leaving enough possibilities for the players, while making sure they won’t crash the game entirely?
The rule system is almost entirely dynamic, barring some specific more obscure interactions; so, for example, You, Move, Push and the aforementioned Shift all utilize the same basic movement code, just in slightly differing ways.
This means that I haven’t had to worry about accidentally exposing interactions that do not work, except in those aforementioned obscure cases. There are still some very simple cases where the player has the ability to “break” the game, though, for example by spawning a lot of objects — I’ve tried not to prevent the player from doing this if it otherwise fits the intended solution of a puzzle.
Have you ever been surprised by some testers’ way to solve a puzzle, finding a solution you haven’t thought of?
In a game like this it’s very easy to accidentally leave an unintended solution in. In earlier levels this is less of a problem since the unintended solution is often equally difficult to the intended one, but in later levels the solutions become necessarily more complicated and thus they can’t support similar amounts of freedom. There have been numerous occasions where I’ve had a cool idea for a puzzle and implemented it, not noticing that I was leaving a way more obvious solution in plain sight.
I’m very very grateful for the game’s testers for how much time they’ve put into showing me just how carelessly many of the levels have been built over the course of the development. In some cases the tester-found alternate solutions have been so cool that I’ve ended up putting them in as a separate, “variant” levels!
You’re a studying Psychology.
Did it have any impact on your approach to game design?
I can’t say that I’d have thought much of psychological concepts when designing games, but I’m pretty sure that what I’ve studied has affected my design process in various less obvious ways.
In Baba Is You there’s one very specific instance of inspiration from psychology: Baba and another character, Keke, had their names be inspired by an old psychological study where people were shown two shapes, one spiky and one round/bubbly, and asked to name one “Bouba” and one “Kiki” (if I remember the details correctly). I’m pretty sure you can guess which answers were found more common. But in the end there’s no thematical relation between the game and the study, I just happened to think of the latter and used it as an inspiration for the former.
Indiedevs usually struggle with how to get visibility for their games.
While the multiple awards Baba has won or been nominated for certainly helped, you seem to handle the communication part quite well.
Any tips for your fellow peers?
Hmm. I feel a bit uncertain answering this, because I think there are various factors that I haven’t had any hand on that have affected how well Baba Is You has gained attention. The formula of how to get visibility is a very complex one, and while there are things I’ve intentionally tried to do, it’s very much impossible to say how much they’ve actually affected anything and how much of the outcome has resulted from other factors.
I wouldn’t want it appear like I was claiming that whatever I’ve done had been the “key” to getting somewhere, and disregard the very privileged position I’m coming from, having had a lot of free, peaceful time in childhood and teenage years to dedicate to game development, to name just one thing.
But as far as things I’ve intentionally tried to do go, presenting yourself and talking about your games at events and/or having a friend/colleague do that for you might be helpful. Another thing could be attending jams and other developer-focused events and becoming “known” in the scene. This latter point shouldn’t be taken as me recommending going to events and being friendly solely as a means to gain attention; that’s not very moral and probably backfires in most cases anyway. Rather, I feel that making friends in a scene can help build a supportive network of people for mutual aid in various indie-related (and why not other) things.
Thank you Arvi! Best of luck for release!
Bonus question before we leave you: Coffee, Tea or Beer?
Tea, definitely. Very much a fan of black tea!
Want more? Follow its twitter account for fabulous GIFs and cute screenshots:
And finally, follow us on @GOFIG_news for more indie games news ;)