Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Resident Evil Operation Racoon City repacker

The Original Forum. Game archives, full of resources. How to open them? Get help here.
michalss
Moderator
Posts: 954
Joined: Sun Mar 27, 2011 8:42 pm
Has thanked: 10 times
Been thanked: 161 times

Re: Resident Evil Operation Racoon City repacker

Post by michalss »

i gave up with this game. Its not worth to localizate this game at all :( It is not Resident Evil anymore i would call it Gears of Evil :D
Quick BMS Editor GUI - simple easy to use
Goto : viewtopic.php?uid=34229&f=29&t=6797&start=0

Downloads from DropBox : https://dl.dropboxusercontent.com/u/
Gh0stBlade
Moderator
Posts: 719
Joined: Mon Jul 05, 2010 8:55 pm
Has thanked: 20 times
Been thanked: 496 times

Re: Resident Evil Operation Racoon City repacker

Post by Gh0stBlade »

chrrox wrote:the ps3 files are either
a) encrypted after they were compressed
or
b) using a new unknown compression most likely found in the ps3 edge sdk
Thanks i have one of the latest SDKs

It seems that the PS3 textures are GTF "swizzled" or whatever.

I've tried to use GTF2DDS in the SDK and it's not working on these files the header which comes out doesn't even have a DXT version. It did however work on one file but that file already looked like a standard DDS file through hex editor. I'm not sure what's wrong with the textures.

The .XTF for Xbox, doesn't look like those can be unpacked either.

Has anyone looked at the models yet?
Click the thanks button if I helped!
MrAdults
Moderator
Posts: 1007
Joined: Mon Mar 23, 2009 2:57 am
Has thanked: 44 times
Been thanked: 505 times

Re: Resident Evil Operation Racoon City repacker

Post by MrAdults »

Some of the files with XPR extensions in the 360 version are really XPR2 files and others aren't XPR files at all, they're just raw DXT data and the actual image info seems to be in the material file(s) that reference them. On 360 most texture data is tiled as usual. You can view the headerless data with this script, just replace w/h/fmt with the right values. (or you could make it guess from the file size and be right most of the time)

Code: Select all

from inc_noesis import *

def registerNoesisTypes():
	handle = noesis.register("Hackity Hack Hack", ".xpr")
	noesis.setHandlerTypeCheck(handle, noeCheckGeneric)
	noesis.setHandlerLoadRGBA(handle, hackLoadRGBA)
	return 1

def hackLoadRGBA(data, texList):
	w = 256
	h = 256
	fmt = noesis.NOESISTEX_DXT5
	data = rapi.imageUntile360DXT(rapi.swapEndianArray(data, 2), w, h, 8 if fmt == noesis.NOESISTEX_DXT1 else 16)
	texList.append(NoeTexture("hacktex", w, h, data, fmt))
	return 1
I think chrrox has the model format pretty much figured out.
kostasishere
ultra-n00b
Posts: 9
Joined: Tue Mar 20, 2012 3:00 am
Has thanked: 2 times

Re: Resident Evil Operation Racoon City repacker

Post by kostasishere »

Thanks a lot for the Noesis program!!!
Is it possible to repack the extracted files?
Kamillho
veteran
Posts: 84
Joined: Sat Jan 22, 2011 6:19 pm
Has thanked: 14 times
Been thanked: 4 times

Re: Resident Evil Operation Racoon City repacker

Post by Kamillho »

Somebody works on RE ORC script?
Here's Nemesis model:
http://www.sendspace.com/file/cedkqd
greywaste
n00b
Posts: 10
Joined: Thu Jul 29, 2010 10:10 pm
Has thanked: 11 times
Been thanked: 1 time

Re: Resident Evil Operation Racoon City repacker

Post by greywaste »

Kamillho wrote:Somebody works on RE ORC script?
Here's Nemesis model:
http://www.sendspace.com/file/cedkqd
:roll:

viewforum.php?f=16
MrAdults
Moderator
Posts: 1007
Joined: Mon Mar 23, 2009 2:57 am
Has thanked: 44 times
Been thanked: 505 times

Re: Resident Evil Operation Racoon City repacker

Post by MrAdults »

It turns out that the lzx stream is set to reset every 2 frames, and the old script wasn't doing that, so even though it succeeded in putting out readable data a lot of it was corrupted.

