diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm
index ebd97f0550..8998c1e0f8 100644
--- a/code/datums/datacore.dm
+++ b/code/datums/datacore.dm
@@ -348,6 +348,7 @@ var/global/list/PDA_Manifest = list()
G.fields["real_rank"] = H.mind.assigned_role
G.fields["rank"] = assignment
G.fields["age"] = H.age
+ G.fields["languages"] = list2text(H.languages,", ")
if(H.get_FBP_type())
G.fields["brain_type"] = H.get_FBP_type()
else
@@ -358,6 +359,7 @@ var/global/list/PDA_Manifest = list()
G.fields["sex"] = gender2text(H.gender)
G.fields["species"] = "[H.custom_species ? "[H.custom_species] ([H.species.name])" : H.species.name]" //VOREStation Edit
G.fields["home_system"] = H.home_system
+ G.fields["birthplace"] = H.birthplace
G.fields["citizenship"] = H.citizenship
G.fields["faction"] = H.personal_faction
G.fields["religion"] = H.religion
@@ -393,6 +395,7 @@ var/global/list/PDA_Manifest = list()
L.fields["name"] = H.real_name
L.fields["rank"] = H.mind.assigned_role
L.fields["age"] = H.age
+ L.fields["languages"] = list2text(H.languages,", ")
L.fields["fingerprint"] = md5(H.dna.uni_identity)
L.fields["sex"] = gender2text(H.gender)
L.fields["id_gender"] = gender2text(H.identifying_gender)
@@ -406,6 +409,7 @@ var/global/list/PDA_Manifest = list()
L.fields["identity"] = H.dna.UI // "
L.fields["species"] = "[H.custom_species ? "[H.custom_species] ([H.species.name])" : H.species.name]" //VOREStation Edit
L.fields["home_system"] = H.home_system
+ L.fields["birthplace"] = H.birthplace
L.fields["citizenship"] = H.citizenship
L.fields["faction"] = H.personal_faction
L.fields["religion"] = H.religion
@@ -445,12 +449,14 @@ var/global/list/PDA_Manifest = list()
G.fields["real_rank"] = "Unassigned"
G.fields["sex"] = "Unknown"
G.fields["age"] = "Unknown"
+ G.fields["languages"] = "Unknown"
G.fields["brain_type"] = "Unknown"
G.fields["fingerprint"] = "Unknown"
G.fields["p_stat"] = "Active"
G.fields["m_stat"] = "Stable"
G.fields["species"] = SPECIES_HUMAN
G.fields["home_system"] = "Unknown"
+ G.fields["birthplace"] = "Unknown"
G.fields["citizenship"] = "Unknown"
G.fields["faction"] = "Unknown"
G.fields["religion"] = "Unknown"
diff --git a/code/datums/uplink/announcements.dm b/code/datums/uplink/announcements.dm
index f6742fb815..5bc7dde793 100644
--- a/code/datums/uplink/announcements.dm
+++ b/code/datums/uplink/announcements.dm
@@ -74,6 +74,7 @@
general.fields["faction"] = random_general_record.fields["faction"]
general.fields["fingerprint"] = random_general_record.fields["fingerprint"]
general.fields["home_system"] = random_general_record.fields["home_system"]
+ general.fields["birthplace"] = random_general_record.fields["birthplace"]
general.fields["religion"] = random_general_record.fields["religion"]
if(random_medical_record)
medical.fields["b_type"] = random_medical_record.fields["b_type"]
diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm
index 5f588f4d9b..60e5727a7c 100644
--- a/code/game/machinery/computer/medical.dm
+++ b/code/game/machinery/computer/medical.dm
@@ -420,6 +420,7 @@
if(istype(active1, /datum/data/record) && data_core.general.Find(active1))
P.info += {"Name: [active1.fields["name"]] ID: [active1.fields["id"]]
\nSex: [active1.fields["sex"]]
+
\nSpecies: [active1.fields["species"]]
\nAge: [active1.fields["age"]]
\nFingerprint: [active1.fields["fingerprint"]]
\nPhysical Status: [active1.fields["p_stat"]]
diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm
index 9c8771eeb3..2e315362cf 100644
--- a/code/game/machinery/computer/security.dm
+++ b/code/game/machinery/computer/security.dm
@@ -426,6 +426,7 @@
if(istype(active1, /datum/data/record) && data_core.general.Find(active1))
P.info += {"Name: [active1.fields["name"]] ID: [active1.fields["id"]]
\nSex: [active1.fields["sex"]]
+
\nSpecies: [active1.fields["species"]]
\nAge: [active1.fields["age"]]
\nFingerprint: [active1.fields["fingerprint"]]
\nPhysical Status: [active1.fields["p_stat"]]
diff --git a/code/game/machinery/computer/skills.dm b/code/game/machinery/computer/skills.dm
index b30aa5e6a3..26e45d7f40 100644
--- a/code/game/machinery/computer/skills.dm
+++ b/code/game/machinery/computer/skills.dm
@@ -39,6 +39,12 @@
"species" = "Please input new species:",
"age" = "Please input new age:",
"fingerprint" = "Please input new fingerprint hash:",
+ "home_system" = "Please input new home:",
+ "birthplace" = "Please input new birthplace:",
+ "citizenship" = "Please input new citizenship:",
+ "languages" = "Please input known languages:",
+ "faction" = "Please input new employer:",
+ "religion" = "Please input new religion:",
)
field_edit_choices = list(
// General
@@ -113,6 +119,12 @@
fields[++fields.len] = FIELD("Species", active1.fields["species"], "species")
fields[++fields.len] = FIELD("Age", active1.fields["age"], "age")
fields[++fields.len] = FIELD("Fingerprint", active1.fields["fingerprint"], "fingerprint")
+ fields[++fields.len] = FIELD("Home", active1.fields["home_system"], "home_system")
+ fields[++fields.len] = FIELD("Birthplace", active1.fields["birthplace"], "birthplace")
+ fields[++fields.len] = FIELD("Citizenship", active1.fields["citizenship"], "citizenship")
+ fields[++fields.len] = FIELD("Faction", active1.fields["faction"], "faction")
+ fields[++fields.len] = FIELD("Religion", active1.fields["religion"], "religion")
+ fields[++fields.len] = FIELD("Known Languages", active1.fields["languages"], "languages")
fields[++fields.len] = FIELD("Physical Status", active1.fields["p_stat"], null)
fields[++fields.len] = FIELD("Mental Status", active1.fields["m_stat"], null)
var/list/photos = list()
@@ -309,8 +321,15 @@
if(istype(active1, /datum/data/record) && data_core.general.Find(active1))
P.info += {"Name: [active1.fields["name"]] ID: [active1.fields["id"]]
\nSex: [active1.fields["sex"]]
+
\nSpecies: [active1.fields["species"]]
\nAge: [active1.fields["age"]]
\nFingerprint: [active1.fields["fingerprint"]]
+
\nHome: [active1.fields["home_system"]]
+
\nBirthplace: [active1.fields["birthplace"]]
+
\nCitizenship: [active1.fields["citizenship"]]
+
\nFaction: [active1.fields["faction"]]
+
\nReligion: [active1.fields["religion"]]
+
\nKnown Languages: [active1.fields["languages"]]
\nPhysical Status: [active1.fields["p_stat"]]
\nMental Status: [active1.fields["m_stat"]]
\nEmployment/Skills Summary: [active1.fields["notes"]]
diff --git a/code/game/objects/items/devices/uplink.dm b/code/game/objects/items/devices/uplink.dm
index 4c07229df7..ef5ae25fa7 100644
--- a/code/game/objects/items/devices/uplink.dm
+++ b/code/game/objects/items/devices/uplink.dm
@@ -139,6 +139,7 @@
data["exploit"]["species"] = html_encode(L.fields["species"])
data["exploit"]["rank"] = html_encode(L.fields["rank"])
data["exploit"]["home_system"] = html_encode(L.fields["home_system"])
+ data["exploit"]["birthplace"] = html_encode(L.fields["birthplace"])
data["exploit"]["citizenship"] = html_encode(L.fields["citizenship"])
data["exploit"]["faction"] = html_encode(L.fields["faction"])
data["exploit"]["religion"] = html_encode(L.fields["religion"])
diff --git a/code/modules/client/preference_setup/general/05_background.dm b/code/modules/client/preference_setup/general/05_background.dm
index 4ca1cb86ad..d3c8d62155 100644
--- a/code/modules/client/preference_setup/general/05_background.dm
+++ b/code/modules/client/preference_setup/general/05_background.dm
@@ -7,6 +7,7 @@
S["sec_record"] >> pref.sec_record
S["gen_record"] >> pref.gen_record
S["home_system"] >> pref.home_system
+ S["birthplace"] >> pref.birthplace
S["citizenship"] >> pref.citizenship
S["faction"] >> pref.faction
S["religion"] >> pref.religion
@@ -17,6 +18,7 @@
S["sec_record"] << pref.sec_record
S["gen_record"] << pref.gen_record
S["home_system"] << pref.home_system
+ S["birthplace"] << pref.birthplace
S["citizenship"] << pref.citizenship
S["faction"] << pref.faction
S["religion"] << pref.religion
@@ -24,6 +26,7 @@
/datum/category_item/player_setup_item/general/background/sanitize_character()
if(!pref.home_system) pref.home_system = "Unset"
+ if(!pref.birthplace) pref.birthplace = "Unset"
if(!pref.citizenship) pref.citizenship = "None"
if(!pref.faction) pref.faction = "None"
if(!pref.religion) pref.religion = "None"
@@ -36,6 +39,7 @@
character.sec_record = pref.sec_record
character.gen_record = pref.gen_record
character.home_system = pref.home_system
+ character.birthplace = pref.birthplace
character.citizenship = pref.citizenship
character.personal_faction = pref.faction
character.religion = pref.religion
@@ -43,7 +47,8 @@
/datum/category_item/player_setup_item/general/background/content(var/mob/user)
. += "Background Information
"
. += "Economic Status: [pref.economic_status]
"
- . += "Home System: [pref.home_system]
"
+ . += "Home: [pref.home_system]
"
+ . += "Birthplace: [pref.birthplace]
"
. += "Citizenship: [pref.citizenship]
"
. += "Faction: [pref.faction]
"
. += "Religion: [pref.religion]
"
@@ -67,7 +72,7 @@
return TOPIC_REFRESH
else if(href_list["home_system"])
- var/choice = tgui_input_list(user, "Please choose a home system.", "Character Preference", home_system_choices + list("Unset","Other"), pref.home_system)
+ var/choice = tgui_input_list(user, "Please choose your home planet and/or system. This should be your current primary residence. Select \"Other\" to specify manually.", "Character Preference", home_system_choices + list("Unset","Other"), pref.home_system)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
@@ -78,8 +83,20 @@
pref.home_system = choice
return TOPIC_REFRESH
+ else if(href_list["birthplace"])
+ var/choice = tgui_input_list(user, "Please choose the planet and/or system or other appropriate location that you were born/created. Select \"Other\" to specify manually.", "Character Preference", home_system_choices + list("Unset","Other"), pref.birthplace)
+ if(!choice || !CanUseTopic(user))
+ return TOPIC_NOACTION
+ if(choice == "Other")
+ var/raw_choice = sanitize(tgui_input_text(user, "Please enter a birthplace.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN)
+ if(raw_choice && CanUseTopic(user))
+ pref.birthplace = raw_choice
+ else
+ pref.birthplace = choice
+ return TOPIC_REFRESH
+
else if(href_list["citizenship"])
- var/choice = tgui_input_list(user, "Please choose your current citizenship.", "Character Preference", citizenship_choices + list("None","Other"), pref.citizenship)
+ var/choice = tgui_input_list(user, "Please select the faction or political entity with which you currently hold citizenship. Select \"Other\" to specify manually.", "Character Preference", citizenship_choices + list("None","Other"), pref.citizenship)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
@@ -91,7 +108,7 @@
return TOPIC_REFRESH
else if(href_list["faction"])
- var/choice = tgui_input_list(user, "Please choose a faction to work for.", "Character Preference", faction_choices + list("None","Other"), pref.faction)
+ var/choice = tgui_input_list(user, "Please choose the faction you primarily work for, if you are not under the direct employ of NanoTrasen. Select \"Other\" to specify manually.", "Character Preference", faction_choices + list("None","Other"), pref.faction)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
@@ -103,7 +120,7 @@
return TOPIC_REFRESH
else if(href_list["religion"])
- var/choice = tgui_input_list(user, "Please choose a religion.", "Character Preference", religion_choices + list("None","Other"), pref.religion)
+ var/choice = tgui_input_list(user, "Please choose a religion. Select \"Other\" to specify manually.", "Character Preference", religion_choices + list("None","Other"), pref.religion)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index cc8716c0a2..a5d49a6418 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -76,8 +76,9 @@ var/list/preferences_datums = list()
var/synth_markings = 1 //Enable/disable markings on synth parts. //VOREStation Edit - 1 by default
//Some faction information.
- var/home_system = "Unset" //System of birth.
- var/citizenship = "None" //Current home system.
+ var/home_system = "Unset" //Current home or residence.
+ var/birthplace = "Unset" //Location of birth.
+ var/citizenship = "None" //Government or similar entity with which you hold citizenship.
var/faction = "None" //General associated faction.
var/religion = "None" //Religious association.
var/antag_faction = "None" //Antag associated faction.
diff --git a/code/modules/client/preferences_factions.dm b/code/modules/client/preferences_factions.dm
index 4371cdf860..2f875b1b71 100644
--- a/code/modules/client/preferences_factions.dm
+++ b/code/modules/client/preferences_factions.dm
@@ -14,6 +14,7 @@ var/global/list/seen_religions = list()
return
var/global/list/citizenship_choices = list(
+<<<<<<< HEAD
"Earth",
"Mars",
"Sif",
@@ -21,32 +22,104 @@ var/global/list/citizenship_choices = list(
"Moghes",
"Meralar",
"Qerr'balak"
+=======
+ "Greater Human Diaspora",
+ "Commonwealth of Sol-Procyon",
+ "Skrell Consensus",
+ "Moghes Hegemony",
+ "Tajaran Diaspora",
+ "Unitary Alliance of Salthan Fyrds",
+ "Elysian Colonies",
+ "Third Ares Confederation",
+ "Teshari Expeditionary Fleet",
+ "Altevian Hegemony",
+ "Kitsuhana Heavy Industries",
+ "Kosaky Fleets"
+>>>>>>> 6fd6b7af0c... Merge pull request #14548 from KillianKirilenko/kk-lore
)
var/global/list/home_system_choices = list(
"Sol",
+<<<<<<< HEAD
"Vir",
"Nyx",
"Tau Ceti",
"Qerr'valis",
+=======
+ "Earth, Sol",
+ "Luna, Sol",
+ "Mars, Sol",
+ "Venus, Sol",
+ "Titan, Sol",
+ "Toledo, New Ohio",
+ "The Pact, Myria",
+ "Kitsuhana Prime",
+ "Kishar, Alpha Centauri",
+ "Anshar, Alpha Centauri",
+ "Heaven Complex, Alpha Centauri",
+ "Procyon",
+ "Altair",
+ "Kara, Vir",
+ "Sif, Vir",
+ "Brinkburn, Nyx",
+ "Binma, Tau Ceti",
+ "Qerr'balak, Qerr'valis",
+>>>>>>> 6fd6b7af0c... Merge pull request #14548 from KillianKirilenko/kk-lore
"Epsilon Ursae Minoris",
- "Rarkajar"
+ "Meralar, Rarkajar",
+ "Tal, Vilous",
+ "Menhir, Alat-Hahr",
+ "Altam, Vazzend",
+ "Uh'Zata, Kelezakata",
+ "Moghes, Uuoea-Esa",
+ "Xohok, Uuoea-Esa",
+ "Varilak, Antares",
+ "Sanctorum, Sanctum",
+ "Infernum, Sanctum",
+ "Abundance in All Things Serene, Beta-Carnelium Ventrum",
+ "Jorhul, Barkalis",
+ "Shelf Flotilla",
+ "Ue-Orsi Flotilla"
)
var/global/list/faction_choices = list(
+<<<<<<< HEAD
"Sol Central",
"Vey Med",
"Einstein Engines",
+=======
+ "NanoTrasen Incorporated",
+ "Hephaestus Industries",
+ "Vey-Medical",
+ "Zeng-Hu Pharmaceuticals",
+ "Ward-Takahashi GMC",
+ "Bishop Cybernetics",
+ "Morpheus Cyberkinetics",
+ "Xion Manufacturing Group",
+>>>>>>> 6fd6b7af0c... Merge pull request #14548 from KillianKirilenko/kk-lore
"Free Trade Union",
- "NanoTrasen",
- "Ward-Takahashi GMB",
- "Gilthari Exports",
+ "Major Bill's Transportation",
+ "Ironcrest Transport Group",
"Grayson Manufactories Ltd.",
"Aether Atmospherics",
- "Zeng-Hu Pharmaceuticals",
- "Hephaestus Industries",
- "Morpheus Cyberkinetics",
- "Xion Manufacturing Group"
+ "Focal Point Energistics",
+ "StarFlight Inc.",
+ "Oculum Broadcasting Network",
+ "Periphery Post",
+ "Free Anur Tribune",
+ "Centauri Provisions",
+ "Einstein Engines",
+ "Wulf Aeronautics",
+ "Gilthari Exports",
+ "Coyote Salvage Corp.",
+ "Chimera Genetics Corp.",
+ "Kitsuhana Heavy Industries",
+ "Independent Pilots Association",
+ "Local System Defense Force",
+ "United Solar Defense Force",
+ "Proxima Centauri Risk Control",
+ "HIVE Security",
+ "Stealth Assault Enterprises"
)
var/global/list/antag_faction_choices = list() //Should be populated after brainstorming. Leaving as blank in case brainstorming does not occur.
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index 488682f675..af71c6ff4a 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -592,9 +592,11 @@
to_chat(usr, "Species: [R.fields["species"]]")
to_chat(usr, "Assignment: [R.fields["real_rank"]] ([R.fields["rank"]])")
to_chat(usr, "Home System: [R.fields["home_system"]]")
+ to_chat(usr, "Birthplace: [R.fields["birthplace"]]")
to_chat(usr, "Citizenship: [R.fields["citizenship"]]")
to_chat(usr, "Primary Employer: [R.fields["personal_faction"]]")
to_chat(usr, "Religious Beliefs: [R.fields["religion"]]")
+ to_chat(usr, "Known Languages: [R.fields["languages"]]")
to_chat(usr, "Notes: [R.fields["notes"]]")
to_chat(usr, "\[View Comment Log\]")
read = 1
diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm
index 15ea6a4554..13aa181f1c 100644
--- a/code/modules/mob/living/carbon/human/human_defines.dm
+++ b/code/modules/mob/living/carbon/human/human_defines.dm
@@ -54,6 +54,7 @@
// General information
var/home_system = ""
+ var/birthplace = ""
var/citizenship = ""
var/personal_faction = ""
var/religion = ""
diff --git a/tgui/packages/tgui/interfaces/Uplink.js b/tgui/packages/tgui/interfaces/Uplink.js
index 511be46af3..d482da1e6f 100644
--- a/tgui/packages/tgui/interfaces/Uplink.js
+++ b/tgui/packages/tgui/interfaces/Uplink.js
@@ -74,6 +74,7 @@ const ExploitableInformation = (props, context) => {
{exploit.age}
{exploit.rank}
{exploit.home_system}
+ {exploit.birthplace}
{exploit.citizenship}
{exploit.faction}
{exploit.religion}