Guide To Making Maps In Hammer.

kobaj

VIP Member
So Ive noticed that a lot of people are getting into modding with the source engine and hammer. By "a lot" I mean 3, so I figured I would give a list of handy links of all the good old guides I used when I started learning mapping. unfortunately, the links were old...too old, so old, the sites have gone down. I managed to find a few good ones left though, and they will come at the end of the tutorial. So since I have no guides to give, I decided to make one!

Here is the end result
testmap0000yw5.jpg


This map includes a
-Skybox
-texture
-spawnpoint
-entity

I figure I auta start teaching you on how to make a map already. Whoooa, slow down there. You have to HAVE all the right tools and have them set up correctly first! I can assume you have a game based on the source engine (Half Life 2, Counter Strike Source, etc) and know how to open steam, from there head to your tools tab and you can right click "Source SDK" and download.

Once finished and you open it up, If you want to edit ORANGE box maps, start the SDK as normal. If you want to edit COUNTER STRIKE and other pre-orange box, right click the SDK, properties, set launch options, and put this "-engine ep1" without quotes. A menu of all the fun source stuff can be found next. Try the face poser, and model viewer, fun stuff! However, I havnt a real clue how they work, so lets just head onto hammer. Double click "Hammer Editor" and hammer should start up, have a bunch of messages. (EDIT: Hammer AUTO configures itself now! :D!)

Generally right here in a guide would be the "planning" stages, but thats not really hard, a piece of paper and a pencil works great, draw your imagination!

So lets get started! Click file, new, and your window should look like this.
32749771wk3.jpg


We begin by making a hollowed out cube which will work as our skybox. First click the block tool and draw a block in the top right corner of the black window.
82317186vr9.jpg


As you can see from the top it looks nice and big, but from the side (bottom left and right black windows) it doesnt look like someone would fit in there! Just like resizing an object in microsoft paint, click and drag the middle white square down some. Once youve done that, hit enter and our box is created! The top left black window is 3d view, click the camera tool and you can zoom around just like in CSS (AKA, WASD and mouse except no gravity!) "VIEW>shadded and texture" if you want it like mine to see the texture on the object.
86931870id5.jpg


Now we need to hollow it out, so we have a room to walk around in. Using the point tool click on your box in 3d view, then click "TOOLS>make hollow". 32 is a little big for my liking, select 16 for a much better wall to work with, click ok. You will see your cube in 2d view has been hollowed out. You can click the camera tool and fly inside the cube to see inside it.
85316626np9.jpg


We need to have a reference for how big our map and entities are, so lets place a human sized entity. Click he entity tool, then on the bottom right hand corner "Objects" select "NPC_metropolice" (or any other human you want, dont worry, it gets deleted later....well if you want). Using the 2d views and point tool drag it into your map, and somewhere around the floor.
40217889jr6.jpg


FOR COUNTER STRIKE MAPS ONLY: We need an entity that spawns the player, T and CT. Click the entity tool again, from object choose infro_player_terrorist and place it somewhere in your map (close to the ground once again is good). Do the same again and select counter terrorist this time.

FOR HALF LIFE 2 MAPS ONLY(NOT DEATHMATCH, I dont know how to do them...): Same thing except only one info_player_start.

I accidentally had it set up from my previous mod and this is a map for Half Life 2 Episode 2, I meant for CSS, but map making in hammer is all the same.
98369048zv5.jpg


So the texture of the walls is a little bland, lets spice it up with a skybox texture and a ground texture. Click the texture cube and then inside the 3D view click all the walls and the roof (control click to select more then one) Then click browse and find toolsskybox (not 2d skybox, not any others). In the filter bar in hammer you can type skybox and scroll all the way down, and there it is. Apply it to the walls and roof.
12821707st6.jpg


We dont want the standard skybox so click "MAP>Map properties" and then skybox texture name, all the names and their appropriate skys can be viewed here. Just type in the one you want and click apply. Find a nice texture for a floor and apply that as well.
79487327eq6.jpg


Finally we need a light in there or else we wouldnt be able to see anything! Create another entity this time with the object of light_environment and place it someplace high in your map.
52702399pc5.jpg


Well there you have it, youve created a map! Of course its VERY VERY basic, but thats where we all start isnt it? Oh wait, Ive almost forgotten, you want to publish it to the world!

Click "MAP>check for problems" It should come up with nothing as long as your map is sealed (no holes, aka, if I were able to run around inside the map, then toss a penny through a hole into the "blackness" outside, then you have a hole.) Its a simple fix, just plug the hole with something. Its bad practice, but if you cant find the hole then just place a gigantic hollowed cube around your entire map. Problem solved. But PLEASE, for the love of all that is holy, do not leave you map with a problem!!!

