Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I would like to develop a backgammon game to play against other players online, as a way of learning more Javascript/jQuery and a little game development. I'm a web developer and most of my experience is in PHP. I have minimal Javascript experience and no game development experience. Where should I start? Are there any particular books, tutorials, libraries, or frameworks that would help give me a jumpstart? As a beginner, am I better of using the DOM or Canvas?

share|improve this question

closed as off-topic by Alexandre Vaillancourt, Josh Petrie Feb 23 at 22:07

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions about "how to get started," "what to learn next," or "which technology to use" are discussion-oriented questions which involve answers that are either based on opinion, or which are all equally valid. Those kinds of questions are outside the scope of this site. Visit our help center for more information." – Alexandre Vaillancourt, Josh Petrie
If this question can be reworded to fit the rules in the help center, please edit the question.

Wouldn't this fall under the 'how do I make game X?' category and therefore be off-topic? – The Communist Duck Jan 9 '11 at 18:33
I don't think so. At least the final question is perfectly acceptable. – DariusK Feb 1 '11 at 12:36
up vote 2 down vote accepted

I think it depends on how you're planning to render your graphics. Do you want to include animations? A playing board with a pseudo-3d-view?

A top-down view is probably easiest and could be done using DOM and/or Canvas. Since DOM is supported in all major Browsers and jQuery offers a nice toolset (including animations) for DOM manipulation, I'd probably pick DOM over Canvas.

Since this is a multiplayer game, you'll have to think about where to put the game logic. The best approach (which also prevents cheating) would be to keep all the game-logic on the server-side (programmed in PHP) and only have rendering logic and user-input in the clients.

I don't know about any PHP framework that has a focus on game-development. I'd probably pick a multi-purpose framework like Zend, Cake, Sapphire or Symfony. This will let you focus on the implementation of the game-logic while it will already provide tools for data-persistence or handling of AJAX-request (which you'll probably use for communication).

share|improve this answer
+1 for all game logic being server side – espais Jan 12 '11 at 9:31

Since your goal is to experiment with Javascript, I suggest you to take a look on Node.js for the server side. It's well suited for what you're trying to do because you can build a realtime server through websocket quite easily and stay DRY. Your backgammon logic will be wrote only one time and shared both client and server side (for anti-cheating / game rules validation)

Search for chess games build on these technology.

share|improve this answer

With the caveats that I have no direct experience with them and their web site login/logout is a bit wonky, I've heard good things about's developer program. They provide a downloadable tutorial for building games within their framework.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.