Architecture

This covers creating a map layout, listing different layout "styles", and treats them as if they're mutually exclusive. The only architecture-related information is some short bits on clipping near the end.

Jan 30, 1999

We understand now how a map should flow and how it should connect with itself, but we haven't got much in the way of actual things a map could use than the above rules on connectivity. Please, by all means, don't sit down with Radiant or Worldcraft and start improvising. Plan the level ahead of time. Get a pencil and a bunch of paper and start drawing up preliminary designs.

One thing I do when making a map is to make a map flow chart. No, no, not like the kind of thing you do in biology for Mr. Crabgrass. Consider the overhead shot of Stalkyards, one of my favorite Half-Life maps, by VALVe.

Next to it, I've drawn a basic map of the flow, with large atriums or rooms as big rectangles (sometimes I use circles, ovals, or pseudo-lumpy shapes to represent rooms of different shapes and sizes), overlooks and balconies as smaller boxy shapes tacked on, and lines for halls and doorways. Stairwells look like railroads, and lifts/ladders are a big dot. Drawing a little map like that before you plan any solid stuff can give you a good picture of how the map will play. Note several things about Stalkyard: It's somewhat symmetrical, yet not so much so that VALVe just took the left half of the map and flopped it, fixed the textures, sewed up the leaks and called it a day.

Start playing with circles and lines. Run around a few of your favorite maps and make a flow map as you do. See how different maps are arranged. Good deathmatch levels are hard to make into flow maps. Take Q2DM1. How would all the stairs and rooms and walkways be made into a simple flow map? When you make your map, keep in mind how it's going to all look when you make it into brushes. Also, reduce as many long lines of sight at this stage as possible. There's nothing worse than a map that runs slow because of poor layout rather than too much detail. If you think that a particular hall may provide too long a LOS or a LOS between two highly detailed areas, then break that LOS by making the hall bend sharply once or twice.

You can make a flow map any way you want. You don't have to use lines and circles. If you're a hardcore architect, you can use some of that nice 3-D graph paper with the triangles if there's any to spare.

From looking at different maps, I have put together a list of different styles of architecture in a DM map. Example maps are shown wherever possible. This section is not about texture styles, there are other pages for that. This is about organization and layout techniques. The examples given often do not illustrate just the mentioned style, rather, they use that particular method strongly across the layout (with variations used widely). You won't see many famous names (like many of Terrafusion's top maps) because the better maps use many different layout styles to create a unique environment, with no method predominant. I'm aware I often use the point-release maps or ID 64-player maps as examples, but they make the best examples.

The Atrium Method

2 or more big, multistoried rooms with platforms and ledges at any height. Very vertical and extremely popular. Small rooms and balconies jut off of the atria at any and all levels. Halls, rooms and stairs branch off to connect to the other atria or other parts of the map. Atrium connection can be by the Level-Walkway method or by the Stack method. The latter works best. The atria don't have to be big tall towers, you can use seven 3-story atria if you can do it right. Examples: ztn2dm4.bsp, The Rage, by Sten "ZTN" Uusvali. q2dm2.bsp, Tokay's Towers, by American McGee. Two excellent examples.

The Level-Walkway Method

