The rules have been updated, read them now: Rules!

Retrovirus

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
User avatar
aluigi
VVIP member
VVIP member
Posts: 1917
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 648 times
Contact:

Retrovirus

Post by aluigi » Tue Jul 03, 2012 6:50 pm

Code: Select all

# Retrovirus
# script for QuickBMS http://quickbms.aluigi.org

for
    get NAMESZ byte
    if NAMESZ == 0
        cleanexit
    endif
    getdstring NAME NAMESZ
    get OFFSET longlong
    savepos TMP_OFF

    get TMP byte
    if TMP == 0
        get SIZE asize
    else
        getdstring TMP TMP
        get SIZE longlong
    endif
    goto TMP_OFF

    math SIZE -= OFFSET
    log NAME OFFSET SIZE
next

User avatar
Savage
VIP member
VIP member
Posts: 560
Joined: Sun Apr 17, 2005 11:00 am
Has thanked: 16 times
Been thanked: 17 times

Re: Retrovirus

Post by Savage » Thu Feb 07, 2013 7:48 am

Hi, thanks the the bms, it creates the folders and subfolders but not extract the files, only i get a big file.
Thanks. 8D
Image

User avatar
aluigi
VVIP member
VVIP member
Posts: 1917
Joined: Thu Dec 08, 2005 12:26 pm
Location: www.ZENHAX.com
Has thanked: 4 times
Been thanked: 648 times
Contact:

Re: Retrovirus

Post by aluigi » Wed Mar 06, 2013 2:42 pm

do you have a sample file that doesn't work with the script?

Controller
ultra-n00b
Posts: 6
Joined: Mon May 25, 2009 1:44 am
Has thanked: 1 time

Re: Retrovirus

Post by Controller » Wed Jan 27, 2021 11:37 am

Seems there is another version of Retrovirus dat files. Only difference is the data size is added, making the parsing a little easier.
Works for all .dat files except except Entities.dat (which is an executable, dll or something alike)
However there is some issue with this set of files for some of the archive files (must be named manually):
Image

Code: Select all

# Retrovirus
# script for QuickBMS http://quickbms.aluigi.org
# Updated: Format additionally has the size of the data stored! (updated by Jan Vorel)

for
    get NAMESZ byte
    if NAMESZ == 0
        cleanexit
    endif
    getdstring NAME NAMESZ
    get OFFSET longlong
    get SIZE longlong
    log NAME OFFSET SIZE
next

Post Reply