Black Mesa

Black Mesa

42 beoordelingen
How To Use Hammer++ For Black Mesa
Door Jimmy McBeltbuckle
This guide is going to show you how to install and use Hammer++ for Black Mesa.
2
3
   
Prijs
Toevoegen aan favorieten
Toegevoegd aan favorieten
Verwijderen uit favorieten
Introduction
Hammer++ is basically a sick community-made upgraded version of Hammer, which is easy to install for the main games that use Hammer such as Tf2. But thanks to a very helpful communtiy member on the Black Mesa Discord they managed to make it work for Black Mesa (even if flawed in some parts) and I'm simply relaying this information into this guide. Big thanks to him.

This guide is meant to explain to mappers old and new how to install and set up Hammer++ for Black Mesa and hopefully is an easy to process and easy to deconstruct guide.

Installing Hammer++
First and foremost to use Hammer++ you are going to need to install it.

To install it you are also going to need to install Source SDK Base 2013 Singleplayer. To do that go to your Steam Library and click Games. Then select tools and search Source SDK Base 2013 Singleplayer and simply install it.

Once you have the SDK installed, you can download Hammer++ here:

https://ficool2.github.io/HammerPlusPlus-Website/index.html

The link takes you to the main page. Go to the DOWNLOAD tab and then select the Source SDK Base 2013 Singleplayer version of Hammer++. After clicking on it it will download a zip file. The zip file will contain a folder and in that folder will be a README file and a folder called bin. In the bin folder will be an application file and a hammer++ folder. The application file will launch Hammer++ while the folder will be what stores your Hammer++ settings and configs.

Next you are going to navigate to:

C:\Program Files (x86)\Steam\steamapps\common\Source SDK Base 2013 Singleplayer

(I would recommend pinning this file location in Quick Access to quickly access it instead of clicking each folder over and over again.)

Once you arrive at the folder directory, simply place the bin file from the Hammer++ zip file into the Source SDK Base 2013 Singleplayer folder and with that you are done!

You could go into the bin folder of the Source SDK Base 2013 folder and simply launch the application. That is how you install Hammer++. Now that leads us to our next step which is...
Configuring Hammer++ For Black Mesa
The next step after installing Hammer++ is to set it up to use for Black Mesa.

Since all of the settings that you change in Hammer++ are stored in 2 config files just download it from this link and move it to your Hammer++ folder. But if it doesn't work or you just want to do it manually you have the instructions below. Click HERE[drive.google.com] to download the files.

Simply put the folder in:
C:\Program Files (x86)\Steam\steamapps\common\Source SDK Base 2013 Singleplayer\bin
And when you launch Hammer++ there should be a setting that says "Black Mesa." If there isn't then you have the manual instructions below. If downloading the folder and putting it into the correct location worked, than you can move directly to Step 3.

The first thing you're going to want to do is to open up Hammer++. To do that go to the Source SDK Base 2013 Singleplayer folder and click on bin. After scrolling down or searching for it, double click the application file for Hammer++. It will bring up a tab that says "Select a game configuration to use." From what I could tell you could use any because you are just using it to open the program but I used SourceTest just in case.

After successfully opening Hammer++ click Tools in the top left corner and click Options. A box that says "Configure Hammer++" will open up. There are several tabs at the top of the box that say "Materials, Build Programs, Hammer++," you are going to click Hammer++.

Many checkmark boxes will show up appearing in various tabs that say "Graphics, Discord, Misc, Options, Gizmo." What you need to uncheck is "Use modern Windows file dialog UI." It is located at the bottom of the Options tab.

After unchecking the "Use modern Windows file dialog UI" box, go back to the top of "Configure Hammer++" where the different tabs such as "Game Configurations, General, etc." are located. Click on "Game Configurations."

What you are going to next is click on the big edit button to the right of where it says "Configuration." When you click on it it will say "Add, Remove, Copy." Click "Add." And type "Black Mesa."

