Guest Blog: Musume
A Tale of Five Engines
Hi. My name is Rez, and I’m developing a side-scrolling action platformer named Musume.
Before you go much further into this blog, I want you to visit my game’s website and see what I’m doing: www.musumethegame.com, and I want you to do this for two reasons:
1. I promote my game absolutely every chance I get. If you’re a game dev, you should be doing the same.
2. This blog will make a lot more sense when you see the game I am making.
So go ahead. This blog will be here when you get back.
Did you visit it? Good.
I’m going to tell you which commercially available game engine I’m using to make this game, and why. It will take us five engines to get there. By the end, I hope that my experiences will help you pick the best engine for your project.
Ready? Here we go!
RPG Maker MV
I began my game dev journey about eighteen months ago by buying RPG Maker MV on Steam. At $70, it seemed like an extravagant purchase, but I had always wanted to make a video game, and it seemed like the best way for a complete beginner like me. I had tried to make a game with RPG Maker on my PlayStation 2 a long, long time ago, but made zero progress then. Older and wiser, I figured I could do better now.
I now laugh at the idea that I thought $70 was a lot of money to make a game. I have spent a whole lot more in getting Musume made since then.
$70 is an absolute bargain when you see everything that RPG Maker MV gives you. You have a character creator, enemies, music, and tiles to create towns, overworlds, and dungeons. No other engine (at least from the ones I tried) give you literally all the resources you need to make a complete game.
And make no mistake, RPG Maker MV (and the whole RPG Maker series) is an engine. It is a framework that you can use to build your game. There are thousands of RPG Maker-made games on the market, and most of them look the same because the devs all use the packed-in assets.
So why did I abandon it?
Because RPG Maker MV (and every single RPG Maker that came before it) is designed to create one specific type of game: a top-down, turn-based RPG. And I wanted to make something else.
I wanted to go 3-D.
After I decided that RPG Maker wasn’t going to cut it, I started looking around for something else. I still didn’t know much about game engines, but I did know that one name kept popping up over and over: Unity. I figured I had to check it out.
As it turned out, Unity is by far the most popular game engine on the planet among independent game developers, and for a very good reason: it’s free.
Well, there are some strings attached. However, if you’re reading this on a computer, you can – right now – download Unity for zero dollars. You can then use it to create a commercial game, and as long as that game doesn’t generate more than $100,000 in sales, or your studio doesn’t generate more than $100,000 in funding, every penny you make is yours to keep (minus royalties to places like Steam, of course). Exceed that limit, and you have to either pay for Unity Plus (a reasonable $25-$35 a month) or Unity Pro (an absurdly expensive $125 a month).
If you want, you can get one of the paid plans right off the bat; they come with extra features missing from the base version. Just remember, though: once you commit to a paid version of Unity, you are on the hook for a year. Use it for three months and then cancel? You still owe for the rest of the year, and Unity will get their money, even if you cancel the card you’re using to pay.
Needless to say, I got the free version. And I’m glad I did, because Unity and I do not get along.
Unity provides free tutorials. YouTube is full of free tutorials. Udemy has very good paid tutorials, at very reasonable prices. None of that mattered for me.
The fact is, going from a beginner-friendly engine like RPG Maker MV to Unity was like going from a go-kart to a Formula 1 car. The learning curve was just too steep, and I couldn’t wrap my head around how to make things happen in this engine. It wasn’t for lack of trying, mind you; I bought and read books on C# (the programming language Unity uses), I did tutorials, and I stayed up until 3-4 in the morning some days, trying to make something happen. No dice.
But then, I learned about Unity’s biggest rival: Unreal Engine.
Unreal Engine (UE) is the brainchild of Gears of War and Fortnite developer Epic Games, and is currently on its fourth iteration. It gets its name because it is a descendant of the engine used to create Unreal, Epic’s hit first-person shooter that came out in the late 90s.
Growing up, I had read about UE’s enormous power and thought that a mortal like me would never be able to touch it. Even after I got into game development, I just assumed that an Unreal license cost thousands of dollars a year. But after making no progress with Unity, I decided to check it out. How much, I wondered, does it cost to use Unreal Engine?
As it turns out, it doesn’t cost anything.
Unreal Engine is completely free. There are no subscription plans. You owe a 5% royalty to Epic for all sales above $3,000, but that’s it.
Once upon a time, Epic waived the royalty fee if you published to the Epic store, but that seems to have gone away.
Unreal Engine is also, on the surface, incredibly beginner-friendly. UE comes with something called “Blueprints”, templates for all kinds of games that you can use to jump-start your own development.
This sounded like a match made in heaven. I immediately downloaded UE.
And after struggling with it for a while, I gave up.
I had the same issue with UE as I did with Unity: the learning curve was just too steep for a beginner. This isn’t the engine’s fault – games are complex pieces of software, and they require complex tools – but it was far more than I was ready to handle. So, with much regret, I gave up, and looked for something else.
Gamemaker Studio 2
In my search, I found what finally seemed like the perfect match: Gamemaker Studio 2.
GameMaker Studio 2 (GMS2) is the “sequel” to GameMaker Studio, a hugely popular game engine that is tailored for 2-D games and designed to be easy to use. A license costs $99, but like with most engines, there is a free version available that you can use to see if it is right for you. This version is super-limited and you can’t make commercial games with it, but it’s a great way to get a taste without spending the money.
Yes, I originally wanted to make the game in 3D. But after banging my head against the wall with both Unity and Unreal Engine, I was more than willing to compromise.
GMS2 is basically a dumbed-down version of Unity, and for someone like me, that was perfect. The layout is similar, but the tools are easier to access and use, and the programming language was developed with beginners in mind.
GMS2 uses a proprietary programming language called Gamemaker Language (GML). This language is a simplified version of object-oriented languages like C# and C++, with enough wiggle room built in that you can write successful code even if you are (like me) a ham-fisted programmer.
GMS2 is where I first started having success in development. I learned how layers worked and how objects interacted with each other. I made real progress with GML, learning how to code fairly complex functions. It was good.
But it was still too hard.
Here’s my problem. I am a grown adult with a full-time job, spouse, and children. I have very little free time.
I am also not a natural programmer. It can take me weeks to learn and understand something in coding that may take a more gifted programmer only hours to learn.
Combine this lack of free time with the need to learn a simplified but still complex tool, and you have a recipe for frustration. And while I was finally able to get the game up and running (you can see the results in some of the videos on the website), development was still painfully slow, because I was having an extremely difficult time learning GML. It just wasn’t getting through.
So I finally caved and did something that, at the beginning of my game engine search, I swore I would never do: use a visual coding engine.
“Visual coding” is the buzzword around a lot of new game engines. More and more engines are hitting the market, promising you the ability to make a game without writing a single line of code. Construct 3 is one of the most popular.
Visual coding usually consists of connecting boxes or nodes that represent blocks of code. The idea is that you can link actions together without worrying about obscure language or syntax issues.
Construct 3 is the latest engine in the Construct line. It works entirely in your browser. And at $100 a year for the subscription, it is by far the most expensive of all the engines I’ve tried (other than BuildBox, but that’s a story worth a whole blog entry unto itself).
It is also stunningly easy to use, although I struggled with it a bit at first.
The interface is extremely intuitive. You basically create game objects, and assign them actions based on options in a variety of drop-down menus. With a little practice, you’re off and running. It takes me hours to do in Construct what it would take me days or weeks in GMS2.
The biggest time-savers are the behaviors. Construct 3 enables you to add common platforming behaviors to your game. Things like basic controls, jump-through platforms, and bullets are templated in: you just have to tweak them to make them your own. For someone like me – who, in addition to coding, has to do just about everything else for the game except draw and compose music – this is perfect. It enables me to be as productive as possible with the limited amount of time I have. The learning curve is much flatter here.
I said above that I didn’t originally want to learn a VC engine, and this is true. I wanted to learn to code and become a “real” programmer.
However, I didn’t start this just to learn how to program. I did it in order to make a video game. Construct 3 is enabling me to do that much faster than any other engine I’ve tried. And for that reason, it is currently my engine of choice.
The post A Tale of Five Engines: Or How to Pick a Game Engine appeared first on Gilded Octopus.