Help us keep the site up! Got some change to spare? Why not donate a few bits and buy us a coffee. Image

God of War 3 Mesh fix

Post questions about game models here, or help out others!
Post Reply
luxox18
mega-veteran
mega-veteran
Posts: 176
Joined: Fri Jul 29, 2011 9:18 pm
Has thanked: 54 times
Been thanked: 43 times

God of War 3 Mesh fix

Post by luxox18 »

In ps23dformat.wikispaces.com there are some bms script written by "3dmodel" for extract models from different ps2/ps3 games.

There are two scripts for god of war 3 , one for unpack the WAD files and the other for convert the WAD file directly to 3DS, but all surfaces are damaged and the models don't have uv cords

Image

someone can fix the script for obtain perfect surfaces?

here are two WAD files:

http://www.mediafire.com/download/25cuy ... PS3_BE.rar

this is the script for extract 3d meshes:

Code: Select all

log MEMORY_FILE1 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 ;
Get Q ASIZE 0 ;
Math number = 0 ;
For T = 0 < Q ;
Math number += 1 ;
findloc OFFSET string "\xFF\xFF\xFF\x9C\x00\x00\x00\x00\xFF\xFF\xFF\x54\x00\x20\x00\x00\x00\x40" 0 0 ;
Math cctest = 278 ;
If OFFSET = 0 ;
Math T = Q ;
Math T += 1 ;
EndIF ;
If OFFSET != 0 ;
GoTo OFFSET 0 ;
SavePos start 0 ;
GoTo 11 0 SEEK_CUR ;
Get cctest Byte 0 ;
Put start Long MEMORY_FILE4 ;
EndIF ;
Next T ;
Get ssk ASIZE MEMORY_FILE4 ;
Math ssk /= 4 ;
Math deersun = 0 ;
For qmk = 1 To ssk ;
GoTo deersun MEMORY_FILE4 ;
Get deerstart Long MEMORY_FILE4 ;
SavePos deersun MEMORY_FILE4 ;
log MEMORY_FILE1 0 0 ;
log MEMORY_FILE2 0 0 ;
log MEMORY_FILE3 0 0 ;
log MEMORY_FILE5 0 0 ;
log MEMORY_FILE6 0 0 ;
Math Qprime = 0 ;
Math Qprimeprime = 0 ;
Math Qer = 0 ;
Math GG = 0 ;
Math YFYF = 0 ;
Math deerstart -= 0x40 ;

GoTo deerstart 0 ;
GoTo 0x4 0 SEEK_CUR ;
Get cvertex1 Byte 0 ;
Get cvertex2 Byte 0 ;




Math cvertex1 *= 256 ;
Math cvertex1 += cvertex2 ;








Math VertexNumber = cvertex1 ;











GoTo deerstart 0 ;
GoTo 0x1C 0 SEEK_CUR ;
Get tto11 Byte 0 ;
Get tto22 Byte 0 ;
Get tto33 Byte 0 ;
Get tto44 Byte 0 ;
Math tto11 *= 16777216 ;
Math tto22 *= 65536 ;
Math tto33 *= 256 ;
Math tto55 = tto11 ;
Math tto55 += tto22 ;
Math tto55 += tto33 ;
Math tto55 += tto44 ;
Math qdeer = tto55 ;
Math qdeer += deerstart ;
Math qdeer += 0x1C ;
For vcx = 1 To VertexNumber ;
GoTo qdeer 0 ;
Get Type4 Byte 0 ;
Get Type3 Byte 0 ;
Get Type2 Byte 0 ;
Get Type1 Byte 0 ;
Get Type8 Byte 0 ;
Get Type7 Byte 0 ;
Get Type6 Byte 0 ;
Get Type5 Byte 0 ;
Get Type12 Byte 0 ;
Get Type11 Byte 0 ;
Get Type10 Byte 0 ;
Get Type9 Byte 0 ;
GoTo 12 0 SEEK_CUR ;
SavePos qdeer 0 ;
GoTo Qer MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
Put 0 Byte MEMORY_FILE6 ;
SavePos Qer MEMORY_FILE6 ;
GoTo Qprime MEMORY_FILE2 ;
Put Type1 Byte MEMORY_FILE2 ;
Put Type2 Byte MEMORY_FILE2 ;
Put Type3 Byte MEMORY_FILE2 ;
Put Type4 Byte MEMORY_FILE2 ;
Put Type5 Byte MEMORY_FILE2 ;
Put Type6 Byte MEMORY_FILE2 ;
Put Type7 Byte MEMORY_FILE2 ;
Put Type8 Byte MEMORY_FILE2 ;
Put Type9 Byte MEMORY_FILE2 ;
Put Type10 Byte MEMORY_FILE2 ;
Put Type11 Byte MEMORY_FILE2 ;
Put Type12 Byte MEMORY_FILE2 ;
SavePos Qprime MEMORY_FILE2 ;
Next vcx ;






