Fantasy Character Name Generator: Elf, Dwarf, Orc

Pick a race and a gender and get 12 fantasy character names, each built from syllables with an invented meaning, plus a family or clan name. Keep your favorites and download them as a text list or as JSON your game can load.

Step 1 of 2: Race
Which people or culture is the character from?

How to use it

  1. Choose a race: Human, Elf, Dwarf, Orc, Halfling, Gnome or Goblin, and press Next.
  2. Choose Feminine, Masculine or Neutral, and press Generate character names.
  3. Star the names you like, then press Generate more for another batch.
  4. Press Download list for a text file, or Download as JSON for your game's data.
  5. Press Copy Ziva prompt to have Ziva add the characters as NPCs.

How each race sounds

Each race has its own syllables, so the names sound like they come from one language. Elven names lean on soft sounds and long vowels (Aelara, Sylthir). Dwarven names use hard stops and r sounds (Kazrak, Bordis). Orc names are short and guttural (Thrakgul, Zugka). Halfling names sound homely (Rosie Underbough), gnome names sound like gadgets (Fizzix Sprocketwhistle), and goblin names sound like insults (Snikbit Rustnose).

Every syllable has an invented meaning, so the generator can tell you that Aelwen means star maiden in its made-up elven tongue. The meanings are written for this tool, not taken from a real language or from another author's world, so you can use them as the start of your own lore.

Loading the names in Godot

Download as JSON gives you an array of objects with name, meaning, race and gender fields. Put the file in your project, for example at res://data/npc_names.json, and load it with JSON.parse_string(FileAccess.get_file_as_string("res://data/npc_names.json")). The result is an Array of Dictionary values you can pick from when you spawn an NPC.

Godot only exports resource files by default. To ship a .json file in your exported game, add *.json to the export filter for non-resource files in the export preset's Resources tab.

Frequently asked questions

Are these names from a real language?
No. The syllables and their meanings are invented for this generator, so you can use the names and meanings in your own world.
Can I use the names in a commercial game?
Yes. The names are generated in your browser and are yours to use. A short name can still match a character in another work by chance, so do a quick search for your main characters.
What does the Neutral option do?
It uses endings that are not tied to the feminine or masculine sets for that race, which suits nonbinary characters and creatures where gender does not matter.
How do I get the names into my game?
Press Download as JSON for a file with name, meaning, race and gender for every name on the list, or copy the Ziva prompt and paste it into Ziva inside your editor to have the NPCs created for you.

See all tools