Update to the latest Noesis and use this script instead or all of your data will be screwed and chrrox's model script will not work right or crash on most of the models.

Code: Select all

from inc_noesis import *

def registerNoesisTypes():
	handle = noesis.register("RE:ORC archive", ".ssg")
	noesis.setHandlerExtractArc(handle, ssgExtractArc)
	return 1

def ssgExtractArc(fileName, fileLen, justChecking):
	if fileLen < 32:
		return 0
	with open(fileName, "rb") as f:
		endr = ">"
		idRaw = f.read(4);
		id = noeUnpack(endr+"i", idRaw)[0]
		if id != 6 and id != 5:
			endr = "<"
			id = noeUnpack(endr+"i", idRaw)[0]
			if id != 6 and id != 5:
				return 0

		unk = noeUnpack(endr+"i", f.read(4))[0]
		fofsSize = noeUnpack(endr+"i", f.read(4))[0]
		namesSize = noeUnpack(endr+"i", f.read(4))[0]
		dataSize = noeUnpack(endr+"i", f.read(4))[0]
		unk2 = noeUnpack(endr+"i", f.read(4))[0]
		fnInfoSize = noeUnpack(endr+"i", f.read(4))[0]
		decompDataSize = noeUnpack(endr+"i", f.read(4))[0] #just a guess
		if fofsSize <= 0 or fofsSize >= fileLen or namesSize <= 0 or namesSize >= fileLen or dataSize <= 0 or dataSize >= fileLen or fofsSize+namesSize+dataSize+unk2+fnInfoSize >= fileLen:
			return 0

		if justChecking:
			return 1

		if noesis.getAPIVersion() < 34:
			print("ERROR: This script is not compatible with your version of Noesis! UPGRADE!")
			return 0

		fofsOfs = f.tell()
		numFiles = fofsSize // 32
		fofsData = f.read(fofsSize)
		fnInfoOfs = f.tell()
		fnInfoData = f.read(fnInfoSize)
		namesOfs = f.tell()
		namesData = f.read(namesSize)
		dataOfs = f.tell()
		bsNames = NoeBitStream(namesData)

		fdataRead = 0 #hack
		f.seek(fofsOfs, 0)
		for i in range(0, numFiles):
			f.seek(4, 1)
			fnOfs = noeUnpack(endr+"i", f.read(4))[0]
			decmpSize = noeUnpack(endr+"i", f.read(4))[0]
			unkFl = noeUnpack(endr+"i", f.read(4))[0]
			fileOfs = noeUnpack(endr+"i", f.read(4))[0]
			fileExt = f.read(4)
			f.seek(4, 1)
			cmpSize = noeUnpack(endr+"i", f.read(4))[0]
			bsNames.seek(fnOfs, NOESEEK_ABS)
			fileName = bsNames.readString()
			if cmpSize < 0: #seems to indicate that the file is in a different archive
				#print("Skipping", fileName, "- file is in another archive.")
				continue
			#print(fileName, dataOfs+fdataRead, cmpSize, decmpSize)
			tmp = f.tell()
			f.seek(dataOfs+fdataRead, 0)
			if cmpSize == 0: #not compressed
				decompData = f.read(decmpSize)
				fdataRead += decmpSize
			else:
				fileData = f.read(cmpSize)
				decompData = rapi.decompXMemLZX(fileData, decmpSize, 16, -3)
				fdataRead += cmpSize
			f.seek(tmp, 0)
			print("Writing", fileName)
			rapi.exportArchiveFile(fileName, decompData)

	return 1
kostasishere
ultra-n00b
Posts: 9
Joined: Tue Mar 20, 2012 3:00 am
Has thanked: 2 times

Re: Resident Evil Operation Racoon City repacker

Post by kostasishere »

MrAdults is it possible to repack them again as ssg because than it's possible to swap the playable characters with another or for some skin mods.
chrrox
Moderator
Posts: 2602
Joined: Sun May 18, 2008 3:01 pm
Has thanked: 57 times
Been thanked: 1422 times

Re: Resident Evil Operation Racoon City repacker

Post by chrrox »