Math vik = VertexNumber ;
Math vik -= 3 ;

For fff = 0 To vik ;

Math fafter = fff ;
Math fafter += 1 ;
Math fafterafter = fff ;
Math fafterafter += 2 ;
GoTo YFYF MEMORY_FILE3 ;
Put fff Short MEMORY_FILE3 ;
Put fafter Short MEMORY_FILE3 ;
Put fafterafter Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;

Put fff Short MEMORY_FILE3 ;
Put fafterafter Short MEMORY_FILE3 ;
Put fafter Short MEMORY_FILE3 ;
Put 0 Short MEMORY_FILE3 ;
SavePos YFYF MEMORY_FILE3 ;
Next fff ;













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 lion = vertexnumber ;
Math lion *= 0x14 ;
Math liger = facenumber ;
Math liger *= 0xa ;
Math total3ds = lion ;
Math total3ds += liger ;
Math total3ds += 0x89 ;
Math total1 = total3ds ;
Math total1 -= 0x10 ;
Math total2 = total3ds ;
Math total2 -= 0x54 ;
Math total3 = total3ds ;
Math total3 -= 0x5E ;
Math vertexbase = 0x6c ;
Math WHEREvertex = vertexbase ;
Math tigervertex = vertexnumber ;
Math tigervertex *= 0xc ;
Math facebase1 = vertexbase ;
Math facebase1 += tigervertex ;
Math tigerface = facenumber ;
Math tigerface *= 0x8 ;
Math tigertigerface = facenumber ;
Math tigertigerface *= 0xa ;
Math facebase2 = facebase1 ;
Math facebase2 += 0x8 ;
Math WHEREface = facebase2 ;
Math facebase3 = facebase2 ;
Math facebase3 += tigerface ;
Math tigertigertigerface = facenumber ;
Math tigertigertigerface *= 0x2 ;
Math weretiger = tigertigerface ;
Math weretiger += 0x15 ;
Math tiger1 = tigervertex ;
Math tiger1 += 0x8 ;
Math tiger4 = tigertigertigerface ;
Math tiger4 += 0xd ;
Math WHEREfacecount = facebase3 ;
Math WHEREfacecount += 0xd ;
Math uvbase = WHEREfacecount ;
Math uvbase += tigertigertigerface ;
Math tigon = tigerface ;
Math tigon += 0x8 ;
Math WHEREuv = uvbase ;
Math WHEREuv += 0x8 ;
Math WHEREvertexq = WHEREvertex ;
Math WHEREuvq = WHEREuv ;
Math WHEREfaceq = WHEREface ;
Math WHEREfacecountq = WHEREfacecount ;
log MEMORY_FILE1 0 total3ds ;
Math vertexstart = 0 ;
Math facestart = 0 ;
Math uvstart = 0 ;


