XeNTaX Forum Index
Forum MultiEx Commander Tools Tools Home
It is currently Tue Dec 18, 2018 11:43 am

All times are UTC + 1 hour


Forum rules


Please click here to view the forum rules



Post new topic Reply to topic  [ 29 posts ]  Go to page Previous  1, 2
Author Message
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sun Jun 16, 2013 9:40 pm 
Offline
veteran

Joined: Sun Jul 24, 2011 12:30 am
Posts: 86
Has thanked: 3 times
Have thanks: 3 times














You can make the ads go away by registering

Hmm, each file seems to have slightly different offsets, i wonder if finding a common offset for each part might be worth a try?


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sun Jun 30, 2013 5:56 pm 
Offline
veteran

Joined: Sun Jul 24, 2011 12:30 am
Posts: 86
Has thanked: 3 times
Have thanks: 3 times
well after repeated attempts, ive come up short... i know that the different sectors of the file are in roughly the same place, but i cant seem to find a common offset, can someone please tell me if the python script allows for multiple offsets or if theres a way to set it up to use a common offset?


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sat Aug 31, 2013 12:48 am 
Offline
mega-veteran
mega-veteran

Joined: Sat Jan 09, 2010 9:37 pm
Posts: 190
Has thanked: 8 times
Have thanks: 59 times
Here is a script that will convert the meshes from the .VBIN, and .BIN files (You can save time by running the script on the entire decompressed zipped file, so that the script converts all the meshes at once)
Here is an example of a character mesh (some type of car):
[img]ps23dformat.wikispaces.com/file/view/TransformersBot.jpg[/img]
New (August 2013) Script for Characters:
http://ps23dformat.wikispaces.com/file/view/TransformersVBINbinMeshTo3ds.bms

Code:
log MEMORY_FILE 0 0 ;
log MEMORY_FILE2 0 0 ;
log MEMORY_FILE3 0 0 ;
log MEMORY_FILE4 0 0 ;
log MEMORY_FILE5 0 0 ;
log MEMORY_FILE6 0 0 ;
log MEMORY_FILE7 0 0 ;
log MEMORY_FILE8 0 0 ;
log MEMORY_FILE9 0 0 ;
log MEMORY_FILE10 0 0 ;
Get Q ASIZE 0 ;
Math number = 0 ;
For T = 0 < Q ;
Math number += 1 ;
findloc OFFSET string "\x7E\x50\x6F\x73\x69\x74\x69\x6F\x6E\x41\x72\x72\x61\x79\x00\x00" 0 0 ;
If OFFSET = 0 ;
Math T = Q ;
Math T += 1 ;
Math ttest = 0 ;
ELSE ;
GoTo OFFSET 0 ;
SavePos Start 0 ;
Put Start Long MEMORY_FILE4 ;
GoTo OFFSET 0 ;
GoTo 0x08 0 SEEK_CUR ;
Get size Long 0 ;
SavePos null 0 ;
EndIF ;
Next T ;
Put Q Long MEMORY_FILE4 ;


Get listf ASIZE MEMORY_FILE4 ;
If listf = 0 ;
CleanExit ;
EndIF ;
Math spyrodragon = listf ;
Math spyrodragon /= 4 ;
Math spyrodragon -= 1 ;
Math rubyfox = 0 ;
Math diafox = 0 ;
Math rfv = 0 ;
For Y = 1 To spyrodragon ;
log MEMORY_FILE7 0 0 ;
log MEMORY_FILE8 0 0 ;
log MEMORY_FILE1 0 0 ;
log MEMORY_FILE2 0 0 ;
log MEMORY_FILE3 0 0 ;
GoTo rubyfox MEMORY_FILE4 ;
Get start Long MEMORY_FILE4 ;
SavePos rubyfox MEMORY_FILE4 ;
Get size Long MEMORY_FILE4 ;
Math size -= start ;
Log MEMORY_FILE7 start size 0 ;
GoTo 0 MEMORY_FILE7 ;
Math count = 0 ;
Math gt = 0 ;
Math Qprime = 0 ;
Math red = 0 ;
SavePos found MEMORY_FILE7 ;
GoTo 0 MEMORY_FILE7 ;
GoTo 0x10 MEMORY_FILE7 SEEK_CUR ;
Get gee Long MEMORY_FILE7 ;
SavePos gvertex MEMORY_FILE7 ;
Math gee -= 4 ;
Math gee /= 12 ;
Math deedee = 0 ;
For dv = 1 To gee ;
GoTo gvertex MEMORY_FILE7 ;
Get Type1 Long MEMORY_FILE7 ;
Get Type2 Long MEMORY_FILE7 ;
Get Type3 Long MEMORY_FILE7 ;
SavePos gvertex MEMORY_FILE7 ;
GoTo deedee MEMORY_FILE2 ;
Put Type1 Long MEMORY_FILE2 ;
Put Type2 Long MEMORY_FILE2 ;
Put Type3 Long MEMORY_FILE2 ;
SavePos deedee MEMORY_FILE2 ;
Next dv ;





