- Published on Amazon.com
In the early chapters, this book uses a tutorial styled approach with numbered steps. However, discussion and examination of game code is the approach utilized for the rest of the book. As the book states, this is a "look at and learn" approach. Some of the topics discussed include: sound, physics, optimization, and games for mobile devices. The included CD has the usual .fla sources files, trial software, images and other miscellaneous game files.
The book starts with an interesting and quite original history on gaming. Although a short section, I have never heard a history described like this before. The first game, a standard mouse clicker, is introduced in Chapter 3. In general, this book used fun and historically familiar games like block breakers, memory and various scrolling and shooting games. Only the basic foundation of each game was covered. Nevertheless, expanding the games with levels, modes of play or options should not be a problem for most. Chapter 8 on "Saving Data" covered some more useful and new material for me. Sadly, this was the first time learning that Flash uses browser like cookie files (.sol) to save data. When it came to physics, the chapters were straight to the point with what equations to use and what they do with plenty of short examples. There was no Trigonometry overview (sometimes from the beginning) that some books commonly use. While not for everyone, I actually preferred this direct approach to physics and math. Two chapters were dedicated to handling basic 3D using 2D imagery, including the final and most complex game in the book. This game, called "Asteroid Run," brought Flash to its limits while demonstrating a simple 3D shooter. All the code and concepts in the chapters were explained clearly and included plenty of screen shots. Surprisingly, it seemed as if every line of code had at least a sentence or two of related explanation. Many books might just reference a previous page or CD to save space. This book, conversely, would never hesitate to repeat code to make it easier to read and understand.
I only came across a few issues and problems with this book. First, the steps provided for creating the graphics were a bit inconsistent. Early on, they assume very little knowledge (think baby steps). Eventually, however, the graphics increase in difficulty and just become too time consuming to create. Typically, I prefer blank or codeless project files with the graphics already created as is the case with most books. In the chapter for saving data, the path listed for the .sol files was incorrect. It probably varies by system, but on my Windows XP SP2 machine it was in: "C:\Documents and Settings\UserName\Application Data\Macromedia\FlashPlayer\#SharedObjects\KDXDVGHB\localhost\)." Also, the shuffle function for the "Sound Hunter" game in Chapter 7 did not work based on either the printed code or on the CD. Finally, sometimes code snippets, that were supposed to be the same, differed a bit when repeated throughout a chapter (i.e. a function call appearing or disappearing). Ultimately, this is another book where a companion website with an errata sheet would have helped.
Although the difficulty level changed at times, this book is probably fine for beginner to intermediate level users as the back cover states. An overview on ActionScript was actually included as one of the last chapters. Even though placement was questionable, this ActionScript primer was a fairly long and thorough chapter. Macromedia Flash MX 2004 Game Development did have a few minor problems, but it had far more positives and included a few original topics (at least for me) as well. In the end, though, it turned out to be among the best of the Flash books I have read so far.