set M Byte 0x4d ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x4d ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xed ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x22 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x01 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x02 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x0a ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x03 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x3d ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x3d ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xdd ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x22 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x01 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xff ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xaf ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x3e ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xa0 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x0b ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x4e ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x6f ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x6e ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x65 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x10 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xa0 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x0f ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x11 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x09 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x20 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xa0 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x0f ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x11 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x09 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xcc ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xcc ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xcc ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x30 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xa0 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x0f ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x11 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x09 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xff ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xff ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0xff ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x40 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x99 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x22 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x01 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x64 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x69 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x6x ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x8f ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x22 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x01 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x10 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x64 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x67 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x00 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x9d ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x08 ;
Put M Byte MEMORY_FILE1 ;
GoTo 0x2 MEMORY_FILE1 ;
Put total3ds Long MEMORY_FILE1 ;
GoTo 0x12 MEMORY_FILE1 ;
Put total1 Long MEMORY_FILE1 ;
GoTo 0x56 MEMORY_FILE1 ;
Put total2 Long MEMORY_FILE1 ;
GoTo 0x60 MEMORY_FILE1 ;
Put total3 Long MEMORY_FILE1 ;
GoTo 0x66 MEMORY_FILE1 ;
Put tiger1 Long MEMORY_FILE1 ;
GoTo 0x6A MEMORY_FILE1 ;
Put vertexnumber Short MEMORY_FILE1 ;
GoTo facebase1 MEMORY_FILE1 ;
set M Byte 0x20 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE1 ;
Put weretiger Long MEMORY_FILE1 ;
Put facenumber Short MEMORY_FILE1 ;
GoTo facebase3 MEMORY_FILE1 ;
set M Byte 0x30 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE1 ;
Put tiger4 Long MEMORY_FILE1 ;
set M Byte 0x4e ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x6f ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x6e ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x65 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x0 ;
Put M Byte MEMORY_FILE1 ;
Put facenumber Short MEMORY_FILE1 ;
GoTo uvbase MEMORY_FILE1 ;
set M Byte 0x40 ;
Put M Byte MEMORY_FILE1 ;
set M Byte 0x41 ;
Put M Byte MEMORY_FILE1 ;
Put tigon Long MEMORY_FILE1 ;
Put vertexnumber Short MEMORY_FILE1 ;
For vwolf = 1 To vertexnumber ;
GoTo vertexstart MEMORY_FILE2 ;
Get Type1 Long MEMORY_FILE2 ;
Get Type2 Long MEMORY_FILE2 ;
Get Type3 Long MEMORY_FILE2 ;
SavePos vertexstart MEMORY_FILE2 ;
GoTo WHEREvertexq MEMORY_FILE1 ;
Put Type1 Long MEMORY_FILE1 ;
Put Type2 Long MEMORY_FILE1 ;
Put Type3 Long MEMORY_FILE1 ;
SavePos WHEREvertexq MEMORY_FILE1 ;
Next vwolf ;
For fwolf = 1 To facenumber ;
GoTo facestart MEMORY_FILE3 ;
Get Type1 short MEMORY_FILE3 ;
Get Type2 short MEMORY_FILE3 ;
Get Type3 short MEMORY_FILE3 ;
Get Type4 short MEMORY_FILE3 ;
SavePos facestart MEMORY_FILE3 ;
GoTo WHEREfaceq MEMORY_FILE1 ;
Put Type1 short MEMORY_FILE1 ;
Put Type2 short MEMORY_FILE1 ;
Put Type3 short MEMORY_FILE1 ;
Put Type4 short MEMORY_FILE1 ;
SavePos WHEREfaceq MEMORY_FILE1 ;
Next fwolf ;
For uvwolf = 1 To vertexnumber ;
GoTo uvstart MEMORY_FILE6 ;
Get Type1 Long MEMORY_FILE6 ;
Get Type2 Long MEMORY_FILE6 ;
SavePos uvstart MEMORY_FILE6 ;
GoTo WHEREuvq MEMORY_FILE1 ;
Put Type1 Long MEMORY_FILE1 ;
Put Type2 Long MEMORY_FILE1 ;
SavePos WHEREuvq MEMORY_FILE1 ;
Next uvwolf ;
For fcwolf = 0 < facenumber ;
GoTo WHEREfacecountq MEMORY_FILE1 ;
Put fcwolf short MEMORY_FILE1 ;
SavePos WHEREfacecountq MEMORY_FILE1 ;
Next fcwolf ;
Get purpledragon ASIZE MEMORY_FILE1 ;
Get name FILENAME 0 ;
string name += . ;
string name += qmk ;
string name += .3ds ;
Log name 0 purpledragon MEMORY_FILE1 ;
Next qmk ;
here is the script for extract files WAD files:

