This goes hand in hand with Number one. Enforce a
time constraint, do your best to stick to it, and you'll find yourself working on the essential game aspects.
There are lots of events with this in mind, such as OGAM
(One Game A Month), and Ludum Dare
3. Go For Small Games - if you're just starting
When you're just starting, start small. Making a fun solid game/minigame is a HUGE leap for a game developer, and having at least one released game already puts you ahead many of your contemporaries.
"But that super awesome MMORPG with that unique mechanic is going to be huge" you say. That sort of enthusiasm will go a long way, but if you haven't even been able to create one small game, do you really have what it takes to commit yourself to such a big project?
If you're game idea simply and absolutely cannot wait, then try creating what's called a 'Vertical Slice'. Instead of creating your entire game, why not try creating one scene, one battle, or one encounter? This nets a plus on all components, because you can instantly:
- Test out your idea
- See if it's actually fun
- And actually have something to show for your effort
4. Make it a Habit
Whether you're someone who makes games as a hobby, or someone who really wants to get into the industry, then make it a habit. Do one part of your game, everyday. It doesn't matter how much you can do in a day, the important part is that you work on the game.
You can even get yourself a to do list. Ticking something as done gets a nice feeling to your stomach!
5. Don't worry about the technology
Your salivating over that new libgdx library that can compile to every platform known to mankind. You want to use Haxe because it's fast, multiplatform, and l33t. Microsoft killed XNA, and you avoid it like a plague.
The thing is, Don't Care! Remember, you're making a game, and it doesn't matter what language you use.
If you're game is boring, no one will play it, even if you used the newest, shiniest language to have ever existed.
The next tip is also an inherent flaw of game programmers, but can be applied to game developing in general.
6. Keep It Simple Stupid!
If you're a programmer, just code, don't edit (slightly bringing us back to tip #1).
Design Patterns? Throw 'em away. Component Based Systems? So last year. Event Listener's inefficient? Leave them be.
Keep it Simple Stupid (KiSS) is an actual programming methodology. It's what it says on the tin, just keep your code simple. Don't get fancy with design patterns, component based systems, or making your loop run in the most efficient way possible. Pre-Optimization is the root of all evil.
Take pride in doing what you did, even if it was bad code. You might have a game with bad code, but at least you're not the other guy who has no game but good code.
7. Public Beta Tests
When loosing motivation, try being public! Share what you have so far, be it a doodle, a screenshot, or maybe even a demo. Get a friend to play your game, and with the internet, you can't have excuses for not finding anyone.
The feedback you'll get for your game is priceless, outlining what's fun and what's not, and it may even be the push you need to make it big.
If there was ever a point in your life where you've done something that you didn't even realize time passing, then you've undergone flow
(which is what hypnosis puts you in). When you're in this state, you're so focused on what you're doing that you won't even notice a plane crashing next door (okay, maybe that was an over statement).
The point is, we can be totally immersed in one activity, and this is what you want to happen when developing your game. Close out your browser, and focus, have fun, and don't think of any thing else. Throw out coding practices, optimizations, and don't perfect stuff. Just do it.
9. It's Dead Jim
Maybe the game really didn't pan out as you've hoped to be. The gameplay was really flawed and it's not fun.
Remember, there is nothing wrong with making a game and just leaving it at that. You've gained experience, and that's always a plus. But don't just leave your game in the back of your hard drive, going back to tip #7, be Public! Share it on forums, saying it was a game you did in your free time that was left unfinished.
What do you know, maybe someone even gives you valuable feedback that turns out to be all that you needed...