Installation for Other Games

From Valve Developer Community
< Hammer++‎ | Docs
Jump to navigation Jump to search
English (en)Українська (uk)Translate (Translate)
Broom icon.png
This article or section needs to be updated to include current information regarding the subject because:
CSGO version is no longer supported. Change example to GMod. Some steps like such as symbolic links may not be needed as Hammer++ for GMOD can read "mount.cfg".
Remember to check for any notes left by the tagger at this article's talk page.

Hammer++ Hammer++ is a powerful mapping tool that solves many issues that the Valve Hammer Editor introduces, and adds some much needed features that useful to every mapper. However the only official versions of Hammer++ available are for Counter-Strike: Source, Source 2013 Singleplayer, Source 2013 Multiplayer, Team Fortress 2 and Counter-Strike: Global Offensive. Thankfully, it is possible to configure Hammer++ to use assets and compilers for other games that they were not originally intended for, including Portal 2, Left 4 Dead 2, Black Mesa, and more! Almost every Source game can run using some version of Hammer++. The games in the list below have been proven to work using the method below:

Icon-Important.pngImportant:In order to use CS:GO Hammer++, you must have the csgo_legacy beta branch installed for Counter-Strike 2 Counter-Strike 2. The CS:GO Hammer++ no longer received updates so it's highly recommended that you should switch to Garry's Mod version instead.
Game Engine branch (game) Hammer++ Version Notes ViewDiscussEdit templatePurge
Alien Swarm Alien Swarm Alien Swarm engine branch Garry's Mod Errors about reading particles, use mount.cfg to mount alien swarm data.
Note.pngNote:Functions differently than Hammer, instead of using a func_brush with name structure_seal, use a normal brush to close your maps.
If compiled it forces the map to be fullbright even if there are lights.
Icon-Important.pngImportant:use func_details for your entire map as it will generate unwanted portals
Half-Life: Source Half-Life: Source Source 2013 Singleplayer Source 2013 Singleplayer Configure Hammer for Half-Life: Source, then install to game's 🖿bin folder normally.
Half-Life Deathmatch: Source Half-Life Deathmatch: Source Source 2013 Multiplayer Source 2013 Multiplayer
Half-Life 2: Deathmatch Half-Life 2: Deathmatch Team Fortress 2 branch Team Fortress 2 Since 20th Anniversary update, HL2DM is on the Team Fortress 2 branch TF2 branch. The Source 2013 Multiplayer version no longer works, but installing 64-bit Team Fortress 2 version into HL2DM works.
Left 4 Dead Left 4 Dead Left 4 Dead engine branch L4D2 L4D2 Hammer++ appears fine on Left 4 Dead, except when compiling the map. Once compiled and joining the map, an error will appear and display: STEAM validation rejected and unable to interact with the menu after pressing ok.
PlacementTip.pngWorkaround:Before compiling the map, check the box Don't run the game after compiling and then compile the map, after it has been compiled, enter Left 4 Dead and via console, type: map <map name>.
Tip.pngTip:You can enable dev by going to manage < properties and on Launch options, type: -dev 1.
Note.pngFix:Remove the steam_appid.txt from the 🖿hammerplusplus folder.
Left 4 Dead 2 Left 4 Dead 2 L4D2 Identical to Left 4 Dead Left 4 Dead, without the Steam rejection, only displaying error on console and unable to interact with the menu when exiting the map.
Note.pngFix:Remove the steam_appid.txt from the 🖿hammerplusplus folder.
Momentum Mod Momentum Mod Strata Source Garry's Mod Need retest using GMOD version.
[confirm]
Source Filmmaker Source Filmmaker Alien Swarm engine branch Garry's Mod Need retest using GMOD version.
Team Fortress 2 Classic Team Fortress 2 Classic Source 2013 Multiplayer Source 2013 Multiplayer Setting up Hammer
Black Mesa Black Mesa Xengine Source 2013 Multiplayer Check out the issues below in the relevant subpage. A separate version for Black Mesa is not planned.
Black Mesa Black Mesa (2012 mod version) Source 2007 Source 2013 Singleplayer Install to Source 2013 Singleplayer Source SDK Base 2013 - Singleplayer's 🖿bin folder and add a game configuration pointing to the mod; the Source 2013 Singleplayer Source 2013 SP compilers generate BSPs that are compatible with Source 2007 Source 2007.
Mapbase Mapbase Source 2013 Singleplayer Source 2013 Singleplayer Install to game's 🖿bin folder normally.

Check out the issues below in the relevant subpage.

Postal III Postal III Source 2009 Source 2013 Singleplayer Requires modification to Postal 3's FGD file(s); Recommended to use Postal 3's compilers instead; Some Hammer features from Postal 3's are missing like 'prefabs';

