There are a lot of people out there who want to make games. There’s the ones that want to use pre-built engines to make games. People also want to make their own games from scratch. Whichever type of person you are, there are some simple tips that might make your process go from a maybe…to a complete.
1. I’ve read several books and magazines on game development. One book kept repeating the same advice. Don’t try to make games if you don’t want to work hard. That really stuck with me because the whole idea of games is about fun right? Well, there’s a lot of hair pulling in game development. So if you can get past that first hump of it being hard work then you’re on the right track.
2. If you are working with a team…actually act like a team. Teams are groups of people that break down big problems into smaller problems. Then they come up with a strategy on how to divide the work and then solve those problems. Finally, they implement that strategy into their daily routines and share progress with each other. I’ve seen a lot of people who want to make games get together with friends and then fall short because the duties weren’t divided properly or communication wasn’t delivered in a timely manner. Remember: Technology changes every day. And there’s always a chance that if you don’t publish your game in time…someone else might beat you to the punch. That ties in directly with the next tip:
3. If the game you’re working on isn’t something that you’d actually like to see completed no matter what…then you shouldn’t make the game at all. This can be a really hard one for people. There’s so many, “luxury” ideas on games these days. People wish that they could share a certain experience with other people or they desire to create a specific type of “feel” but at the end of the day, game provide a very simple function in our society: They entertain people. If your game doesn’t entertain yourself and at least a couple other people at minimum, then you’re not going to want to finish it. It will feel like a chore. And that doesn’t work in the independent game dev arena. Even though this piece of advice is often the hardest to swallow, it will definitely help you with narrowing down and simplifying your concepts.
4. Online tutorials are great for game development. Video explanations can help programmers through hard questions quickly. But nothing beats a good book that explains what you want. The first thing is picking a programming language or game development engine and then sticking with that until project completion. After that is chosen, purchase a good book with good reviews that can help you through the process. When I was developing games for Flash, I bought 2 books on Flash. Now that I’m working with Java and Java/XML for Android I bought a good book on Java/XML for android. The reason why books are important is because they walk you through a process from start to finish. If a book seemed cool and then got too hard…it’s usually not the books fault. You should have bought a book that was for a lower skill level of programming/development. This happened to me for Java and XML, I had a different book, I read the thing. But at the end of the day, it was too hard so I had to bite the bullet and purchase an easier book. Does this mean I won’t be able to come back to the more challenging book when I get more skills? Absolutely not. The trick is knowing when to take a step back and be willing to re-learn or reinforce knowledge. Oftentimes reading books that are for game development might cover subject matter such as basic mathematical programming operators and Boolean statements. If you already know exactly what the book is talking about, consider skipping the subject matter. Time is of the essence. But if you skipped to much and feel lost in the dark. Keep going backward in the book and starting chapters over again until you get it right. Eventually problems that seemed extremely major turn out to be matters of discipline and daily bug-checking review.
5. Leave excellent notes in your code comments. One of my friends came over and was watching me program for a few minutes. He said, “That’s a lot of comments in your code.” I didn’t feel weird at all. Oftentimes you might feel like you’re developing extra personalities from talking to yourself in the code comments so much. This is actually completely normal. A good way to think about it is like this: If you stop working on a specific class in your program for months…and then need that class working for another project, wouldn’t it be nice to have some guideposts and helpful advice along the way explaining what variable does what? It as if you’re walking through a forest that you’ve never been to before. You can leave little signposts that help you not get lost. Never, never, never feel weird for making comments in your code, ESPECIALLY if no one else will ever read them except yourself. If you’re an independent developer, you probably are so busy that you’ll want to buy yourself a treat for leaving those detailed comments on how your classes and methods work.
6. Not all games need to be shared or published at all in order to be a complete success. This is probably the weirdest tip on game development and programming that you’ll ever hear. Sometimes simply making a game is its own reward. It’s an easy way to test skills, practice disciplines and create a set of functioning classes for future use. If you think making a blackjack game for a game developer who is just starting out is a waste of time…then you’re dead wrong. Making a blackjack game will probably require the programmer to master at minimum basic arrays, random number generators, and basic game logic controlled by a rudimentary ai. My one suggestion is that if you’re making a game that is just for you or for learning…then don’t fuss over GUI or fancy graphics. Make the thing using text and buttons if you have to. Save the fancy artwork for stuff that you want to share with other people. If it’s just a test or just for you, focus on quickly debugging and getting the logical answers you need…as well as practice making the code as modular as possible.
I hope these tips were helpful.