Our servers are now running a Steam Workshop rotation, if you'd like your map to be considered for inclusion on our rotation, post in the rotation discussion thread

Or, if you just want to play some of the best community maps the Workshop has to offer, you can join our servers by clicking these links:

[TUTORIAL] Using Propper With TF2

Discussion in 'Tutorials & Resources' started by English Mobster, Jan 26, 2012.

  1. English Mobster

    English Mobster L6: Sharp Member

    Positive Ratings:
    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:
    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:
    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:
    -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:
    Double-check to make sure Propper has been copied to the right folder and you didn't mistype anything.
    • Thanks Thanks x 7
    Last edited: Jan 26, 2012
  2. tyler

    aa tyler snail prince, master of a ruined tower

    Positive Ratings:
    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: Apr 22, 2012
  3. Forker

    Forker L1: Registered

    Positive Ratings:
    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.
  4. Afterglow375

    Afterglow375 L1: Registered

    Positive Ratings:
    This is a bit outdated with the steampipe update. Can someone link me an updated tutorial or update this please? Thanks.
  5. Pocket

    aa Pocket spaalone babuguuscooties

    Positive Ratings:
    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.
  6. Potada

    Potada L1: Registered

    Positive Ratings:
    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.
  7. worMatty

    aa worMatty Repacking Evangelist

    Positive Ratings:
    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:

    The better alternative for making props is learning to use a 3D Modelling application like Blender (free) or 3DS Max (not free).
    • Thanks Thanks x 3
    • Like Like x 1
    • Agree Agree x 1
  8. Asd417

    Asd417 L7: Fancy Member

    Positive Ratings:
    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: Nov 12, 2016
  9. Pocket

    aa Pocket spaalone babuguuscooties

    Positive Ratings:
    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.