Users browsing this thread: 3 Guest(s)
Azure Striker Gunvolt 1, 2 and Luminous Avenger IX Sprite Rips
#1
Lightbulb 
First to say, hello guys!

I come here to share this with the entire team of  VGR.

Some time ago, i have ripped most of the textures from Azure Striker Gunvolt Games, and wanted to share them for those who want to finish that (if anyone really wants to finish it), the whole ripping process was not so hard, but the assemble thing isn't my best. 

Actually i tried it but assembling these isn't for me.

So this is for those who wants these Rips at least for seeing them, here they are:

BE AWARE OF THE QUANTITY OF THE FILES
They're so much files and i don't putted any specific order on them, they just have generic names and are in .png format.


Azure Striker Gunvolt
[link removed]

Azure Striker Gunvolt 2
[link removed]

Gunvolt Chronicles: Luminous Avenger IX
[link removed]

And don't worry they're sprites.

PS: This isn't a request.
Reply
Thanked by:
#2
I went ahead and removed your links for a couple of reasons. First, while it is perfectly fine to share files that you're working on for feedback here, huge dumps of unorganized files aren't terribly helpful. Second, we don't allow submissions on behalf of others so there really isn't any incentive for someone to go through the files you dumped and organize them if they can't submit them in the end. There are resources out there that can help you organize these yourself and if you're interested in learning, I'm sure someone more knowledgeable about it than I am wound be happy to point you in the right direction.
Reply
Thanked by:
#3
(05-06-2021, 10:22 PM)Petie Wrote: I went ahead and removed your links for a couple of reasons. First, while it is perfectly fine to share files that you're working on for feedback here, huge dumps of unorganized files aren't terribly helpful. Second, we don't allow submissions on behalf of others so there really isn't any incentive for someone to go through the files you dumped and organize them if they can't submit them in the end. There are resources out there that can help you organize these yourself and if you're interested in learning, I'm sure someone more knowledgeable about it than I am wound be happy to point you in the right direction.
Well i can be interested in learning a couple of things about it. But personally i can say the only reason i posted a dump such like that, is because, since i CAN'T do all about it alone, i decided to at least post it there for someone that idk, wanted to see, check, or whatever. My intentions not was receiving credits for doing it, actually it don't matters to me.

I know the rules. But well, certainly there's nothing more to do.
Reply
Thanked by:
#4
Hi! Just want to chip in something I learned from Ton.

As someone who is ripping and reassembling sprites from 8 different games, I also need help to organizing them. So I asked Ton about this, and this is his reply:

Ton Wrote:If you helped organize and made a topic saying you were doing so, it would be no issue. Again, the problem is that a lot of people SAY they have the ok to upload someone else's work, but they generally don't. Anyone using your script would be doing their own rips. Thanks!

So first, you must show us the proof that you rip them yourself, like sharing the tool/script you used to rip them.

If anyone want to help out, they'll just need to make a topic to say so.

And since you shared the tool/script, they can also use that to rip it themselves. It will be considered doing their own rip, and they can submit them later.

As for the dump, I can't really do anything about it because they are do not have the game data together with PNG. The game data will tell you how to reassemble back the sprites, and I'll write a script to automate the whole thing. I have no intention to do everything manually.

How does those game files looks like? Which console is it from? Steam? 3DS? Switch?
- Rufas
Reply
Thanked by:
#5
(05-27-2021, 04:29 PM)rufaswan Wrote: Hi! Just want to chip in something I learned from Ton.

As someone who is ripping and reassembling sprites from 8 different games, I also need help to organizing them. So I asked Ton about this, and this is his reply:

Ton Wrote:If you helped organize and made a topic saying you were doing so, it would be no issue. Again, the problem is that a lot of people SAY they have the ok to upload someone else's work, but they generally don't. Anyone using your script would be doing their own rips. Thanks!

So first, you must show us the proof that you rip them yourself, like sharing the tool/script you used to rip them.

If anyone want to help out, they'll just need to make a topic to say so.

And since you shared the tool/script, they can also use that to rip it themselves. It will be considered doing their own rip, and they can submit them later.

As for the dump, I can't really do anything about it because they are do not have the game data together with PNG. The game data will tell you how to reassemble back the sprites, and I'll write a script to automate the whole thing. I have no intention to do everything manually.

How does those game files looks like? Which console is it from? Steam? 3DS? Switch?
- Rufas


HI! Well, i can explain in a bit HOW exactly i managed to get them out.

First thing to say, i used Ninja Ripper in this game.

WHY? Well, first it was the PC Steam version of it, since i don't have so much idea on doing scripts to get the files of their original data. I just managed to get the Assets with the LONG WAY.

