• Help Support The Rugby Forum :

OTools for editing .O and .FSH files

Some information about dirt on faces in Rugby 08.
The game uses some common "dirt" texture for faces and some other things:
dirt.png
The head material adds this texture to 2nd texture slot:
Code:
mat1 [LitTexture2IrradSkinSubSurfSpec,tex1:dirt]
And this texture slot uses 2nd UV map channel. So you need to edit 2nd UV channel of the face.
Here how it looks in original game:
1678883146046.png
So the head mesh is mapped to some area on this texture.
And here how this texture looks when mapped to the head mesh:
1678883273009.png
So you need to create 2nd UV channel for you mesh and also place it correctly on the dirt texture.

If you want custom dirt texture for your face, you can try the following:
Add your custom "dirt" texture to face fsh. If it won't work (original texture still will be used), you can change texture name in material options and also add this texture it to face fsh.

If you don't want the dirt to be applied to the head, you can try to use some other shader, for example
Code:
LitTextureIrradSkinSubSurfSpec
Or you can also scale the whole 2nd UV channel to one point and put it somewhere to transparent area on original dirt texture.
 
Last edited:
New verion 0.177 is uploaded on BitBucket.

image (1).png image.png nfshp2_2.PNG nfshp2-1.png

Release notes
Finally added support for NBA Live games. For NBA Live 2003 and 2004 we have export and import, but exporting/importing morph meshes (player body and faces) is not possible. In .O format the morph implementation is very uncommon - you can apply morphing to any vertex attribute, even including bone weights. I think such morphing was never used anywhere, but in NBA Live 2004 we have morphing of texture coordinates, for example. And in most 3D applications (including Blender) and 3D formats, only morphing of positions and normals is expected. So there must be some special way to deal with it. I think morph export/import might be added in future OTools version.
We also can export Need for Speed Hot Pursuit 2 models, but import is not implemented. Also the export of some models is still not possible because they store meshes in some uncommon way. Cars in Need for Speed Hot Pursuit 2 use skeleton, but it's stored in a separate file. To export the model with this skeleton, "-skeleton" command is needed (-skeleton skeleton.o).
There's a new feature which allows to define vertex/bone connection (skinning) in 2D textures.
1677534086998.png
More about this feature: https://bitbucket.org/fifam/otools/wiki/Texture to skin feature

Changelog

0.177

Code:
- fixed crash when trying to import a very large skinned mesh (mesh splitting didn't work correctly with skinned meshes)
- fixed crash in 0.176 on export, when output path was specified directly
- fixed import of bone weights in non-float format from glTF files
- option list for materials with very long name is now exported to a special .mato file
- "skeleton" option now can search for the model in the same folder with .o
- new feature: define vertex/bone connection (skinning) in 2D textures
- added import/export for NBA Live 2003 and NBA Live 2004 (editing morph models is still not possible)
- added export for Need for Speed Hot Pursuit 2 (some models still can't be exported because of different mesh storage in the file)

0.176
Code:
- fixed export of compressed textures with non-power-of-two dimensions (such textures will be exported to non-compressed format) - thanks @jefcam
- fixed crash on batch fsh export
- improved fsh packing - now alignment and sections structure in most cases are identical to original fsh files
- added possibility to define output folder for FSH packing/unpacking
- added possibility to define output format for models (experimental at this moment; it's recommended to use GLTF as output format)
- possibility to define output formats in GUI tool

0.175
Code:
- palette image format (-fshFormat pal8)
- removed dithering on 16-bit textures
- new options -flipNormals and -flipFaces (for import/export)
- new option -sortFaces (might help when mesh consists of many semi-transparent faces which overlap)
- new options for specific fsh packing, -fshKits,  -fshShoes, -fshBalls, -fshPatterns, -fshJNumbers, fshSNumbers
 
Last edited:
@EN9ne
You can import Character Creator models with this config:
Code:
-writeFsh -fshForceAlphaCheck -setVCol FFFFFFFF -sortByName -scale 56 -translate 0,5.8,2.6 -boneRemap data\remap\remap_head_cc.txt -bonesFile data\remap\bones_rugby.txt -skeletonData none
This will convert CC skinning to Rugby skeleton and re-position the head. You can play with scale/offset values to get better results of head positioning.
Note, in the game Y axis is the up axis and Z is inverted, so values from Blender for -translate command look like this: -translate x,z,-y
 
Top