Tunche DevBlog 5 — Level Design

Diego Rodríguez León
LEAP Vault of Knowledge
4 min readOct 5, 2017

“This is how we do it.”

Tunche relies heavily on combat, so we’ve made sure to focus our efforts towards that sort of gameplay, having gating areas where we confine players in a limited space until they defeat all waves of enemies. We call these areas “Fight Sequences”, and each one contains two or more waves. Let me tell you a bit about my process when designing them.

I’ll start by pointing out I’m a very visual person. My outlines are comprised of colorful and meticulously arranged data, so as to mimic the game’s interface. That way, this representation of the actual experience can help me better visualize where the game elements should be placed and how the experience will play out.

First off, we had to figure out what variables would be needed for the Fighting Sequences, and came up with these: Type of enemy, Spawn position (in the X and Y axis) and Delay of spawning. With all those variables in mind, I made a rudimentary diagram of the game’s interface for each wave using Microsoft Excel, as shown below:

Version 1.0

The rectangle was the play area, each colored-square was a type of enemy, and the positions of these squares defined where they spawned and from which side of the screen they would enter. The numbers on the borders helped indicate where in the X and Y axis the enemies spawned. All of this information was later transfered to a json and added to our project in Unity.

It looked simple and was easy to use, but not all variables were taken into account; basically, it was a short-term solution. So I made a second version with several improvements:

Version 2.0

I added more values for X and Y for a more precise positioning of enemies, grouped types of enemies by color and used black margins to represent a delayed enemy spawn (those that do not have one, spawn right away, while all others have a delay depending on where the margin is).

Additionally, I made a table for each wave showing all the numeric values for every variable involved:

Wave table

Finally, I made another table for each Fight Sequence, showing the type and amount of enemies per wave, and some extra info:

Fight Sequence table

As you can see, it was a big improvement. With all these new ways of designing the encounters, it has become quite easy to have an overall overview of a Fight Sequence and of every single wave. Knowing where and what enemies spawn, as well as how many, we can aim for a more balanced combat experience. And, thanks to these diagrams, I can transfer the data faster to the jsons, and make as many modifications as needed in an orderly and effective fashion.

Overview of several waves

I’m way happier with this version, but it still is a short-term solution with a few shortcomings. And although it has worked in every scenario we have, it’s not a very flexible tool, so it’ll eventually break when we start prototyping new areas of play. This just means a third version might be on it’s way.

Luckily, the programming deparment promised me they will develop a tool integrated with Unity that will help us make better levels. I’ll tell you all about it once I start using it.

For more information about Tunche, be sure to visit LEAP’s Vault of Knowledge and follow us to keep updated and learn more about us and our games!

--

--

Diego Rodríguez León
LEAP Vault of Knowledge

Game Designer y Escritor | Me apasionan los juegos y las historias, no importa el medio | Me apoyas con un café? https://ko-fi.com/dirole2099