Requires Source SDK Base 2013 MP/SP to be installed; Requires folder linking inside SDK Base's 🖿sourcetest folder to load assets; Hammer++ will crash if placed inside Postal 3's 🖿bin folder.

Portal Portal Source 2013 Singleplayer Source 2013 Singleplayer Install to game's 🖿bin folder normally.
Portal 2: Community Edition Portal 2: Community Edition Strata Source Garry's Mod? Check out the issues on the relevant subpage. Support by developers is not planned, and usage is strongly discouraged; some Hammer++ features will be added to Strata Hammer Strata Hammer.
Source SDK Base 2006 Source SDK Base 2006
Source 2006 Source 2006 games & mods
(including Counter-Strike: Source v34, Half-Life 2 Old Engine, etc...)
Source 2006 Source 2013 Singleplayer or Source 2013 Multiplayer See Installation for Source 2006 games. Don't forget that Source 2006 games will have less textures (including tools textures such as 2D Skybox), differences in LDR + HDR lighting compared to Source 2007 and later (including Hammer++ lighting preview). So remember to run both Source 2006's Hammer and Hammer++ and check see if the same texture exists in Texture Browser on Source 2006's Hammer before adding it to the map.
Hunt Down the Freeman Hunt Down the Freeman (launch version) Source 2013 Singleplayer Source 2013 Singleplayer Install to game's 🖿bin folder normally.[confirm]
Hunt Down the Freeman Hunt Down the Freeman (latest) Source 2013 Multiplayer Source 2013 Multiplayer Install to game's 🖿bin folder normally.[confirm]

This build uses Source 2013 Multiplayer Source 2013 Multiplayer to reduce map size.

This method and accompanying pictures were taken from this steam guide by the user RosemaryWebs.

Installing Hammer++

For games that are supported by Hammer++, simply download then extract the contents to the game's 🖿bin folder normally.

Installing Hammer++ on unsupported games

Warning.pngWarning:Make sure you have opened the expert compile dialogue in stock Hammer at least once before this process, as doing so creates an important file that must exist before any map can be compiled in Hammer++.
Note.pngNote:For the sake of this tutorial, Portal 2 will be used as an example. Make sure to replace the appropriate files and downloads with the corresponding version stated above.


According to Erin-Rose-Webs' original guide, Ficool2 has announced the possible release of a dedicated Portal 2 version of Hammer++. If this does come to fruition, this tutorial will persist but will have the examples changed to instead use a different supported game (Editor's note: Will likely be installation for Garry's Mod, L4D2, or Black Mesa when it happens, because that is the next biggest use case that I see-Equalizer5118, an idiot who cant spel (talk) 11:02, 15 October 2023 (PDT))

Discuss this here!

For games that are not officially supported by Hammer++ (example: Portal 2), users can try other version of Hammer++, such as one made for Garry's Mod.

First, make sure that you have the "x86-64" (64-bit) branch of Garry's Mod installed by going to Properties -> Betas -> Change "Beta Participation" to "x86-64 - Chromium + 64-bit binaries". Then wait for everything to be downloaded and installed.

Next step is actually installing Hammer++ into the files. Open the downloaded .zip file, open the folder "hammerplusplus_gmod_buildxxxx", extract the bin folder in the archive into the Garry's Mod folder in your steamapps/common/GarrysMod folder. Now, go into the bin folder and launch Hammer++ (hammerplusplus.exe), which will default to Garry's Mod configuration. We will create a new configuration pointed at the Portal 2 assets. This is where things can get complicated.

First, go to Tools -> Options, click "Edit", add "Portal 2" as game name, then close. After that, copy the information that is seen above into the respective boxes. If your game is in a separate folder than your normal steam directory, you will have to replace $SteamUserDir with the full file directory. Now click "OK" to close and save this information.

P2hammerppSetup1.png

You will get two popups which said that some changes will not update until Hammer++ restarts, but they are not important so just click "OK" on both. With this completed, you are halfway done with configuring Hammer++. Now, for compiling the map, we need to define the build programs. Go to the Build Programs tab and copy the information below:

P2hammerppSetup2.png

After you do this, click "Apply" then click "OK" to save your changes. Then, close Hammer++. Now, we will have to bring over Portal 2's lighting data into GMod. Because Portal 2 had different texlights compared to GMod, we need to define Portal 2's lights in the GMod directory. Open Portal 2's lights.rad located in Portal 2/portal2 with any text editor and copy all of its contents. Then, go to GMod's lights file and paste Portal 2's contents at the bottom of the file. It should look similar to this (comments not needed):

P2hammerppSetup5.png

