Now that the issues with OpenIV and ped export/import have been fixed, you can edit default ped models. Doing much more than basic model editing is kind of complicated, and requires 3D modeling knowledge.
However, there is one very useful thing you can do without knowing 3D modeling: combining different ped meshes.
What is a ped mesh? It's a component like head_002 or uppr_001. For example, for skinny cops, the long sleeve shirt is one mesh, and the leather jacket is another. By combining them, you can have cops with only short sleeves and jackets; cops with state trooper pants; state troopers with a regular cop's long sleeve shirt (instead of their weird one); etc.
So how does this work? To start with, you need OpenIV. OpenIV can export .wdd files to its own format, called openFormats. Crucially, openFormats are text-based. To export a model to openFormats, first navigate to componentpeds.img (click the arrow next to GTA IV or EFLC, under pc\models\cdimages). Then, right click it, and select "Export to openFormats (.odd)".
Make a new folder somewhere, and select it. Then, hit "OK". This folder should look like this:

Open the .odd file in your favorite text editor. It should look like this:

Each gtaDrawable section represents one mesh. It doesn't contain the actual mesh; all it does is to tell OpenIV about the mesh when you import this back in at the end, so OpenIV can set up the .wdd properly. Let's look at one section of it:
Code:
gtaDrawable lowr_001_u
{
shadinggroup
{
Shaders 2
{
gta_ped.sps LOWR_DIFF_001_A_UNI LOWR_NORMAL_001 35.00000000 0.20000000 1.00000000;0.00000000;0.00000000 LOWR_SPEC_001 1.00000000
gta_default.sps LOWR_DIFF_001_A_UNI
}
}
skel
{
skel m_y_cop.skel
}
lodgroup
{
mesh
{
high 1 m_y_cop\lowr_001_u_high.mesh 0 9999.00000000
med 1 m_y_cop\lowr_001_u_med.mesh 0 9999.00000000
low none 9999.00000000
vlow none 9999.00000000
center 0.00081600 0.07059900 -0.52030600
radius 0.54099200
aabb.min -0.23394000 -0.14672600 -1.00492300
aabb.max 0.23622800 0.28086400 -0.02737300
}
}
}
Seems complicated, right? We don't actually need to worry about most of it. Let's go through line-by-line:
Code:
gtaDrawable lowr_001_u
This is the mesh name. The lowr_001_u tells OpenIV what mesh it's dealing with. The lowr means that this is a lower-body mesh (i.e., a pair of pants). The 001 is the number of the mesh. The rule for these is that they have to be unique within a given type, and range from 000 to 00n, where there are n+1 meshes of that type (i.e., there is lowr_000_u and lowr_001_u; uppr_000_u through _003_u; etc.) Worry about this at the end.
I don't know what the _u is; since we're not making our own meshes, just keep it _u if it started as _u (which seems to be clothes), _r if it started as _r (seems to be heads), etc. All you would ever need to change is the number; the lowr_ and _u should stay the same.
Code:
gta_ped.sps LOWR_DIFF_001_A_UNI LOWR_NORMAL_001 35.00000000 0.20000000 1.00000000;0.00000000;0.00000000 LOWR_SPEC_001 1.00000000
gta_default.sps LOWR_DIFF_001_A_UNI
Ignore the numbers. All you need to care about is the LOWR_*_001_* parts. Those represent textures for the model. Now, GTA seems to select ped textures its own way; read my tutorial on ped textures for details. This probably just controls OpenIV's preview of the ped. Even so, you may as well update it when you have to. Again, all you'd change is the number in there.
[CODE]skel m_y_cop.skel[\CODE]
This defines the skeleton that this mesh maps to. You want it to be the same as the name of the odd file, but .skel instead of .odd.
Code:
high 1 m_y_cop\lowr_001_u_high.mesh 0 9999.00000000
med 1 m_y_cop\lowr_001_u_med.mesh 0 9999.00000000
This is the key part of the section. It tells OpenIV where to find the mesh file. In your folder, you should have seen a subfolder called m_y_cop (or whatever). That has a lot of .mesh files inside. The m_y_cop\lowr_001_u_high.mesh is actually literally a filepath for the mesh.
OK, this explanation of the file format is done. The next post will have a tutorial to do stuff with these files.
Bookmarks