diff --git a/code/global_vr.dm b/code/global_vr.dm
index 834ff2dc2c..3d1ae59afa 100644
--- a/code/global_vr.dm
+++ b/code/global_vr.dm
@@ -2,6 +2,7 @@
robot_module_types += "Medihound"
robot_module_types += "K9"
robot_module_types += "Janihound"
+ robot_module_types += "BoozeHound" //CHOMP edit.
robot_module_types += "Sci-borg"
robot_module_types += "Pupdozer"
return 1
@@ -52,4 +53,4 @@ var/global/list/acceptable_fruit_types= list(
"vanilla",
"watermelon",
"wheat",
- "whitebeet")
\ No newline at end of file
+ "whitebeet")
diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station.dm b/code/modules/mob/living/silicon/robot/robot_modules/station.dm
index 568cc5b3af..3e79e35091 100644
--- a/code/modules/mob/living/silicon/robot/robot_modules/station.dm
+++ b/code/modules/mob/living/silicon/robot/robot_modules/station.dm
@@ -41,7 +41,8 @@ var/global/list/robot_modules = list(
/obj/item/weapon/robot_module/New(var/mob/living/silicon/robot/R)
..()
R.module = src
-
+ R.can_buckle = 1 //Chomp Addition; Makes all borgs rideable.
+
add_camera_networks(R)
add_languages(R)
add_subsystems(R)
diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm
index 4cb560bbbc..56c5f94925 100644
--- a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm
+++ b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm
@@ -41,6 +41,7 @@
robot_modules["K9"] = /obj/item/weapon/robot_module/robot/knine
robot_modules["ERT"] = /obj/item/weapon/robot_module/robot/ert
robot_modules["Janihound"] = /obj/item/weapon/robot_module/robot/scrubpup
+ robot_modules["BoozeHound"] = /obj/item/weapon/robot_module/robot/booze //Chompaddition
robot_modules["Sci-borg"] = /obj/item/weapon/robot_module/robot/science
robot_modules["Pupdozer"] = /obj/item/weapon/robot_module/robot/engiedog
return 1
@@ -616,4 +617,4 @@
R.verbs -= /mob/living/silicon/robot/proc/robot_mount
// R.verbs -= /mob/living/proc/shred_limb - YW Edit
R.verbs -= /mob/living/silicon/robot/proc/rest_style
- ..()
\ No newline at end of file
+ ..()
diff --git a/code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm b/code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm
new file mode 100644
index 0000000000..fe3c5054b7
--- /dev/null
+++ b/code/modules/mob/living/silicon/robot/subtypes/boozeborg_ch.dm
@@ -0,0 +1,177 @@
+//Attempted unify style implementation of boozeborgs. To lower peoples needed code diving to both understand this module and make new ones.
+//Dropping my usual _unify for _ch this time. Commenting it here for github search.
+
+// code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm //tag so it shows up in gitsearch
+
+/*
+What Borgs are available is sadly handled in the above file in the proc
+
+/hook/startup/proc/robot_modules_vr()
+ robot_modules["Medihound"] = /obj/item/weapon/robot_module/robot/medihound
+ robot_modules["K9"] = /obj/item/weapon/robot_module/robot/knine
+ robot_modules["ERT"] = /obj/item/weapon/robot_module/robot/ert
+ robot_modules["Janihound"] = /obj/item/weapon/robot_module/robot/scrubpup
+ robot_modules["Sci-borg"] = /obj/item/weapon/robot_module/robot/science
+ robot_modules["Pupdozer"] = /obj/item/weapon/robot_module/robot/engiedog
+ return 1
+*/
+
+/obj/item/weapon/robot_module/robot/booze
+ name = "BoozeHound robot module"
+ channels = list("Service" = 1)
+ languages = list(
+ LANGUAGE_SOL_COMMON = 1,
+ LANGUAGE_UNATHI = 1,
+ LANGUAGE_SIIK = 1,
+ LANGUAGE_AKHANI = 1,
+ LANGUAGE_SKRELLIAN = 1,
+ LANGUAGE_SKRELLIANFAR = 0,
+ LANGUAGE_ROOTLOCAL = 0,
+ LANGUAGE_TRADEBAND = 1,
+ LANGUAGE_GUTTER = 0,
+ LANGUAGE_SCHECHI = 1,
+ LANGUAGE_EAL = 1,
+ LANGUAGE_TERMINUS = 1,
+ LANGUAGE_SIGN = 0
+ )
+
+/obj/item/weapon/robot_module/robot/booze
+ sprites = list(
+ "Beer Buddy" = "boozeborg",
+ "Brilliant Blue" = "boozeborg(blue)",
+ "Caffine Dispenser" = "boozeborg(coffee)",
+ "Gamer Juice Maker" = "boozeborg(green)",
+ "Liqour Licker" = "boozeborg(orange)",
+ "The Grapist" = "boozeborg(purple)",
+ "Vampire's Aid" = "boozeborg(red)",
+ "Vodka Komrade" = "boozeborg(vodka)"
+ )
+/obj/item/weapon/robot_module/robot/booze/New(var/mob/living/silicon/robot/R)
+ src.modules += new /obj/item/weapon/gripper/service(src)
+ //src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src)
+ //src.modules += new /obj/item/weapon/material/minihoe(src)
+ //src.modules += new /obj/item/device/analyzer/plant_analyzer(src)
+ //src.modules += new /obj/item/weapon/storage/bag/plants(src)
+ //src.modules += new /obj/item/weapon/robot_harvester(src)
+ src.modules += new /obj/item/weapon/material/knife(src)
+ src.modules += new /obj/item/weapon/material/kitchen/rollingpin(src)
+ src.modules += new /obj/item/device/multitool(src) //to freeze trays
+ src.modules += new /obj/item/weapon/dogborg/jaws/small(src)
+ src.modules += new /obj/item/device/dogborg/boop_module(src)
+ src.modules += new /obj/item/device/dogborg/sleeper/compactor/brewer(src)
+ src.modules += new /obj/item/weapon/reagent_containers/glass/beaker(src)//For holding the ALCOHOL
+ src.emag = new /obj/item/weapon/dogborg/pounce(src)
+ R.verbs += /mob/living/silicon/robot/proc/reskin_booze
+
+ var/obj/item/weapon/rsf/M = new /obj/item/weapon/rsf(src)
+ M.stored_matter = 30
+ src.modules += M
+
+ src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src)
+
+ /* Remembered this causes the dogs to catch on fire lol.
+ var/obj/item/weapon/flame/lighter/zippo/L = new /obj/item/weapon/flame/lighter/zippo(src)
+ L.lit = 1
+ src.modules += L
+ */
+
+ var/datum/matter_synth/water = new /datum/matter_synth()
+ water.name = "Water reserves"
+ water.recharge_rate = 0.1 // Recharging water for plants - hehe drooly borg
+ water.max_energy = 1000
+ water.energy = 0
+ R.water_res = water
+ synths += water
+
+ var/obj/item/device/dogborg/tongue/T = new /obj/item/device/dogborg/tongue(src)
+ T.water = water
+ src.modules += T
+
+
+ src.modules += new /obj/item/weapon/tray/robotray(src)
+ src.modules += new /obj/item/weapon/reagent_containers/borghypo/service/booze(src)
+ src.emag = new /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer(src)
+
+ var/datum/reagents/N = new/datum/reagents(50)
+ src.emag.reagents = N
+ N.my_atom = src.emag
+ N.add_reagent("beer2", 50)
+ src.emag.name = "Mickey Finn's Special Brew"
+
+ R.can_buckle = 1
+ R.icon = 'icons/mob/widerobot_colors_vr.dmi'
+ R.hands.icon = 'icons/mob/screen1_robot_vr.dmi'
+ R.ui_style_vr = TRUE
+ R.pixel_x = -16
+ R.old_x = -16
+ R.default_pixel_x = -16
+ R.dogborg = TRUE
+ R.wideborg = TRUE
+ R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill
+ ..()
+
+/obj/item/weapon/robot_module/robot/booze/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
+ var/obj/item/weapon/reagent_containers/food/condiment/enzyme/E = locate() in src.modules
+ E.reagents.add_reagent("enzyme", 2 * amount)
+ if(src.emag)
+ var/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer/B = src.emag
+ B.reagents.add_reagent("beer2", 2 * amount)
+
+//BORGHYPO
+/obj/item/weapon/reagent_containers/borghypo/service/booze
+ name = "cyborg drink synthesizer"
+ desc = "A portable drink dispencer."
+ icon = 'icons/obj/drinks.dmi'
+ icon_state = "shaker"
+ charge_cost = 20
+ recharge_time = 3
+ volume = 120
+ possible_transfer_amounts = list(1 ,5, 10, 20, 30)
+
+//Resking proc for boozos
+
+/mob/living/silicon/robot/proc/reskin_booze()
+ set name = "Change Drink Color"
+ set category = "Robot Commands"
+ set desc = "Choose the color of drink displayed inside you."
+
+ var/mob/M = usr
+ var/list/options = list()
+ options["Beer"] = "Beer Buddy"
+ options["Curacao"] = "Brilliant Blue"
+ options["Coffee"] = "Caffine Dispenser"
+ options["Space Mountain Wind"] = "Gamer Juice Maker"
+ options["Whiskey Soda"] = "Liqour Licker"
+ options["Grape Soda"] = "The Grapist"
+ options["Demon's Blood"] = "Vampire's Aid"
+ options["Slav Vodka"] = "Vodka Komrade"
+ var/choice = input(M,"Choose your drink!") in options
+ if(src && choice && !M.stat && in_range(M,src))
+ icontype = options[choice]
+ var/active_sound = 'sound/effects/bubbles.ogg'
+ playsound(src.loc, "[active_sound]", 100, 0, 4)
+ M << "Your Tank now displays [choice]. Drink up and enjoy!"
+ updateicon()
+ return 1
+
+//SLEEPER "Brewer"
+/obj/item/device/dogborg/sleeper/compactor/brewer //Boozehound gut.
+ name = "Brew Belly"
+ desc = "A mounted drunk tank unit with fuel processor."
+ icon_state = "brewer"
+ injection_chems = list("vodka","beer","gin") //Injected alcohol is 3 times as strong
+ max_item_count = 1
+
+/obj/item/device/dogborg/sleeper/compactor/brewer/inject_chem(mob/user, chem)
+ if(patient && patient.reagents)
+ if(chem in injection_chems + "inaprovaline")
+ if(hound.cell.charge < 200) //This is so borgs don't kill themselves with it.
+ to_chat(hound, "You don't have enough power to synthesize fluids.")
+ return
+ else if(patient.reagents.get_reagent_amount(chem) + 10 >= 50) //Preventing people from accidentally killing themselves by trying to inject too many chemicals!
+ to_chat(hound, "Your stomach is currently too full of fluids to secrete more fluids of this kind.")
+ else if(patient.reagents.get_reagent_amount(chem) + 10 <= 50) //No overdoses for you
+ patient.reagents.add_reagent(chem, inject_amount)
+ drain(100) //-100 charge per injection
+ var/units = round(patient.reagents.get_reagent_amount(chem))
+ to_chat(hound, "Injecting [units] unit\s into occupant.") //If they were immersed, the reagents wouldn't leave with them.
diff --git a/icons/mob/dogborg_vr.dmi b/icons/mob/dogborg_vr.dmi
index 78d646c6aa..f01e8902ca 100644
Binary files a/icons/mob/dogborg_vr.dmi and b/icons/mob/dogborg_vr.dmi differ
diff --git a/icons/mob/screen1_robot_vr.dmi b/icons/mob/screen1_robot_vr.dmi
index 3c8a67154e..9b51034d10 100644
Binary files a/icons/mob/screen1_robot_vr.dmi and b/icons/mob/screen1_robot_vr.dmi differ
diff --git a/vorestation.dme b/vorestation.dme
index f79e25cc22..ff8f940d16 100644
--- a/vorestation.dme
+++ b/vorestation.dme
@@ -1955,6 +1955,7 @@
#include "code\modules\food\kitchen\gibber.dm"
#include "code\modules\food\kitchen\icecream.dm"
#include "code\modules\food\kitchen\microwave.dm"
+#include "code\modules\food\kitchen\microwave_ch.dm"
#include "code\modules\food\kitchen\smartfridge.dm"
#include "code\modules\food\kitchen\smartfridge_vr.dm"
#include "code\modules\food\kitchen\cooking_machines\_cooker.dm"
@@ -2474,6 +2475,7 @@
#include "code\modules\mob\living\silicon\robot\robot_modules\station_vr.dm"
#include "code\modules\mob\living\silicon\robot\robot_modules\swarm.dm"
#include "code\modules\mob\living\silicon\robot\robot_modules\syndicate.dm"
+#include "code\modules\mob\living\silicon\robot\subtypes\boozeborg_ch.dm"
#include "code\modules\mob\living\silicon\robot\subtypes\gravekeeper.dm"
#include "code\modules\mob\living\silicon\robot\subtypes\lost_drone.dm"
#include "code\modules\mob\living\silicon\robot\subtypes\lost_drone_vr.dm"