Wednesday, January 22, 2014

Slightly New, Semi-Improved Thug-O-Matic

So, more instantly generated NPCs:

NPC 1
ST 15; DX 9; IQ 9; HT 13
Thrusting Broadsword damage 2d+2 cut; 1d+3 imp
Leather Armor DR 2
Speed 5.5, Dodge 8, Move 5
Parry 11; Block 9 (Medium Shield)
Thrusting Broadsword-12
Shield-9

NPC 2
ST 15; DX 12; IQ 11; HT 9
Shortsword damage 2d+1 cut; 1d+1 imp
Leather Armor DR 2
Speed 5.25, Dodge 8, Move 5
Parry 10; Block 11 (Small Shield)
Shortsword-13
Shield-15

NPC 3
ST 15; DX 12; IQ 10; HT 12
Throwing Axe damage 2d+3 cut
Mail DR 4
Speed 6.0, Dodge 8, Move 4
Parry 10
Throwing Axe-14

NPC 4
ST 14; DX 10; IQ 13; HT 14
Nunchaku damage 2d+1 cr
Mail DR 4
Speed 6.0, Dodge 8, Move 4
Parry 8
Nunchaku-10

NPC 5
ST 19; DX 9; IQ 8; HT 14
Javelin damage 2d imp
Plate DR 6
Speed 5.75, Dodge 7, Move 4
Parry 11; Block 11 (Large Shield)
Shield-10
Javelin-11

NPC 6
ST 14; DX 13; IQ 13; HT 13
Mace damage 2d+3 cr
Plate DR 6
Speed 6.5, Dodge 7, Move 3
Parry 10
Mace-14

NPC 7
ST 19; DX 9; IQ 11; HT 14
Broadsword damage 3d+2 cut; 2d cr
Leather Armor DR 2
Speed 5.75, Dodge 8, Move 5
Parry 9
Broadsword-12

NPC 8
ST 14; DX 12; IQ 12; HT 10
Nunchaku damage 2d+1 cr
Leather Armor DR 2
Speed 5.5, Dodge 8, Move 5
Parry 11; Block 11 (Medium Shield)
Shield-12
Nunchaku-12

NPC 9
ST 14; DX 14; IQ 12; HT 11
Mace damage 2d+3 cr
Leather Armor DR 2
Speed 6.25, Dodge 9, Move 6
Parry 10
Mace-14

NPC 10
ST 15; DX 13; IQ 12; HT 12
Broadsword damage 2d+2 cut; 1d+2 cr
Leather Armor DR 2
Speed 6.25, Dodge 9, Move 6
Parry 13; Block 12 (Medium Shield)
Shield-14
Broadsword-16

NPC 11
ST 19; DX 12; IQ 10; HT 10
Spear damage 2d+1 imp; 2d+2 imp
Mail DR 4
Speed 5.5, Dodge 7, Move 4
Parry 11; Block 11 (Medium Shield)
Spear-12
Shield-12

NPC 12
ST 14; DX 11; IQ 11; HT 11
Small Mace damage 2d+2 cr
Light Scale DR 3
Speed 5.5, Dodge 7, Move 4
Parry 10
Small Mace-14

NPC 13
ST 19; DX 10; IQ 8; HT 14
Shortsword damage 3d+1 cut; 2d-1 imp
Mail DR 4
Speed 6.0, Dodge 9, Move 6
Parry 9
Shortsword-13

NPC 14
ST 14; DX 10; IQ 13; HT 11
Small Mace damage 2d+2 cr
Mail DR 4
Speed 5.25, Dodge 7, Move 4
Parry 11; Block 11 (Medium Shield)
Small Mace-13
Shield-13

NPC 15
ST 15; DX 12; IQ 9; HT 11
Broadsword damage 2d+2 cut; 1d+2 cr
Plate DR 6
Speed 5.75, Dodge 6, Move 3
Parry 13; Block 13 (Large Shield)
Shield-14
Broadsword-15

NPC 1
ST 11; DX 13; IQ 12; HT 12
Long Spear damage 1d+1 imp; 1d+2 imp
Leather Armor DR 2
Speed 6.25, Dodge 8, Move 4
Parry 10
Long Spear-15

NPC 2
ST 14; DX 13; IQ 12; HT 13
Throwing Axe damage 2d+2 cut
Mail DR 4
Speed 6.5, Dodge 8, Move 4
Parry 10
Throwing Axe-14

NPC 3
ST 11; DX 10; IQ 13; HT 10
Spear damage 1d+1 imp; 1d+2 imp
Leather Armor DR 2
Speed 5.0, Dodge 8, Move 5
Parry 8
Spear-10

NPC 4
ST 13; DX 10; IQ 11; HT 14
Nunchaku damage 2d cr
Cloth Armor DR 1
Speed 6.0, Dodge 9, Move 6
Parry 9; Block 9 (Small Shield)
Shield-11
Nunchaku-11

