Do you have any thoughts about whether time spent learning how to make a game in something like Dreams could be better spent learning a full on game engine like Unreal?
Both “yes” and “no” answers are fully valid here, and their applicability entirely depends on on the person who’s doing the development. The best answer depends primarily on the would-be developer’s level of commitment – the more committed the dev is to the long term, the better off learning Unreal or Unity that dev would be. Keep in mind, I’m assuming this is a first-time novice developer and not somebody who’s had much experience already.
You have to realize that long-term truly means long-term – it could take literal months or even years of work before a novice dev truly has something to show for it. When someone builds a complete game, that person must build every last part of it. This means all of the little details, like the front end UI, the inventory system, the vfx, the level design, spawned enemies, the animations, everything. There’s a whole ton of work that goes into developing a game. Unreal and Unity help out by providing a base of assets via their marketplaces, but that’s still a huge amount of work that needs to be built, assembled, and tested. If our novice dev can keep on keeping on for all that time, then there’s a chance something halfway decent comes out of all of that effort.
Using a simpler toolset like Dreams, Mario Maker, or Little Big Planet has a much lower learning curve than using a full game engine like Unreal. Since our aspiring dev won’t have to build a lot of the core systems like UI, it makes the project a lot easier to get up and running. While Dreams certainly isn’t as powerful as Unreal, our dev still earns valuable experience building a game and learns design principles and concepts like level design, system design, and how to think about game design from a development perspective. While our dev would learn these things while learning Unreal, it could easily be missed while learning all of the OTHER things like programming, asset pipelines, lighting, UI, etc.
As with most things in life, game development is a skill that one has to practice to become good at. The vast majority of developers did not start as experts in their fields – I am fond of saying “being bad at something is the first step in becoming kinda good at something”, and game development is no different. We become skilled and experienced developers by developing games, learning, and improving as we go. A developer’s first game should not be their magnum opus. It will probably be hot janky garbage. But the skills and experience learned from building that first hot janky garbage will mean the second game will be much better than the first. And then the third will be better than the second.
Bringing it back to the original question, it’s often better for novices to learn the ropes first and test their commitment. Maybe our novice is that one-in-a-million prodigy and takes to it like a duck to water. But more likely, our novice will encounter difficult challenges along the way and will have to overcome them. There are significantly more challenges before reaching the first peak that is finishing the project if our novice chooses Unreal instead of something smaller in scope like Dreams. It can be more rewarding to climb that taller peak, but it also means a lot more hopefuls that could have made it to the top of the Dreams peak and continued on may instead decide to call it quits before they reach the summit of Mount Unreal.
The FANTa Project is currently on hiatus while I am
crunching at work too busy.
Got a burning question you want answered?
- Short questions: Ask a Game Dev on Twitter
- Long questions: Ask a Game Dev on Tumblr
- Frequent Questions: The FAQ