Now to set up the Black Mesa configuration, you are going to click on each of the "fgd" files in the "Game Data Files" tab and click remove for each of them. After doing that you are going to click "Add" which will bring up your files.

The first thing you are going to want to do is press on the folder that says hammerplusplus. There will be an fgd file called "hammerplusplus_fgd.fgd," open it or double click it. This will add a number of Hammer++ features that'll be useful.

After that you are going to click the icon that says "Up One Level" three times which looks like a folder with a green arrow coming out of it in the top right corner, which brings you to your common steam applications folder. From there you enter the Black Mesa folder, and then the bin folder. After you do that you add all 3 fgd files into the Game Data Files.

One you add all 3 fgd files, the 4 things you are going to NEED to change is the Game Executable Directory, the Game Directory, and the Hammer VMF Directory.

For the Game Executable Directory you are going to set it to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa because that's where the application file is and where it will launch the game from when you launch the map.

For the Game Directory you are going to set it to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bms because that's where the GameInfo.txt file is located and Hammer++ won't be able to run with the BM config otherwise.

For the Hammer VMF Directory you could choose wherever you like to store your VMFs
(Valve Map Files) but by default and where mine are stored is likely in:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bms\maps because when you compile a map it typically creates a bsp where the vmf is located and the bsp goes in the maps folder.

(Optional) You can also set your prefab directory to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bms\maps\prefabs. You probably don't have a prefab file so you have to create one in the maps folder.

After you have done that you're now going to need to set up the Compiler to compile maps in Hammer++ by setting up the directories in the Build Program tab. In between the Materials tab and Hammer++ tab there is a tab that says "Build Programs." Click it.

Similar to how you set up the directories in Game Configurations you are going to set up the directories in Build Programs.

For Game Executable you are going to set it to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bms.exe where you actually link it to the application file itself rather than the folder that it's in.

For BSP executable you are going to set it to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bin\vbsp.exe which is the application that creates the BSP files for your map.

For VIS executable you are going to set it to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bin\vvis.exe which is the application that compiles VIS for your map.

For RAD executable you are going to set it to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bin\vrad.exe which is the application that compiles RAD for your map.

Then, you set the directory to where compiled maps will go (BSPs) which is:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bms\maps

And finally for the MDL executable, which will be used for Hammer++'s Propper++ tool, you are going to set it to:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bin\studiomdl.exe which is the program Propper++ uses to compile brushes to models.

Once you have done that you have finished setting up the BM Configuration for Hammer++ which leads us to our final step...
Porting Black Mesa Files Using Symbolic Links For Hammer++
Now the final step is to port all of Black Mesa's textures, models, sounds, etc. to the
Source SDK Base 2013 Singleplayer folder so that Hammer can use the entities, textures, and models from Black Mesa. If you don't you will have missing textures and errors everywhere.

There are 3 ways you could do this:

1. Literally Port Over All Files to Source SDK Base 2013 Singleplayer

This is the simplest and easiest way to finalize setting up Hammer++ for Black Mesa, but is not recommended because of how much memory it will take up and for how cluttered it will be. So the second option is to simply use a Symbolic Link to directly link your BMS files to the SDK folder.

2. Download a Plugin To Create A Symbolic Link (Recommended)

So the second option as an alternative is to simply use a Symbolic Link to directly link your BMS files to the Source SDK Base 2013 Singleplayer folder. A simple and easy way to do this is to download and install a plugin that allows you to make a Visible symbolic link folder that you can move around and delete. One that I used to do it and was recommended to me was this: https://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html

To install it click on Download near "Quickstart" and scroll down a little or instead click on HardLinkShellExt_$(platform).exe near the installation instructions. You will see multiple versions you could download for different systems etc. I downloaded the "64 Bit All Windows" version. There is also a 32 Bit version for people that have a 32 Bit system. I scanned it with Kaspersky, made sure there were no threats, malware, etc. and seems pretty safe to me.

