Welcome, Guest! Login | Register

Installing Your Mod on Steam [Print this Article]
Posted by: myristate
Date posted: Apr 12 2004
User Rating: 4 out of 5.0
Number of views: 7470
Number of comments: 2
Description: Have you tried to install your mod on steam and you just can't do it well i aim to give a little insight into this prolem.
I have been trying to install my mod on steam for a day or two and it has been a bothersome affair, but I have finally got it working. In the process I have asked many people how to do it and they all said they didn’t know but would like to see how, so I decided now that I have mine working I would share the knowledge of my experience.

Ok, firstly you need to have Steam installed and have the latest update for Half-Life. Once you have this you need to run Half-Life in Single-player mode and have run it at least once. This creates the appropriate folders by default.

Next (Assuming you have Steam installed in “C:\Program Files\Steam\”). Go to this folder “C:\Program Files\Steam\SteamApps\STEAM_USER_ID\half-life”.
If you follow the path and you have no Half-Life directory you have not run Half-Life in Single-player mode and will need to do so to continue. The Half-Life directory is where we are going to setup our modification, I will use the name “TestMod” as our example. You should setup your own mod folder in the Half-Life directory that reflects the name of your modification. For example, “tmod” or “testmod” would be what I’d use for this example.

After you have done that, your path should look like this folder “C:\Program Files\Steam\SteamApps\STEAM_USER_ID\half-life\testmod”. Once you have that done, we will add the necessary files to run your mod.

First create a file called liblist.gam this file holds the launcher settings needed for Half-Life to determine your modifications settings. This is a text file so you can create it in Notepad or Wordpad and just change the extension from “.txt” to “.gam”.
Within this file holds your modification settings. I will briefly go over them, but if you have setup your mod on original Half-Life, and not steam you should know about this file, it uses the same entries as before but on steam you need far less of these variables infact only 4 or 5 depending if you have a linux build. Anyway here is a list of other lines you can add into the liblist.gam:

 CODE  

game: The name of the mod

svonly: "1" if the mod is a server only mod ( no client side content or code ), "0" otherwise

cldll: 1 if the mod requires a matching client.dll

gamedll: The game DLL to load for running a server for this mod.

gamedll_linux: Same as above but is used for the Linux .So file


Here is an example we will use in our testmod:

 CODE  

game "Test Mod"
svonly "0"
cldll "1"
gamedll "dlls/hl.dll"
gamedll_linux "dlls/hl_i386.so"


We now move onto the next feature, the Resources. The resources files will be new to some people, they are the definitions for the launcher so it displays the correct text in places, it’s just a bunch of strings but without it your modifications menu gets messed up. The resources files are kept in this folder “C:\Program Files\Steam\SteamApps\ STEAM_USER_ID \half-life\testmod\resource”. In there, are 2 files “GameMenu.res” and (“MODDIR)_english.txt”.

Note: (MODDIR) should reflect your mods folder name. In our example it is “testmod” so our file would be called “testmod_english.txt”.

This is the make up of our “GameMenu.res” file:


 CODE  

"GameMenu"
{
    "1"
    {
        "label" "#testmod_GameMenu_ResumeGame"
        "command" "ResumeGame"
        "OnlyInGame" "1"
    }
    "2"
    {
        "label" "# testmod_GameMenu_Disconnect"
        "command" "Disconnect"
        "OnlyInGame" "1"
    }
    "3"
    {
        "label" ""
        "command" ""
        "OnlyInGame" "1"
    }
    "4"
    {
        "label" ""
        "command" ""
        "notmulti" "1"
    }
    "5"
    {
        "label" "# testmod_GameMenu_Browse"
        "command" "OpenServerBrowser"
    }
    "6"
    {
        "label" "# testmod_GameMenu_Create"
        "command" "OpenCreateMultiplayerGameDialog"
    }
    "7"
    {
        "label" ""
        "command" ""
    }
    "8"
    {
        "label" "# testmod_GameMenu_Options"
        "command" "OpenOptionsDialog"
    }
    "9"
    {
        "label" "# testmod_GameMenu_Quit"
        "command" "Quit"
    }
}


Where it says testmod you should rename that to your mods directory name in ours like earlier. Eg. Testmod.

Now for the make up of the (MODDIR)_english.txt file

