Skip to content

iAmThatMichael/zonebuilder

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ZoneBuilder

Zonebuilder helps create custom assets for fourth-generation FPS titles developed by Infinity Ward.

Setup

Setup the development folder by extracting the ZoneBuilder into the game folder. Having the ZoneBuilder directory within the game's folders will help with the setup. The process requires a full game installation for the program to work as ZoneBuild works with the game files.

Folder Structure

Extracting the program directly into the game folder will include the proper folder structure. The extracted files include an example asset (weapon model with animations) to test with.
  • /zone_source
    • *.csv files
  • /zonebuilder
    • /images
    • /materials
    • /sounds
    • /fx
    • build scripts
    • any resource files needed to build fastfiles

File Formats

CSV File

The project and game includes CSV files describing data with a simple format: ``` value1, value2, value3 value4, , value5 value6, value7, value8 ```

zone_source CSV files

Rows describe assets in the fastfile to build and can be described 2 ways. Any combination of the two will work in a csv file.

Custom Asset

type, asset name, asset filename

Repacking Asset note: for here you need the asset loaded from a source (-s) zone

type, asset name

Material CSV files

CSV files describe materials even though the file's extension is ".txt". The format is as follows. ``` option, value ``` The options for materials are described in the table below.
option value description
basemat The base material to use.
colorMap color map image
normalMap normal map image
specularMap specular image
detailMap camo image

XME, XAE, and IWI

XME, XAE, and IWI files define models, animations, and images respectively. The zone's CSV file references the XME, XAR, and IWI files when creating a custom asset. The format for the files are in binary and not described here.

Building a custom Fastfile

Custom Fastfiles allows for loading custom assets into the game. This process is simple if the setup process was done correctly. The paths reference to the base folder of the game installation.

Step 1: Create a .csv for the new Fastfile. Use the format described above and create a CSV including all the assets to be included in the Fastfile.

Step 2: Ensure all of the asset files are in the correct folders inside the /zonebuilder directory. ZoneBuilder cannot find the files when not placed in the correct directory.

Step 3: Run Zonebuilder. A simple way to run ZoneBuilder is to call zonebuilder.exe fastfile where fastfile is the name of the CSV. ZoneBuild will output a fastfile into the /zone/language folder.

Custom Sounds

Creating custom sounds requires a compatable sound file (mp3 or wav). The definition of the sound alias is a text file and only contains the filename of the sound. Place sounds in the /sound subdirectory. An example of the corresponding CSV line for a sound alias called "explosion3" with a sound file of "sound/explosions/expl3.wav" would be: ```sound,explosion3,sound/expl3.txt ``` and the contents of sound/expl3.txt would be: ```sound/explosions/expl3.wav ```

Command Line Options

__-s__: Loads a Fastfile to be the source zone. There is no limit on the number of source zones and be cautious about overflowing asset pools as the issue is not handled by ZoneBuilder. *note: there is no space between the -s and the Fastfile name!*

-v: Verifies a created Fastfile and prints out every asset in the Fastfile.

-d: Dumps certain assets from the game to a format that ZoneBuilder can rebuild.

-b: Changes the value of fs_basegame and defaults to "zonebulder" where all data is placed.

About

Fastfile Generator for IW4

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 65.6%
  • C 29.3%
  • Objective-C 5.1%