So now we need to compile, click "FILE>run" and save it in your map directory, for half life 2 episode 2 it is c:/program files/steam/steamapps/yourname/half-life 2 episode two/ep2/maps (I think...) Should be similar for other games like CSS. If your just running the map for a quick test, put everything on "fast". If your producing your final map, run everything on normal. (And if you dont plan on running th game after compiling then tick the checkbox, but why wouldnt you want to play?)

If you run into errors its generally because the SDK is currently being updated to include episode 2 and TF2 and portal, it might clear itself up, it might not, ask here if you have a problem.

SOMETHING I SHOULD STRESS and probably havnt been, SAVE YOUR MAP!!!

testmap0001wv4.jpg


Final map here if you want to download my map and run in hammer

Final map here if you want to download my map and run from half life 2 (console "map testmap")

(right click save as)

This was just to get a feeling of how to run around in hammer. Most other stuff is covered by the hundreds of tutorials on the internet, however this was kinda fun for me. Dunno, stick around Im thinking perhaps non linear landscape and water for the next tutorial. Anything is possible in hammer!

Speaking of guides, here is a list of useful links that I found still work.
-Entity list
-Hammer Documentation
-Mapping community
-Map hosting (Just ask nicely).
-Character mapping

Questions? Comments? Good luck with your maps!
 
Last edited:
I read somewhere that the AWP could shoot through a wall 16 thick?
Is this old/false info?

How do you add buyzones? And objects (barrels, ladders etc.).

Nice entity list :D

Thanks for the guide. (33.3% of your intended audience is pleased and thankful)
 
Last edited:
Thanks.

Great guide.

Know anything on making buildings and ladders?


If anyone builds a nice map, and wants it hosted online, on a server, let me know, I'll add it to my servers map rotation.
 
Last edited:
I read somewhere that the AWP could shoot through a wall 16 thick?
Is this old/false info?

I believe that is somewhat true. If the wall is made of say, wood, then yes the awp can shoot through it. If its made of steel, no matter how thin I do not think the AWP can shoot through.

SOMETHING ELSE I WANTED TO MENTION, when starting up HAMMER, dont be a nub like me and forget to switch the bottom selection "Current game" to CSS instead of half life2 episode 2, create a whole map, and then realize its for the wrong game.

THIRD THING I wanted to state. Using the guide I earlier posted to set up CSS games WILL NOT WORK if you own the ORANGE BOX. Ill be making a guide to set up CSS if you own ORANGE BOX later.

In todays guide we will be adding
-buyzone
-objects (barrel, ladder, and a box!)
-buildings

Start off by opening up hammer (see previous guide) and then open the previous file, or just start new!First we want to add a couple of buildings, and partial buildings. Click the create cube tool and make a cube, starting in the top right window, in the center of your map, touching the floor (bottom two windows) and about the size of one quarter of your map. Dont forget to hit enter to place it!
21ef5.jpg


You may notice that when your resizing the cube it either floats above the floor or collides into it. Both are BAD designing. Using the smaller grid button, you can make finner adjustments as to where your cube sits. To where it is JUST touching the floor. Once that is done, hollow it out (Dont forget 16 thick walls!).
22uq1.jpg


We want to be able to get into our building, so create yet another cube, this time make it longer then it is wide, but not any larger then one side of your building (about the size of oh say, a combine soldier would be good). Move it to where it is cutting into one of the walls. Like so.
23dh9.jpg


Next select the cube then "TOOLS>carve". Then select your cube again, and press delete on your keyboard. WAlla! You should have a hole in the side of your building!
24gf6.jpg


I want the inside of my building to be a buy zone. Now usually I let you build the cube and then put a texture on last. Here, we want to the texture on first (trust me, its a LOT easier this way). IN the texture selector on the right hand side of your screen click browse, then find trigger (its orange). THEN build a cube that covers (and touches, but doesnt go through) the ground and walls inside our building.
25cd9.jpg


Select the orange/clear box you made and press CTRL-t. under "Class" Select "func_buyzone". Name it something like buyzone1. From the drop down list select one of the teams, only that team will be able to buy from the buy zone. Click apply, then cancel.
26kl8.jpg


I figure maybe I wanna get on top of the building and camp so CT's cant buy stuff. Lets build a ladder up there! You can go back to selecting the cube first and then texturing, but I want to get it off the "trigger" texture, so Im going to change mine to vines before making my cube (anyone remember zelda?). Build a cube against your wall to the top, but not past. Hit CTRL-t again. This time for "Class" select "func_ladder", apply, then cancel.
27td4.jpg


