READ THE RULES: Click here

Follow us on Facebook: https://www.facebook.com/xentax/ :)

Metro 2033 vfs file

The Original Forum. Game archives, full of resources. How to open them? Get help here.
OrangeC
double-veteran
double-veteran
Posts: 860
Joined: Sun Apr 20, 2008 2:58 am
Has thanked: 5 times
Been thanked: 33 times

Metro 2033 vfs file

Post by OrangeC » Tue Mar 16, 2010 1:15 pm

Hello i have tried other vfs tools but to no avail.

i have provided a cut out of the 1gig file.

http://www.megaupload.com/?d=TA5YJCMI

hhrhhr
advanced
Posts: 57
Joined: Thu Mar 18, 2010 7:02 am
Has thanked: 1 time
Been thanked: 18 times

Re: Metro 2033 vfs file

Post by hhrhhr » Thu Mar 18, 2010 7:54 am

OrangeC wrote:but to no avail.
"quick&dirty" BMS-script for unpack any .fvs0, .vfs1 files (need content.vfi in archive folder, tested with QuickBMS 0.3.14c):

Code: Select all

# Metro 2033 .vfs unpacker v1.0
# (only unpacker, not decrypter. hhrhhr@gmail.com 03-2010)
# script for QuickBMS http://aluigi.org/papers.htm#quickbms

get source FILENAME
open FDSE "content.vfi" 1
get max_size asize 1
get ffff long 1
get chunk_size long 1
savepos data_pos 1
math offset = data_pos
math offset += chunk_size
set exit_while byte 0
do
	goto offset 1
	get num long 1
	get chunk_size long 1
	savepos data_pos 1
	math offset = data_pos
	math offset += chunk_size
	get num0 long 1
	get strlen_filesize long 1
	get file_name string 1
	get file_size long 1
	if file_name == source
		log MEMORY_FILE data_pos chunk_size 1
		get mem_max_size asize MEMORY_FILE
		math mem_max_size -= 12
		get mem_num0 long MEMORY_FILE
		get mem_strlen_filesize long MEMORY_FILE
		get mem_file_name string MEMORY_FILE
		get mem_file_size long MEMORY_FILE
		get mem_num1 long MEMORY_FILE
		get mem_size long MEMORY_FILE
		do
			get current_xor byte MEMORY_FILE
			get mem_tmp threebyte MEMORY_FILE #????
			get mem_file_offset long MEMORY_FILE
			get mem_file_size_unp long MEMORY_FILE
			get mem_file_size_pak long MEMORY_FILE
			get mem_full_path_size long MEMORY_FILE
			filexor current_xor MEMORY_FILE
			getdstring mem_full_path mem_full_path_size MEMORY_FILE
			string mem_full_path -= 1
			filexor 0 MEMORY_FILE
			log mem_full_path mem_file_offset mem_file_size_pak
			savepos mem_data_pos MEMORY_FILE
		while mem_data_pos < mem_max_size
		set exit_while byte 1
	endif
	if offset >= max_size
		set exit_while byte 1
	endif
while exit_while != 1
Last edited by hhrhhr on Fri Mar 19, 2010 5:41 pm, edited 1 time in total.

Cryptonia
advanced
Posts: 46
Joined: Wed Aug 19, 2009 5:11 pm

Re: Metro 2033 vfs file

Post by Cryptonia » Thu Mar 18, 2010 4:47 pm

i think headerles dds are inside

OrangeC
double-veteran
double-veteran
Posts: 860
Joined: Sun Apr 20, 2008 2:58 am
Has thanked: 5 times
Been thanked: 33 times

Re: Metro 2033 vfs file

Post by OrangeC » Thu Mar 18, 2010 4:50 pm

hhrhhr wrote:
OrangeC wrote:but to no avail.
"quick&dirty" BMS-script for unpack any .fvs0, .vfs1 files (need content.vfi in archive folder, tested with QuickBMS 0.3.14c):

