Skeetendo

’Cause all games were better on the GBC

You are not logged in.

#1 2011-12-15 16:00:12

Squall
Member
From: Florida
Registered: 2011-12-01
Post 51/302

Pokémon Crystal Graphic Decompression

I saw this in another thread:
http://fusoya.eludevisibility.org/lc/index.html

But I have no idea how to use this graphics decompressor. Is there another one like this? It's for Gold/Silver but I heard it can be used for Crystal as well. I saw a hack of crystal awhile back where you could play as Jessie or James, and you got Meowth as a starter. I figured the Ows he did was in TLP, but the backsprite I have no idea what he did for. I have no intention of switching to Gold, as I already have my heart set on this.

I really wanna find out how to decompress and edit graphics!

Please help and thank you,
Pia Carrot

Offline

#2 2011-12-15 16:28:41

Miksy91
Member
Registered: 2010-10-16
Post 671/2,144

Re: Pokémon Crystal Graphic Decompression

Decompressing can be done straight by hand (if sawakita or stag couldn't have done that, they wouldn't have been able to create tools for decompressing either).
It can be quite difficult though.

Offline

#3 2011-12-15 16:41:43

Squall
Member
From: Florida
Registered: 2011-12-01
Post 52/302

Re: Pokémon Crystal Graphic Decompression

So I've noticed. At the moment I'm just mapping but I also have no idea how to do map connections; I'm probably going to have to recruit someone on my team to do it. And I'm guessing that decompressing by hand would require ASM and a debugger, both of which are brain-wracking for me.

It also doesn't help that most of the crystal documentation has been taken down on the internet (datacrystal deleted theirs for some reason T__T)

Thanks for the help, Mikys91!

Offline

#4 2011-12-15 21:50:31

381/692

Re: Pokémon Crystal Graphic Decompression

GSC graphics compression is described in a document by necrosaro.

Since you’re working with Crystal, it’s also worth pointing out some German documentation related to Pokémon animations.

#5 2011-12-15 23:07:28

Squall
Member
From: Florida
Registered: 2011-12-01
Post 54/302

Re: Pokémon Crystal Graphic Decompression

Thank you IIMarckus, I saw that decompressor earlier today but couldn't get it compatible with Crystal. I'll check out the German documentation. Apparently Glitchcity.info is also hosting the RAM Map but they're updating the site or something.

Offline

#6 2011-12-16 00:36:16

stag019
Idea Killer
Registered: 2011-01-05
Post 77/602

Re: Pokémon Crystal Graphic Decompression

IIMarckus wrote:

GSC graphics compression is described in a document by necrosaro.

Since you’re working with Crystal, it’s also worth pointing out some German documentation related to Pokémon animations.

Also thank you for that second link, IIMarckus. I already wrote a GSC decompressor a long time ago (but not compressor because that would be much more difficult and I have been able to use Lunar Compress before). If you've noticed my Pokedex doesn't show the Crystal graphics, because it was all or nothing for me. I'll read over that document some time (Google translate; I don't understand much German, or if Tauwasser could rewrite it in English that'd be awesome too) and hopefully I'll be able to implement it. Plus, I've always wanted to try an Animated PNG project in PHP, because I'd have to do it all from scratch because GD doesn't support it (or didn't last I checked). And the Wikipedia article on APNG is spectacular, so this sounds like a fun project for me.

...

But yeah thanks. :P


You can try to hide yourself in this world of pretend; when the paper's crumpled up, it can't be perfect again.

Offline

#7 2011-12-16 19:41:21

Squall
Member
From: Florida
Registered: 2011-12-01
Post 61/302

Re: Pokémon Crystal Graphic Decompression

stag019 wrote:
IIMarckus wrote:

GSC graphics compression is described in a document by necrosaro.

Since you’re working with Crystal, it’s also worth pointing out some German documentation related to Pokémon animations.

Also thank you for that second link, IIMarckus. I already wrote a GSC decompressor a long time ago (but not compressor because that would be much more difficult and I have been able to use Lunar Compress before). If you've noticed my Pokedex doesn't show the Crystal graphics, because it was all or nothing for me. I'll read over that document some time (Google translate; I don't understand much German, or if Tauwasser could rewrite it in English that'd be awesome too) and hopefully I'll be able to implement it. Plus, I've always wanted to try an Animated PNG project in PHP, because I'd have to do it all from scratch because GD doesn't support it (or didn't last I checked). And the Wikipedia article on APNG is spectacular, so this sounds like a fun project for me.

...

But yeah thanks. :P

...So, you have made a GSC Decompressor? Is it available for download? No matter what I seem to be constantly getting vague answers and then stream Google for hours upon end searching for tutorials or some kind of program, because nobody seems to like posting links (which would be helpful). I do not mean to sound rude at all, I'm just curious.

Offline

