When it comes to indie games development and the question of whether or not to write your own frameworks/tools there seem to be two major schools of thought:
- Use as many tools and middleware components as possible! You don’t want to reinvent the wheel, and even if it costs $300 to buy a framework you’re essentially saving money. Saving money? Yes! Your time is valuable, and you’ll spend more than $300 working on a similar framework of your own, if you count your hourly worth.
- Don’t spend $300 on a framework if you can write it yourself! It’s very hard to earn money in game development, and that $300 is another $300 that you have to earn by selling games in order to make the whole venture a successful one. Remember: you have no guarantees that your game will even sell a single copy, so you might end up in the red.
Despite many indie evangelists’ claims, there are pros and cons to both views.
If you ever want to work professionally with game development it’s a good practice to start thinking of option 1. This gives you a quicker time to market, and it teaches you how to interface with other products – something that’s essential for professional development. It also gives an insight into budgeting and planning the development phase, as well as the real need to get some revenue from the game in order to recoup your investments.
However, sometimes option 2 is preferable despite all of these good arguments.
Here are some reasons for actually doing it yourself instead of investing in tools or frameworks:
- Experience – you learn how to build the required framework/tool and that will give you valuable experience for the future
- Bad fit – sometimes the framework you’re trying to use simply wasn’t designed for your needs
- Strapped for cash – you may simply not have the $300 to shell out, or don’t want to
- Fun – your goal with making the game might not simply be to get a finished product; you enjoy the trip as well
Personally, I have a job that I enjoy, and I have no desires to leave it – even if I would strike gold with a KarjaSoft game some day. I like running my little game business as a proper company, but it’s an addition to my day job – not a potential replacement. For me, the arguments above that hold true are mostly #1, #3 and #4. When it comes to #3 it’s a case of “don’t want to;” my aim is not to make as much money as possible – so I’m not going to optimize the delivery times.
But the most important point for me is probably #4. I simply enjoy building all aspects of the game, just as I enjoy experiencing every part of game development – from the initial concept to the PR at the end.