This should be a very easy one to do since several different tools I've tried find the textures right off the bat. The issue with those tools is they don't preserve the filenames, which is needed in order to make use of them (I have an extracted OBJ of the level map with an MTL file but no textures to go with it).
https://www.dropbox.com/s/wplbnln1s7cft ... g.p3d?dl=1
Oh, and when you look at the file in a hex editor I see mentions of the PNG format, which is what every tool I've tried extracts them as. The file names are in plain sight, too.
The Simpsons Road Rage E3 demo - PNG textures with filenames?
-
- Posts: 118
- Joined: Sun Dec 14, 2014 3:56 pm
-
- Posts: 706
- Joined: Fri Aug 08, 2014 1:06 am
Re: The Simpsons Road Rage E3 demo - PNG textures with filenames?
i've got a script that can extract and name all, the image named "MISSING_IMAGE" was stored twice in the p3d,
and at least 6 share the same name except for the capitalization, so 3 were renamed by Quickbms.
NEW_road__t.png
NEW_Road__t_00000001.png
NEW_road__t_1.png
NEW_Road__t_1_00000001.png
NEW_road__t_2.png
NEW_Road__t_2_00000001.png
the ones with the capital 'R' are likely the ones you want, just remove the last 9 characters from the name.
here is the bms script
and at least 6 share the same name except for the capitalization, so 3 were renamed by Quickbms.
NEW_road__t.png
NEW_Road__t_00000001.png
NEW_road__t_1.png
NEW_Road__t_1_00000001.png
NEW_road__t_2.png
NEW_Road__t_2_00000001.png
the ones with the capital 'R' are likely the ones you want, just remove the last 9 characters from the name.
here is the bms script
Code: Select all
# script for QuickBMS http://quickbms.aluigi.org
findloc PNG binary "\x89\x50\x4E\x47"
do
goto PNG
savepos OFFSET
goto -0x31 0 seek_cur
get check byte
if check == 0x4
get NAME string
else
goto -0x5 0 seek_cur
get check byte
if check == 0x8
get NAME string
else
goto -0x5 0 seek_cur
get check byte
if check == 0xc
get NAME string
else
goto -0x5 0 seek_cur
get check byte
if check == 0x10
get NAME string
else
goto -0x5 0 seek_cur
get check byte
if check == 0x14
get NAME string
else
goto -0x5 0 seek_cur
get check byte
if check == 0x18
get NAME string
else
goto -0x5 0 seek_cur
get check byte
if check == 0x1c
get NAME string
else
goto -0x5 0 seek_cur
get check byte
if check == 0x20
get NAME string
else
goto -0x4 0 seek_cur
get NAME string
endif
endif
endif
endif
endif
endif
endif
endif
goto OFFSET
goto -0x8 0 seek_cur
get NEXT_TEX long
get SIZE long
string NAME + .png
log NAME OFFSET SIZE
get SKIP long
findloc PNG binary "\x89\x50\x4E\x47" 0 ""
while PNG != ""
Last edited by Acewell on Sun Jan 07, 2018 10:51 pm, edited 1 time in total.
-
- Posts: 118
- Joined: Sun Dec 14, 2014 3:56 pm
Re: The Simpsons Road Rage E3 demo - PNG textures with filenames?
Thank you so much!