How We Made the Angry Birds VR: Isle of Pigs Level Builder

Did you know that Angry Birds VR: Isle of Pigs is the only game in the franchise to feature a level builder? Today we’re catching up with our colleagues Henrique and Moa to take a look at this egg-citing feature.

You were part of the team who developed Angry Birds VR: Isle of Pigs. Tell us briefly about your role and your contributions to the game?

Henrique: Hey! I’m Henrique, a game programmer at Resolution Games. I started working on Angry Birds VR: Isle of Pigs a little bit after its initial release in February of 2019 and I worked on almost all of the post-launch updates, like the spooky levels, the level builder and its online version. 

Moa: I joined the team when I started my programmer internship at Resolution Games. The game had already launched and the team was getting ready to release the first spooky levels pack. As a game development student - working mainly in school projects - it was amazing to enter the Angry Birds VR: Isle of Pigs team and to work on this large project.

From a technical perspective what is interesting about the level editor? 

Henrique: At Resolution Games, we work in small teams, which means that as a game programmer you have influence not only on the code part of the project but on everything else. As we created the level builder we were also making a lot of decisions regarding the user experience and the design of the feature. We knew from the start that our game appeals to a wide variety of gamers, and we needed to make sure that our version of a level editor was easy to use and intuitive. Generally, in games, a level editor is seen as a “power user” feature, but that’s not what we wanted for our version. Being in the VR space certainly helped with that, and allowed us to make something that harkens back to playing with building blocks. But Angry Birds is still a physics puzzle game, and that means that the block positioning has to be exact so that you get similar results every time you shoot a bird at a certain location. This made us take a decision early on to limit the placement of blocks at 45-degree angles and that helped immensely in making it easy for players to build consistent levels. These kinds of decisions were part of the whole development process, and included things such as how to make the toolbox that the player uses to get their blocks convenient and simple to use, how the player would select what birds will be used in their level, how to share and search for levels on the online version and much more.

Moa: You are there, you’re picking these blocks from your toolbox and if you want to remove that block again then just put it back in or place it outside of the area and it will disappear. The toolbox is easy to grab and the building platform is easy to rotate with your hands or controllers. These are all things that weren’t the obvious choices in the beginning but were decided by us and our designers together throughout the whole process. We needed it to feel like you are there on the beach building your level, and it should be easy and most of all fun!

How did you create the level builder? 

Henrique: We already had an internal prototype for a level editor tool, and that served as a starting point for our level builder. But a lot of adapting had to be done to make it easier to use and work with the constraints of our game. To get to the final product we put together several systems that were not part of the original Angry Birds VR: Isle of Pigs game, such as grabbing, object snapping, an undo system, and many others. The online version was also a huge undertaking, as it was the first time we built a dedicated server for a game. On the client-side it meant we had to adapt our menus and interfaces to deal with the possibility of losing connection in the middle of browsing or sharing levels.

Moa: Building the level builders was a really exciting time. The prototype had already been developed and we started with integrating this with the project and not long after we were now able to build our own levels! It wasn’t as pretty looking as the end result, but we could now test the feature and that moment was amazing. I loved seeing the building blocks and the pigs and birds and being able to pick them up and place them where I’d like. I remember us all having a blast!

Working with the level editor required a lot of time taking decisions on design and game flow and the scope and everyone on the team had a say in the process.

Did you face any challenges and how did you solve them? 

Henrique: On the technical side, one interesting problem that we had during development was performance. Angry Birds VR: Isle of Pigs is a game that runs on a wide variety of platforms, some of them less powerful than others. Simulating physics for a big number of objects is computationally expensive, and when making our levels for the game and its expansions we had to thoroughly test levels with a lot of blocks to make sure we would not have frame drops when all of them were flying due to a perfectly triggered TNT. On the level builder, we didn't have that luxury. We don't know what kind of levels the players are going to be building in advance, and we can't know for sure which is the most computationally expensive to simulate. To deal with that we created a "performance cost bar" that will fill up as the player places their blocks on the level. Some blocks, such as fans and TNTs, are more computationally expensive to simulate than other more simple blocks and will have a higher performance cost because of that. This allowed us to make sure that all levels built by players would run smoothly on all platforms and devices.

Moa: We didn’t want to move away from the look and feel of the core game but we knew we needed to make some adjustments. For example, how should the player know what level to pick when browsing through the menus? In our level packs you choose the level number within that world and it’s very straightforward since you beat those levels one by one. But in the level builder we needed to show the player the levels since the order of levels can be different and there’s no clear game flow from one level to the next. Hence the split menu, where we divided the level list and the level information into two split menus, along with displaying the level in the middle. This design enabled the player to view the level before deciding on playing it and/or continue editing.

Any tips for someone reading this wanting to apply for a programmer position with us?

Henrique: One thing I can say is that before starting at Resolution Games, I didn’t see myself working with VR because it was not a big interest of mine, and I also did not have any experience with VR games. Do not let that deter you! We are a video game company first and foremost, and every skill you use to make flat-screen games is useful and valuable when making VR games. You’ll also see your knowledge and skills increase due to the unique challenges that VR brings, so it’s a win-win!

Moa: When I was looking for an internship I knew I wanted to join a games company with a focus on teams. It wasn’t the most important to me to work on the dream game. I wanted to work in an environment where I felt included and where I would have the possibility to bring up my thoughts and ideas. At Resolution Games you would be joining as a programmer but also as part of a team where you’ll be able to collaborate and work with multiple different disciplines. It’s important to remember that all disciplines have their expertise and when we put everything together, that’s when we build something great!

To apply to be a programmer with Resolution Games visit our career page. Some of the current openings below:

Previous
Previous

The Inner Workings of a Blaston Bot

Next
Next

How Childhood Trips to Stockholm Inspired a Move to the City