Menu

General

Home
Command Line Switches
Misc. Downloads
Links
About

Homeworld

Walkthru
Maps
Patches
Screens
Fiction

Cataclysm

Walkthru
Maps
Patches
Screens
Fiction

Homeworld2

Storyline
Information
Concept Art

Races

Kushan
Taiidan
Kiith Somtaaw
Beast
Turanic Raiders
Khadeshi
Bentusi
T-Mat
Derelicts

Modding

Mods
Modding Tools
Ship Replacing Guide
Basic Modding
Advanced Modding

Map Making

Map-Making Tools


 

Ship Replacing Guide

In this section, you will learn how to do something every Homeworld player wants to do - replace the default ships in Homeworld with other ships. Have you ever become tired of crappy ships like the Light Corvette or the Defense Fighter, and wanted to replace them with something altogether more powerful, as well as a lot better looking? If so, then you've come to the right place.

Before you begin, make sure you've read my Basic Modding Tutorial, which deals with the real basics of Homeworld modding. It may be basic, but you'll still be lost without it if you've never done a mod before. Anyway, on to the tutorial.

Preparation

There is only one specialised modding tool you will need, and that, of course, is Bigfile Viewer.

Use Bigviewer to save the directories of the ships you're going to be using as replacements, as well as the ships you're going to be replacing. For example, if you're going to be replacing the Kushan Interceptor with the Khadeshi Swarmer, save the entire r1 and p2 folders, not just the files relating to those ships. If you're using your own ship model, you will obviously only need to save the race folder of the ship you are going to be replacing.

Now that you have copies of your ships, you might want to have 3D Exploration handy, to check that all the texture files for the ships are present and correct. More about this later, now on to the actual ship replacing.

Replacing The Ship

1) Rename the extracted folder of the race of the ship you're replacing, to a different name. In case you're wondering, you're just going to be using this folder for reference, to see which ships have .mad files and/or strange folder structures.

    Example: If you're replacing a ship in the r1 folder, rename r1 to something like r1_backup.

2) Now create a folder, named after the race of the ship you will be replacing, in your Homeworld directory, and inside this file, create a folder named after the craft you will be replacing. If you aren't sure which ships are which, refer to your backed-up r1 folder.

    Example: If you're replacing the Kushan Interceptor, you would create a r1 folder, and then, inside this, a heavyinterceptor folder.

3) Now copy into your new folders, all the files relating to the ship you will be using as a replacement. The .lod and .shp files go in the base directory, and the rl0 folder (containing the ship's textures) goes in the folder of the same name as the ship being replaced.

    Example: If you were using the Khadeshi Swarmer as a replacement, you would copy the p2swarmer.lod and p2swarmer.shp files into the r1 directory, and the rl0 folder from the p2swarmer folder, into the heavyinterceptor folder.

4) Go into the folder of the replaced ship, and rename the rl0 folder to r10. That's right, r, then a one and a zero. The reason we must do this, is that otherwise Homeworld will refer to the textures.ll file, which contains the names and loacations of the textures of the default ships. These are obviously in the rl0 folder, and if you don't have a folder of a different name, Homeworld will default to loading those textures specified in textures.ll - resulting in texture corruption. And you don't want that, do you?

5) Open the .lod file of the replacement ship with a plain-text editor like Notepad, and take note of what you see. Basically, there are 6 different sections, the first one the header area, the remainder to tell Homeworld which detail level to use at which distance.

6) In the last 5 sections, you will notice a line with the text pMeshFile‹n›, where ‹n› is a number from 0 to 4. After this comes a path to a file, this tells Homeworld where to look for a specific detail model (that file) relative to the .lod file itself.

7) Now, as you can see, at the moment all of these paths read ‹newship›\Rl0\LOD‹n›\‹newship›.geo, where again ‹n› is a number from 0 to 4, and ‹newship› is the name of the ship you are using as the replacement. Since the new replacement ship's files are now all in a different ship's directory, replace the first ‹newship› with ‹oldship›, where ‹oldship› is the name of the ship that's being replaced. And don't forget to replace Rl0 with R10, since we renamed the rl0 folder to r10 in Step 4.

    Example: If you are replacing the Interceptor with the Swarmer, all the entries in the P2Swarmer.lod file will read P2Swarmer\Rl0\LOD‹n›\P2Swarmer.geo, where ‹n› is a number. But, since these files are now actually in the r10\heavyinterceptor directory, change every single path to read HeavyInterceptor\R10\LOD‹n›\P2Swarmer.geo.

