Repost: Toponymy

Some of the best mappers I know will quail in terror when the time comes to add names to their maps. Sometimes it’s just the problem of clearly labeling the various features of their newly created landscape without making it look bad. That’s a whole article of its own, and one I may be uniquely unsuited to writing. That’s a pretty common problem, but the even more common problem is the one of creating believable, consistent names for all of those features. In spite of the difficulty, and it is considerable, of clear and attractive labeling on a map, I’ve seen my share of beautifully rendered lorem ipsum names.

Actually, in a pinch, lorem ipsums aren’t that bad. At least they generally have a consistent sound. It’s difficult to create a large number of consistent sounding names off the top of your head.

This post isn’t intended as a complete or authoritative exploration of the process of creating names for map features. It is simply a quick survey of methods and ideas I have used myself or heard discussed. The intention of this post is to put up some possibly good ideas and hopefully spur some discussion.

The process of creating names often varies depending upon whether the world being created is intended to be alien, fantasy, or something from the very far future or distant past on the one hand or something like a near(-ish) future colony planet on the other hand.

In the former case you can have a very free hand. You can chose pleasant-sounding nonsense for places you intend to give a pleasant appearance(this could perfectly well be a false impression), like “Assaremin” and unpleasant-sounding names for places you wish to give a bad impression(this, too, can be a red herring), like “Kuntogoloth“. You can even give many names that would be equally be suited for a more familiar or realistic milieu, like “Pleasant Valley.” It could be assumed that these are translations of native names and not the actual names. This last variation gives the map-maker or author a way to differentiate between locales familiar to the POV characters and those more foreign locations. If written from the point of view of the elves, a particular coastal inlet might be referred to as “Western Bay”, while the same place might be called “Taga Winsiem” if written from the viewpoint of halflings far from home. On the other hand, the piece of land that the halflings refer to familiarly as “The Boroughs” might be written as “Mushar” if visiting elves are the viewpoint characters. In either case, “Taga Winsiem” would be the proper name in elvish for the bay and “Mushar” the proper name in halfling… -ish for the land. The translations give the readers more of a sense of familiarity shared with the major characters and the stranger sounds hint to the characters lesser familiarity with other places. Today, for the benefit of brevity, I’m going to discuss the problem of creating interestingly unique and self-consistent names for foreign languages. I’ll save the question of what those names might or might not mean for a later post.

With strange alien worlds, we have the problem as mentioned previously, of making the names sound both sufficiently consistent within a culture and sufficiently distinct between different cultures. One way of dealing with the first problem is with the use of name- or word-generation software such as WordBuilder, or sites like Fantasy Name Generator, Seventh Sanctum or the Star Wars Random Name Generator. These vary a lot in usefulness. Alfar’s WordBuilder has the greatest flexibility in terms of being able to build distinct and consistent vocabularies, but it does take a bit more work than the others to generate anything at all. Fantasy Name Generator and the Seventh Sanctum generators have a good variety of different patterns that might produce more or less distinctive and consistent vocabularies, and they are generally fairly easy to run, but you have limited control over the results. Actually, the Fantasy Name Generator has a more advanced text interface. It’s more complicated than just running the presets and less configurable than WordBuilder, but it does make a good middle-of-the-road solution to wordgen.

If you can get Hypercard stacks to run on your computer(good luck) then Rob Prior’s MegaLinguist was uniquely marvelous. Keyword: unique. It wasn’t just a word generator, but it could do a fairly simple statistical analysis on a user-entered corpus of words and generate similar words based on that analysis. The ability to analyze an existing corpus and generate random words based on that analysis seems like it would be a pretty high priority among conlangers, but this kind of utility is surprisingly hard to find.

One utility which might serve the purpose is Chris Pound’s language confluxer, lc. The direct results of lc are gibberish, but if you pipe the results into prop(for proper names) or fix(for other words), the results can be gratifying. For example:

./lc -100 sumerian.txt | ./fix > out.txt

Will generate a list of 100 “words” based on the contents of sumerian.txt, pipe them into the fix utility and then place the results in the file named out.txt. Lemon-squeezy! You could also use prop to generate proper names as the following, more generalized example indicates:

./lc -[#] [data file] | ./prop > [output file]

If you’re just interested in the statistics of the data file then you can run lc with the -s flag:

./lc -s [data file] > [statistics file]

The resulting statistics file will be a series of lines beginning with a pair of characters, a colon and a series of characters. For example:


would mean that in the data file the pair of characters, “ab,” occured nine times and was followed four times by an s, twice by an l, twice by an o, and once by an r. This information could be useful in creating a script for WordBuilder or some other word generator.

The data file is simply a whitespace-separated plaintext list of words. Namelists from original Civilization could prove useful… At present lc is not only the best but the only tool I’ve been able to find for the sort of word-generation-by-analysis-of-existing-corpus that MegaLinguist did so well.

Once we have generated a good long collection of words and picked out the ones we like(trust me on this: no matter how good your generator or script is… you won’t want to use all the words generated), now comes the time to place them on your map. That is, to determine the appropriate locations for the names. With both my Shtakamashkan and Kazh maps(the latter was for a competition on Cartographer’s Guild, sadly even I didn’t vote for my map), I simply used one generator for all of the names and placed them willy-nilly wherever I thought they fit. Another way, that gives more of a sense of variety in the cultures of a world or region, is to use different parameters for different regions or “countries.”

Another tack I’d like to try at some point is to imagine a set of seed points on the map. For each of these seed points, you would generate a pretty large word list. Then you model migration of people from these seed points, periodically modifying the sounds of the original seed languages using a program like Mark Rosenfelder’s SCA2. With enough time and effort you could end up with dozens or even hundreds(!?!) of distinct “languages” from a handful of proto-languages. All with clear genetic relationships to each other. Seems like it could be interesting.

Now, admittedly, I need to use the word, “languages,” with a bit of care here. Hence, the quote marks… What you have is, at best, a collection of words(or letter clusters, at worst) with potentially interesting similarities and differences across regions. This doesn’t preclude building actual constructed languages on top of the locally-modified word lists. Some of the more interesting places might be worth giving that treatment later, but it is a time consuming process in any case. Getting a completed map up, at least for reference, would be facilitated by using simple naming languages. Later on when it turns out your city named Ga Badrash is grammatically incorrect for the language you develop, you can change the name to Gali Badraska. It’s not like you can’t find any old maps where Beijing is referred to as Peking for instance.

Good luck and good worldbuilding,

The Astrographer

This entry was posted in Mapping, World Building and tagged , , , , , . Bookmark the permalink.

1 Response to Repost: Toponymy

  1. Paul Drye says:

    I’d also like to throw Sean Puckett’s name generation page in the ring too. I’ve had to generate a *lot* of names for my GURPS and other writing over the years, and it’s been invaluable.

    The basic idea is similar to language confluxer but without the need to run it on a command line. Give it a sample text and it spits back similar words. So if you give it Sumerian names, you get “Sumerian” names; Cthulhu Mythos gets you elder gods. Where I particularly like it is to mash together two languages in order to get interesting combinations that are not obviously one thing. You have to use your judgement on languages to pick as not all combos are interesting, but if you hit on a good one it can be very good — I’ve been mining a combination of Armenian last names and Amharic king names forever.

    Mining is the key word, though. It’ll give you 50 candidates words, of which maybe three or four are good. It’s necessary to put on the “writer” hat and find them among the dross. But you can keep mashing the button and slowly build up a corpus of words to use.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s