Post tutorial RSS PC arc extractor

This is a quickbms script I wrote to extract all the resources from the arc files in this game.

Posted by on - Basic Client Side Coding

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
string NAME += UNK
string NAME += COUNTER


next i

Just paste this into a new text file and save the file with a .bms extension.
then you just use the program
and follow the on screen instructions to extract the files.
Here is a large screen shot of a mod I did with some friends. I will post how to do these mods with the extracted files soon.

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.