Random Name Generator


Although the central place for design discussion is ##crawl-dev on freenode, some may find it helpful to discuss requests and suggestions here first.

Dungeon Dilettante

Posts: 4

Joined: Tuesday, 27th May 2014, 16:14

Post Tuesday, 27th May 2014, 16:22

Random Name Generator

Hello, first post ever. Been playing DCSS about a year, gone through hundred's of characters, no wins.

One thing that has bothered me is that every time I die, I have to come up with a completely new name for each character. If I don't then my scoreboard ends up just being my first name 100 times and that's no fun. I wan't each run to feel like it's own unique reality.

Something that might help with that would be a random name generator. Currently it just defaults to the last name you selected, but I think the default name should be randomly generated, based on character race. If you like being a minotaur berzerker (some play them out of necessity I can imagine :D), you will have a different, tough name, each game. All of this would of course be based on rules which we could determine. For example Merfolk names might be based on the roots of nautical gods' names, nautical words, real life sea animals, etc. Most of these races are based on mythology anyways, and those that aren't could easily have a huge list of affixes that would create interesting names.

For this message the author BobFromReboot has received thanks:
Klown

Abyss Ambulator

Posts: 1217

Joined: Sunday, 14th April 2013, 04:01

Post Tuesday, 27th May 2014, 17:09

Re: Random Name Generator

Should be really easy to do actually. Have a resource file with rules for name generation, then put a thing in ng-input.cc where if you enter the name "random" it then generates a name, and prompts for confirmation that it is a good name.

My C++ is INCREDIBLY rusty, but if theres greater interest I can try to whip up a very basic patch.
Three wins: Gargoyle Earth Elementalist of Ash, Ogre Fighter of Ru, Deep Dwarf Fighter of Makhleb (0.16 bugbuild :( )

For this message the author TeshiAlair has received thanks: 2
BobFromReboot, Klown
User avatar

Tomb Titivator

Posts: 895

Joined: Saturday, 15th June 2013, 23:54

Post Tuesday, 27th May 2014, 17:10

Re: Random Name Generator

This is one of the features I very much need/want. ToME has it, and it speeds up character generation big time. At least for those like us, who want unique names/characters each run.

I literally have a random name generator bookmarked in my browser, and go to it before starting a game. Then it's all '10,000 orc priests come into view' on D:3 and back to my browser for a new name.

Sar

User avatar

Ziggurat Zagger

Posts: 6418

Joined: Friday, 6th July 2012, 12:48

Post Tuesday, 27th May 2014, 17:11

Re: Random Name Generator

BobFromReboot wrote:One thing that has bothered me is that every time I die, I have to come up with a completely new name for each character.

online reasons

For this message the author Sar has received thanks:
tedric

Ziggurat Zagger

Posts: 11111

Joined: Friday, 8th February 2013, 12:00

Post Tuesday, 27th May 2014, 18:02

Re: Random Name Generator

Also it would be nice to support patterns like
default_character_name=${brief_species_name}${brief_background_name}
I always name characters like "MuCj" and "MiBe" for easier search in morgue directory.
Last edited by Sandman25 on Tuesday, 27th May 2014, 19:30, edited 1 time in total.

Tomb Titivator

Posts: 909

Joined: Thursday, 3rd January 2013, 20:32

Post Tuesday, 27th May 2014, 19:13

Re: Random Name Generator

I often play while listening to podcasts, and back when I played offline I would name each character whatever word was said at the moment I hit the creation screen. Gave me unique names every time with zero coding/decision-making, though if you're really into the role-play thing it's probably going to throw you off to have characters like "Sometimes the MiBe" or "Political the DEFE".
Wins (Does not include my GrEE^Veh 15-runer...stupid experimental branch)

For this message the author tedric has received thanks:
Lasty

Ziggurat Zagger

Posts: 8786

Joined: Sunday, 5th May 2013, 08:25

Post Tuesday, 27th May 2014, 20:26

Re: Random Name Generator

FUK DA SAC

For this message the author duvessa has received thanks: 4
archaeo, Arrhythmia, Deimos, MDvedh
User avatar

Snake Sneak

Posts: 104

Joined: Thursday, 16th May 2013, 12:57

Post Tuesday, 27th May 2014, 22:43

Re: Random Name Generator

BobFromReboot: I don't have anything to add to the discussion, I just wanted to say I approve of your nick.

For this message the author Skrybe has received thanks:
BobFromReboot
User avatar

Pandemonium Purger

Posts: 1298

Joined: Wednesday, 11th April 2012, 02:42

Location: Sydney, Australia

Post Tuesday, 27th May 2014, 22:51

Re: Random Name Generator

I just use <My Name> #Number Of Attempt#

Boring, but functional.

Plus, seeing the number go up is cool.

Dungeon Dilettante

Posts: 4

Joined: Tuesday, 27th May 2014, 16:14

Post Tuesday, 27th May 2014, 22:54

Re: Random Name Generator

TeshiAlair wrote:Should be really easy to do actually. Have a resource file with rules for name generation, then put a thing in ng-input.cc where if you enter the name "random" it then generates a name, and prompts for confirmation that it is a good name.

My C++ is INCREDIBLY rusty, but if theres greater interest I can try to whip up a very basic patch.


I would be willing to do a bit of research to make some pools of affixes and stems for names for each races. Might take a week or so to get through all 26, but I think it would be worth it.

For this message the author BobFromReboot has received thanks:
TeshiAlair
User avatar

Snake Sneak

Posts: 104

Joined: Thursday, 16th May 2013, 12:57

Post Wednesday, 28th May 2014, 02:40

Re: Random Name Generator

dat/database/monname.txt in local tiles contains a list of names for Beoghite followers. That might be useful for a point of reference.

Also, Crawl does have a random name generator, as duvessa kinda implied, that's used for stuff like artifact names. I'm assuming you could lift some code from that, rather than writing everything from scratch.

For this message the author Skrybe has received thanks: 2
Klown, TeshiAlair

Spider Stomper

Posts: 221

Joined: Thursday, 29th August 2013, 09:40

Post Thursday, 29th May 2014, 04:07

Re: Random Name Generator

I keep track of my top 100 runs in an Excel spreadsheet; I generally keep using the same name for characters until it ranks in the top 50, which cuts down somewhat on having to find a new name. I've also used roman numerals after names sometimes (currently on Zelda XII the HECj, for example).

But yeah, a random name generator sounds like it'd be cool. Even if you did occasionally get something like "Plog the FeTm".
You hear the distant roaring of an enraged eggplant.

Dungeon Dilettante

Posts: 4

Joined: Tuesday, 27th May 2014, 16:14

Post Thursday, 29th May 2014, 05:51

Re: Random Name Generator

spudwalt wrote:But yeah, a random name generator sounds like it'd be cool. Even if you did occasionally get something like "Plog the FeTm".


The way I'm sort of planning this right now, each race will have it's own pool of parts of names, that fit together. Not sure if I will design any to have "the XXX" because there are already titles that change as you progress in the game. Last names are something I have been thinking about, certain races, like trolls, and perhaps even demigods might work better without them.

Opinions are needed on this as I am currently examining the culture behind all the races in DCSS to come up with some roots for each one, and am building a list to build names from. I will be creating some kind of survey later this week after I've done my research on all 26 species (even those that aren't traditional, like octopodes.)