Code: Select all

Endian big ;
Get max ASIZE 0 ;
GoTo 0 0 ;
SavePos start 0 ;
Do ;
GoTo start 0 ;
SavePos x 0 ;
Get d Long 0 ;
Get size Long 0 ;
Get name String 0 ;
GoTo start 0 ;
GoTo size 0 SEEK_CUR ;
GoTo 0x40 0 SEEK_CUR ;
Padding 0x10 ;
SavePos y 0 ;
Math start = y ;
Math y -= x ;
Log name x y 0 ;
While start < max ;
thanks :D
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4131
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1123 times
Been thanked: 2150 times

Re: God of War 3 Mesh fix

Post by shakotay2 »

luxox18 wrote:this is the script for extract 3d meshes:
to be honest: I never would waste my lifetime with trying to understand such horrible unstructured script. Even the indents are missing...
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
Some things will never change. [roll]
"You quoted the whole thing, what a mess."
Yuredacy2311
beginner
Posts: 34
Joined: Wed Aug 31, 2011 1:36 am
Has thanked: 6 times
Been thanked: 1 time

Re: God of War 3 Mesh fix

Post by Yuredacy2311 »

I also just know about those 2 scripts some days ago, but i really hope someone can help us fix the scripts, i can even pay for them if they could do that. Getting the models in GOW 3 always a target that everyone have.
Thanks if someone can help .
Yuredacy2311
beginner
Posts: 34
Joined: Wed Aug 31, 2011 1:36 am
Has thanked: 6 times
Been thanked: 1 time

Re: God of War 3 Mesh fix

Post by Yuredacy2311 »

Offer 40$ send via Paypal for someone can help complete those script and get the model/textures in the game.
User avatar
TaylorMouse
ultra-veteran
ultra-veteran
Posts: 340
Joined: Mon Sep 26, 2011 12:51 pm
Has thanked: 11 times
Been thanked: 84 times

Re: God of War 3 Mesh fix

Post by TaylorMouse »

shakotay2 wrote:to be honest: I never would waste my lifetime with trying to understand such horrible unstructured script. Even the indents are missing...
LOL

What language is that anyway ?

T.
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4131
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1123 times
Been thanked: 2150 times

Re: God of War 3 Mesh fix

Post by shakotay2 »

it's quickbms. Very good for archive extractions. But not best choice for model conversions.
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
Some things will never change. [roll]
"You quoted the whole thing, what a mess."
User avatar
TaylorMouse
ultra-veteran
ultra-veteran
Posts: 340
Joined: Mon Sep 26, 2011 12:51 pm
Has thanked: 11 times
Been thanked: 84 times

Re: God of War 3 Mesh fix

Post by TaylorMouse »

Oh, ok, so the last part (extracting the WAD file) is a good one :)

T.
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4131
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1123 times
Been thanked: 2150 times

Re: God of War 3 Mesh fix

Post by shakotay2 »

I would say so. :)

As for the model extraction script: doesn't make sense to mess around with it, imho.
("mess around"= "try to improve it" - anyway you may use it to extract *.3ds files)

As i wrote in 2 or three answer PMs to some guys it would make more sense to just use the vertices without the weird faceindices and try to figure out the triangles manually.

But there was no reply.

Anyway here's an example of a harpy's claw fingers:
Image

iirc there was a resorting of face indices after reexporting the reduced mesh so I failed to fix them.
If I have some spare time I might give it another try.

