I've recently decided to start mapping for the Source engine, and I thought it could be beneficial for everyone if I started chronicling my progress. This is my first real attempt at mapping in over 6 years, and even the one map I have released to my credit (DM-Zkorch for Unreal Tournament, receiving Insite's 3rd lowest score!) wasn't really "good," and all the really cool stuff (details, sweet skybox, trap…) was added by my good friend Christian. So essentially, I was starting from scratch here.
I decided to start with something very basic to get my feet wet in the editor: A deathmatch level, based as exactly as possible on a map called DM-Permanent][ made by Frostblood for Unreal Tournament. Using an existing level saved me from trying to come up with my own layout, which I think was a great decision for my first level: just like a good workout, it's important to focus on individual "muscle groups" in mapmaking when you're learning. There's no reason to have to come up with your own layout and figure out a map's flow when you're not sure you can build a room yet. The original DM-Permanent was made as an entry in a three-day speed mapping contest that Christian ran on some forums a long time back, and so I figured that if it only took Frostblood 3 days to make, then maybe I'd have a chance at finishing it. It's also been one of my favorite UT DM maps for a long time and has always stuck in my head, so I figured I might as well start with something good that I really enjoyed. I'm proud to say that all the work you see in here (though I grant it may not seem like much) was done in about 4.5 days, which I think is a pretty good start; for the first day and a half, I didn't even know how to make a cylinder! [I thought you had to make a block and then start cutting, and you just had to figure out the angles if you wanted something other than an octagon… Thankfully I figured that out after finding a beginner's tutorial; I wondered why nobody was complaining about how terrible the tools were!]
Part of the challenge in making this map was the translation from UT to HL2, primarily because of the way the characters move and the sizes of their bodies. In UT, the characters are shorter and can jump quite high; they also move faster and don't really take falling damage. In HL2, the characters are shaped more like real people: much taller and skinnier and more fragile when falling, with a very small jump height compared to the character. [Your character is 73 units tall, and jumping only gives you another 20 in height. I don't know what it is in UT, but I think those numbers are much closer to being even.] Since I did this whole map by eyeballing UT with a laptop sitting beside me, translating that kind of cramped yet wide Tournament feel into a different engine that was made for a different playstyle was pretty interesting.
I started with the main room and the 2 side walkways, trying to figure out what a good feel for the space was. Once I had that established, I added the back tunnel that connects the two walkways and added the ramp in the middle. It was in making the doorways for the tunnel by using the carve tool for the first time that I understood the first rule of making maps in the Source engine: Thou Shalt Not Carve. (God kills a kitten every time you do.) I made my two doorways, and then I wanted to shift something over for some reason. I moved my tunnel a bit to the left and carved again to clear out the new overlap in my doorway, and Hammer gave me a 2D plane that was left over from the inside edge of the old wall. Confused, I tried again, and the little slip of wall remained. I have no idea if it was still solid or not, but I resorted to cutting off that whole edge and resizing the wall. And so, on my first day of mapping, after using the carve tool 4 times, I swore it off forever. Learning!
By the middle of day 3, I had all the rooms done except for the hallway across the front, and the open front area that leads into the two ramps on the right-hand side. I'd just finished the room on the left with the skylight that's connected to the main room via the doorway and the little passageway up top, and I realized that the map was just too tall. There was a war between the perfectionist in me, who wanted it done right and knew I couldn't settle for anything less, and the lazy part of me, who just wanted to keep going and get over it. "After all, it is just my first map." As always, the perfectionist won out, and even though I was dreading it, I dropped the ceiling in the main room, lowered the walkways (which involved lowering the back tunnel and the area overlooking the skylight room as well), and got everything stitched back together. Although it doesn't sound like much work (and really, it was a lot easier and quicker than I thought it would be), it was kind of a breakthrough moment for me. It was like my first "real" challenge as a mapper, and I chose to do the right thing and rework my level for the good of the gameplay. It turned out so much better because of that, and I'm glad that I got that experience under me from such a small project.
At the end of day 4 I had all the geometry in that you can see in the version that's at the bottom of this post, and the time since then has been taken up with researching how to do a 3D skybox properly and getting its lighting set up and that kind of thing.
One of the main reasons I decided to start blogging my progress here is so that this current version can see the light of day and I can show it off a little. Everything "clicked" last night in terms of location and setting and things I wanted to do, and so I wanted to get this posted as a baseline and as my "pure" version. (There's only a couple variations from the UT base: the rounded wall section on the hallway side and the shape of the skylight in the skylight room, the height of the cutouts in there, the cutouts in the front area, the walkway leading off of the square in the main room, and the raised platform in front of the window next to the upper pillar. The first 3 were because they looked/felt better, and the second two were for movement: the walkway was already as low as it could be before I had to lower the main room, so it had to stay that height to let people walk under it; the platform was added because there was originally a lip at the bottom, just like the UT version, but the player COULD NOT walk over it. I still have no idea why, but it got a decorative platform instead of being flush with the ground. Also, not all the windows, inside or out, are in place, but that's more of an incomplete thing rather than a deviation. Speaking of windows, the one by the right-hand walkway looking in front of the ramps is the biggest tell that the vertical dimensions are different between UT and HL2. Check it out. [I just realized in making this photo that I forget that section of wall that goes across the top. Crap.])
The future direction of this map started with a simple consideration: Where is it located in the world? The first Permanent was in space and had a classic spaceship/space station System Shock 2 feel to it (which I LOVE), and Permanent][ was located underwater and had a very moldy, grimy, dingy look to it. Both were great, but I didn't want to just rip off one of those themes; I wanted to do something original, and I knew I wanted a 3D skybox. At first I thought, "Okay, space, underwater… Where else would be a cool environment to put it in where people can't survive unprotected? What about inside lava?" I immediately rejected that idea because it was stupid. (Not that it can't be done: AS-Asthenosphere for UT was a really great map, which can be downloaded here, that really sold the concept of a research vessel submerged inside a current of magma; I'm just saying that I think it would be a hard sell in the HL2 universe, especially for this map.) I came to the idea of placing it on top of a mountain where you could look down and see the snow-capped ground around the building, and then the long, sheer dropoff below going down into the fog. That's where I started going with the skybox last night, although I didn't have time to figure out how to make a mountainside after I got the floor centered and figured out what I was doing.
So while I was thinking last night about how to make that work, it occurred to me that the easier and much better-looking solution would be to put it at the base of some mountains: this would allow me to keep the snowy, outside feel that I wanted, would look much more impressive as you were running by the windows (rather than running to the one good window and looking down), and it would add a LOT more visual interest to the massive skylight in that room if you could see foggy mountain peaks going into the sky rather than just a bland sky texture. (No offense, sky artist.) That setting reminded me of an interior idea that I'd had earlier on: Kind of a warm, inviting, classy hotel + ski resort with a burgundy and cream color scheme. This would let me put in some chandeliers, some really nice furniture for Gravity Gun throwing, and would give me a lot of nice detail options. (Part of the problem with working in something like Hammer for HL2DM, and really any map-making software for the past 6 years, is that you're limited in the believable spaces you can create by the types of objects you have to work with. If you're going to make a good-looking map with a high level of detail and you don't want to create and texture your own objects, then you have to find some way to use what you have to work with.) I'd like to discuss some of my ideas for the future of the map more, but I think I'll save those for another post.
Since my work on the level from here on out will probably involve me altering the geometry and making it feel and play more like a standard HL2DM level, I wanted to post this version for posterity. I'm very proud of how closely I was able to mimic the layout, geometry, and feel of the UT map I used as a base, and I wanted you guys to be able to see it before it changed into something else. I hope you'll pardon the atrocious skybox and the complete lack of optimization… Someday when I'm bored, perhaps I'll throw in some weapons, player spawns, textures and some objects and see how it plays as-is, just out of curiosity. (I wish there were bots!)
Linked here are Frostblood's DM-Permanent][ for UT and my current build, dm_permanent_r1. I'd love for you to play them side-by-side if possible, but I realize that's kind of an unusual setup. If you need either game, both Unreal Tournament and Half-Life 2: Deathmatch are practically free on Steam. (I still play Unreal Tournament today, so I promise you it's well worth the Hamilton.)
UT – Put both files in your Unreal Tournament\Maps folder. Done.
HL2DM – Put the file in your Steam\[user account]\half-life 2 deathmatch\hl2mp\maps folder. Done.