For those who do not know, Propper is a program which converts brushes into models for use in props, whether they be prop_static, dynamic, or physics. It smooths out the brushes and can automatically create collision models, but is also a bit difficult to use and has fragmented documentation.
This tutorial will attempt to make that process easier.
First things first: You need to install Propper.
Download and unzip the sourcesdk folder into your steamapps\STEAM USERNAME folder, merging it with the sourcesdk folder that is already there.
Before the Source SDK was updated last October, this USED to be all you had to do. However, the update gave TF2 a new engine (Source Engine MP), and if you were to try and compile a map with Propper nowadays, you would get this error message:
To fix, go to sourcesdk\orangebox\bin. Copy propper.exe and propper.fgd and paste them into sourcesdk\source2009\bin (if you cut it, you won't be able to use Propper's special entities in regular Hammer!).
This does you no good, as TF2 runs on the Source MP engine and we just put Propper into Source 2009. Propper now needs its own game configuration as a workaround.
Boot up Source SDK (NOT the SDK Base, just the SDK). At the bottom, you'll see "Engine Version" with a dropdown next to it. Change this to "Source Engine 2009."
Now, just below the middle section of the SDK Window, under "Utilities," you'll see "Edit Game Configurations." Double-click this and then click the "Add" button. Give your new configuration a name (I used Team Fortress 2 Propper). For "Directory," navigate to this folder:
steamapps\STEAM USERNAME\team fortress 2\tf
Hit OK, then OK again and restart Source SDK. After it restarts, the dropdown below "Source Engine 2009" will have an option for whatever name you gave your Propper configuration. Select it and start Hammer normally.
When Hammer boots up, click on Tools -> Options. The "Game Configurations" tab should be the tab you land on (if this isn't the case for whatever reason, go ahead and select it). Where it says "Game Data Files," click "Add" and select "propper.fgd." Hit OK to save your changes and restart Hammer.
You'll need to do this inside your Source Engine MP version of TF2 Hammer as well if you want to have access to Propper's entities within your normal Hammer.
Go into your map and select the brushes you want to make into a model. Move them to a propper_model entity. Consult this wiki page for details on what each of the fields do.
Now you'll want to compile this model. Boot up the Source Engine 2009 configuration we created earlier. Open your .vmf and click on File -> Run Map. In the box that pops up, hit "Expert" in the bottom left.
Go to where it says "Configurations." To the right there will be an "Edit" button. Click on that and remove everything BUT the top option (otherwise you may wind up compiling your map in the Source 2009 engine, and I have no idea what will happen then, but it probably won't be good). Rename that to "Propper."
Now, remove all the entries below "Compile/run commands." Create a new one. To the right, below where it says "Command," write "propper" (without the quotes, obviously).
For parameters, write:
-game $gamedir $path\$file
If you just want it to spit out a model you can use in TF2, you're done! Just hit the "Go!" button and it SHOULD spit out a model per propper_model entity you created in the map. Now you just need to go and replace the propper_model entities with the right props.
But what if you just want the raw SMD, for use in 3DS Max or another modeling program?
Click the "Edit" button on the top left again. Copy your Propper configuration. It'll paste it again automatically, just name it "Propper Model Export" or whatever. In the Parameters box of your export configuration, type:
Hit the "Go!" button again and it'll spit out your SMD into wherever you specified!
NOTE: By default, Propper converts any materials you mention into a material that can be used in a model alongside the .mdl file. This configuration is just for your modeling program, so it doesn't do that and instead simply spits out a .smd. If you'd like it to convert the materials into ones that can be used in a model for whatever reason, simply remove the -nomaterials command.
If you get an error message that reads something along these lines:
Windows gave the error message: "Access is denied."
Double-check to make sure Propper has been copied to the right folder and you didn't mistype anything.
If the folder that holds your smd file is not set (by default C:\propsource\yourmodeldirectoryname), compiling will fail. To fix this, if you are compiling a prop that goes in models/props_tf2m, create a C:\propsource\props_tf2m folder.
I also ran into a problem where some faces weren't being textured, and I think it was because the texture I was using was not tagged "tf" in the base FGD. I think adding in the FGD that ABS made as part of his resource pack fixed it. I dunno, that sounds too dumb to be true, but Propper is weird.
I was having a problem with some faces not texuring either. I tried the ABS FGD which didn't help. I noticed the problem was that I was creating a different material directory for each prop, and if the texture was used in more tahn one prop, the texture and material directory would only be supplied/created for the first prop encountered. I guess the work around is to output all texture/materials to a single folder? ..or to create the uncreated folders with the .vmt files manually.
And by the way, thanks for this post! I would not have been able to use propper without it. It appears to be the only tutorial capable of getting someone up and running with propper at this time without days of playing around or expert internal working knowledge.