I have to make a game as the final project for my APCS class. I have chosen to make a game similar to Blizzard's creations like Warcraft, Starcraft or Diablo. I have a pretty good understanding of java classes and everything, running threads and drawing basic squares and shapes to the screen to the screen. The only Full-GUI program I have written is a A* Pathfinder that saves and loads maps. I want to try to develop something off of what i have but I don't know where to start . The project is due in may 2010 so I'm trying to get a head start on it. Any tips on where I can get help on making this project?

It's not crazy, but don't expect to be too polished at the end, half year project for a beginner will make many many mistakes along the way.Main thing is to break the process up into logical chunks, plan what you need, put the to-do list on paper.Then start working through the pieces, and if all goes well you should have a game ready at the end...Be careful not to have feature bloat at this stage, as it will be depressing when nearing halfway you realize you've just scraped thestart of the pile. Try to minimize the design to the barest minimum necessary for a working game, if you get that done intime then you are free to add stuff and polish the remaining time. Good Luck!Like Matzon said, keeping it simple is the magic trick

Perfectly possible to do, and if you keep it small (like Dune 2) then not too difficult either. However I'd advise keeping the amount of content needed as small as possible, and keep it 2d rather then 3d. I'd also keep the number of features small too as it's easier to add more later then to remove them.

Unfortunately the relationship between system capability and tool simplification is very similar to the one between "crap all over the floor" and "size of bedroom", that is, the bigger your bedroom is, it seems there's always more crap on the floor to fill the extra space. So the tools keep simplifying things, only for the required capabilities to expand to make it just as hard as it ever was to make games.

Anyway, back on topic:I'd advise the original poster to make a tic-tac-toe game (if you feel this is beneath you, there is no hope, and you might as well stop right now), then build a pacman game, then pacman with more than 1 controllable unit, then mouse-controlled pacman units. Then you have the basics of an RTS, without writing too much new code.

Hi, appreciate more people! Σ ♥ = ¾Learn how to award medals... and work your way up the social rankings!

Sure, you don't have to worry about optimising (too much) with todays hardware, but Dune 2 took a bunch of highly skilled developers a few years! Don't underestimate these 'simple games'.

But they effectively invented the modern RTS genre with that game. Prototyping new ideas takes far longer then reimplementing existing ideas. Plus unlike back then there are lots of online guides and resources for teaching you how to implement these concepts, as well as all of the modern day tools and libraries to help. Yes they can be a distraction and slow you down, but if they are good then they will cut down time and allow you to do more in the long term (note that this if they are good).

I don't think it's easy to copy because it's old, I think it's easy to copy because the whole game (especially the AI) is very small and simplistic.

I wouldn't call the AI and pathfinding in games like the old C&C games simplistic, it may have been dumb but still a technical achievement that is difficult to copy/clone for a lone programmer especially if your new to games programming.

I'd say go for it. In my opinion, the most difficult part of crafting an RTS is getting everything balanced and the pathfinding. If you just make your world grid-based, pathfinding becomes very easy, and if it's for a school project then balance doesn't matter at all at this point.

Riven suggestion is a pretty good one. Start real simple. If you must do a RTS then do a "tank only" RTS with just one unit type. Get that going, get that polished. Then look at adding more units. However i would look at game play options that could make even that fun. If you get that working really well, think about network play. (my 2c)

Getting something playable at the start is a really good idea. I tried it with my RTS, but its still not playable and I have been working on it, off and on since 2000. If i was doing things again I would do a one unit type RTS and go from there. Which what i am now doing btw.

Also Dune 2 was great, but far from simple. You had 3 "teams" (freemen, Harkoen, and Artreides), you could capture sand worms and get them to do your bidding. You had "automatic" carrayalls and ornithopters. Many Many unit types that are all different (sonic tanks for the win!). You could run over human units with harvesters, and they would cry out in pain, and a 10pixel corpse is left in the sand ... etc. It was not a simplistic game even by some modern RTS standards.

I have no special talents. I am only passionately curious.--Albert Einstein

I wouldn't call the AI and pathfinding in games like the old C&C games simplistic, it may have been dumb but still a technical achievement that is difficult to copy/clone for a lone programmer especially if your new to games programming.

In my experience, the pathfinding is relatively easy to accomplish.

What is the most difficult part is how to make the game-object move naturally along this path, taking into account the type of the game-object, all the dynamics of the world, and a whole variety of other things.

Also Dune 2 was great, but far from simple. You had 3 "teams" (freemen, Harkoen, and Artreides), you could capture sand worms and get them to do your bidding. You had "automatic" carrayalls and ornithopters. Many Many unit types that are all different (sonic tanks for the win!). You could run over human units with harvesters, and they would cry out in pain, and a 10pixel corpse is left in the sand ... etc. It was not a simplistic game even by some modern RTS standards.

I disagree. Indevidually all of those points are not too difficult (or in some cases trivial) to implement. It's lots of simple elements, not one big complex game.

I disagree. Indevidually all of those points are not too difficult (or in some cases trivial) to implement. It's lots of simple elements, not one big complex game.

Riiiight. Surely you can implement this rather fast, but it would run at miserable framerates. Suddenly you find yourself switching algorithms and finally changing just about the whole structure of your game, to make it run decently on your 3.0GHz CPU.

Hi, appreciate more people! Σ ♥ = ¾Learn how to award medals... and work your way up the social rankings!

It's just not true. You can't write a bunch of 'easy' parts and expect them to work at decent performance. Complexity increases exponentially, even with simple tasks.

Breaking a game down into tasks doesn't mean you need to slack on code quality. It just means your breaking it down from one large task, into lots of smaller tasks. A small task is typically easier then a big task because there is less to do. Perhaps this way of thinking doesn't work well for everyone, but for me (and many people I know) it does.

Plus performance isn't everything. Your top priority should be getting it done. If you don't finish then no one will care if it's fast or slow.

Breaking a game down into tasks doesn't mean you need to slack on code quality. It just means your breaking it down from one large task, into lots of smaller tasks. A small task is typically easier then a big task because there is less to do. Perhaps this way of thinking doesn't work well for everyone, but for me (and many people I know) it does.

Plus performance isn't everything. Your top priority should be getting it done. If you don't finish then no one will care if it's fast or slow.

If you have crappy performance, nobody cares it is done.

It's like the camera man thinking he's the most important person in making that movie - without him nobody would see anything. Or the casting director thinking he's the most important person in making that movie - without him there wouldn't be actors to tell the story. Or the script writer thinking he's the most important person in making that movie - without him the actors wouldn't say anything. Or the marketing guy thinking he's the most important person in making that movie - without him nobody would buy tickets and it would be the last film ever made.

If there is one weak link, you're screwed. Same as in writing games. Without decent performance you might as well not start.

Hi, appreciate more people! Σ ♥ = ¾Learn how to award medals... and work your way up the social rankings!

I'm not trying to say it's easy, or that it's not a lot of work. I'm saying that when you break it down it becomes lots of easy(er) tasks.

Where most people fall down is on the initial estimate of the actual value of "lots". My suggestion is that you take any initial figure of the number of tasks that there are to do, and then multiply by 3. This will get you about 20% complete.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org