Quest Creation Example
This guide is written by our own Zelknolf, on the forums.
OK, so, I'm still hearing grumps that documentation isn't enough, but the documentation that we have covers the simplest quests that can be constructed with screenshots and red arrows and circles on things, so I'm not sure how I could make that more verbose.
So, next strategy-- teach by example and open the floor to questions. Thus, I'm putting this in a forum thread, so that there's opportunity to discuss how and why I'm doing things or to ask for clarification about points. I might brandish moderator power to rearrange the questions and answers as more content-containing posts go onto the thread, but people should feel free to ask questions and work along. This first post is mostly a declaration of intent.
As a rough outline of what I'm going to make-- I'm starting with a small-town rugged-surrounds inn, looking to have CR 1-2 content which can be done in chunks with party mates optional and ideally doesn't get used up too quickly. Centipedes are a very good choice here because they're not very threatening, and we can thus deploy many of them in sequence to produce the sense of hostile grounds that need to be slugged through (the tiny ones can be reliably killed by cantrips and are slower than PCs, they do 1 HP damage with DC 10 dex poison -- they well earn their CR of 0.125), when we tend to be stuck having CR 1 content be done in a couple minutes.
- 1 Evaluating Work that Actually Needs Doing
- 2 Tooling Antagonists
Evaluating Work that Actually Needs Doing
- Alternate Title: "Mise en Place, Bitches"
So, I have an idea of what I'm putting together, so now's the time to go through each of the steps and try to find out what already exists.
On a high level, the ability to save the state of a quest, load that state after a server reset, update journals, assign XP, log the activity, etc-- that all exists in the ACR, and lives in acr_quest_i.
On a more-specific level, the ability to access acr_quest_i based on killing monsters or having a conversation already exists.
Two things that our existing documentation that don't exist: -- The ability to complete a quest by killing lots of arbitrary things -- The ability to have a quest centered on defending a point. Making the failure condition be losing the ground or letting the bad guys run through a space.
At this point, we'd contact tech normally. But I am tech. So, that first one it turns out is probably possible anyway, by just spawning a bunch of stuff and setting the quest state upper limit high. Well, that doesn't sound very helpful to most people, but I'll explain it when we get to that part.
The second one, though, we don't have. I'll have to write that. But because I'm the only person involved, I've clearly already had that conversation with myself, and you can tell because I'm talking about it.
And then the last piece. Centipedes. We don't have those. We'll have to tool those-- but new creature templates aren't usually something you can bother tech about. Such things are usually the responsibility of the server, and thus of the toolsetter, so that will be our next piece.
- Alternate Title: Screw the Attachment Limit
Centipedes aren't currently a thing in ALFA. Or they weren't; of course, because I'm posting this, I have tooled them. So for the purposes of this tutorial, they're not here, and we have to make them.
Fortunately, Monstrous Centipedes are an SRD creature, so we have a good idea what our target is. This will often be the sort of task involved in tooling a new creature, even-- turning a stat block into a NWN2 creature.
So starting from the top, the first thing you want to do is copy an existing creature that is similar to what you want. Giant beetles are a good choice, on account that they're also mindless bitey chitinous hostile vermin. So starting from the top of the stat block:
Creature size is determined by appearance. So we have to pick something as close as we can. Of course, we don't have a centipede model, so what you can see here is that I took a beetle appearance and made it short, thin, and long. (Scale is 0.25, 2, 0.25). The fact that we picked a small appearance instead of a tiny one matters mechanically, and we're going to be compensating for that later.
We'll also need to set the creature's racial type. We want to make sure our vermin-slaying arrows and vermin-bane weapons appropriately demolish our bitey chitinous hostiles. It was already set here, because I copied a beetle, but that won't always be the case, so it's smart to check.
Then we need to set the number of hit dice on the creature. This is important because it will power things like the creature's attack bonus and saving throws, and might determine if they're vulnerable to certain spells (like sleep or blasphemy).
Hit points are fairly straightforward, but one should note that standards might vary by your server. I'm tooling for BG, because BG is the open-source server, and Shad0wfax prefers SRD hit points. However, some HDMs prefer max hit points to keep their pre-tooled NPCs closer to the dynamically-generated NPCs.
I call out initiative, because it's usually best to literally read down the stat block, but because we're doing that, there's nothing to do here.
Movement rate is somewhat arbitrary, but it is something that should be considered. I give the piece of advice to not use PC movement rates on NPCs, as that tends to do terrible damage to the attack of opportunity mechanic. Usually, a creature that moves 20' is "slow," a 10' is "very slow", 40' is "fast" and more than that is "very fast".
Movement rate is on the big spammy tab, so it tends to help to collapse the appearance and basics nodes on the tree.
Armor class tends to only need special attention for natural armor, which needs some distinction made-- the kinds of natural armor you fill out in this field is just "natural armor," while the natural armor that you get from spells like Barkskin or magic items is "natural armor enhancement"-- and the two stack, just like magic vestment with plate armor. Also why you don't want to put an armor bonus on a creature hide (which we'll call out below).
Attacks & Weapons
Again we're on a thing that's on the stat block, but you don't have to do anything special about.
But the bite is a little more complicated. This is actually an item in the creature's inventory, which is equipped on a hidden equipment slot -- presumably because NWN2 loves us unconditionally.
Inside the creature's inventory, we can search for a bite of this sort. For right now, we're going to assume the bites already tooled. However, the centipede's poison does need some special attention, which you can find documentation for here.
We want to review the creature's special attacks, because that might not be covered by equipping the creature's bite attack. But if it is, like in this case, we have nothing to do.
Tooling a Monster Weapon
- Alternate Title: Oh come on, that bite isn't standard content
This is fortunately simpler. There are a lot of monster bites in the wide wide world, and you can copy any of them as a starting point. Rename it, retag it, and open up the item properties.
Because we've picked a custom poison, I get to link to the custom poison documentation again. That poison will do 1 point of strength damage primary and secondary unless you tell it otherwise, and we want to tell it otherwise (namely, we want it to do 1 point of dex damage).
And then on to special qualities, which again has us going into the creature's inventory-- but I call out darkvision here, because it's basically useless on an NPC.
Properties & Hide
So, because the only other thing the centipede has is vermin properties, we can use the generic one-- this is going to make the centipede immune to mind-affecting spells; so we can explode them with a ray of frost, but not a sleep or a charm monster.
Saving throws are usually self-managing. Sometimes we're doing weird things to try to make an NPC work, so this might need fiddling. The statistics tab halfway down has fields for special adjustments to saving throws, if that's necessary.
And then we're onto ability scores-- which is straight data entry. You may be frustrated by the tab order on this form; everyone is. It's terrible.
Actually four things to remember-- but the text should speak for itself. It's very important to note, though, that the skill bonus in the stat block is what you want the skill modifier to be in play. It is not the number of ranks you have to give the creature.
Giving a creature feats tends to be awful, so I especially call out that there's a field which lets you search in here. You should use it.
This tends to be in the stat block. We're going to need to make note of it for our spawn points, and being that we're tooling this for a static, there might be some sanity checks in how we're using this antagonist. Like if we were deploying a solitary creature in a drooling hoard, we're probably doing it wrong.
Last, and most importantly, make sure you set the CR on your creature. Everything breaks if the CR is wrong. Everything.