I suggest that playing in person would be a better introduction to D&D than any computer game. The publisher, wizards of the coast, organizes D&D game days at local game stores around the country. They are free and very newby friendly. A key ingredient of D&D for many, myself included, is the time spent around a table with friends. Online interactions don't fully capture this experience.
Computer games aren't the way to go. If you've played any computer RPG in the last 20 years, you've gotten an introduction and you're ready to take the leap.
Buy the latest Players Handbook, read it for a while, then put together a short adventure for 2-3 friends. Don't worry, it's not hard, and there is no wrong way to do it.
I like Baldurs Gate and Neverwinter Nights. Not exactly new games, but still one of the best PC RPGs. Fallout is also great, but doesn't use the DnD system.
The first program I wrote from front to back was a D&D character generator. But there was something I was taking away by substituting 3d6 with Random(). Somehow computerizing it made part of the tactile experience go away.
There's nothing like announcing "Okay, we're going to enter the room" and then hearing those dice rattling around behind the DM screen. Everybody looks at each other in anticipation.
They said he taught courses on how to make games more playable. I imagine some of those lessons have direct uses in making web sites more "sticky" and programs more immersive.
Wow, the first program I wrote was a D&D character generator too. My friend always has a giant excel spreadsheet open when he's DMing. The tactile response of the dice is fun, but calculating stuff like weight modifiers can be tedious.
Btw, For the 3d6 problem, you could do:
sum([random.randint(1,6) for i in xrange(3)])
That's the python version. I have no idea what I did when I first implemented this in C++ 10 years ago.
Just FYI, you can clean this up a teeny bit by removing the square brackets to make it a generator expression. Not a big deal but someone might be enlightened.
I believe I started on the program hanging out at Radio Shack in the evenings programming the display TRS-80 (There were no other computers around). I continued it on the school's Commodore Pet a year later. It went through several revisions. It got so I could write the first few hundred lines in BASIC just from memory!
C++ would be an awesome language for a generator. Sounds like you came along about 10 or 15 years after me.
I wonder how many times this same problem has been solved by new programmers eager to "do something"?
Yep dice are fun. Looking up everything in one of those tables is not.
No. D&D can be played as a dungeon crawl series of encounters, but for me the best campaigns are ones with narrative arch and great characters with strong, cohesive, and complicated personalities.
I think D&D gets the hack'n'slash reputation mostly because people start playing it when they're too young to really understand role playing.
I play with my wife and kids, and I'd really like to push more roleplaying because that would allow my wife to enjoy the game a lot more (she really only plays because the kids like it), but the kids (ages 7, 11, 13, 15) just don't get it. They get bored with any sort of play that isn't heavy on combat -- a couple of days ago we played through a section of an ancient wizard's keep that was loaded with traps, tricks and puzzles and all but one of them got really bored, though my wife thought it was somewhat interesting.
I'm kind of curious/concerned about the future of role-playing -- will it get picked up by kids today? What's your perspective on this a as a father of today's children? Seems like the 15-year-old at least could get into the role-playing aspect.
That said I have buddies in their 30's who still love the hack-n-slash aspect, the superhero, rolling dice, throwing fireballs fun of it all, and who kind of get bored & check out when role-playing comes to the fore of a gaming session. So it could just be a component of the gamer's personality.
Related quote from Dave Arneson:
"Pegasus: What other changes have you seen in gamers, rather than in gaming itself? How are we different?
"Dave: Well, it seems like they're a lot older. Used to all be young – high school kids, college kids – you don't see that too much any more. I don't know if that's because they're off playing video games or card games, or they're just not interested. I think some of it's the video games because you get much more of an instant feedback response from a video game than you do from a roleplaying game. Again, is that good or bad? I think that's bad, because I think they ultimately have a lot more fun playing roleplaying games than shooting up spaceships and aliens."
You've just identified the fundamental split in D&D culture.
D&D was groundbreaking because it was game-breaking - it took the fundamental concept of "game," being a closed loop of processes, and split it open a bit by allowing players to just make up certain things, just enough (or so thought the designers) to allow for some tactical richness that a closed loop can't support. Turns out, though, that lots of players actually wanted to rush out of the closed loop of the rules and spend most of their time out in make-believe-land, only touching on the rules occasionally if at all.
Gygax was always kind of horrified by this - to his dying days he referred to speaking in character, ever, as "that community-theater crap." Arneson's attitude was somewhat different.
"Isn't DnD the essence of hask'n'slash without much personality? "
Even in the computer rpgs based on D&D, Planescape Torment [review - without giving away the plot- http://www.gamespot.com/features/6135401/index.html] is very non hack and slashy (and the best computer RPG ever!!)
Plus, I would have been nerdy, unpopular, and bored in school, instead of nerdy, unpopular, and entertained :)