We want to be able to hide behind some barrels up there right? Click the entity tool and (in 2d view remember) click on top of your building. Here you get to make a decision, static or dynamic.

STATIC: The prop is placed in hammer and can NOT be moved, it will stay there forever no matter how much you shoot it in game. This is "prop_static/detail" in the "Objects" selection of entities. Im going to make a wooden box that is prop_static (different objects have different props, this box only works with static, but a flower pot may only work with prop_detail, you have to kind of play around with it till you find out which one it is, you can tell if you got it right, because it renders correctly on the server!), hit enter to place the entity. Press CTRL-T. Select World Model. Browse (this takes a while to load). Then filter wood_crate001a.mdl, click ok, then apply, finally cancel. Move it so it looks correct on your map.
28zt2.jpg


DYNAMIC: The prop is placed in hammer can CAN be moved in game. If its shot, it will roll around or explode! Do the same above except instead of "prop_static/detail" put in "objects" this "prop_physics_multiplayer". (Yes there is different physics in multiplay then single, we dont want single, its more cpu intensive. If your building a map for HALF LIFE 2 or single player, use prop_physics.)(This time however, there isnt two to guess and check on, all objects (as far as I know) work with prop_physics_multiplayer). Do all the same again to find an object, except this time filter barrel.mdl, click ok, then apply, finally cancel. Move it so it looks correct on your map.
29ir3.jpg


NOTE: You will want to make sure entities you create that are dynamic (that is players, and objects) START ABOVE the floor (Just barely centimeters off, but it makes all the difference). If they are touching the floor, they WILL NOT move in the game/server.

So there you have it, look in the other guide for how to compile and have fun in your map!

csstestmap0000sr3.jpg


Click HERE to download and play with the map in HAMMER

Click HERE to download and play with the map in CSS

(Right click save as)
 
Last edited:
Great update.
Can you show me, or point me in the right direction, for making ladders and stuff. I am working on a map, and need ladders and buildings that I can go into.



Thanks.
 
I figure maybe I wanna get on top of the building and camp so CT's cant buy stuff. Lets build a ladder up there! You can go back to selecting the cube first and then texturing, but I want to get it off the "trigger" texture, so Im going to change mine to vines before making my cube (anyone remember zelda?). Build a cube against your wall to the top, but not past. Hit CTRL-t again. This time for "Class" select "func_ladder", apply, then cancel.
27td4.jpg

I suppose you mean you want it to LOOK like a ladder AND act as one though. You can simple select the ladder texture when making the cube (there are several different ones).

There is a WAY WAY more complicated way using entity func_laddersomethinghere but its just not worth it when in a couple of guides Ill show you how to make your textures fit right (you can do it now, just resize your cube) but Ill go into detail later.
 
Last edited:
I edited the guide for clarity, but both the shrub and ladder looking objects, are functioning ladders. I explained that using the func_ladder after pressing CTRL-T on the object, you can make anything a ladder, and make it look like whatever you want with whatever texture you want. Am I still not clear?
 
Nice, Updates :D
Ill try them in a few minutes.

If i search for the ladder texture, will it come up?
Are the textures transparent, like inbetween the bars, will you see the texture beneath it?
Sorry I cant test this atm.
 
Last edited:
Nice, Updates :D
Ill try them in a few minutes.

If i search for the ladder texture, will it come up?
Are the textures transparent, like inbetween the bars, will you see the texture beneath it?
Sorry I cant test this atm.

Just filter "ladder" and a bunch of different ones will come up that you can choose.

Yes, you can see the texture beneath.

But remember, its not just the texture, you need to change Class (ctrl-t) to func_ladder for it to work :).

Good luck, I cant wait to see your guys maps. Im busy writing another guide, water is one of my personal favorites, and lighting :D. Any tutorial requests first?
 
I made some ladders, and guard rails, worked great.


Like I said earlier, if anyone makes a map, and wants it hosted online, let me know, I'll host it on the CF CSS Server.
 
So our map is starting to get interesting. Here I am going to teach about
-nodraw
-water
-other fun textures
-lighting

Starting off, our map currently is HORRIBLE. Not only is MY computer waisting time compiling textures that will NEVER be seen. Your computer waisting frames rendering the textures youll never see. Lucky for us there is a texture called "nodraw" that doesnt compile or render (however, it is still a solid you can NOT walk through, and CAN shoot). An example of where a texture is that will NEVER be seen. Behind our ladder. Select the entire cube with the ladder texture and drag it away from our wall so we can get to the back of it. Get out the texture applicator and filter nodraw (NOT nodraw_roof), place it on the back of our ladder.
31hd7.jpg


