This is a great book for anybody thinking about programming RPGs... And even if your not going to I would at least try to take a peak at the book and think about buying it.
First off the book assumes that the reader has a through knowledge of C programming and that you have some experience with coding. And has, like the rest of the series, quite a few pages devoted to C++... (The best thing with this book is you actually make a rpg game following the book and it's practices!)
The first part of the book covers what is role-playing, desiging role-playing games and some basic story-telling. The Jim covers basic programming with C++ as well as some engine architecture that is different from most other books - ex. Tricks from the Windows Game Programming Gurus. It introduces concepts like state managers, process managers and data packages - some great stuff for programming big games. The third part covers basic DirectGraphics concepts ("a whirlwind tour", according to the author). The code does the job really well and the concepts are well-explained.
After that the book covers information about DirectInput and DirectSound, the chapter on DirectInput includes information on programming joysticks, and other information in the book includes: wrappers for Direct3D, DirectSound and DirectInput, and followed by that, octrees and quadtrees, 2d tile engines, mixed 2d/3d engine, collison detection and so on.
The only problem I see is some of the real super newbies will see the book go at a fast rate... It has great explainations but he does move fast. And the author likes to leave out the obvious - so you have to pay attention in the beggining or you'll be turning pages back into the book to see whats up.
Basicaly, pick up this book if you are starting DirectX, pick up the book if you plan on crreating RPG games. The book is great, you'll have a working RPG game after going through the book, you will learn alot about DirectX and storytelling at that! 5 Stars.