But there's a script that works with the data in the game http://aluigi.zenhax.com/bms/azure_striker_gunvolt.bms, but it just Throw a lot of data that surely is compressed and need more work to get in with the files. It works with the 3 games i mentioned above.


PD. I JUST NOTICED, there's a new topic about the game files.
https://zenhax.com/viewtopic.php?t=15327&p=64259
Reply
Thanked by:
#6
Oh, so you are using the PC Steam version. I thought you are using emulator VRAM viewer tools or something. I wasn't following 3DS/Switch emulator news.

Searching around, I found it interesting Citra-emu (3DS emulator) report "Great" on running Gunvolt, while Yuzu (Switch emulator) can run it "Perfect". Never expect that.

https://citra-emu.org/game/azure-striker-gunvolt/
https://yuzu-emu.org/game/gunvolt-chroni...venger-ix/

Even more interestingly, the decompression algorithm is still haven't been figure out yet! With some dumb luck, I managed to figure it out. It is just good old Final Fantasy 7 type of compression. Those guys at ZenHax are overthinking it.

Here is the decompression code, at my GitHub repo:
https://github.com/rufaswan/Web2D_Games/...-irarc.php

I can confirm the code works for 4 games:
- Mighty Gunvolt
- Azure Striker Gunvolt
- Azure Striker Gunvolt 2
- Gunvolt Chronicles Luminous Avenger iX

The data for Mighty Gunvolt Burst is encrypted, so it doesn't work.

So yeah, in a way, I have nearly everything reassembled. This is Isola from Gunvolt Chronicles:
[Image: zoIFEOA.png]

Data-wise, it is like Vanillaware, they are all in quads. If you find some pixels looks strange, then it is cause by rounding errors.

I attached some decoded texture and game data file to use with quad player from Vanillaware Ripping Project. Enjoy!
- Rufas

P.S. I am also researching looping for animations. Besides loop once and loop infinite, I suspect it can also loop to certain frame, like a BGM music loop. Let me know if you can identify these kind of stuff. Thanks!


Attached Files
.zip   gva-20210531-0512.zip (Size: 939.23 KB / Downloads: 518)
Reply
Thanked by:
#7
(05-30-2021, 03:56 PM)rufaswan Wrote: The data for Mighty Gunvolt Burst is encrypted, so it doesn't work.
Wouldn't matter anyway, as the format used for that game isn't the same as those used in the other Gunvolt games (and also Blaster Master Zero, as it also uses the IRARC/IRLST formats). xttl over at XeNTaX did figure out how to decrypt those earlier, and I've been using that for my own pre-assembled rips from Mighty Gunvolt Burst.
Reply
Thanked by: rufaswan
#8
(05-30-2021, 03:56 PM)rufaswan Wrote: Here is the decompression code, at my GitHub repo:
https://github.com/rufaswan/Web2D_Games/...-irarc.php

I can confirm the code works for 4 games:
- Mighty Gunvolt
- Azure Striker Gunvolt
- Azure Striker Gunvolt 2
- Gunvolt Chronicles Luminous Avenger iX

Now that you mention that it makes sense.

Well to be fair i don't understand "HOW" to use that code.

If you can explain me that, thanks in advance in any case!
Reply
Thanked by:
#9
@RTB You are right! Blaster Master Zero also uses IRARC/IRLST format, so the script also works. That makes it 5 games now.

[attachment=12314]

However, unlike Gunvolt, most of the sprites in BMZ have an extra 'TLPI' section, and the texture is incorrectly converted. I have no idea how to fix them.

@HellZero Step-by-step on how to use my scripts to rip and reassemble the sprites:

Step 1) Get PHP 7.0+ from its official site https://windows.php.net/download/. You'll only need 3 files from the archive, "php.exe", "php7ts.dll", and "php.ini" (renamed from "php.ini-development"). My scripts doesn't need any PHP extensions.

Step 2) Download my GitHub repo https://github.com/rufaswan/Web2D_Games/. You'll only need "psxtools" folder under "tools/psxtools".
UPDATE : The latest changes broke the scripts, so you'll need the last working commit at Nov 3, 2021 : https://github.com/rufaswan/Web2D_Games/...03db1a7891

Step 3) Open cmd.exe (windows command line), run this on a IRLST file. Like the BMS before, it will extract and decompress the files to a new folder.

Code:
php.exe  psxtools/pc_gunvolt_irlst-irarc.php  FILE.irlst

Step 4) You'll be interested in the extracted .17 and .7 files. Run this to generate the QUAD and texture file from the attachment on the post before.

