Name generator preview

Micah
Micah
edited June 2013 in General Archive
We’ve got a first cut of the name generator. Right now it’s stand-alone, but we will be integrating it in so you can easily generate on-the-fly characters at a moment’s notice.

See here: "http://opnamegen.herokuapp.com":http://opnamegen.herokuapp.com

A few notes
* Use the dropdown list at the top to select different generators.
* It’s a grammar-based generator, meaning it uses grammar rules to create the names.
* By varying the grammar rules, we can create different generators for different styles of names. The possibilities are pretty much limitless.
* You can play with the grammar rules by adding new rules and changing the weights (probabilities of certain combinations).
* We’ve got a handful of sample grammars in there now, and our hope is to get some good ones from the community.
* I imagine that we will quickly come up with some good best practices for grammar generation and very soon will have some great names coming out.
* It’s all in javascript, meaning it’s pretty damn fast. It has to get the grammar’s from the server, but otherwise it’s all client-side.


The strength of these generators is that if they generate a handful of names, usually 1 or 2 are good enough. The plan is to take that into account when integrating it into the site. In other words, when generating an on-the-fly NPC, there will be a way to quickly generate a handful of names using a specific grammar (like, “quick, I need a Spanish-sounding female name”) and then pick one to be your new NPC. A few clicks and you’ll have a new NPC in your campaign, saved and ready to be recalled in 6 months when a player asks, “So who was that lady again?”

h3. More detail

Here is a more detailed description from Melinda, the lead developer on this:

This is a prototype of what will eventually power the Obsidian Portal Name Generator. Names are generated via a Template that defines the possible pieces of the name. The specific choices for generating any given name are randomly determined. By default, the “Sample 1” template is loaded into the editor. Just click "Generate!" to see the names it generates.

A template is a list of named variables, each with multiple options for how they can be interpreted. Name generation always starts by resolving the "Start" variable. In the case of the Sample 1 Template, there is a 20% chance that it will resolve "Start" to "Vow ConString" and an 80% chance that it will choose "Con VowString". These percentages are determined by the weighting number after each choice.

Let's say it chooses "Vow ConString". From there, the generator looks at each word (separated by spaces). If the word starts with a capital letter, then it needs to keep going. In this case, "Vow" is capitalized, and represents something from the "Vow" variable defined a little bit below, with 20% chance of "a", 40% chance of "e", etc. Let's say it chooses "e", the most likely outcome. Since "e" is lowercase, it knows to just put an "e" in the final word, and that no more evaluation is needed for that part.

Now it moves on to "ConString". ConString is defined as having a 60% chance of being "Con VowString", 20% chance of "Con VowEnd", and 20% chance of "Con Vow". Let's say it chooses "Con VowEnd" this time. Then all it has to do is make a choice from the "Con" variable (let's say it was "n") and make a choice from the "VowEnd" variable (let's say it was "ah"). There's no more capital variables to resolve, so we're done. The resulting name is "Enah".

Note that the only variable that must be named a certain thing is "Start" so that the generator knows where to start. Everything else is named however you like, as long as it starts with a capital letter for a variable, or a lowercase letter for resulting characters. In the case of Sample 1, note that we have "Vow" and "VowEnd". The only difference there is that "VowEnd" consists of combinations that we thought would work well at the end of the word, as opposed to the middle, and we defined our variable "ConString" so that "VowEnd" can only appear at the end of the word.

To get started, try out the different sample templates, and try making modifications to them to see how it affects the generated names!

One more feature: the “Recover Last Valid Template” link at the bottom will try to load the editor with the last template you successfully generated names with. It might help you out if your browser gets closed in the middle of editing a template.

Comments

  • Viehmagnat
    Viehmagnat
    Posts: 24
    Played around with it a bit today, using some of the naming rules from the campaign I am running and it worked well. Very fast indeed. It will be very easy for me to select the drop down box for the template and hit "generate".

    Will there be an option to save custom templates within the tool? As it is now, I can save the templates in text files and copy paste easy enough, but to have to do that on the fly in the middle of the adventure would defeat the big advantage of the generator: speed.

    Also, in adding more options for the various themes that are out there ranging from standard fantasy to steampunk to technomagic to intergalactic and so on, I could forsee dozens (if not hundreds) of options being available. Will there be a way to hide those grammar rulesets that do not apply to a specific campaign? In my world there are the standard elven, dwarven, halfling, gnome names as well as several races of humans, etc, each with their own specific naming conventions. To make this useable as a quick tool, I would need to be able to quickly select the appropriate ruleset. If I have to sort through dozens or more options to find the right ruleset, it becomes less useful to this purpose. On the flip side, if I know the players will be adventuring in one of the major cities where they are likely to meet "unplanned" NPCs, I could have the appropriate rulesets tagged (or blocked, depending on which is easier to set up) so I only have to pick from a handful of options for a quick generate.
  • Maesenko
    Maesenko
    Posts: 325
    How did I totally forget about this? Thanks to Vieh for posting here.

    Going to have to play around with this later today. I'll update this post next time I'm on OP.

    ~Mae

    CotM Selection Committee

Sign In or Register to comment.

October2022
Wildside

Read the feature post on the blog
Return to Obsidian Portal

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Discussions