GCFPrep 1.5.1 (GCF Launcher)


[ Respected ]

  • Downloads are at the bottom of this post

    Thanks to hCUPa for the use of SteamEmu.

    Thanks to REVOLUTiON for the use of revEmu.

    Thanks to ViTYAN for use and reference to ViTYAN's GameServers Universal Patch, which is available as a GCFPrep Plugin for SteamEmu.

    Thanks to PeJpepiG for all the hours of quality testing!


  • GCFPrep is a GCF preperation tool that enables you to easily make GCF content launchable.


  • icon_arrow.gif
    Prepares any GCF based content including games and tools, so that it can be launched via a simple shortcut using the contents own executable file.
    64bit source engine support for Half-Life 2 and Lostcoast via a modified x64 revEmu
    Allows for customisation of the games shortcut like installation location, additional arguments and alternative icons.
    Allows for multi emulator support, enabling you to choose which emulator runs which content.
    Includes a developer utility dll that can be used in your own projects to enable access to blob and steam cache file specific functions (see Readme Developer Guide.txt)
    Automatically configures correct GCF language files and also optional GCF files like the Half-Life high definition pack for emulators that do not automatically support supplementary file processing.
    Automatically fixes content to be launchable without steam, or an internet connection.
    Allows for fixes to be applied when preparing content. (fixed server browser files, known files that aren't always extracted correctly by other steam launchers)
    Allows for UGL/UCL style pack files. (you can add bot support to games that do not have native bot support, or add additonal language voice and text files to games that are not supported correctly by steam)
    Incorporates a flexible customisation system that allows for users to release content fixes or packs that you can easily use without disturbing your own configuration files, ensuring that GCFPrep will always be able to correctly prepare content, even in the future!
    Incorporates a localised GUI that allows for you to make your own language files for GCFPrep.
    Supports detection and correct setup of Half-Life based modifications.
    Supports detection and correct setup of Source based modifications.
    Includes a plugin to enable the use of GCFPrep within CF Toolbox.
    Can be used to fix broken minimum footprint files for any launcher.


  • Microsoft .NET framework 2.0 or greater.

    Microsoft Visual C++ 2008 Redistributable Package.

    Links are in the FAQ


  • Advanced information is available in the following ReadMe files about the use of each of their respective folders:

    • \Readme Changelog.txt
      \Readme Developer Guide.txt
      \CF Toolbox Plugin\CF Toolbox Plugin Readme.txt
      \Configuration\Configuration Readme.txt
      \Emulator\Emulator Files Readme.txt
      \Icon\Icon Files Readme.txt
      \Language\Language Readme.txt
      \Plugin\Plugin Readme.txt

Quick Start Guide:

  • GCFPrep's default emulator configuration is to support SteamEmu. You can configure other emulators for use with all content, or just selective content. The latest REVOLUTiON emulator is included in the GCF Package.

    See \Emulator\Emulator Files Readme.txt for more information on multi emulator support.

    GCFPrep GUI:

    • Start GCFPrep

      Click the Start button to analyse your GCF content. You will be prompted to browse for it if GCFPrep can't find any GCF files.

      Set any additional options like language settings. (see additional considerations below)

      Make sure your content path is correctly set to where you would like the content extracted.

      Tick the content you wish to process (you will only see content that has not been Suppressed in the \Configuration\Default Config.xml file, and that you have all the mandatory files for)

      Click Start!

    CF Toolbox plugin:

    • See \CF Toolbox Plugin\CF Toolbox Plugin Readme.txt for information

    Additional Considerations:

    • 1) Refreshing Minimum footprint files for use with a launcher

      • If you usually play your content from a launcher like SteamBuster Revolution, Universal Content Launcher, Tiny Launcher etc, you can still use GCFPrep to refresh the minimum footprint files if a GCF update has rendered the content unworkable with the launcher.

        To do this, use GCFPrep as normal (either stand alone or as a plugin) and make sure you untick the "Allow File Copies", "Allow Pack Copies" and "Allow Shortcuts" boxes to ensure that only the original files are copied into the minimum footprint folder

        Make sure that your Content Folder is set correctly to overwrite the existing launcher installation. If you do not want to do this, then you could create a new minimum footprint folder and use the GFPrep shortcut as detailed in 2) below, to check the content will work, before overwriting your launchers installation.

      2) Using GCFPrep to create a working shortcut to launch content.

      • You can use GCFPrep to create a fully working version of any GCF Content that includes language files, files required to start the game without a launcher, and a shortcut to launch the content.

        To do this, start GCFPrep as normal (either stand alone or as a plugin), and make sure you tick the "Allow File Copies" box.

        You can optionally tick the "Allow Pack Copies" box if you want GCFPrep to use any packs it finds for the selected content

        You must tick the "Allow Shortcuts" box to ensure that GCFPrep creates the shortcuts for you.

      3) GCFPrep can create shortcuts for your Half-Life and Source mods.

      • To process mod files ensure that the appropriate box is ticked when processing content.


        • If you tick a mod box, but don't select any other content to prepare, then GCFPrep will create mod shortcuts only. This is useful for refreshing your mod shortcuts after installing new mods.

          The "Allow Shortcuts" option has no effect when detecting mods, the shortcuts will always be created for discovered mods.

