diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index 34135945d8fe..4cee48df1818 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -204,6 +204,7 @@ GLOBAL_LIST_INIT(bgstate_options, list(
var/xeno_name_ban = FALSE
var/xeno_vision_level_pref = XENO_VISION_LEVEL_MID_NVG
var/playtime_perks = TRUE
+ var/show_queen_name = FALSE
var/stylesheet = "Modern"
@@ -448,6 +449,7 @@ GLOBAL_LIST_INIT(bgstate_options, list(
dat += "Xeno postfix: [display_postfix]
"
dat += "Enable Playtime Perks: [playtime_perks? "Yes" : "No"]
"
+ dat += "Show Queen Name: [show_queen_name? "Yes" : "No"]
"
dat += "Default Xeno Night Vision Level: [xeno_vision_level_pref]
"
var/tempnumber = rand(1, 999)
@@ -1857,6 +1859,9 @@ GLOBAL_LIST_INIT(bgstate_options, list(
if("playtime_perks")
playtime_perks = !playtime_perks
+ if("show_queen_name")
+ show_queen_name = !show_queen_name
+
if("be_special")
var/num = text2num(href_list["num"])
be_special ^= (1<> xeno_postfix
S["xeno_name_ban"] >> xeno_name_ban
S["playtime_perks"] >> playtime_perks
+ S["show_queen_name"] >> show_queen_name
S["xeno_vision_level_pref"] >> xeno_vision_level_pref
S["view_controller"] >> View_MC
S["observer_huds"] >> observer_huds
@@ -310,6 +311,7 @@
ghost_orbit = sanitize_inlist(ghost_orbit, GLOB.ghost_orbits, initial(ghost_orbit))
auto_observe = sanitize_integer(auto_observe, 0, 1, 1)
playtime_perks = sanitize_integer(playtime_perks, 0, 1, 1)
+ show_queen_name = sanitize_integer(show_queen_name, 0, 1, 1)
xeno_vision_level_pref = sanitize_inlist(xeno_vision_level_pref, list(XENO_VISION_LEVEL_NO_NVG, XENO_VISION_LEVEL_MID_NVG, XENO_VISION_LEVEL_FULL_NVG), XENO_VISION_LEVEL_MID_NVG)
hear_vox = sanitize_integer(hear_vox, FALSE, TRUE, TRUE)
hide_statusbar = sanitize_integer(hide_statusbar, FALSE, TRUE, FALSE)
@@ -428,6 +430,7 @@
S["xeno_name_ban"] << xeno_name_ban
S["xeno_vision_level_pref"] << xeno_vision_level_pref
S["playtime_perks"] << playtime_perks
+ S["show_queen_name"] << show_queen_name
S["view_controller"] << View_MC
S["observer_huds"] << observer_huds
diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
index 0cbb6bec8b35..5c934693d695 100644
--- a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
+++ b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
@@ -478,6 +478,10 @@
if(client)
name_client_prefix = "[(client.xeno_prefix||client.xeno_postfix) ? client.xeno_prefix : "XX"]-"
name_client_postfix = client.xeno_postfix ? ("-"+client.xeno_postfix) : ""
+ if(client?.prefs?.show_queen_name)
+ name += " (" + replacetext((name_client_prefix + name_client_postfix), "-","") + ")"
+
+
full_designation = "[name_client_prefix][nicknumber][name_client_postfix]"
color = hive.color