• NOW LIVE! Into the Woods--new character species, eerie monsters, and haunting villains to populate the woodlands of your D&D games.

NPC Generator/Designer

Vascant

Wanderer of the Underdark
Been a while since I posted here and kept those interested up to speed on progress so decided to do just that. Today marked the achievement where the engine can create NPC's of almost any Race, Class, Template and now Prestige Class. The few testers I have assisting at the moment have assisted with tweaking the Skill Selection AI to probably close to 90% correct, when it isn't is usually just a case of me not having enough flavor involved. The Engine is capable of handling 4 Classes and 4 PrC's with a total up to 400th level (My own limitation there is set because if you need a NPC that high of level, you don't need my help) Though to be honest, the better you are with scripting.. you can work around most limitations.
Now I am done with what I would call, Proof of concept. Meaning I feel I have figured out how I need pieces of data and the system to flow to handle pretty much whatever I want to throw at it.

Though you can check out the site and see alot more examples I am going to post one here to spark your interest (I know how I am about checking out every site someone posts).

Merildan: Male Human Sorcerer 10: CR 10; Medium Humanoid; HD 10d4+10 (HP 32); Init 3 (+3 Dex); Spd 30 ft.; AC 13 (+3 Dex), touch 13, flat-footed 10; Base Atk +5; Grp +4; Atk +6 melee (1d6+1/x2, +2 shortspear); Full Atk +6 melee (1d6+1/x2, +2 shortspear); Space/Reach 5 ft./5 ft.; SA ; SQ ; AL NG; SV Fort +5, Ref +7, Will +10; Str 9, Dex 16, Con 13, Int 14, Wis 14, Cha 17.

Skills: Bluff +12 (+3 cha), Concentration +8 (+1 con), Diplomacy +11 (+3 cha,+4 synergy,+2 negotiator), Intimidate +6 (+3 cha,+2 synergy), Knowledge (Arcana) +13 (+2 int), Listen +4 (+2 wis), Search +5 (+2 int), Sense Motive +10 (+2 wis,+2 negotiator), Spellcraft +6 (+2 int,+2 synergy), Spot +5 (+2 wis).

Feats: Combat Casting, Negotiator, Scribe Scroll, Spell Focus (Abjuration), Spell Penetration.

Languages: Common, Undercommon, Halfling.
Background: Diplomat (Arcane), Ht: 5' 3", Wt: 145, Hair: Black, Eyes: Blue, Age: 36.

Sorcerer Spells Known (6/7/7/7/5/3, base DC = 13 + spell level): 0 -- acid splash, arcane mark, dancing lights, detect magic, flare (DC 13/F), light, mage hand, mending (DC 13/W), ray of frost; 1st -- endure elements (DC 15/W), feather fall (DC 14/W), jump (DC 14/W), magic missile, silent image (DC 14/W); 2nd -- fox's cunning (DC 15/W), mirror image, touch of idiocy, whispering wind; 3rd -- blink, explosive runes, rage; 4th -- charm monster (DC 17/W), fire shield; 5th -- transmute mud to rock.

Possessions: +2 shortspear, cloak of resistance +1, ring of minor cold resistance, gloves of dexterity +4, ring of minor fire resistance, potion of protection from energy (fire), potion of barkskin +5, potion of greater magic fang +3, 22 pp, 10 gp, 16 sp, 12 cp, 37148 gp in other assets.

For those that recall when I used to post examples a while back, I hope you can see the improvements in the system since then.
 

log in or register to remove this ad

Very Nice!

For a GM like me, a tool like this is just incredible. I do not have a lot of time to make NPC's from scratch. On top of that, the characters I am DM'ing can change directions at the drop of a coin. Thus, you need a tool to quickly generate NPC's.

Although I did not help with the testing, I did follow the thread on your development. Hopefully, your tool will be available to the general public, even if that means a donation for your time. To me, this tool is worth more that PCGen, eTools and all the other computer tools combined.


Knakinator
 

This looks great.
I have little prep time for my games and have found that NPC creation with giving them equipment has been the one thing that sucks most of my time, not to mention while at the game table the PC go in some direction that i have not foreseen and then I need a quick npc or two. I hope this comes out soon for public use. If you need another tester I would be glad to help out in some way.

Delak
 

Honestly.. I have not figured out what I am evening going to do with the program as of yet. I have no desire to be in the commercial software business though to be honest (Thats a freaking headache).

