The Newbie Guide to Modding
April 01, 2009 - 23:38
The Newbie Guide to Modding (Generals’ Edition)

After a request, and going over LKO’s newbie modding guide, I have made this tutorial as the introduction to modding Generals, and a reference sheet for beginning modders.  It is divided into several parts.

I. File Types
-Here are a list of few, but not all, of the types of files found in generals and zero hour.  I also listed common locations, which is the folder setup that these file types are usually found under within the .BIGs.

.BIG: If you are familiar with modding RA2 or TS, this file pretty much replaces the .MIX file type.  It stores your files within so that the game can access them.  You do NOT have to use these from the beginning however, as Generals will read from directory for you.  Each .BIG has a hierarchy of files within it.  Such as Data/INI/Object/
Common Locations:
Generals Directory
Zero Hour Directory

.CSF: This file (and there’s only one that I recall) is the file that contains much of the text that is read by the player ingame.  When you hold your cursor over something, and text pops up, this is a string.  The strings of the text are all stored in this type of file.
Common Locations:
Data\English

.INI: This is an important type of file that you may be familiar with if you have modded a games such as Red Alert 2 before.  It contains information that can easily be modified and manipulated that have clear results ingame.  These files are perhaps the most important in the game from a modder’s perspective, and they let you doing anything from adding a new unit to changing where something is built.  More on these files later.
Common Locations:
Data\INI
Data\INI\Default
Data\INI\Object
Data\INI\MappedImages

.MAP: This is the file types for maps.  You can make maps with the Generals WorldBuilder.  Your custom maps made with WorldBuilder will appear in My Documents in the Generals/Zero Hour folder.

.MP3: Another audio file, some of the tracks for generals are in this format.
Common Locations:
Data\Audio\Tracks

.STR: This is another file used to contain strings, useful if you want to add a few things of text to a map.  The .STR file for a map will be found in the specific folder that the map is found in, and will have the same name as that map
Common Locations
Maps\*map name*\


.TGA: This is the basic 2d art file that generals uses.  It’s used can range from textures, terrain, and even icons.
Common Locations:
Data\English\Art\Textures
Art\Terrain
Art\Textures

.W3D: This is the file type of the 3d objects ad animations used in Generals.  You can create and edit these files using the RenX plug-in for Gmax.
Common Locations:
Art\W3D


.WAV: This is a sound file, useful for adding things for your units to say.
Common Locations:
Data\Audio\Sounds
Data\Audio\Sounds\English
Data\Audio\Speech\English

II. Setting up your directory.
Before you begin to truly mod generals, you must set up your Generals folder properly.  Basically this means you must make new folders (if they are not there already) for you to put your new and edited files.  The two most important ones are Data and Art.  Art should have the subfolders W3D, Textures, and Terrain.  While Data should have English, INI, and Audio.  Sub sequentially, INI should have Object and MappedImages.   Finally, MappedImages should have TextureSize_512.  Remember all the common locations I listed above?  Well, when you add in your files, they would go in the corresponding place in your new folders.

So Should have something like this:
Art
-Terrain
-Textures
-W3d
Data
-Audio
-English
-INI
--Object
--MappedImages
---TextureSize_512

III. Important INI files.
INI files are so so so important to modding.  I cannot stress this enough.  With that said, I will list a few of the most important files that you will use and what their uses are.

CommandButton.ini - This ini file contains and controls all the buttons found within the game.  So if you ant to make a new unit buildable, it will need it’s own button.  There are buttons for units, commands, upgrades, support powers, and others.

CommandSet.ini - This ini file contains all the Command Sets, which are arrangements of buttons that every unit has to control what it does and what it can build.  So if you make a new unit, not only must you make a button, but you must also add that button to a Command Set so a building can actually produce your unit.

PlayerTemplata.ini - This ini file controls the factions within the game, from their UI (user interface), to what units they start with Ingame.  This is an essential file if you wish to add a new side, starting units, or even change the default color of a faction.

INI/Object - The files located here house all the units and structures ingame.  There are many files within this, but they are all essentially the same.  You can make a new file if you wish, or edit an old one if you wish to work with units and structures.

There are many other INI files to work and play with, but the ones above are the most basic for you to use, yet they can be used to great potential.  Others include Upgrade.ini, ObjectCreationList.ini, Science.ini, etc.

IV. Important tools, what they do, and where to get them.

Notepad: A basic text tool that should come with your computer.  This can be used to edit .ini files, and is in fact the tool I use.  If you are unfamiliar with this, the best advice I can give to you is use Ctrl+F, which is the hotkey for Find.

XCC Mixer:  XCC Mixer is one of the tools that is capable of going through the .BIGs, and is also able to view a variety of file types, such as .tga and .ini.  It also allows you to extract files from the .BIGs, which you can then edit.  I use this all the time.  Get it here: http://xhp.xwis.net/

GmaX and RenX:  The art tools used to create and edit the 3d files used in generals.  Get them here: http://www.turbosquid.com/gmax  and here: http://commandandconquer.filefront.com/file/RenX_and_W3D_Viewer;76328

I hope this helps you out!  Check out the tutorial index for a bunch of tutorials that you can use to start modding!  http://www.ppmsite.com/forum/viewtopic.php?t=22584