For T = 0 < size ;
GoTo found MEMORY_FILE7 ;
findloc OFFSETT string "\x7E\x49\x6E\x64\x65\x78\x41\x72\x72\x61\x79\x00\x00" MEMORY_FILE7 0 ;
If OFFSETT = 0 ;
Math T = size ;
Math twotest = 1 ;
EndIF ;
If OFFSETT != 0 ;
GoTo OFFSETT MEMORY_FILE7 ;
GoTo 13 MEMORY_FILE7 SEEK_CUR ;
SavePos found MEMORY_FILE7 ;
Put found Long MEMORY_FILE1 ;
EndIF ;
Next T ;
Get mqa ASIZE MEMORY_FILE1 ;
Math mqa /= 4 ;
Math greenfox = 0 ;
For jjj = 1 To mqa ;
GoTo gt MEMORY_FILE1 ;
Get found long MEMORY_FILE1 ;
SavePos gt MEMORY_FILE1 ;
GoTo found MEMORY_FILE7 ;
Get scope Long MEMORY_FILE7 ;
SavePos baseface MEMORY_FILE7 ;
Math foxskin = found ;
Math foxskin += scope ;
Math dragonfox = scope ;
Math dragonfox -= 4 ;
Math dragonfox /= 2 ;
Math dragonfox -= 2 ;
Do ;
GoTo baseface MEMORY_FILE7 ;
Get facecount Short MEMORY_FILE7 ;
SavePos basedeer MEMORY_FILE7 ;
Math redfox = facecount ;
Math redfox *= 2 ;
Math redfox += basedeer ;
Math baseface = redfox ;
Math rfc = facecount ;
Math rfc -= 2 ;
Math kin = rfc ;
Math gng = facecount ;
Math gng *= 2 ;
Math gng += basedeer ;
Math traptiger = 0 ;
Math nogo = 1 ;
If gng > foxskin ;
Math greenfox = 0 ;
log MEMORY_FILE3 0 0 ;
Math traptiger = 1 ;
Math rfc = 0 ;
Math baseface = foxskin ;
GoTo found MEMORY_FILE7 ;
Get null Long MEMORY_FILE7 ;
SavePos basedeer MEMORY_FILE7 ;



EndIF ;




For grayfox = 1 To traptiger ;
For extra = 1 To dragonfox ;
GoTo basedeer MEMORY_FILE7 ;
Get Type1 Short MEMORY_FILE7 ;
SavePos basedeer MEMORY_FILE7 ;
Get Type3 Short MEMORY_FILE7 ;
Get Type5 Short MEMORY_FILE7 ;

Math dragontest = 0 ;
If Type1 = Type3 ;
Math dragontest += 1 ;
EndIF ;

If Type1 = Type5 ;
Math dragontest += 1 ;
EndIF ;

If Type3 = Type5 ;
Math dragontest += 1 ;
EndIF ;


If dragontest = 0 ;
GoTo greenfox MEMORY_FILE3 ;
Put Type1 Short MEMORY_FILE3 ;
Put Type3 Short MEMORY_FILE3 ;
Put Type5 Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;
SavePos greenfox MEMORY_FILE3 ;


GoTo greenfox MEMORY_FILE3 ;
Put Type1 Short MEMORY_FILE3 ;
Put Type5 Short MEMORY_FILE3 ;
Put Type3 Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;
SavePos greenfox MEMORY_FILE3 ;
EndIF ;
Next extra ;
Next grayfox ;














For foxes = 1 To rfc ;
GoTo basedeer MEMORY_FILE7 ;
Get Type1 Short MEMORY_FILE7 ;
SavePos basedeer MEMORY_FILE7 ;
Get Type3 Short MEMORY_FILE7 ;
Get Type5 Short MEMORY_FILE7 ;

Math dragontest = 0 ;
If Type1 = Type3 ;
Math dragontest += 1 ;
EndIF ;

If Type1 = Type5 ;
Math dragontest += 1 ;
EndIF ;

If Type3 = Type5 ;
Math dragontest += 1 ;
EndIF ;


If dragontest = 0 ;
GoTo greenfox MEMORY_FILE3 ;
Put Type1 Short MEMORY_FILE3 ;
Put Type3 Short MEMORY_FILE3 ;
Put Type5 Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;
SavePos greenfox MEMORY_FILE3 ;


