Building a Game World in Unity
In this chapter we will begin building the game world in which our main character will move around. We will need to discuss level design and planning the game design. We will explain how having a solid idea in place will keep you from designing without reason and wasting a lot of time “winging it.”
We will then look at Unity’s Transform tools and the differences between working in 2D and 3D. We will go over the Hierarchy window and how we can use grouping and parent-child relationships to keep things organized and easy to use. Last, we will look at a few other settings to help us more easily build our Scene. By the end, we will have a full level for our character to explore. So with that, let’s get to it!
Level Design 101
Having at least a basic understanding of level design theory, and some knowledge of its rules and principles, will go a long way when you’re creating your game environments. Becoming a great level designer takes a lot of practice and patience, and professional level designers have years of experience. By no means are we even remotely in the same ballpark as them, but we do know a few basic rules that will help us create something that can be fun and entertaining to play.
Setting the Scene
One of the best things to have when putting anything together is a detailed set of instructions. Most times they list the tools you will need to do the job and describe step by step where to begin and how to get all the way through to the final piece. Creating a fun and challenging game level is no different. You will need to know what enemies to encounter, which items to collect, and what puzzles to complete. Having a “roadmap” of sorts that lists all of these things will go a long way toward helping you achieve your design.
We have a few things in place to help us; we know that we are creating a 2D-side platform game, and we already have the game sprites we will use to build our levels. But there are still a few questions we should ask ourselves before we jump into Unity and start throwing down sprites:
- What is the end goal? What are we trying to achieve other than going from point A to point B?
- Will this level be easy or hard to complete? Are the puzzles in it fairly easy or complex to solve?
- Where in the overall game does this level take place? Where are we in the timeline of the story?
- Does this level take place in the daytime or nighttime? What are the weather conditions? Is it bright sunshine or overcast and snowing?
- How has our hero progressed to this point in the game? Do they have new weapons, skills, or upgrades?
- What are some challenges or experiences the user has encountered prior to this point in the game that we may be able to build upon in this new level?
Answering these questions first will help us set some rules and standards, so that we are designing the level we feel will give the user a fun and enjoyable experience.
Creating a Roadmap
Once we have all of the answers to these questions, we can create our level. We suggest putting pen to paper, as they say, to rough out an idea of what it should look like first, before jumping into Unity. This will help us understand things like the distance over a gap, or where to place that hidden gem the player has to find.
We have gone ahead and created that roadmap (Figure 4.1), mapping out the conflicts, puzzles, and behaviors we will create. We will try to explain the theory behind the layout and how we answered those earlier questions. Again, our ways of level design may not be the best or the most effective, but we took what we know and applied it here.
Figure 4.1 Sketched level design
The main objective of our game is getting our hero through the level to enter the door to the castle. Original idea, right? In doing so, the player has completed the puzzle and can move on to the next challenge. But there are some gameplay mechanics we will be adding along the way to make it slightly more challenging.
When planning this, our approach was that this would be the first level encountered in the game. That will make it fairly easy for us to map out the details and complexity since this is just a demo for learning the technique. The level will take place in the daytime, it will be fairly simple to solve, and it is designed with the idea that the user has played these types of games before.
A few additions are needed to make this design unique. We tried to use the tools and assets given to us to make something a little different, and we think they work well. We are using some art that has already been created to make this a little easier for us. Now let’s take a look at a few rules of level design we might want to take into consideration before fleshing out our level.
- Players should start out by simply learning the mechanics of moving our hero left and right, along with performing some basic jumping. The first few game screens will be free of enemies to allow players to practice these moves.
- The first obstacle our players will encounter is designed to test their learning curve without any serious repercussions. We want them to succeed, but should they fail, the hero will not lose health or die.
- Our first contact with an enemy is a slow one that weakens our hero only slightly. Its purpose is to set up an encounter so that players learn how they will interact with enemies later on.
- There will be a few simple puzzles for the player to solve. They will use colors to help guide the player toward the solution, for instance, “Find a blue key to open a blue lock.”
- Players will know they have succeeded once the castle door opens. To present this, the last puzzle will be placed within viewing distance of the door so that players can see this transition.
Adding Details
Now that we have the basic design and gameplay elements laid out, we can look for ways to liven up the world. It should be noted that this step comes well after the level has been completely designed. All significant changes should be addressed and the level should be signed off. Making things “look pretty” can wait till the end; otherwise you might end up with something that looks great but plays terribly. As the saying goes, it’s “icing on the cake.” Let’s make sure the cake is good first.
Details can have a role in the overall feel and layout of a game and can affect gameplay just like anything else. But didn’t we just say that adding details should come after the level design is done? What we mean is that the initial questions have been answered, and we have set the tone and the way we want the level to play out.
A good example of adding details that help the gameplay might be a dirt path to lead the player. Another example might be a waterfall to guide the player downward. Think of ways you can add subtle details to guide the player. We want the levels to be somewhat challenging but also enjoyable, and we want to give the player enough help to actually solve them.