You have now completed the setup of Hammer++! However if you load a new map you will find that many of your custom models and textures are missing. This is because the program is searching through the GMod directory for the necessary files and then it doesn't find them it presents you with a missing model/texture. To fix this, we will need to mount Portal 2 into Garry's Mod.

Adding custom content

To mount Portal 2 content into Garry's Mod, and in turn, Hammer++, go to your Garry's Mod directory "V:\Steam\steamapps\common\GarrysMod\garrysmod\cfg", open mount.cfg and follow the instructions on the file.

Here are the examples:

"portal2"	"C:\Program Files\Steam\steamapps\common\Portal 2\portal2"
"portal2_dlc1"	"C:\Program Files\Steam\steamapps\common\Portal 2\portal2_dlc1"
"portal2_dlc2"	"C:\Program Files\Steam\steamapps\common\Portal 2\portal2_dlc2"

Previous versions (CS:GO Hammer++, unsupported)

This is where things can get complicating. You can copy-paste all your custom files, but that can bloat your hard drive more than it needs to. Instead, it can be more space effective to create symbolic links. This is where the Link Shell Extension can help, but it is possible to use command prompt. First, navigate to Portal 2\portal2\Gameinfo.txt and add all the Portal_dlcx folders as well as all your custom folders following the format seen below:
P2hammerppSetup3.png
We do this because CS:GO's engine, and in turn CS:GO Hammer++, do not search automatically for the dlcs folders, so we have to manually list them.

Link Shell Extension

First, download Link Shell Extension and install it. Next, go to your base Portal 2 directory and Ctrl+Left click all your custom folders and dlcs folders and right click. Select "Choose link source" to start creating links. Then, go to your CS:GO directory and right click an empty space. Hover over "Drop link as" and select "Symbolic Links".

Command Prompt Method

Press the Windows key on your keyboard and type "cmd". Right click "Command Prompt" and click "Run as Administrator." A User Account Control prompt should pop up, press "Ok".

Note.pngNote:If you are on Windows Windows 11, you do not need to run Command Prompt as administrator to access the mklink command
Warning.pngWarning:Running any program as administrator is incredibly dangerous to your device! We are only running as Administrator to access the mklink command in Windows Windows 10.
Never run random apps as administrator or type strange commands you don't know into Command Prompt! It can cause permanent damage to your device!

We will now use the mklink command to create a symbolic link. The syntax for this command is as follows:

mklink /j "<link>" "<target>"

The first directory is the name of the folder the link will be named. The second directory is the name of the folder you are linking to. To simplify, by running this command you are creating a folder in the first directory that, when you open it, will show all the contents of the linked folder in the second directory. By creating a link from your CS:GO directory to your Portal 2 directory, you are not actually copying the files in those folders, you are essentially tricking Hammer++ into thinking that it is accessing a folder in CS:GO's directory when it is actually seeing files located in Portal 2's directory. This also works across drives, so you can have symbolic links on your D: drive that point to folders in your C: drive. An example of this command is as follows:

mklink /j "C:\Program Files (x86)\Steam\steamapps\common\Counter-Stike Global Offensive\portal2_dlc1" "C:\Program Files (x86)\Steam\steamapps\common\Portal 2\portal2_dlc1"
Tip.pngTip:Make sure to replace the file paths with the file paths that link to your CS:GO and Portal 2 directories.

You will now repeat this process for every custom folder you use, including the dlc folders. This is not needed for the base game (in this example portal2) folder, as hammer automatically mounts this directory.

Final Result

After you make links to all the folders, your CS:GO folder should look similar to this, just with all your custom folders instead:
P2hammerppSetup4.png
Now to fix the Hammer models, open the Counter-Stike Global Offensive\platform folder and delete/rename the materials and Models folder and replace them with Symbolic Links to their respective folders in the Portal 2\platform folder. It should look similar to this:
P2hammerppSetup6.png

Note.pngNote:Even after all these steps, some L4D2 models or textures may appear as missing or as white meshes. This is because L4D2 uses a unique model format and some unique material shaders that are unsupported in CSGO, and by extension Hammer++ for CSGO. Unfortunately, this cannot be fixed. If you need to accurately position these models or textures, use the version of Hammer included in the Left 4 Dead 2 Authoring Tools. Do remember to save frequently; stock Hammer does have some stability issues.

After you do this, open Hammer++ again. Now, you should be set! To get a list of all new features, try checking out the Hammer++ website and its page on this wiki. For general Hammer assistance, check out this article.

Note.pngNote:Some Steam mods use the original game's assets folder for shared content. While this is a bad practice, it must also be taken into account when pointing towards game files. Make sure that if this is the case to also create symbolic links to the original game's vpk folder.

External links