After downloading and installing it per it's instructions (running the application/installer) and installing it you can now right click on folders and quickly and easily create Symbolic Links, and see exactly where they are, and where they lead.

To create a symbolic for your BMS files to the Source SDK Base 2013 Singleplayer folder, go to your BMS file directory at:
C:\Program Files (x86)\Steam\steamapps\common\Black Mesa and right click on your "bms" folder. When you do click there will be an option called "Pick Link Source." Select it.
After you do that go to your Source SDK Base 2013 Singleplayer folder directory at:
C:\Program Files (x86)\Steam\steamapps\common\Source SDK Base 2013 Singleplayer
Then right click in the folder and an option that says "Drop As..." will appear below
"Cancel Link Creation" which will obviously cancel the symbolic link creation. When you click on "Drop As..." you will get multiple options such as "Symbolic Link, Junction, Smart Copy, etc." Click on "Symbolic Link."

Once you click it a folder that says "bms" with a small blue arrow in the bottom left corner, similar to a desktop shortcut, will appear in your Source SDK Base 2013 Singleplayer folder. It will link you and Hammer++ to your BMS files.

3. Use Command Prompt to Generate Symbolic Links

If for whatever reason you are still uncertain about downloading the plugin you could use Command Prompt to generate symbolic links as Invisible Files. I tried this and I screwed it up, and couldn't do it, and it didn't work, and it was a hassle fixing it, and I couldn't fix it, so I just downloaded the plugin.

To use Command Prompt you are going to go to the search bar at the bottom left corner of your screen and type "Command Prompt." An important thing to do is not to simply click on it but right click on it and run as administrator, otherwise you won't be allowed execute the command.

To create the symbolic link (specifically a hard link which stores the actual data of the original file) from file directory to directory you have to use the command:
mklink /J "Link To Folder" "Folder Being Linked To"
which in our case is:
mklink /J "C:\Program Files (x86)\Steam\steamapps\common\Source SDK Base 2013 Singleplayer" "C:\Program Files (x86)\Steam\steamapps\common\Black Mesa\bms"
You can just copy and paste the command with ctrl c and ctrl v. The quotation marks are important.

Theoretically it should work but for me it didn't seem to work out. Let me know if it works for you because I can't confirm if it works, all I can say is it's a hassle to deal with if it doesn't work. You can't actually see the symbolic link when using the command prompt method so you don't know if it worked or not unless you boot up Hammer++ and see if all your textures and props are missing or not. If this option doesn't work try option 2 which is what I did.

Credits/Conclusion
With that everything should theoretically work and you've got yourself an upgraded very awesome community made version of Hammer for Black Mesa mapping!

All of this information was found on the official Black Mesa Discord and it's wonderful members. If you like this guide and have anything you want to suggest, discuss, talk about, this server is for you!

If you have any trouble shoots, comments, issues, please feel free to start a discussion. Unfortunately I'm still new to mapping myself and can't answer many questions but perhaps someone more experienced can.

BIG THANKS TO:

https://steamcommunity.com/id/Qtheman3456/
For digging around and finding A LOT of the information in this guide. Without him this probably wouldn't be possible.

https://steamcommunity.com/id/ficool2/ and his Friends/Team
For creating such an amazing upgrade to Hammer that will make creating much easier.
Known Issues:
Hammer++ seems to have a few issues at the moment.

1. Hammer++ does not and cannot show or save 4way displacements. Meaning that you cannot see Xen maps or compile them, which rely heavily on 4way displacements.
(Potentially fixed with new Hammer++ update where it saves 4way displacement data, but hammer++ does not show the 4way displacement textures themselves as they use complex shaders. Can be seen in 3D Filled Polygons viewing mode in the view tab.)

EDIT: According to a user in the comments you can save 4way displacement data by changing a setting in a file called "hammerplusplus_settings.ini" within the hammer++ folder. At the bottom of [General] there is a setting called "Enable4WayBlends=0". Change the 0 to a 1 if you want the 4way displacement data to be saved.

