From a1ffadc051fb5c42846910f2219b9a28db88bfca Mon Sep 17 00:00:00 2001 From: tipoima <61978315+tipoima@users.noreply.github.com> Date: Tue, 30 Jul 2024 01:42:44 +0500 Subject: [PATCH] Makes Syndicate code words more generic and natural sounding (#25859) * makes syndicate code words more generic and natural sounding * Moves codewords into config * sort config/names/codeword_locations.txt Co-authored-by: warriorstar-orion Signed-off-by: tipoima <61978315+tipoima@users.noreply.github.com> * sort config/names/codeword_nouns.txt Co-authored-by: warriorstar-orion Signed-off-by: tipoima <61978315+tipoima@users.noreply.github.com> --------- Signed-off-by: tipoima <61978315+tipoima@users.noreply.github.com> Co-authored-by: warriorstar-orion --- code/__HELPERS/name_helpers.dm | 30 ++++------------- code/_globalvars/lists/names.dm | 2 ++ config/names/codeword_locations.txt | 22 +++++++++++++ config/names/codeword_nouns.txt | 51 +++++++++++++++++++++++++++++ 4 files changed, 81 insertions(+), 24 deletions(-) create mode 100644 config/names/codeword_locations.txt create mode 100644 config/names/codeword_nouns.txt diff --git a/code/__HELPERS/name_helpers.dm b/code/__HELPERS/name_helpers.dm index c926a7b6db1..28f2be4cdf6 100644 --- a/code/__HELPERS/name_helpers.dm +++ b/code/__HELPERS/name_helpers.dm @@ -132,22 +132,13 @@ GLOBAL_DATUM(syndicate_code_response_regex, /regex) . = "" else . = list() - var/words = pick(//How many words there will be. Minimum of two. 2, 4 and 5 have a lesser chance of being selected. 3 is the most likely. - 50; 2, - 200; 3, - 50; 4, + var/words = pick(//How many words there will be. Minimum of three. 4 is the most likely. + 100; 3, + 150; 4, 25; 5 ) var/safety[] = list(1,2,3)//Tells the proc which options to remove later on. - var/nouns[] = list("love","hate","anger","peace","pride","sympathy","bravery","loyalty","honesty","integrity","compassion","charity","success","courage","deceit","skill","beauty","brilliance","pain","misery","beliefs","dreams","justice","truth","faith","liberty","knowledge","thought","information","culture","trust","dedication","progress","education","hospitality","leisure","trouble","friendships", "relaxation") - var/drinks[] = list("vodka and tonic","gin fizz","bahama mama","manhattan","black Russian","whiskey soda","long island tea","margarita","Irish coffee"," manly dwarf","Irish cream","doctor's delight","Beepksy Smash","tequila sunrise","brave bull","gargle blaster","bloody mary","whiskey cola","white Russian","vodka martini","martini","Cuba libre","kahlua","vodka","wine","moonshine") - var/locations[] = length(SSmapping.teleportlocs) ? SSmapping.teleportlocs : drinks//if null, defaults to drinks instead. - - var/names[] = list() - for(var/datum/data/record/t in GLOB.data_core.general)//Picks from crew manifest. - names += t.fields["name"] - var/maxwords = words//Extra var to check for duplicates. for(words,words>0,words--)//Randomly picks from one of the choices below. @@ -159,24 +150,15 @@ GLOBAL_DATUM(syndicate_code_response_regex, /regex) switch(pick(safety))//Chance based on the safety list. if(1)//1 and 2 can only be selected once each to prevent more than two specific names/places/etc. - switch(rand(1, 2)) // Mainly to add more options later. - if(1) - if(length(names)) - . += pick(names) - if(2) - . += pick(GLOB.joblist)//Returns a job. + . += pick(GLOB.joblist)//Returns a job. safety -= 1 if(2) - switch(rand(1,2))//Places or things. - if(1) - . += pick(drinks) - if(2) - . += pick(locations) + . += pick(GLOB.codeword_locations) safety -= 2 if(3) switch(rand(1, 3)) // Nouns, adjectives, verbs. Can be selected more than once. if(1) - . += pick(nouns) + . += pick(GLOB.codeword_nouns) if(2) . += pick(GLOB.adjectives) if(3) diff --git a/code/_globalvars/lists/names.dm b/code/_globalvars/lists/names.dm index 1657797e7c7..5d393bc6d1f 100644 --- a/code/_globalvars/lists/names.dm +++ b/code/_globalvars/lists/names.dm @@ -26,5 +26,7 @@ GLOBAL_LIST_INIT(verbs, file2list("config/names/verbs.txt")) GLOBAL_LIST_INIT(adjectives, file2list("config/names/adjectives.txt")) GLOBAL_LIST_INIT(dream_strings, file2list("config/names/dreams.txt")) GLOBAL_LIST_INIT(nightmare_strings, file2list("config/names/nightmares.txt")) +GLOBAL_LIST_INIT(codeword_locations, file2list("config/names/codeword_locations.txt")) +GLOBAL_LIST_INIT(codeword_nouns, file2list("config/names/codeword_nouns.txt")) //loaded on startup because of " //would include in rsc if ' was used diff --git a/config/names/codeword_locations.txt b/config/names/codeword_locations.txt new file mode 100644 index 00000000000..72ae2c75747 --- /dev/null +++ b/config/names/codeword_locations.txt @@ -0,0 +1,22 @@ +armory +arrivals +atmospherics +bar +botany +bridge +brig +cargo +chemistry +departures +dormitories +engineering +genetics +holodeck +kitchen +library +maintenance +medbay +morgue +robotics +science +xenobiology \ No newline at end of file diff --git a/config/names/codeword_nouns.txt b/config/names/codeword_nouns.txt new file mode 100644 index 00000000000..8538ca0dd57 --- /dev/null +++ b/config/names/codeword_nouns.txt @@ -0,0 +1,51 @@ +anger +beauty +belief +box +bravery +brilliance +camera +charity +compassion +courage +crate +culture +deceit +dedication +diamond +dream +education +faith +friendship +glass +gold +hate +honesty +hospitality +information +integrity +iron +justice +knowledge +laser +leisure +liberty +love +loyalty +misery +pain +peace +plasma +pride +progress +relaxation +robot +skill +success +sympathy +thought +titanium +trouble +trust +truth +wire \ No newline at end of file