• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

[Graphics] Custom Overworld Sprite Not Appearing

I've been trying to add a simple overworld sprite into pokeemerald. I've added in all of the necessary data (as far as I can tell) into all of the proper files. I've added the indexed sprite png as well as it's proper palette. There are no errors or warnings when the ROM builds. I can even see the sprite when I place an object that uses the sprite into a map using PoryMap. However, when I actually play the game, the object is completely invisible, but still there, since the player avatar can't walk through it. If I have the object use a different sprite, it's visible. Based on some debugging, the issue seems to be related to the pic table of the sprite. When I changed only the pic table and kept everything else the same, the sprite appeared. Here is the pic table for the sprite that I've declared in src/data/object_events/object_event_pic_tables.h:
Code:
const struct SpriteFrameImage gObjectEventPicTable_Bulbasaur[] = {
	overworld_frame(gObjectEventPic_Bulbasaur, 4, 4, 0),
	overworld_frame(gObjectEventPic_Bulbasaur, 4, 4, 1),
	overworld_frame(gObjectEventPic_Bulbasaur, 4, 4, 2),
	overworld_frame(gObjectEventPic_Bulbasaur, 4, 4, 3),
	overworld_frame(gObjectEventPic_Bulbasaur, 4, 4, 4),
	overworld_frame(gObjectEventPic_Bulbasaur, 4, 4, 5),
};
I've also attached the png file that holds the sprite pictures. I've tried deleting and rebuilding the sprite, reindexing, but none of it has worked. If anyone can explain why my sprite is invisible and how to make it visible, I would be greatly appreciative.
 

Attachments

  • [PokeCommunity.com] Custom Overworld Sprite Not Appearing
    bulbasaur.png
    560 bytes · Views: 13
Heya. I added lots of OWs myself and its hard to trouble shoot but will try my best.

https://github.com/pret/pokeemerald/wiki/Adding-new-overworlds

You've probably seen it but it also functions as a good check list.

src/data/object_events/object_event_graphics.h

spritesheet_rules.mk.

Are some I would check especially MK

You did the pic table

src/data/object_events/object_event_graphics_info.h

Is another one to check. You might want to install dynamic pals later as well as even when I got the OW to work due it using a new pal it did not show the correct color.
 
Back
Top