2. Hammer++ does not show blend textures. If you have some kind of blend texture in your map, it will only show the base/main texture and not the secondary texture.

3. Hammer++ after expert compiling and quitting the application will break Hammer++ and not allow you to launch it. It will also show an MDPD file that says "access violation." In order to fix this, take out the hammerplusplus_gameconfig text file and the hammerplusplus_settings config settings file from your Hammer++ folder which contains all the config changes you made and delete the folder and the .exe file and reinstall it them from the zip. Then place your Hammer++ config files back in your new Hammer++ folder.

4. When moving between Hammer++ and Hammer, some solids may not load correctly or won't be read and will be removed. This happens mostly with clipped brushes and displacements and occurs randomly. This can be fixed by re-clipping the brush in OG hammer or god forbid remaking the displacement.
(Potentially fixed with new Hammer++ update with new advanced brush saving feature.)

5. Hammer++ vmfs seem to take up more memory as it has a more complicated vmf saving feature. Try to keep a seperate hammer++ version of your vmf and regular hammer version of your vmf so that your hammer++ brushes don't break, and use the regular hammer version to compile the map.

More to come.
45 opmerkingen
Jimmy McBeltbuckle  [auteur] 16 mrt om 14:31 
https://steamcommunity.com/sharedfiles/filedetails/?id=2331428357
You subscribe to these, take them out of the bm workshop folder location, put them in your own folder, and open them using hammer++
thinspirations 16 mrt om 13:28 
im new to this but after all the steps how do i get the black mesa maps into hammer++
MikeTheShyBoy 16 mrt om 9:25 
thank you so much!
Jimmy McBeltbuckle  [auteur] 16 mrt om 4:12 
Oop my bad, my steam is on an external drive so when i updated the configs recently all the configs are directed toward that location instead of the default steam installation. Just updated it, try it out and let me know if it works
MikeTheShyBoy 15 mrt om 21:49 
Everytime i copy paste the drive files the hammer editor stops working, it shows to all games that the gameinfo.txt is missing
tpd1864blake 19 jan om 6:06 
Yes, I just tested this. Setting this value in SDK 2013 Hammer++ causes 4 way displacements to be loaded, and thus saved in the VMF, but the engine is unable to render any 4 way blends. I have a guide for installing the Garry's Mod branch of Hammer++, which seems to work much better but is much harder to set up. I've linked to your guide as an easier option for people who don't need to edit or view complicated map terrain
tpd1864blake 19 jan om 5:54 
Thanks. I haven’t tested if that setting works on SDK 2013 branch of H++, so I need to test if SDK 2013 H++ is able to save 4 way displacements despite not being able to render them.
Jimmy McBeltbuckle  [auteur] 18 jan om 18:38 
I've added the info in "Known Issues" right above. For future reference when working in hammer++ I recommend having 2 seperate vmfs with one version being the hammer++ version and one being the regular hammer version as I also recommended in the known issue section. For working with BM exclusive entities use OG Hammer, and for everything else hammer++. Someone in the comments also said you are able to compile in hammer++ by tweaking things but I personally don't recommend it because for me it breaks hammer++. Newlights didn't even show up properly until one of the previous major updates and I tweaked them in OG hammer originally (now I don't need to.) That's why generally when working with displacement alphas (including 4way displacements) and other bm exclusive features, I recommend sticking with OG Hammer and keeping a seperate saved OG Hammer vmf, but using hammer++ for everything else and continuing building the map with hammer++ in a hammer++ vmf.
tpd1864blake 18 jan om 11:55 
Props and terrain that rely on 4 way displacements will be deleted from any VMF saved through Hammer++ unless you go into /bin/hammerplusplus/hammerplusplus_settings.ini and change the Enable4WayBlends value to 1. Please update this guide to avoid users accidentally destroying their maps
Jimmy McBeltbuckle  [auteur] 14 jan om 15:27 
Happy to hear that, good luck brotha because this is only the beginning. 👍