27 of 30 people found the following review helpful:
5.0 out of 5 stars
The best book I've found on this topic by far, August 12, 2004
This review is from: Programming Role Playing Games with DirectX (Game Development Series) (Paperback)
I found the 1st edition of this book to be the best book on this topic I have found. I use much of the code and many of the concepts from this book in a hobby level multi-user RPG I have written. My review of that book is attached below.
Because I greatly appreciated the content of the 1st edition, I also bought the second edition.
Basically, the second edition is the first edition updated for DirectX 9.0. The text and the code are practically verbatim with small changes here and there to account for changes in technology and probably minor improvements the author wanted to make from the first edition.
The most obvious difference (aside from using DirectX 9.0), is that the first few chapters from the first edition have been removed. The discussion on how to design rpgs from a story line perspective, intro to C++ and a few other things were removed as well as the last chapter on marketing your game.
Editorially I can see why they did that. It makes the book much more focused on the "meat" of programming an RPG using DirectX. Also, I personally barely paid any attention to those chapters in the first book anyway as I focused on the programming myself. However, I thought they added an element of style to the book that was quite nice, so I miss them a little.
In summary, this book is pretty much the same as the first edition in all of the important ways. Since I thought extremely highly of that book, I think extremely highly of this one too.
------------------------------------------------------------
Review of Programming Role Playing Games with DirectX 8.0
I had a specific objective in mind when I bought this book. I'm in the process of writing a hobby level multi-user RPG for me and maybe up to a hundred or so other players (not many hundreds or thousands). I have a solid background in C++, less so in DirectX.
I've bought many books on game programming to help me with this process and to my surprise I've found this one simply amazing while most of the others I've found to be little more than expensive doorstops. :)
Like all the books of this nature, I read it in very much a "pick and choose" manner, focusing on chapters I liked and extracted code from the CD for places where it helped me. I found the material covered and, more importantly, the code representation of that material to be extremely helpful in my coding process.
I believe the tips and code the book provides (which all compile and provide very reasonable and practical applications for the ideas demonstrated) saved me (literally) hundreds of hours of research (not to mention trial and error) finding methods that work and work well and covered all of the core components I would want in a role-playing game. It covered multi-player over the internet, 2d and 3d rendering in directX, how to construct combat, spells, chat, and inventory systems and a variety of other items.
Naturally, I had to do a lot of customization to make the game do what I wanted it to do and I had to merge several of the ideas discussed into my own framework (for example the multi player network section is covered more or less stand alone where clearly other parts of the book need to be integrated with it to form a real game), but the result is I have a basic game up and running in a fraction of the time it would have otherwise taken, which no other book has ever really brought me.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
6 of 6 people found the following review helpful:
4.0 out of 5 stars
Solid intro., September 17, 2007
This review is from: Programming Role Playing Games with DirectX (Game Development Series) (Paperback)
Jim Adams, Programming Role Playing Games with DirectX, 2/E (Prima, 2004)
It's hard to review programming books sometimes. After all, they're really the kind of thing that already has a target audience; it's either going to be applicable to you or it's not. From there, it's not much more than semantics.
I've read a number of criticisms of the book, and most of them seem to have been shot down effectively by other reviewers. (I must admit, I'm not using the code in its original form; I'm rewriting the engine in C#, so I can't speak to the workability or not of the included C++ code.) There were certain times where I wish Adams had gone into greater detail on certain pieces of the engine, or chosen somewhat more involved/challenging implementations (the scripting engine, especially, reads as being rather simplistic, and optimization is almost left by the wayside entirely), but it's certainly a good, solid conceptual beginning. Like most programming books that draw bad reviews, it's important to note that this is a book that assumes the reader will already be familiar with a number of the technologies addressed. In other words, if you're looking for a beginner book, look elsewhere; this is for intermediate to advanced programmers. If you are one, however, you're likely to find at least something of value here; if you've never written a game engine before, Adams takes you step by step through the process, and if you have, you might find some interesting alternative methods to try.
I found it worthwhile. Some will, some won't. Get out of it what you can. ****
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
12 of 15 people found the following review helpful:
4.0 out of 5 stars
Looking forward to seeing improved 3rd edition, October 16, 2006
This review is from: Programming Role Playing Games with DirectX (Game Development Series) (Paperback)
I have read most of the book and I am critical of it.
First, I would propose top-down approach to explaining RPGs instead of bottom-up used in the book. Starting from the high-level overview of the game and elaborating on each component in subsequent chapters will excite the reader. The low-level details of DirectX were so boring that I skept most of the introductory chapters.
On the technical side, the book describes three tires that a game is based upon: the DirectX level, the library level when the user packs useful functionality in a class hierarchy, and the game level itself, for example maps, characters, etc. Using class diagrams would ease understanding of game architecture. Also, it was difficult to read inserts of source code in the text because of too many low-level details.
The scripting language used in many components of the game also raises a number of questions. First, it has binary format which is a bad programming practice. Using a general-purpose language would allow the programmer to reuse the experience. GnuRadio? and ns are examples of projects where Python and Tcl/Tk respectively are used to guide execution. Those languages are backed with a C-language library.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No