the game will read uncompressed models just re create the archive with uncompressed files. you can also try just putting the files in the correct spot the game may just read them.
kostasishere
ultra-n00b
Posts: 9
Joined: Tue Mar 20, 2012 3:00 am
Has thanked: 2 times

Re: Resident Evil Operation Racoon City repacker

Post by kostasishere »

Thanks a lot for the help but unfortunally it doesn't work, i tried that and i created many subfolders with different names and in different locations but it doesn't find the model at all and i see only the weapon in game, not the character. I also tried to edit the .ssg file with notepad++ and a hex editor and rename the folder and model name with a different playable character (Hunk for Vector for ex) so i can swap the files but it corrupt the file and i cant even open open it with Noesis.
soroosh
n00b
Posts: 10
Joined: Fri Nov 11, 2011 5:48 am
Has thanked: 5 times
Been thanked: 1 time

Re: Resident Evil Operation Racoon City repacker

Post by soroosh »

MrAdults, let me thank you sooooooooooooo much for your ssg extraction and image viewing scripts.
I have some questions.

1- I think it would be alot better to write the ssg extraction script in bms because it can handle batch extraction and also I think the noesis is an image and model viewer not a programming tool for extracting archives - I know that it has the abilities to be used that way. So, my suggestion : if it's possible for u dear friend, write a bms script for batch ssg extraction.

2- Is it possible to change the extraction script to make it convert raw DXT images to readable dds on the fly?

thanks man :wink: .
MrAdults
Moderator
Posts: 1007
Joined: Mon Mar 23, 2009 2:57 am
Has thanked: 44 times
Been thanked: 505 times

Re: Resident Evil Operation Racoon City repacker

Post by MrAdults »

1) QuickBMS to my knowledge doesn't support the LZX features necessary for these files to extract correctly. Otherwise, feel free to write the BMS script, you already have the specs in the Python script. I personally don't give a shit. Also, Noesis has batch extraction and has a commandline mode. Read the documentation.

2) Sure, feel free. Or wait for chrrox to finish his script that draws in the correct headers. Unless he isn't doing that, then you're out of luck, cause again I don't give a shit. I doubt you indirectly insulting chrrox and calling him lazy makes him want to work any faster either. But maybe you're cognitively limited and you can't help it, in which case, I recommend not posting.
soroosh
n00b
Posts: 10
Joined: Fri Nov 11, 2011 5:48 am
Has thanked: 5 times
Been thanked: 1 time

Re: Resident Evil Operation Racoon City repacker

Post by soroosh »

MrAdults wrote:1) QuickBMS to my knowledge doesn't support the LZX features necessary for these files to extract correctly. Otherwise, feel free to write the BMS script, you already have the specs in the Python script. I personally don't give a shit. Also, Noesis has batch extraction and has a commandline mode. Read the documentation.

2) Sure, feel free. Or wait for chrrox to finish his script that draws in the correct headers. Unless he isn't doing that, then you're out of luck, cause again I don't give a shit. I doubt you indirectly insulting chrrox and calling him lazy makes him want to work any faster either. But maybe you're cognitively limited and you can't help it, in which case, I recommend not posting.
Wow!!! I think that I started my questions by thanks didn't I?
So, what is this " I don't give a shit"!!!!! is it kind of speaking you use to call your family? Because of your kind of speaking it's obvious that who is cognitively limited to just shitttttt :evil: .
How dare you to speak like this in a common form? If I had enough time to spend on studing BMS documents OR noesis coding, Be sure I wouldn't even send a shit to guys like you :evil: :evil: . So, don't try to make me mad by your shitty kind of talking baby. Instead better to learn how to apprecitae when the others thank you for your shitty stuff.
although I don't expect guys like you learn how to be polite and how to behave in a common society.
MrAdults
Moderator
Posts: 1007
Joined: Mon Mar 23, 2009 2:57 am
Has thanked: 44 times
Been thanked: 505 times

Re: Resident Evil Operation Racoon City repacker

Post by MrAdults »

Sorry, I'm just Dutch at heart.
soroosh
n00b
Posts: 10
Joined: Fri Nov 11, 2011 5:48 am
Has thanked: 5 times
Been thanked: 1 time

Re: Resident Evil Operation Racoon City repacker

Post by soroosh »

MrAdults wrote:Sorry, I'm just Dutch at heart.
Be my guest dear friend :wink: .
Post Reply