How public it gets released is going to be a tricky issue because of how complicated install packages can be, in all my years of software development I have stayed in the Enterprise sector, mostly because it paid so much better but also because I did not deal with a general public with regards to applications, situations were very controlled. The only reason I do not release it to the general public right now is because I do not need to know if a button or menu option works at this time, this allows me to keep testing of certain functions and output controlled so that I know if it is working or not and can then move onward.

This has become more of a "Proof of concept" experiment for me. I have a series of goals I wish to accomplish with this program. I have learned a great deal of respect for those that create d20 programs having done so myself now, so now I am trying to see if certain features other programs have were a limitation of the rules and how they were applied or the technology and design issues. For example:
"Random NPC Generation": should not mean a mess resulting from a series of tables a program ran thru. This is why I tag on "Designer", because what my system attempts to do is allow a DM to create his world, even down to allowing you to be so picky where you have a different flow for city guards depending on which city, how big the city is, where the city is located and such.
Speed: My goal is 1 NPC per second. With every step I create or add a new element to the system this over all goal does not change. It might mean I have to code something a few times to get it right, but it is done. Some think this may be a bit excessive but like this last weekend, I needed 400 Derro for the campaign I run. My players will tell you that since I started this project our game has become so much better and full of life because I now know what that individual NPC has up his sleeves rather then guessing or a grouped stat block (ex: Derro 1-10 HP 9x3,10x2,11x3,13x2).
Stat Block Display: My personal goal here is simple and came from www.wizards.com and Dungeon Magazine, they have created some very crisp and detailed stat blocks I have seen yet and on the other hand, some of the worst products I have purchased have been because of pathetic stat blocks. So as a programmer and a DM, I insisted that it creates a mimic of the very best looking stat blocks available (with the ability for a individual user to alter the style to some extent).

On a side note: You stated you have been watching but never really got involved.. Why? I am not asking this directly towards my own project but more in a general sense because I have seen tons of small projects around the d20 world come and go but nothing never really comes from it. NPC Generation, I think I see a few posts on different forums each week asking if anyone has something better but these same people never get involved to make something better. It boggles my mind, gaming geek and computer geek almost go hand in hand and yet, we have some of the worst software known to mankind (Free and commercial). Now I know everyone is not a programmer but everyone in d20 does know what a stat block is, so I geared my testing to reach the masses. As you might expect, it has failed. So what do I do next, try and release the program and deal with months of install issues and hold off improving it? This is why I have not released the program even to just let people play with it. I have 1 beta tester left from my group that has not been consumed by real life, it is going to really suck when he falls victim to it as well.
 

The output looks very nice. I'll buzz around on your forums and see what all is involved. I'd love to help out in some way as possibly a beta tester, but I'm leery of committing to something and then not being able to help like I promise.
 

The output look very nice. Would you need to know scripting to add prestige classes?

p.s i can see what you mean by the flavour, it looks very intelligently made!
 

Thanks..Yes as of this moment I do not have a GUI's to help create scripts for prestige classes and such. They will come in time I think, which is one of the reasons why I am doing them all at the moment. The better I understand what it takes to create something, the better a GUI will be to assist others.

On the otherside, it is pretty easy to understand if you understand D20 elements and the functions to make it happen. I have put some effort into keeping all the complicated elements away from the scripts so to make it easier for new people to get a grasp. Then as you learn more, you will find the scripts to be very powerful for creating concepts. Note that there are tons of examples how to do things in the other scripts as well, for example:

Lets say you wanted to create something like a Ring of wizardry but for divine spell casters.
This is the script for "Ring of wizardry I"
Public Function ringofwizardryi()
ringofwizardryi = False
if Designer.IsCaster("Arcane") = True then
if Designer.ModSpellsCast("*",1,2,"Arcane") = true then
ringofwizardryi = True
end if
end if
End function
What it does is checks for a Arcane spell caster and if the NPC is one, it then applies modifier.
Designer.ModSpellsCast(Modifier Type,Modified Level,Modified Amount,Caster Type)
If the NPC has spells available at first level, it will return True.
For divine spell casters as I said for an example.. it would look like this.
Public Function ringofwizardryi()
ringofwizardryi = False
if Designer.IsCaster("Divine") = True then
if Designer.ModSpellsCast("*",1,2,"Divine") = true then
ringofwizardryi = True
end if
end if
End function

