diff --git a/code/modules/mob/language/station.dm b/code/modules/mob/language/station.dm
index 0e20458291..0956290f0a 100644
--- a/code/modules/mob/language/station.dm
+++ b/code/modules/mob/language/station.dm
@@ -25,13 +25,13 @@
flags = WHITELISTED
space_chance = 40
syllables = list(
- "za", "az", "ze", "ez", "zi", "iz", "zo", "oz", "zu", "uz", "zs", "sz",
- "ha", "ah", "he", "eh", "hi", "ih", "ho", "oh", "hu", "uh", "hs", "sh",
- "la", "al", "le", "el", "li", "il", "lo", "ol", "lu", "ul", "ls", "sl",
- "ka", "ak", "ke", "ek", "ki", "ik", "ko", "ok", "ku", "uk", "ks", "sk",
- "sa", "as", "se", "es", "si", "is", "so", "os", "su", "us", "ss", "ss",
- "ra", "ar", "re", "er", "ri", "ir", "ro", "or", "ru", "ur", "rs", "sr",
- "a", "a", "e", "e", "i", "i", "o", "o", "u", "u", "s", "s"
+ "za", "az", "ze", "ez", "zi", "iz", "zo", "oz", "zu", "uz", "zs", "sz",
+ "ha", "ah", "he", "eh", "hi", "ih", "ho", "oh", "hu", "uh", "hs", "sh",
+ "la", "al", "le", "el", "li", "il", "lo", "ol", "lu", "ul", "ls", "sl",
+ "ka", "ak", "ke", "ek", "ki", "ik", "ko", "ok", "ku", "uk", "ks", "sk",
+ "sa", "as", "se", "es", "si", "is", "so", "os", "su", "us", "ss", "ss",
+ "ra", "ar", "re", "er", "ri", "ir", "ro", "or", "ru", "ur", "rs", "sr",
+ "a", "a", "e", "e", "i", "i", "o", "o", "u", "u", "s", "s"
)
/datum/language/unathi/get_random_name()
@@ -103,6 +103,20 @@
else
return ..()
+/datum/language/vulpkanin
+ name = "Canilunzt"
+ desc = "The guttural language spoken and utilized by the inhabitants of Vazzend system, composed of growls, barks, yaps, and heavy utilization of ears and tail movements.Vulpkanin speak this language with ease."
+ speech_verb = "rrrfts"
+ ask_verb = "rurs"
+ exclaim_verb = "barks"
+ colour = "vulpkanin"
+ key = "8" //lol, no idea - Poojawa
+ flags = RESTRICTED
+ syllables = list("rur","ya","cen","rawr","bar","kuk","tek","qat","uk","wu","vuh","tah","tch","schz","auch", \
+ "ist","ein","entch","zwichs","tut","mir","wo","bis","es","vor","nic","gro","lll","enem","zandt","tzch","noch", \
+ "hel","ischt","far","wa","baram","iereng","tech","lach","sam","mak","lich","gen","or","ag","eck","gec","stag","onn", \
+ "bin","ket","jarl","vulf","einech","cresthz","azunein","ghzth")
+
/datum/language/machine
name = "Encoded Audio Language"
desc = "A efficient language of encoded tones developed by synthetics and cyborgs."
diff --git a/code/modules/mob/living/carbon/human/species/station/monkey.dm b/code/modules/mob/living/carbon/human/species/station/monkey.dm
index 6074934cec..53b039a9be 100644
--- a/code/modules/mob/living/carbon/human/species/station/monkey.dm
+++ b/code/modules/mob/living/carbon/human/species/station/monkey.dm
@@ -103,3 +103,16 @@
flesh_color = "#34AF10"
base_color = "#066000"
reagent_tag = IS_UNATHI
+
+/datum/species/monkey/vulpkanin
+ name = "Wolpin"
+ name_plural = "Wolpin"
+
+ icobase = 'icons/mob/human_races/monkeys/r_wolpin.dmi'
+ deform = 'icons/mob/human_races/monkeys/r_wolpin.dmi'
+
+ greater_form = "Vulpkanin"
+ default_language = "Wolpin"
+ flesh_color = "#966464"
+ base_color = "#000000"
+ tail = "wolpintail"
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm
index d0739809d0..0bbabe74e2 100644
--- a/code/modules/mob/living/carbon/human/species/station/station.dm
+++ b/code/modules/mob/living/carbon/human/species/station/station.dm
@@ -289,4 +289,4 @@
else
qdel(D)
- H.visible_message("\The [H] splits apart with a wet slithering noise!")
+ H.visible_message("\The [H] splits apart with a wet slithering noise!")
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm
index 2ac1c0a634..266111f969 100644
--- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm
+++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm
@@ -217,6 +217,57 @@
)
+/datum/species/vulpkanin
+ name = "Vulpkanin"
+ name_plural = "Vulpkanin"
+ icobase = 'icons/mob/human_races/r_vulpkanin.dmi'
+ deform = 'icons/mob/human_races/r_vulpkanin.dmi'
+// path = /mob/living/carbon/human/vulpkanin
+ default_language = "Sol Common"
+ language = "Canilunzt"
+ primitive_form = "Wolpin"
+ tail = "vulptail"
+// tail_animation = 'icons/mob/species/vulpkanin/tail.dmi' // this will need to be changed.
+ icobase_tail = 1
+ unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp)
+ darksight = 5 //worse than cats, but better than lizards. -- Poojawa
+ gluttonous = 1
+ num_alternate_languages = 2
+ color_mult = 1
+ egg_type = "Tajaran" //also placeholder. because I see other things using it
+
+ blurb = "Vulpkanin are a species of sharp-witted canine-pideds residing on the planet Altam just barely within the \
+ dual-star Vazzend system. Their politically de-centralized society and independent natures have led them to become a species and \
+ culture both feared and respected for their scientific breakthroughs. Discovery, loyalty, and utilitarianism dominates their lifestyles \
+ to the degree it can cause conflict with more rigorous and strict authorities. They speak a guttural language known as 'Canilunzt' \
+ which has a heavy emphasis on utilizing tail positioning and ear twitches to communicate intent."
+
+// flags = HAS_LIPS
+// clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS
+ spawn_flags = SPECIES_CAN_JOIN
+ appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR
+// bodyflags = FEET_PADDED | HAS_TAIL | HAS_HEAD_ACCESSORY | HAS_MARKINGS | HAS_SKIN_COLOR | TAIL_WAGGING | HAS_FUR // Paradise stuff
+// dietflags = DIET_OMNI
+ flesh_color = "#966464"
+ base_color = "#B43214"
+// butt_sprite = "vulp"
+
+ min_age = 17
+ max_age = 80
+
+/* // I figured both of these things aren't exactly needed - Poojawa
+
+ allowed_consumed_mobs = list(/mob/living/simple_animal/mouse, /mob/living/simple_animal/lizard, /mob/living/simple_animal/chick, /mob/living/simple_animal/chicken,
+ /mob/living/simple_animal/crab, /mob/living/simple_animal/butterfly, /mob/living/simple_animal/parrot, /mob/living/simple_animal/tribble)
+
+ suicide_messages = list(
+ "is attempting to bite their tongue off!",
+ "is jamming their claws into their eye sockets!",
+ "is twisting their own neck!",
+ "is holding their breath!") */
+
+//datum/species/vulpkanin //just to write it out, no idea where any of it goes -- Pooj
+// egg_type = "Vulpkanin"
/datum/species/unathi
egg_type = "Unathi"
diff --git a/code/modules/mob/new_player/sprite_accessories_vr.dm b/code/modules/mob/new_player/sprite_accessories_vr.dm
index 8ea9c6e090..547ac1aef9 100644
--- a/code/modules/mob/new_player/sprite_accessories_vr.dm
+++ b/code/modules/mob/new_player/sprite_accessories_vr.dm
@@ -6,7 +6,7 @@
/datum/sprite_accessory/hair
- species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren") //This lets all races use the default hairstyles.
+ species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin") //This lets all races use the default hairstyles.
sergal_plain
name = "Sergal Plain"
@@ -36,4 +36,127 @@
name = "Bald"
icon_state = "bald"
gender = MALE
- species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren") //Lets all the races be bald if they want.
\ No newline at end of file
+ species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin") //Lets all the races be bald if they want.
+
+// Vulpa stuffs
+
+ vulp_hair_none
+ name = "None"
+ icon_state = "bald"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_kajam
+ name = "Kajam"
+ icon_state = "kajam"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_keid
+ name = "Keid"
+ icon_state = "keid"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_adhara
+ name = "Adhara"
+ icon_state = "adhara"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_kleeia
+ name = "Kleeia"
+ icon_state = "kleeia"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_mizar
+ name = "Mizar"
+ icon_state = "mizar"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_apollo
+ name = "Apollo"
+ icon_state = "apollo"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_belle
+ name = "Belle"
+ icon_state = "belle"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_bun
+ name = "Bun"
+ icon_state = "bun"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_jagged
+ name = "Jagged"
+ icon_state = "jagged"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_curl
+ name = "Curl"
+ icon_state = "curl"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_hawk
+ name = "Hawk"
+ icon_state = "hawk"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_anita
+ name = "Anita"
+ icon_state = "anita"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_short
+ name = "Short"
+ icon_state = "short"
+ species_allowed = list("Vulpkanin")
+
+ vulp_hair_spike
+ name = "Spike"
+ icon_state = "spike"
+ species_allowed = list("Vulpkanin")
+
+ vulp_blaze
+ name = "Blaze"
+ icon_state = "vulp_facial_blaze"
+ species_allowed = list("Vulpkanin")
+
+ vulp_vulpine
+ name = "Vulpine"
+ icon_state = "vulp_facial_vulpine"
+ species_allowed = list("Vulpkanin")
+
+ vulp_earfluff
+ name = "Earfluff"
+ icon_state = "vulp_facial_earfluff"
+ species_allowed = list("Vulpkanin")
+
+ vulp_mask
+ name = "Mask"
+ icon_state = "vulp_facial_mask"
+ species_allowed = list("Vulpkanin")
+
+ vulp_patch
+ name = "Patch"
+ icon_state = "vulp_facial_patch"
+ species_allowed = list("Vulpkanin")
+
+ vulp_ruff
+ name = "Ruff"
+ icon_state = "vulp_facial_ruff"
+ species_allowed = list("Vulpkanin")
+
+ vulp_kita
+ name = "Kita"
+ icon_state = "vulp_facial_kita"
+ species_allowed = list("Vulpkanin")
+
+ vulp_swift
+ name = "Swift"
+ icon_state = "vulp_facial_swift"
+ species_allowed = list("Vulpkanin")
+
+ vulpkanin
+ name = "Default Vulpkanin skin"
+ icon_state = "default"
+ icon = 'icons/mob/human_races/r_vulpkanin.dmi'
+ species_allowed = list("Vulpkanin")
\ No newline at end of file
diff --git a/code/stylesheet.dm b/code/stylesheet.dm
index 5a66400241..cda8d0a332 100644
--- a/code/stylesheet.dm
+++ b/code/stylesheet.dm
@@ -91,6 +91,7 @@ h1.alert, h2.alert {color: #000000;}
.changeling {color: #800080;}
.sergal {color: #0077FF;}
.birdsongc {color: #CC9900;}
+.vulpkanin {color: #B97A57;}
.rough {font-family: "Trebuchet MS", cursive, sans-serif;}
.say_quote {font-family: Georgia, Verdana, sans-serif;}
diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi
index ec10e508c7..207601ebe6 100644
Binary files a/icons/mob/human_face.dmi and b/icons/mob/human_face.dmi differ
diff --git a/icons/mob/human_races/monkeys/r_wolpin.dmi b/icons/mob/human_races/monkeys/r_wolpin.dmi
new file mode 100644
index 0000000000..9214eb3a98
Binary files /dev/null and b/icons/mob/human_races/monkeys/r_wolpin.dmi differ
diff --git a/icons/mob/human_races/monkeys/tail.dmi b/icons/mob/human_races/monkeys/tail.dmi
new file mode 100644
index 0000000000..7a3e0bd9c4
Binary files /dev/null and b/icons/mob/human_races/monkeys/tail.dmi differ
diff --git a/icons/mob/human_races/r_vulpkanin.dmi b/icons/mob/human_races/r_vulpkanin.dmi
new file mode 100644
index 0000000000..d204370572
Binary files /dev/null and b/icons/mob/human_races/r_vulpkanin.dmi differ
diff --git a/icons/mob/species/vulpkanin/helmet.dmi b/icons/mob/species/vulpkanin/helmet.dmi
new file mode 100644
index 0000000000..599f248db0
Binary files /dev/null and b/icons/mob/species/vulpkanin/helmet.dmi differ
diff --git a/icons/mob/species/vulpkanin/mask.dmi b/icons/mob/species/vulpkanin/mask.dmi
new file mode 100644
index 0000000000..d6baae8ab6
Binary files /dev/null and b/icons/mob/species/vulpkanin/mask.dmi differ
diff --git a/icons/mob/species/vulpkanin/suit.dmi b/icons/mob/species/vulpkanin/suit.dmi
new file mode 100644
index 0000000000..31b6d96f4c
Binary files /dev/null and b/icons/mob/species/vulpkanin/suit.dmi differ
diff --git a/icons/mob/species/vulpkanin/tail.dmi b/icons/mob/species/vulpkanin/tail.dmi
new file mode 100644
index 0000000000..7b73f634d4
Binary files /dev/null and b/icons/mob/species/vulpkanin/tail.dmi differ