Tips & Tricks: Let’s Build a Level!
I have an assignment for my advanced level design class where we have to create a level with only three or four lights. I found this assignment to be rather enjoyable, and thought I would share exactly how I built the level. So if you’re interested in my level design process, or just curious how limited lighting can be implemented, keep reading!
Just like with any level, you always want to begin with pre-production. This is a good habit to get into if you plan on trying to make it into the industry, so start now. I always begin with a map, and then build up the quests and whatnot from that. You don’t need to be an expert cartographer to make a map; just open up Photoshop and draw some boxes and connect them, or if you like more traditional means, sketch one out really quickly. The purpose of the map is to help you build the level, so detail everything you feel is important to that building process. For this level, I made a simple Photoshopped map, as seen below, that describes where the lights will be located, and the start and end points.
After I have a basic map drawn, I begin work on the level documentation. The document for the level is a work in progress, as it will be changing throughout the design and building processes, so there’s no need to worry about making it perfect right away. I begin by placing an image of the map into the document, and then describe it in detail, noting where special things will happen and where pick-ups and enemies will be located. You also want to include a high concept of sorts; this just describes the level in a few sentences to get the general idea of it across. Once you have these basics down, you can write up a detailed walkthrough, along with any additional information that is important to the level. Just remember that the level pre-production is meant to help guide you through the building process, and anyone else that may be on your project team.
If you’d like to learn more about pre-production, you can check out my other blog post, Tips & Tricks: Pre-Production.
Once you have your pre-production out of the way, it’s time to begin building! The most important thing to do first is lay out the “floorplan” of your level, so that it basically looks like the top-down view of the map you made. Once you have the basic shape done, you can go in and edit the terrain (if you’re using terrain). Make sure there aren’t any gaps between terrain panels, and smooth out any rough areas. Then you can add in the walls, or whatever is surrounding the floor of the level. Don’t worry about putting in too much detail; you just want a basic foundation for the level to build up on. For my level, I added the surrounding rocks (walls of the mine), but did not add a ceiling yet. You also don’t want to implement lighting at this point, since there really isn’t anything in your level. Although this part of building may seem tedious and boring, this is extremely important as it affects the rest of the level, so take the time to polish up the floorplan before moving on.
Functionality Vs Beauty
This is usually where I have the biggest issue usually in my own level design, but I actually was able to stick to this valuable mindset this time around: you want to focus on functionality of the level over beauty. While putting all the cool stuff into your level is fun, you need to make sure everything works properly first. If the level isn’t playable, it won’t matter how pretty it may be. Add in anything necessary to work on the functionality, but hold off on all the other fancy stuff. For my level, I had to add in the two triggers that would control the rising water levels, along with the raised platform that one of those triggers sat on. Because I used UDK, I had to use Kismet and Matinee to get all of that functionality stuff out of the way. Depending on what editor you’re using, you may need to script or even program the functionality aspects of your level.
Now there’s no need to do all of your coding or scripting at once; you only want to do the necessary things to make the level playable. Of course, some of the code or scripts you’ll be implementing will need for the entire level to be fully built. Things like post processing and sound effects should be added later, when polishing and finishing everything up.
Save – and Playtest – Often!
While you are building your amazing level, you want to make sure to do two critical things almost constantly: save and playtest the level! Free game editors are notorious for crashing, which means you could lose nearly everything you’ve worked on for the past three hours, so you need to make sure that you are constantly saving your work. Some editors have an autosave feature, but manually saving your work is still essential. I not only recommend saving often, but also save multiple versions of the level. I, surprisingly, only had six versions of my level, each of them a little different. This is a good habit to get into because you never know when you might change something that can’t be changed back later, or you want to test out a new idea. Speaking of testing, you absolutely must play test your level and you need to play test it a lot! The first time I ever built a level, I did not play test until everything was done, or so I thought. I went to demo the level to a teacher, and nothing worked! I’ve obviously learned my lesson since then, and whenever I implement a change in the level, mostly script-based or large changes, I immediately build and play test. Oh, and “play test” doesn’t just mean to make sure the level is playable, but also to make sure everything is lined up properly, everything works the way it should, there aren’t any glitches or bugs, the player can’t get stuck somewhere, the level isn’t too difficult, everything that should be reachable is reachable, everything that should be unreachable is unreachable, collision all works correctly, etc. The list goes on forever, but the general idea is to pretend you are the player, and try to find ways to break your own level. You also want to check the metrics (the size of everything compared to the player character).
Implementation, Lighting, and Polish
Just like the heading says, the next steps are to implement all of your assets, add in the lighting, and polish the level up. This is probably my favorite part of building levels, and I tend to spend a lot of time polishing. I don’t really give out a lot of tips for this, as this is where you can just let your creative juices flow and make something crazy. I added in all the materials and static meshes, making sure to compare them to the metrics of the player character so that nothing was too small or too large. Because I was only using three lights in my level, I took a long while getting the lighting right so that there weren’t a lot of dark areas. When you add in the lights for your level, be sure to run around the entire level to ensure that the lighting looks good everywhere. If, like me, you are using limited lighting, you need to check all passageways and remember that corners are going to be your worst nightmare. I found that spotlights with large cone radii worked well in my case, and you can check the map to see where I put the lights. The last few steps for me were to add in sound effects, ambient music, and post processing effects, and then of course, I play tested it over and over and over. Although I turned this level in for class, I plan on using it as a portfolio piece, so I am still in the polishing phase. And in case you were wondering why you should wait to add post processing effects, the picture below should explain that; in my level, the post processing effects for while the player was underwater turned everything blue!
That’s all I’ve got on this level, but I hope this helped guide you a little bit for the next level you make! I should have videos, more screenshots, and pre-production on my portfolio site in a week or two, so check there if you’re interested in seeing more on this level. In the meantime, here are a few screenshots to get you inspired to go build your own level!