Gamasutra is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
December 11, 2019
arrowPress Releases
December 11, 2019
Games Press
View All     RSS







If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 

Book Review: PHP Game Programming


May 28, 2004
 

Occasionally you get halfway through a book and start thinking to yourself “when is the author going to tell me how to use this technology to create something cool?” With PHP Game Programming, by Matt Rutledge, I had that feeling right up until the last page. I wouldn’t consider myself an expert PHP programmer—not by a long shot—and Rutledge sure knows his onions from years spent as a web developer and database programmer, so as a beginning text to PHP this book is reasonably good. It’s aimed at beginning to intermediate developers interested in broadening their game development skills.

Verdict
On Game Design cover
Title: PHP Game Programming
Author: Matt Rutledge
Publisher: Premier Press (Thomson/Course Technology)
ISBN: 1-59200-153-X
Published: Feb. 2004
Pages: 356
Price: $39.99
Rating (out of 5):
2.0 out of 5 stars
Pros
  1. A gentle introduction to PHP programming.
  2. CD-ROM contains all the tools you’ll need to explore the examples.
  3. CD-ROM contains working source to all of the examples.
Cons
  1. Lacks punch in its coverage of games.
  2. The games presented were technologically backward in 1995.
  3. Needs more concrete examples of why you should use PHP for game development.

It is the coverage of game programming that causes the book to really fall down. The subject of PHP Game Programming would have been cutting-edge in 1994 when the World Wide Web was a new frontier and “on-line gaming” on the Internet consisted of dynamically generated pages using CGI Perl scripts to maintain the state. Today, the techniques presented are really nothing more than an interesting footnote of how not to create web-based games. Rutledge knows his stuff, but his book is nine years too late. Following the basic introduction to PHP, he develops a couple of HTML games—tic-tac-toe and a simple chess game driven by a non-relational database that stores the possible moves. Once the basics of PHP and HTML are covered, Rutledge moves on to develop “more sophisticated” games, such as an Artillery clone that lets you lob cannonballs at your opponent over a hill by setting elevation and power. A sort of thinking man’s version of “guess the number” that utilizes the third-party GD graphics library to generate images in “real time.” These images are served as each player enters their moves using a standard HTML form. I wrote an Artillery-like game for the unexpanded 2K Acorn Atom in 1978, and it was more interesting than Rutledge’s version. Mine even had animated explosions and sound—more than can be said for the version presented in this book. This isn’t to reflect on either Rutledge’s or my own programming prowess, just an observation of the suitability of the technology used to solve a problem.

In chapter 10, Rutledge demonstrates the use of sockets by creating a persistent server and dedicated client that he later develops this into what he terms a “massively multiplayer online game.” To be honest, though, I would be hard-pressed to consider using PHP to create a persistent server for any game that I expected to support massive numbers of players.

Of the exceedingly few cool features in the book, the section covering dynamic generation of Flash movies certainly stands out as something rather neat. This section provides a reasonable introduction to the concept, but then fails to develop it. Other than learning how to draw a few lines and boxes on the screen, no space is given to developing interesting games or even ideas that use the technique. I can only think of a few uses for this scheme: protecting Flash movies (there are other equally adequate ways of doing this, however) and streaming dynamic content from a database (though the newer versions of Flash include this capability). I’m sure there are some very cool ideas that could make use of this dynamic content generation, it’s a shame the author never explores any of them in the text.

As an introductory text to the PHP language, PHP Game Programming is adequate. If you’re looking to learn PHP programming, however, I’d personally recommend reading one or more of several PHP books published by O’Reilly.


Related Jobs

Sony PlayStation
Sony PlayStation — San Diego, California, United States
[12.10.19]

Character Rigging Supervisor
Snowcastle Games
Snowcastle Games — OSLO, Norway
[12.10.19]

Gameplay Programmer
Academy of Art University
Academy of Art University — San Francisco, California, United States
[12.09.19]

Game Development Instructors
Counterplay Games Inc.
Counterplay Games Inc. — Emeryville, California, United States
[12.08.19]

Next-Gen Platform Engineer





Loading Comments

loader image