8) As you've probably worked out, the different .geo files in each LOD folder provide different views of ships from different distances. So, you should leave everything as it is now, right? Wrong!!! You see, because Homeworld can automatically detect mods, it will refuse to load the 'new' ship models. The way around this, is to simply use the same, closest model for each Level Of Detail. So, change every pMeshFile‹n› path to use the ship model in the lod0 folder, and also change all .geo extensions to read .peo, so that all your paths look like this: ‹oldship›\R10\LOD0\‹newship›.peo. Save the ‹newship›.lod file and close it.

    Example: At present, your P2Swarmer.lod file entries will read HeavyInterceptor\R10\LOD‹n›\P2Swarmer.geo. However, since you want to use the same (closest) ship model (the one in the lod0 folder), change all these paths to read HeavyInterceptor\R10\LOD0\P2Swarmer.peo (don't forget to change that .geo to .peo!). Save and close the p2swarmer.lod file.

9) Open up the ‹newship›.shp file. At the top you will see the name ‹newship› in square brackets, but because your replacement ship is actually (to the game) the old ship, change this to read ‹oldship›. Below this is another section detailing the names/locations of the .lod and .mex files. Change LODFile to read ‹oldship›.lod, and pMexData to ‹oldship›\r10\lod0\‹newship›.mex, then save and close the file.

    Example: Because the Swarmer is now actually the Interceptor, change the name in the square brackets from P2Swarmer to HeavyInterceptor. Change P2Swarmer.lod to read HeavyInterceptor.lod, and edit the pMexData entry to say HeavyInterceptor\r10\lod0\P2Swarmer.mex.

10) Now rename the ‹newship›.lod and ‹newship›.shp files, to ‹oldship›.lod and ‹oldship›.shp, then load up Homeworld and play a Skirmish vs CPU game with your new ship!

    Example: Simply rename P2Swarmer.lod and P2Swarmer.shp to heavyinterceptor.lod and heavyinterceptor.shp, and you're done! You might want to edit the heavyinterceptor.shp file to change your ship's stats, though, especially the amount of fuel the Swarmer can carry...

Note 1: If you have a ship with a .mad file you are using to replace another, you must rename the .mad file to the same name as the ship being replaced. For example, if you are replacing the Ion Cannon Frigate, the .mad file for the new ship must be renamed to ioncannonfrigate.mad.

Note 2: If you are replacing a ship with a Z-function (e.g. hold down Z and click to repair, attack etc.), you must copy the section relating to that function from the original ship's .shp file, into your replacement ship's .shp file. (You may have to look quite hard to find these functions.) Some ships don't have any visible Z-functions (e.g. the Scout - look in the tweak.script file), so in that case you'll just have to replace another ship instead.

Problems

If you found that your model was untextured, then it's likely that it shares some textures with another ship similar to it (e.g. Khadeshi Swarmer with Advanced Swarmer, Turanic Standard Corvette with the Missile Corvette). In this case, open up that ship in 3D Exploration (simply double-click the .geo file in the lod0 folder), and look for an exclamation mark in a yellow triangle at the bottom right-hand corner of 3D Exploration's window. Double-click on this symbol, and you will be presented with a list of the LiF textures that are missing from tha"sistership", and look for textures of the same name. When you find them, copy them into your replacement ship's lod0 folder, then re-load that mode in 3D Exploration and, if you've got the right textures, the little symbol will have gone, meaning that your ship will look 100% perfect when you play Homeworld.

(Note that you must repeat this procedure for all the lod folders [0 to 4], to make sure that you don't get texture corruption when zooming out.)

If the badly-textured ship doesn't appear to have a "twin" sharing the same textures, then just use Windows' "Find" feature, and search for the missing textures. If your search turns up more than one match, just copy each file in turn and then check with 3D Exploration. If the ship model still doesn't look right, then delete the file you just copied over, and try another one. Continue doing this, until your ship model in 3D Exploration looks like it should.


 

Other Sites

Affiliates

Visit SA Guppy Net
South Africa
Guppy Net

Visit WebBuilder
WebBuilder

Visit emuroms
emuroms


Homeworld
Community

Relic News
Homeworld Universe
Homeworld
Fleet Command

Project RED
The Guidestone
Drunken Pirates


Forums

Relic Forums
Barking Dog Forums
Homeworld Universe Forums
Project RED Forums
Drunken Pirates Forums


 

Site design, layout and content copyright © Ian "The Assimilator" Kemp, 2001.
All rights reserved.

Site best viewed in Internet Explorer 5.5, with desktop resolution set to 800x600 pixels/16-bit colour or higher.