TTRPG Toolkit
Character Generator
Roll the Dice
Details
Update Notes
Type:
NPC
PC
How many?
1
10
20
30
40
50
Race (backspace to remove):
all
dragonborn
dwarf
elf
gnome
half-elf
halfling
half-orc
human
tiefling
aarakocra
aasimir
air genasi
earth genasi
fire genasi
water genasi
bugbear
centaur
changeling
deep gnome
duergar
eladrin
fairy
firbolg
githyanki
githzerai
goblin
goliath
harengon
hobgoblin
kenku
kobold
lizardfolk
minotaur
orc
saytr
sea elf
shadar-kai
shifter
tabaxi
tortle
triton
yuan-ti
-----------------------------------------------------------------------
Uncheck any columns you don't want, then click the ‘update’ button:
FName
MName
LName
Race
Gender
Age
Trait1
Trait2
Pref.
Poly
STR
DEX
CON
INT
WIS
CHR
Uncheck any columns you don't want, then click the ‘update’ button:
FName
MName
LName
Race
Gender
Age
Trait1
Trait2
Pref.
Poly
Class
STR
DEX
CON
INT
WIS
CHR
Toggle All Stats (STR, DEX, etc.)
Toggle All Stats (STR, DEX, etc.)
-----------------------------------------------------------------------
Update
-----------------------------------------------------------------------
Dice Roller
Choose die:
D2
D4
D6
D8
D10
D12
D20
D100
How many?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Roll'em!
-
--------------------------------------------------------------------
Ability Checks / Attack Rolls / Saving Throws
Advantage?
Modifier?
Are you proficient?
not proficient
proficient
expert
Proficiency bonus?
Roll'em!
-
Point of contact: 'VladdGG' on Twitter and Discord.
PC Stats: uses 4d6 minus the lowest roll. Additionally, it will assign the highest stat to the most common for the class (ex: barbarian's highest stat will be assigned to STR) and can also produce less common archetypes such as STR and DEX based fighters.
NPC Stats: I think a commoner with 10 for each ability is boring! I use 4d4 for each stat. These stats will be a little under powered for combat, but you can manually boost them if you're looking for combat orientated NPCs. Racial bonuses have not been added.
NPCs are geared toward D&D, if you want other TTRPGs, let me know!
A clean data base of 442,609 names is used thanks to: https://data.world/datasets/names & https://www.fantasynamegenerators.com/
You don't have to use exactly what is generated, but just a good place to start. Middle names are a good example of a name most people won't want, so you can just not use it.
Races currently include: dragonborn, dwarf, elf, gnome, half-elf, halfling, half-orc, human, tiefling, arakocra, aasmir, air genasi, earth genasi, fire genasi, water genasi, bugbear, centaur, changeling, deep gnome, duergar, eladrin, fairy, firbolg, githyanki, githzerai, goblin, goliath, harengon, hobgoblin, kenku, kobold, lizardfolk, minotaur, orc, saytr, sea elf, shadar-kai, shifter, tabaxi, tortle, triton, yuan-ti.
One of my goals is to be inclusive! If there is a gender preference, sexuality, or if you think I should add a pronoun portion, don't hesitate to reach out.
For transparency, these are the current ratios I'm using:
Gender - male (30%), female (30%), nonbinary (10%), trans(m) (10%), trans(f) (10%), agender (10%)
Sexuality - hetero (50%), bi (20%), gay (10%), pan (10%), asexual (10%)
Polyamorous - not poly (75%), poly (25%)
Age range varies by race. dragonborn: 1-90, dwarf: 1-450, elf: 1-800, gnome: 1-500, half-elf: 1-200, halfling: 1-160, half-orc: 1-100, human: 1-105, tiefling: 1-15, arakocra: 1-30, aasmir: 1-160, air genasi: 1-120, earth genasi: 1-120, fire genasi: 1-120, water genasi: 1-120, bugbear: 1-120, centaur: 1-105, changeling: 1-110, deep gnome: 1-250, duergar: 1-400, eladrin: 1-800, fairy: 1-500, firbolg: 1-500, githyanki: 1-150, githzerai: 1-105, goblin: 1-160, goliath: 1-90, harengon: 1-100, hobgoblin: 1-105, kenku: 1-60, kobold: 1-120, lizardfolk: 1-60, minotaur: 1-150, orc: 1-50, saytr: 1-560, sea elf: 1-700, shadar-kai: 1-800, shifter: 1-70, tabaxi: 1-105, tortle: 1-60, triton: 1-300, yuan-ti: 1-115.
Most recent changes (8/2/24):
-fixed issue of sampling wrong age range when using race selector
-fixed dice roller to roll when button is clicked instead of when the drop down is changed
-changed FN to FName so it is more obvious; same with MN and LN
-added table to dice roller to show the total and the outcome of each individual die intead of only the total
-fixed issue where wrong text was on the col selector for NPCs/PCs
-added a portion on dice roller tab for ability checks, saving throws, and attack rolls
-this is the 5th version, will try to add more stuff when I can. I've been prioritizing functions over how pretty the app looks, but I still have the overall look of the design in the back of my head to work on in the future.