Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Forza Motorsport Resource Extraction (.carbin)

Post questions about game models here, or help out others!
User avatar
Andrakann
ultra-veteran
ultra-veteran
Posts: 392
Joined: Wed Jul 06, 2011 8:47 am
Location: Russia
Has thanked: 967 times
Been thanked: 192 times
Contact:

Re: Forza Motorsport Resource Extraction (.carbin)

Post by Andrakann »

minime891 wrote:I meant just the lod1 interior texture.
No any lod1 texture exists in Forza history, especially for interior...
Lods1-5 uses "nodamage" exterior texture with interior elements and with alpha of course.
Image
User avatar
Andrakann
ultra-veteran
ultra-veteran
Posts: 392
Joined: Wed Jul 06, 2011 8:47 am
Location: Russia
Has thanked: 967 times
Been thanked: 192 times
Contact:

Re: Forza Motorsport Resource Extraction (.carbin)

Post by Andrakann »

Ok, I'm finished with all texture formats available in AST_DB11_17 archive :roll:

My assumption about compression type byte in swatchbin header was right:
Image
Corresponding values are:
00h = BC1 (47h in DX10 DDS header)
03h = BC4 (50h in DX10 DDS header)
05h = BC5 (53h in DX10 DDS header)
07h = BC6H_UF16 (5Fh in DX10 DDS header)
09h = BC7 (62h in DX10 DDS header)
0Dh = R8G8B8A8 (1Ch in DX10 DDS header)
13h = A8 (41h in DX10 DDS header)
Last edited by Andrakann on Tue Jan 31, 2017 3:01 pm, edited 1 time in total.
User avatar
Andrakann
ultra-veteran
ultra-veteran
Posts: 392
Joined: Wed Jul 06, 2011 8:47 am
Location: Russia
Has thanked: 967 times
Been thanked: 192 times
Contact:

Re: Forza Motorsport Resource Extraction (.carbin)

Post by Andrakann »

Converted all textures for AST_DB11_17, uploaded here: https://yadi.sk/d/hn6DPnKq3AU8S9
Format DX10 DDS, use Intel PS Plugin or DDS Converter from my previous post.

Note about conversion: most textures data is attached to headers with mipmaps, but textures in LiveryMasks and UI folders require headers without mipmaps, otherwise causes errors when opening.
gpfan
beginner
Posts: 33
Joined: Fri Apr 01, 2011 7:59 pm
Has thanked: 21 times
Been thanked: 14 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by gpfan »

Andrakann wrote:Converted all textures for AST_DB11_17, uploaded here: https://yadi.sk/d/hn6DPnKq3AU8S9
Format DX10 DDS, use Intel PS Plugin or DDS Converter from my previous post.

Note about conversion: most textures data is attached to headers with mipmaps, but textures in LiveryMasks and UI folders require headers without mipmaps, otherwise causes errors when opening.


Are you using pvrtextool wrap raw data option to extract the dds from swatchbins?
Last edited by gpfan on Mon Jan 23, 2017 8:52 pm, edited 1 time in total.
TolikGT
beginner
Posts: 25
Joined: Mon Aug 11, 2014 12:23 am
Has thanked: 26 times
Been thanked: 11 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by TolikGT »

i see on russian site models from FH3 in gameformats
Q.: How unpack FH3 appx on Windows 7 ?
aliann34
beginner
Posts: 34
Joined: Wed Dec 07, 2016 1:05 pm
Has thanked: 53 times
Been thanked: 4 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by aliann34 »

GameModels.ru is uploading FH3 models including Lamborghini Centenario
TheAdmiester
beginner
Posts: 24
Joined: Tue Jan 03, 2017 10:04 pm
Has thanked: 8 times
Been thanked: 33 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by TheAdmiester »

