Sunday, December 6, 2015

New Project: Unnamed RPG Maker MV Game!

It's been a while since I last posted anything on this blog and a lot of projects have come and gone in the meantime. The simple fact of things is that I've been busy (getting a new job, moving, having a baby, etc). But it's time to start a new project, this time in RPG Maker MV!

RPG Maker Again?

When I was a kid, I went over to my buddy Drew's house a lot. One day, Drew showed me some weird, half-translated program he'd downloaded somewhere called RPG Maker 95. From there, my life was changed forever.

This past October, Degica released the new RPG Maker MV! It boasts a number of improvments over previous iterations, most notably replacing RGSS3 (their proprietary Ruby build) with JavaScript (something I'm much more familiar with as a web developer) and mobile app export capabilities (though as it turns out there are some significant downsides to this).

To get used to the application, I've decided to make a small game in it. If possible, I'd like to release it on my new (upcoming) website. I figure I'd like to document the steps I'm taking as a way of thinking through things a bit more.

Oh, So The Game Makes Itself For You With RPG Maker?

No. No, no, no, no, no. It vastly lowers the barrier to getting started, sure, but making a good RPG Maker game is hugely more difficult than what people typically expect when they hear about this tool for the first time. With this lower barrier to entry, lots of people pump out low-effort games and perpetuate this other weird perception that games made with RPG Maker can't be good (some Steam releases sure haven't helped with this). It would be more accurate to say that games made with RPG Maker can more easily be bad. If you look at good RPG Maker games you'll see that not only are they possible, but they can be downright amazing! They just take a lot more effort.

What Makes Your Game So Good?

The games I linked above are both VERY customized. They have custom art assets, custom music, and a lot of time and effort poured into their mechanics. As evidenced elsewhere on this site, I am not great at spriting or drawing and it may surprise you to discover I am not good at making music either. The most I can hope for is to make a game with some interesting mechanics and then to make it available for little or no money (this is a complicated topic that I'll expand on later as the game draws closer to completion).

What Mechanics Are You Offering Then?

I'm going to be combining things I've learned from past projects documented on this blog and elsewhere to create a short, open-ended adventure with the following neat ideas:

  • Multiple paths story paths
  • Class based skill system
  • Monster ecosystem and population modelling
  • Light supply & demand modelling

This is all subject to change, of course, and I'll be expanding upon these ideas more later, but I think this is a good starting point. Please look forward to my next entry where I'll discuss the game's critical path.

How to Enhance an SNES Game With the MSU-1 - Part 3: Failure and Success

Previous entries in this series are part 1 and part 2!

Utter Failure

In my first post in this series, I said I was going to document my foray into the world of SNES romhacking and I did. I learned a lot of assembly and had fun for the most part. But did I successfully create a patch for Zelda 3 to use MSU-1 music? As you may have guessed by the 2+ years between the last entry in this series and this one, the answer is a resounding "no." And that's okay.

It's Not So Bad

Frankly, I just didn't know enough about what I was doing. I didn't know enough about the MSU-1. I didn't know enough about the implementation of it in the SD2SNES. I didn't know enough about the SNES assembly language. I still don't know enough to do this sort of thing! That's okay, I've got plenty of other interests to pursue.

So why am I posting again after all this time? Well, I did want to document what has happened since I wrote the last entry in this series since those two posts are by far the most popular on this blog (and rightly so). I feel obligated. It's just taken me a while to get around to it. If you're reading this to attempt writing your own MSU-1 patch, perhaps I can offer you just a bit more guidance.

What Little Advice I Can Give: Ask For Help

The one thing I didn't do enough of was asking for help. There are plenty of people in the romhacking community who have already done this sort of thing. There are forums where you can post and ask them questions. There is absolutely no guarantee that they'll respond, and nor should there be. I didn't ask for help almost exclusively because I didn't want to bother these people. What right did I, a total newbie, have to ask for help if I hadn't tried myself first? Well, I did try and I wasn't getting anywhere. I should've asked for help. 

I want to stress that I am not one of the people you should ask for help. Everything I know about the MSU-1 I've documented here in these articles. I've provided links to everything I found. Ikari_01, developer of the SD2SNES even reached out to me on the comments offering to help. I should've taken them up on it, but by the time they reached out to me, I was already fed up with romhacking and had moved on to other things. If you're reading this, Ikari, thank you for your offer. If I ever try this sort of thing again, I'll not pass up such opportunities. As it stands, though, I got so frustrated with my lack of knowledge and progress that there's no way I can bring myself to try again.

A Link to the MSU-1

So where does this leave Zelda 3? It's gotten the patch that I always hoped it would, actually! Back in October 2014, Conn79 got in touch with me over GitHub where I'd posted my patch source code telling me that he'd been working (with others) on a similar patch. Luckily for everyone, he had succeeded where I'd failed! You can check out the thread about his patch here!

It turns out that all my work wasn't entirely pointless though, as it gave him the clue they needed to get SD2SNES working. You can read our discussion, with a bit more technical details of how it was accomplished as well as a link to the disassembled patch that was finally produced. And did you catch that bit at the end of our discussion? They asked for help.

Final Thoughts

Romhacking is super cool and I'd love to learn more about it and give it another shot some day, but for now I'm happy to sit on the sidelines as folks who have more experience than I do crank out great translations and cool patches. I'm perfectly happy to focus more on my programming craft for my day job and my hobby game development that I've covered elsewhere on this blog.

If there's any questions I can answer or any notes I can publish from my romhacking attempt, please let me know and I'll make it happen.

Good luck, all you MSU-1 folks! Please make lots of great music patches for me to play!