Keep in mind, I could be doing this all for nothing, as nobody has committed to actually programming this database I'm creating into the game. I am just being very optimistic by getting started on this. I mainly would like to do this as a base list of names, to provide maybe 10-25k different name possibilities to each race to start, last names would of course raise this number a lot. Later on the community can add more to the databases based on the rules of the name generation of each race, which are yet to be determined as there is no programmer.

I'll have something ready by next Friday hopefully to post, showing the basic possibilities of each races names.

Blades Runner

Posts: 546

Joined: Saturday, 7th May 2011, 02:43

Post Thursday, 29th May 2014, 06:57

Re: Random Name Generator

BobFromReboot wrote:...

Before you get any further, I want to check that you understand the basic idea of Markov Chains, as they are the method usually used for this type of purpose, and this has consequences for exactly what data needs to be provided.

If not:

* the diagram here shows the basic idea: you write rules specifying, for example, that "A" follows "E" 70% of the time, and "E" follows "E" 30% of the time. The program applies these rules, adding fragments one by one, until the name is finished (eg. criteria of minimum length, or minimum number of phonemes...)
* You can leave the exact weights out (just assigning equal weight to all available options) but obviously need to specify at minimum which option connects to what.
* The 'what connects to what' task can be simplified by grouping fragments, and simply specifying rules like 'all items in group A connect to all items in group B.'
* It's a directed chain (so a connection from A to B does not imply a connection from B to A.. B may come after A, but that doesn't mean A may come after B.)

Markov chaining for name generation is pretty easy to code, it's building up a database that works nicely that takes time.

Dunno what file format you are using.. It doesn't matter particularly as long as it's simple and unambiguous, it can be converted to whatever is ultimately needed. I'd personally suggest YAML structured similarly to this:
  Code:
# some group definitions
# _ is just an arbitrary prefix to ensure that groups can be easily distinguished.
_somegroupname: a b c
_othergroupname: x y z
# define that items in _somegroupname have a 100% chance of selecting items in _othergroupname next.
_somegroupname _othergroupname : 1

For this message the author savageorange has received thanks: 3
BobFromReboot, Brannock, Patashu

Dungeon Dilettante

Posts: 4

Joined: Tuesday, 27th May 2014, 16:14

Post Thursday, 29th May 2014, 15:14

Re: Random Name Generator

@savageorange

Thank you so much. I'm reading all about this now, this should save me time on thinking of how the rules should be made, and hopefully give much better end results.

Return to Game Design Discussion

Who is online

Users browsing this forum: No registered users and 116 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.