Note: (MODDIR) should reflect your mods folder name. In our example it is “testmod” so our file would be called “testmod_english.txt”.

 CODE  

"lang"
{
  "Language" "English"
  "Tokens"
  {
     "testmod_GameMenu_ResumeGame"  "Resume"
     " testmod_GameMenu_Disconnect"         "Disconnect"
     " testmod_GameMenu_Create"                 "Create a game"
     " testmod_GameMenu_Browse" "Join a game"
     " testmod_GameMenu_Options"    "Options"
     " testmod_GameMenu_Quit"                      "Quit"
   }
}


Like above parts should be renamed to your mods directory name.

Once you have this done you are half way there. Next you will need to add your dlls and your maps folder, the dlls are located in the following folders “testmod\dlls” and “testmod\cl_dlls”.
Next is the map folder, now some may be sceptical about this ie. “Do you really need it?” and so to be honest, every time I tried launching my mod through steam without a test map of some sort or a copied Half-Life map into my “testmod\map” directory, it would crash.
Once you have this all done you should be able to launch Steam and go to “Games” on the Steam application and your modification should be listed under “Third Party Games”, try launching it.

I have included with this tutorial the files I have mentioned in this article so you may use them as reference. You can get them Here or further down this page on Wavelength. If anyone thinks I need to elaborate on parts of this article or have anything to correct me on, please email me at myristate@planethalflife.com I welcome any and all feedback.

Rate This Article
This article is currently rated: 4 out of 5.0 (4 Votes)

You have to register to rate this article.
Related Files
Zip FileFilename: testmod.zip
File Size: 1.4 KB

User Comments Showing comments 1-2

Posted By: jim_the_coder on Apr 13 2004 at 10:39:11
Does anyone know how to change the color of the menu text under Steam?? It used to be btns_main.bmp...good tut btw noones really started documenting the steam resource files :)

Posted By: morthy on Apr 13 2004 at 20:52:40
It should be in the independant colour schemes of that mod.. look in all the gcf files, and extract all the res files, take a look.


You must register to post a comment. If you have already registered, you must login.

Latest Articles
3rd person View in Multiplayer
Half-Life 2 | Coding | Client Side Tutorials
How to enable it in HL2DM

By: cct | Nov 13 2006

Making a Camera
Half-Life 2 | Level Design
This camera is good for when you join a map, it gives you a view of the map before you join a team

By: slackiller | Mar 05 2006

Making a camera , Part 2
Half-Life 2 | Level Design
these cameras are working monitors that turn on when a button is pushed.

By: slackiller | Mar 04 2006

Storing weapons on ladder
Half-Life 2 | Coding | Snippets
like Raven Sheild or BF2

By: British_Bomber | Dec 24 2005

Implementation of a string lookup table
Half-Life 2 | Coding | Snippets
A string lookup table is a set of functions that is used to convert strings to pre-defined values

By: deathz0rz | Nov 13 2005


Latest Comments
knock knock
General | News
By: MIFUNE | Dec 31 2017
 
knock knock
General | News
By: omega | Dec 22 2016
 
knock knock
General | News
By: MIFUNE | Oct 10 2015
 
New HL HUD Message System
Half-Life | Coding | Shared Tutorials
By: chbrules | Dec 31 2011
 
knock knock
General | News
By: Whistler | Nov 05 2011
 
Particle Engine tutorial part 4
Half-Life | Coding | Client Side Tutorials
By: darkPhoenix | Feb 18 2010
 
Particle Engine tutorial part 2
Half-Life | Coding | Client Side Tutorials
By: darkPhoenix | Feb 11 2010
 
Particle Engine tutorial part 3
Half-Life | Coding | Client Side Tutorials
By: darkPhoenix | Feb 11 2010
 
Game Movement Series #2: Analog Jumping and Floating
Half-Life 2 | Coding | Shared Tutorials
By: mars3554 | Oct 26 2009
 
Particle Engine tutorial part 5
Half-Life | Coding | Client Side Tutorials
By: Deadpool | Aug 02 2009
 

Site Info
297 Approved Articless
8 Pending Articles
3940 Registered Members
0 People Online (8 guests)
About - Credits - Contact Us

Wavelength version: 3.0.0.9
Valid XHTML 1.0! Valid CSS!