This week's giveaway is in the EJB and other Java EE Technologies forum.
We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line!
See this thread for details.
The moose likes Game Development and the fly likes Building Requirements for Games Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Java » Game Development
Bookmark "Building Requirements for Games" Watch "Building Requirements for Games" New topic

Building Requirements for Games

Brandon Tom
Ranch Hand

Joined: Jan 11, 2006
Posts: 48
Every project has requirements, but when it comes to games, I have no idea where to start. Does anyone have any advice?

Brandon Tom, SCJP, MCP<br />Programmer/Graphic Designer<br /><a href="" target="_blank" rel="nofollow"></a>
Svend Rost
Ranch Hand

Joined: Oct 23, 2002
Posts: 904
Hehe.. I know what your talking about.

So, what kind of game are you talking about (j2se game or j2me game) ?

What kind of game are you interested in making ?

/Svend Rost
Brandon Tom
Ranch Hand

Joined: Jan 11, 2006
Posts: 48
I want to develop an online version of a board game called "Omnigon", which is like chess, except the rules are simplistic. I don't know about programming AI (which I know nothing about), but I know the game requires 2 players and they'll be able to challenge each other online. So right now, I know I'm going to have to build a server and a game client (which is an applet).

The game client is responsible for:
- Connecting to the server,
- Handling and Displaying server information (i.e. open games),
- Rendering the game board,
- Sending players actions to the server,
- Display chat messages sent from other people viewing the game,
- (Still developing further requirements)

The server is responsible for:
- Handling client connections,
- Creating new games,
- Tracking on going games (making sure the players are still active),
- Generating and sending server information,
- Validating player actions,
- Sending board data to clients,
- Destorying old games,
- Sending messages between clients,
- (Still developing further requirements)

At this point, I don't think the players will have to have a user name or password to connect to a Omnigon server. They'll just connect and be presented with a list of open games, but in the future it might be a good idea for people to have to register or something before they can play on a server. In which, database stuff would have to be added to the list as well.
Gregory Jones

Joined: Sep 16, 2005
Posts: 9
I found some here in the reference section.


Jeremy Tartaglia
Ranch Hand

Joined: Mar 11, 2004
Posts: 62
Get at least a good, solid text about game development. It'll save you a lot of headaches and time, waiting for someone online to answer a question found in numerous books. For the game you're looking to do, you won't need a hot, flasy 3D game development book, but stay away from the Java Game books that start off teaching you Java; Java 2 Game Programming by Thomas Petchel, for instance. It's not a bad book, but it covers very little on intermediate/advanced topics like AI, persistance, even networking.

A book I will always recommend to people is David Brackeen's Developing Games in Java. It's not made for nonprogrammers, but in six chapters you have the tools to develop almost all of your game (no joke). Three chapters in the book are devoted to creating a software 3D renderer (which would be of little use to you right now), but the last few chapters are on AI, persistance, collision detection, and some other interesting topics related to game development.

But any book on game development will be of use to you, if you know little about it.
Brandon Tom
Ranch Hand

Joined: Jan 11, 2006
Posts: 48
Thanks for the pointer. I'll check out that book.
Darren Brooks
Ranch Hand

Joined: Dec 29, 2005
Posts: 31
i've created a player vs. computer battleship - style game and I'm working on an animated, two-player space ship combat game. The two books I've used mostly were Head Start Java (Kathy sierra and Bert Bates), and Killer Game Programming (Andrew Davison).

The Head Start Java book gave me a great foundation - it started me off on the battleship tangent (with a dot com version, very funny), and the O'Reilly book, KGP, was awesome for how to load an animate images and network stuff, etc. Oh, the Head Start book gives you a taste of everything you could need for a game, from server client chat stuff to how to save games, etc.

I can't wait for their design book i ordered.... It will certainly lead me to darker java paths.
Brandon Tom
Ranch Hand

Joined: Jan 11, 2006
Posts: 48
I've read "Head First Java" and it was great foundation to build upon. I also picked up "Developing Games In Java" and ran into a major problem pretty early regarding loading images. I've sent an e-mail off to the author to see what he has to say, but I've downloaded his source code from his web site and had the exact same problems, so I have no idea.

I do have "Killer Game Programming" (but haven't started it yet) and might end up looking at that while waiting for an answer.
Jeremy Tartaglia
Ranch Hand

Joined: Mar 11, 2004
Posts: 62
I'll save you a little hassle with that book. I can't help with the image loading problem, but when switching to full screen mode, to avoid a deadlock in Java 1.4, you'll need to use EventQueue.invokeAndWait when you create a buffer strategy. You may have already known that, but I didn't. Took me a week to track down the problem.

But if you want to post the problem you're having here, I might have found a solution when I worked through the book.
I agree. Here's the link:
subject: Building Requirements for Games
Similar Threads
Desktop vs HTML5(Browser) games
J2ME Programers
Olympic 2008
Suggestions Game Engine For Java For 2D Games
WA #1.....word association