TolikGT wrote:i see on russian site models from FH3 in gameformats
Q.: How unpack FH3 appx on Windows 7 ?
Windows 7 can't do anything appx related.
aliann34 wrote:GameModels.ru is uploading FH3 models including Lamborghini Centenario
Those are just ripped from the game, they're not in any usable formats, so that doesn't help the efforts in this thread.
TomWin
veteran
Posts: 146
Joined: Sun Apr 11, 2010 7:46 pm
Has thanked: 16 times
Been thanked: 9 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by TomWin »

Awesome progress, not really understand how to convert these textures from swatchbin to dds.

Is disappointing that FH3 models doesn't have anymore nodamage and lights textures :(

EDIT: how can I decrypt all that files with odd names that I have in my Forza folder?
User avatar
Andrakann
ultra-veteran
ultra-veteran
Posts: 392
Joined: Wed Jul 06, 2011 8:47 am
Location: Russia
Has thanked: 967 times
Been thanked: 192 times
Contact:

Re: Forza Motorsport Resource Extraction (.carbin)

Post by Andrakann »

gpfan wrote:Are you using pvrtextool wrap raw data option to extract the dds from swatchbins?
No, it's doesn't reads correctly BC7 format.
I cut out swatchbin header, save chunk with compressed texture data, make new DX10 DDS texture from random picture with same dimensions and compress it to same format (using DDS Converter), cut out data part and save DDS header only, then attach swatchbin chunk to that header.
I'll make a step-by-step tuto, just wait a little.
TolikGT wrote:Q.: How unpack FH3 appx on Windows 7 ?
TomWin wrote:EDIT: how can I decrypt all that files with odd names that I have in my Forza folder?
If you want more information about unpacking Forza, you can start from here, then continue to "underground forum" (link in comments), then relax and start to search for already unpacked, decrypted and renamed game files ;)
User avatar
Andrakann
ultra-veteran
ultra-veteran
Posts: 392
Joined: Wed Jul 06, 2011 8:47 am
Location: Russia
Has thanked: 967 times
Been thanked: 192 times
Contact:

Re: Forza Motorsport Resource Extraction (.carbin)

Post by Andrakann »

Ok, it's time for a little tuto: How to get Forza textures.
You'll need some tools:
Hex Editor
DDS Converter or Noesis
Double Commander (free analog of Total Commander)

Step 1. Making of texture data chunk from swatchbin file:
Open swatchbin in hex editor and read important data in header before cutting it out:
Image
You'll need to know widht, height and compression type for making new DX10 DDS header, remember them, then select and delete header bytes up to "data start" position:
Image
Table of compression types:
00h = BC1_UNORM (47h in DX10 DDS header)
03h = BC4_UNORM (50h in DX10 DDS header)
04h = BC4_SNORM (51h in DX10 DDS header)
05h = BC5_UNORM (53h in DX10 DDS header)
06h = BC5_SNORM (54h in DX10 DDS header)
07h = BC6H_UF16 (5Fh in DX10 DDS header)
09h = BC7_UNORM (62h in DX10 DDS header)
0Dh = R8G8B8A8_UNORM (1Ch in DX10 DDS header)
13h = A8_UNORM (41h in DX10 DDS header)

After you deleted header part, you need to "save as" edited file, I put memorized values as file extension for chunk, leaving name as is:
Image

Some tips for newbies:
You can see decimal numbers for widht/height right inside hex editor, just select two bytes and look in status bar:
Image
"Data start" position reads backward, by bytes, so 04 01 00 00 reads as 00 00 01 04 - this is first byte position adress, displayed as Pos: 104h (260) in status bar if you put marker on them:
Image
Zeroes is skipped and (260) is decimal number of byte.