Code: Select all

# Metro 2033 (03-2010 hhrhhr@gmail.com v1.0 only unpacker, not decrypter)
# script for QuickBMS http://aluigi.org/papers.htm#quickbms

get source FILENAME
open FDSE "content.vfi" 1
get max_size asize 1
get ffff long 1
get chunk_size long 1
savepos data_pos 1
math offset = data_pos
math offset += chunk_size
set exit_while byte 0
do
	goto offset 1
	get num long 1
	get chunk_size long 1
	savepos data_pos 1
	math offset = data_pos
	math offset += chunk_size
	get num0 long 1
	get strlen_filesize long 1
	get file_name string 1
	get file_size long 1
	if file_name == source
		log MEMORY_FILE data_pos chunk_size 1
		get mem_max_size asize MEMORY_FILE
		math mem_max_size -= 12
		get mem_num0 long MEMORY_FILE
		get mem_strlen_filesize long MEMORY_FILE
		get mem_file_name string MEMORY_FILE
		get mem_file_size long MEMORY_FILE
		get mem_num1 long MEMORY_FILE
		get mem_size long MEMORY_FILE
		do
			get current_xor byte MEMORY_FILE
			get mem_tmp threebyte MEMORY_FILE #????
			get mem_file_offset long MEMORY_FILE
			get mem_file_size_unp long MEMORY_FILE
			get mem_file_size_pak long MEMORY_FILE
			get mem_full_path_size long MEMORY_FILE
			filexor current_xor MEMORY_FILE
			getdstring mem_full_path mem_full_path_size MEMORY_FILE
			string mem_full_path -= 1
			filexor 0 MEMORY_FILE
			log mem_full_path mem_file_offset mem_file_size_pak
			savepos mem_data_pos MEMORY_FILE
		while mem_data_pos < mem_max_size
		set exit_while byte 1
	endif
	if offset >= max_size
		set exit_while byte 1
	endif
while exit_while != 1

Doesn't work, says 0 files copied.

hhrhhr
advanced
Posts: 57
Joined: Thu Mar 18, 2010 7:02 am
Has thanked: 1 time
Been thanked: 18 times

Re: Metro 2033 vfs file

Post by hhrhhr » Thu Mar 18, 2010 5:45 pm

do you have content.vfi in game folder? do you have unlocked game? if no - no unpack.
if yes - try this (key -l disable real unpack, only screen output):

Code: Select all

quickbms.exe -l metro2033.bms path_to_game\videos.vfs0 .
sample output:

Code: Select all

QuickBMS generic files extractor 0.3.14c
by Luigi Auriemma
e-mail: aluigi@autistici.org
web:    aluigi.org

- open input file e:\Games\Metro2033\videos.vfs0
- open script metro2033.bms

  offset   filesize   filename
------------------------------
- enter in folder G:\tmp
- open input file e:\Games\Metro2033\content.vfi
  00000008 260462370  content\outro_bad.ogv
  0f86572a 210030614  content\outro_good.ogv

- 2 files found in 0 seconds

jbeckman
advanced
Posts: 47
Joined: Wed May 16, 2007 5:13 am
Has thanked: 6 times
Been thanked: 7 times

Re: Metro 2033 vfs file

Post by jbeckman » Fri Mar 19, 2010 6:55 am

The contents of this post was deleted because of possible forum rules violation.

hhrhhr
advanced
Posts: 57
Joined: Thu Mar 18, 2010 7:02 am
Has thanked: 1 time
Been thanked: 18 times

Re: Metro 2033 vfs file

Post by hhrhhr » Fri Mar 19, 2010 5:38 pm

.upk unpacker:

Code: Select all

# Metro 2033 .upk unpacker v1.0
# (only unpacker, not decrypter. hhrhhr@gmail.com 03-2010)
# script for QuickBMS http://aluigi.org/papers.htm#quickbms

# data section
get num0 long
get data_size long
savepos pos
math pos += data_size
goto pos

