Notes on Shadowlords
Matt Rhoades has got us playing Neverwinter Nights co-op at work now - since we've made our submissions to the console manufacturers and are just sitting around waiting for them to pass or fail us - and we're enjoying it a lot. The way the different classes complement each other in D&D was always cool; NWN brings it home. A lot of shouting across the halls at each other: "Where are you going?" "Should I open this door?" and so on.
So, since I've reinstalled it on my laptop and I got the D&D bug again, I thought I'd play some of the fan modules that I heard were pretty good, singleplayer. There's this one called *Dreamcatcher* by Adam Miller that I saw recommended on a game design forum, but it's a sequel to *Shadowlords*, so I decided to work through that before moving on to *Dreamcatcher*. I just finished *Shadowlords* a few minutes ago, and I got that feeling I always get at the end of a good game - sorry that it's over.
Now, it didn't totally blow me away. I was expecting some kind of revolution and really it's basically just a competent, near-professional expansion pack. Still: done by one guy. Now, there's only so much you can do when you're reusing the same tilesets and monsters that we've already seen a dozen times. So how does Adam Miller keep us into it? I'm not sure, but he did: I played late into the night last night and when I woke up I wanted to dive right back in again.
Maybe it's the story. Miller breaks it down into five chapters, each a separate module. Although I would have been reluctant to start a 20 hour epic, I had no problem starting a 4 hour one...and then when that one ended with questions left unanswered, I thought, maybe just one more. Each chapter is like a layer of an onion; you solve a mystery only to find there's a deeper, larger mystery behind it. Which, at the end, left me kind of confused and wondering how I got there and what happened...sort of like watching the X-Files, I suppose.
Also, Miller does a good job of making you feel like you're in a story rather than watching a story where you get to play inbetween the plot points. Even more so than the original Neverwinter Nights. I think this is because Miller, in a way, subscribes to the Half-Life philosophy of "no cut scenes" - events conveniently happen as you arrive, you overhear important dialog as you saunter by, and the story unfolds that way. The third module has you chasing evildoers through an abandoned temple - if it was a movie, there would no doubt have been cuts to the evildoers sabotaging the bridge, etcetera - but here you just come across a destroyed bridge and have a comment from your henchman to piece things together. For a game, I think it's better this way; you're more in the character, in the world. Also, you get the feeling that the world would continue on without you; if it wasn't for you, the evildoers would no doubt complete their evil schemes.
Another nice thing is the single unifying theme or motif. Death runs through the entire thing, starting with corpse-trading and then undead and then immortality and gods of death. Adam Miller manages to put a message into the story - if we didn't have death, we'd have to invent it - and really involves you in that message by having a scenario where you have to choose between giving a sick girl immortality or easing her onto the next life. Of course, I saved the game and played it both ways, just to see what would happen. It amounts to an endorsement of assisted suicide, with you playing Dr. Kevorkian, and is probably the highlight of the module, because when are you going to be able to buy a game in a store with that kind of message? Whether you agree with it or not doesn't matter - the fact that it's there takes the game to a new level. I'm reminded of Harlan Ellison's "Paingod" - a story about a god of pain who learned to respect his job when he realized that without pain there could be no joy - except the prose isn't quite as good.
It has issues - there were times when the difficulty seemed overwhelming, although that may have been because I was playing a sorcerer and things are tough for a sorcerer before they get their third level spells. And every now and then Miller would try to be funny - quote Monty Python or whatever - which broke the mood, took me "out of it", but I'm willing to let it slide because - hey - the guy's doing this for fun, right? In fact, if he was too serious, it might make me a bit uncomfortable, like having a DM that's *way* too into it.
(When I was a kid who was *way* too into D&D, I used to dream of having some kind of machine that would make custom miniatures and tiles that would look just like my characters and dungeons - NWN isn't quite there but it's close.)
You know, it's a nice thing that Neverwinter Nights has all this fan-created content, because it gives me the opportunity to try different classes and races without having to see the same story over again. (*Cough* Diablo 2 *cough*.) Maybe once I've finished *Dreamcatcher* I'll try one of these paladin-only ones.