Code:
php.exe  psxtools/quad_pc_gunvolt_IOBJ.php  -gv/-gv2/gva/-mgv  FILE.17
-gv  = Azure Striker Gunvolt IDTAG
-gv2 = Azure Striker Gunvolt 2 IDTAG
-gva = Gunvolt Chronicles Luminous Avenger iX IDTAG
-mgv = Mighty Gunvolt IDTAG

NOTE: The script only works for files that has 'IOBJ' string in them.

Step 5) If you want to open with quad player, skip this step. If not, run this to render all assembled sprites as individual frames.

Code:
php.exe  psxtools/quad_tool_render.php  FILE.quad

Step 6) As I do not use any image library, those CLUT and RGBA files are actually raw pixel data. You can convert them into PNG by running:

Code:
php.exe  psxtools/img_clut2png.php  FILE.clut
php.exe  psxtools/img_clut2png.php  FILE.rgba

From here, you can make a sprite sheet from the resulted PNG.

You can also refer to the source code to understand how I do it.

Hope that helps!
- Rufas
Reply
Thanked by: Deep Weeb
#10
(05-31-2021, 04:13 PM)rufaswan Wrote: @RTB You are right! Blaster Master Zero also uses IRARC/IRLST format, so the script also works. That makes it 5 games now.



However, unlike Gunvolt, most of the sprites in BMZ have an extra 'TLPI' section, and the texture is incorrectly converted. I have no idea how to fix them.

@HellZero Step-by-step on how to use my scripts to rip and reassemble the sprites:

Step 1) Get PHP 7.0+ from its official site. You'll only need 3 files from the archive, "php.exe", "php7ts.dll", and "php.ini" (renamed from "php.ini-development"). My scripts doesn't need any PHP extensions.

Step 2) Download my GitHub repo. You'll only need "psxtools" folder under "tools/psxtools".

Step 3) Open cmd.exe (windows command line), run this on a IRLST file. Like the BMS before, it will extract and decompress the files to a new folder.

Code:
php.exe  psxtools/pc_gunvolt_irlst-irarc.php  FILE.irlst

Step 4) You'll be interested in the extracted .17 and .7 files. Run this to generate the QUAD and texture file from the attachment on the post before.

Code:
php.exe  psxtools/quad_pc_gunvolt_IOBJ.php  -gv/-gv2/gva/-mgv  FILE.17
-gv  = Azure Striker Gunvolt IDTAG
-gv2 = Azure Striker Gunvolt 2 IDTAG
-gva = Gunvolt Chronicles Luminous Avenger iX IDTAG
-mgv = Mighty Gunvolt IDTAG

NOTE: The script only works for files that has 'IOBJ' string in them.

Step 5) If you want to open with quad player, skip this step. If not, run this to render all assembled sprites as individual frames.

Code:
php.exe  psxtools/quad_render.php  FILE.quad

Step 6) As I do not use any image library, those CLUT and RGBA files are actually raw pixel data. You can convert them into PNG by running:

Code:
php.exe  psxtools/clut2png.php  FILE.clut
php.exe  psxtools/clut2png.php  FILE.rgba

From here, you can make a sprite sheet from the resulted PNG.

You can also refer to the source code to understand how I do it.

Hope that helps!
- Rufas

It surely helps! Thank you!

And i have noticed, some files can't be converted. As i can say those specific files are Multi-Palette sprites and in LAIX that is a thing, some NPC's, Enemies, Bosses and Copen itself have that specific problem.

[Image: tex_0150_noesispreviewdata.png]With Ninja Ripper this happens and the PAL comes off individually too
[Image: unknown.png]

This was the PAL. Then basically they can be a problem.
Reply
Thanked by:
#11
(05-31-2021, 04:13 PM)rufaswan Wrote: @RTB You are right! Blaster Master Zero also uses IRARC/IRLST format, so the script also works. That makes it 5 games now.



However, unlike Gunvolt, most of the sprites in BMZ have an extra 'TLPI' section, and the texture is incorrectly converted. I have no idea how to fix them.

@HellZero Step-by-step on how to use my scripts to rip and reassemble the sprites:

Step 1) Get PHP 7.0+ from its official site. You'll only need 3 files from the archive, "php.exe", "php7ts.dll", and "php.ini" (renamed from "php.ini-development"). My scripts doesn't need any PHP extensions.

Step 2) Download my GitHub repo. You'll only need "psxtools" folder under "tools/psxtools".

Step 3) Open cmd.exe (windows command line), run this on a IRLST file. Like the BMS before, it will extract and decompress the files to a new folder.

Code:
php.exe  psxtools/pc_gunvolt_irlst-irarc.php  FILE.irlst

Step 4) You'll be interested in the extracted .17 and .7 files. Run this to generate the QUAD and texture file from the attachment on the post before.