Slide the ladder back into place. Another part of our map where a texture is but wont be seen, the outside!
32lx4.jpg


You may notice there is still texture streaks on the outside, thats because when we went to hollow it out, it didnt hollow it, it simply created six individual cubes and snapped them together. Its kind of annoying, but with good camera angles and flying through certain objects, you can put a nodraw on every surface that is never seen.
33yx6.jpg


So lets say you wanted water on your map. Something I should tell you first, if your map has a leak, your water will not render, and your map looks like crap. Start off as usual and create a cube however large you want your body of water, oh, and make sure you have the texture of nodraw selected. Once your block is created, get the texture selector and select the top face only, browse/filter for water (all other faces should be no draw). You cant really tell what they look like with the images, but play around, youll find one you like. Read the names though, they give a big hint to what the water looks like. Cheap water is cheap (cant see though, but great fps) non-cheap looks good (but a hit to your fps). You will also need to place a water_lod_control entity someplace on the map. It controls when your water looks cheap and when it looks non-cheap.
34ja4.jpg


We now have it looking like water, now we need it to act like water. Hit CTRL-T, and change it to func_water_analog. There is a ton of other settings here that you can play around with like wave height and speed. Its also good practice to build a container to put the water in, you can figure that out on your own.
35wa5.jpg


Finally, A third texture that helps load times significantly, HINT. Go to your texture applicator and select/filter the hint (purple) brush. Then make a cube with that brush, the exact same size as your door way. The hint brush tells the graphics card, "if the player is not look in this room, dont render it". It helps with FPs in larger maps with lots of rooms.
36nk3.jpg


For a list of all the other fun brushes (which I never used, but you might want to research them or something). You can find them herehere.

Finally, you can mess around with the lighting! Lets say you think its a little dark inside the building we created. Create an entity in there with the "object" light or light_spot or light_dynamic (play around with each, you should be able to learn which does what. CTRL-T (sometimes with entities, you have to use ALT-Enter, its the same thing though) to see all the different stuff it can do.
37wn6.jpg


There you have it. Thats pretty much a map in a nutshell. There is a ton more you can do like sounds and cables and triggers! Whatever you think you can create. However, I think this is going to be my last guide (Ive decided to start a new project to waist time with now :P).

So I was googling and found this collective list of guides. Use it, abuse it, but never forget it!

Download my finished map here for HAMMER

Download my finished map here for CSS

Have fun mapping!
 
Last edited:
how do you turn blocks and objects.
So they arent in a grid. Like in top view, turn them clockwise and counter clockwise

And where are fences located? Are they objects?
 
Last edited:
how do you turn blocks and objects.
So they arent in a grid. Like in top view, turn them clockwise and counter clockwise

And where are fences located? Are they objects?

With the select tool (the arrow) click on the thing you want to rotate, click on it again and the little white blocks will change from squares to circles. Grab the circle and have fun spinning it in any direction.

If you play my map you will notice I have my lights (light_spot) pointed in really weird directions, which is pretty hard to do with the click and rotate way I was describing earlier. Lights have this nifty function though, when you have it selected and press ALT-ENTER the properties menu comes up, then you will see something like "direction" or "location" inside that is a button called "point at", you select the button, click somewhere. And the light will point at that exact spot.

Fences once again are just a texture, create a box as big as you want the fence and apply the texture. (This actually reminds me, Im going to do a texture tutorial in a few minutes).

An alternative is to create an entity prop_static/dynamic/whatever that is a fence model, but you cant resize it.

:)
 
So lets say you want to make a neato fence, but your texture, no matter how many times you apply it doesnt look right. I have a solution! First we apply regularly and we get this.
41vm8.jpg


(You cant really tell because I have no reference points) But this looks horrible! There are several buttons to help it looks right! The first which usually works is called FIT, and it does this.
42yc1.jpg


All those different buttons justify the texture differently. But lets say your fence is at a weird angle. Rotation!
43pe8.jpg


The next button is called Texture lock, if its unselected, no matter how mishappen you make your cube, it will always have that same texture size/rotation/placement/etc.
44sm7.jpg


Lets say you want to get a really unique shape. Use the vertex tool!
45cm3.jpg


But what if you want to create ground! In the texture applicator, select displacement, create, play around, with the noise tool you get some pretty interesting effects.
46tm6.jpg


The others are pretty self explanatory or Ive never used. :D

More questions, comments?
 
Back
Top