GoTo greenfox MEMORY_FILE3 ;
Put Type1 Short MEMORY_FILE3 ;
Put Type5 Short MEMORY_FILE3 ;
Put Type3 Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;
SavePos greenfox MEMORY_FILE3 ;
EndIF ;
Next foxes ;
While baseface < foxskin ;




Next jjj ;














Get Zw3 ASIZE MEMORY_FILE3 ;
Math Zf3 = Zw3 ;
Math Zf3 /= 8 ;
Get Zw2 ASIZE MEMORY_FILE2 ;
Math Zf2 = Zw2 ;
Math Zf2 /= 12 ;
Math FaceNumber = Zf3 ;
Math VertexNumber = Zf2 ;
Math Snake = VertexNumber ;
Math Snake *= 12 ;
Math Dragon = FaceNumber ;
Math Dragon *= 8 ;
Math Sum = Dragon ;
Math Sum += Snake ;
Math QQQ = 60 ;
Math QQQ += Snake ;
Math QQ = 52 ;
Math qaz = 0 ;
Math wsx = 0 ;
Math hqw = Sum ;
Math hqw += 60 ;
Math bearit = 0 ;
Log MEMORY_FILE8 0 0 ;
For bear = 1 To hqw ;
GoTo bearit MEMORY_FILE8 ;
Put 0 Byte MEMORY_FILE8 ;
SavePos bearit MEMORY_FILE8 ;
Next bear ;


For Vertex = 0 < Zw2 ;
GoTo qaz MEMORY_FILE2 ;
Get D byte MEMORY_FILE2 ;
SavePos qaz MEMORY_FILE2 ;
GoTo QQ MEMORY_FILE8 ;
Put D Byte MEMORY_FILE8 ;
SavePos QQ MEMORY_FILE8 ;
Next Vertex ;
For Face = 0 < Zw3 ;
GoTo wsx MEMORY_FILE3 ;
Get D byte MEMORY_FILE3 ;
SavePos wsx MEMORY_FILE3 ;
GoTo QQQ MEMORY_FILE8 ;
Put D Byte MEMORY_FILE8 ;
SavePos QQQ MEMORY_FILE8 ;
Next Face ;
GoTo 0 MEMORY_FILE8 ;
set M Byte 0x4D ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x4D ;
Put M Byte MEMORY_FILE8 ;
Math M = Sum ;
Math M += 60 ;
Put M Long MEMORY_FILE8 ;
set M Byte 0x02 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x0A ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x03 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x3D ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x3D ;
Put M Byte MEMORY_FILE8 ;
Math M = Sum
Math M += 44 ;
Put M Long MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x40 ;
Put M Byte MEMORY_FILE8 ;
Math M = Sum
Math M += 38 ;
Put M Long MEMORY_FILE8 ;
set M Byte 0x64 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x72 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x61 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x67 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x6F ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x6E ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x6A ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x61 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x6E ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE8 ;
Math M = Sum
Math M += 22 ;
Put M Long MEMORY_FILE8 ;
Set M Byte 0x10 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE8 ;
Math M = Snake ;
Math M += 8 ;
Put M Long MEMORY_FILE8 ;
Math M = VertexNumber ;
Put M Short MEMORY_FILE8 ;
Math JumpJump = Snake ;
Math JumpJump += 52 ;
GoTo JumpJump MEMORY_FILE8 ;
set M Byte 0x20 ;
Put M Byte MEMORY_FILE8 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE8 ;
Math M = FaceNumber ;
Math M *= 8 ;
Math M += 8 ;
Put M Long MEMORY_FILE8 ;
Math M = FaceNumber ;
Put M Short MEMORY_FILE8 ;
Get purpledragon ASIZE MEMORY_FILE8 ;
Get name FILENAME 0 ;
string name += . ;
string name += Y ;
string name += .3ds ;
Log name 0 purpledragon MEMORY_FILE8 ;
Next Y ;

_________________
I accept ALL requests. Let me know your requests.


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sat Aug 31, 2013 12:58 am 
Offline
veteran

Joined: Sun Jul 24, 2011 12:30 am
Posts: 86
Has thanked: 3 times
Have thanks: 3 times
Thx for the new script, the version of this i had only did level geometry, now if only we could convert the ITF files....

I've done some tests and they really need to adjust that script so that it gets the models in t-pose and doesnt split it into seperate .3ds files which all default to pos 0, 0, 0.


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sat Jul 01, 2017 8:23 pm 
Offline
ultra-n00b

Joined: Wed Sep 07, 2016 1:57 pm
Posts: 4
Has thanked: 0 time
Have thanks: 0 time
Did someone understand how to convert .itf texture file?


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Mon Feb 19, 2018 7:32 pm 
Offline
advanced