For the next example to show just how you can start to work the system.. here is a new script.
Public Function ringofthearcanelesser()
ringofthearcanelesser = False
if Designer.IsCaster("Arcane") = True then
if Designer.ModSpellsCast("+",1,1,"Arcane") = true and Designer.ModSpellsCast("+",2,1,"Arcane") = true and Designer.ModSpellsCast("+",3,1,"Arcane") = true then
ringofthearcanelesser = True
end if
end if
End function

What the above ring does is adds 1 spell to 1st, 2nd and 3rd level. Now when you create a NPC and the system has selected this item, it will automatically apply the needed numbers to it so you do not have to do anything, except dm.

Hope this has made sense..


Ferret said:
The output look very nice. Would you need to know scripting to add prestige classes?

p.s i can see what you mean by the flavour, it looks very intelligently made!
 

Just to keep everyone up to date in case you have not managed to wander over to www.rpgattitude.com

I have added the scripts and functionality for Familiars into the system, all of the familiar information has been scripted so you can add any kind of familiar you desire for your world.

Dricia: Female Human Sorcerer 5: CR 5; Medium Humanoid; HD 5d4+10 (HP 23); Init 1 (+1 Dex); Spd 30 ft.; AC 12 (ring of protection +1, +1 Dex), touch 12, flat-footed 11; Base Atk +2; Grp +2; Atk +3 melee (1d8+1/x2, +1 heavy mace); Full Atk +3 melee (1d8+1/x2, +1 heavy mace); Space/Reach 5 ft./5 ft.; SA ; SQ familiar; AL N; SV Fort +3, Ref +2, Will +5; Str 11, Dex 12, Con 14, Int 13, Wis 13, Cha 16.

Skills: Bluff +8 (+3 cha), Concentration +8 (+2 con), Gather Information +5 (+3 cha,+2 investigator), Hide +4 (+1 dex), Listen +4 (+1 wis,+2 alertness), Search +3 (+1 int,+2 investigator), Sense Motive +3 (+1 wis), Spellcraft +8 (+1 int), Spot +4 (+1 wis,+2 alertness).

Feats: Alertness, Brew Potion, Combat Casting, Investigator.

Languages: Common, Orc.
Background: Guard, Ht: 5' 4", Wt: 129, Hair: Red, Eyes: Grey, Age: 27.

Familiar Benefits: Dricia has a bat familiar. She gains the benefit of the Alertness feat whenever he is within 5 feet of her. She also gains the following benefits from her familiar.

Empathic Link (Su): Dricia can communicate telepathically with familiar at a distance of up to 1 mile. The master has the same connection to an item or a place that the familiar does.

Share Spells: Dricia may have any spell she casts on himself also affect her familiar if the latter is within 5 ft. at the time. Dricia may also cast a spell with a target of You on the familiar.

Touch: Dricia's familiar can deliver touch spells for Dricia.

Dricia's Bat: Female bat familiar; CR --; Diminutive magical beast; HD 1/4 d8 (effective 5d8); (HP 12); Init +2; Spd 5 ft., fly 40 ft. (good); AC 18, touch 16, flat-footed 16; Face/Reach 1 ft. by 1 ft./0 ft.; SQ improved evasion, speaks with master, blindsight 120 ft.; AL ; SV Fort +2, Ref +4, Will +6 ; Str 1, Dex 15, Con 10, Int 8, Wis 14, Cha 4.
Skills: Hide +14, Listen +9, Move Silently +6, Spot +9.
Feats: Alertness.

Improved Evasion (Ex): When subjected to an attack that normally allows a Reflex save for half damage, Dricia's familiar takes no damage on a successful save and half damage on a failure.

Speak with Master (Ex): Dricia and her familiar can communicate verbally as if they were using a common language. Other creatures do not understand the communication without magical help.

Sorcerer Spells Known (6/7/5, base DC = 13 + spell level): 0 -- light, mending (DC 13/W), message, ray of frost, read magic, resistance (DC 13/W); 1st -- charm person (DC 14/W), color spray (DC 14/W), disguise self, sleep (DC 14/W); 2nd -- invisibility (DC 15/W), see invisibility.

Possessions: +1 heavy mace, ring of protection +1, ring of feather falling, potion of levitate, potion of barkskin +4, 14 pp, 19 gp, 12 sp, 16 cp, 5688 gp in other assets.


Hope you enjoy


In case someone catches it, there is a "Missing natural armor in the familiar bug", I already caught it and fixed it.
 
Last edited:



Into the Woods

Remove ads

Top