This might be too specific a technical question, but a lot of you use Unity and I got good help last time.
So I implemented a procedurally generated tileset, which wasn't too difficult (aside from some weird quirks, and still figuring out rule tiles), but I'm having trouble figuring out how to handle the colliders.
So for some context, I'm making a game with the same viewpoint as Pokemon and I'm wondering how you actually handle overlapping sprites like this (ie. where a character overlaps with part of a house or a sign). I'm assuming for structures the collider covers them in their entirety, but for NPCs and the player the collider only covers their feet so they can "walk up" to anything properly?
So my problem is that unlike Pokemon, I also still need things like enemy attacks to collide with the entirety of the player. Should I just use a separate collider in that case (and have that one ignored by stuff like buildings/structures?)
Depending on how physics-based or tile-based your game is, you may not want to use colliders at all. Even if you use colliders, you may want to use capsules rather than rectangles to make it easier for characters to navigate corners.
Re: buildings: depends on what you want to do. If you want your characters to walk behind buildings, then the building collider would only be its base. If you want to prevent this, then yeah, it would be the entire building sprite.
Re: enemy attacks: you could indeed use different colliders, but I would certainly would not; I'd still use the smaller, player-feet collider. It just feels wrong that an enemy can hit you by visually grazing your sprite's head, even though logically their attack wouldn't have actually reached the tile where your character is standing. To take it to its logical extreme, It just doesn't make sense that an enemy attacking from the north is able to hit e.g. a very tall character from far away.
In general, try to keep player hurtboxes and enemy hitboxes small, while keeping player hitboxes and enemy hurtboxes big. It's always more satisfying to err on the side of the player whenever their attacks graze enemies or viceversa.