Wednesday, May 29, 2013

Unpacking Saints of Virtue's .WRS Files

For better or worse, I'm probably one of the handful of people out there who takes any interest in Saints of Virtue. But hey, sometimes things just strike a chord. You can hit that HardcoreGaming101 link for all the information regarding the game. No need to repeat any of it - if by some miracle you're interested in this, then you don't need much background. This blog post is a short tutorial on how to open up the game's .WRS files and get at all of the assets - graphics, music, code, sound effects, you name it.


.WRS files are packaged, encrypted assets from Conitec's 3D Gamestudio engine, which Saints uses a very old version of (A3, to be exact). What's funny is that I used to make games in the A5 version of this engine as a kid, so imagine my surprise when my younger self recognized the bootscreen and filetypes Saints used. From that moment I started trying to hack my way in to get at the music and sounds, but no luck. There was some utility I can't remember - had Bread in the name - that was supposed to support .WRS files but it didn't work for these. I gave up, and for years I forgot about it.

Imagine my surprise when I did a random Google search on a whim and came up with this thread, detailing a working way to extract the game's assets. So here we go, what you'll need:
It's pretty simple. The specific steps:
  • Run quickbms.exe.
  • Select the saints_of_virtue_script.txt file you downloaded.
  • Select your desired .WRS file.
  • Select a folder to output to.
And we're done!  QuickBMS will dump all the .PCX, .WAV, and .WDL files to your specified folder for your perusal.

As an extra Saints note, what few people talk about this game online often complain about how you jump so high you hit the ceiling. Or, if they play far enough, they might notice that the Sword Blaster fires cripplingly slow, even with the Rapid-Fire upgrade. Both of these issues are due to the uncapped framerate screwing up the game logic. Use the FRAPS 30FPS locking technique I described in my previous Streets post to fix these problems and enjoy Saints as it was intended to be played.


9 comments:

DangerKitty said...

You are an absolute savior (no pun intended). A friend and I are want to do a Let's Play of this game, but I can't get it to run to save my life. I've tried everything lol.

Forgive my ignorance, but what is/where is the .WRS file? I have a copy of the game on disc. Your help would be GREATLY appreciated.

Thanks in advance

typicalgeek said...

The .WRS files are in the install directory after you install the game. But you don't need to unpack them in order to play SoV on modern systems - it's just for the curious who'd like to see the game's assets (art, sound, music).

Ondashiz said...

Thanks, a lot! With these hints, I got to open an old fighting game (Abandonware) and now I will explore its files (Models, textures, sounds) and insert them in a new and improved fighting game.

typicalgeek said...

Glad it helped out. What was the game?

Ondashiz said...

"World of Fighting", from Shuriken Software.

But I don't know which files are motion/animation files.
And I am having a problem in extract the WRS of another abandonware game, 3D Judo Fighter.

Unknown said...

man everybody just craps on this game. but i played it since i was a kid and its actually challenging. yes the graphics are bad. the story is non existent but the logic it takes to actually get through this game without the acidental no clipping mode that just randomly happens is incredible. plus its such a mind trip if i was high this game would blow my mind. if you have ever actually beat this game no clip you are the 1 percent. its hard its a challenge and its everything old games used to be. they didnt just give you a victory because you pushed forward and shoot enough times. this game is for (as silly as it sounds) the hardcore gamer who wants an actual challenge like the good old days where you cant just look up help online cuz nobody knows about it. fewer people have beat this game than have seen the final screen on donkey kong. this is a must play for any serious gamer that wants an actual challenge not some repetetive jump crouch shoot game.this is all mind power very few games require us to use our brains which is why everybody thinks this is so stupid but get past the story past the graphics and imerse yourself in the game and the music and actually try and you will find yourself palying a game that will haunt you for the rest of your life. i have played this game countless times and still something keeps calling me back

Unknown said...

man everybody just craps on this game. but i played it since i was a kid and its actually challenging. yes the graphics are bad. the story is non existent but the logic it takes to actually get through this game without the acidental no clipping mode that just randomly happens is incredible. plus its such a mind trip if i was high this game would blow my mind. if you have ever actually beat this game no clip you are the 1 percent. its hard its a challenge and its everything old games used to be. they didnt just give you a victory because you pushed forward and shoot enough times. this game is for (as silly as it sounds) the hardcore gamer who wants an actual challenge like the good old days where you cant just look up help online cuz nobody knows about it. fewer people have beat this game than have seen the final screen on donkey kong. this is a must play for any serious gamer that wants an actual challenge not some repetetive jump crouch shoot game.this is all mind power very few games require us to use our brains which is why everybody thinks this is so stupid but get past the story past the graphics and imerse yourself in the game and the music and actually try and you will find yourself palying a game that will haunt you for the rest of your life. i have played this game countless times and still something keeps calling me back

melvinbliss365 said...

Unfortunately, the Google Drive link appears to be private, and the forum shut down.

Fortunately, i did manage to get the QuickBMS script.

Open up a text editor, and copy and paste the following script:

comtype lzss
endian big
get asize asize
do
getdstring name 13
get zsize long
get size long
savepos offset
clog name offset zsize size
math offset += zsize
goto offset
while offset < asize

Save the file, and then run the script as normal.

Take care.

f0ng0rf0nzym said...

Thanks for this post typicalgeek and thank you melvinbliss365, I tried the script you've mentionned and it works like a charm for an obscure french game called Pikto