A couple more things done today!
I figured it was time to start working on an event handler. It only took like a minute to make, although I know it’s going to get a lot more complex down the line.
I then made it so that I can turn objects and NPCs on and off based on any given event flag. The internal setup is basically the same way EarthBound did it. I find I’m pretty much recreating the things I dubbed Text Pointer Table entries back when I first started hacking the EarthBound ROM.
I decided it was time to improve the way tiles work in the game. Before it just checked to see if something was Tile 0, and if it wasn’t, you couldn’t move.
So I made a basic Tile struct or class, I forget. Then I do stuff with it and yeah. I plan to improve this down the line too, like letting some tiles be interacted with and changed on the fly. And other stuff too, like animated tiles.
I’ve tried to do my own homemade tile graphics a couple times over the past couple weeks, all ending in failure. I think I learned enough of the basics to finally get my foot in the door, so I did a complete wipe of the existing tile sheet and did some quick new tiles of my own.
It’s not much, but I feel that even at this super-basic and ugly level it gives the game way more fun and character than before.
Trying to figure out how to get the roads and sidewalks to work properly was a huge pain. I know tile set pros probably know the ins and outs on what needs to be made whenever you make a new type of tile, I’ve had to figure it out all the hard way though. Luckily the dirth path wasn’t as hard, although I see that I could’ve added some extra tiles to allow for more interesting and complex paths.
I’m still trying to keep with the general idea of how NES graphics works, minus a few rule-breakings. For instance, on the NES, 16×16 blocks have to share the same 4-color palette. So I try to keep that in mind as I work on this. I also try to keep the palette colors close to the original NES’ palette. I don’t think many people will notice, but I feel limitations and disciplined consistency is what makes many games stand out from others.