This Just in! One Man Team Creates World of Warcraft!

Or maybe not. Remembering your resources, and setting a reasonable scale can be one of the most important things you do when creating a game. If you are working alone, I am going to go out on a limb and say it would be difficult to create a replacement for World of Warcraft in the next 4 weeks.

It is hard telling how many projects I have seen that haven’t been finished. It wasn’t for lack of effort and it wasn’t for lack of passion. It was usually for lack of planning. Most of them were hobby projects that were staffed by volunteers. Then life happened.

building blocksThis is one of the main reasons that I recommend Scrum to most hobby teams that I talk to. This allows, if done properly, for the project to be broken up into bite sized pieces. This has a two fold effect. First off, it makes the project seem more manageable. You don’t have to create and entire world. You only have to take these pieces that are already completed and make a city. You don’t have to make 42 different kinds of buildings while designing an entire metropolis. You only have to create one building. Secondly, if someone has to leave mid project, you can ask them to finish that bite sized chunk that they are working on. Since it is such a small chunk, this seems like a very reasonable request. Once that chunk is done, then they can leave without having too profound an impact on the rest of the project as a whole.

Scrum, like I said, is about bite sized chunks. The idea being that at the end of each “story”, or chunk, should be a self contained chunk. In terms of Unity, this could be creating a Prefab for a building, or for completing a script. The Prefab or the script doesn’t have to be used anywhere, but it should be completed, tested, and ready to be used. If, for whatever reason, you can’t break something down to a bite sized chunk then most likely you don’t really understand what you are attempting to do. Remember, a story shouldn’t be creating a city from the ground up but rather there should be stories for the building prefabs and later another where you are simply using the prefabs that are all created and ready to go to create the city.

Long story short, look at the building blocks, not the model.

Choosing an Engine

Making a game is all about weighing pros and cons. If you prefer, you can think about it in terms of cost benefit analysis. This starts with picking a game engine.

While there are the well known like Unity or Unreal Engine, there is the less known like Construct 2 or Coco 2Dx, and there is also the option to create your own. To be perfectly honest, you could also go without an engine and just create everything that you need as you need it. There are pluses and minuses for each of these choices so how do you really decide what is best?

Unreal_Engine_logo_and_wordmarkThe first thing to look at is why you are making the game. If you are making the game in order to showcase your skills to future employers, then it would be best to use one of the more popular choice. You want to show the world what you can do with the tools that they are most likely to be using. There is no point in showing them a game made with Coco 2Dx, if they are only going to be making 3d games using Unreal Engine. Since there are so many engines out there, it is best to make a variety of games with different engines, if this is truly your goal.

moaiattribution_vert_whiteIf you are making games in order to experiment with technology, then it is best to use the lesser known engines. There is enough information out there that would allow almost anyone to make a basic game in Unity. Try using Löve. What about Moai? While these might not say much to most people, those in the know might still be impressed. These more obscure game engines also give you an excuse to learn a new programming language!

Finally, you can create your own engine, or go without one predefined. This is the hardest route to take. You are forgoing the knowledge and time that others have invested in order to reinvent the wheel on your own. If you can do this, it shows that you are capable of truly great things. Programming a game engine from the ground up requires foresight, planning, and immense testing. There is the documentation, the maintenance and feature requests from others, and the tutorials on how to use it. This can easily be a project bigger than most games.

As you can see, choices abound when you start looking at it. While the basics are good, you have to think about what you are trying to prove with your game. Who are you trying to impress?