# filelist section
get num1 long
get list_size long
savepos pos
do
	get current_xor byte
	get tmp threebyte #???
	get offset long
	get size_unp long
	get size_pak long
	get strlen_filename long
	filexor current_xor
	getdstring name strlen_filename
	filexor 0
	string name -= 1
#	print "%offset% %size_unp% %size_pak% %name%"
	log name offset size_pak
	savepos list_pos
	math list_pos -= pos
while list_pos < list_size 0

# dummy section (02 00 00 00 04 00 00 00 00 00 00 00)
get num2 long
get size long
savepos pos
math pos += size
goto pos

# guid section
get num3 long
get guid_size long
savepos pos
get upk_name FILENAME
string upk_name += ".guid"
log upk_name pos guid_size
p.s.
i need bbcode tag [spoiler][/spoiler] ;)

User avatar
filipmosner
ultra-n00b
Posts: 5
Joined: Mon Dec 29, 2008 7:17 pm

Re: Metro 2033 vfs file

Post by filipmosner » Sat Mar 20, 2010 4:37 pm

Nice, but how to pack unpacked file?

jackpack
advanced
Posts: 47
Joined: Tue Sep 08, 2009 7:28 pm

Re: Metro 2033 vfs file

Post by jackpack » Sat Mar 20, 2010 11:54 pm

sorry to anoy anyone in this thread, but is there anything i can just drop one of the metro files into and it will extract everything for me.

the models are tops and will finish of my fallout3mod nicely.

deadok
ultra-n00b
Posts: 3
Joined: Mon Mar 22, 2010 3:24 pm
Been thanked: 1 time

Re: Metro 2033 vfs file

Post by deadok » Tue Mar 23, 2010 10:10 pm

vfs extractor/packer (vfi actually, since vfs contains only data, not fs information)
only full-processing mode (no "extract/pack just this file")
You do not have the required permissions to view the files attached to this post.
Last edited by deadok on Wed Mar 24, 2010 2:28 am, edited 1 time in total.

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: Metro 2033 vfs file

Post by Savage » Wed Mar 24, 2010 12:01 am

Thanks for the vfs tools, but i only can unpack one file (videos.vfs0)
I do:
ext vcontent.vfi
And the tool extracts the two files nothing else, what about the other vfs0s'?
Image

deadok
ultra-n00b
Posts: 3
Joined: Mon Mar 22, 2010 3:24 pm
Been thanked: 1 time

Re: Metro 2033 vfs file

Post by deadok » Wed Mar 24, 2010 2:24 am

ahem, looks like something went terribly wrong...

yeah, right, somehow i decided that it would be kewl to check if first DWORD in vfs-record = 0, and if not - abort extraction.
well, first dword is actually number of vfs...
coding after 2400 - bad, coffee doesn't halp.

fixed, reuploaded

dufake
ultra-n00b
Posts: 1
Joined: Sat Apr 10, 2010 4:23 pm

Re: Metro 2033 vfs file

Post by dufake » Sun Apr 11, 2010 4:42 am

I'm new here, but there are tools for unpacking Metro 2033.
Enjoy.

http://metro2033forums.com/index.php?topic=739.0

xjohnx
ultra-n00b
Posts: 4
Joined: Thu Mar 04, 2010 1:06 pm

Re: Metro 2033 vfs file

Post by xjohnx » Sun Apr 11, 2010 3:26 pm

Used the tool but only managed to extract the sound files, getting an error on the other files (though i could be doing something wrong :).

danidomen
ultra-n00b
Posts: 1
Joined: Sun Apr 18, 2010 11:51 pm

Re: Metro 2033 vfs file

Post by danidomen » Mon Apr 19, 2010 8:52 am

Ok, I extracted correctly the file called textures.vfs0, but the file extension of the images are xxx.512 or xxx.1024 that I suppose is the texture resolution. But... How I can open this texture file?

Post Reply