Pedro’s ForzaBINToolz – Official support thread.(Devised by Angerwound, implemented by Pedro)(The announcement of the release of these tools was buried deep in an unfocused thread, so I thought I formalise their release by creating their own support thread – apologies to those to whom this not new information.)

M$’s Forza Motorsport allows limited car paintjob customisation. This is achieved through a limited set of decals and vinyls that users can apply to their cars. Some very creative people have already achieved amazing effects layering the supplied decals to create highly personalised cars (examples here).

For the less imaginative of us, I present Pedro's ForzaBINToolz. (Initially available for download from the tools page of http://www.forzacustoms.info/)

The ForzaBINToolz allow the user to replace the standard collection of available car decals with their own images (photos, clan logos, etc.). These can then be applied to the cars using the in-game tools in the “garage”.

Going technical for a moment, when you exit the in game “garage”, any custom decals are stamped onto the car’s skin (which is stored in the gamer's profile on the HDD). And it is this skin that is transmitted to others players over system link or XBOX!Live – so they do not require your personal decals to actually view and appreciate your handiwork. fyi - The skin looks like this:

The standard decals are stored in a custom format on the game disk in the file \media\decals.bin.

Pedro’s ForzaBINDump program extracts the existing decals and vinyls into separate TGA files, readable by most graphic painting programs. And Pedro’s ForzaBINPack will reassemble a collection of TGA files back into the decals.bin file. Once the game’s decals.bin file is replaced with the new one, your own decals will be available for use in-game.

Single decals can be replaced:

Or, with more imagination, several decals can be utilised to facilitate more options. (See Pedro's TGAtoTiles also available from http://www.forzacustoms.info/)

Thanks to Angerwound, krash, jackbauer, & Nunim for their assistance and testing.Thanks to the ForzaCustoms.info team for hosting the utils (http://www.forzacustoms.info/).And thanks for all the posters on the xbox-scene & forzacustoms.info forums for their encouragement.

Pedro's ForzaBINToolz Release 2 included full 'C' source code. The source code documents the decals.bin file format and is probably the major value of the project. The command line toolz are really just proof-of-concept, and were simply used to validate the file format assumptions. Hopefully more dedicated fans will take this work further.

are you limited to the amount of decals that you can put into the game?

or is it you only replace certain decals with the new ones?

Short answer:
It's safer to simply replace existing decals, althrough you can replace any size decal with one up to the maximum size of 128x128.

Long answer:
On the decal picking screen, the Forza game engine displays the title of the selected decal in the footer. These names aren't contained in the decals.bin file - they exist elsewhere in the game engine. They appear to relate to the decals solely based on the location/order of the decal in the decals.bin file (decal 1 is always "3DLogo", etc.).

Tests appending a small number of additional decals did work, but resulted in rogue decal titles being displayed. It is anticipated that further appending would eventually cause the Forza game engine to crash - although this was not proven. Now that the source is available, others are welcome to continue this investigation.

Angerwound has written a step-by-step tutorial on using the ForzaBINTools.

QUOTE("angerwound")

Extracting/Injecting Decals

EXTRACTING THE ‘DECALS.BIN’ FOR VIEWING OR MODIFICATION1. First of all, you will need a copy of the original ‘decals.bin’ from the /media/ folder of your Forza game disk. Retrieve it from you console using your preferred method. If you are unaware how to do this, visit Xbox-Scene.com.2. Next, grab the latest version of ForzaBINToolz from ForzaCustoms.info.3. Open a command prompt -> Start -> Run -> ‘cmd’.4. Navigate to the folder where your ‘decals.bin’ and ForzaBinToolz currently reside. 5. Extract the ‘decals.bin’ with ForzaBINDump using the syntax, “ForzaBinDump decals.bin”6. The program will then extract every decal, vinyl, and carclub_icon from the archive.7. You can now view these with Photoshop or edit them for later injection back into the ‘decals.bin’ archive.

INJECTING CUSTOM IMAGES INTO THE ‘DECALS.BIN’ ARCHIVE1. You will need to extract ‘decals.bin’s contents to a folder on your desktop before doing anything. Read above on how to do that.

2. Next, figure out which image/images you will want to inject into the archive. The source image will need to have specific details depending upon which image you plan on replacing.

iv. Replace some of the decals that were extracted in the first step with the resulting .tga images. Be sure to rename them correctly.

5. Now that we have all of our images saved over the ones that were original extracted we can begin to rebuild the ‘decals.bin’ archive to stick back in the game. You will need to once again navigate to the folder where our ForzaBinToolz is located alongside your extracted/edited decals.

6. Rebuild the archive with the syntax: “ForzaBINPack decals.bin”.

7. Transfer your new ‘decals.bin’ back to your xbox console begin building that masterpiece of a car.

NOTES:

Once your car is finalized allow it to save. The car is now usable on xbox live as well as system link. It can be sold, traded, and viewed by all. However, be sure that you do not attempt to edit the car with an original ‘decals.bin’ in place; your car’s paint will be come corrupted and deleted. Be Careful.

I've just completed a new utility that allows irregular shaped decals to be produced. It's a generic TGA utility and not Forza specific (although I can think of no other use for it ). Thus it'll be released in a new version of TGAToolz (along with the old TGAtoTiles utility). It should be available for download from http://www.forzacustoms.info/ shortly.

From the readme:

CODE

TGAPal24to32:

Description:This simple command line utility exports the palette of a 256 colour TGA format file into a simple text format. This text version of the palette can then be edited as required - such as specifying any translucent colour requirements - then the utility allows the modifications to be injected back into the original image.

Why?The TGA image file format supports 'translucent colours' which, like gels, allow any background image to still show through. Each one of the 256 colours in the palette can have a 'translucent' value associated with it. 0 is clear, and 255 is most opaque. However I've not found a graphic program that allows the user to configure this (not even the mighty Photoshop). I have found one utility, Aha-view (from http://www.aha-soft.com/ahaview/tga-viewer.htm), that does display such TGA files correctly (useful for previewing your efforts).

Why might you wish to do this?The 'translucent colour' can be used to simulate an alpha channel, and facilitate irregular shaped images, and images that combine with their background.

In order to produce the livery below in Forza using the custom decals approach, you need a "Gulf" logo that is truly round, as it appears on both an orange and blue background (bonnet and door).

A way to produced such a decal is to reduce its colour palette down to 255 colours and use the 256th palettes slot as a transparency colour. PaintShopPro 9 allows such a palette reduction to any number. I then set the colour of the vacant palette slot to a vivid green (R=0, G=255,B=0), to make it noticeable, and filled the areas I wanted transparent.

I then saved the image as a 256 colour TGA. And used TGAPal24to32 to export the palette to a text file. Using TGAPal24to32 -e Gulf.tga Gulf.txt

I knew the final palette entry was my transparency colour, and the RGB values confirmed this (Entry=255,R=0, G=255,B=0, I=255)

Using Notepad, I edited the intensity value right down to 0 (completely clear) and saved the file as "GulfModified.txt".

CODE

Num R G B I<snip/>255 0 255 0 0

I then used TGAPal24to32 again to inject my palette alterations back into the TGA.TGAPal24to32 -i Gulf.tga GulfModified.txt

I coped the modified Gulf.tga across into my decals directory as decal000.tga, and used ForzaBINPack to produce a new decals.bin file. The Gulf logo transparency now appeared in-game

This was very coarse use of the technique. With a little more imagination, alpha blending, and transparent gels offer up all sorts of opportunities. By setting multiple (all?) palette entries to an incrementing ‘intensity’ nice fades can be achieved.

I’ve seen a few posts around saying that some people are disappointed with their reduced colour palette decals in-game – complaining about muddy whites, etc. (I've not encounterd this myself).

Not sure about this but...AFAIK the displayable colour gamut of a TV set is a lot less than a computer monitor (colour calibration may also contribute). So you may need to 'palette map' to a TV safe palette. Googling for information on this may throw up some useful links (e.g. like this and this).

just a question...i havent used this so i am just asking here..i know you can extract the car textures..now can you paint a picture right on it...or can the decals be the only way to put a picture on it? say i got a viper and i want it to look like ...samurai jack. can i place the picture in the texture area or do i make the picture into decals and puzzle them together?

just a question...i havent used this so i am just asking here..i know you can extract the car textures..now can you paint a picture right on it...or can the decals be the only way to put a picture on it?

You have several choices:

Design you own car using the game’s built-in editor and the standard in-game decals. These are useable on XBOX!Live. Examples here.

Design you own car using the game’s built-in editor and custom decals. These are useable on XBOX!Live. Examples here.

Direct painting on the texture – using non-XBL auth key – usable on system link, but not useable on XBOX!Live! See the "Forza Texture Tool" available from http://www.forzacustoms.info/

Excel can also be used to sort the palette entries, in order to group colours (useful for blended drop shadows), and can also be used to auto-increment the alpha number to author gradients.

The TXT file is tab delimited, and contains palette entry number, for use with Excel in mind. The TXT file palette rows can be safely reordered, and the palette entry field ensures the colours are still injected back into the right palette slots.

ok..i was wondering i am not much for xbox live so i was just wondering because i see some sick looking vehicles and i wasnt sure if the car had to be painted one colour and a picture of whatever had to be decaled or just use it as a texture...so what does the key do then?