HomeRendersDownloadsHL2 ModdingLinksContactAbout



Home > HL2 Modding > Errors/Problems, Solutions

Errors, Problems and Solutions

Error/problem titles are sorted alphabetically.

Titles that are grey and in brackets are merely descriptions of errors/problems, rather than exact error messages that normally pop-up. Solutions should generally be followed in numerical order unless otherwise specified.

3D modelling applications
  • 3ds Max
      • bogus post normal (number)
            About:
            As I'm unsure what the exact causes are of this error, I unfortunately don't have an efficient solution at this time.

            Solution #1:
            Export your model into .obj format. Then open that .obj file, and export your model into .smd format from there. Note that this solution will not work on ragdolls as .obj does not support joints/bones - though feel free to experiment with alternate formats.


            Example of Error/Problem:
      • (The textures in the viewport look really low resolution!)
            About:

            Solution #1:
            On the top menubar, click the following: "Customize > Preferences > Viewports tab > Choose Driver...", ensure that the driver being used is Direct3D and running DirectX 9.0 (or higher, if possible). Click "OK", and then "OK" again to the window that pops up. Once you've done that, click on "Configure Driver...". Under its "Appearance Preferences" section, make sure; "Enabled Antialiased Lines in Wireframe Views" is ticked, "1024" is selected and "Match Bitmap Size as Closely as Possible" is ticked. Under the "Download Texture Size" section, ensure that; "512" is selected and "Match Bitmap Size as Closely as Possible" is ticked.

            Example of Error/Problem:
      • (The Move/Rotate/Scale tool indicators/cursors grey out and cannot be used!)
            About:

            Solution #1:
            Click the 'X' hotkey.

            Example of Error/Problem:
  • Maya
        Make sure you have saved your scene before you export as SMD. If you don't, your SMD could be messed up or Maya could crash when exporting.

      • Export cancelled by user.
            About:
            This seems to occur when you are using part of an imported model. (doing a model-hack) I don't have any real solution for this at this time.

            Solution #1:
            Export your model as .obj, import it into another modelling application, then export it from that program as an SMD. (then import it back into Maya if you wish to edit it further)


            Example of Error/Problem:
      • (All full-stops placed in joint names are renamed to underscores- and Valve's ... )All full-stops placed in joint names are renamed to underscores- and Valve's skeletons use full-stops!
            About:
            This is because Maya doesn't seem to support full stops at this time. (versions 8+ are untested)

            Solution #1:
            Export the model as you normally would. Open the SMD up with a text editorNotepad, Wordpad, Microsoft Word, OpenOffice Writer, etc.. At the top, you should see something like this:
          • version 1
            nodes
              0 "ValveBiped_Bip01_Pelvis"  -1
              1 "ValveBiped_Bip01_L_Thigh"   0
              2 "ValveBiped_Bip01_L_Calf"   1
              3 "ValveBiped_Bip01_L_Foot"   2
              4 "ValveBiped_Bip01_L_Toe0"   3
              5 "ValveBiped_Bip01_R_Thigh"   0
              6 "ValveBiped_Bip01_R_Calf"   5
              7 "ValveBiped_Bip01_R_Foot"   6
              8 "ValveBiped_Bip01_R_Toe0"   7
              9 "ValveBiped_Bip01_Spine"   0
             10 "ValveBiped_Bip01_Spine1"   9
             11 "ValveBiped_Bip01_Spine2"  10
             12 "ValveBiped_Bip01_Spine4"  11
             13 "ValveBiped_Bip01_Neck1"  12
             14 "ValveBiped_Bip01_Head1"  13
             15 "ValveBiped_forward"  14
             16 "ValveBiped_Bip01_L_Clavicle"  12
             17 "ValveBiped_Bip01_L_UpperArm"  16
             18 "ValveBiped_Bip01_L_Forearm"  17
             19 "ValveBiped_Bip01_L_Hand"  18
             20 "ValveBiped_Bip01_L_Finger2"  19
             21 "ValveBiped_Bip01_L_Finger21"  20
             22 "ValveBiped_Bip01_L_Finger22"  21
             23 "ValveBiped_Bip01_L_Finger1"  19
             24 "ValveBiped_Bip01_L_Finger11"  23
             25 "ValveBiped_Bip01_L_Finger12"  24
             26 "ValveBiped_Bip01_L_Finger0"  19
             27 "ValveBiped_Bip01_L_Finger01"  26
             28 "ValveBiped_Bip01_L_Finger02"  27
             29 "ValveBiped_Bip01_L_Wrist"  18
             30 "ValveBiped_Bip01_L_Ulna"  18
             31 "ValveBiped_Bip01_R_Clavicle"  12
             32 "ValveBiped_Bip01_R_UpperArm"  31
             33 "ValveBiped_Bip01_R_Forearm"  32
             34 "ValveBiped_Bip01_R_Hand"  33
             35 "ValveBiped_Bip01_R_Finger2"  34
             36 "ValveBiped_Bip01_R_Finger21"  35
             37 "ValveBiped_Bip01_R_Finger22"  36
             38 "ValveBiped_Bip01_R_Finger1"  34
             39 "ValveBiped_Bip01_R_Finger11"  38
             40 "ValveBiped_Bip01_R_Finger12"  39
             41 "ValveBiped_Bip01_R_Finger0"  34
             42 "ValveBiped_Bip01_R_Finger01"  41
             43 "ValveBiped_Bip01_R_Finger02"  42
             44 "ValveBiped_Bip01_R_Wrist"  33
             45 "ValveBiped_Bip01_R_Ulna"  33
             46 "ValveBiped_weapon_bone"   9
             47 "ValveBiped_weapon_bone_RHand"  46
             48 "ValveBiped_weapon_bone_LHand"  47
             49 "ValveBiped_weapon_bone_Clip"  48
            end
            skeleton

          • inbetween 'nodes' and 'end' is the list of joints inside this SMD. Here we can replace the underscores with full-stops. Like so:
          • version 1
            nodes
              0 "ValveBiped.Bip01_Pelvis"  -1
              1 "ValveBiped.Bip01_L_Thigh"   0
              2 "ValveBiped.Bip01_L_Calf"   1
              3 "ValveBiped.Bip01_L_Foot"   2
              4 "ValveBiped.Bip01_L_Toe0"   3
              5 "ValveBiped.Bip01_R_Thigh"   0
              6 "ValveBiped.Bip01_R_Calf"   5
              7 "ValveBiped.Bip01_R_Foot"   6
              8 "ValveBiped.Bip01_R_Toe0"   7
              9 "ValveBiped.Bip01_Spine"   0
             10 "ValveBiped.Bip01_Spine1"   9
             11 "ValveBiped.Bip01_Spine2"  10
             12 "ValveBiped.Bip01_Spine4"  11
             13 "ValveBiped.Bip01_Neck1"  12
             14 "ValveBiped.Bip01_Head1"  13
             15 "ValveBiped.forward"  14
             16 "ValveBiped.Bip01_L_Clavicle"  12
             17 "ValveBiped.Bip01_L_UpperArm"  16
             18 "ValveBiped.Bip01_L_Forearm"  17
             19 "ValveBiped.Bip01_L_Hand"  18
             20 "ValveBiped.Bip01_L_Finger2"  19
             21 "ValveBiped.Bip01_L_Finger21"  20
             22 "ValveBiped.Bip01_L_Finger22"  21
             23 "ValveBiped.Bip01_L_Finger1"  19
             24 "ValveBiped.Bip01_L_Finger11"  23
             25 "ValveBiped.Bip01_L_Finger12"  24
             26 "ValveBiped.Bip01_L_Finger0"  19
             27 "ValveBiped.Bip01_L_Finger01"  26
             28 "ValveBiped.Bip01_L_Finger02"  27
             29 "ValveBiped.Bip01_L_Wrist"  18
             30 "ValveBiped.Bip01_L_Ulna"  18
             31 "ValveBiped.Bip01_R_Clavicle"  12
             32 "ValveBiped.Bip01_R_UpperArm"  31
             33 "ValveBiped.Bip01_R_Forearm"  32
             34 "ValveBiped.Bip01_R_Hand"  33
             35 "ValveBiped.Bip01_R_Finger2"  34
             36 "ValveBiped.Bip01_R_Finger21"  35
             37 "ValveBiped.Bip01_R_Finger22"  36
             38 "ValveBiped.Bip01_R_Finger1"  34
             39 "ValveBiped.Bip01_R_Finger11"  38
             40 "ValveBiped.Bip01_R_Finger12"  39
             41 "ValveBiped.Bip01_R_Finger0"  34
             42 "ValveBiped.Bip01_R_Finger01"  41
             43 "ValveBiped.Bip01_R_Finger02"  42
             44 "ValveBiped.Bip01_R_Wrist"  33
             45 "ValveBiped.Bip01_R_Ulna"  33
             46 "ValveBiped.weapon_bone"   9
             47 "ValveBiped.weapon_bone_RHand"  46
             48 "ValveBiped.weapon_bone_LHand"  47
             49 "ValveBiped.weapon_bone_Clip"  48
            end
            skeleton
      • (Right-click (RMB) isn't responding inside Maya)
            About:
            Unsure of the exact causes, but this is my theory; programs when being used tend to override RMB control and then relinquish control of it when minimized/closed etc. Somehow Maya doesn't think these programs have given up its control and therefore refuses to let it work in Maya.

            Solution #1:
            Not exactly a solution, but restarting your computer and then reloading Maya tends to fix any issues. (unless the problematic program in question loads before Maya)

            Example of Error/Problem:
  • XSI
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • Cinema 4D
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • Wings3D
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • Blender 3D
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • XSI Mod Tool
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • Milkshape 3D
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • GMax
      • ---
            About:

            Solution #1:

            Example of Error/Problem:

  • 2D texturing/skinning applications
  • Adobe Photoshop
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • Corel Paint Shop Pro
      • ---
            About:

            Solution #1:

            Example of Error/Problem:
  • The GIMP
  • Paint.net
      • ---
            About:

            Solution #1:

            Example of Error/Problem:

  • Model (de)compiling applications
  • StudioCompiler
      • Can't find steam app user info.
            About:

            Solution #1:
            Locate 'SteamAppData.vdf' in this directory: "...\Steam\config\", copy it, and then paste it here: "..\sourcesdk\bin\config\".


            Example of Error/Problem:
      • Can't load '...\sourcesdk\bin\filesystem_steam.dll.
            About:

            Solution #1:
            Check to see if your Source SDK is in the middle of updating. If it is, wait until it has finished and then run SourceSDK and try again.

            Solution #2:
            Run the Source SDK. Open "Steam > Tools > Source SDK".

            Solution #3:
            Refresh your SDK Content. Open "Steam > Tools > Source SDK > Refresh SDK Content".


            Example of Error/Problem:
      • Can't load '...\sourcesdk\bin\ep1\bin\filesystem_steam.dll.
            About:

            Solution #1:
            Check to see if your Source SDK is in the middle of updating. If it is, wait until it has finished and then run SourceSDK and try again.

            Solution #2:
            Run the Source SDK. Open "Steam > Tools > Source SDK".

            Solution #3:
            Refresh your SDK Content. Open "Steam > Tools > Source SDK > Refresh SDK Content".


            Example of Error/Problem:
      • Can't load '...\sourcesdk\bin\orangebox\bin\filesystem_steam.dll.
            About:

            Solution #1:
            Check to see if your Source SDK is in the middle of updating. If it is, wait until it has finished and then run SourceSDK and try again.

            Solution #2:
            Run the Source SDK. Open "Steam > Tools > Source SDK".

            Solution #3:
            Refresh your SDK Content. Open "Steam > Tools > Source SDK > Refresh SDK Content".


            Example of Error/Problem:
      • Can't Load MaterialSystem.dll
            About:

            Solution #1:
            Load up the main 'SourceSDK' screen ("open Steam > Tools > SourceSDK"), then try compiling again.

            Solution #2:
            This was caused by a recent update by Valve so it may well be fixed soon. But for now you'll have to have Hammer/HLMV (Half-Life Model Viewer) open in the background while compiling.


            Example of Error/Problem:
      • Created command line: "C:\Program Files\Valve\Steam\SteamApps\ ...Error: Created command line: "C:\Program Files\Valve\Steam\SteamApps\(steam-acount-name)\sourcesdk\bin\studiomdl.exe" -game
      • ERROR: bad command (command name)
            About:
            As the error suggests, there is a command used in your .qc which the compiler does not recognise. This is generally caused by typos, but as StudioCompiler does not support post-HL2:EP2 commands, ensure your .qc isn't using any. If it is, and you want to use them, try compiling with StudioMDL or GUI StudioMDL instead.

            Solution #1:
            In your compiling log, look at the name of the command that it said was "bad". View and cross-reference it with my list of known .qc commands here. Be sure to look out for typos and the like. If you can't see your command at all, it may have been discontinued, or perhaps it was even an old Half-Life 1 command (which is completely different to HL2 compiling). Either look through the commands' descriptions (viewing the examples may also help) to find something similar, or get in contact with me for suggestions and/or advice.

            Solution #2:
            Sometimes it's not a case of a command not existing, but rather that it has been used in the wrong context. For example, using $model inbetween the $collisionmodel command's curly brackets will result in the same "bad command" error - even though it is a perfectly valid command elsewhere.


            Example of Error/Problem:
      • ERROR: bad command {
            About:

            Solution #1:
            You've recently ran hammer in a game setting other than HL2. Simply change it back to HL2 or reset game configurations.

            Solution #2:
            You either have one too many curly brackets ({) in your QC file or you've missed a closing bracket (}). Insert or delete them accordingly. (For every opening bracket, there should be a closing bracket.)


            Example of Error/Problem:
      • ERROR: bogus bone index (number) (faulty SMD's path) (position of faulty joint)
            About:
            As the error suggests, there is a faulty joint/bone in your SMD. The only only cause of this I've found so far, is that you have a joint with literally no name, no spaces, no characters etc.

            Solution #1:
            Import your SMD into your 3d modelling application, locate any joints that have no name (most modelling applications have a listing of all joints in the 'scene' - use it, if you have one), delete them, then re-export your SMD.

            Solution #2:
            The above method doesn't always work, and as such, you may need to edit the SMD joint names manually. Open up your SMDs with notepad/wordpad, look at the first few lines of the SMD. You will see something like this:
          • version 1
            nodes
              0 ""  -1
              1 "Screen"  -1
            end
          • Inbetween 'nodes' and 'end' is the list of joints. 0 & 1 merely represent the number of that joint/bone (so they can be called upon below, without resulting in probable large file sizes), and the characters inbetween the quotation marks ("") are the name of the joint/bone. As you can see, one of the joints has no name, this is causing our error. Set the joint name to whatever you wish. I will set it to test, now I have something like this:
          • version 1
            nodes
              0 "test"  -1
              1 "Screen"  -1
            end
          • Save the SMD, and try compiling again. If the problem persists, make sure you edit all SMDs that have an 'unnamed' joint/bone.


            Example of Error/Problem:
      • ERROR: could not load file '(path)/(object name).obj'
            About:
            Not too sure why it says it can't find a .obj, so ignore that. It's actually telling you it cannot find an SMD you have specified in the QC file. This is usually due to not using the $cd command at all, or not at the very top of the QC.

            Solution #1:
            At the very top of your .QC file, type: $cd "(path-name)" -- where path-name is the directory/path of your SMDs. If your SMDs are scattered among a few folders, see $popd and $pushd.

            Solution #2:
            QC files don't like it if you refer to an .smd file without the .smd extension. For example, $sequence idle "human" should be: $sequence idle "human.smd".

            Solution #3:
            As your QC file cannot find an SMD you have told it to use, check for typos in the QC file or your SMD filenames.


            Example of Error/Problem:
      • ERROR: could not load file '(path)/(object name).smd'
            About:
            As it says, it cannot find an .SMD you have specified in the QC file. This is usually due to not using the $cd command at all, or not at the very top of the QC.

            Solution #1:
            See "ERROR: could not load file ... .obj"


            Example of Error/Problem:
      • ERROR: Error opening c:\program Files\Steam\steamapps\(steam-account-name)\ ...ERROR: Error opening c:\program Files\Steam\steamapps\(steam-account-name)\sourcesdk
            About:

            Solution #1:
            Make sure you have defined the QC file you wish to compile from. The QC box and browse button are located just above the 'Compile' button.


            Example of Error/Problem:
      • ERROR: model has no sequences.
            About:
            As the error implies, the QC file has no sequences specified, even though it should at least have one.

            Solution #1:
            Sequences are declared via the $sequence command. Every model should at least have 1 sequence- an idle sequence. Most people just use the reference .SMD for this.

            Solution #2:
            If solution #1 didn't work, then I don't have any real solutions at this time. I just know that the error can be caused by the '$texturegroup skinfamilies' QC command. (it's used to have multiple skins on one model) I can only suggest moving it around a bit in your QC file.


            Example of Error/Problem:
      • ERROR: Short Conversion out of range (number) ...ERROR: Short Conversion out of range (number)

        ERROR: Aborted processing on model (SMD-name).mdl
            About:

            Solution #1:

            Example of Error/Problem:
      • ERROR: too many bones/vert (number) : MAX_NUM_BONES_PER_VERT needs to be upped
            About:
            Rather an odd error this one. While it seems to be suggesting that there is too many bones influencing one vertice, the solution is nothing to do with anything like that. It actually seems to occur when the compiler can't find the SMD(s) specified in your .QC.

            Solution #1:
            At the very top of your .QC file, type: $cd "(path-name)" -- where path-name is the directory/path of your SMDs. If your SMDs are scattered among a few folders, see $popd and $pushd.

            Solution #2:
            As your QC file cannot find an SMD you have told it to use. Check for typos in the QC file or your SMD filenames.


            Example of Error/Problem:
      • ERROR: too many indices in source: "(path-name)/(smd-name).smd"
            About:
            Just as the error suggests, the specified .smd has too many indices (vertices?) and cannot be compiled. I seem to recall there being a 'limit' of 32k vertices - so try using the solution accordingly.

            Solution #1:
            Hardly a solution as such, but the most common cause is using Meshsmooth (3ds max), Smooth (Maya) and/or other similar tools. These smooth your model's geometry, causing them to be 4x the amount of polygons they would of been, for each iteration used. (1 = 4x, 2 = 8x, 3 = 12x etc.) So my best advice would be to remove these if you've used it at all, and then re-export your SMD and try to compile again.


            Example of Error/Problem:
      • ERROR: unknown model option "$(command-name)"
            About:
            This tends to occur because the specified command has been used out of the context it was intended for. I.e. using $cdmaterials inside the $model/$collisionmodel brackets.

            Solution #1:
            Most commonly caused by forgetting to close a command (}), therefore making the QC file think all of the commands following are 'inside' that command. So make sure for every opening curly bracket ({) there is a closing curly bracket (}).


            Example of Error/Problem:
      • Error opening (output directory of compiled model)/(model name.mdl)! (Check for write enable)
            About:
            This error just means that the output directory you're trying to compile to doesn't exist.

            Solution #1:
            Make sure you've created all of the folders the error mentions. For example, if the error looked like this: "Error opening c:\program files\steam\steamapps\(steam-account-name)\half-life 2 episode two\ep2\models/pikachu/waffle.mdl! (Check for write enable)", make sure you've created a folder called "pikachu" inside ep2's "models" folder.


            Example of Error/Problem:
      • Extra App ID set to 211, but no SteamId.
      • Line (number) is incomplete
            About:
            Quite self explanatory this one. The command on line (number) is incomplete.

            Solution #1:
            Goto the line-number it says is complete and finish off the command. This is usually in cases where the 'command' has two parts to it, such as just typing out '$texturegroup' when it should be '$texturegroup skinfamilies'.


            Example of Error/Problem:
      • Model has 0 faces. (this error will not pop up, but will appear in your compiling log)
            About:

            Solution #1:
            You exported your SMD as skeletal/skeleton/animation (skeletal only saves bones and animations) rather than reference, re-export it as reference. (this will export the mesh itself and any materials too)

            Solution #2:
            If you're using Maya with the 3rd party SMD exporter, you must click the 'Full Compile' button, even if you have the compiling-related options unchecked. You must also make sure you have added the entire mesh to a layer named 'reference' or 'physics', depending on what the SMD will be for.


            Example of Error/Problem:
      • MountAppFilesystem() failed: SteamMountAppFilesystem(215,4294967295,0x12b8fd74) ...MountAppFilesystem() failed: SteamMountAppFilesystem(215,4294967295,0x12b8fd74) failed with error 106: Failed to resize the cache file
            About:

            Solution #1:
            Not too sure on this one, but I would suggest you load up the main Source SDK title screen (open Steam > Tools > Source SDK) and then try again.


            Example of Error/Problem:
      • MountAppFilesystem() failed: SteamMountAppFilesystem(220,4294967295,0x1361fd74) ...MountAppFilesystem() failed: SteamMountAppFilesystem(220,4294967295,0x1361fd74) failed with error 201: Cannot perform this operation while offline
            About:
            Unfortunately, as the error implies, StudioCompiler cannot run if Steam hasn't been connected to the internet at least once (without a PC reboot) before going into offline mode. So either connect to the internet for a while, then disconnect the internet again. Or depending on what you wish to do with it, try the following solution.

            Solution #1:
            If you only need to use the MDLdecompiler/VTF-export tabs/parts of StudioCompiler, then right-click your StudioCompiler shortcut, click 'Properties', then in the 'Target:' box, add "-nosteam" onto the end of it. (minus quotation marks) Then click 'OK' and run your shortcut.


            Example of Error/Problem:
      • SteamStartup() failed: SteamStartup(0xf,0x0012D3C4) failed with error 108: The ...SteamStartup() failed: SteamStartup(0xf,0x0012D3C4) failed with error 108: The local Steam Service is not running

        Use -nosteam option to use StudioCompiler without steam
            About:

            Solution #1:
            The error itself is pretty self explanatory. You just need to make sure Steam is running.


            Example of Error/Problem:
      • The procedure entry point Q_vsnprintf could not be located in the dynamic link ...The procedure entry point Q_vsnprintf could not be located in the dynamic link library vstdlib.dll.
      • This application has failed to start because tier0.dll was not found. Re-installing ...This application has failed to start because tier0.dll was not found. Re-installing the application may fix this problem.
            About:

            Solution #1:
            Load up the main 'SourceSDK' screen ("open Steam > Tools > SourceSDK"), then try compiling again.

            Solution #2:
            This was caused by a recent update by Valve so it may well be fixed soon. But for now you'll have to have Hammer/HLMV (Half-Life Model Viewer) open in the background before you open the program and while compiling.


            Example of Error/Problem:
      • This application has failed to start because vstdlib.dll was not found. Re-installing ...This application has failed to start because vstdlib.dll was not found. Re-installing the application may fix the problem.
      • Unable to find gameinfo.txt. ...Unable to find gameinfo.txt. Solutions:

        1. Read http://www.valve-erc.com/srcsdk/faq.html#NoGameDir
        2. Run vconfig to specify which game you're working on.
        3. Add -game <path> on the command line where <path> is the directory that gameinfo.txt is in.
      • WARNING: App Framework : Unable to load module p4lib.dll!
            About:
            Not entirely sure on this, but I believe this is only a warning and isn't of much importance. However, if it is preventing your compile from finishing then see the solution.

            Solution #1:
            I believe the "solution" is to compile with "-nop4" in the command line's options - sadly something I don't think StudioCompiler is capable of, so see GUI StudioMDL.


            Example of Error/Problem:
      • Warning, (smd-name).smd has no faces. Is your model textured ?
            About:

            Solution #1:
            Just as it suggests, the model needs to have a texture for it to compile correctly. This doesn't have to be done correctly (no manual UVmapping/texturing), the model can use its default UVs and a blank white texture. So just make sure you apply a texture to your model before you export it.


            Example of Error/Problem:
      • (Random crashes when compiling)
            About:

            Solution #1:
            Open Half-Life Model Viewer ("open Steam > Tools > Source SDK > Half-Life Model Viewer") and leave it open while you compile your model.

            Solution #2:
            Go to this directory: "C:\Program Files\Valve\Steam\SteamApps\(steam-account-name)\half-life 2\hl2\" and then open the file named 'Gameinfo.txt'. Inside you will see the word 'SteamAppid' followed by a number. (usually 220) Change this number to 215, then save the txt document and recompile. Please note that this number reverts to 220 whenever you play Half-Life 2, or a HL2 modification.

            Solution #3:
            If the previous solutions didn't work, then it could be caused by you using a different game as your 'Current GameThis is basically the 'default' game set for compiling. I.e. all compiled models and things will goto this game's directory automatically.' ("open Steam > Tools > Source SDK > Current Game"). So if you are using a game other than Half-Life 2, then you'll either have to set it back to Half-Life 2 (recommended as this is what all my tutorials assume you are using), or change the 'GameInfo.txt' in the directory of the 'Current Game' you're using. To sum it up, goto the directory of whichever game you're using for the 'Current Game', then edit the 'GameInfo.txt' as usual.

            Solution #4:
            If you've had no success up to this solution, then it's probably caused by a faulty export or a bad mesh. Try re-exporting your SMDs, if the problem persists import your SMD into your 3d modelling application, check for any notable problems (strange-looking meshes, random joints etc. fix/delete where possible), and then re-export it back to .SMD.


            Example of Error/Problem:
      • (StudioCompiler freezes once the 'reference' SMD line appears.)
            About:
            This error seems to occur when using a rather high-poly physics/collision model.

            Solution #1:
            Try toggling on the "FullCollide" compiling option. To do this, make sure you're on the "Model Compile" tab of StudioCompiler, click "StudioMdl Options" and then toggle "FullCollide" on. Try recompiling once activated, if the problem persists try the following solution.

            Solution #2:
            Merely create yourself a custom collision model with a low polygon count, then it should work. Collision models generally seem to be fine around the 2,000~ polys mark, however I've managed to successfully compile one with 14k polys, so perhaps something else affects it.


            Example of Error/Problem:
      • (StudioCompiler spams the names of all of the joints in the model and then says ... )StudioCompiler spams the names of all of the joints in the model and then says "StudioMDL Thread complete". But it doesn't compile anything.
            About:
            This isn't actually an error. This is a debugging option that can be toggled on or off.

            Solution #1:
            Load up StudioCompiler and make sure you're on the "Model Compile" tab, then click "StudioMdl Options". Now untick "Define Bones".


            Example of Error/Problem:
  • GUI StudioMDL
        Can't find the error you're looking for? Try the StudioCompiler section.

      • Created command line: "C:\Program Files\Valve\Steam\SteamApps\ ...Error: Created command line: "C:\Program Files\Valve\Steam\SteamApps\(steam-acount-name)\sourcesdk\bin\ep1\bin\studiomdl.exe" -game
      • ERROR: bad command (command name)
            About:
            As the error suggests, there is a command used in your .qc which the compiler does not recognise. This is generally caused by typos, but could also be by GUI StudioMDL not supporting the ability to compile post-HL2:EP2 commands (if it does support them, let me know via the contact page, cheers), in which case use StudioMDL instead.

            Solution #1:
            In your compiling log, look at the name of the command that it said was "bad". View and cross-reference it with my list of known .qc commands here. Be sure to look out for typos and the like. If you can't see your command at all, it may have been discontinued, or perhaps it was even an old Half-Life 1 command (which is completely different to HL2 compiling). Either look through the commands' descriptions (viewing the examples may also help) to find something similar, or get in contact with me for suggestions and/or advice.

            Solution #2:
            Sometimes it's not a case of a command not existing, but rather that it has been used in the wrong context. For example, using $model inbetween the $collisionmodel command's curly brackets will result in the same "bad command" error - even though it is a perfectly valid command elsewhere.


            Example of Error/Problem:
      • ERROR: bad command {
            About:

            Solution #1:
            You've recently run Hammer in a game setting other than HL2. Simply change it back to HL2 or reset game configurations.

            Solution #2:
            You either have one too many curly brackets ({) in your QC file or you've missed a closing bracket (}). Insert or delete them accordingly. (For every opening bracket, there should be a closing bracket.)


            Example of Error/Problem:
      • ERROR: could not load file '(path)/(object name).obj'
            About:
            Not too sure why it says it can't find a .obj, so ignore that. It's actually telling you it cannot find an SMD you have specified in the QC file. This is usually due to not using the $cd command at all, or not at the very top of the QC.

            Solution #1:
            At the very top of your .QC file, type: $cd "(path-name)" -- where path-name is the directory/path of your SMDs. If your SMDs are scattered among a few folders, see $popd and $pushd.

            Solution #2:
            QC files don't like it if you refer to an .smd file without the .smd extension. For example, $sequence idle "human" should be: $sequence idle "human.smd".

            Solution #3:
            As your QC file cannot find an SMD you have told it to use, check for typos in the QC file or your SMD filenames.


            Example of Error/Problem:
      • ERROR: could not load file '(path)/(object name).smd'
            About:
            As it says, it cannot find an .SMD you have specified in the QC file. This is usually due to not using the $cd command at all, or not at the very top of the QC.

            Solution #1:
            See "ERROR: could not load file ... .obj"


            Example of Error/Problem:
      • ERROR: 'EXCEPTION_ACCESS_VIOLATION' (assert: 1)
            About:

            Solution #1:
            Open Half-Life Model Viewer ("Steam > Tools > Source SDK > Half-Life Model Viewer") and leave it open while you compile your model.

            Solution #2:
            Since the Orange Box related Source SDK update, it has been necessary to add a new parameter to its launch options for it to work. To add this parameter, do the following: "open Steam > Tools > Right-click Source SDK > Properties > General > Set launch options...". Now just add in "-engine ep1" (minus quotation marks) and click "OK".

            Solution #3:
            The general cause of this is because the Source SDK has just messed up. Try refreshing your Source SDK content ("Steam > Tools > Source SDK > Refresh SDK Content"). If you still have no luck, try having HLMVHalf-Life Model Viewer, located in the Source SDK open while compiling ("Steam > Tools > Source SDK > Half-Life Model Viewer"). If you can't open HLMV because it keeps crashing, close down Source SDK entirely and then open HLMV before you try another compile attempt.

            Solution #4:
            Go to this directory: "C:\Program Files\Valve\Steam\SteamApps\(steam-account-name)\half-life 2\hl2\" and then open the file named 'Gameinfo.txt'. Inside you will see the word 'SteamAppid' followed by a number. (usually 220) Change this number to 215, then save the txt document and recompile. Please note that this number reverts to 220 whenever you play Half-Life 2, or a HL2 modification.

            Solution #5:
            If the previous solutions didn't work, then it could be caused by you using a different game as your 'Current GameThis is basically the 'default' game set for compiling. I.e. all compiled models and things will goto this game's directory automatically.'. (open Steam > Tools > Source SDK > Current Game) So if you are using a game other than Half-Life 2, then you'll either have to set it back to Half-Life 2 (recommended as this is what all my tutorials assume you are using), or change the 'GameInfo.txt' in the directory of the 'Current Game' you're using. To sum it up, goto the directory of whichever game you're using for the 'Current Game', then edit the 'GameInfo.txt' as usual.

            Solution #6:
            If you've had no success up to this solution, then it's probably caused by a faulty export or a bad mesh. Try re-exporting your SMDs, if the problem persists import your SMD into your 3d modelling application, check for any notable problems (strange-looking meshes, random joints etc. fix/delete where possible), and then re-export it back to .SMD.


            Example of Error/Problem:
      • Unable to find gameinfo.txt. ...Unable to find gameinfo.txt. Solutions:

        1. Read http://www.valve-erc.com/srcsdk/faq.html#NoGameDir
        2. Run vconfig to specify which game you're working on.
        3. Add -game <path> on the command line where <path> is the directory that gameinfo.txt is in.
      • (Random crashes when compiling)
            About:

            Solution #1:
            Open Half-Life Model Viewer ("Steam > Tools > Source SDK > Half-Life Model Viewer") and leave it open while you compile your model.

            Solution #2:
            Since the Orange Box related Source SDK update, it has been necessary to add a new parameter to its launch options for it to work. To add this parameter, do the following: "open Steam > Tools > Right-click Source SDK > Properties > General > Set launch options...". Now just add in "-engine ep1" (minus quotation marks) and click "OK".

            Solution #3:
            The general cause of this is because the Source SDK has just messed up. Try refreshing your Source SDK content ("Steam > Tools > Source SDK > Refresh SDK Content"). If you still have no luck, try having HLMVHalf-Life Model Viewer, located in the Source SDK open while compiling ("Steam > Tools > Source SDK > Half-Life Model Viewer"). If you can't open HLMV because it keeps crashing, close down Source SDK entirely and then open HLMV before you try another compile attempt.

            Solution #4:
            Go to this directory: "C:\Program Files\Valve\Steam\SteamApps\(steam-account-name)\half-life 2\hl2\" and then open the file named 'Gameinfo.txt'. Inside you will see the word 'SteamAppid' followed by a number. (usually 220) Change this number to 215, then save the txt document and recompile. Please note that this number reverts to 220 whenever you play Half-Life 2, or a HL2 modification.

            Solution #5:
            If the previous solutions didn't work, then it could be caused by you using a different game as your 'Current GameThis is basically the 'default' game set for compiling. I.e. all compiled models and things will goto this game's directory automatically.'. (open Steam > Tools > Source SDK > Current Game) So if you are using a game other than Half-Life 2, then you'll either have to set it back to Half-Life 2 (recommended as this is what all my tutorials assume you are using), or change the 'GameInfo.txt' in the directory of the 'Current Game' you're using. To sum it up, goto the directory of whichever game you're using for the 'Current Game', then edit the 'GameInfo.txt' as usual.

            Solution #6:
            If you've had no success up to this solution, then it's probably caused by a faulty export or a bad mesh. Try re-exporting your SMDs, if the problem persists import your SMD into your 3d modelling application, check for any notable problems (strange-looking meshes, random joints etc. fix/delete where possible), and then re-export it back to .SMD.


            Example of Error/Problem:
  • StudioMDL
        StudioMDL features the same errors/problems as GUI StudioMDL, so look there for solutions.

  • MDLdecompiler

  • Material (de)compiling applications
  • VTFedit
  • VTFtool

  • Other
  • GCFscape
  • Half-Life Model Viewer (HLMV)

  • In-game/post-compiling issues
  • Model-related
  • Material-related