When developing a new game, the first thing you should consider is your high level game architecture. You’re probably going to use some 3rd party libraries, maybe you already have some in-house libraries that you’re going to use, or develop them for future use. How these things fit together seems obvious, but when you consider following architecture, it will save you a lot of time and frustration later on.
The Rampant Coyote has created a list of 19 general purpose 2D engines that you can use for you project. Now how do you choose the right one? Well, an indie game developer should consider following things:
- To get as many customers as possible, use an engine that supports multiple platforms: Windows, Mac and Linux.
- To make the best use of your time, prefer higher level scripting languages over lower level programming languages.
- Paying for an engine doesn’t necessarily mean that you get a better product or better support.
My personal favorite? Pygame of course!
So, you know how to create games, you have plenty of ideas, and now you want to finish one game and sell it. You’ve come to the right place to get started on that. The first and most important thing to focus on is marketing. Marketing comes before creating your game, it comes even before thinking about your game.
Most people think that marketing is about advertising and press releases, but that’s only a tiny part of it. Get this into your head: Marketing is everything, and everything is marketing. Marketing is the kind of game you create, for which platforms, your price, your customer support, your demo, the graphics, game loading times, … everything!
Marketing focuses on the customer, it’s how (s)he experiences your products and services. If you want to sell a game, you have to start asking yourself the right questions, marketing questions. I’ll provide you with a list of questions you need to think about, this is crucial if you ever want your game to sell.
Sometimes you want to work on your game, but you just don’t feel like it. You want to browse some forums, watch some TV, do a nap, read some articles on overcoming procrastination, … anything but to work on your game. I too have procrastinated by reading lots of articles about procrastination. That was until I came across this simple solution: ‘Just do it!’. And indeed it’s that simple, no excuses, ‘just do it’.
The only possible problem is when ‘it’ is too big. When that happens your mind blocks. But the solution is simple: break it down until you have a small step that you can actually do, and do it. Once you’ve started, the rest will follow automatically.
So stop reading this article right now, think of your next step, and do it! I don’t want to hear your lazy excuses. For all I care your next step might be “move mouse to upper right corner, click on X”
This question has been asked an answered many times before, but none of the answers seems satisfying. I’m going to give you a clear and realistic answer, but you’ll have to work hard to achieve those numbers.
You probably have tons of game ideas inside your head, so how do you decide which game to implement? Well, use the following flowchart. It’s straight forward, saves time, and makes sure you thought of everything.
When programming a new game, most of the time you implement some basic features and start from there. As the game gets bigger, your code gets more interwoven, and the classes bigger. And before you know it you end up with spaghetti code and god classes, and that’s the last thing anyone wants.
Let’s assume we’re programming a racing game, and we have a class called RaceCar. Soon enough that class will contain a method to update it’s state, to draw it onto the screen, to accept user input, etc. It will become huge with all kinds of different functionality in there. So how can we divide up our game so it’s nicely split up into modules and classes? Just read on and learn ;).
The game loop is the heartbeat of every game, no game can run without it. But unfortunately for every new game programmer, there aren’t any good articles on the internet who provide the proper information on this topic. But fear not, because you have just stumbled upon the one and only article that gives the game loop the attention it deserves. Thanks to my job as a game programmer, I come into contact with a lot of code for small mobile games. And it always amazes me how many game loop implementations are out there. You might wonder yourself how a simple thing like that can be written in different ways. Well, it can, and I will discuss the pros and cons of the most popular implementations, and give you the (in my opinion) best solution of implementing a game loop. Read more…
This guide describes the coding style that I developed over the years. My style isn’t very widespread. As a matter of fact, I don’t know anyone who comes even close to the weird way I program. But I like it and want to share it with you anyway (you lucky bastard!). I use it for all kinds of programming languages: C, C++, Java, C#, Python,… .
Welcome to my brand new blog about how to create and sell your own games.
I’ll provide you all the technical, business and marketing info you need for creating your very own game development company. My plan is to publish a step-by-step, ready to use guide on how to do this.
First I’m going to publish the more popular articles from my http://dewitters.koonsolo.com site. Then I’ll start posting new articles for those who are just starting out, and work my way up from there.
If you have suggestions for topcis you want to see covered, please leave a comment below. Thanks!