Step 2. Making of DX10 DDS texture with correct parameters:
So, we need a donor texture with 1024x512 dimensions and BC7 compression, let's make one :)
Take any pic and resize it to 1024x512 in your favourite editor, save as 1024x512.png, then open in DDS Converter and set desired compression type:
Image
Click "Convert" button, wait a little then click "Save as" button (it's becomes active after conversion is complete).
Name saving file as 1024x512xBC7.dds

Note: Some formats is missing in compression settings, BC4 for example, for this case I put those codes for DDS Headers in table of compression types above.
To make BC4 header out of BC7 one, you need to change one byte at Pos: 80h (128) from 62h to 50h and save result with new name:
Image

Step 3. Detaching header from generated DX10 DDS:
Open 1024x512xBC7.dds in hex editor, put marker in 94h position, press Ctrl+Shift+End to select all bytes to the end of file from selected position, delete:
Image
Save result as 1024x512xBC7_header_only.dds:
Image

Note: You can cut headers from already converted textures, or use the ones I have created so far (attached).

Step 4. Merging DX10 DDS header with swatchbin chunk:
Easiest way to do it is use of Total or Double Commander.
You need to copy header and chunk to same place and with same name, for example "1.dds", then select "Append" instead of default "Overwrite":
Image
Checking result:
Image
Works :)


Of course it's better to use original names instead of "1.dds" in example, also you can make copies of header for all swatchbins with same dimensions, easiest way to find them is sorting by size:
Image
So, we have 27 files in sum with same size and, probably, same dimensions, time to make chunks (and check dimensions for sureness), this time saving with only "s" in extension for speed up process.
And our winner is!.. for_gauges_001_glos_7947570d-f283-4420-97b5-99398bf36ff4.swatchbin because it have a sligtly smaller size and it's a reason to tune file sizes appearance in Commander:
Image
Have skipped one file for now and the result is:
Image
Lots of "s" chunk files :)
Now we need a copies of DDS header, select one we have, press Ctrl+C, then Ctrl+V 25 times :)
Image
Next step is renaming copies of DDS headers by copying swatchbin (or chunk) names and pasting to DDS header names:
Image
(lots of moving selector to file, F2, Ctrl+Insert, move to another file, F2, Shift+Insert and repeat :))
Now we append chunk files to dds files, we only need to delete file extension in copy dialogue window and .dds will pop up as suggested name:
Image

I'll upload those gauges textures after conversion is finished, stay tuned :)
You do not have the required permissions to view the files attached to this post.
Last edited by Andrakann on Sun Feb 05, 2017 4:54 pm, edited 2 times in total.
minime891
advanced
Posts: 62
Joined: Sat Apr 10, 2010 7:43 pm
Has thanked: 24 times
Been thanked: 33 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by minime891 »

Thanks, very clear instructions.
Image
User avatar
Andrakann
ultra-veteran
ultra-veteran
Posts: 392
Joined: Wed Jul 06, 2011 8:47 am
Location: Russia
Has thanked: 967 times
Been thanked: 192 times
Contact:

Re: Forza Motorsport Resource Extraction (.carbin)

Post by Andrakann »

Converted gauges, thanks to minime891 for original files: https://yadi.sk/d/TG8mZx493AfwJB
aliann34
beginner
Posts: 34
Joined: Wed Dec 07, 2016 1:05 pm
Has thanked: 53 times
Been thanked: 4 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by aliann34 »

I was really happy when I saw this progress Thank you very much Seriously you are wonderful.
nick22savino
beginner
Posts: 23
Joined: Sun Jan 22, 2017 4:03 pm
Has thanked: 5 times
Been thanked: 6 times

Re: Forza Motorsport Resource Extraction (.carbin)

Post by nick22savino »

does someone have the RR wraith for me the doors only? cause the file is corupted from gamemodels sadly :/
User avatar
Andrakann
ultra-veteran
ultra-veteran
Posts: 392
Joined: Wed Jul 06, 2011 8:47 am
Location: Russia
Has thanked: 967 times
Been thanked: 192 times
Contact:

Re: Forza Motorsport Resource Extraction (.carbin)

Post by Andrakann »

nick22savino wrote:does someone have the RR wraith for me the doors only? cause the file is corupted from gamemodels sadly :/
Dev version here. Btw, no visible difference with dumped one from GM, according to filesizes. Maybe it's wrong reading of data for doors, not corrupted file.
Post Reply