I can't seem to finish making a game!

Started by
15 comments, last by aCynic2 16 years, 7 months ago
Hi, I am running into trouble with finishing games I start making. Ideas are cheap and they come to me sometimes 2-3 times A DAY... but actually sitting down and finishing a game, impossible. I suspect that I don't have: 1. good enough programming skills 2. good enough software design knowledge I want to start with simple games, and by simple I mean 2D turn based tactics, or 2D real time naval/space combat... I am OK with using SDL with C++ but would really like to maybe use Java with Ecplise, with which I feel very comfortable... What do you recommend? Are my goals exaggerated? How do I get it right? Do I need to read some book? Do I need to join an online project? and if so, where? Please - I am very frustrated. Thanks.
Advertisement
The best advice anyone ever gave me was "If at first you dont succeed, try and try again"
Quote:Original post by Warlax
Hi,
I am running into trouble with finishing games I start making.
Ideas are cheap and they come to me sometimes 2-3 times A DAY... but actually sitting down and finishing a game, impossible.

How big are these ideas?

Start small, come up with a game that you can prototype in a day, then finish within the week. Often people can't finish a game because they're trying to make something that's too big for them.

Quote:I suspect that I don't have:
1. good enough programming skills

Can you write Tic Tac Toe? Yes? Then you can create a game. You just have to choose a project that matches your skill set.

Quote:2. good enough software design knowledge

Can you write Tic Tac Toe? Oh, sorry, did I just ask that? [grin]

Quote:I want to start with simple games, and by simple I mean 2D turn based tactics, or 2D real time naval/space combat...

See, that's why you can't finish a game. Strategy games take a huge amount of time to get it "right". Here's an exercise for you: can you make a strategy tactics game with the simplicity and playability of Bejeweled? Of so, make that. If not, you're not thinking hard enough! [wink]

Play some board games with your friends and see if any of those give you ideas for simple-but-fun video games. I'd suggest checking out Tsuro, Quoridor, and Blokus for ideas.

Quote:I am OK with using SDL with C++ but would really like to maybe use Java with Ecplise, with which I feel very comfortable...

Doesn't matter what language you use. Use what you're good at, and what you're comfortable with. Working with a language that you like will make you far more productive than slugging through a language that you don't.

Quote:Are my goals exaggerated?

Possibly, if your game ideas are trying to compete with the big guys.

Quote:How do I get it right?

Think small, don't try and mimic the games you're used to playing. Instead, keep the game small and simple while still being fun, both to play and to create.

Quote:Do I need to read some book?

Sure, I could give you a whole list of books you should read. But they won't make you more productive.

Quote:Do I need to join an online project? and if so, where?

I'd suggest not until you have a game or two complete. There are two kinds of online projects: ones made by experienced hobbyists, and those made by newbie developers. If you're a newbie developer you would likely be out of your league in type #1, and type #2 usually never gets off the ground due to lack of an experienced management team.

Make a game or two by yourself first, then think about working with a team for your next project.

Check out my new game Smash and Dash at:

http://www.smashanddashgame.com/

Perhaps your expectations are incorrect.

Starting from scratch and working alone, any of those ideas will take you at least 6 months to 1 year to complete (assuming that you're working on them every day).

You're ideas are likely coming faster than the reality of implementation. But that's the reality of programming.

-me
I had trouble finishing my games, because I never really put a lot of time and effort into the pre-coding phase of making a game. When I finally put the time into getting all my ideas on paper before coding anything, I was very pleased with the outcome. I just drew pictures of what my characters/maps/GUIs would look like. I made a list of major functions and constants that I thought I'd need. I made a basic flowchart of how the game would run. I tried to make a lot of the game-art right off the bat, since my lacking artistic ability is something that tends to become a roadblock while putting my games together. So after ten or so pages in my notebook and a few days in MSPaint, I was ready to code. By planning out a good chunk of the details ahead of time, I avoided a lot of deleting and recoding (which can be a cause of being derailed from a project). While making the game, I kept a list of fixes to be made and a list of features to be added. I checked them off as I continued along. The final product was a complete game. Not only that, but it was the best game I'd ever made. I actually wanted other people to play it. When I remake it, I'll put it in the showcase. Should've backed up my computer. LOL. :-( Ahhhh!

So basically, I'd suggest putting more time in the early planning stages. And don't just plan enough to get the game up and running. Plan it all the way through to Game Over. Definitely work on whatever area it is that you seem to get stuck at first (if possible), whether it's getting the right sounds, making your own artwork, or whatever. Invest more time up front, and you won't want to let your baby go so easily.
Quote:
I suspect that I don't have:
1. good enough programming skills
2. good enough software design knowledge

If this is true now,you'll get better as time goes by. But you shouldn't put yourself down in this way.

Quote:
What do you recommend?


I can tell you what I have done:

have you made tic tac toe yet? That was my first actual game, did it in visual Basic. (although, we call it naughts and crosses in the UK).


When you got that working, do pong. Following the advice of my science teacher, I did this next.
Break it down into several smaller milestones:

0) Displaying parts of pong table on the screen.

1) getting paddles moving