Joined: Mon Jul 23, 2012 2:02 am
Posts: 48
Has thanked: 1 time
Have thanks: 2 times
Anyone got the other bms for extract the main bin files. Ty. Also not convert persay but you can get at the textures using Textool fairly easy then apply them to the converted models all the same.


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sun Feb 25, 2018 3:23 am 
Offline
VIP member
VIP member
User avatar

Joined: Wed Nov 05, 2008 12:16 pm
Posts: 1125
Has thanked: 2264 times
Have thanks: 638 times
flarespire wrote:


:D


Attachments:


You do not have the required permissions to view the files attached to this post. Register to gain access.


_________________
Noesis
Hex2obj
QuickBMS
Asset Studio
TextureFinder


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sun Feb 25, 2018 4:01 pm 
Offline
veteran

Joined: Sun Jul 24, 2011 12:30 am
Posts: 86
Has thanked: 3 times
Have thanks: 3 times
Now, mind providing a mirror to that program? it doesn't seem to be available anywhere


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sun Feb 25, 2018 4:38 pm 
Offline
VIP member
VIP member
User avatar

Joined: Wed Nov 05, 2008 12:16 pm
Posts: 1125
Has thanked: 2264 times
Have thanks: 638 times
i remember posting this here before but here is link to the link :D
viewtopic.php?p=127912#p127912

if you post more samples i might could make a Noesis python script to automate the process. (:

_________________
Noesis
Hex2obj
QuickBMS
Asset Studio
TextureFinder


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Mon Feb 26, 2018 4:15 pm 
Offline
advanced

Joined: Mon Jul 23, 2012 2:02 am
Posts: 48
Has thanked: 1 time
Have thanks: 2 times
Another method is the Texmod way. That way you can select and see exactly what textures go where and it automatically converts them to more flexible format.


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Tue Feb 27, 2018 4:45 am 
Offline
veteran

Joined: Sun Jul 24, 2011 12:30 am
Posts: 86
Has thanked: 3 times
Have thanks: 3 times
oh nice, I still have the ENTIRE disc extractedif you need ITF samples I can make you a package of em, also, any chance of combining it with whats in the BMS script earlier in the thread to make it so Noesis can view the models with the textures?


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Fri Mar 02, 2018 6:19 am 
Offline
advanced

Joined: Mon Jul 23, 2012 2:02 am
Posts: 48
Has thanked: 1 time
Have thanks: 2 times
Say it before and will again this is such an awesome community, people behave the way community members should and with equal mindfulness. TY to anyone who has and will help me with requests. Side note someone should try and put together a depot of the lost files from the PS2 site. I dunno about anyone else but it was sudden on my end, I was on the site then went on a vacation trip and came back to the empty stub bookmark. There were way too many useful things there to lose spontaneously.


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Sat Mar 10, 2018 8:20 pm 
Offline
veteran

Joined: Sun Jul 24, 2011 12:30 am
Posts: 86
Has thanked: 3 times
Have thanks: 3 times
ok I have a full file repo .zip for this game set up if anyone wants to take a better look at the formats and maybe write a plugin, ill post the link here, however, if this post does get chopped by the mod axe, please send me a PM for the link: https://drive.google.com/open?id=124xZq ... 7cLNiv3rrC


Top
 Profile  
 
 Post subject: Re: [REQUEST] Transformers 2004 .VBIN and . ITF (PS2)
PostPosted: Tue Jul 31, 2018 3:05 pm 
Offline
ultra-n00b

Joined: Tue Jul 31, 2018 1:35 pm
Posts: 1
Has thanked: 2 times
Have thanks: 0 time
Hi guys, new member here, and slight bump to the thread!

Editing my previous post, I've been able to use Console Texture Explorer to recreate a good chunk of the background files from the retail game and a recently uncovered early version, which are stored as ITF Texture files.

There's a few that I'm stuck on, and it'd be great to get a better understanding of how CTE actually reads the files for reconstruction.

So, using file size as a starting point, I recognise that I can't recreate data outside of the file size limit, instead using the Graphics Offset to make up the limit, as well altering the BPP. All the files so far have fallen under Palette Offset of 60, as noted earlier in the thread. There's two file sets so far that seem to be exceptions to the rule.

The First has a file size of 786492, which using CTE, seems to be outside of workable range to achieve the correct dimensions. Secondly the Palette offset for this and another file are not the standard 60. So, how would I be able to determine the appropriate offset in these case? Would Notepad++ or a Hex Editor help to determine the offset?


Attachments:


You do not have the required permissions to view the files attached to this post. Register to gain access.



Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 29 posts ]  Go to page Previous  1, 2

All times are UTC + 1 hour


Who is online

Users browsing this forum: amspych and 10 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group