Code:
php.exe  psxtools/quad_pc_gunvolt_IOBJ.php  -gv/-gv2/gva/-mgv  FILE.17
-gv  = Azure Striker Gunvolt IDTAG
-gv2 = Azure Striker Gunvolt 2 IDTAG
-gva = Gunvolt Chronicles Luminous Avenger iX IDTAG
-mgv = Mighty Gunvolt IDTAG

NOTE: The script only works for files that has 'IOBJ' string in them.

Step 5) If you want to open with quad player, skip this step. If not, run this to render all assembled sprites as individual frames.

Code:
php.exe  psxtools/quad_render.php  FILE.quad

Step 6) As I do not use any image library, those CLUT and RGBA files are actually raw pixel data. You can convert them into PNG by running:

Code:
php.exe  psxtools/clut2png.php  FILE.clut
php.exe  psxtools/clut2png.php  FILE.rgba

From here, you can make a sprite sheet from the resulted PNG.

You can also refer to the source code to understand how I do it.

Hope that helps!
- Rufas

Any way to do steps 4 and 6 in a batch? It's kinda cumbersome to do each one by one.  Ouch!

Also when trying to decompress GV2's "cmn_demo.irlst" (where I assume cutscenes are being stored) it will get the following error message
Code:
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)
Reply
Thanked by:
#12
(06-01-2021, 06:51 PM)Deep Weeb Wrote: Any way to do steps 4 and 6 in a batch? It's kinda cumbersome to do each one by one.  Ouch!

Also when trying to decompress GV2's "cmn_demo.irlst" (where I assume cutscenes are being stored) it will get the following error message
Code:
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)

I think... Well i don't surely knows how to do a batch. But surely you will get that error if you don't change the memory_limit in php.ini file.
Reply
Thanked by: Deep Weeb
#13
(06-01-2021, 10:13 PM)HellZero Wrote:
(06-01-2021, 06:51 PM)Deep Weeb Wrote: Any way to do steps 4 and 6 in a batch? It's kinda cumbersome to do each one by one.  Ouch!

Also when trying to decompress GV2's "cmn_demo.irlst" (where I assume cutscenes are being stored) it will get the following error message
Code:
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)

I think... Well i don't surely knows how to do a batch. But surely you will get that error if you don't change the memory_limit in php.ini file.

Yep, it worked  Big Grin

Also, is this script exclusively for the PC version of each of these games? Because the PC version of Blaster Master Zero 2 seems to have further data encryptation (much like the PC versions of Bloodstained Curse of the Moon 1&2 and Mighty Gunvolt Burst). No file names, just random letters and numbers.

(06-01-2021, 10:13 PM)HellZero Wrote:
(06-01-2021, 06:51 PM)Deep Weeb Wrote: Any way to do steps 4 and 6 in a batch? It's kinda cumbersome to do each one by one.  Ouch!

Also when trying to decompress GV2's "cmn_demo.irlst" (where I assume cutscenes are being stored) it will get the following error message
Code:
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes)

I think... Well i don't surely knows how to do a batch. But surely you will get that error if you don't change the memory_limit in php.ini file.

Yep, it worked  Big Grin

Also, is this script exclusively for the PC version of each of these games? Because the PC version of Blaster Master Zero 2 seems to have further data encryptation (much like the PC versions of Bloodstained Curse of the Moon 1&2 and Mighty Gunvolt Burst). No file names, just random letters and numbers (while files from the Switch version are normal).
Reply
Thanked by:
#14
(06-01-2021, 11:05 PM)Deep Weeb Wrote: Also, is this script exclusively for the PC version of each of these games? Because the PC version of Blaster Master Zero 2 seems to have further data encryptation (much like the PC versions of Bloodstained Curse of the Moon 1&2 and Mighty Gunvolt Burst). No file names, just random letters and numbers.
It's the same encryption / formats used in Mighty Gunvolt Burst (and by extension, Bloodstained: Curse of the Moon 1/2 and Dragon Marked for Death). For those games, the PS4 and Switch versions (but not 3DS) would be identical to the PC version format-wise. The Gunvolt trilogy (and Blaster Master Zero/Mighty Gunvolt) uses console-specific swizzling, so you wouldn't be able to use rufaswan's tool for non-PC versions.
Reply
Thanked by:
#15
Well, after seeing more files (this time in GV2) i got some issues

[Image: A9DmoJfglKf2AAAAAElFTkSuQmCC.png]
[Image: 8TYCxFAepwAAAABJRU5ErkJggg.png][Image: B0W4klrvXlh1AAAAAElFTkSuQmCC.png]
These are stored in cmn_bs. Maybe can be better in the other files... But that issue in the quads...
Reply
Thanked by:


Forum Jump: