Lesson 3 - Brush Subtraction, More Lighting, Monsters

Note: This tutorial was written for Hexen2 mappers. I have also created a Quake2 version and a Quake version of this same tutorial. Read that if you are doing maps for either of those games. The content is the same; it's just the texture/entities/screenshots that have changed.
Welcome back. In lessons 1 and 2, we've been creating a map. If you did those lessons, you should have a file called 'Lesson2.map'. If you don't have it you can download it here.
In this lesson, we'll work on adding a little more light to our map by adding a window in the ceiling. Then, as promised, we'll put our first monster in! Now we can kill sumthin'!
As you remember from lesson 2, our map has 4 lamp posts, but there is a dark spot in the center of the room. If we add a skylight in the ceiling and put an invisible light source in it, it will look like light from the sky is shining into our room. In order to add a window, we'll need to use a technique called brush subtraction.
Brush subtraction is used whenever you want to cut a hole in a brush you already have drawn. The process involves making a brush in the shape of the hole you want to make, positioning this brush so that it sticks through the brush you want to make the hole in, subtracting the brush, and deleting the subtracted brush (optional, depending on what effect you're creating). It's not as complicated as it sounds, but it can be a little tricky. Don't worry, though, I'll go through each step in detail.
If you haven't done so already, start up BSP and load 'Lesson2.map'. Before we change anything, let's save our map under the name 'Lesson3.map'. That way we won't change anything we've already done.
Switch over to the Top View and draw a brush from (-128, 64) to (128, -64). Now switch to a either the Front View or the Right View and drag the top of your new brush to 144. Drag the bottom of the brush to 120. Notice how this brush 'sticks through' our ceiling brush now. This brush is going to end up being a metal border around our skylight, so it sticks out the bottom of the ceiling a little. This isn't necessary, but adds a little decor to the map.
Go ahead and switch to the Texture Browser window and apply the texture 'rtex103' to our new brush. You know, while we're at it, let's make our brush something other than a boring old rectangle. For that we'll need to clip off the corners, like we learned in Lesson 2. Switch back to the top view and clip from (-128, 40) to (-96, 64). Also clip from (96, 64) to (128, 40), (128, -40) to (96, -64), and (-96, -64) to (-128, -40). If you need more specific instructions on how to do this, refer back to Lesson 2.
Once you've got this brush clipped into shape, click on the 'Subtract' button to subtract it from the ceiling brush.
Subtract Button
Now, let's make another brush that will end up being the sky. Hit {esc} to deselect your new brush and draw a brush from (-120, 56) to (120, -56). Now clip off the corners so that it fits inside the Metal brush we just drew. Clip points will be (-120, 32) to (-88, 56), (-88, -56) to (-120, -32), (120, -32) to (88, -56), and (88, 56) to (120, 32).
Next, switch to the Front View and drag the top of our Sky brush to 160. Drag the bottom of the Sky brush to 112. Let's go ahead and apply a sky texture to the brush. I chose 'Sky004'. That is a nice dark sky.
Now, while we're still in the Front View, click on the 'Subtract' button.
Subtract Button
When you click this button, what actually happens is this: Each brush that your Subtraction Brush intersects gets divided up into a bunch of smaller brushes. That way we don't end up with any illegal brush shapes that cause Hexen2 to crash. You don't really need to know this, but after you cut out this hole, you will see your ceiling brush has been split up into several brushes. Just thought you would like to know why.
Now that we've subtracted the brush, we can move the bottom of our sky brush (it should still be selected) up to 144. That way the sky will appear to be above the window, which is the effect we want. We could delete the brush altogether, leaving a hole in the ceiling. This would be handy if we were going to put another room above this one, but in this case we left our Subtraction Brush and used it for the sky.
Okay, we're almost ready to try our map out, but we need to add a light source in the window before we do. That way light will appear to come in through the window. Switch back to the Top view and make a 16x16 brush, centered on the coordinates (0,0). Switch to the Entity Window, make it a 'Light' and assign 'light' '300' as the Key/Value pair. Switch to the Front view and drag your Light up until the top of the Light sits on 144, which is the bottom of our 'Sky'.
Well, we're ready to try out our map, so save it and compile it. Once Hexen2 runs, look up at the sky shining in through the ceiling. Neat, huh? You might also notice there is the sound of wind now. This is thanks to Hexen2. Whenever you use a sky texture, Hexen2 adds this sound to your map. It adds a little atmosphere to the game, don't you think? Also notice that the center of our room is lighter now. Actually, this room's looking pretty good.
You can see how easy it is to create interesting effects with brush subtraction. In the next lesson, we'll use subtraction to make a door and connect to another room.
Okay, now as promised, we'll make a monster in our map. While we're at it, let's make a different monster appear depending on what skill level you're playing. That's an easy way to make your map playable by people who are new to Hexen2, as well as still being enjoyable by veterans.
Draw a new brush from (-192, 16) to (-160, -16). Switch to the Entity Window and make this brush into a 'monster_archer' entity. That will make a monster that you can kill pretty easily. After you click on 'Make Entity', click the '0' button, to make the monster face East, then check the '!hard' and '!dm' checkboxes. That will prevent this monster from showing up in the Hard skill level and from showing up in Deathmatch. They don't show up in Hexen2 in Deathmatch anyway, but it never hurts to set this just in case. Make sure to set the skill flags after you click 'Make Entity' not before. If you do it before, you will actually apply the skill flags to your worldspawn entity and your map won't run. You might also notice that there are boxes to exclude the monster from Coop play and from Single play, so you can customize your maps for Cooperative mode as well.
Okay, now switch to the Front view and check to make sure the bottom of the entity brush is resting against the floor, and that's all there is to it. We've just created a monster. Save your map and play it if you want, but we're not quite finished yet.
Deselect your brush and draw a new one on the same spot as the first one. That way this monster will appear in the same spot as our Archer. Now switch to the Entity Window, select 'monster_werepanther' from the drop-down list and click on the 'Make Entity' button to create a monster that's a little tougher. Now while you're in the Entity window, clear the '!hard' box and check the '!easy', '!norm', and '!dm' boxes. This will make the Werepanther appear only in the Hard skill level. You might be wondering about Nightmare skill? In Hexen2, I think this is the same as Hard skill, but the monsters are faster.
Got it? Alright! Now, save your map as 'Lesson3.map' and compile it. Now when Hexen2 runs, you should see an Archer standing in front of you. Let it kill you. (I know it's hard not to blast away isn't it?) After you're dead, hit '~' to bring down the console and type 'skill 2'. Hit '~' again to remove the console and hit the 'ctrl' button to restart the map. Now, instead of an Archer, there should be a Werepanther. Same map, different difficulty level. If you want, you can let it kill you and switch back to 'Skill 1' to see the Archer, but take my word for it. It's still there.
Whenever you're done playing with your new-found friends, exit Hexen2 and return to BSP. We're going to go ahead and delete both monsters. I know you went to a lot of work to create them, but everytime you play-test your level, they will be there just waiting. They can really get in the way for now, so let's just get rid of them. Select one of the monster brushes (the enforcer is probably still selected) and click on the Trashcan button to delete it. Now do the same with the other monster. That way we can play-test our level in peace, but at least you know how easy it is to control the difficulty levels in your maps.
Well, that wraps up Lesson 3. In the next lesson, we'll make a second room and build a door to connect it to the first. See you then.
| Return to the BSP Tutorial List | Return to the Main Page |

This site is designed for 800x600 resolution, and is best viewed in Netscape 4.0 or above with 16bit color or higher.
BSP is the sole creation of Yahn Bernier. I am only a dedicated user, reporting news and making tutorials so Yahn can spend more time enhancing BSP.
This web page was created and is being maintained by me (DeadMeat). Unless otherwise noted, all content appearing on this site was written by me. Also, 'DeadMeat's BSP Tutorials' were created entirely by me. All unauthorized use is prohibited. (c) 1997. So there :-P