Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
July 28, 2014
arrowPress Releases
July 28, 2014
PR Newswire
View All
View All     Submit Event





If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 
Level Naming - Surprisingly Easy To Get Wrong...
by Jon Brown on 05/04/11 07:45:00 pm   Expert Blogs   Featured Blogs

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

 

A long time ago I was given some good advice by a jolly Swedish gentleman whose name I wish I could recall.

I was working for a company called Warthog at the time and he worked for 42-Bit, which Warthog either owned or was about to own.

He warned me of the dangers of naming levels using only numbers, e.g. Level 1, Level 2, etc, or even the slightly more complicated level/sub-level system of Level 1-1, Level 1-2, etc. His point being that these names were great until you decided to switch levels around, add new ones or chop some out.

It was good advice.

I promptly ignored it. In the previous couple of years I'd worked on a couple of games with plenty of levels and there'd been no problems. So, like, yeah, whatever, wise Swedish dude, I'm just gonna carry on with it my way. 

I was missing the point by an epic margin. Although, in fairness to my foolish idiot younger self, I had had made a few games by that point, and they hadn't been shy of a level or two. Those projects had worked out fine, at least with the level names, but I didn't know then that that was mostly down to luck.

On the project in question it proved little of a problem either. As time went on the number of levels in the game was persistently reduced, because of time pressures. That said, every time that happened the producer made me increase the size of the levels that were left. Nope, didn't make any sense to me at the time, still doesn't now. The jumbo levels even ran slower in the editor, making everything take longer.

The years went by and level naming didn't cut across my path much, or at least nothing went horribly wrong.

Then I was working on a platform game and it reared up and whacked me in the face like a stood on garden rake. I should have seen it coming really. We'd done the right thing my having a file that defined the running order of the levels, making it easy to switch their order, but the levels themselves were simply called Level 1, Level 2, Level 3, Le-- I reckon you've got the gist of this system by now. 

Somewhere along the line we switched Level 7 with Level 8, or was it 6 with 7? I doubt it matters much. Easily done, as a mechanism, I just had to switch the two around in the text file. But the fallout was lunacy - we'd have conversations like this:

1: There's a bug in Level 7.
2: Is that level 7 as it appears in the game or the file Level 7.
1: Level 7 as it appears in the game.
2: So which level file do I need to edit?
1: Level 8.

Over and over and over again. I'm sure we changed the name of the file at some point, but that just made it confusing in a whole new way. 

The wisdom finally sank in.

Since then I have been mindful to remove any indication of running order from any naming convention. Sometimes other (smarter) people are way ahead of me. On Shatter the producer had us name all levels by a convention which contained our initials (everyone on the team was encouraged to make levels) and where it came in the list of all the levels we'd made.

But instead of using numbers for the second part, we used letters. So the 26th level made by me was called JBAZ, the first two letters being my intials, the last letter being the 26th letter of the alphabet. My 27th creation would have been JBBZ, with the 3rd letter being incremented for the next batch of 26 levels after the 26th. Not that anyone ever bothered to decipher the number, which was the point.

But on my most recent project, the cheekily named Alien Avian Attack (just asking for trouble with initials like AAA) I chose a more idiosynchratic path. At first I went with fairly descriptive names, ones that described different attack strategies or patterns, like Medusa's Hairdoo - thus named because the attacks follow the pattern of how I imagine Medusa's snake-like hair would attack you, if you hadn't already been turned to stone, of course.

Then I started to dedicate messages to people and events with names like Rocket Man, which is dedicated to Yuri Gagarin, as it was the 50th anniversary of his flight during the making of the game. All the harder levels were named after aircraft, Starfighter being a particularly apt one.

Alien Avian Attack - out now on Android and the only game I know of with a level called Grimethorpe...Alien Avian Attack - available now on Android and the only game I know of with a level called Grimethorpe...

However, it was when it was decided to expand the total number of levels per difficulty setting that the names became most distinguished. I wanted to be able to identify these additions throughout the listing as quickly as possible, so I named them after places in my native Yorkshire. The fact that there's a level in there called Grimethorpe will never cease to amuse me.

There are many cock-ups in game design that you have to make for yourself, you simply can't always learn from other people's mistakes. But this is not one of those times - never ever use numbers in your level naming if you can help it. And if you can't help it then drop me a line, because I want to know why not.


