Automated munchkinry
Nov. 5th, 2003 11:45 pmTonight, I've been pondering the problem of random generation of NPCs in D&D.
The problem is that I don't want truly random characters; I want characters that are at least a little bit optimized for their purpose. Some examples of the sort of optimization I have in mind:
- a cleric should probably have Wisdom among his highest stats.
- a bard should probably have some ranks in Perform, and should own and use the instrument he can Perform.
- the prepared spells of a wizard expecting combat should favor magic missile over Nystul's undetectable aura.
- a character with weapon focus in a weapon should probably own and use that weapon.
These are all guidelines, not absolute rules. But they're still good ideas that should be generally followed by most NPCs.
I'd really like to have an NPC generator that could follow those guidelines and create reasonably effective PCs. I have no idea how to code such a beast, though--I'm not even sure what all those guidelines are, myself.
One idea for an approach to this problem: genetic programming. But the only evaluation metric I can think of is 'have the characters fight it out and see who wins'. But I don't have nearly the time or energy to write the simulator and the AI that would take.
The problem is that I don't want truly random characters; I want characters that are at least a little bit optimized for their purpose. Some examples of the sort of optimization I have in mind:
- a cleric should probably have Wisdom among his highest stats.
- a bard should probably have some ranks in Perform, and should own and use the instrument he can Perform.
- the prepared spells of a wizard expecting combat should favor magic missile over Nystul's undetectable aura.
- a character with weapon focus in a weapon should probably own and use that weapon.
These are all guidelines, not absolute rules. But they're still good ideas that should be generally followed by most NPCs.
I'd really like to have an NPC generator that could follow those guidelines and create reasonably effective PCs. I have no idea how to code such a beast, though--I'm not even sure what all those guidelines are, myself.
One idea for an approach to this problem: genetic programming. But the only evaluation metric I can think of is 'have the characters fight it out and see who wins'. But I don't have nearly the time or energy to write the simulator and the AI that would take.
no subject
Date: 2003-11-06 04:10 am (UTC)no subject
Date: 2003-11-06 05:29 am (UTC)After having to generate some relatively mundane squads, I noticed two things. First, Monte Cook is right... 3.5e NPC write-ups are inferior to those in 3e. In fact, they frankly suck ass. Missing useful things, like 'what weapon, how much damage, what AC, what init.'
While the issue of optimization looms, I'm increasingly thinking that I may come up with some PDF 'tables of NPCs' kind of thing, modeled mostly after what 3e had. After Low Fantasy D&D, that is. Layout, though, is going to be a big question. Mmmm.. food for further discussion.
no subject
Date: 2003-11-06 07:36 am (UTC)Fighter level 8:
Str 17 + d3
Con 16 + d3
... (don't bother with variables for int, wis, cha)
Skills:
(some standard set)
weapon focus: $weapon
Feats:
(some standard ones)
one of: (list 3 cool ones here, e.g. cleave, trip, blind-fight)
Armor: choose or roll: breastplate, chain, ... (whatever)
Weapons: +1 $weapon (other features?), $bow
$standard_equipment_pack
etc etc
$standard_equipment_pack is one of several packs you separately specify based on environment, perhaps (dungeon crawl vs city vs wilderness). Basically, you specify the parts that either are standard or you don't care about so they may as well be standard, and then specify a relatively small number of variables that you plug in at run time.
For spells, you would have several standard lists, which you can optimize for different purposes, and then just plug one in.
Would something along these lines work?
Back when I ran a game (long time ago) I kept a folder of pre-generated characters (not necessarily fully-specified), so if I needed a cleric in a hurry I could just pull one out. I built the set over time. Some were pretty generic; others were based on (or copies of) past characters from other games. These tended to be the more interesting ones, because some player actually developed them over time, but you can do a lot with generics too.