elbereth / DragonUnPACKer

Free/Open source game file resource explorer/unpacking tool made easy!
https://www.elberethzone.net/dragon-unpacker.html
179 stars 21 forks source link

Resident Evil 5 arc files #119

Open elbereth opened 15 years ago

elbereth commented 15 years ago

I was wondering I know you are very busy but I think this would be easy for you to do. here is a script I wrote that extracts the archives.

idstring "ARC\ 0" get VERSION short get FILES short

for i = 0 < FILES

set MOD string .mod set RTX string .tex set DDS string .tex set DXT string .tex set SREQ string .sreq set STRQ string .strq set XFS string .xfs set XFS2 string .xfs2 set XFS3 string .xfs3 set XFS4 string .xfs4 set XFS5 string .xfs5 set XFS6 string .xfs6 set XFS7 string .xfs7 set XFS8 string .xfs8 set XFS9 string .xfs9 set XFS10 string .xfs10 set XFS11 string .xfs11 set XFS12 string .xfs12 set XFS13 string .xfs13 set XFS14 string .xfs14 set XFS15 string .xfs15 set XFS16 string .xfs16 set XFS17 string .xfs17 set XFS18 string .xfs18 set XFS19 string .xfs19 set XFS20 string .xfs20 set WAY string .way set MTG string .mtg set NAV string .nav set CHN string .chn set CCl string .ccl set NAV2 string .nav2 set SPAC string .spac set EFS string .efs set EAN string .ean set EFL string .efl set SDL string .sdl set SBC1 string .sbc1 set E2D string .e2d set WAAW string .waaw set HIT string .hit set UNK string .unk

getdstring NAME 0x40 get TYPE long get ZSIZE long get SIZE 3 get NSIZE byte get OFFSET long math COUNTER += 1

if TYPE == 1486968918 string NAME += MOD else if TYPE == 606035435 string NAME += RTX else if TYPE == 2013850128 string NAME += DDS else if TYPE == 466372966 string NAME += SREQ else if TYPE == 377338879 string NAME += STRQ else if TYPE == 1448649048 string NAME += DXT else if TYPE == 1597421145 string NAME += WAY else if TYPE == 1988234625 string NAME += NAV else if TYPE == 1324456003 string NAME += NAV2 else if TYPE == 2117312876 string NAME += SPAC else if TYPE == 42153731 string NAME += EFS else if TYPE == 1312388119 string NAME += EAN else if TYPE == 1834674260 string NAME += EFL else if TYPE == 1275967545 string NAME += SDL else if TYPE == 1375500191 string NAME += SBC1 else if TYPE == 661514423 string NAME += E2D else if TYPE == 42153731 string NAME += WAAW else if TYPE == 39055687 string NAME += HIT else if TYPE == 1043739205 string NAME += CHN else if TYPE == 2549759 string NAME += CCL else if TYPE == 1311764278 string NAME += MTG else if TYPE == 355479284 string NAME += XFS else if TYPE == 1706194405 string NAME += XFS2 else if TYPE == 1486386332 string NAME += XFS3 else if TYPE == 60649970 string NAME += XFS4 else if TYPE == 955674563 string NAME += XFS5 else if TYPE == 24794381 string NAME += XFS6 else if TYPE == 644778641 string NAME += XFS7 else if TYPE == 1476572159 string NAME += XFS8 else if TYPE == 517025563 string NAME += XFS9 else if TYPE == 1723094544 string NAME += XFS10 else if TYPE == 1300843869 string NAME += XFS11 else if TYPE == 756211846 string NAME += XFS12 else if TYPE == 466372966 string NAME += XFS13 else if TYPE == 229485410 string NAME += XFS14 else if TYPE == 519773031 string NAME += XFS15 else if TYPE == 1972055735 string NAME += XFS16 else if TYPE == 464002364 string NAME += XFS17 else if TYPE == 578958861 string NAME += XFS18 else if TYPE == 1285711912 string NAME += XFS19 else if TYPE == 121863374 string NAME += XFS20 else string NAME += UNK string NAME += COUNTER endif

clog NAME OFFSET ZSIZE SIZE

next i

most of this code does not matter only the chunk in the middle that defines the file structure. it is using default zlib and it would be great to be able to repack these files for modding the game. thanks a million in advance :)

Reported by: chrrox

elbereth commented 15 years ago

sample arc file

Original comment by: chrrox