Tutorial: Steam Last edited 14 years ago2004-10-26 04:00:00 UTC by Seventh-Monkey Seventh-Monkey

This article was converted from a previous version of TWHL and may need to be reviewed

  1. The formatting may be incorrect due to differences in the WikiCode processing engine, it needs to be revised and reformatted
  2. Some information may be out of date
  3. After the article is re-formatted and updated, remove this notice and the Review Required category.
  4. Some older tutorials are no longer useful, or they duplicate information from other tutorials and entity guides. In this case, delete the page after merging any relevant information into other pages. Contact an admin to delete a page.
User posted image


This tutorial will guide you through the process of setting up your editor and compile tools to work with VALVe's new Steam front-end and file structure (refer to Steam in our Glossary if you are unsure). First off, you will obviously need Steam itself, available free from the official site. Instructions on setting up and configuring Steam itself are available on the official site too. Assuming that you now have Steam running and configured, with your games registered to your account, I will now explain the new file format used to store games under Steam (the Game Cache File, extension .GCF) and the directory structure Steam expects to find custom content (your maps) in. === The Game Cache Files Steam now stores all your games' standard content in these Game Cache Files (hereafter referred to as GCFs). These are basically pretty much like the common .ZIP and .TAR archives found all over the internet, created by VALVe presumably to make distributing large games over Steam easier. The problem is that since all the content is now stored in these, you can't get the files you need for mapping quite as easily as under the old WON system. At the time of writing, there is only one program capable of opening GCFs for our purposes: Nem's GCFScape, found here. You will almost certainly need this tool at some point in the not-so-distant future, even if you're lucky enough to have ensured you kept your textures.

Custom Material

Now, "where do I put my maps?" I hear you cry. Don't worry, I'm just getting to that. Steam looks in another place for files for its games: the SteamApps directory found in your Steam folder. In there you will find the GCFs containing all the games you've downloaded through Steam (or which Steam has converted from old WON installations) and a subdirectory with the same name as your account. If you do not have a directory with your account name (which is your e-mail address for older accounts), simply create one - just make sure that you type it exactly right.
My SteamApps directoryMy SteamApps directory
Now, custom content is stored in your account directory (if you use more than one account, you will have to have seperate copies for each account) under a directory named after the game you're giving new stuff:
The SteamApps directory treeThe SteamApps directory tree
In the simplified folder tree above, you can see that my account "theshadow@liam.com" has folders for "counter-strike", "half-life" and "day of defeat". These are the games listed in Steam's "My Games" window which I have installed new content for. In the "half-life" directory is the normal "valve", the same as with WON HL. The fact that I have "maps", "models" and "sound" subdirectories shows that I have extra files (or replacement files) for those aspects of Half-Life. You should note that files here will override files in the GCFs, so you can download replacement models, etc., and place them here to use them in-game instead of the originals.

Now, you may not have any directories below your account name. If this is the case, again, just create them. As long as you type the names correctly, you should have no problems. It is basically laid out like this:


SteamAppsmrblobby_hahaday of defeatdod
SteamAppssupermapperhalf-lifets (The Specialists)

I imagine you get the idea. If not, read this and then go over to the forums or IRC.

Game Configurations

Now onto configuring Hammer. Assuming you have already set up Hammer before for standard HL (see here for help on that), go to the Game Configurations dialog (Tools -> Options) and look at the bottom half. You will see something similar to this:
My directoriesMy directories
Now, the first two of these paths are what I just referred to as the product_dir and mod_dir so you should be able to find and/or create these with the help of the examples above. The third dialog is slightly different; you should set this to your product_dirvalve directory.

You're nearly finished.

Build Programs

Luckily, there's only one field to change here, which is the somewhat long-titled "Place compiled maps in this directory before running the game" box. This should be filled in with product_dirmod_dirmaps:
Build Programs dialogBuild Programs dialog


Now, try compiling a map and see if the BSP file is created and put in the right directory. It should be in the maps directory of your product's mod directory. If it does, then start your game normally through Steam, hit the tilde key (just below Esc) and enter map yourmapname. If it's not working, go back and check all your settings. If you really can't get it to work, don't give up, keep reading!


An extremely handy thing for Steam mappers (particularly those with '@'s in their paths, which can cause some operating systems a headache) is the DOS utility "SUBST", short for 'substitute'. To start this, go to Start -> Run, and enter command.com if you're using Windows 9x/Me, or cmd.exe on 2000/XP/later. You will be presented with a black DOS window.

This tool will temporarily (until you next reboot) create an extra drive which will appear in all your programs, pointing to another place on your computer. This basically means you can make, for example, an S: drive which will act basically as a shortcut to (i.e.) C:Program FilesSteamSteamAppstheshadow@liam.com. You would do this example by entering this in the DOS box:

subst s: C:Program FilesSteamSteamAppstheshadow@liam.com

It's as easy as that. You now have an S: drive which is absolutely identical to that directory. You can use this when filling in Hammer's dialogs instead of the long pathnames before!

To make this new drive pretty much permenant requires you to make a batch file. This is just a text file with a list of DOS commands in which will be executed in order whenever the file is run. Making a basic batch file is very easy: just open Notepad, for example, and type the command exactly as you would do in a DOS window. Then go File -> Save as, choose a location, and enter something like "yourbatch.bat" (with the quote marks for once). Now go to the place where you saved this file in Explorer, 'My Computer' or suchlike and just double-click it. All the commands in there will be run automatically.

To make use of this for our SUBSTing purposes, to have the drive re-mapped every time you start up, you must make a batch file with your SUBST command in, and then make a shortcut to it in a special place where Windows looks for things to run at startup. An easy place is on the Start Menu, under the folder "Startup". To do this, just right-click and drag your batch file onto the Start button, then, holding the mouse button down, move over Programs, then Startup for Windows 9x/2000 or All Programs then Startup for XP. Release the button when the cursor is in the Startup group and you will be presented with this:
Start Menu right-click & drag context menuStart Menu right-click & drag context menu
Just click on Create Shortcuts Here and your work is done (just don't move the batch file itself, obviously).


You must log in to post a comment. You can login or register a new account.