Mythruna
April 16, 2024, 03:48:16 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Welcome to the new forums. See "Announcements" for a note for new users.
 
   Home   Help Search Login Register  
Pages: [1] 2 3
  Print  
Author Topic: Random town names...  (Read 61430 times)
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« on: September 01, 2012, 03:33:50 PM »

On first blush, one might think this is a pretty simple problem.  Random name generators are numerous, after all.

The issue comes in how Mythruna worlds are generated.  Ideally, if you and I pick the same seed then we should get the same starting world... right down to the towns, etc..  If we both play seed 42 and talk about some town "Shadowcastle" then we should be talking about the same town.

At least that has been my goal all along.

This works well for the terrain and related data because these are based on fractals that have a seed value.  Change the seed, you get a different fractal.  Use the same seed you get the same "random" fractal every time.  Even the tree and flora placement is predictable because they use a combined local seed that is predictable from one world to the next.

Names are harder.

The same random approach would easily lead to neighboring towns having the same or extremely similar names.  If you are picking random names out of a hat, you run the risk of picking the same name twice.  It's inevitable... and common enough that it has actually happened in my testing.  (My current test world has two Icestons right next to each other.)

And I can't just check for duplicates because that would mean that town names are dependent on the order you visit the world.  So in the seed 42 example, if I head west and encounter Iceston and you head east and encounter a different Iceston... then deduping would mean we no longer have the same town names in our world (my version Iceston will be called something different in your world.)

This is why I have stubbed in a fairly stupid random name generator so far.  It had a list of 40-50 town names and just randomly picked one.

However, to do anything clever I had to write my own... so I did.

Here are 100 random town names from the generator:
Bywyvern
Fairmere
Shadebrook
Whiterose
Lynbury
Erishaw
Mossfield
Llanburgh
Bluecrystal
Bradcaster
Havenwyn
Lochport
Maplegold
Deepwheat
Polwater
Magesummer
Aberden
Swynsummer
Rocklake
Roseworth
Clearbrook
Winterbrook
Barrowshade
Gilllake
Fayloch
Westermarble
Aberness
Strongdeer
Wyvernwind
Newstoke
Snowmeadow
Lyngfog
Tillysage
Fallcrystal
Bradcaster
Merrowfoss
Pytmoor
Faywheat
Clearhollow
Wheatmarsh
Southcester
Castlekeep
Valfog
Sudforth
Aberton
Kinmere
Polstoke
Tillyspring
Morbury
Norflower
Whitedragon
Ghyllspring
Elfglyn
Coldedge
Stanworth
Moormarsh
Tillykael
Dellbury
Newchester
Glyncaster
Belspell
Wyvernwood
Shoreley
Marshsage
Fieldwater
Glynghyll
Castlewych
Waterton
Fallbeech
Hedgeloch
Marshdale
Fairbeech
Byriver
Westerburn
Meadowwick
Llanwater
Northbay
Fieldloch
Lyngfay
Fairice
Bushdale
Starrythorp
Ashmeadow
Lhanmere
Freyport
Valborough
Wellhythe
Swynweald
Ostton
Fieldcaster
Pytwich
Aldthwaite
Shadowway
Mapleport
Violetberg
Shadeden
Ostgill
Janwych
Elfmist
Marshwardine

