Planning and Designing a Level
This chapter takes a close look at designing maps. There's little actual technical
info in here, rather it's a guide on what to do, what to avoid, posting your level, and so on.
Running UnrealEd
Before Starting
Pros and Cons of using real-world maps
Using DOOM/Duke/Quake maps
Designing the Level
DeathMatch Level Design
Once your Level is done
A lot of people have problems getting the editor to run in the first place. UnrealEd is
currently still in the beta phase, and it shows at times.
Here are the most common pitfalls and how to avoid them:
RAM
You need lots of RAM to run UnrealEd. Large maps can use over 200MB (!), so make sure your
virtual memory setting is high enough.
As Windoze is too stupid to manage its own virtual memory efficiently, I suggest forcing
Windoze to create a permanent swap file. I've set the minimum size equal to the
maximum size (250MB), and this seems to work okay.
You'll also want to run a defrag over your hard drive after changing this, making sure the
swap file is in one piece (this'll speed things up).
VB5 runtime library
Incredibly, UnrealEd makes use of Visual Basic. Most probably, you won't have the necessary
DLLs on your system (I wouldn't touch this junk), thus you'll have to download them
from Epic Megagames:
vbrun50.zip
Unzip it, run the SETUP.EXE and reboot your PC afterwards.
RichText Fix
Another fix you should apply afterwards is this one:
RichTextFix.zip.
Unzip the two files included into your \Windows\System directory, but be sure to backup
your original files first.
I know you're eager to start building the level (why else are you
reading this FAQ?), but there are several things you should do
before firing up the editor and designing away:
- Play the Game
-
Play the whole game from start to finish. This will give you
lots of ideas on what is possible and what you'd like to do.
Look critically at how things happen: doors opening, aliens
suddenly appearing, lights changing, gears rotating...
- View the Maps
-
Use UnrealEd to have a close look at the existing maps.
How do these doors open? What kinds of tricks were used to work
around the limitations of the engine? Where are sounds used, and
to what effect? How many (or how few) polygons are in the players
view at any time? Things like that.
- Have a Theme
-
Please. Don't build yet another crashed spaceship. We've got several already!
Try to think of something original and take some time to really think about
what you're trying to do: the New York traffic? A nuclear power station?
An underwater base? A barren planetoid surface?
Also try to think what would fit into the theme and what wouldn't - make a list.
A .TXT file with a short story setting the mood and explaining your mission is also nice.
- Draw a Map
-
Take some graph paper and draw the whole map first. Believe me, your level
is going to be lots better this way. You'll be able to take your time
and think about everything you want to include.
Another approach is to just make a rough sketch of the map with a good
theme and create everything 'on the fly'. That's the way it usually ends up
anyway :), but the map-drawing approach does produce nicer-looking maps.
- Less is More
-
Zen, yes. Also known as the KISS principle: Keep It Simple, Stupid.
Remember that you have lots of tools and tricks to create a map - don't use them all!
Don't include, for example, lava just because you can. Don't use the force fields in
a non-futuristic level. Leave out the security monitors in a medieval castle.
Rather build several levels, each based on one or two ideas.
- Keep it Small
-
This sounds strange, seeing that Unreal can handle such large rooms, but beginners
usually make the mistake of designing cyclopean buildings. Massive forecourts, towering
walls, huge gloomy halls - all empty.
Rather keep the rooms small and full of detail - they will be more interesting and
the game will run faster.
- Time
-
You'll need loads of it. Buckets full. Much more than you think.
Especially the lightning, scripting and testing will take days.
Have a look at the original levels and see just how much time and care
has been spent on them. Don't post a level which is substantially below
the niveau of the original maps - nobody will like it.
Oh, and please spell-check your text messages.
- Data
-
It is said that you should write what you know, and the same applies to level design.
If you've never really looked hard at a subway station, don't try to create one.
Before designing houses or castles, have a look at some architectural handbooks - it's
really worth it. Because your buildings mustn't just look good, they must also look
realistic...
- Read this FAQ
-
Don't jump into drawing your level half-way through reading this FAQ - wait until you have a
good idea just what is possible with the Unreal engine.
- Your First Level
-
Face it. Your first level is going to be something you'll be ashamed of after designing
your third map. Don't post it.
Remember: the longer you spend on planning your map before actually starting work
on it, the better it will become. Very very few expert mappers create their artworks
by simply starting the editor up and fiddling around.
There are lots of levels based on maps of the real world. Maps of your campus
(hello, first years!), maps of your dorm, your apartment, your house.
The question is, should you use them?
Advantages
Real-world maps are drawn by professionals (ok, ok, I've also
seen houses designed by blind idiots) who know what they are
doing.
They don't forget to make the outer walls thicker than the inner
ones. They don't forget the kitchen or the storage space. The
halls are of the right width...in short, the whole map is
realistic and believable.
Also, it's real quick creating a level from such a map since you
don't have to think and design as much.
Finally, it's a great way to learn how the editor works as it
forces you to implement some things you might otherwise be too
lazy to work out (this, In My Most Unhumble Opinion, is actually
the most important reason, especially in the beginning).
Disadvantages
Such maps are also boring.
Believe it or not, but most architects didn't design their block
of flats for gun-toting maniacs chasing each other through the
corridors.
There are too few places to hide and the map typically has a
simple, utilitarian look.
Scale is a hassle as well. Ever looked real closely at a subway
station? It's actually very big and empty. And very boring as an
Unreal level.
So you'll have to scale everything down by quite a lot anyway.
Remember that it's great fun for yourself to run through a
virtual representation of your house - but others who don't know
you might find such a map terribly boring.
And the biggest disadvantage of all: you don't think enough about
your level. The more time you spend mentally planning your world,
the better it will become.
Using a variety of converters (see the section
on converters), you can import maps from other engines to Unreal.
Do everybody a favour: don't.
And here's why:
- We've seen these maps already.
- They aren't designed to take advantage of the Unreal engine.
- They aren't designed to work with the new monsters or the new weapons.
- It's a heck of a lot of work checking a level after conversion (for example,
switches won't work), and it's easy to mess things up and even forget textures
and the like.
- Many traps won't work, as the player can now move differently. This is especially
obvious with DOOM maps (player can jump now) or Duke (player can't use a Jetpack).
When designing a level, keep in mind that there is no formula
telling you how to build a fun level. Unfortunately, I can't just
tell you "Do this and that, and everybody will love your level".
But I can give you some tips and pointers.
Level Types
There are basically four types of maps:
Single Player
Single player maps are typically large and intricate, full of
detail and clever monster ambush points. They are aimed at people
who play them on their own.
For example, nearly everybody here in Germany plays in single-
player mode, as the telephone rates are simply shocking.
Such levels take the longest to produce, and need the most careful debugging.
Co-Op
Few levels are actually designed for co-op playing only. If they
are, they are larger versions of single-player levels, with a lot
more monsters and perhaps the odd trap which can only be passed
via teamwork.
DeathMatch
Since the original levels in Unreal are very very good as both
single player and (usually, anyway) co-op, most people create
DeathMatch-only maps.
These maps are small and fast, concentrating on action instead of
the surroundings.
This doesn't mean that detail should be overlooked, though.
These maps need to be playtested a lot to make sure they're
actually fun to play. Typically, they don't include much detail and
you won't find any monsters, either.
My Room/Flat/Dorm/House/School/Town
These levels attempt to copy a real-world place with as much
accuracy as possible. They are typically rather boring and only
of interest to the people who know the place well.
The only use I personally see for such levels is to learn how to
use the editor.
Choosing a Level Type
Your new level will usually be one of the above - very few maps
succeed at being good at everything.
Single player levels are relatively easy to do - all you need is a good
idea, lots of imagination and plenty of time. If you make the
level large enough, you might be able to combine it with a co-op
level.
DeathMatch levels are surprisingly difficult to create. Not only
do tastes differ (by a lot! For example, do I Hide&Snipe or
Chase&Blast?), but you have to do a lot of testing to make the
level just right.
And even then, it'll only be just right for you, and others might
not like it at all. See the section DeathMatch Level Design
below.
The 'My very own room in VirtualReality MultiMedia DataHighway
CyberSpace (tm)' theme we'll leave to the VisualBasic
weenies.
Random Tips and Thoughts
## Feedback needed! In this section, I'd like to simply list tips
and tricks to keep in mind while designing a level.
Working with UnrealEd
- Do the rough work first
-
Build your house (or dungeon, or space station, or whatever) like
you would build it in real life: start with the outer walls, add the rough rooms,
connect everything up and only then add the details: glass in the windows, different
textures, etc.
- Save your Work
-
Save your level a lot. Use the 'Save As...' option to create several versions of your
level. Thus, if an idea goes wrong, you can always return to an earlier version.
The more backups you have, the happier you'll be when (not if) UnrealEd nukes your map.
I hate to state the obvious, but you shouldn't trust your hard drive, either. Make copies
onto disks.
Do
- Scale
-
Make sure the scale of your map is all right. Remember that scale is important! Unreal
levels are usually smaller that their real-world counterparts.
- Realism
-
Try to make everything look as realistic as possible:
wooden ceilings are usually tilted and are held up with massive beams.
Often, corners of rooms (especially large ones) will be held up by stone
pillars. And so on.
- Lights
-
Light doesn't just come out of nowhere. Remember to place light sources and lamps.
Also, please don't overdo the use of colored light, it can look very artificial indeed.
- Textures
-
Nothing breaks a game mood as fast as a misaligned texture! I know that UnrealEd can't
align textures automatically (except floors and ceilings), so you'll be spending a lot
of time fiddling with the Texture Pan option.
Don't
- Monsters appearing
-
Please don't overuse the effect of monsters warping in! It's so darn unrealistic!
Rather open a hidden door or somesuch, and have the opponents boil out from there.
- Half-done Levels
-
Don't post half-finished levels to let others see your 'work in progress'.
What for? You'll only make a bad name for yourself if you release half-baked levels...
General Tips
- Scare the Player
-
Scare the player. Dan Benge came up with the idea of
breaking a (single player) level into scenes: lead the
player into it (lots of ambience sound), lead him to the
climax (Skaarj jumping in his face, whatever), reward him
afterwards (triumphant music, power up, keys).
Tension is very important in a level.
- Height Variations
-
Have plenty of height variations: stairs, lifts, ledges.
Force the player to jump, too. But make sure that stairs
have the right height (16 units), so the player can just walk
up instead of hopping from stair to stair (unless you plan to build a
'Help-I'm-Shrunk' level...hmmm...).
- Earning Weapons
-
Make players earn bigger and better weapons. Especially, guard
the bigger ones well.
- Slime Pits
-
If the player falls into slime, give him a way out (a button to press,
stairs...). He should be punished for moving carelessly, yes, but not killed.
- Secret Doors
-
Mark secret doors - a lightly darker or mismatched texture
(forcing you to look closely) will do.
- Crazy Stunts
-
Keep in mind that players will try anything - if they
are crazy enough to try and jump to that ledge, reward
them if they make it (and punish them if they don't >:)
- Pacing
-
Pacing! Keep the player interested. This should also stop
you from building mazes, which are plain boring to explore.
- The Ending
-
Make it good! When the player finally managed to finish the level,
make it worth his while. Explosions and large-scale destruction
usually works well.
Typical Mistakes to Avoid
This section contains, in no particular order, common errors
which you should avoid:
- Too many textures
-
Do not use too many different textures. Rather, select a few which'll
fit the theme of your map, and use these effectively.
This will not only make your levels look continuous, but will also
make your finished map quite a lot smaller (don't you also prefere
downloading a 220Kb map instead of a 930Kb one?).
- Texture Alignment
-
I know I'm repeating myself, but misaligned textures are really a terrible
thing to behold. Do avoid them.
- Overlaying brush faces
-
Overlaying brush faces very often leads to mysterious graphics glitches
(typically, one of the textures will appear and disappear suddenly). This is
especially noticeable with 3D accelerators.
Thus a flat picture on a wall should stand out just a little bit - if need
be, just a single unit.
- Missing Player Starts
-
Make sure there are enough player start points! A map with just a single start
point can't really be used for co-op play.
- Missing Bot Navpoints
-
When creating a DeathMatch map, make sure that you didn't forget the Bot Path Nodes.
Test them by playing against 8 bots, both as player and simply watching them as
spectator. Are they using the elevators properly? Are they moving smoothly (if they
appear to run in place, the path nodes are incorrectly placed).
A lot of the info in this section I've shamelessly swiped from the
excellent 'Deathmatch level design guidelines v1.0' from Brian
Kidby (thekid@ornews.intel.com). Although for the game DOOM,
these guidelines still apply.
##Please send me your thoughts and ideas, I'll be expanding this
section.
Monster placement
Creatures (especially Creature Factories) can be used to supply your
player with ammunition, but they usually just distract from the
main aim of the game - nuke your opponent!
However, the addition of monsters can do a lot to generate the
'feel' for your level - minibosses might keep a large area clear
for a long time, as nobody will want to get close to them if they
don't have to...
Weapon placement
Power weapons
In contrast to DOOM, Duke or Quake, Unreal has no 'real' Power Weapons
(weapons preferred over all others). However, few people use the BioGun
or the disappointing MiniGun a lot in DeathMatch.
In nearly all DeathMatches I've played, the first priority of the
players was to get a powerful weapon. The second was to start
using it >:)
These weapons should be places as far apart as possible. This has
three reasons:
- Getting the gun
-
Placing the weapons far apart forces the players to cover
more ground. Thus they meet more opponents,
possibly trigger traps and learn the layout of the level.
- Defending the gun
-
Many DeathMatchers will go to a power weapon and 'sit on
it', waiting for the other players to show up.
If the weapons are far apart, the players won't see much action
during their wait, forcing them to move ot to hunt sooner - much more exciting.
- Covering tracks
-
In a new DeathMatch level, players like to keep the
locations of the weapons secret for as long as possible.
If the weapons are far apart, the chances of being
followed are so much smaller.
Starting-point weapons
Every starting point should have a pistol next to it, so the
players are not completely defenseless at the beginning. This
also gives them more confidence to go out looking for bigger toys
to use.
On the other hand, some people prefere to place the starting
points right next to 'normal' weapons - every start point next to
a different weapon. This makes respawning interesting, as the
kind of weapon available at the beginning (Flak Cannon vs. RazorJack,
for example) radically changes the style of play.
Ammo placement
Amount and location
Place small amounts of ammo in high-traffic areas, and larger
(not too large!) stashes in secret places. Adding a sniper spot
near the bigger stashes makes life a lot more interesting, too.
Ammo Quantity Types
Easily accessible ammo should be of the 'small quantity' type, eg
single rifle bullets big ammo boxes, as this eliminates waste when
a player picks up more than he can carry.
Also, larger amounts of ammo should be strategically placed (see
above).
Health placement
Rarely does health seem to be a problem in DeathMatch games.
Usually, players either die really quickly of a massive lead
overdose, or they run and hide, sniping at their opponent.
Of course you should still place health around, giving players the
chance to retreat and heal from a firefight. A nice little bunch
of Nali Fruit in a high-traffic area makes life interesting...
Architectures
First off, let me say that level layouts are always a matter of
taste.
Here are just some things which I like in DeathMatch levels:
- Large, open areas
-
Fun! Show your aim at long-range pistol shooting, have Eightball
Launcher duels, fight several players at once and have lots of space to
move about.
- Long, wide passages
-
Same as for large areas applies - running towards somebody,
dodging his attacks while shooting your own is great fun.
- Nooks 'n crannies
-
Such areas should not be too large, but it is fun as well.
Hunting somebody through narrow, twisting passages is an
adrenaline rush in itself - is he hiding behind this
corner?
This also makes for lots of nice sniping spots.
Balconies, bridges and towers
It's always fun watching your opponent walking under you,
completely unaware of your presence until you pull the trigger...
Obstacles
Obstacles (pillars, crates, tables) are very important
in DeathMatch, as they allow you to hide and dodge enemy fire.
Sniper spots
Sniper spots greatly add to DeathMatch levels and allow you to make
the best use of the Sniper Rifle. They should always have an escape-route,
though, just in case your first shot missed...
A finished level is far from finished - lots of things remain to
be done:
Light and Shade
Light placement is non-trivial. See how efficiently Epic used light and shade in their levels?
Do the same - carefully shade every single room. Add lamps and (perhaps colored)
lights. Sunlight streaming through the windows. Coronas around bright lamps (make
sure they doesn't slow down the level down too much, though).
Also make sure that the general light level is right - don't make it too bright (this makes
the map look artificial), but keep in mind most of us don't enjoy playing in pitch darkness.
Lightning plays a major part in how realistic (and thus, how good) a level will look.
Doing it well takes ages.
Details
'All those tiny little details...'
The TV in the corner. Blood on the walls. The perfect ambience sound
in the perfect place. Good creature scripting. A convincing Skybox, fitting
the theme of your level.
Such details make the difference between a good and a great level.
Realism
Your map must be totally convincing. As said, lightning plays a large part in this,
but so does the map itself: are the walls thick enough? Are they
too thin? Does that texture belong here? Have you used the right texture for the
waterfall? Should you really use this type of monster here?
Testing
Lots! Play the level on your own. Play in in coop. DeathMatch it for hours (if you
can't play in it for hours, something's wrong). Fine-tune it: is the window at just
the right height? Is that elevator positioned in the perfect place?
Testing is really important - let your friends play with your level (without
you being present) and listen to their comments.
Speed
Unreal makes heavy demands on your CPU. Don't inflate them artificially. Make sure
the map runs fast everywhere. If some areas are designated to be battlezones, keep
them simple to allow the engine some breathing room to display the enemies.
Mirrors and Coronas look good, but really eat into CPU time and should thus be used
sparingly.
Do not, ever, post a level with 'only good on 3Dfx' in the description.
Difficulty
If you're told that your level is too easy, don't make it more difficult by simply
adding lots more monsters! That's a typical newbie mistake - rather place the monsters
in better positions and redo the layout a bit.
Adding a good monster script can do wonders, too: if the Skaarj rolls into the cover of
a crate upon seeing the player, he'll be quite a bit more difficult to finish off. Several
monsters working together (two tentacles and several Skaarj) can make even an experienced
player sweat.
Posting your Level
When posting your level on the Internet or anywhere else, please
adhere to the following checklist:
- I've read and understood all above thoughts.
- My level is as good or better than the original ones.
- I have included the standard
.TXT description file.
- I have checked my spelling (also, please refrain from using
'cool' spelling like 'This map rox, heh').
- I'm not going to brag about how very cool and awesome my
level is (sheesh, guys, how often have I heard that one?
By now I'm not downloading any level with the word
'awesome' in the description as I know that it'll be a
waste of time - again).
Return to the Table of Contents