diff --git a/code/modules/mob/living/taste.dm b/code/modules/mob/living/taste.dm
index 5692eb99da..deb6884105 100644
--- a/code/modules/mob/living/taste.dm
+++ b/code/modules/mob/living/taste.dm
@@ -44,6 +44,10 @@
if ((from.pH > 12.5) || (from.pH < 1.5))
to_chat(src, "You taste chemical burns!")
T.adjustTongueLoss(src, 4)
+ if(istype(T, /obj/item/organ/tongue/cybernetic))
+ to_chat(src, "Your tongue moves on it's own in response to the liquid.")
+ src.say("The pH is appropriately [round(from.pH, 1)].")
+ return
if (!has_trait(TRAIT_AGEUSIA)) //I'll let you get away with not having 1 damage.
switch(from.pH)
if(11.5 to INFINITY)
diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm
index 9005b1cd30..f3a347b6a2 100644
--- a/code/modules/research/designs/medical_designs.dm
+++ b/code/modules/research/designs/medical_designs.dm
@@ -580,6 +580,16 @@
category = list("Medical Designs")
departmental_flags = DEPARTMENTAL_FLAG_MEDICAL
+/datum/design/cybernetic_tongue
+ name = "Cybernetic tongue"
+ desc = "A fancy cybernetic tongue."
+ id = "cybernetic_tongue"
+ build_type = PROTOLATHE
+ materials = list(MAT_METAL = 500, MAT_GLASS = 500)
+ build_path = /obj/item/organ/tongue/cybernetic
+ category = list("Medical Designs")
+ departmental_flags = DEPARTMENTAL_FLAG_MEDICAL
+
/////////////////////
//Adv Surgery Tools//
/////////////////////
diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm
index de9dd4b71f..bc310ac699 100644
--- a/code/modules/research/techweb/all_nodes.dm
+++ b/code/modules/research/techweb/all_nodes.dm
@@ -481,7 +481,7 @@
display_name = "Cybernetic Organs"
description = "We have the technology to rebuild him."
prereq_ids = list("adv_biotech")
- design_ids = list("cybernetic_heart", "cybernetic_liver", "cybernetic_liver_u", "cybernetic_lungs", "cybernetic_lungs_u")
+ design_ids = list("cybernetic_heart", "cybernetic_liver", "cybernetic_liver_u", "cybernetic_lungs", "cybernetic_lungs_u, cybernetic_tongue")
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
export_price = 5000
diff --git a/code/modules/surgery/organs/tongue.dm b/code/modules/surgery/organs/tongue.dm
index c6fcbab33a..e1e616069c 100644
--- a/code/modules/surgery/organs/tongue.dm
+++ b/code/modules/surgery/organs/tongue.dm
@@ -235,7 +235,7 @@
/obj/item/organ/tongue/OwO
name = "fluffy tongue"
desc = "OwO what's this?"
- icon_state = "tonguenormal"
+ icon_state = "tonguefluffy"
taste_sensitivity = 10 // extra sensitive and inquisitive uwu
maxHealth = 35 //Sensitive tongue!
@@ -253,3 +253,13 @@
message += pick(" OwO", " uwu")
message = lowertext(message)
return message
+
+/obj/item/organ/tongue/cybernetic
+ name = "cybernetic tongue"
+ desc = "A state of the art robotic tongue that can detect the pH of anything drank."
+ icon_state = "tonguecybernetic"
+ taste_sensitivity = 10 // extra sensitive and inquisitive uwu
+ maxHealth = 70 //It's robotic!
+
+/obj/item/organ/tongue/cybernetic/get_spans()
+ return ..() | SPAN_ROBOT
diff --git a/icons/obj/surgery.dmi b/icons/obj/surgery.dmi
index 1a3b344566..9a2d2ceb1a 100755
Binary files a/icons/obj/surgery.dmi and b/icons/obj/surgery.dmi differ
diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm
index b050d461a3..34e53a81df 100644
--- a/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm
+++ b/modular_citadel/code/modules/reagents/chemistry/reagents/fermi_reagents.dm
@@ -1247,7 +1247,7 @@ Creating a chem with a low purity will make you permanently fall in love with so
if(1 to 9)
if(prob(20))
to_chat(M, "Your tongue feels... fluffy")
- if(10 to 20)
+ if(10 to 15)
if(prob(10))
to_chat(M, "You find yourself unable to supress the desire to meow!")
M.emote("nya")
@@ -1261,14 +1261,14 @@ Creating a chem with a low purity will make you permanently fall in love with so
seen = seen - victim
if(seen)
to_chat(M, "You notice [pick(seen)]'s bulge [pick("OwO!", "uwu!")]")
- if(21)
+ if(16)
T = M.getorganslot(ORGAN_SLOT_TONGUE)
var/obj/item/organ/tongue/nT = new /obj/item/organ/tongue/OwO
T.Remove(M)
nT.Insert(M)
- T.forceMove(locate(10,6,1))//To the zelda room.
+ T.moveToNullspace()//To the zelda room.
to_chat(M, "Youw tongue feews... weally fwuffy!!")
- if(22 to INFINITY)
+ if(17 to INFINITY)
if(prob(10))
to_chat(M, "You find yourself unable to supress the desire to meow!")
M.emote("nya")