This pieces names together from stems which should give me a little more flexibility.  (Interestingly, many of the stems are derived from actual town word stems like on here: http://en.wikipedia.org/wiki/List_of_generic_forms_in_place_names_in_the_United_Kingdom_and_Ireland and here: http://www.englishplacenames.co.uk/   ...and since these stems have actual meanings it might one day be possible to have names generate that actually match the town... that would actually solve my problem but is too complicated for today)

Anyway, given how this algorithm works, I believe I can use location as an input in such a way to both prevent duplicates and avoid nearby towns always having similar stems.  (ie: Goldwich, Goldchester, Goldwyn... gee, we must be in the 'gold' area... lame.)

We'll see how it goes but I liked the names I was getting so I thought I would post at least that much progress.

This weekend is all about fixing my town placement and town naming to be predictable and repeatable for a world seed.  Both of my previous approaches changed depending on the order you visited the world.
Logged
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #1 on: September 01, 2012, 05:10:09 PM »

So, one nice thing about a fractal is that given some x,y coordinate you can get a value back.  If the seed is the same then the same x,y in will produce the same output.  This is a nice property to have.

Along those same lines, I seem to have successfully created a name generator that works in the same way.  Given a particular seed, x,y inputs will produce output... the same seed + x + y will produce the same name... but otherwise the names are basically random.

Currently, I haven't implement any intelligence with how it combines the stems so you will get things like "Pineelf"... where one of the 'e's can probably be removed and it's entirely possible to get something like "Mossmoss" (in fact it happens first thing for seed 101 below).  I will fix these later.

For fun, here are some examples...
Code:
Seed 0:
[0][0] = Aberacre
[0][1] = Fayford
[0][2] = Meadowmere
[0][3] = Trewater
[0][4] = Corcoast
[0][5] = Laninge
[0][6] = Shadowspring
[0][7] = Bellbay
[0][8] = Greengate
[0][9] = Ormont
[1][0] = Fayacre
[1][1] = Meadowford
[1][2] = Tremere
[1][3] = Corwater
[1][4] = Lancoast
[1][5] = Shadowinge
[1][6] = Bellspring
[1][7] = Greenbay
[1][8] = Orgate
[1][9] = Witchmont
[2][0] = Meadowacre
[2][1] = Treford
[2][2] = Cormere
[2][3] = Lanwater
[2][4] = Shadowcoast
....

Seed 10:
  seed:10
[0][0] = Beckberg
[0][1] = Glynglyn
[0][2] = Northnesse
[0][3] = Wildewitch
[0][4] = Edgedragon
[0][5] = Lynley
[0][6] = Stonetoft
[0][7] = Caerburgh
[0][8] = Janham
[0][9] = Redriver
[1][0] = Glynberg
[1][1] = Northglyn
[1][2] = Wildenesse
[1][3] = Edgewitch
[1][4] = Lyndragon
[1][5] = Stoneley
[1][6] = Caertoft
[1][7] = Janburgh
[1][8] = Redham
[1][9] = Baelriver
[2][0] = Northberg
[2][1] = Wildeglyn
[2][2] = Edgenesse
[2][3] = Lynwitch
[2][4] = Stonedragon
....

Seed 100:
[0][0] = Mormoor
[0][1] = Westwick
[0][2] = Dordayl
[0][3] = Llankyle
[0][4] = Spellthorp
[0][5] = Brookborough
[0][6] = Hollowgold
[0][7] = Pontoak
[0][8] = Aldwold
[0][9] = Floweredge
[1][0] = Westmoor
[1][1] = Dorwick
[1][2] = Llandayl
[1][3] = Spellkyle
[1][4] = Brookthorp
[1][5] = Hollowborough
[1][6] = Pontgold
[1][7] = Aldoak
[1][8] = Flowerwold
[1][9] = Merrowedge
[2][0] = Dormoor
[2][1] = Llanwick
[2][2] = Spelldayl
[2][3] = Brookkyle
[2][4] = Hollowthorp
....

Seed 101:
  seed:101
[0][0] = Mossmoss
[0][1] = Westerwilde
[0][2] = Dracdeer
[0][3] = Llynlake
[0][4] = Springthorpe
[0][5] = Bushbourne
[0][6] = Icegrass
[0][7] = Prypine
[0][8] = Applewolf
[0][9] = Fogelf
[1][0] = Westermoss
[1][1] = Dracwilde
[1][2] = Llyndeer
[1][3] = Springlake
[1][4] = Bushthorpe
[1][5] = Icebourne
[1][6] = Prygrass
[1][7] = Applepine
[1][8] = Fogwolf
[1][9] = Millelf
[2][0] = Dracmoss
[2][1] = Llynwilde
[2][2] = Springdeer
[2][3] = Bushlake
[2][4] = Icethorpe
...
Logged
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #2 on: September 01, 2012, 05:25:31 PM »

I noticed some repetition of stems in the above and I was able to remove it.

So here are 100 names for each of the seeds shown above.  More random than before... at least as far as I've seen this time. Smiley
Code:
Seed:0
[0][0] = Aberacre
[0][1] = Springbury
[0][2] = Northdell
[0][3] = Lanfox
[0][4] = Fogholt
[0][5] = Caerloch
[0][6] = Witchmount
[0][7] = Silverspell
[0][8] = Morviolet
[0][9] = Kinwolf
[1][0] = Bridgeden
[1][1] = Westergate
[1][2] = Sagehope
[1][3] = Meadowlyn
[1][4] = Iceness
[1][5] = Edgespring
[1][6] = Bellwaeld
[1][7] = Violetwood
[1][8] = Redbell
[1][9] = Mallowcoast
[2][0] = Deerhurst
[2][1] = Barrowmage
[2][2] = Swinnesse
[2][3] = Polstead
[2][4] = Llynwald
[2][5] = Glynworth
[2][6] = Corberg
[2][7] = Applecourt
[2][8] = Stonefield
[2][9] = Orhall
[3][0] = Foxoak
[3][1] = Carster
[3][2] = Wolfwall
[3][3] = Snowworthy
[3][4] = Mossborough
[3][5] = Kingcrest
[3][6] = Fayflower
[3][7] = Bushham
[3][8] = Wildekyle
[3][9] = Shadowmill
[4][0] = Inverwardine
[4][1] = Elfwych
[4][2] = Blackbourne
[4][3] = Watercrystal
[4][4] = Riverfog
[4][5] = Maplehaven
[4][6] = Hedgelake
[4][7] = Dracminster
[4][8] = Beckshade
[4][9] = Treton
[5][0] = Lochbridge
[5][1] = Golddael
[5][2] = Courtford
[5][3] = Ashhedge
[5][4] = Strongland
[5][5] = Ostmist
[5][6] = Linshaw
[5][7] = Gilltown
[5][8] = Cliffwind
[5][9] = Aberbarrow
[6][0] = Newfort
[6][1] = Kirkhill
[6][2] = Fieldlea
[6][3] = Buttermont
[6][4] = Windshore
[6][5] = Shepvale
[6][6] = Mistwinter
[6][7] = Kaelbay
[6][8] = Faircastle
[6][9] = Bridgefair
[7][0] = Rockley
[7][1] = Marblemoor
[7][2] = Highsilver
[7][3] = Dragonview
[7][4] = Beechwitch
[7][5] = Valbeach
[7][6] = Pytcester
[7][7] = Lyngfalcon
[7][8] = Greyglyn
[7][9] = Deeringham
[8][0] = Sudsnow
[8][1] = Penville
[8][2] = Lingwold
[8][3] = Glassbeck
[8][4] = Coastchester
[8][5] = Aelfall
[8][6] = Stangold
[8][7] = Oakiron
[8][8] = Landmead
[8][9] = Foxriver
[9][0] = Winterwolf
[9][1] = Shorebeech
[9][2] = Moorcliff
[9][3] = Kilfay
[9][4] = Falcongrass
[9][5] = Brightkael
[9][6] = Wheatmeadow
[9][7] = Searock
[9][8] = Merrithorpe
[9][9] = Inverwell
Seed:10
[0][0] = Beckberg
[0][1] = Trecourt
[0][2] = Pryfield
[0][3] = Lynhall
[0][4] = Greenkirk
[0][5] = Deepmerrow
[0][6] = Baelsage
[0][7] = Summerthwayt
[0][8] = Pinewich
[0][9] = Llanapple
[1][0] = Cliffflower
[1][1] = Aberham
[1][2] = Springkyle
[1][3] = Northmill
[1][4] = Lansea
[1][5] = Fogtoft
[1][6] = Caerwick
[1][7] = Witchash
[1][8] = Silverbutter
[1][9] = Mordragon
[2][0] = Fairlake
[2][1] = Bridgeminster
[2][2] = Westershade
[2][3] = Sageton
[2][4] = Meadowwilde
[2][5] = Icebank
[2][6] = Edgeby
[2][7] = Belledge
[2][8] = Violetgill
[2][9] = Redhythe
[3][0] = Greyshaw
[3][1] = Deertown
[3][2] = Barrowwind
[3][3] = Swinbarrow
[3][4] = Polcaster
[3][5] = Llynelf
[3][6] = Glynglass
[3][7] = Corice
[3][8] = Applemaple
[3][9] = Stonepine
[4][0] = Landwinter
[4][1] = Foxbay
[4][2] = Carcastle
[4][3] = Wolffair
[4][4] = Snowglen
[4][5] = Mossinge
[4][6] = Kingmarble
[4][7] = Faypond
[4][8] = Bushston
[4][9] = Wildewater
[5][0] = Merricester
[5][1] = Inverfalcon
[5][2] = Elfglyn
[5][3] = Blackingham
[5][4] = Watermarsh
[5][5] = Riverport
[5][6] = Maplesummer
[5][7] = Hedgeway
[5][8] = Dracwyn
[5][9] = Beckbrook
[6][0] = Pondgold
[6][1] = Lochiron
[6][2] = Goldmead
[6][3] = Courtriver
[6][4] = Ashthorp
[6][5] = Strongweald
[6][6] = Ostwynne
[6][7] = Linburgh
[6][8] = Gilldayl
[6][9] = Cliffforth
[7][0] = Southmeadow
[7][1] = Newrock
[7][2] = Kirkthorpe
[7][3] = Fieldwell
[7][4] = Butterwyvern
[7][5] = Windburn
[7][6] = Shepdeer
[7][7] = Mistfoss
[7][8] = Kaelhollow
[7][9] = Fairlight
[8][0] = Wellthwaite
[8][1] = Rockwheat
[8][2] = Marbleacre
[8][3] = Highbury
[8][4] = Dragondell
[8][5] = Beechfox
[8][6] = Valholt
[8][7] = Pytloch
[8][8] = Lyngmount
[8][9] = Greyspell
[9][0] = Astapple
[9][1] = Sudbush
[9][2] = Penden
[9][3] = Linggate
[9][4] = Glasshope
[9][5] = Coastlyn
[9][6] = Aelness
[9][7] = Stanspring
[9][8] = Oakwaeld
[9][9] = Landwood
Seed:100
[0][0] = Mormoor
[0][1] = Kinsilver
[0][2] = Fallview
[0][3] = Brookwitch
[0][4] = Whitebeach
[0][5] = Shadecester
[0][6] = Merrowfalcon
[0][7] = Ironglyn
[0][8] = Eriingham
[0][9] = Bluemarsh
[1][0] = Redville
[1][1] = Mallowwold
[1][2] = Havenbeck
[1][3] = Dorchester
[1][4] = Beachfall
[1][5] = Tillygold
[1][6] = Pontiron
[1][7] = Lormead
[1][8] = Grassriver
[1][9] = Crystalthorp
[2][0] = Stonebeech
[2][1] = Orcliff
[2][2] = Lightfay
[2][3] = Ghyllgrass
[2][4] = Clearkael
[2][5] = Wyvernmeadow
[2][6] = Spellrock
[2][7] = Northorpe
[2][8] = Lakewell
[2][9] = Flowerwyvern
[3][0] = Wildefeld
[3][1] = Shadowgriffin
[3][2] = Millkeep
[3][3] = Janmere
[3][4] = Esterrose
[3][5] = Bradthwaite
[3][6] = Westwheat
[3][7] = Roseacre
[3][8] = Marshbury
[3][9] = Hollowdell
[4][0] = Beckkirk
[4][1] = Tremerrow
[4][2] = Prysage
[4][3] = Lynthwayt
[4][4] = Greenwich
[4][5] = Deepapple
[4][6] = Baelbush
[4][7] = Summerden
[4][8] = Pinegate
[4][9] = Llanhope
[5][0] = Cliffsea
[5][1] = Abertoft
[5][2] = Springwick
[5][3] = Northash
[5][4] = Lanbutter
[5][5] = Fogdragon
[5][6] = Caerghyll
[5][7] = Witchhurst
[5][8] = Silvermage
[5][9] = Mornesse
[6][0] = Fairwilde
[6][1] = Bridgebank
[6][2] = Westerby
[6][3] = Sageedge
[6][4] = Meadowgill
[6][5] = Icehythe
[6][6] = Edgemallow
[6][7] = Belloak
[6][8] = Violetster
[6][9] = Redwall
[7][0] = Greycaster
[7][1] = Deerelf
[7][2] = Barrowglass
[7][3] = Swinice
[7][4] = Polmaple
[7][5] = Llynpine
[7][6] = Glynstoke
[7][7] = Corwardine
[7][8] = Applewych
[7][9] = Stonebourne
[8][0] = Landglen
[8][1] = Foxinge
[8][2] = Carmarble
[8][3] = Wolfpond
[8][4] = Snowston
[8][5] = Mosswater
[8][6] = Kingwyke
[8][7] = Faybridge
[8][8] = Bushdael
[8][9] = Wildeford
[9][0] = Merrimarsh
[9][1] = Inverport
[9][2] = Elfsummer
[9][3] = Blackway
[9][4] = Waterwyn
[9][5] = Riverbrook
[9][6] = Mapledale
[9][7] = Hedgefort
[9][8] = Drachill
[9][9] = Becklea
Seed:101
[0][0] = Mossmoss
[0][1] = Kingsnow
[0][2] = Fayville
[0][3] = Bushwold
[0][4] = Wildebeck
[0][5] = Shadowchester
[0][6] = Millfall
[0][7] = Jangold
[0][8] = Esteriron
[0][9] = Bradmead
[1][0] = Riverviolet
[1][1] = Maplewolf
[1][2] = Hedgebeech
[1][3] = Draccliff
[1][4] = Beckfay
[1][5] = Tregrass
[1][6] = Prykael
[1][7] = Lynmeadow
[1][8] = Greenrock
[1][9] = Deepthorpe
[2][0] = Strongbell
[2][1] = Ostcoast
[2][2] = Linfeld
[2][3] = Gillgriffin
[2][4] = Cliffkeep
[2][5] = Abermere
[2][6] = Springrose
[2][7] = Norththwaite
[2][8] = Lanwheat
[2][9] = Fogacre
[3][0] = Windfield
[3][1] = Shephall
[3][2] = Mistkirk
[3][3] = Kaelmerrow
[3][4] = Fairsage
[3][5] = Bridgethwayt
[3][6] = Westerwich
[3][7] = Sageapple
[3][8] = Meadowbush
[3][9] = Iceden
[4][0] = Beechkyle
[4][1] = Valmill
[4][2] = Pytsea
[4][3] = Lyngtoft
[4][4] = Greywick
[4][5] = Deerash
[4][6] = Barrowbutter
[4][7] = Swindragon
[4][8] = Polghyll
[4][9] = Llynhurst
[5][0] = Coastshade
[5][1] = Aelton
[5][2] = Stanwilde
[5][3] = Oakbank
[5][4] = Landby
[5][5] = Foxedge
[5][6] = Cargill
[5][7] = Wolfhythe
[5][8] = Snowmallow
[5][9] = Mossoak
[6][0] = Falconwind
[6][1] = Brightbarrow
[6][2] = Wheatcaster
[6][3] = Seaelf
[6][4] = Merriglass
[6][5] = Inverice
[6][6] = Elfmaple
[6][7] = Blackpine
[6][8] = Waterstoke
[6][9] = Riverwardine
[7][0] = Griffincastle
[7][1] = Dellfair
[7][2] = Bayglen
[7][3] = Swyninge
[7][4] = Pondmarble
[7][5] = Lochpond
[7][6] = Goldston
[7][7] = Courtwater
[7][8] = Ashwyke
[7][9] = Strongbridge
[8][0] = Lhanglyn
[8][1] = Freyingham
[8][2] = Castlemarsh
[8][3] = Woodport
[8][4] = Southsummer
[8][5] = Newway
[8][6] = Kirkwyn
[8][7] = Fieldbrook
[8][8] = Butterdale
[8][9] = Windfort
[9][0] = Merrowmead
[9][1] = Ironriver
[9][2] = Erithorp
[9][3] = Blueweald
[9][4] = Wellwynne
[9][5] = Rockburgh
[9][6] = Marbledayl
[9][7] = Highforth
[9][8] = Dragonhithe
[9][9] = Beechley
BUILD SUCCESSFUL (total time: 0 seconds)

Logged
The Chosen One
Newbie
*
Posts: 4


I feel like I should cry... but I cant.


View Profile
« Reply #3 on: September 01, 2012, 08:19:33 PM »

Hah, that's actually how I plan to have 'random' town names for my game...
Logged
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #4 on: September 01, 2012, 08:35:10 PM »

Hah, that's actually how I plan to have 'random' town names for my game...

The stem approach is pretty common.  The trick is making it reproducible.  Smiley
Logged
Michael
Donators
Hero Member
***
Posts: 2166



View Profile
« Reply #5 on: September 02, 2012, 10:58:22 AM »

Hah, that's actually how I plan to have 'random' town names for my game...

The stem approach is pretty common.  The trick is making it reproducible.  Smiley

so saying, for generating easy pronounceable name generators, when a name is created that it makes a file or adds a file to a folder or to another file(s) so the names are not generated again?

PS: woo... i got my time lock off Smiley
Logged
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #6 on: September 02, 2012, 11:13:43 AM »

Hah, that's actually how I plan to have 'random' town names for my game...

The stem approach is pretty common.  The trick is making it reproducible.  Smiley

so saying, for generating easy pronounceable name generators, when a name is created that it makes a file or adds a file to a folder or to another file(s) so the names are not generated again?

PS: woo... i got my time lock off Smiley

What I'm saying is that if you play the single player game and I play the single player game and we are both using the same world seeds then we should both see the same random town names.
Logged
Michael
Donators
Hero Member
***
Posts: 2166



View Profile
« Reply #7 on: September 02, 2012, 11:28:59 AM »

ok, just wanted to understand what was happening at the moment.
Logged
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #8 on: September 02, 2012, 12:54:28 PM »

ok, just wanted to understand what was happening at the moment.

Yeah, didn't mean to sound snippy... just trying to explain it in a different way that made sense.
Logged
The Chosen One
Newbie
*
Posts: 4


I feel like I should cry... but I cant.


View Profile
« Reply #9 on: September 08, 2012, 10:01:32 AM »

I actually just started working on the world generation for my project, getting it to 'reproduce' doesn't seem that hard to me. Maybe I'm just being dumb.

What I've done is simply lay out two huge arrays. One dedicated to 'prefixes' and the other to 'suffixes'. I have it so that this function takes in two arguments one for the prefix and the other for the suffix. I'm really terrible at explaining things so I'll just give you an example.

Let's say this is how we have our arrays setup,

Prefix[1] = Apples!
Prefix[2] = Bananas!
Prefix[3] = Watermelon!

Suffix [1] = Cats!
Suffix [2] = Dogs!
Suffix [3] = Birds!

Let's say this is called,
TownGen::GenTown(1,1)
Then the 'name' would be Apples Cats,

If TownGen::GenTown() is called then a seed would be then randomly assigned.


Sorry for my terrible explanation, I'm running on 2 hours of sleep. I hope it's enough for you to understand.

Logged
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #10 on: September 08, 2012, 10:29:36 AM »

I actually just started working on the world generation for my project, getting it to 'reproduce' doesn't seem that hard to me. Maybe I'm just being dumb.

What I've done is simply lay out two huge arrays. One dedicated to 'prefixes' and the other to 'suffixes'. I have it so that this function takes in two arguments one for the prefix and the other for the suffix. I'm really terrible at explaining things so I'll just give you an example.

Let's say this is how we have our arrays setup,

Prefix[1] = Apples!
Prefix[2] = Bananas!
Prefix[3] = Watermelon!

Suffix [1] = Cats!
Suffix [2] = Dogs!
Suffix [3] = Birds!

Let's say this is called,
TownGen::GenTown(1,1)
Then the 'name' would be Apples Cats,

If TownGen::GenTown() is called then a seed would be then randomly assigned.


Sorry for my terrible explanation, I'm running on 2 hours of sleep. I hope it's enough for you to understand.



In Mythruna's case, the world keeps going in all directions.  If you pick a particular world seed and travel for 50 miles east and I pick the same world seed and travel for 50 miles east then we should reach the same town... same name, same population, etc..

Generally this sort of thing is done by using a seed that is based on location.  So for a given section of the world you use a particular set of seeds, perhaps adjusted by the global seed.  This works fine for stuff that is completely random but it does not work so well if you want to ensure that your town names don't repeat if possible.  Otherwise, it's possible for two different "Apples! Cats!" to be right next to each other.

One logical solution is to keep track of what names you've already used and then just not use them again... but then you end up with a different problem.  If I visit "Apples! Cats!" (1) first and you visit "Apples! Cats!" (2) first then now we have different worlds... because my "Apples! Cats!" (2) is called something else and your "Apples! Cats!" one is called something else.

So the trick isn't "reproducibility".  The trick isn't "random".  And the trick isn't "unique".  The trick is names that are unique and reproducibly random.
Logged
FutureB
Donators
Hero Member
***
Posts: 512


RAWR


View Profile
« Reply #11 on: September 08, 2012, 04:29:25 PM »

Dam paul that is a epic idea ahah im imagining playing on 50 difernt skyrim maps that never end are look blocky ;p
Logged


Say the opposite of these words:
1)Always.
2)Coming.
3)From.
4)Take.
5)Me.
6)Down.
Michael
Donators
Hero Member
***
Posts: 2166



View Profile
« Reply #12 on: September 08, 2012, 04:36:20 PM »

Dam paul that is a epic idea ahah im imagining playing on 50 difernt skyrim maps that never end are look blocky ;p

1) are cuss words allowed?
2) Is the first word supposed to be a cuss word?
3) you mis-spelled the "D" word Tongue
Logged
FutureB
Donators
Hero Member
***
Posts: 512


RAWR


View Profile
« Reply #13 on: September 09, 2012, 02:08:22 AM »

Sorry i didnt think dam was to offensive, tbh i think my avatars alot more disturbing than that post ;p
Logged


Say the opposite of these words:
1)Always.
2)Coming.
3)From.
4)Take.
5)Me.
6)Down.
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #14 on: September 09, 2012, 02:20:57 AM »

Sorry i didnt think dam was to offensive, tbh i think my avatars alot more disturbing than that post ;p

Well, dams block rivers... so of course that isn't offensive. Wink

On the other hand, part of being a good internet citizen is also trying not to be too easily offended.  General internet guidelines: If the most offensive try to be less so and the most easily offended try to ignore more then perhaps we can all meet happily in the middle.  After all, nearly everything is offensive to someone.
Logged
Pages: [1] 2 3
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!