Skeetendo

’Cause all games were better on the GBC

You are not logged in.

#1 2016-05-06 21:32:30

pm2k
Member
From: Germany
Registered: 2016-05-06
Post 1/10

Pokecrystal: Changing Sprites

So I've tried to change Ditto's front sprite with the pokecrystal disassembly but I'm very confused. I managed to convert the sprites to .png and change the picture size in the base stats data but when I try to make the rom it gives out an error because the sprites are too big. I also don't know whether just making the .png  bigger was the right thing to do... won't the animation get messed up?
And what's the deal with the .pal files? Will I need to edit those or is saving the picture with the right color depth enough?

Any help is appreciated, thanks in advance.

Offline

#2 2016-05-07 01:42:04

comet
Member
Registered: 2012-04-09
Post 637/672

Re: Pokecrystal: Changing Sprites

I left this half broken last time I tried to make it consistent.

It expects graphics that look like this:

hwC3ouL.png

It turns that into 1. the condensed graphics, 2. frames.asm, 3. bitmask.asm, 4. normal.pal. The regular converted images will be interpreted this way, which would make 2 and 3 wrong.

The correct graphics are in a side branch: https://github.com/yenatch/pokecrystal/ … /gfx/pics/
There's also a script in extras/pokemontools/dump_gfx.py that will dump them should you need it.

The only other files you should need to edit are anim*.asm if you add/remove frames.

The 'too big' issue is because the compressor we use is suboptimal. It spits out data that takes up more space than the original, and the sections are completely full, so even a slight increase in size will make it too big. The solution is to move pics into another section until the bank has enough space (usually you only need to move one pic out of a bank). The easiest way to do that is something like this:

SECTION "abra/front", ROMX
INCBIN "gfx/pics/abra/front.2bpp.lz"

and it will figure out where to put it for you.

Worse, Crystal is picky about what banks you can put pics in. To fix that, replace the function FixPicBank (gfx/load_pics.asm) with this:

FixPicBank:
    add PICS_FIX
    ret

I'd like to make all of these things easier. Until the compressor is sorted out it can't be like pokered where it's just the pngs. We could commit the pretty pngs as guides.

Offline

#3 2016-05-07 10:49:49

pm2k
Member
From: Germany
Registered: 2016-05-06
Post 2/10

Re: Pokecrystal: Changing Sprites

Thanks for the response, I've done everything you said and shifted the Sections around until I got no more "Section too big" errors,
but now I get an "Unable to load fixed ROMX section into bank $48" error when I try to make the rom and
I'm pretty clueless why that happens... :/

Last edited by pm2k (2016-05-07 10:50:07)

Offline

#4 2016-05-07 17:17:33

comet
Member
Registered: 2012-04-09
Post 639/672

Re: Pokecrystal: Changing Sprites

It means there's two or more sections trying to fit into bank $48 but there's not enough room for both.

Bank $48 is PICS_1. https://github.com/pret/pokecrystal/blo … ts.asm#L53

Offline

Board footer

Powered by FluxBB