NPC 5
ST 11; DX 14; IQ 10; HT 12
Spear damage 1d+1 imp; 1d+2 imp
Steel Laminate DR 5
Speed 6.5, Dodge 7, Move 3
Parry 11
Spear-17

NPC 6
ST 14; DX 10; IQ 8; HT 12
Broadsword damage 2d+1 cut; 1d+1 cr
Leather Armor DR 2
Speed 5.5, Dodge 8, Move 5
Parry 8
Broadsword-10

NPC 7
ST 14; DX 14; IQ 13; HT 9
Thrusting Broadsword damage 2d+1 cut; 1d+2 imp
Light Scale DR 3
Speed 5.75, Dodge 7, Move 4
Parry 10
Thrusting Broadsword-14

NPC 8
ST 11; DX 14; IQ 9; HT 10
Javelin damage 1d imp
Leather Armor DR 2
Speed 6.0, Dodge 8, Move 4
Parry 13; Block 13 (Large Shield)
Shield-14
Javelin-14

NPC 9
ST 11; DX 10; IQ 10; HT 11
Katana damage 1d+2 cut; 1d imp
Cloth Armor DR 1
Speed 5.25, Dodge 7, Move 4
Parry 11; Block 12 (Large Shield)
Shield-12
Katana-11

NPC 10
ST 11; DX 10; IQ 12; HT 11
Katana damage 1d+2 cut; 1d imp
Mail DR 4
Speed 5.25, Dodge 6, Move 3
Parry 9
Katana-13

NPC 11
ST 14; DX 12; IQ 12; HT 9
Throwing Axe damage 2d+2 cut
Cloth Armor DR 1
Speed 5.25, Dodge 7, Move 4
Parry 12; Block 13 (Large Shield)
Shield-15
Throwing Axe-13

NPC 12
ST 14; DX 13; IQ 11; HT 14
Hatchet damage 2d cut
Leather Armor DR 2
Speed 6.75, Dodge 8, Move 4
Parry 13; Block 12 (Large Shield)
Hatchet-14
Shield-13

NPC 13
ST 11; DX 14; IQ 8; HT 11
Pick damage 1d+2 imp
Leather Armor DR 2
Speed 6.25, Dodge 8, Move 4
Parry 12; Block 11 (Small Shield)
Pick-17
Shield-14

NPC 14
ST 11; DX 11; IQ 13; HT 11
Long Spear damage 1d+1 imp; 1d+2 imp
Cloth Armor DR 1
Speed 5.5, Dodge 7, Move 4
Parry 12; Block 11 (Medium Shield)
Shield-13
Long Spear-14

NPC 15
ST 11; DX 12; IQ 10; HT 13
Long Spear damage 1d+1 imp; 1d+2 imp
Leather Armor DR 2
Speed 6.25, Dodge 8, Move 4
Parry 10; Block 11 (Small Shield)
Shield-15
Long Spear-12

What's different this time? I've wrapped up the NPC-making machinery in some more machinery which ensures that on average they'll do at least [some] points of damage to opponents through [a certain amount of] DR. The first batch does at least 2 points through DR 5. The second batch does at least 3 points through DR 3. It takes desired average injury and average opponent DR as inputs, backtracks through a very crude algorithm to get an approximate ST necessary to generate that damage (several different STs, actually, since it's different depending on whether you're doing sw/thr and cr/cut/imp), and picks a weapon which on average will do at least that much damage through that much DR with an appropriate ST, which is thereupon assigned to the NPC. The algorithm needs a lot of work, and it doesn't pay the slightest attention to how likely the NPCs are to actually hit, but it seems to be moving in the appropriate direction.


4 comments:

Douglas Cole said...

That's a lot of fun. I can see some real utility here in terms of generating rag-tag groups of bandits. Dress 'em up a tiny bit differently (or just allow dial-a-race with a template) and you've got enough variety here to make for distinctive encounters.

Does it output to a spreadsheet? I wonder if it could be used to (say) import to Roll20 or something, for the VTT set.

Peter V. Dell'Orto said...

Nice. Although I'd personally use the actual skill names, so I don't need to remember if Nunchaku is Flail or not, say.

Iron Llama said...

The next bit I'm thinking about is, in fact, to come up with a way of reading in templates, so one could pre-build races, professions, and so on and generate a handful of orcs/warriors/trolls/accountants.

At the moment, it just spits out text from a command line. However, it could easily output to any text-ish format, which is a short hop from a spreadsheet. I could just as easily turn into, say, an Android app for tablet use. Alas, SJ Games's on-line policies don't permit that.

GreyKnight said...

If it's just writing to stdout you can easily write a CSV file, which can be read by the spreadsheet application of your choice. :-)