[TUTORIAL] Using Propper With TF2

English Mobster

L6: Sharp Member
Jul 10, 2011
355
299
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:
Code:
Can't load c:\program files (x86)\steam\steamapps\STEAM USERNAME\sourcesdk\bin\orangebox\bin\filesystem_steam.dll.--VFileSystem017
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:
Code:
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:
Code:
-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:
Code:
-nocompile -nomaterials -game $gamedir $path\$file
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.
 
Last edited:

tyler

aa
Sep 11, 2013
5,102
4,621
To add to this:

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.
 
Last edited by a moderator:

Forker

L1: Registered
Feb 6, 2013
7
0
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.
 

Afterglow375

L1: Registered
Oct 1, 2012
25
0
This is a bit outdated with the steampipe update. Can someone link me an updated tutorial or update this please? Thanks.
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
I never understood why Propper wasn't updated so it could run under the Source MP branch in the first place, not that it matters now.
 

Potada

L1: Registered
Jan 28, 2016
38
10
Just thought I'd bump this thread to ask if there are any more recent or updated guides to Propper, or if there are any better alternatives for making props.
 

worMatty

Repacking Evangelist
aa
Jul 22, 2014
1,257
999
Hi, there.

Propper was recently updated to support newer Source engine branches and the VPK format of indexed file packages, so you don't need to install any SDK bases or Half-Life 2, nor do you need to extract TF2's assets. Propper's VDC wiki page tells you all you need to know to install and use the new Propper-2013 but here is a basic guide:
  1. Download Propper-2013 and install the stuff into Team Fortress 2/bin.
  2. In Hammer, go to the preferences and add Propper's game data/FGD file to the list.
  3. Go to the Expert Compile options and add a new profile for Propper, using the parameters shown on the wiki page.
  4. Build some brushes, select them all and tie them to the propper_model entity. Fill in the fields.
Here's an example of a Propper model in Hammer:
ZZpjHbj.png


The better alternative for making props is learning to use a 3D Modelling application like Blender (free) or 3DS Max (not free).
 

Asd417

Sample Text
aa
Mar 20, 2016
1,451
1,031
where is my_model folder in your example? do I have to make one?

EDIT: Also, I keep getting access denied. Where should I look for?
 
Last edited:

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
Yeah, "my_models" just means whatever folder you want your model to go into. It can even be the name of a stock prop folder if you want, like props_gameplay etc. If there's not already a folder with the name you want, you have to make one first and that should take care of any access issues.
 

Micnax

Back from the dead (again)
aa
Apr 25, 2009
2,109
1,585
Sorry to necro-bump this, but I can't seem to get Propper working with my configuration.
I've added the fgd, pre-made the folder paths, and set up the settings as shown above for the model I want to convert, but Propper will straight-up crash when trying to compile it.

ydcxsx.png


I know I used to be able to compile with Propper before Steampipe, but can't figure out fixing it.

Any ideas?
 

Fragancia

L2: Junior Member
Feb 22, 2013
91
33
Sorry to necro-bump this, but I can't seem to get Propper working with my configuration.
I've added the fgd, pre-made the folder paths, and set up the settings as shown above for the model I want to convert, but Propper will straight-up crash when trying to compile it.

ydcxsx.png


I know I used to be able to compile with Propper before Steampipe, but can't figure out fixing it.

Any ideas?

I tried getting propper 2013 to work as well... You can see how it turned out here

https://tf2maps.net/threads/getting-propper-2013-to-work.30953/

 

worMatty

Repacking Evangelist
aa
Jul 22, 2014
1,257
999
Propper-2013 hasn't been compiled since changes were made to the engine. It hasn't worked for a while. It might be possible to get it working by compiling it with the current Source SDK 2013.
 

Nixon

L3: Member
Jan 10, 2017
114
75
I remember another program capable of doing this that still works, if I remember I'll be sure to post it here!