Player Species Naming Convention Update (#17267)

* new names and naming conventions

* lessens yanderedev by 74%

* minor efficiency tweaks?

Co-authored-by: Jamie D <993128+JamieD1@users.noreply.github.com>

Co-authored-by: Jamie D <993128+JamieD1@users.noreply.github.com>
This commit is contained in:
Skrem_7
2023-01-11 16:14:17 -05:00
committed by GitHub
parent b221e1607a
commit 8e0359387f
14 changed files with 503 additions and 68 deletions

View File

@@ -162,6 +162,20 @@
if(!findname(.))
break
/proc/random_unique_pod_name(gender, attempts_to_find_unique_name=10)
for(var/i in 1 to attempts_to_find_unique_name)
. = capitalize(pod_name(gender))
if(!findname(.))
break
/proc/random_unique_preternis_name(gender, attempts_to_find_unique_name=10)
for(var/i in 1 to attempts_to_find_unique_name)
. = capitalize(preternis_name())
if(!findname(.))
break
/proc/random_unique_plasmaman_name(attempts_to_find_unique_name=10)
for(var/i in 1 to attempts_to_find_unique_name)
. = capitalize(plasmaman_name())

View File

@@ -1,17 +1,50 @@
/proc/lizard_name(gender)
if(gender == MALE)
return "[pick(GLOB.lizard_names_male)]-[pick(GLOB.lizard_names_male)]"
else
return "[pick(GLOB.lizard_names_female)]-[pick(GLOB.lizard_names_female)]"
return "[pick(GLOB.lizard_names_male)]-[pick(GLOB.lizard_names_clan)]"
return "[pick(GLOB.lizard_names_female)]-[pick(GLOB.lizard_names_clan)]"
/proc/pod_name(gender)
var/randname
switch(rand(1,4))
if(1) //Human
if(gender == MALE)
randname = pick(GLOB.first_names_male)
else
randname = pick(GLOB.first_names_female)
randname += " [pick(GLOB.last_names)]"
return randname
if(2) //Lizard
return lizard_name(gender)
if(3) //Moth
return moth_name()
if(4) //Plant
randname = pick(GLOB.plant_names)
if(prob(25))
randname += " [pick(GLOB.last_names)]"
return randname
/proc/preternis_name(gender)
switch(rand(1,3))
if(1) //Adj + Noun
return "[pick(GLOB.adjectives)] [pick(GLOB.forge_name)]"
if(2) //Vxtrin name
switch(rand(1,3))
if(1) //Name
return pick(GLOB.preternis_names)
if(2) //Caste + Name
return "[pick(GLOB.preternis_class)]'[pick(GLOB.preternis_names)]"
if(3) //Caste + Name + Home
return "[pick(GLOB.preternis_class)]'[pick(GLOB.preternis_names)]'[pick(GLOB.preternis_home)]"
if(3) //Robotic name
return ipc_name()
/proc/polysmorph_name()
return pick(GLOB.polysmorph_names)
/proc/ethereal_name()
var/tempname = "[pick(GLOB.ethereal_names)] [random_capital_letter()]"
if(prob(65))
tempname += random_capital_letter()
return tempname
if(prob(66))
return "[pick(GLOB.constellations)] \Roman[rand(1,99)]"
return "[pick(GLOB.ethereal_names)]"
/proc/plasmaman_name()
return "[pick(GLOB.plasmaman_names)] \Roman[rand(1,99)]"

View File

@@ -9,6 +9,12 @@ GLOBAL_LIST_INIT(first_names_female, world.file2list("strings/names/first_female
GLOBAL_LIST_INIT(last_names, world.file2list("strings/names/last.txt"))
GLOBAL_LIST_INIT(lizard_names_male, world.file2list("strings/names/lizard_male.txt"))
GLOBAL_LIST_INIT(lizard_names_female, world.file2list("strings/names/lizard_female.txt"))
GLOBAL_LIST_INIT(lizard_names_clan, world.file2list("strings/names/lizard_clan.txt"))
GLOBAL_LIST_INIT(plant_names, world.file2list("strings/names/plant.txt"))
GLOBAL_LIST_INIT(forge_name, world.file2list("strings/names/forge.txt"))
GLOBAL_LIST_INIT(preternis_names, world.file2list("strings/names/preternis.txt"))
GLOBAL_LIST_INIT(preternis_class, world.file2list("strings/names/preternis_prefix.txt"))
GLOBAL_LIST_INIT(preternis_home, world.file2list("strings/names/preternis_suffix.txt"))
GLOBAL_LIST_INIT(polysmorph_names, world.file2list("strings/names/polysmorph.txt"))
GLOBAL_LIST_INIT(clown_names, world.file2list("strings/names/clown.txt"))
GLOBAL_LIST_INIT(mime_names, world.file2list("strings/names/mime.txt"))
@@ -17,6 +23,7 @@ GLOBAL_LIST_INIT(golem_names, world.file2list("strings/names/golem.txt"))
GLOBAL_LIST_INIT(moth_first, world.file2list("strings/names/moth_first.txt"))
GLOBAL_LIST_INIT(moth_last, world.file2list("strings/names/moth_last.txt"))
GLOBAL_LIST_INIT(plasmaman_names, world.file2list("strings/names/plasmaman.txt"))
GLOBAL_LIST_INIT(constellations, world.file2list("strings/names/constellations.txt"))
GLOBAL_LIST_INIT(ethereal_names, world.file2list("strings/names/ethereal.txt"))
GLOBAL_LIST_INIT(posibrain_names, world.file2list("strings/names/posibrain.txt"))
GLOBAL_LIST_INIT(nightmare_names, world.file2list("strings/names/nightmare.txt"))

View File

@@ -0,0 +1,61 @@
Andromeda
Antlia
Apollo
Apus
Aquilla
Ara
Arche
Aries
Aten
Atlas
Auriga
Aurora
Berenices
Caelium
Canes
Canis
Carina
Cassiopeia
Centaurus
Cepheus
Ceti
Cetus
Circinus
Columba
Coma
Corona
Corvus
Crux
Cygnus
Delphinus
Draco
Eos
Equuleus
Eridanus
Fornax
Halo
Horologium
Kale
Lacerta
Leo
Lepus
Libra
Lupus
Lyra
Monoceros
Nysa
Octans
Ophiuchus
Orion
Pallas
Perseus
Pisces
Puppis
Rigel
Saggitarius
Scorpius
Serpens
Themis
Tau
Triangulum
Vela

View File

@@ -1,38 +1,57 @@
Aten
Apollo
Arche
Atlas
Eos
Halo
Kale
Nysa
Orion
Pallas
Rigel
Themis
Aurora
Andromeda
Lyra
Saggitarius
Crux
Canis
Cygnus
Corvus
Cepheus
Auriga
Corona
Aquilla
Serpens
Cetus
Puppis
Ophiuchus
Carina
Cassiopeia
Canes
Fornax
Berenices
Coma
Vela
Triangulum
Tau
Ceti
Aatus
Aethia
Asiar
Asiu
Atieu
Azaclan
Azrael
Baclar
Bethael
Betius
Estac
Esthul
Eteriua
Ezas
Ezir
Ezuil
Iais
Iatar
Isiul
Isthum
Iteic
Ithari
Izar
Izicua
Izusa
Lathieu
Lazaus
Lael
Liesal
Lisantua
Pariul
Paticua
Peius
Pezi
Pithan
Pulvolis
Putrec
Razci
Retheul
Riseal
Ritar
Ruvieu
Satiua
Sethia
Sezclur
Szavusa
Szeris
Tasai
Taiu
Teclan
Tesael
Tethas
Vasuz
Vathieu
Vesar
Visari
Vitael

70
strings/names/forge.txt Normal file
View File

@@ -0,0 +1,70 @@
Alloy
Anvil
Atlas
Bellows
Blast
Blaze
Bolt
Brass
Breeze
Bronze
Cast
Chisel
Coal
Codex
Coil
Copper
Cork
Ember
Factory
Fire
Flame
Flare
Flower
Forge
Foundry
Gale
Gold
Gust
Hammer
Hearth
Heat
Helix
Herb
Ingot
Iron
Labour
Latch
Leaf
Lexicon
Lock
Metal
Mill
Mistral
Needle
Ore
Petal
Platinum
Pyre
Ring
Rivet
Rod
Rumble
Silver
Smith
Spark
Stake
Star
Steel
Thunder
Titanium
Toil
Tome
Tongs
Vein
Vine
Void
Wind
Wound
Wright
Zephyr

View File

@@ -0,0 +1,62 @@
Asra
Atrox
Bakkl
Blenhk
Ceehz
Ciil
Dagwiid
Deegon
Eent
Eklips
Ghrei
Graahm
Hiidru
Hrtsiil
Ita
Izkar
Jeex
Jk'sho
Kaah
Kadiim
Keprih
Khro
Kiisa
Kraakn
L'hoi
Lii
Mawja
Mehta
N'hti
Niixa
Ohrn
Orked
Otaal
Paaxi
Phektra
Pruteen
Qaka
Qwii
Raadins
Raksi
Reevur
Rhaas
Sahnir
Skrel
Snaa
Tehngo
Touta
Ummts
Usii
Vehr
Vii
Wehzr
Weih
Wiin
Wyrim
Xentuum
Xulja
Y'hoan
Yii
Yuukan
Zahndro
Zeyon

55
strings/names/plant.txt Normal file
View File

@@ -0,0 +1,55 @@
Ambrosia
Apple
Bamboo
Banana
Beet
Berry
Cabbage
Cactus
Cannabis
Carrot
Chanterelle
Cherry
Chili
Cinnamon
Cocoa
Coffee
Corn
Cotton
Durathread
Eggplant
Garlic
Geranium
Grape
Grass
Harebell
Kudzu
Lemon
Lily
Lime
Mushroom
Nettle
Nut
Oat
Onion
Orange
Parsnip
Pea
Pepper
Pineapple
Poppy
Potato
Pumpkin
Reishi
Rice
Soybean
Starthistle
Sugar
Sunflower
Tea
Tobacco
Tomato
Towercap
Vanilla
Watermelon
Wheat

View File

@@ -1,28 +1,48 @@
Xena
Syala
Nyra
Akyra
Ainera
Alara
Nena
Ghara
Hena
Alei
Alevia
Caera
Cala
Cayra
Ceestra
Celethe
Cheyi
Yefea
Geyra
Ghara
Gideva
Gyi
Hebria
Thrinia
Hena
Huela
Hydi
Jaelyne
Jaemin
Janae
Jeda
Joryne
Likathe
Linestra
Lunaine
Lykra
Nanri
Nena
Niila
Nyra
Saavi
Saedi
Janae
Celethe
Jaelyne
Akyra
Caera
Nanri
Lunaine
Cayra
Jaemin
Alevia
Ainera
Alei
Jeda
Ceestra
Sildira
Syala
Sildira
Thisi
Thrinia
Thue
Thyra
Xathi
Xena
Xifa
Xiryne
Yaki
Yanra
Yefea
Yula

View File

@@ -0,0 +1,36 @@
Ahlri
Ashkn
Avmon
Axum
Ceivl
Chmni
Clzv
Cxvn
Elrx
Exrt
Eynx
Eztk
Okvro
Ostan
Ovril
Oylre
Qhlvi
Qiska
Qxrl
Qzvun
Skurm
Staun
Styx
Svlre
Tkerm
Trmn
Txrsi
Tvxl
Xejvr
Xhlej
Xlvmm
Xzsi
Yhsxn
Yivrl
Ysli
Yvrx

View File

@@ -0,0 +1,24 @@
Kfx
Krst
Kvmn
Kyl
Ni
Nrm
Nxy
Nysr
Rln
Rxy
Ryl
Rysr
Vek
Vmn
Vxy
Vyd
Wi
Wln
Wxvm
Wyr
Zfmn
Zik
Zun
Zyv

View File

@@ -0,0 +1,24 @@
Fal
Fes
Fr
Fum
Haj
Hix
Hs
Hul
Lan
Lhm
Lv
Lyl
Ukx
Usm
Ur
Uvw
Vai
Vex
Vwj
Vul
Zar
Zel
Zin
Zy

View File

@@ -282,4 +282,9 @@
if(/obj/item/projectile/energy/florayield)
H.nutrition = min(H.nutrition+30, NUTRITION_LEVEL_FULL)
/datum/species/pod/random_name(gender,unique,lastname)
if(unique)
return random_unique_pod_name(gender)
return pod_name(gender)
#undef STATUS_MESSAGE_COOLDOWN

View File

@@ -279,3 +279,8 @@ adjust_charge - take a positive or negative value to adjust the charge level
H.visible_message(span_danger("[P] deflects off of [H]!"), span_userdanger("[P] deflects off of you!"))
return 1
return 0
/datum/species/preternis/random_name(gender,unique,lastname)
if(unique)
return random_unique_preternis_name()
return preternis_name()