diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm
index 64b6cec0e07..8d968e69c94 100644
--- a/code/datums/traits/neutral.dm
+++ b/code/datums/traits/neutral.dm
@@ -10,6 +10,26 @@
lose_text = "You can taste again!"
medical_record_text = "Patient suffers from ageusia and is incapable of tasting food or reagents."
+/datum/quirk/foreigner
+ name = "Foreigner"
+ desc = "You're not from around here. You don't know Galactic Common!"
+ value = 0
+ gain_text = "The words being spoken around you don't make any sense."
+ lose_text = "You've developed fluency in Galactic Common."
+ medical_record_text = "Patient does not speak Galactic Common and may require an interpreter."
+
+/datum/quirk/foreigner/add()
+ var/mob/living/carbon/human/H = quirk_holder
+ H.add_blocked_language(/datum/language/common)
+ if(ishuman(H) || isfelinid(H))
+ H.grant_language(/datum/language/uncommon)
+
+/datum/quirk/foreigner/remove()
+ var/mob/living/carbon/human/H = quirk_holder
+ H.remove_blocked_language(/datum/language/common)
+ if(ishuman(H) || isfelinid(H))
+ H.remove_language(/datum/language/uncommon)
+
/datum/quirk/vegetarian
name = "Vegetarian"
desc = "You find the idea of eating meat morally and physically repulsive."
diff --git a/code/modules/language/language_holder.dm b/code/modules/language/language_holder.dm
index 39a287bdb55..65a817c6654 100644
--- a/code/modules/language/language_holder.dm
+++ b/code/modules/language/language_holder.dm
@@ -300,12 +300,14 @@ Key procs
/datum/language_holder/synthetic
understood_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
+ /datum/language/uncommon = list(LANGUAGE_ATOM),
/datum/language/machine = list(LANGUAGE_ATOM),
/datum/language/draconic = list(LANGUAGE_ATOM),
/datum/language/moffic = list(LANGUAGE_ATOM),
/datum/language/calcic = list(LANGUAGE_ATOM),
/datum/language/voltaic = list(LANGUAGE_ATOM))
spoken_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
+ /datum/language/uncommon = list(LANGUAGE_ATOM),
/datum/language/machine = list(LANGUAGE_ATOM),
/datum/language/draconic = list(LANGUAGE_ATOM),
/datum/language/moffic = list(LANGUAGE_ATOM),
diff --git a/code/modules/language/uncommon.dm b/code/modules/language/uncommon.dm
new file mode 100644
index 00000000000..baf943374e8
--- /dev/null
+++ b/code/modules/language/uncommon.dm
@@ -0,0 +1,19 @@
+/datum/language/uncommon
+ name = "Galactic Uncommon"
+ desc = "The second-most spoken Human language."
+ speech_verb = "says"
+ whisper_verb = "whispers"
+ sing_verb = "sings"
+ key = "!"
+ flags = TONGUELESS_SPEECH
+ space_chance = 50
+ syllables = list(
+"ba", "be", "bo", "ca", "ce", "co", "da", "de", "do",
+"fa", "fe", "fo", "ga", "ge", "go", "ha", "he", "ho",
+"ja", "je", "jo", "ka", "ke", "ko", "la", "le", "lo",
+"ma", "me", "mo", "na", "ne", "no", "ra", "re", "ro",
+"sa", "se", "so", "ta", "te", "to", "va", "ve", "vo",
+"xa", "xe", "xo", "ya", "ye", "yo", "za", "ze", "zo"
+ )
+ icon_state = "galuncom"
+ default_priority = 90
diff --git a/code/modules/surgery/organs/tongue.dm b/code/modules/surgery/organs/tongue.dm
index 4eb843fbec3..9e6ba502eb3 100644
--- a/code/modules/surgery/organs/tongue.dm
+++ b/code/modules/surgery/organs/tongue.dm
@@ -11,6 +11,7 @@
var/modifies_speech = FALSE
var/static/list/languages_possible_base = typecacheof(list(
/datum/language/common,
+ /datum/language/uncommon,
/datum/language/draconic,
/datum/language/codespeak,
/datum/language/monkey,
diff --git a/icons/misc/language.dmi b/icons/misc/language.dmi
index ac2fbc9ade4..f2778625b27 100644
Binary files a/icons/misc/language.dmi and b/icons/misc/language.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 2e8b3082d27..ae7fcfc26ad 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -2021,6 +2021,7 @@
#include "code\modules\language\swarmer.dm"
#include "code\modules\language\sylvan.dm"
#include "code\modules\language\terrum.dm"
+#include "code\modules\language\uncommon.dm"
#include "code\modules\language\voltaic.dm"
#include "code\modules\language\xenocommon.dm"
#include "code\modules\library\lib_codex_gigas.dm"