• The VOIDRUNNER'S CODEX is LIVE! Explore new worlds, fight oppressive empires, fend off fearsome aliens, and wield deadly psionics with this comprehensive boxed set expansion for 5E and A5E!

Class algorithm/problem

Xeriar

First Post
Let's say I have a program that makes little partial stat-blocks (if you have two gigs of RAM and some spare time, it can do a million).

Right now, it randomizes the attributes (based on 3d6 for everyone), and then age (using slightly modified Roman numbers). It currently only has four classes of people - commoner, expert, warrior and 'upper'.

So, my problem is how to pick who gets to be what in this 'upper' category - specifically, how to put the people with high int into wizards, for example - while allowing for it to be a customizable list - I don't want to hard-code the classes more than I already have.

So, any suggestions on how to assign classes? I'm kind of at an impasse here as to how to properly do this :-/

I mean, if someone has wizards as being .01% of the population, an algorithm would likely run the risk of every single wizard having an intelligence of 18 to start. Not an outright bad thing, but some people probably prefer more variety.
 

log in or register to remove this ad

Dinkeldog

Sniper o' the Shrouds
Set up a probability chart so that someone with an 18 Int has a 50% chance of being a wizard, 30% chance of being a bard, 10% chance of being a rogue and 10% chance of being one of the other classes randomly. That kind of assumes that you're selecting class based off of one stat.

So instead, you might want to assign numerical values to a class based on each of the stats. First you look at a 12 Str and see that that gives you a 20 score to cleric and a 20 score to druid. Then the 10 Dex gives you no scores. The 18 Int gives you a 50 wizard, 30 bard, 10 rogue. 9 Wis gives you nothing (see below). 16 Con gives you 30 fighter, 30 barbarian, 30 ranger, 30 paladin, 10 wizard. 14 cha gives you 10 paladin, 10 cleric, 20 sorcerer, 20 bard. You can add across and that gives you a total of 320 points, so you generate a number between 1 and 320 and see what class that falls under. The catch now is that with that 9 Wis, you want to catch any assignments of cleric and may want to force a second paladin assignment to come up to make it stick.

That makes for a pretty complicated process, but should be doable.
 

smetzger

Explorer
Have a weight for each class.
Then have a primary ability for each class.
If your highest ability score is the primary ability for a class then add a given weight for said class.

You could also have other modifiers to the weight of a class, like race, secondary attributes etc.

Download my 2nd edition RogueGenerator program and check out the Random Settings screen to see some possibilities. You could also just look at the screen shots shich are in the Help section of the web page.

http://yoyodyne.virtualave.net/roguegenerator/index.htm
 
Last edited:

Voidrunner's Codex

Remove ads

Top