This was the easiest one that sprang to mind. A collection of rooms, from 6-12, all fit together with 128-256 units of room in between. These rooms span anywhere from 2 to 4 stories in height. Walkways connect the rooms with each other at all levels except the first (where the floor is, you don't need walkways), and stairs connect the different levels. Flow and balance with this method are generally good, while r_speeds can be pretty high without optimization techniques like L- and S-hallways. Item balance can be difficult, because all three levels have to be considered with proximity to stairs, etc. Examples: q2dm8.bsp, The WareHouse, by ID Software.

The Stack-Overlap Method

Rooms of different sizes and dimensions are jumbled together, touching and overlapping. Where the rooms touch and overlap, they are fused, creating flow. Rooms are not connected by halls unless necessary to stretch two areas together. Rooms can be multiple stories in height, and can be on anywhere from 2-4 levels. For best results, stagger rooms halfway between each level. Instead of having one room go from 0-128 and another from 128 to 256, put 128-unit floors every 64 units (so a room can be on the 1 1/2 floor). Examples: xdm1.bsp, Munitions Dump, by Xatrix.

The Yard Method

The entire premise of this map is a huge yard or open area, almost always outside, with buildings and other things of interest dotting the landscape. There are small buildings, large buildings, tall towers, bunkers, walkways, anything the author decides fits. This can be cool if the item placement isn't bad and the buildings aren't eight miles apart, this could be fun, except for the invariably high R_speeds open areas cause. Much more common in HL than Q2, because of HL's more thematic and stylized maps. Thanks Asmaul. Examples: x-fire.bsp, Crossfire, by cyNic, for HL.

The 2-Fort method

Generally a teamplay method, although 2fort maps have made good FFA's in the past. There are two fairly easily defensible bases that face each other across a certain amount of space, the space filled with big rocks or something if it's too large. A base, or fort, will have advantages (usually tons of ammo, or a gimmick, like an airstrike button) and disadvantages (sparse ammo, forcing the team to forage out into the DMZ for ammo). Examples: crossfire.zip, Crossfire, by Dario Casali, for HL. Also, the sequel to that map, Doublecross, by the same guy.

The String Bundle Method

The entire level is just a large tangle of halls and corridors, splitting, merging, sloping up and down, but never dead-ending. Halls can widen in places to form mini-rooms, narrow in other places, or form rooms where they intersect or pass over one another. The halls should rise and dip across at least three levels, and no skimping on the addition of rooms at intersections should be done. Layout should not be too complicated or tangled. It's a Deathmatch, not Descent. Examples: q2dm4.bsp, Lost Hallways, by ID Software.

The Arena Method:

This can be done in various ways. Basically, it's like the Tower method with just one big tower. There may be a couple different levels of walkways in the one main central room, with small rooms and balconies jutting in and out, but the map is confined to the arena room and any local extras. Examples: Dacube.bsp, The Cube, by The Foe. q2dm1.bsp, The Edge, by ID Software. The latter strays from the arena method by adding the large outside area and having several large rooms exterior to the center room.

The Room-Corridor-Room Method

A deathtrap for many authors. It can be done right, however. It is incredibly simple. A number of rooms of any size, shape and design, connected by corridors. I mention this not to bring its use to light along with the other methods, but to discourage use of it. This is different from Stack-Overlap in the sense that all the rooms are separate, while Stack-Overlap gets most of its connectivity by connecting two rooms with another room. This method usually never leads to a very wonderful map. Usually, the map is improved by changing the rooms to atriums, learning to take advantage of 3D, and sometimes widening the halls enough to make them pseudo-rooms in themselves. Examples: I couldn't find any maps that used this method at all, not even a bad one.

This is definitely not all the methods. There are bound to be tons more I haven't picked up on. Feel free to send me a particular method you've observed and I'll verify it. If it's a viable method (and not a combination of other methods), I'll throw it up here.

Anti-Camping Measures

Campers are everywhere. Any one of your friends could be a camper, right at this moment. How would you know until he got you? If there's one in every crowd, and there is, then there's a camper on every server. Even a 2-player LAN, one of those players is having dark, evil thoughts of finding a nice dark corner near the railgun and picking off his partner wherever he sees him.

It is up to the deathmatch-map designers of the modern world to rise up in opposition of this lowly dishonorable scum. The best way we can root them out of their holes and force them to fight like men is not to have any holes for them to cower in the first place. The best way to avoid camping sites in your map is to design it carefully and not allow for any dark crevices or hiding places between pillars near any powerups or weapons. Shadows are good, but when overused in small isolated areas by big items, they become a problem. That is step one in eradication of their nests. Avoid creation of places where campers are likely to collect. Dead-ends and rooms with only one entrance are always National Parks when it comes to camping. Make sure that anywhere a camper could guard an item for himself will easily leave him exposed and just beggin' for a pair of shotgun shells in the small of the back.

The true bane of these malicious pests is the clipping brush. Campers are often experts at the Rocket Jump, a method of travel that launches an ordinary USMC marine up to 256 units in the air. The reason for this dangerous maneuver? Reaching places where the ordinary marine would not look for the enemy. On a rafter high in the ceiling, on a rock ledge, behind the giant waving banner, you never expect anyone to be hiding there, so you unconsciously skip it in your search. That's where the flash comes from, where the rocket streaks out at you.

Add clipping brushes everywhere the player isn't supposed to go, even if you're sure no one could get there. Campers have ways.

Anti-Sticking Measures

There's nothing more aggravating as hell than charging up a hallway or across a room after some poor sod with a blaster and getting yer bounding-box caught on a pillar or a light fixture or some crap sticking two measly units out of the wall. Like in Figure A here. There are two ways to prevent this happening in your map. The first one uses clipping brushes to smooth out the wall so the player's box slides over the light fixture with ease, like in figure B. The other one simple prevents the problem from happening by eliminating the cause: making the light fixture flush with the wall so it doesn't stick out in the first place, figure C. This last method reduces r_speeds as well. Walls slanted at 1-10 degrees can also stick the player, so add clipping brushes there, too, or adjust the slant of the wall.

A particular note about clip brushes (and brushes in general) with regards to Half-Life and GLQuake. For some odd reason which was never dealt with, brushes that meet at steep angles in Half-Life can cause hang-ups even when the edges are flush and the player should be able to glide right past. The problem is nonexistant in Quake and Quake2, but does sometimes occur in GLQuake1, a source of much distress for many authors. See figure A. To avoid these stickies, the brushes can either be fused or extended. If a clipper beside a large detail slants up to the brush and then stops, drag it out and snip it off so it totally encloses the brush, then stretch it just one or two units outward so that the player slips cleanly over. For rock walls and such that form convex angles, (or is it concave? eh) merge those brushes together so the steep angles all form from the same brush. See figures B and C.