Related Jobs

24 Seven Inc
24 Seven Inc — Los Angeles, California, United States
[07.25.14]

Game Programmer
Galxyz Inc.
Galxyz Inc. — Mountain View, California, United States
[07.24.14]

Narrative Writer for Interactive Media
American Girl
American Girl — Middleton, Wisconsin, United States
[07.24.14]

Game Developer
Firaxis Games
Firaxis Games — Sparks, Baltimore, Maryland, United States
[07.23.14]

Senior Visual Effects Artist






Comments


Steve Wetherill
profile image
Interesting article. And, +1 for the mention of Grimethorpe. Did my basic underground training @ Grimethorpe Colliery. :)

Jon Brown
profile image
Haha, cheers sir. I plan to put a Grimethorpe in every game I make from now on.

Joseph Simons
profile image
For the most recent games I worked on the level designers used Military letters: alpha, bravo, charlie, etc. Seemed to serve a similar purpose to your random names (we never had to worry about having anywhere near 26 levels though, Papa was the highest we ever got).

Jon Brown
profile image
So, were the levels simply called Alpha, Papa, etc? I certainly like the brevity of that idea.

Charles Stuard
profile image
I've run into an almost opposite problem. At first, we named our levels descriptively... but that always seems to change in development, where your description for the level doesn't make sense anymore. Since then, I've been doing the number thing... but I can see how it could go wrong.



Seems weird to me to use nonsensical names, though. That seems like wasted opportunity. Especially if someone on the team has no idea what level "Pancake" is, since they never actually see the files themselves.



You've given me something to think about though. Thanks! Always looking for better ways to do process.

Jon Brown
profile image
I found that no matter what I called a level I would soon associate it with the name - I'm not sure if humans are really good at attaching names to things or not, but it worked for me. Of course, I was the only one worrying about the level names on Alien Avian Attack, but I'm certainly going to see how this works out on larger projects.



Also, that's a good point about overly descriptive names when the nature of a level changes. That's not a problem I've had, but I think that down to luck more than anything else.

Jonathan Jou
profile image
Agreed that you shouldn't assign unwarranted meaning to the names of levels, and that you should honor the meanings of the naming scheme you choose. Notably, if you'd named levels off of the order of creation, and named the levels in-game to be something entirely different, like star systems or plot points, then "Level 1" could just as much be the "epilogue" as it could be the "first boss fight." Alternatively, when you had "Level 1" mean the first level, then any time you switched "Level 1" with a different level, you should rename them accordingly, even if you had a system that let you reorder them dynamically.



Agreed that names should be unique, but while code names are nice it probably makes more sense to name each level by its identifying feature--the puzzle, new element, or visual theme which justifies its existence to start with. Makes for a good exercise in justifying levels, too.

Jon Brown
profile image
I certainly like the idea of the name being tied to the 'unique' feature of the level. That would have worked really well on Shatter, although I tremble at the thought of how long some of the level names would have been.

Jonathon Walsh
profile image
Interesting article, something I've never thought about. It seems like the best solution is really going to depend on what kind of game you are making and the size and scope of your levels.



Portal 2, for example, uses a gametype_act_description scheme (sp_a4_laser_catapult for example) which works perfectly in its context. Levels are unlikely to be switched to an entirely different act or gameplay type and the Portal levels are directed enough that if the core description changes, well you should probably just rename the file or start a new map.



For other games with larger levels, more subtle game play variations, or less narrative, I can definitely see the appeal and advantage of using a code name or other somewhat unrelated scheme to give an increased flexibility in moving levels around.

Jon Brown
profile image
That's true, some projects lend themselves quite well to certain systems - I would go for the Portal 2 naming scheme as well, if I was making something like Portal 2. As with all things, flexibility does have a cost - the more flexible a naming convention is in terms of running order, the less information it can carry.

Kris Steele
profile image
I totally did this on my first game. 100 levels that I had to cross reference whenever I played one and wanted to make changes to it. Total PITA.

Jon Brown
profile image
You can get yourself into some incredible spreadsheet madness. Cross referencing and tracking changes can become very hard, or at least time consuming, with a lot of levels.


none
 
Comment: