mirror of
https://github.com/Azgaar/Fantasy-Map-Generator.git
synced 2025-12-17 01:41:22 +01:00
1.0.41
This commit is contained in:
parent
7a9c431bb1
commit
5eb24252e1
7 changed files with 171 additions and 61 deletions
|
|
@ -126,8 +126,9 @@
|
|||
// exclude endings inappropriate for states name
|
||||
if (name.includes(" ")) name = capitalize(name.replace(/ /g, "").toLowerCase()); // don't allow multiword state names
|
||||
if (name.length > 6 && name.slice(-4) === "berg") name = name.slice(0,-4); // remove -berg for any
|
||||
if (name.length > 5 && name.slice(-3) === "ton") name = name.slice(0,-3); // remove -ton for any
|
||||
|
||||
if (base === 5 && ["sk", "ev", "ov"].includes(name.slice(-2))) name = name.slice(0,-2); // remove -sk/-ev/-ov for Ruthenian
|
||||
else if (base === 1 && name.length > 5 && name.slice(-3) === "ton") name = name.slice(0,-3); // remove -ton for English
|
||||
else if (base === 12) return vowel(name.slice(-1)) ? name : name + "u"; // Japanese ends on any vowel or -u
|
||||
else if (base === 18 && Math.random() < .4) name = vowel(name.slice(0,1).toLowerCase()) ? "Al" + name.toLowerCase() : "Al " + name; // Arabic starts with -Al
|
||||
|
||||
|
|
@ -139,25 +140,26 @@
|
|||
} else if (Math.random() < .4) return name; // 60% for cc and vc
|
||||
|
||||
// define suffix
|
||||
let suffix = "";
|
||||
let suffix = "ia"; // standard suffix
|
||||
|
||||
const rnd = Math.random(), l = name.length;
|
||||
if (base === 3) suffix = rnd < .03 && l < 7 ? "terra" : "ia"; // Italian
|
||||
else if (base === 4) suffix = rnd < .03 && l < 7 ? "terra" : "ia"; // Spanish
|
||||
else if (base === 13) suffix = rnd < .03 && l < 7 ? "terra" : "ia"; // Portuguese
|
||||
else if (base === 2) suffix = rnd < .03 && l < 7 ? "terre" : "ia"; // French
|
||||
else if (base === 0) suffix = rnd < .5 && l < 7 ? "land" : "ia"; // German
|
||||
else if (base === 1) suffix = rnd < .4 && l < 7 ? "land" : "ia"; // English
|
||||
else if (base === 6) suffix = rnd < .3 && l < 7 ? "land" : "ia"; // Nordic
|
||||
else if (base === 7) suffix = rnd < .1 ? "eia" : "ia"; // Greek
|
||||
else if (base === 9) suffix = rnd < .35 ? "maa" : "ia"; // Finnic
|
||||
else if (base === 15) suffix = rnd < .6 && l < 6 ? "orszag" : "ia"; // Hungarian
|
||||
if (base === 3 && rnd < .03 && l < 7) suffix = "terra"; // Italian
|
||||
else if (base === 4 && rnd < .03 && l < 7) suffix = "terra"; // Spanish
|
||||
else if (base === 13 && rnd < .03 && l < 7) suffix = "terra"; // Portuguese
|
||||
else if (base === 2 && rnd < .03 && l < 7) suffix = "terre"; // French
|
||||
else if (base === 0 && rnd < .5 && l < 7) suffix = "land"; // German
|
||||
else if (base === 1 && rnd < .4 && l < 7 ) suffix = "land"; // English
|
||||
else if (base === 6 && rnd < .3 && l < 7) suffix = "land"; // Nordic
|
||||
else if (base === 7 && rnd < .1) suffix = "eia"; // Greek
|
||||
else if (base === 9 && rnd < .35) suffix = "maa"; // Finnic
|
||||
else if (base === 15 && rnd < .6 && l < 6) suffix = "orszag"; // Hungarian
|
||||
else if (base === 16) suffix = rnd < .5 ? "stan" : "ya"; // Turkish
|
||||
else if (base === 10) suffix = "guk"; // Korean
|
||||
else if (base === 11) suffix = " Guo"; // Chinese
|
||||
else if (base === 14) suffix = rnd < .6 && l < 7 ? "tlan" : "co"; // Nahuatl
|
||||
else if (base === 17) suffix = rnd < .8 ? "a" : "ia"; // Berber
|
||||
else if (base === 18) suffix = rnd < .8 ? "a" : "ia"; // Arabic
|
||||
else suffix = "ia" // other
|
||||
else if (base === 14) suffix = rnd < .6 && l < 6 ? "tlan" : "co"; // Nahuatl
|
||||
else if (base === 17 && rnd < .8) suffix = "a"; // Berber
|
||||
else if (base === 18 && rnd < .8) suffix = "a"; // Arabic
|
||||
|
||||
return validateSuffix(name, suffix);
|
||||
}
|
||||
|
||||
|
|
@ -194,30 +196,30 @@
|
|||
// name, min length, max length, letters to allow duplication, multi-word name rate
|
||||
return [
|
||||
{name: "German", min: 5, max: 12, d: "lt", m: 0},
|
||||
{name: "English", min: 6, max: 11, d: "", m: 0.1},
|
||||
{name: "French", min: 5, max: 13, d: "nlrs", m: 0.1},
|
||||
{name: "Italian", min: 5, max: 12, d: "cltr", m: 0.1},
|
||||
{name: "English", min: 6, max: 11, d: "", m: .1},
|
||||
{name: "French", min: 5, max: 13, d: "nlrs", m: .1},
|
||||
{name: "Italian", min: 5, max: 12, d: "cltr", m: .1},
|
||||
{name: "Castillian", min: 5, max: 11, d: "lr", m: 0},
|
||||
{name: "Ruthenian", min: 5, max: 10, d: "", m: 0},
|
||||
{name: "Nordic", min: 6, max: 10, d: "kln", m: 0.1},
|
||||
{name: "Greek", min: 5, max: 11, d: "s", m: 0.1},
|
||||
{name: "Roman", min: 6, max: 11, d: "ln", m: 0.1},
|
||||
{name: "Nordic", min: 6, max: 10, d: "kln", m: .1},
|
||||
{name: "Greek", min: 5, max: 11, d: "s", m: .1},
|
||||
{name: "Roman", min: 6, max: 11, d: "ln", m: .1},
|
||||
{name: "Finnic", min: 5, max: 11, d: "akiut", m: 0},
|
||||
{name: "Korean", min: 5, max: 11, d: "", m: 0},
|
||||
{name: "Chinese", min: 5, max: 10, d: "", m: 0},
|
||||
{name: "Japanese", min: 4, max: 10, d: "", m: 0},
|
||||
{name: "Portuguese", min: 5, max: 11, d: "", m: 0.1},
|
||||
{name: "Portuguese", min: 5, max: 11, d: "", m: .1},
|
||||
{name: "Nahuatl", min: 6, max: 13, d: "l", m: 0},
|
||||
{name: "Hungarian", min: 6, max: 13, d: "", m: 0.1},
|
||||
{name: "Hungarian", min: 6, max: 13, d: "", m: .1},
|
||||
{name: "Turkish", min: 4, max: 10, d: "", m: 0},
|
||||
{name: "Berber", min: 4, max: 10, d: "s", m: 0.2},
|
||||
{name: "Arabic", min: 4, max: 9, d: "ae", m: 0.2},
|
||||
{name: "Berber", min: 4, max: 10, d: "s", m: .2},
|
||||
{name: "Arabic", min: 4, max: 9, d: "ae", m: .2},
|
||||
{name: "Inuit", min: 5, max: 15, d: "alutsn", m: 0},
|
||||
{name: "Basque", min: 4, max: 11, d: "r", m: 0.1},
|
||||
{name: "Nigerian", min: 4, max: 10, d: "", m: 0.3},
|
||||
{name: "Basque", min: 4, max: 11, d: "r", m: .1},
|
||||
{name: "Nigerian", min: 4, max: 10, d: "", m: .3},
|
||||
{name: "Celtic", min: 4, max: 12, d: "nld", m: 0},
|
||||
{name: "Mesopotamian", min: 4, max: 9, d: "srpl", m: 0.1},
|
||||
{name: "Iranian", min: 5, max: 11, d: "", m: 0.1},
|
||||
{name: "Mesopotamian", min: 4, max: 9, d: "srpl", m: .1},
|
||||
{name: "Iranian", min: 5, max: 11, d: "", m: .1},
|
||||
{name: "Hawaiian", min: 5, max: 10, d: "auo", m: 1},
|
||||
{name: "Karnataka", min: 5, max: 11, d: "tnl", m: 0},
|
||||
{name: "Quechua", min: 6, max: 12, d: "l", m: 0},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue