Gruedorf Post 2021-08-15
- (SQ2) Bigger overworld map
- (SQ2) A few areas
- (SQ2) Confronting RPGMaker's limitations
Expanding the World
Stuck with working on SimpleQuest 2 this week. I'm looking forward to getting back to Black Mountain, kind of, but I still needed the "break". I expanded the overworld map from a meager 20x15 tiles to a whopping 62x62 -- exactly one quarter of the original Dragon Quest's overworld map size. I filled out a lot of it while thinking about the structure and story of the game. I've added the first other areas outside of the initial town, Seaside, including a small logging camp, a second town (Lakeside), and the entry area for the first dungeon.
It's still fun. It's nice to have an existing set of graphics to work with. I'm starting to edge into the place that I always, eventually, end up with RPGMaker, though...
RPGMaker is a lot of fun. It's very good at making exactly the game it was built to make -- a pretty standard jRPG with about half the bells and whistles you want. The other half of those bells and whistles though... Yikes. Here are two of the things I've been wrestling with:
Cutscenes with the whole party in them. jRPGs tend to go one of two ways: You've got a silly conga-line of people trailing off behind you (with a total party length significantly longer than the width of any town in the world), or you've got the lead character standing in for the whole party. I personally lean toward the second for reasons both technical and taste-related, but I can appreciate the first. The default in RPGMaker is the conga-line, but you can toggle that off. Easy!
Until you want a cutscene. It turns out that when you're writing a cutscene, if you want to control the sprites of the rest of the party, you... can't. Full stop. They are simply not available for targeting in the event scripting. This is true whichever style of party display you've chosen. Even dipping down into the JS layer does not give you a good way of accessing them. No problem, right? Just spawn new sprites! Wrong! You can't do that either, and if you could, you'd still have no way of targeting them.
The result? Every single map has three hidden entities (or "events" in RPGMaker terminology) that I teleport to the player for a cutscene, can script, and then hide them at the end of the cutscene. These have to be created in the editor, and they must be in the same "slots" on each map, because you also can't reference an event by name. I'm working with this by creating a template map that just has those three events, and creating a copy when I'm making a new map instead of starting from scratch.
Multiple copies of vehicles. RPGMaker has the classic three RPG vehicles built right in: a boat that can go in shallow water, a ship that can go in any water, and an airship that can fly anywhere but can only land some places. It's easy to change the look of them, and put them wherever you want. You can hide them until they're created/discovered, move them around as parts of events, etc etc.
What you cannot do is have more than one of each. You must have at most one boat in the entire world, one ship, and one airship. (You also cannot easily change which tiles are allowable for boats vs ships, but that's a problem for another time I guess.)
I've figured out a scripting solution for this where I can put dummies down in the world that, when activated, will swap places with the actual boat, letting you use it seamlessly as if it were a boat (and leaving the dummy in the boat's previous location so it can be swapped back later if necessary). This is offensive to my sensibilities, but whatever. It works, though I am still trying to figure out exactly how to persist this across map loads (i.e. I want ALL of the various boats to stay where they were, not just the last one you used, when you come out of town.)
I'm sure I'll keep finding things that annoy me, and maybe being annoyed with RPGMaker will chase me back to Black Mountain faster, who knows? I've barely even scratched the surface on combat in SimpleQuest 2, so I'm sure there will be more to complain about.
I also dumped most of a glass of water directly in my keyboard this week. I'm seeing if it'll work once it's dried out, but things aren't looking good. Thankfully I have a million keyboards kicking around so it's not ideal but at least I'm not stuck in "I literally can't type things into my main computer" territory.
See you next week!