diff --git a/code/__DEFINES/machines.dm b/code/__DEFINES/machines.dm
index d0d6269c1e..1ce5b88945 100644
--- a/code/__DEFINES/machines.dm
+++ b/code/__DEFINES/machines.dm
@@ -30,7 +30,8 @@
#define LIMBGROWER (1<<6) //Uses synthetic flesh
#define SMELTER (1<<7) //uses various minerals
#define AUTOYLATHE (1<<8) // CITADEL ADD
-#define NANITE_COMPILER (1<<9) //Prints nanite disks
+#define NANITE_COMPILER (1<<9) //Prints nanite disks
+#define AUTOBOTTLER (1<<10) //Uses booze, for printing
//Note: More then one of these can be added to a design but imprinter and lathe designs are incompatable.
//Modular computer/NTNet defines
diff --git a/code/game/objects/items/circuitboards/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machine_circuitboards.dm
index 1059a310eb..6989557127 100644
--- a/code/game/objects/items/circuitboards/machine_circuitboards.dm
+++ b/code/game/objects/items/circuitboards/machine_circuitboards.dm
@@ -983,3 +983,12 @@
name = "Ore Silo (Machine Board)"
build_path = /obj/machinery/ore_silo
req_components = list()
+
+/obj/item/circuitboard/machine/autobottler
+ name = "Auto-Bottler (Machine Board)"
+ build_path = /obj/machinery/rnd/production/protolathe/department/autobottler //Manips make you print things cheaper, even chems
+ req_components = list(/obj/item/stock_parts/matter_bin = 5,
+ /obj/item/stack/sheet/glass = 2,
+ /obj/item/stock_parts/capacitor = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/reagent_containers/glass/beaker = 6) //So it can hold lots of chems
\ No newline at end of file
diff --git a/code/modules/cargo/exports/parts.dm b/code/modules/cargo/exports/parts.dm
index 1a2bbdd35f..33f6559446 100644
--- a/code/modules/cargo/exports/parts.dm
+++ b/code/modules/cargo/exports/parts.dm
@@ -70,7 +70,7 @@
export_types = list(/obj/item/stock_parts/cell)
include_subtypes = TRUE
-/datum/export/cell
+/datum/export/cellupgraded
cost = 10
unit_name = "upgraded power cell"
export_types = list(/obj/item/stock_parts/cell/upgraded, /obj/item/stock_parts/cell/upgraded/plus)
diff --git a/code/modules/food_and_drinks/autobottler.dm b/code/modules/food_and_drinks/autobottler.dm
new file mode 100644
index 0000000000..6d5e0508a9
--- /dev/null
+++ b/code/modules/food_and_drinks/autobottler.dm
@@ -0,0 +1,18 @@
+/obj/machinery/rnd/production/protolathe/department/autobottler //We want to link with Rnd
+ name = "auto bottler"
+ desc = "Takes glass, metal and booze to make exports."
+ icon_state = "protolathe"
+ circuit = /obj/item/circuitboard/machine/autobottler
+ categories = list(
+ "Wines",
+ "Beers",
+ "Brands",
+ "Storge",
+ )
+ production_animation = "protolathe_n"
+ allowed_buildtypes = AUTOBOTTLER
+
+//Brands - This is just export verson of the booze bottles
+//Storge - Just the bottles not booze inside
+//Wines - Holds wines later made by Sci nodes
+//Beers - Holds beers later made by Sci nodes
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm
index e72b624ae5..1cb7700faf 100644
--- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm
+++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm
@@ -133,18 +133,27 @@
icon_state = "ginbottle"
list_reagents = list("gin" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/gin/empty
+ list_reagents = list("gin" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/whiskey
name = "Uncle Git's special reserve"
desc = "A premium single-malt whiskey, gently matured inside the tunnels of a nuclear shelter. TUNNEL WHISKEY RULES."
icon_state = "whiskeybottle"
list_reagents = list("whiskey" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/whiskey/empty
+ list_reagents = list("whiskey" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/vodka
name = "Tunguska triple distilled"
desc = "Aah, vodka. Prime choice of drink AND fuel by Russians worldwide."
icon_state = "vodkabottle"
list_reagents = list("vodka" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/vodka/empty
+ list_reagents = list("vodka" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/vodka/badminka
name = "Badminka vodka"
desc = "The label's written in Cyrillic. All you can make out is the name and a word that looks vaguely like 'Vodka'."
@@ -157,6 +166,9 @@
icon_state = "tequilabottle"
list_reagents = list("tequila" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/tequila/empty
+ list_reagents = list("tequila" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/bottleofnothing
name = "bottle of nothing"
desc = "A bottle filled with nothing."
@@ -164,18 +176,27 @@
list_reagents = list("nothing" = 100)
foodtype = NONE
+/obj/item/reagent_containers/food/drinks/bottle/bottleofnothing/empty
+ list_reagents = list("nothing" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/patron
name = "Wrapp Artiste Patron"
desc = "Silver laced tequila, served in space night clubs across the galaxy."
icon_state = "patronbottle"
list_reagents = list("patron" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/patron/empty
+ list_reagents = list("patron" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/rum
name = "Captain Pete's Cuban spiced rum"
desc = "This isn't just rum, oh no. It's practically GRIFF in a bottle."
icon_state = "rumbottle"
list_reagents = list("rum" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/rum/empty
+ list_reagents = list("rum" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/holywater
name = "flask of holy water"
desc = "A flask of the chaplain's holy water."
@@ -207,6 +228,9 @@
icon_state = "vermouthbottle"
list_reagents = list("vermouth" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/vermouth/empty
+ list_reagents = list("vermouth" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/kahlua
name = "Robert Robust's coffee liqueur"
desc = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936, HONK."
@@ -214,18 +238,27 @@
list_reagents = list("kahlua" = 100)
foodtype = VEGETABLES
+/obj/item/reagent_containers/food/drinks/bottle/kahlua/empty
+ list_reagents = list("kahlua" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/goldschlager
name = "College Girl goldschlager"
desc = "Because they are the only ones who will drink 100 proof cinnamon schnapps."
icon_state = "goldschlagerbottle"
list_reagents = list("goldschlager" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/goldschlager/empty
+ list_reagents = list("goldschlager" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/cognac
name = "Chateau de Baton premium cognac"
desc = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. You might as well not scream 'SHITCURITY' this time."
icon_state = "cognacbottle"
list_reagents = list("cognac" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/cognac/empty
+ list_reagents = list("cognac" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/wine
name = "Doublebeard's bearded special wine"
desc = "A faint aura of unease and asspainery surrounds the bottle."
@@ -233,12 +266,18 @@
list_reagents = list("wine" = 100)
foodtype = FRUIT | ALCOHOL
+/obj/item/reagent_containers/food/drinks/bottle/wine/empty
+ list_reagents = list("wine" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/absinthe
name = "extra-strong absinthe"
desc = "An strong alcoholic drink brewed and distributed by"
icon_state = "absinthebottle"
list_reagents = list("absinthe" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/absinthe/empty
+ list_reagents = list("absinthe" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/absinthe/Initialize()
. = ..()
redact()
@@ -300,18 +339,27 @@
volume = 50
list_reagents = list("hcider" = 50)
+/obj/item/reagent_containers/food/drinks/bottle/hcider/empty
+ list_reagents = list("hcider" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/grappa
name = "Phillipes well-aged Grappa"
desc = "Bottle of Grappa."
icon_state = "grappabottle"
list_reagents = list("grappa" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/grappa/empty
+ list_reagents = list("grappa" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/sake
name = "Ryo's traditional sake"
desc = "Sweet as can be, and burns like fire going down."
icon_state = "sakebottle"
list_reagents = list("sake" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/sake/empty
+ list_reagents = list("sake" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/sake/Initialize()
. = ..()
if(prob(10))
@@ -329,6 +377,9 @@
icon_state = "fernetbottle"
list_reagents = list("fernet" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/fernet/empty
+ list_reagents = list("fernet" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/applejack
name = "Buckin' Bronco's Applejack"
desc = "Kicks like a horse, tastes like an apple!"
@@ -336,18 +387,27 @@
list_reagents = list("applejack" = 100)
foodtype = FRUIT
+/obj/item/reagent_containers/food/drinks/bottle/applejack/empty
+ list_reagents = list("applejack" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/champagne
name = "Eau d' Dandy Brut Champagne"
desc = "Finely sourced from only the most pretentious French vineyards."
icon_state = "champagne_bottle"
list_reagents = list("champagne" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/champagne/empty
+ list_reagents = list("champagne" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/blazaam
name = "Ginbad's Blazaam"
desc = "You feel like you should give the bottle a good rub before opening."
icon_state = "blazaambottle"
list_reagents = list("blazaam" = 100)
+/obj/item/reagent_containers/food/drinks/bottle/blazaam/empty
+ list_reagents = list("blazaam" = 0)
+
/obj/item/reagent_containers/food/drinks/bottle/trappist
name = "Mont de Requin Trappistes Bleu"
desc = "Brewed in space-Belgium. Fancy!"
@@ -355,6 +415,8 @@
volume = 50
list_reagents = list("trappist" = 50)
+/obj/item/reagent_containers/food/drinks/bottle/trappist/empty
+ list_reagents = list("trappist" = 0)
//////////////////////////JUICES AND STUFF ///////////////////////
@@ -420,6 +482,8 @@
list_reagents = list("grenadine" = 100)
foodtype = FRUIT
+/obj/item/reagent_containers/food/drinks/bottle/grenadine/empty
+ list_reagents = list("grenadine" = 0)
////////////////////////// MOLOTOV ///////////////////////
/obj/item/reagent_containers/food/drinks/bottle/molotov
@@ -487,3 +551,105 @@
to_chat(user, "You snuff out the flame on [src].")
cut_overlay(GLOB.fire_overlay)
active = 0
+
+/obj/item/export/bottle/attack_self(mob/user)
+ to_chat(user, "The seal seems fine. Best to not open it.")
+ return
+
+/obj/item/export/bottle
+ name = "Report this please"
+ desc = "A sealed bottle of alcohol, ready to be exported"
+ force = 0
+ throwforce = 0
+ throw_speed = 0
+ throw_range = 0
+ w_class = WEIGHT_CLASS_TINY
+ item_state = "beer"
+ hitsound = 'sound/weapons/bladeslice.ogg'
+ attack_verb = list("boop", "thunked", "shown")
+
+/obj/item/export/bottle/gin
+ name = "Sealed Gin"
+
+/obj/item/export/bottle/wine
+ name = "Sealed Wine"
+
+/obj/item/export/bottle/whiskey
+ name = "Sealed Whiskey"
+
+/obj/item/export/bottle/vodka
+ name = "Sealed Vodka"
+
+/obj/item/export/bottle/tequila
+ name = "Sealed Tequila"
+
+/obj/item/export/bottle/patron
+ name = "Sealed Patron"
+
+/obj/item/export/bottle/rum
+ name = "Sealed Rum"
+
+/obj/item/export/bottle/vermouth
+ name = "Sealed Vermouth"
+
+/obj/item/export/bottle/kahlua
+ name = "Sealed Kahlua"
+
+/obj/item/export/bottle/goldschlager
+ name = "Sealed Goldschlager"
+
+/obj/item/export/bottle/hcider
+ name = "Sealed Cider"
+
+/obj/item/export/bottle/cognac
+ name = "Sealed Cognac"
+
+/obj/item/export/bottle/absinthe
+ name = "Sealed Unmarked Absinthe"
+
+/obj/item/export/bottle/grappa
+ name = "Sealed Grappa"
+
+/obj/item/export/bottle/sake
+ name = "Sealed Sake"
+
+/obj/item/export/bottle/fernet
+ name = "Sealed Fernet"
+
+/obj/item/export/bottle/applejack
+ name = "Sealed Applejack"
+
+/obj/item/export/bottle/champagne
+ name = "Sealed Champagne"
+
+/obj/item/export/bottle/blazaam
+ name = "Sealed Blazaam"
+
+/obj/item/export/bottle/trappist
+ name = "Sealed Trappist"
+
+/obj/item/export/bottle/grenadine
+ name = "Sealed Grenadine"
+
+/obj/item/export/bottle/minikeg
+ name = "Mini-Beer Keg"
+ desc = "A small wooden barrle with metal rings, untapped beer inside."
+
+/obj/item/export/bottle/blooddrop
+ name = "Blood Drop"
+ desc = "Large red bottle filled with a mix of wine and other named brands."
+
+/obj/item/export/bottle/slim_gold
+ name = "Slim Gold "
+ desc = "A gold looking yellow bottle that has a mix of different named brands."
+
+/obj/item/export/bottle/white_bloodmoon
+ name = "White Bloodmoon"
+ desc = "Rather simple bottle for this kind of drink."
+
+/obj/item/export/bottle/greenroad
+ name = "Green Road"
+ desc = "Ironic name as the fruit used is from ashy plants."
+
+
+
diff --git a/code/modules/research/designs/autobotter_designs.dm b/code/modules/research/designs/autobotter_designs.dm
new file mode 100644
index 0000000000..6555c8221f
--- /dev/null
+++ b/code/modules/research/designs/autobotter_designs.dm
@@ -0,0 +1,335 @@
+///////////////////////////////////
+//////////AutoBottler Designs//////
+///////////////////////////////////
+
+/datum/design/autobottler
+ name = "Machine Design (AutoBottler)"
+ desc = "Allows for the construction of circuit boards used to build an Autobottler."
+ id = "autobottler"
+ materials = list(MAT_GLASS = 2000)
+ build_path = /obj/item/circuitboard/machine/autobottler
+ category = list("Misc")
+ departmental_flags = DEPARTMENTAL_FLAG_CARGO
+
+/datum/design/bottle
+ materials = list(MAT_GLASS = 1200)
+ build_type = AUTOBOTTLER
+ category = list("Storge")
+
+/datum/design/bottle/wine
+ name = "Bottle Design (Wine)"
+ desc = "Allows for the blowing of Wine bottles."
+ id = "wine"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/wine/empty
+
+/datum/design/bottle/rum
+ name = "Bottle Design (Rum)"
+ desc = "Allows for the blowing of Rum bottles."
+ id = "rum"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/rum/empty
+
+/datum/design/bottle/gin
+ name = "Bottle Design (Gin)"
+ desc = "Allows for the blowing of Gin bottles."
+ id = "gin"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/gin/empty
+
+/datum/design/bottle/whiskey
+ name = "Bottle Design (Whiskey)"
+ desc = "Allows for the blowing of Whiskey bottles."
+ id = "whiskey"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/whiskey/empty
+
+/datum/design/bottle/vodka
+ name = "Bottle Design (Vodka)"
+ desc = "Allows for the blowing of Vodka bottles."
+ id = "vodka"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/vodka/empty
+
+/datum/design/bottle/tequila
+ name = "Bottle Design (Tequila)"
+ desc = "Allows for the blowing of Tequila bottles."
+ id = "tequila"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/tequila/empty
+
+/datum/design/bottle/patron
+ name = "Bottle Design (Patron)"
+ desc = "Allows for the blowing of Patron bottles."
+ id = "patron"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/patron/empty
+
+/datum/design/bottle/kahlua
+ name = "Bottle Design (Kahlua)"
+ desc = "Allows for the blowing of Kahlua bottles."
+ id = "kahlua"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/kahlua/empty
+
+/datum/design/bottle/sake
+ name = "Bottle Design (Sake)"
+ desc = "Allows for the blowing of Sake bottles."
+ id = "sake"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/sake/empty
+
+/datum/design/bottle/vermouth
+ name = "Bottle Design (Vermouth)"
+ desc = "Allows for the blowing of Vermouth bottles."
+ id = "vermouth"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/vermouth/empty
+
+/datum/design/bottle/goldschlager
+ name = "Bottle Design (Goldschlager)"
+ desc = "Allows for the blowing of Goldschlager bottles."
+ id = "goldschlager"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/goldschlager/empty
+
+/datum/design/bottle/hcider
+ name = "Bottle Design (Cider)"
+ desc = "Allows for the blowing of Cider bottles."
+ id = "hcider"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/hcider/empty
+
+/datum/design/bottle/cognac
+ name = "Bottle Design (Cognac)"
+ desc = "Allows for the blowing of Cognac bottles."
+ id = "cognac"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/cognac/empty
+
+/datum/design/bottle/absinthe
+ name = "Bottle Design (Absinthe)"
+ desc = "Allows for the blowing of Absinthe bottles."
+ id = "absinthe"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/absinthe/empty
+
+/datum/design/bottle/grappa
+ name = "Bottle Design (Grappa)"
+ desc = "Allows for the blowing of Grappa bottles."
+ id = "grappa"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/grappa/empty
+
+/datum/design/bottle/fernet
+ name = "Bottle Design (Fernet)"
+ desc = "Allows for the blowing of Fernet bottles."
+ id = "fernet"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/fernet/empty
+
+/datum/design/bottle/applejack
+ name = "Bottle Design (Applejack)"
+ desc = "Allows for the blowing of Applejack bottles."
+ id = "applejack"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/applejack/empty
+
+/datum/design/bottle/champagne
+ name = "Bottle Design (Champagne)"
+ desc = "Allows for the blowing of Champagne bottles."
+ id = "champagne"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/champagne/empty
+
+/datum/design/bottle/blazaam
+ name = "Bottle Design (Blazaam)"
+ desc = "Allows for the blowing of Blazaam bottles."
+ id = "blazaam"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/blazaam/empty
+
+/datum/design/bottle/trappist
+ name = "Bottle Design (Trappist)"
+ desc = "Allows for the blowing of Trappist bottles."
+ id = "trappist"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/trappist/empty
+
+/datum/design/bottle/grenadine
+ name = "Bottle Design (Grenadine)"
+ desc = "Allows for the blowing of Grenadine bottles."
+ id = "grenadine"
+ build_path = /obj/item/reagent_containers/food/drinks/bottle/grenadine/empty
+
+/datum/design/bottle/export
+ materials = list(MAT_GLASS = 1200)
+ build_type = AUTOBOTTLER
+ category = list("Brands")
+
+/datum/design/bottle/export/wine
+ name = "Export Design (Wine)"
+ desc = "Allows for the blowing, and bottling of Wine bottles."
+ id = "wine_export"
+ reagents_list = list("wine" = 100)
+ build_path = /obj/item/export/bottle/wine
+
+/datum/design/bottle/export/rum
+ name = "Export Design (Rum)"
+ desc = "Allows for the blowing, and bottling of Rum bottles."
+ id = "rum_export"
+ reagents_list = list("rum" = 100)
+ build_path = /obj/item/export/bottle/rum
+
+/datum/design/bottle/export/gin
+ name = "Export Design (Gin)"
+ desc = "Allows for the blowing, and bottling of Gin bottles."
+ id = "gin_export"
+ reagents_list = list("gin" = 100)
+ build_path = /obj/item/export/bottle/gin
+
+/datum/design/bottle/export/whiskey
+ name = "Export Design (Whiskey)"
+ desc = "Allows for the blowing, and bottling of Whiskey bottles."
+ id = "whiskey_export"
+ reagents_list = list("whiskey" = 100)
+ build_path = /obj/item/export/bottle/whiskey
+
+/datum/design/bottle/export/vodka
+ name = "Export Design (Vodka)"
+ desc = "Allows for the blowing, and bottling of 99% Vodka bottles."
+ id = "vodka_export"
+ reagents_list = list("vodka" = 99, "water" = 1)
+ build_path = /obj/item/export/bottle/vodka
+
+/datum/design/bottle/export/tequila
+ name = "Export Design (Tequila)"
+ desc = "Allows for the blowing, and bottling of Tequila bottles."
+ id = "tequila_export"
+ reagents_list = list("tequila" = 80, "lemon _juice" = 20)
+ build_path = /obj/item/export/bottle/tequila
+
+/datum/design/bottle/export/patron
+ name = "Export Design (Patron)"
+ desc = "Allows for the blowing, and bottling of Patron bottles."
+ id = "patron_export"
+ reagents_list = list("patron" = 100)
+ build_path = /obj/item/export/bottle/patron
+
+/datum/design/bottle/export/kahlua
+ name = "Export Design (Kahlua)"
+ desc = "Allows for the blowing, and bottling of Kahlua bottles."
+ id = "kahlua_export"
+ reagents_list = list("kahlua" = 100)
+ build_path = /obj/item/export/bottle/kahlua
+
+/datum/design/bottle/export/sake
+ name = "Export Design (Sake)"
+ desc = "Allows for the blowing, and bottling of Sake bottles."
+ id = "sake_export"
+ reagents_list = list("sake" = 80, "rice" = 10, "sugar" = 10)
+ build_path = /obj/item/export/bottle/sake
+
+/datum/design/bottle/export/vermouth
+ name = "Export Design (Vermouth)"
+ desc = "Allows for the blowing, and bottling of Vermouth bottles."
+ id = "vermouth_export"
+ reagents_list = list("vermouth" = 100)
+ build_path = /obj/item/export/bottle/vermouth
+
+/datum/design/bottle/export/goldschlager
+ name = "Export Design (Goldschlager)"
+ desc = "Allows for the blowing, and bottling of Goldschlager bottles."
+ id = "goldschlager_export"
+ reagents_list = list("goldschlager" = 100)
+ build_path = /obj/item/export/bottle/goldschlager
+
+/datum/design/bottle/export/hcider
+ name = "Export Design (Cider)"
+ desc = "Allows for the blowing, and bottling of Cider bottles."
+ id = "hcider_export"
+ reagents_list = list("hcider" = 30, "water" = 20)
+ build_path = /obj/item/export/bottle/hcider
+
+/datum/design/bottle/export/cognac
+ name = "Export Design (Cognac)"
+ desc = "Allows for the blowing, and bottling of Cognac bottles."
+ id = "cognac_export"
+ reagents_list = list("cognac" = 100)
+ build_path = /obj/item/export/bottle/cognac
+
+/datum/design/bottle/export/absinthe
+ name = "Export Design (Absinthe)"
+ desc = "Allows for the blowing, and bottling of Absinthe bottles."
+ reagents_list = list("absinthe" = 100)
+ id = "absinthe_export"
+ build_path = /obj/item/export/bottle/absinthe
+
+/datum/design/bottle/export/grappa
+ name = "Export Design (Grappa)"
+ desc = "Allows for the blowing, and bottling of Grappa bottles."
+ id = "grappa_export"
+ reagents_list = list("grappa" = 100)
+ build_path = /obj/item/export/bottle/grappa
+
+/datum/design/bottle/export/fernet
+ name = "Export Design (Fernet)"
+ desc = "Allows for the blowing, and bottling of Fernet bottles."
+ id = "fernet_export"
+ reagents_list = list("fernet" = 100)
+ build_path = /obj/item/export/bottle/fernet
+
+/datum/design/bottle/export/applejack
+ name = "Export Design (Applejack)"
+ desc = "Allows for the blowing, and bottling of Applejack bottles."
+ id = "applejack_export"
+ reagents_list = list("applejack" = 50)
+ build_path = /obj/item/export/bottle/applejack
+
+/datum/design/bottle/export/champagne
+ name = "Export Design (Champagne)"
+ desc = "Allows for the blowing, and bottling of Champagne bottles."
+ id = "champagne_export"
+ reagents_list = list("champagne" = 90, "co2" = 10)
+ build_path = /obj/item/export/bottle/champagne
+
+/datum/design/bottle/export/blazaam
+ name = "Export Design (Blazaam)"
+ desc = "Allows for the blowing, and bottling of Blazaam bottles."
+ id = "blazaam_export"
+ reagents_list = list("blazaam" = 80, "holywater" = 20)
+ build_path = /obj/item/export/bottle/blazaam
+
+/datum/design/bottle/export/trappist
+ name = "Export Design (Trappist)"
+ desc = "Allows for the blowing, and bottling of Trappist bottles."
+ id = "trappist_export"
+ reagents_list = list("trappist" = 100)
+ build_path = /obj/item/export/bottle/trappist
+
+/datum/design/bottle/export/grenadine
+ name = "Export Design (Grenadine)"
+ desc = "Allows for the blowing, and bottling of Grenadine bottles."
+ id = "grenadine_export"
+ reagents_list = list("grenadine" = 100)
+ build_path = /obj/item/export/bottle/grenadine
+
+/datum/design/bottle/export/minikeg
+ name = "Export Design (minikeg)"
+ desc = "Allows for the fabication, and bottling of Minikeg of craft beer."
+ id = "minikeg_export"
+ category = list("Beers")
+ reagents_list = list("beer" = 100)
+ build_path = /obj/item/export/bottle/minikeg
+
+/datum/design/bottle/export/blooddrop
+ name = "Export Design (Blooddrop)"
+ desc = "Allows for the blowing, and bottling of Blooddrop bottles."
+ id = "blooddrop_export"
+ category = list("Wines")
+ reagents_list = list("champagne" = 30, "co2" = 30, "wine" = 10, "grape_juice" = 30)
+ build_path = /obj/item/export/bottle/blooddrop
+
+/datum/design/bottle/export/slim_gold
+ name = "Export Design (Slim Gold)"
+ desc = "Allows for the blowing, and bottling of Slim Gold bottles."
+ id = "slim_gold_export"
+ category = list("Beers")
+ reagents_list = list("gold" = 10, "co2" = 10, "rum" = 30, "beer" = 40)
+ build_path = /obj/item/export/bottle/slim_gold
+
+/datum/design/bottle/export/white_bloodmoon
+ name = "Export Design (White Bloodmoon)"
+ desc = "Allows for the blowing, and bottling of White Bloodmoon bottles."
+ id = "white_bloodmoon_export"
+ category = list("Wines")
+ reagents_list = list("synthflesh" = 50, "blood" = 50, "gib" = 10)
+ build_path = /obj/item/export/bottle/white_bloodmoon
+
+/datum/design/bottle/export/greenroad
+ name = "Export Design (Greenroad)"
+ desc = "Allows for the blowing, and bottling of Greenroad bottles."
+ id = "greenroad_export"
+ reagents_list = list("vitfro" = 50, "rum" = 50, "ash" = 10)
+ category = list("Beers")
+ build_path = /obj/item/export/bottle/greenroad
\ No newline at end of file
diff --git a/code/modules/research/techweb/_techweb.dm b/code/modules/research/techweb/_techweb.dm
index 1e554f112f..38c17080d4 100644
--- a/code/modules/research/techweb/_techweb.dm
+++ b/code/modules/research/techweb/_techweb.dm
@@ -376,3 +376,7 @@
/datum/techweb/specialized/autounlocking/autoylathe
design_autounlock_buildtypes = AUTOYLATHE
allowed_buildtypes = AUTOYLATHE
+
+/datum/techweb/specialized/autounlocking/autobottler
+ design_autounlock_buildtypes = AUTOBOTTLER
+ allowed_buildtypes = AUTOBOTTLER
\ No newline at end of file
diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm
index aea4192517..ba52489472 100644
--- a/code/modules/research/techweb/all_nodes.dm
+++ b/code/modules/research/techweb/all_nodes.dm
@@ -43,7 +43,6 @@
description = "Various tools fit for basic mech units"
design_ids = list("mech_drill", "mech_mscanner", "mech_extinguisher", "mech_cable_layer")
-
/datum/techweb_node/surplus_lims
id = "surplus_lims"
display_name = "Basic Prosthetics"
@@ -51,8 +50,20 @@
starting_node = TRUE
prereq_ids = list("biotech")
design_ids = list("basic_l_arm", "basic_r_arm", "basic_r_leg", "basic_l_leg")
- export_price = 5000
+/datum/techweb_node/blueprinted_bottles
+ id = "blueprinted_bottles"
+ display_name = "License Bottling"
+ description = "Some Branded bottles to print and export."
+ starting_node = TRUE
+ design_ids = list("gin", "wine", "whiskey", "vodka", "tequila", "patron", "rum", "kahlua", "vermouth", "goldschlager", "hcider", "cognac", "absinthe", "grappa", "sake", "fernet", "applejack", "champagne", "blazaam", "trappist", "grenadine")
+
+/datum/techweb_node/blueprinted_exports
+ id = "blueprinted_exports"
+ display_name = "License Exports"
+ description = "Some Branded bottles to print and export."
+ starting_node = TRUE
+ design_ids = list("gin_export", "wine_export", "whiskey_export", "vodka_export", "tequila_export", "patron_export", "rum_export", "kahlua_export", "vermouth_export", "goldschlager_export", "hcider_export", "cognac_export", "absinthe_export", "grappa_export", "sake_export", "fernet_export", "applejack_export", "champagne_export", "blazaam_export", "trappist_export", "grenadine_export")
/////////////////////////Biotech/////////////////////////
/datum/techweb_node/biotech
@@ -82,6 +93,13 @@
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
export_price = 5000
+/datum/techweb_node/bottle_exports
+ id = "bottle_exports"
+ display_name = "Legal Bottling"
+ description = "New bottles for printing and selling."
+ design_ids = list("minikeg", "blooddrop", "slim_gold", "white_bloodmoon", "greenroad")
+ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 250)
+
/datum/techweb_node/advance_lims
id = "advance_lims"
display_name = "Upgraded Prosthetics"
diff --git a/icons/mob/screen_gen.dmi b/icons/mob/screen_gen.dmi
index 3cd7388378..f1fafb8946 100644
Binary files a/icons/mob/screen_gen.dmi and b/icons/mob/screen_gen.dmi differ
diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi
index e8b3d434f5..5bcba5f7fc 100644
Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 344603efc1..3c422fc867 100755
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -1672,6 +1672,7 @@
#include "code\modules\fields\turf_objects.dm"
#include "code\modules\flufftext\Dreaming.dm"
#include "code\modules\flufftext\Hallucination.dm"
+#include "code\modules\food_and_drinks\autobottler.dm"
#include "code\modules\food_and_drinks\food.dm"
#include "code\modules\food_and_drinks\pizzabox.dm"
#include "code\modules\food_and_drinks\drinks\drinks.dm"
@@ -2610,6 +2611,7 @@
#include "code\modules\research\server.dm"
#include "code\modules\research\stock_parts.dm"
#include "code\modules\research\designs\AI_module_designs.dm"
+#include "code\modules\research\designs\autobotter_designs.dm"
#include "code\modules\research\designs\biogenerator_designs.dm"
#include "code\modules\research\designs\bluespace_designs.dm"
#include "code\modules\research\designs\computer_part_designs.dm"