This interview is part of our Road to the IGF series.
A Juggler’s Tale has players acting out puppet theater, guiding Abby the puppet on a journey to freedom through a grim fairy tale world. Just try not to get your strings tangled on anything along the way.
The team behind the Best Student Game-nominated title spoke with Gamasutra to learn more about the history of puppet theater that inspired the game, how a puppet’s limitations lead to an interesting idea late in development, and how the developers sought to explore game narrative through the relationship between player and narrator.
We are a small group of students from Filmakademie Baden-Wuerttemberg, a German university for film, animation, and interactive media. For most of the development, our team consisted of only three students. Steffen was responsible for the story and narration design as well as the 3D art, Enzio was responsible for core programming, shading and lighting, and Dominik was responsible for gameplay design and programming as well as level art. But, when you work in such a small team, it is quite natural that everyone is constantly changing roles.
For the final months of the project, Elias will join our team and help us with programming and art, and we also already got (and will get) a lot of external help from other fellow students in the fields of music and sound, concept art, motion design, animation, and more.
Our team has a quite diverse background; our university is usually known for movies and animated shorts, and therefore we all have different study courses. Dominik is the only one in the team to actually study interactive media and who has a small background in developing games (internships and apps). The rest of the team just always wanted to develop a game, and so we started to work on the idea for A Juggler’s Tale in one of our project phases during the second year. Over the following years, we somehow always came back to this game and just now actually founded a company around it.
We really liked the thought of having a narrator in a game and what it changes in storytelling from a gameplay perspective. Influenced by some games we really liked at the time, we also wanted to build a strong connection between the player and the narrator. After that, we quickly decided to have string puppets as a visual representation of that connection, and the whole theater setting as a surrounding.
In addition, string puppets are kind of cute and easy to fall in love with; they are usually not the creepiest puppets. With their own movement dynamics and natural limitations, you can build an interesting story and gameplay around them.
The game is being developed with Unreal Engine 4, which we actually used for the first time but really enjoyed working with. Coming from a Unity background we just wanted to learn something new during the project. Looking back, we are quite happy that we did it, as a lot of Unreal-exclusive features helped us during development.
Our assets were mostly modeled in Cinema 4D and Zbrush, and we used Blender to do the game’s animations and some additional modeling. A big shout-out to free-to-use software like Unreal Engine, Blender, Davinci Resolve, Krita, and Photopea!
To design the game, we decided to do it the old school way: we planned the whole story and almost every puzzle on paper, which resulted in our office walls being full of plans and posts.
We realized very quickly that there is no sense in building an alternative “string puppet” control system. The game plays just like you would expect from a normal sidescroller, but with the puppet strings being a physical restriction for the character. Also, you can’t just lift the string puppet up and around in the world – it’s a theater play, and the narrator wants to create an illusion to captivate his audience.
The animation of the string puppets is physics-driven, so when you jump around, their arms and legs wiggle around in the air, and every jump looks and feels quite different. So, the puppets play a big role in the story and the gameplay and art design of A Juggler’s Tale, but not in the controls.
Puppet theater is quite popular in Germany (compared to other countries). There are even children’s TV shows that are recorded puppet theater plays. So, for our research, we watched a bunch of puppet theater plays. They are often typical German literature and fairy tales and they were definitely an inspiration for the general mood of our game. We also had the opportunity to visit a local puppet theater and play around with some of their string puppets on our own. The puppet movement is way more clumsy than you would expect – we have huge respect for the puppet masters who can bring life into those puppets.
We decided to build the whole game world around a particular puppet theater play. Therefore, we divided the game into five chapters, each beginning and ending with a realistic puppet stage with wooden backdrops. Once the player enters the chapter, the backdrops change into our stylized artwork – the player dives into the world of the puppet theater, forgetting everything around them and immersing themselves in the game’s world. Only the puppet strings remain to remind them of the connection between all the characters and the narrator.
Although our theater play takes place in medieval times, we didn’t want to go for the typical medieval look, but fell in love with a much more colorful, modern style. Our environments should reflect the mood of the story and thereby don’t follow any real-world rules.
We found out about our true “unique gameplay” when we were already pretty far in development, while programming and designing puzzles for chapter 4. It is a chapter where the role of the player changes from passively running away to actively interacting with and challenging other string puppets. And because of the puppet strings, there is a lot of physical movement restriction in these kinds of puzzles – string puppets can’t hide under objects or can get stuck and the strings entangled.
All these game mechanics sounded pretty interesting, but we had to change the way our puppet strings worked so that they actually could do these things. We programed our own version of a Cable Component in Unreal Engine that could do things like becoming ripped or becoming attached to multiple points. Suddenly, we saw a lot of new possibilities for puzzles in the earlier chapters, so we had (and still have to) iterate over those chapters again.
Where we used to try to build the levels in a way that the character never walks beneath objects, we now plan to add more of these objects, using this physical restriction for interesting story and puzzle moments. With our new puppet strings, we can also add a lot of nice little details – like getting them tangled in the branches of a tree when the player walks beneath it, for example.
We wanted to link modern digital gaming culture with traditional, established theater and poetry culture. Germany, our home country, can look back on centuries of fairy tales, poetry, and drama. We grew up listening to these tales, legends, and worlds. Combining these narratives with our love for story-driven games was our motivation to develop a game with a puppet theater setting.
Despite being for children, a lot of these fairy tales are quite dark and cruel. They were made for the purpose of intimidating children – showing them bad consequences for misbehavior. We really like the tone and mood of these stories – beautiful, but also a little bit scary. A journalist once said to us after playing the game it feels more Brother Grimm than Disney, and that is exactly what we wanted to achieve.
We have an audible audience in the game that watches and listens to the theater play alongside the player. It’s only very subtle, but the audience was created to help us transport the feelings and emotions we wanted to create within the player. They get cheered on and are being judged by an invisible audience, and therefore hopefully takes responsibility for their actions. Plus, we hope it’s an element to loosen up the strict storytelling from the narrator – it feels way more dynamic if some other people whisper in the background and create additional immersion.