If anyone could provide a simple model like a box, a chest, a book or something like that it might be easier.
(I tried R_BOX00.WAD but I couldn't find a box in it.)
Last edited by shakotay2 on Mon Dec 23, 2013 1:55 pm, edited 1 time in total.
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
Some things will never change. [roll]
"You quoted the whole thing, what a mess."
User avatar
TaylorMouse
ultra-veteran
ultra-veteran
Posts: 340
Joined: Mon Sep 26, 2011 12:51 pm
Has thanked: 11 times
Been thanked: 84 times

Re: God of War 3 Mesh fix

Post by TaylorMouse »

Btw, I used the last script to extract the content of the wad file, but the dds files are not really dds files, nothing I get to view correctly, and which is the 3D model file? since there are like 700 files.... :/

T.
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4131
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1123 times
Been thanked: 2150 times

Re: God of War 3 Mesh fix

Post by shakotay2 »

try one of the big files (>100kB)

btw: I made a correction to my previous post. You may use the badly structured script to extract *.3ds files.
(I didn't mean it does not work, it's just hard to understand.)
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
Some things will never change. [roll]
"You quoted the whole thing, what a mess."
Yuredacy2311
beginner
Posts: 34
Joined: Wed Aug 31, 2011 1:36 am
Has thanked: 6 times
Been thanked: 1 time

Re: God of War 3 Mesh fix

Post by Yuredacy2311 »

Someone please accept 40$ and help us ~,~
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4131
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1123 times
Been thanked: 2150 times

Re: God of War 3 Mesh fix

Post by shakotay2 »

Yuredacy2311 wrote:Someone please accept 40$ and help us ~,~
Please stop offering money before this thread turns out to become another Girl hentai super blast thread. :D

(Sooner or later someone will work out the correct face indices, I'm sure.)

edit: for the dds fake a DXT1 header (like I wrote here:viewtopic.php?f=10&t=11041&p=90969#p90969)
Image
fake_dds.jpg
(Some contain DXT5, so an DXT5 header will be required, of course.)
You do not have the required permissions to view the files attached to this post.
Last edited by shakotay2 on Mon Jun 12, 2017 9:01 pm, edited 1 time in total.
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
Some things will never change. [roll]
"You quoted the whole thing, what a mess."
Ares722
veteran
Posts: 154
Joined: Thu Jul 15, 2010 2:15 pm
Has thanked: 25 times
Been thanked: 9 times

Re: God of War 3 Mesh fix

Post by Ares722 »

shakotay2 wrote:I would say so. :)

As for the model extraction script: doesn't make sense to mess around with it, imho.
("mess around"= "try to improve it" - anyway you may use it to extract *.3ds files)

As i wrote in 2 or three answer PMs to some guys it would make more sense to just use the vertices without the weird faceindices and try to figure out the triangles manually.

But there was no reply.

Anyway here's an example of a harpy's claw fingers:
Image

iirc there was a resorting of face indices after reexporting the reduced mesh so I failed to fix them.
If I have some spare time I might give it another try.

If anyone could provide a simple model like a box, a chest, a book or something like that it might be easier.
(I tried R_BOX00.WAD but I couldn't find a box in it.)
I have to apologise with u [roll] , unfortunately i'm ultra busy this period and i didn't have time work on fixed mesh.

The main problem is , in the process of fixing the mesh the vertexes count is changed from the orginal one...don't ask me why XD

Anyway i have an eye bulb mesh that i fixed "more manually" than the other parts , with the same vertex count of the original 3ds file. I will send it soon if it could help you.
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4131
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1123 times
Been thanked: 2150 times

Re: God of War 3 Mesh fix

Post by shakotay2 »

Ares722 wrote:I will send it soon if it could help you.
Might help. :) (Would need the original 3ds, too.)
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
Some things will never change. [roll]
"You quoted the whole thing, what a mess."
Yuredacy2311
beginner
Posts: 34
Joined: Wed Aug 31, 2011 1:36 am
Has thanked: 6 times
Been thanked: 1 time

Re: God of War 3 Mesh fix

Post by Yuredacy2311 »

So no one out there can continue this work?
Offer still there for whoever fix this problem ~,~
Post Reply