Programming
Role Playing Games with DirectX
Author: 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 total
21 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 program
Truespace 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 |
|
|