Getting a map to run in Wolfenstein: Enemy Territory
- Required Software
- Hello World, ET style
- mapcoordsmins & mapcoordsmaxs
- Running the Map
- What’s next?
So you have no experience making quake 3 engine based levels and you want to make levels for ET. Well, you’ve come to the right place. About two years ago, I was in your shoes, and wanted to make levels for Return to Castle Wolfenstein. I’ve come a long way since then, and I remember by inital frustration with mapping.
One thing you’ll find is that a lot of people will tell you to “read quake 3 mapping tutorials.” Since ET is made with the quake 3 engine, as is Return to Castle Wolfenstein, Solider of Fortune 2, Jedi Knight 2, and more, the process and tools used to create levels for these games is not really dissimilar. In fact, one could take a Soldier of Fortune 2 map, and with little effort, turn that map into something that runs with RtCW, for example.
Anyway, this is a simple tutorial just to get you started with mapping in ET. ET is slightly more complicated than other Quake 3 based games, only because of the amount of scripting involved. To be honest, I think the best maps will come from teams of people. Some working on scripting, others on the “brushwork,” others on sound, etc. Anyway, lets assume you’re doing everything yourself. Listed below are the bare minimum steps to get a map running in ET.
After the software is downloaded, install ET. Then install SD Radiant. Open up SD Radiant to begin editing maps!
Hello World, ET style
Again, this is meant solely to get a basic map for you to run around in, so I’m not going into a ton of detail. Once Radiant is opened, the help menu has great documentation that is easy to read on using the editor. Also, the guys at SplashDamage included some documentation on the new features that ET has to offer.
Just for a quick overview. There’s three main windows. The big center one is where you do most of your work. You can right click and drag in here to move around the grid. Also, on the top right, you’ll see what you are making. This is what you might see in the game. The bottom right is your palette, where textures will show up to be used on surfaces in your map.
Okay, the first thing you’ll want to do is create a box. In fact, this box is going to be our entire map.
You’ll see a white grid in front of you. Notice the numbers at the top and left of this grid. ET uses “units” as a form of measurement. 64 units is roughly six feet in the game. Make a box that is about 256 x 256 units. You can right click in the main window and drag to move around. The scroll wheel will zoom in and out.
Notice on the left side of the grid window. There’s a skinny grid as well that contains numbers. This is your Z axis scale window. When you made your box, you’ll have a red box in the Z window as well. Click above the red rectanlge, drag, and make the box taller. Make it 256 units tall.
In the top right window, you can right click once, then drag to look around. Also, you can zoom in and out with the mouse wheel after you’ve right clicked once. Try zooming out to see your box
What we’ve done is create a solid box. However, we want to be able to go inside the box. So, click the “hollow” button in the menu bar. It looks like a gray square, and is located next to the triangle of blue dots.
Now you have an empty box. There’s a few more things we have to do to get this thing working. Hit escape to deselect your box. If you ever need to select anything, do it in the 3-d view window (top right). Just shift click an object to select it.
For ET mapping, there’s two things we can have in our map… geometry, or brushes, which we’ve just made with our box, or entites. From the manual:
Entities are a broad category that not only includes simplistic editor representations of game play objects like weapons and ammo, but also includes diverse things like player start spots, and lights. Typically, they are displayed as brightly colored cubes…
For the most part, anything not a brush is an entity. To get the map running, we need a place for the map to start. This is called an info_player_deathmatch. To make entities, right click once in the main window. A menu will appear. Go to info then to info_player_deathmatch. A purple box will appear. Put this in the center of your box. You can just drag it in the main window. When it’s in position, hit escape to deselct.
We need two more entities. team_ctf_redspawn and team_ctf_bluespawn. To get them, right click, go to team then team_ctf_redspawn. Place this in your box, then do the same for the team_ctf_bluespawn.
mapcoordsmins & mapcoordsmaxs
Almost there… ET needs to know the units where our map is located. To do this, look at your box map. Now, I’ve found that using the exact coordinates for the corners of your map might freeze the game. So, get a piece of paper out, and find the corners of your box. Go about 64 units up and to the left of your top left corner, and write down the x and y value for this point. Then do the same for the bottom left. So, if the box’s top left corner is at 256, 256, make it 320, 192 to be sure it will work. One thing to note, is that the top left and bottom right corners, must make a perfect square. The width and height of the corner values must be the same. For now, if you make a 256 x 256 box and did the math correctly to add some space to the corners, you will be okay.
Hit escape, then hit N. Now you’re in the entity editor. The very stop section of this window lists all the game entities. In the top section, scroll to the bottom. You’ll see an entity called worldspawn. Click on it. The section below lists all the attributes, or keys a entity can have. Theres two keys we’re worried about. mapcoordsmins and mapcoordsmaxs.
In the key field in the entity editor, type in mapcoordsmins. Then hit tab or click in the value field. For the x and y values you wrote down for the top left corner, enter them in. For example, if your corner was at -256, 128, you’d type in “-256 128” without the quotes. Rememer, X’s go across, Y’s go up and down. Hit enter when you’re done. Then click in the key field, and type in mapcoordsmaxs. Then enter your lower right x and y values. Make sure to hit enter when you’re finished. Close the entity window when you’re through.
As is, this map can’t be run in a game. The file you’re working with is a .map file, which can only be read by Radiant, your editor. To get this to work in a game, we have to “compile” it into a BSP. This is done with a program called q3map2, which comes with radiant.
First, save you map as boxmap.map Now, go to the BSP menu in radiant. For our simple box map, we want the first option, Q3Map2: (single) BSP -meta. Select it, and wait for a bit. q3map2 will be activated, and the map will be compiled into a .BSP, a file the game can use. This should take less than a second.
Running the Map
Okay, we’re ready to jump into the box! Fire up ET. Hit the tilde (~) key which will bring down the console. Type in the following:
Cool! You should be able to run around in your box map! Now, it’s not lighted, it’s not textured, and there isn’t much to it… but still very cool!
I’ll write some more tutorials in the the future. Until then, read up on some quake 3 tutorials! 😉