Devil May Cry HD Collection

How to translate the files of a game
galiali
Posts: 13
Joined: Fri Apr 05, 2019 8:25 pm

Devil May Cry HD Collection

Post by galiali »

Hi everyone. I want to localize Devil May Cry HD Collection. But I couldn't open any files except the .NB files of the second game. (By the way I thank Delutto for the tool of .NB files) Can you help me about opening and repack the files?

dmc1 samples https://mega.nz/#!aZxFhawa!CjXlbtw4j6LPeO5I96m5jh3w8sg0fGqKm7V6zaz4u7o
Shokoniraya
Posts: 416
Joined: Sat Sep 15, 2018 5:22 am

Re: Devil May Cry HD Collection

Post by Shokoniraya »

galiali wrote:Hi everyone. I want to localize Devil May Cry HD Collection. But I couldn't open any files except the .NB files of the second game. (By the way I thank Delutto for the tool of .NB files) Can you help me about opening and repack the files?

dmc1 samples https://mega.nz/#!aZxFhawa!CjXlbtw4j6LPeO5I96m5jh3w8sg0fGqKm7V6zaz4u7o


all textures are dds and can see it with hex editor, but its take a long time to change in hex
i was worked on custom mod in past times, maybe this script will help you

here a script
note: this script is not complete! so just use it with risk (not complete to dump all files)
i dont have game to set on all files and formats in this script
and another warn: DO Not Change DDS Size and DDS type Under Any Position
use -w -r to import

Code: Select all

#Devil May Cry 1 (from HD Collection) Texture extractor
#cant Support Bigger Size, anyway... its DDS and dont need to add more size as a decompressed file
#Script By Shokoniraya
#Supported (.itm, .dat, .ip2, .t32, .tm2, .bnd, .bin)
#not supported and maybe not work: .emd, .fsd, .pld, .psw and other formats

######bin######
get TAFS_CHECKER extension
if TAFS_CHECKER == "bin"
for i
findloc TIM2 binary "\x54\x49\x4D\x32"
goto TIM2
get CRC long
get DUMMY long
get OFFSET_SET long
get SIZE long
xmath OFFSET "TIM2 + OFFSET_SET"
string NAME p "%s%s." OFFSET_SET CRC
log NAME OFFSET SIZE
next i
cleanexit
else
######itm######
get TAFS_CHECKER extension
if TAFS_CHECKER == "itm"
for i
findloc FINDER_GET binary "\x00\x32\x4D\x54"
goto FINDER_GET
getdstring DUMMY_2TM 20
get CRC long
getdstring DUMMY_2TM 36
get SIZE long
findloc DDS_HEADER binary "\x44\x44\x53\x20"
goto DDS_HEADER
savepos OFFSET
string NAME p "%x08." CRC
log NAME OFFSET SIZE
next i
cleanexit
else
######dat######
get TAFS_CHECKER extension
if TAFS_CHECKER == "dat"
for i
findloc FINDER_GET binary "\x00\x32\x4D\x54"
goto FINDER_GET
getdstring DUMMY_2TM 20
get CRC long
getdstring DUMMY_2TM 36
get SIZE long
findloc DDS_HEADER binary "\x44\x44\x53\x20"
goto DDS_HEADER
savepos OFFSET
string NAME p "%x08." CRC
log NAME OFFSET SIZE
next i
cleanexit
else
######ip2######
get TAFS_CHECKER extension
if TAFS_CHECKER == "ip2"
get DUMMY long
get DUMMY long
get DUMMY long
get FILES long
for i = 0 < FILES
get DUMMY long
get SIZE long
savepos OFFSET
log "" OFFSET SIZE
getdstring DUMMY SIZE
next i
cleanexit
else
######t32######
get TAFS_CHECKER extension
if TAFS_CHECKER == "t32"
for i
findloc FINDER_GET binary "\x00\x32\x33\x54"
goto FINDER_GET
getdstring DUMMY_2TM 20
get CRC long
getdstring DUMMY_2TM 36
get SIZE long
findloc DDS_HEADER binary "\x44\x44\x53\x20"
goto DDS_HEADER
savepos OFFSET
string NAME p "%x08." CRC
log NAME OFFSET SIZE
next i
cleanexit
else
######tm2######
get TAFS_CHECKER extension
if TAFS_CHECKER == "tm2"
for i
findloc FINDER_GET binary "\x00\x32\x4D\x54"
goto FINDER_GET
get DUMMY long
getdstring DUMMY_2TM 16
get CRC long
getdstring DUMMY_2TM 18
get SIZE long
findloc DDS_HEADER binary "\x44\x44\x53\x20"
goto DDS_HEADER
savepos OFFSET
string NAME p "%x08." CRC
log NAME OFFSET SIZE
next i
cleanexit
else
######bnd######
get TAFS_CHECKER extension
if TAFS_CHECKER == "bnd"
for i
findloc FINDER_GET binary "\x00\x32\x4D\x54"
goto FINDER_GET
getdstring DUMMY_2TM 20
get CRC long
getdstring DUMMY_2TM 36
get SIZE long
findloc DDS_HEADER binary "\x44\x44\x53\x20"
goto DDS_HEADER
savepos OFFSET
string NAME p "%x08." CRC
log NAME OFFSET SIZE
next i
cleanexit
else
######emd#####
get TAFS_CHECKER extension
if TAFS_CHECKER == "emd"
for
findloc FINDER_GET binary "\x00\x32\x33\x54" 0 ""
if FINDER_GET == ""
    break
endif
goto FINDER_GET
getdstring DUMMY_EMD 60
get SIZE long
findloc DDS_HEADER binary "\x44\x44\x53\x20"
goto DDS_HEADER
savepos OFFSET
log "" OFFSET SIZE
next
goto 0
for
findloc TYAPE2 binary "\x66\x72\x6D\x6A" 0 ""
if TYAPE2 == ""
    break
endif
goto TYAPE2
get DUMMY long
get SAIZE long
savepos OAFFSET
log "" OAFFSET SAIZE
next
cleanexit
else
endif
endFunction
UltraNoob
Posts: 1
Joined: Sat Apr 06, 2019 3:26 pm

Re: Devil May Cry HD Collection

Post by UltraNoob »

Thanks Shokoniraya
galiali
Posts: 13
Joined: Fri Apr 05, 2019 8:25 pm

Re: Devil May Cry HD Collection

Post by galiali »

Thank you. I will try this script. I write this for results. By the way I can upload all file if you want.