Frequently Asked Questions

  • I have a problem starting GCFprep: <<Insert Error here>>

    Why is some of my GCF content not visible in GCFPrep?

    • Obtain the latest clientregistry.blob file and put it in your \Emulator\Blob folder, GCFPrep should then be able to detect the content.

    How can I change the default emulator that is used for GCFPrep?

    • See \Emulator\Emulator Files Readme.txt for more information on multi emulator support.

    Does GCFPrep have any command line options?

    • You can create a shortcut to GCFPrep and add -autoprep to the command line. This will start GCFPrep and automatically process all the GCF content you have.

      You can also create a shortcut to GCFPrep and add -appid XXX to the command line where XXX is the Steam Application ID of the content to process. This will force GCFPrep to process only the selected AppID. You can also add the -autoprep switch to this to automatically process the specified content.

      If QuitAfterProcess is set to true in the GCFPrep.xml file for any of the above scenarios, then GCFPrep will also exit when the operations are completed.

    How can I customise command line arguments that GCFPrep assigns to the executable, for example I want to start the console in counter-strike source and day of defeat source?

    • Using the above as an example, you can create a new .xml file with the appropriate Argument definition as detailed below. See \Configuration\Configuration Readme.txt for further details.

      • <Argument>

      The shortcut for the target AppIDs will then contain the specified argument.

    New content is available on Steam, but the language files don't work correctly? (no voice in game / wrong language / wrong text)

    • Edit the \Configuration\Default Preloads.xml file to fix this problem when launching games with shortcuts created by GCFPrep. If you're using a launcher then you'll need to wait until it is updated, or use a GCFprep shortcut until that happens.

    Why does GCFPrep keep displaying content that is not valid (TestAppXXX etc)?

    • Add the contents AppID to the SuppressAppIDs section of the \Configuration\Default Config.xml file. You can see the AppIDs for all content in the list box when using the full GCFPrep GUI.

    New content is out, why doesn't it start correctly from a GCFPrep shortcut?

    • Try adding the contents AppID to the SuppressArguments section of the \Configuration\Default Config.xml file. Some content will only launch if no arguments are specified. Failing that, check the following:

    GCFPrep successfully prepared my content, but the shortcut is wrong and the content won't launch!

    • Try and find out what command line is returned as a launch option for the content (try asking at http://cs.rin.ru) Once you know it, you can add the executable file to the ExecutableFiles section of the \Configuration\Default Config.xml file. This usually only happens when a command line contains the name of the file, but not its extension. (e.g. hl2 instead of hl2.exe)

    Steam now supports more languages, can GCFPrep support them?

    • Yes! Add them to the SteamLanguage section of the \Configuration\Default Config.xml file. Note that the text you enter must match the text that is used in the GCF file name for that language file to be pre-loaded correctly.
      Don't forget to update your \Configuration\Default Preloads.xml file

    GCFPrep supports steam languages, why is its own interface in English only?

    • You can create your own GUI language files!

      Go into the \Language folder and make a copy of the GCFPrep_English.xml file.

      Rename it to your language (e.g. GCFPrep_French.xml)

      Change the strings inside the xml file to your own language except for any keywords that appear between percent symbols (%ContentName%, %AppCount%)

      Select the language from the advanced options screen, or change the GCFPrepLanguage section In the GCFPrep.xml file to reflect the new language file e.g:


      Don't forget to share your work!

    Steam has a new source engine (again!), how can I ensure engine extraction isn't messed up for content requesting multiple engines, as this breaks my content and renders it unpayable with all sorts of error messages?

    • Add the new engines GCF file name to the beginning of the SourceEngineFiles section of the \Configuration\Default Config.xml file. The string should start with the newest engine and end with the oldest in order for GCFPrep to extract multiple engines correctly.

    GCFPrep creates shortcuts for content in the same folder that the contents executable resides. How can I change this?

    • Change the ShortcutPath in the advanced options screen, or the ShortcutPath section of the GCFPrep.xml file. If this is left blank, shortcuts are created in the default location (the extracted content folder), but if it contains a full path like C:\Documents and Settings\All Users\Steam Games then all shortcuts will be created there.

    How can I customise icons for the shortcuts that GCFPrep creates?

    • Read \Icon\Icon Files Readme.txt for more information on how to do this correctly. Basically you just need to copy a .ico file into the \Icon folder with the name set to the Steam Application ID of the content you wish to use it for.

    GCFPrep creates shortcuts for all of my Half-Life 1 mods, but not for my Source mods, despite me ticking the "Detect Source Mods" box. why is that?

    • As Half-Life 1 mods reside in the Half-Life folder, GCFPrep knows where to find these, however you need to tell GCFPrep where to look for your Sourcemods.

      Change your SourceMod Path in the advanced options screen, or the SourceModPath section of the GCFPrep.xml file to enable this feature to work correctly.

      Note: GCFPrep will create a sourcemods shortcut based on the AppID that is specified in the mods gameinfo.txt file, you should therefore ensure that all available mod engines are extracted to ensure correct use; or manually change the shortcut if you need to force a specific engine.

    GCFPrep created a shortcut for a sourcemod, but it shows an error like can't find hl2.exe

    • As stated above, you need to ensure that your source engines are extracted properley. Some mods require that Source SDK Base is prepared, and some require Half-Life 2.

      If you do not have a mods required engine, then you can try changing the shortcut paths and AppID to the one you do have, though this won't always work.

    I've heard that I can add bots to a game / fix server browser files and do pretty much anything every time I prepare content within GCFPrep - how?

    • 1) If you need to update a lot of files for any particular content, then create a UGL/UCL pack zip file, copy it into the \Configuration\File folder and create a new .xml file with the appropriate Pack definition. Read \Configuration\Configuration Readme.txt for more information on how this file is structured.

      2) If you need to update a single file for any particular content, then copy it into the \Configuration\File folder and create a new .xml file with the appropriate File definition. Read \Configuration\Configuration Readme.txt for more information on how this file is structured.

      3) Remember to upload any fixes and packs that you make to content so that others can enjoy your work too!

    GCFPrep successfully prepared my content, but it doesn't work: <<Insert Error here>>

    • Do these in the following order:

      • 1) Ensure your support files are up to date and that you still have valid entries for them in the \Configuration\Default Support Files.xml file. The support files are: steamclient.dll, tier0_s.dll and vstdlib_s.dll. Note that some emulators contain a steamclient.dll as well as a steam.dll file, in these instances the emulators file is always used.

        2) Ensure you are running the latest version of your chosen Emulator. There may have been a recent release that fixes your problem. You could also try using a different emulator to see if the content then works. You can configure GCFPrep to use different emulators for different content.

        3) If problems persist after the above, and you are copying over a previously extracted minimum footprint folder, then rename the folder to something else and let GCFPrep create a fresh installation. You can then copy in save games etc from your old folder if it works again.

        4) The emulators probably need updating - wait patiently!

    I created a zip pack file for GCFPrep but it does not extract all the files correctly?

    • The zip functions within GCFPrep are fussy about valid files. If you create dummy files (to ensure an empty directory is unzipped etc.) then you must ensure they are not empty zero byte files, or this can halt the unpacking process.

    I installed a GCFPrep plugin correctly into the \Plugin folder, but it isn't doing anything?

    • A plugin pack should be installed so that the plugin configuration xml file is in the root of the \Plugin folder, with its relevant files in a sub folder.

      This enables the plugins use within GCFPrep, but you will still require a configuration file to carry out a specific action via the plugin on selected content. See the "ViTYAN GameServers Universal Patch Plugin 1.0.zip" file, and "Source 2007 Client Engine Fix.zip" file, both available as additional downloads, for an example on how to use the ViTYAN's VUP plugin to remove client side server protections.



  • GCFPrep_1_5_1.rar
    1.9 MB · Views: 1,383
Of course, seemed pretty good, and he did a great explanation of the program, how it works, and other information.
He always has the greatest tutorials for anything he tries to explain in detail. Very talented individual. He also has additions for this program.
I saw that, but I was going to upload them to our site directly.
The link is dead could somebody re upload? Thanks. I also have one question how can I use revEmu as default one. I tried to delete StteamEmu but then i get an error...
Hi guys, noob question: Can games prepared with this app be run without installation or admin rights? i.e. can you just copy them to a folder and run?

I'm running a games night at Uni, and the techs aren't willing to give us admin rights.