| Programming
                              Role Playing Games with DirectXAuthor:  Jim
                              Adams
 Publisher: Premier Press
 ISBN:  1-931841-09-8
 Purchasing: [Amazon.Com]
                              - RRP US$59.99
 Reviewed:  14th May 2002
 Front 
                                Cover Shot: Overview Role-Playing-Games
                              ("RPG's") seem to be going from strength
                              to strength at the moment, from what was once a
                              very 'geekish' pastime to one of the biggest forms
                              of entertainment is quite impressive (even if all
                              those ork's, goblins and wizards still make some
                              of us cringe!) A
                              couple of months back I was reading the Edge
                              (games industry magazine) Japanese
                              special-edition, focusing entirely on, funnily
                              enough, Japanese gaming. RPG's are huge over there
                              - the Final Fantasy series being almost a
                              house-hold name for anyone who's owned a
                              playstation console. RPG's are now penetrating the
                              mass market in Europe and the America's, and tend
                              to be big business, with often huge teams and huge
                              budgets. Therefore, it's not too surprising that
                              many people want to try their hand at writing
                              their own Role Playing Game! I
                              also believe that this book is going to be of
                              particular interest to the VB community, whilst I
                              have no interest in programming RPG's myself, it
                              does seem to be a very popular genre for
                              VB-Gamers. Maybe this is due to it not (usually)
                              requiring impressive 3D and physics engines (which
                              are rarely written in VB!), or maybe its something
                              else... I don't know! Yet
                              Another 'Premier Press Game Development Book' By
                              my estimation, this series is not that
                              "old", a couple of years at most.
                              However, there is already an impressively large
                              catalogue of top-quality books; making this series
                              really worth the paper it's printed on. Some
                              series tend to run things into the ground, but at
                              current standings this is not going to happen for
                              a considerable amount of time for this series. This
                              review will be the 5th book in the
                              series that I've reviewed, and I haven't found
                              anything (in general) to complain about. The
                              format, page design and structure have been pretty
                              much identical throughout (a useful standard to
                              have), so there's not much I can really say that I
                              haven't said 4 times before. But for those of you
                              who haven't read the previous reviews, the outlook
                              is good. All
                              of the books in this series are divided into
                              several "parts", each subdivided into a
                              number of chapters; whilst each of these parts
                              acts towards the general aim/goal of the book,
                              they do often work as separate entities covering
                              their particular topic(s). Page-setting is well
                              done, with sections clearly marked, plenty of
                              diagrams (where appropriate) and "TIP",
                              "NOTE" and "CAUTION" box-outs
                              breaking up the text and drawing attention to
                              important points. Another crucial aspect to
                              appreciate is that the design indicates an almost
                              informal approach - some books on this (and similar)
                              topics read too much like text-books and are
                              therefore not much fun to read. Whilst its
                              impossible to make a general statement on the
                              writing style across the series (different authors
                              have different styles) they are almost always an
                              enjoyable read. Content Enough
                              Generalization! A quick run down of the facts and
                              figures: 1056
                              pages in total21 Chapters
 6 parts
 5 Appendices
 It
                              comes across as an impressive tome, and is clear
                              from square-one that the author knows what he's
                              talking about and intends to tell you as much as
                              he can. There
                              is quite a clear division in this book between
                              RPG-background and theory (story writing,
                              character creation etc...) and the technical
                              programming; as the title suggests, this book is
                              weighted towards the technical programming and
                              design areas. First up, this may well be exactly
                              what you want, or only half of what you want -
                              other books do exist on the theory side should you
                              be primarily interested in that. Programming
                              is aimed squarely at Windows and DirectX
                              programming, so don't expect much discussion of
                              cross-platforms or any other API's (OpenGL for
                              example). Approximately 1/3rd of the book is
                              dedicated to the learning of DirectX, some 330
                              pages. This will not teach you DirectX 8
                              programming, this is not the book for you to learn
                              the API from. However, don't be put off by this -
                              if you've never touched DirectX 8 before you wont
                              be lost, there is enough material in here to allow
                              you to get to grips with the foundations. Assuming
                              you want to continue you're "career"
                              then it would make sense that you do some further
                              research/reading online or in other books to
                              properly learn the DirectX API inside-out. The
                              majority of the book is geared towards the
                              programming of RPG's - in particular scripting
                              engines/design, data representation, storage and
                              processing. Whilst it may sound boring on
                              face-value, it is actually all there is to the
                              technical side of RPG programming, pen-and-paper
                              RPG's (the original RPG's from decades ago) were
                              pretty much a case of random numbers, and
                              statistics written down on paper - apart from multimedia features and a
                              slightly different interface format, nothing much
                              has changed. If you want to program a successful
                              RPG then these are the areas you'll be spending
                              your spare time learning. As
                              I previously said, I don't have much interest in
                              RPG's (Deus Ex being the only RPG to date I
                              enjoyed), and for that reason I've never even
                              contemplated writing my own. Therefore I have to
                              trust Jim Adams (the author) to tell me everything
                              I need to know, and hope he hasn't missed
                              anything. I don't have the time to test this
                              theory, but from having spent several hours
                              reading this book I will happily put money down
                              saying that I could now write an RPG. Probably not
                              the best one ever to grace the PC, but this would
                              still be an achievement. This book, if I read
                              every single word, would take me from my current
                              newbie status to one where I actually know what
                              I'm doing. I doubt there is any stronger statement
                              in favor of this book. Backup
                              Resources The
                              book is the main feature obviously, but it is
                              always important with these technical manuals to
                              provide a supporting CD with source code, sample
                              programs and tools etc... I have only reviewed one
                              book (in 14) that hasn't had a CD with it and it
                              suffered because of it. As
                              with the layout and design discussed above, all of
                              the premier-press CD's use the same browser and
                              have the same user interface. They also all follow
                              a similar format. Due
                              to the focus on DirectX 8 in the main text, the
                              SDK has been included on the CD, which is going to
                              prove very useful to some. We also get no less
                              than 6 sample programs: GoldWave
                              4.23 - audio editing/creation programTruespace 5 - excellent 3D renderer that
                              doesn't cost a fortune
 Poser 4 - a great 3D authoring tool for
                              creating people/humanoid meshes
 Milkshape 3D 1.56 - another 3D authoring
                              tool that's a favourite amongst developers
 Paint Shop Pro 7 - second only to photoshop
                              in my opinion, and at a fraction of the cost
 All
                              of these are trial/evaluation programs, so (unless
                              you buy them) aren't much use after the first 30
                              days, but at least they'll allow you to test out
                              the content of this book. The
                              last two features that make up the CD resource are
                              the complete source code and support files, and a
                              few sample games to play/break. All
                              things considered, this is on par with the other
                              premier-press CD's and at least equal to the best
                              of the rest. Some 
                                Minor Let-Downs As
                              with many game related books available, this book
                              is entirely in C/C++; which is of little problem
                              if you're multilingual or you program in C/C++
                              anyway. However, if you're a VB-only programmer
                              (this is a VB site remember!) then it gets
                              difficult. Up until fairly recently I've been
                              mainly a VB-only programmer, but as I progress
                              further on it's been necessary to use/learn C and
                              C++, which I urge other VB'ers to do as well. You
                              will be missing out on this, and many other, fine
                              books due to this silly language barrier. This
                              language difference is about all I can complain
                              about really, and even then it isn't a complaint
                              more of a warning to those reading this review. In 
                                Conclusion Until
                              there are other competitors, this book is crowned
                              king. If
                              you're serious about your RPG programming then
                              this book will be a great companion and an
                              interesting read. If you're not so serious about
                              your RPG's, and are just curious then this is also
                              a good book for you, however for $60 you'll
                              probably want to be at least serious about giving
                              RPG-creation a good go first. 
                                
                                   
                                    | Good 
                                      Things | Bad 
                                      Things |   
                                    | 
                                      Well Structured, chapters and parts well
                                      organised |  
                                      Entirely in C/C++, which may be a drawback 
                                      for VB developers. |   
                                    | •
                                      Covers the technical side of RPG-creation
                                      brilliantly | •
                                      Doesn't cover the theoretical aspects to
                                      any significant depth. |   
                                    | •
                                      Excellent writing style |  |   
                                    | •
                                      Stays true to the current high standards
                                      of other books in the series |  |   
                                    | •
                                      Good quality CD included, with a good
                                      selection of software |  |     |