For the last couple of months I've been working on a prototype for an isometric rpg built in RPGMV. To clarify, it's not a tactics style one (like FF Tactics Advance), it's more like a Megaman Battle Network thing (simpler). I've been to hell and back working on this, and I thought it would be a really good opportunity to share the things I've learned with anyone who's curious about attempting an Iso game with RPGMV (hint:don't.).
Disclaimer: everything I'm writing is based on using orthagonal (square) tiles. True iso usually uses 1:2 ratio tiles (instead of 1:1). I'm also not using any fancy engine, though I have been using the TileD plugin to experiment with tile sizes. However, everything I'm writing could totally be done in-editor in RPGMV.
Lesson one: Graphics
Pixeling in Iso is a bit different from the standard top down.
- It's much slower. You're not pixeling at a 45* angle like you'd think, you're actually pixeling at something like, 26.565*. This means you can't take any real shortcuts when drawing (ie, you can't hold shift and draw).
- You will need 2-4x the amount of iso tiles to do the same job as top-down tiles. Even a basic wall, which would only need 3 tiles in top down (top, bottom and middle), requires 7 tiles per direction in iso.
- Your maps will be huge. Basically for every 1 top-down tile, you'll need to account for 2 (wide) iso tiles.
- Planning out your overlays (or star passability) is a bit of a nightmare if your sprites are more than 2 iso tiles tall.
- Mapping an iso map is really, really hard. It's almost impossible not to think of it as a kind of 3d. Areas that look like they should be walkable won't be, and things you should be able to go around you probably won't be able to depending on your setup. Even guaging the general size of your map is extremely tricky since you have to start mapping at the corners (which is like the middle of the x or y axis of the editor) of your room which are not the same as the corners of the editor.
- Iso maps are also really huge. I made a 30x30 top-down tile map room, and then recreated it at the same scale in iso for a whopping 90x140 tiles.
- It's really hard to make a sprite look like it's the same scale as the tiles (ie, a character looking like they're the right size to sit in a chair) without a crazy amount of issues that I'll write about below.
Lesson two: Collision and Events
- If you want collisions to work properly, do not use sprites wider than your tile size. If you do, you will have to make custom bounding boxes for each direction in order to prevent your sprite from overlaying on top of things you don't want it to (ie, a character's foot standing on the bottom of a wall instead of in front of it).
- If you can, use sprites narrower than your tile size since you'll have a much easier time getting something small to navigate around a map with tile-based collision detection.
- Moving characters diagonally with the keyboard through iso hallways will drive you crazy because the keyboard will move you at 45* when ^ and > are pressed together when you should be moving at 26.565*.
You can counteract this with a script that resets the movement angles of your keypresses, but that opens up a whole 'nother can of worms.
[*]Eventing is tricky because you'll frequently need two event tiles in iso for every 1 tile in a top-down view. Sometimes you might even need three. The logistics for this is just a right pain in the patootie, and getting the alignment of an event tile so that it's accessible from all angles that visually make sense in Iso is very tricky and can be very limiting.
[*]Using smaller tile sizes or a collision map does not make navigating an iso map easier for players. In fact, smaller tile sizes will complicate your collision detection.
Months of experimentation later, I can safely say that RPGM is just not good for isometric games. It's not built for it, it doesn't work very well, and really if you want real isometric behavior you're either going to have to use another engine that's built to support it, write an iso engine ON TOP of RPGMV (and thereby effectively disabling a lot of features RPGMV is picked for), or write your own engine. After all is said and done, I'm just not sure RPGM isometric is worth all the pain.
For those of you who would like to experiment with iso for giggles, I'm happy to let you play with my iso tilesets so you don't have to draw them yourself.
As for me, I think I'll get back to the drawing board and rethink the visuals of my own game. *le sigh*