Anthony Davis
Blizzard Entertainment
Hey Young Whippersnappers, sit back and listen as I tell you stories of ye old days.
Why Josh Sawyer is a Programmer's Designer: a NWN2 Tale.
After Ferret...uh, left... Obsidian before the completion of NWN2, Josh Sawyer and Chris Avellone took over the Lead Designer duties between them. I believe Chris mostly handled tying all the narrative work done so far as well as making the hard calls of what stays or goes.
Josh was focusing more on DnD and making the game as fun as we could considering how little time we had left on it.
Most of the programmers sat in a darkened, poorly ventilated, series of closets that had been converted into offices. This was all before the movie to Irvine and the nice offices Obsidian has now. Anyway, this darkned set of manly smelling rooms was affectionately known as Blawson's Creek, after Brian Lawson, one of the senior programmers on NWN2.
At the time, I shared an office with the great Rich Taylor, a senior programmer of power.
We had, all of us, been working 7 days a week, 10 to 14 hour days, and it seemed like we were always behind on the programming side.
Josh came over to Blawson's Creek and popped into Mine and Rich's office.
Josh: "Hey guys, I don't think we are giving enough to the community with this game."
Rich and I: "Agreed, but what can we do now?"
Josh: "I want to give them a functioning deity system. I want it to respect class, gender, and alignment, and I want it enforced. If your class or alignment changes, your deity will reject you and you will have to pick another."
Josh then began to graph and chart his deity system on the dryboard, going into a LOT of detail. He clearly had done his homework on this.
Me: "Josh, I think this all looks great, but the problem is that in NWN1, the only data and events that were setup were very limited and involved a SINGLE string that has no data verification on it. I'm under the gun and running late."
Josh: "We gotta do this, we gotta give them something."
Me: "Unless you can come up with a way to make this work with ONLY a single string variable that can be tossed back and forth over the client/server wall, I don't know. We also can't add anymore events at this point, so this is something we could ONLY check at certain predetermined points, like level up for example."
Josh, without missing a beat: "I'll be back."
30 Minutes later...
Josh returned and spelled out his modified Deity System that very closely fit within the criteria I gave him. Sure I would have to make SOME changes, plus I would have to still implement the whole thing, but suddenly this became VERY doable.
I worked on it late Friday night, Saturday, and Sunday. Monday morning I showed it to Josh, and with just a few bugs and tweaks - it worked. Josh was very pleased and implemented the data side of the system.
Little did we know at that time that this system would later set the groundwork and be expanded on by Andrew Woo and myself for the first NWN2 expansion, The Mask of the Betrayer, arguably the best RPG since Torment.
For my annual review, I was actually reprimanded for implementing this system because I deviated from my schedule to get it done.
Now, don't get angry, that was the right call for my reviewer to make because behavior like that is what causes projects to go off the rails to begin with. Seriously, schedules exist for a reason.
That said, I would not change what I did at all. The end result made everything better and while at the time I was angry over what happened, I later grew and understood why and I accept the price I paid for it.
...and that is just ONE example of how Josh is an amazing designer and project director. No, he's not perfect, but he gets soooo much and understands HOW to work within a system to get what he wants. I have seen many designers argue with me for HOURS about how it HAS TO BE THIS WAY NO MATTER THE COST when the reality is quite the opposite.
Many designers, especially but not always JUNIOR designers, create systems and cutscenes and all sorts of wonderful things in their head without understanding the game engine they are going to be creating this all in.
It's a tough line to walk as a programmer, you don't want to restrict your designers, but at the same time you have to code it all and get it out the door someday.
Understanding your game engine, your world, your toolbox, is where Josh is super pro. He gets it, and if he doesn't, he asks the right questions so that he does get it.
Why Josh Sawyer is a Programmer's Designer: a NWN2 Tale.
After Ferret...uh, left... Obsidian before the completion of NWN2, Josh Sawyer and Chris Avellone took over the Lead Designer duties between them. I believe Chris mostly handled tying all the narrative work done so far as well as making the hard calls of what stays or goes.
Josh was focusing more on DnD and making the game as fun as we could considering how little time we had left on it.
Most of the programmers sat in a darkened, poorly ventilated, series of closets that had been converted into offices. This was all before the movie to Irvine and the nice offices Obsidian has now. Anyway, this darkned set of manly smelling rooms was affectionately known as Blawson's Creek, after Brian Lawson, one of the senior programmers on NWN2.
At the time, I shared an office with the great Rich Taylor, a senior programmer of power.
We had, all of us, been working 7 days a week, 10 to 14 hour days, and it seemed like we were always behind on the programming side.
Josh came over to Blawson's Creek and popped into Mine and Rich's office.
Josh: "Hey guys, I don't think we are giving enough to the community with this game."
Rich and I: "Agreed, but what can we do now?"
Josh: "I want to give them a functioning deity system. I want it to respect class, gender, and alignment, and I want it enforced. If your class or alignment changes, your deity will reject you and you will have to pick another."
Josh then began to graph and chart his deity system on the dryboard, going into a LOT of detail. He clearly had done his homework on this.
Me: "Josh, I think this all looks great, but the problem is that in NWN1, the only data and events that were setup were very limited and involved a SINGLE string that has no data verification on it. I'm under the gun and running late."
Josh: "We gotta do this, we gotta give them something."
Me: "Unless you can come up with a way to make this work with ONLY a single string variable that can be tossed back and forth over the client/server wall, I don't know. We also can't add anymore events at this point, so this is something we could ONLY check at certain predetermined points, like level up for example."
Josh, without missing a beat: "I'll be back."
30 Minutes later...
Josh returned and spelled out his modified Deity System that very closely fit within the criteria I gave him. Sure I would have to make SOME changes, plus I would have to still implement the whole thing, but suddenly this became VERY doable.
I worked on it late Friday night, Saturday, and Sunday. Monday morning I showed it to Josh, and with just a few bugs and tweaks - it worked. Josh was very pleased and implemented the data side of the system.
Little did we know at that time that this system would later set the groundwork and be expanded on by Andrew Woo and myself for the first NWN2 expansion, The Mask of the Betrayer, arguably the best RPG since Torment.
For my annual review, I was actually reprimanded for implementing this system because I deviated from my schedule to get it done.
Now, don't get angry, that was the right call for my reviewer to make because behavior like that is what causes projects to go off the rails to begin with. Seriously, schedules exist for a reason.
That said, I would not change what I did at all. The end result made everything better and while at the time I was angry over what happened, I later grew and understood why and I accept the price I paid for it.
...and that is just ONE example of how Josh is an amazing designer and project director. No, he's not perfect, but he gets soooo much and understands HOW to work within a system to get what he wants. I have seen many designers argue with me for HOURS about how it HAS TO BE THIS WAY NO MATTER THE COST when the reality is quite the opposite.
Many designers, especially but not always JUNIOR designers, create systems and cutscenes and all sorts of wonderful things in their head without understanding the game engine they are going to be creating this all in.
It's a tough line to walk as a programmer, you don't want to restrict your designers, but at the same time you have to code it all and get it out the door someday.
Understanding your game engine, your world, your toolbox, is where Josh is super pro. He gets it, and if he doesn't, he asks the right questions so that he does get it.