I have to ask...would having done something like this make you more likely to hire someone, either for development or design?
Posted by: Badman | May 24, 2004 at 03:12 PM
IMO, doing a demo of your work is essential for breaking into the game biz. That, and meeting/knowing people.
The first will show a prospective employer that, even though you don't have an industry credit, you're still someone who can do good work.
The second is essential to cut through the noise of game industry hiring. The people hiring are getting tons and tons of resumes constantly, since everyone wants to work in the game industry. If you live in an area near the some of the industry centers (Cali, Texas, Boston, etc.), try going to an IGDA function. If nothing else, you'll meet people who also aspire to get in, which I know can be good moral support.
People who are hiring - in any industry - are risk adverse. They want someone who will not let them down. Both of those things will help them feel better they're not making a risky choice.
Posted by: Scott Macmillan | May 24, 2004 at 03:21 PM
Standard warning, I'm not 'in' the industry...
And I've not tinkered with the NWN set-up (I'm a Morrowind guy, save the wonderful fact that NWN has multiplayer) but I'd think that sound work with mods and scripting can only help someone looking for a job. At least so far as getting into a programming/scripting job, which seems to be where a lot of folk are beginning their trek these days. Two guys with the exact same resume, the only difference being that Guy A has completed a mod for a game and Guy B hasn't, I'd be inclined to think Guy A has shown more initiative.
Again, this is speculation from someone hoping to get 'inside' in a few months, but at the very least it sure as hell can't hurt, right?
Posted by: Jeffool | May 24, 2004 at 04:30 PM
Yes, it would make me more likely to hire someone for a level design / mission design position. For a pure coder position I'd want to see some good C or C++.
Posted by: Jamie Fristrom | May 25, 2004 at 11:44 PM
I think your point about the story in Shadowlords evolving as you play hits the nail on the head. In the official campaign it's almost blatantly obvious who the 'bad guy(s)' is from the very beginning, whereas in Shadowlords you discover clues bit by bit. The Thief series and Morrowind use this same tactic you uncover parts of the mystery not via cutscenes, but also from odd notes and overheard bits of conversation. To me this approach is more engaging as a player than your standard NPC stroyteller approach - i.e. Aerin Gend and Aribeth in the official campaign.
I recently rediscovered Morrowind and actually have found it to be very engaging and very openended. But once I'm done - and completed Deadly Shadows - I'll definitely be going back to some of the player created content for NWN, just to see what all the little elves have been tinkering with.
Posted by: Tore Vesterby | May 29, 2004 at 04:51 AM
Could I get your thoughts on what constitute a 'good c/c++' demo? Is there anything in particular you like to look for?
Posted by: sender | May 29, 2004 at 07:51 PM
I look for - meaningful indentifiers, code that's self-documenting rather than heavily commented, a lot of asserts will earn a free half star, asserts followed by code that gracefully fails if the assert fails would get another free half star - the code should be object-oriented whether it's C or C++. Simplicity of data would be a plus: a lot of pointers and dynamic memory allocation would scare me in a demo, although I know engines get that way over time. Other things that would scare me but I might hire anyway - getting clever with templates or macros or polymorphism. Immediate no-hire flags would be "repeating yourself" - cut and pasted code, using a case statement when there was an algorithmic solution, duplication of data (for example, a string class that is both null-terminated and maintains the length of the string in a separate member) without a good explanation. Another immediate no-hire would be fake-object-oriented code: having, say, a monolithic "manager" class in each module that does everything, and very few actual objects.
If I was hiring a graphics programmer I'd like to see a graphics demo and if I was hiring a gameplay programmer I'd want to see a game. Lately when interviewing I've pair-programmed with the interviewee - set them down on some code I was working on, given them an explanation of what it did and what I wanted it to do, and let them go at it. I've only done this twice, so although it hasn't failed me yet I can't really vouch for it. If I ended up in a position where I was doing more hiring, I would a) ask Don Likeness how he does it, because he does almost all the coder-hiring for our company which I think is why the standards are pretty high for engineers, and b) come up with a standardized test that our current crop of engineers would pass but everybody else would fail.
Posted by: Jamie Fristrom | May 31, 2004 at 12:06 AM