So I was prepping my D&D campaign last night and realized all my kingdom names sounded like bad knockoffs of Lord of the Rings. “Eh, I’ll just whip up a quick name generator,” I thought. Famous last words.
The Messy First Attempt
Dusted off Python and started slapping lists together. Grabbed consonants, vowels, slapped them randomly:
import random
cons = ['b','d','f','g']
vows = ['a','e','o','u']
print(*(cons) + *(vows) + *(cons))
Ran it. Got “Fog”. Then “Gub”. Absolute trash. Sounded like cave trolls grunting. My players would roast me alive.
Switching Gears
Scrapped that approach. Dug through my notes – turns out I bookmarked fantasy name structures months ago:
Place + feature (“Silvercrest”)
Descriptor + terrain (“Misty Peaks”)
Ancient + object (“Obsidian Throne”)
Created three new lists:
Place words: [Silver, Shadow, Crystal]
Descriptors: [Forgotten, Eternal, Whispering]
Features: [Reach, Vale, Spire]
Making It Actually Work
Wrote this disaster:
first_list = ["Crimson", "Ivory", "Ashen"]
second_list = ["Sanctum", "Crown", "Watch"]
third_list = ["Dominion", "Expanse", "Realm"]
for i in range(5):
name = *(first_list) + " " + *(second_list)
if *(0,1): # Coin flip
name += " of the " + *(third_list)
print(name)
Test run gave me “Ivory Sanctum of the Dominion”. Okay, not terrible! But then got “Ashen Watch” without the third part – clean and simple. Even better.
Realization Hits
Played with it for an hour generating names. The magic sauce? Randomly omitting parts. Sometimes “Crimson Watch” beats “Crimson Watch of the Expanse”. Added weights so shorter names appear more often.
Final step? Saved my lists in a text file so I can swap words later. Now when my party sails to Whispering Spire next session? Totally using this. Still might get mocked, but at least it won’t be “Gub Kingdom” again.
Disclaimer: All content on this site is submitted by users. If you believe any content infringes upon your rights, please contact us for removal.
I was curious about these so – called “tabelline del 25”, and I decided to give them a shot. First off, I went to the local store where they were being sold. You know how it is, walking into a...
The Messy Start: Why I Needed These Ajax/Frankfurt Numbers Look, I ain’t some fancy professional analyst with a dedicated server farm. I’m just a guy who likes looking at the receipts after a game is done. And boy, did I...
Well, I’ve always been into football, and when it came to the standings of the Albania national football team against the Ukraine national football team, I decided to dig into it. First, I fired up my computer and went to...
Well, I decided to find out the must – try foods in Georgia – Armenia. First, I did a bit of research on the internet. I typed in some keywords like “best foods in Georgia – Armenia” and started skimming...