2) Getting a ball to bounce off of things

3) Creating a scoring system.

Then, when pong is finished, re-use the code to create breakout. My Science teacher recommended this as well. (you know, you have a load of blocks to destroy by hitting them with the ball).

Next, A friend and I worked on a side scrolling space shooter. He did the graphics and I did the programming. I didn't actually finish this game, but I did have fun creating it and learned something. I sort of wrapped it up and made it playable, but it only had one level where the same two background images scrolled forever.

then I made a rogue like game in Pascal. Nothing special, and certainly not a very deep combat system. you just hit anything that was blocking your way, and each character had a flag for if they were good or evil. Evil attacked good, and good attacked evil. each level was a single cave with a random number of monsters in it.

Then I sort of got stuck in to c++ and OpenGL. I didn't make any further games for two years now, and had the problem you are having now. I have decided to work on one large project, a 3rd person shooter.

I just wanted to see if he would actually do it. Also, this test will rule out any problems with system services.
Quote:Original post by slowmike
When I finally put the time into getting all my ideas on paper before coding anything, I was very pleased with the outcome. ... So basically, I'd suggest putting more time in the early planning stages.


Same here, I started several games and just gave up because I got so sick of trying to understand my own hacked spaghetti code. Then, when I actually started designing the game and how it would all work before I started actually coding, I could easily finish a game, and what is more is that it was enjoyable!

In addition, take advantage of object oriented programming concepts. Develop classes that handle specific aspects of your game and are loosely coupled to the rest of the objects. This allows you to develop smaller portions at a time, which helps you to focus on the concept at hand and makes it easier to develop your game in general.

Just my 2 cents,
Svenjamin

Take your time. If you find a design you like, write it down and do it. Though, make it really small at first. You can always expand it. It's a lot easier to expand something then it is to decrease the size of a design half way through the game IMO. So again, start small.

Chad

Like they said, write down your ideas and some pseudo code that may seem workable. I did the same thing, write down ideas and have so many cool features, but not go anywhere else. I've started drawing out where things will be, how they will work, then I write their classes and functions they will need on paper, then I type it up on the computer, along with some minor editing, and wha-lah! Getting progress in game is great, but when you finally finish a game, it's the greatest title ever, then you can call yourself an official game maker.

Also, don't try to sit down and make the Next-Best-To-Halo, they had a team of who knows how many and tons of college/university experience. Start off small like (In 2d wise) a flat racing game, then build up to Zelda-like action, and when you feel confident in your abilities, Title Games.
Holy crap, you can read!
Another tip if you're starting lots of game projects: Modular code.

For example, if you're using Direct3D, write a simple class with a couple functions to create your window, init the devices, etc. Don't make it specific to the game you're working on; make it general purpose. But don't get carried away and try to make it into an entire game engine; just a simple class to init Direct3D. Then make your next modular class, for example, to draw sprites. And so on.

This way, even if you tire of a project before you finish it, you'll have a set of useful modules. You'll feel that you've accomplished something. Then, when you get another game idea, you'll have these modules to draw from, and you can get it put together much faster. Even if a particular module isn't exactly what you need for your next game, it'll often be close enough that you can adapt it with just a few quick modifications. After a while, you'll have a good library of modules from which you can put together a game prototype pretty fast.

This topic is closed to new replies.

Advertisement