#8 2011-12-16 20:47:57

stag019
Idea Killer
Registered: 2011-01-05
Post 80/602

Re: Pokémon Crystal Graphic Decompression

Why not just use Lunar Compress like you mentioned in your first post?

Do you understand how to use a command prompt? If not, Google it, learn it, and then open one and change your directory to the same as Lunar Compress's.

(This is where I took a break to try using Lunar Compress myself again to remember how it worked. Took me much more time than it should have.)

Make sure Pokemon Gold is in the same directory as Lunar Compress (I've never tried Crystal and therefore don't know all the offsets needed).

Type this into the command prompt.

decomp pkmngold.gbc output.bin 485E2 2 0

And hit enter. If it successfully succeeds, the compressed size should be 2BD and uncompressed size should be 310. Open output.bin in Tile Molester and verify that View -> Codec is set to 2bpp Planar. Then, go to View -> Block Size -> Custom. Set the Columns to 1 and Rows to 7.

Look familiar?

Oh right to answer your question my decompressor has small bugs due to the way I implemented it. I wouldn't have to change too much to fix it, but I'd have to wrap my brain around how would be the most efficient and working way...


You can try to hide yourself in this world of pretend; when the paper's crumpled up, it can't be perfect again.

Offline

#9 2011-12-16 20:57:30

Squall
Member
From: Florida
Registered: 2011-12-01
Post 62/302

Re: Pokémon Crystal Graphic Decompression

stag019 wrote:

Why not just use Lunar Compress like you mentioned in your first post?

Do you understand how to use a command prompt? If not, Google it, learn it, and then open one and change your directory to the same as Lunar Compress's.

(This is where I took a break to try using Lunar Compress myself again to remember how it worked. Took me much more time than it should have.)

Make sure Pokemon Gold is in the same directory as Lunar Compress (I've never tried Crystal and therefore don't know all the offsets needed).

Type this into the command prompt.

decomp pkmngold.gbc output.bin 485E2 2 0

And hit enter. If it successfully succeeds, the compressed size should be 2BD and uncompressed size should be 310. Open output.bin in Tile Molester and verify that View -> Codec is set to 2bpp Planar. Then, go to View -> Block Size -> Custom. Set the Columns to 1 and Rows to 7.

Look familiar?

Oh right to answer your question my decompressor has small bugs due to the way I implemented it. I wouldn't have to change too much to fix it, but I'd have to wrap my brain around how would be the most efficient and working way...


Alright, thank you. I couldn't figure out how to use it; I didn't realize I had to use the command prompt. If I can ever find the offsets I'll give it a shot. But for now, I'll test it out on gold.

Offline

#10 2011-12-16 21:00:18

stag019
Idea Killer
Registered: 2011-01-05
Post 82/602

Re: Pokémon Crystal Graphic Decompression

I might know where, I've just never tried.

By the way, a reference:
Silver version offsets
Gold version offsets


You can try to hide yourself in this world of pretend; when the paper's crumpled up, it can't be perfect again.

Offline

#11 2011-12-16 21:02:08

Squall
Member
From: Florida
Registered: 2011-12-01
Post 63/302

Re: Pokémon Crystal Graphic Decompression

Oh, wow. This will help a ton. I heard somewhere that in Crystal the sprites were only a few bytes off from Gold's. Is this true? I figure I can edit the first frames of Pokémon until I find the offsets for the other frames and Kris.

Offline

#12 2011-12-18 07:55:00

stag019
Idea Killer
Registered: 2011-01-05
Post 89/602

Re: Pokémon Crystal Graphic Decompression

According to this, the main pointer table should be at 48:4000 (0x120000), but this doesn't appear to be correct. I can't find any other info pertaining to Crystal version either.

Damn you third versions, always being less documented! :(


You can try to hide yourself in this world of pretend; when the paper's crumpled up, it can't be perfect again.

Offline

#13 2011-12-18 11:08:29

Tauwasser
Member
Registered: 2010-10-16
Post 252/428

Re: Pokémon Crystal Graphic Decompression

stag019 wrote:

According to this, the main pointer table should be at 48:4000 (0x120000), but this doesn't appear to be correct.

The info is correct, I just checked the North American v1.0 and v1.1.

cYa,

Tauwasser

Offline

#14 2011-12-20 09:50:14

stag019
Idea Killer
Registered: 2011-01-05
Post 90/602

Re: Pokémon Crystal Graphic Decompression

Okay it was. I just had to properly translate the bank numbers to correct bank numbers (bank += 0x36).

So now Crystal works...

Anyways, Condensation, what exactly does the Eioffset and Abgleichtabelle mean? Also, would you know where the female character is? Both front and back pictures.


You can try to hide yourself in this world of pretend; when the paper's crumpled up, it can't be perfect again.

Offline

Board footer

Powered by FluxBB