From a68f0a7e4ee1781ce11657944f4458e74f289c34 Mon Sep 17 00:00:00 2001
From: InsightfulParasite
<109536843+InsightfulParasite@users.noreply.github.com>
Date: Fri, 17 May 2024 23:37:29 -0400
Subject: [PATCH] New Tablecrafting Catagories (#2102)
Tablecrafting is a bit bloated with the large amount of slime jelly doughnut varients and other stuff so ive made a new catagory and put the stranger recipies in there. I also made several odd recipies require to be learned first since they were contributing to the bloat.
moves around stuff
Create tools.dm
---
ModularTegustation/tegufood.dm | 4 +-
code/__DEFINES/construction.dm | 10 +-
code/_globalvars/lists/maintenance_loot.dm | 1 -
code/datums/components/crafting/crafting.dm | 49 +-
code/datums/components/crafting/recipes.dm | 1856 -----------------
.../components/crafting/recipes/_recipes.dm | 28 +
.../components/crafting/recipes/ammo.dm | 122 ++
.../crafting/recipes/carnival_silkcrafting.dm | 639 ++++++
.../{tailoring.dm => recipes/clothing.dm} | 227 +-
.../components/crafting/recipes/misc.dm | 195 ++
.../components/crafting/recipes/robots.dm | 97 +
.../components/crafting/recipes/structures.dm | 150 ++
.../components/crafting/recipes/tools.dm | 71 +
.../components/crafting/recipes/weapons.dm | 441 ++++
code/game/objects/items/food/pie.dm | 2 +-
code/game/objects/items/granters.dm | 98 +-
.../recipes/tablecraft/recipes_bread.dm | 53 -
.../recipes/tablecraft/recipes_burger.dm | 385 ----
.../recipes/tablecraft/recipes_cake.dm | 196 --
.../recipes/tablecraft/recipes_drink.dm | 61 +-
.../recipes/tablecraft/recipes_egg.dm | 53 -
.../recipes/tablecraft/recipes_frozen.dm | 312 ---
.../recipes/tablecraft/recipes_meat.dm | 76 -
.../recipes/tablecraft/recipes_misc.dm | 425 +++-
.../recipes/tablecraft/recipes_pastry.dm | 474 +++--
.../recipes/tablecraft/recipes_pie.dm | 220 --
.../recipes/tablecraft/recipes_pizza.dm | 23 -
.../recipes/tablecraft/recipes_salad.dm | 39 +-
.../recipes/tablecraft/recipes_sandwich.dm | 259 ++-
.../recipes/tablecraft/recipes_soup.dm | 111 +-
.../recipes/tablecraft/recipes_unusual.dm | 782 +++++++
code/modules/hydroponics/fermenting_barrel.dm | 2 +-
code/modules/mining/lavaland/ash_flora.dm | 2 +-
code/modules/paperwork/pen.dm | 2 +-
code/modules/vehicles/lavaboat.dm | 4 +-
lobotomy-corp13.dme | 17 +-
36 files changed, 3866 insertions(+), 3620 deletions(-)
delete mode 100644 code/datums/components/crafting/recipes.dm
create mode 100644 code/datums/components/crafting/recipes/_recipes.dm
create mode 100644 code/datums/components/crafting/recipes/ammo.dm
create mode 100644 code/datums/components/crafting/recipes/carnival_silkcrafting.dm
rename code/datums/components/crafting/{tailoring.dm => recipes/clothing.dm} (52%)
create mode 100644 code/datums/components/crafting/recipes/misc.dm
create mode 100644 code/datums/components/crafting/recipes/robots.dm
create mode 100644 code/datums/components/crafting/recipes/structures.dm
create mode 100644 code/datums/components/crafting/recipes/tools.dm
create mode 100644 code/datums/components/crafting/recipes/weapons.dm
delete mode 100644 code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
delete mode 100644 code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm
delete mode 100644 code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
delete mode 100644 code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
delete mode 100644 code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm
create mode 100644 code/modules/food_and_drinks/recipes/tablecraft/recipes_unusual.dm
diff --git a/ModularTegustation/tegufood.dm b/ModularTegustation/tegufood.dm
index 74cd0a2aae90..ae5d2c947abf 100644
--- a/ModularTegustation/tegufood.dm
+++ b/ModularTegustation/tegufood.dm
@@ -55,7 +55,7 @@
/obj/item/food/chocolatebar = 2
)
result = /obj/item/food/cake/bbird
- subcategory = CAT_CAKE
+ subcategory = CAT_PASTRY
/obj/item/food/sundae/jbird
name = "Judgement sundae"
@@ -74,7 +74,7 @@
/obj/item/food/icecream = 1
)
result = /obj/item/food/sundae/jbird
- subcategory = CAT_ICE
+ subcategory = CAT_MISCFOOD
/obj/item/food/apoctrifle
name = "Apocalypse trifle"
diff --git a/code/__DEFINES/construction.dm b/code/__DEFINES/construction.dm
index be5d8e956f43..a0ce93de168f 100644
--- a/code/__DEFINES/construction.dm
+++ b/code/__DEFINES/construction.dm
@@ -77,24 +77,22 @@
#define CAT_AMMO "Ammunition"
#define CAT_ROBOT "Robots"
#define CAT_MISC "Misc"
-#define CAT_PRIMAL "Tribal"
+#define CAT_TOOL "Tools"
+#define CAT_STRUCT "Structures"
#define CAT_CLOTHING "Clothing"
#define CAT_FOOD "Foods"
#define CAT_BREAD "Breads"
-#define CAT_BURGER "Burgers"
-#define CAT_CAKE "Cakes"
-#define CAT_EGG "Egg-Based Food"
#define CAT_MEAT "Meats"
#define CAT_MISCFOOD "Misc. Food"
#define CAT_PASTRY "Pastries"
-#define CAT_PIE "Pies"
#define CAT_PIZZA "Pizzas"
#define CAT_SALAD "Salads"
#define CAT_SANDWICH "Sandwiches"
#define CAT_SOUP "Soups"
#define CAT_SPAGHETTI "Spaghettis"
-#define CAT_ICE "Frozen"
+#define CAT_UNUSUAL "Unusual"
#define CAT_DRINK "Drinks"
+#define CAT_SILK "Silkcrafting"
// these aren't even used as bitflags so who even knows why they are treated like them
#define RCD_FLOORWALL (1<<0)
diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm
index 8a71d0de0db2..5958d160a1d1 100644
--- a/code/_globalvars/lists/maintenance_loot.dm
+++ b/code/_globalvars/lists/maintenance_loot.dm
@@ -247,7 +247,6 @@ GLOBAL_LIST_INIT(oddity_loot, list(//oddity: strange or crazy items
/obj/item/clothing/head/helmet/abductor = 1,
/obj/item/clothing/head/helmet/justice =1,
/obj/item/clothing/suit/space/hardsuit/carp = 1,
- /obj/item/book/granter/crafting_recipe/pipegun_prime =1,
/obj/item/dice/d20/fate/stealth/one_use = 1, //Looks like a d20, keep the d20 in the uncommon pool.
/obj/item/dice/d20/fate/stealth/cursed = 1, //Only rolls 1
/obj/item/clothing/shoes/jackboots/fast = 1,
diff --git a/code/datums/components/crafting/crafting.dm b/code/datums/components/crafting/crafting.dm
index 8b77f04a0803..cedee44257ec 100644
--- a/code/datums/components/crafting/crafting.dm
+++ b/code/datums/components/crafting/crafting.dm
@@ -17,32 +17,29 @@
var/viewing_category = 1 //typical powergamer starting on the Weapons tab
var/viewing_subcategory = 1
var/list/categories = list(
- CAT_WEAPONRY = list(
- CAT_WEAPON,
- CAT_AMMO,
- ),
- CAT_ROBOT = CAT_NONE,
- CAT_MISC = CAT_NONE,
- CAT_PRIMAL = CAT_NONE,
- CAT_FOOD = list(
- CAT_BREAD,
- CAT_BURGER,
- CAT_CAKE,
- CAT_EGG,
- CAT_ICE,
- CAT_MEAT,
- CAT_MISCFOOD,
- CAT_PASTRY,
- CAT_PIE,
- CAT_PIZZA,
- CAT_SALAD,
- CAT_SANDWICH,
- CAT_SOUP,
- CAT_SPAGHETTI,
- ),
- CAT_DRINK = CAT_NONE,
- CAT_CLOTHING = CAT_NONE,
- )
+ CAT_WEAPONRY = list(
+ CAT_WEAPON,
+ CAT_AMMO,
+ ),
+ CAT_MISC = CAT_NONE,
+ CAT_CLOTHING = CAT_NONE,
+ CAT_STRUCT = CAT_NONE,
+ CAT_FOOD = list(
+ CAT_BREAD,
+ CAT_MEAT,
+ CAT_PASTRY,
+ CAT_PIZZA,
+ CAT_SALAD,
+ CAT_SANDWICH,
+ CAT_SOUP,
+ CAT_SPAGHETTI,
+ CAT_UNUSUAL,
+ CAT_MISCFOOD,
+ ),
+ CAT_DRINK = CAT_NONE,
+ CAT_ROBOT = CAT_NONE,
+ CAT_SILK = CAT_NONE,
+ )
var/cur_category = CAT_NONE
var/cur_subcategory = CAT_NONE
diff --git a/code/datums/components/crafting/recipes.dm b/code/datums/components/crafting/recipes.dm
deleted file mode 100644
index 5216c617009a..000000000000
--- a/code/datums/components/crafting/recipes.dm
+++ /dev/null
@@ -1,1856 +0,0 @@
-
-/datum/crafting_recipe
- var/name = "" //in-game display name
- var/list/reqs = list() //type paths of items consumed associated with how many are needed
- var/list/blacklist = list() //type paths of items explicitly not allowed as an ingredient
- var/result //type path of item resulting from this craft
- var/list/tools = list() //type paths of items needed but not consumed
- var/time = 30 //time in deciseconds
- var/list/parts = list() //type paths of items that will be placed in the result
- var/list/chem_catalysts = list() //like tools but for reagents
- var/category = CAT_NONE //where it shows up in the crafting UI
- var/subcategory = CAT_NONE
- var/always_available = TRUE //Set to FALSE if it needs to be learned first.
- /// Additonal requirements text shown in UI
- var/additional_req_text
-
-/datum/crafting_recipe/New()
- if(!(result in reqs))
- blacklist += result
-
-/**
- * Run custom pre-craft checks for this recipe
- *
- * user: The /mob that initiated the crafting
- * collected_requirements: A list of lists of /obj/item instances that satisfy reqs. Top level list is keyed by requirement path.
- */
-/datum/crafting_recipe/proc/check_requirements(mob/user, list/collected_requirements)
- return TRUE
-
-/datum/crafting_recipe/improv_explosive
- name = "IED"
- result = /obj/item/grenade/iedcasing
- reqs = list(/datum/reagent/fuel = 50,
- /obj/item/stack/cable_coil = 1,
- /obj/item/assembly/igniter = 1,
- /obj/item/reagent_containers/food/drinks/soda_cans = 1)
- parts = list(/obj/item/reagent_containers/food/drinks/soda_cans = 1)
- time = 15
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/lance
- name = "Explosive Lance (Grenade)"
- result = /obj/item/spear/explosive
- reqs = list(/obj/item/spear = 1,
- /obj/item/grenade = 1)
- blacklist = list(/obj/item/spear/bonespear)
- parts = list(/obj/item/spear = 1,
- /obj/item/grenade = 1)
- time = 15
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/strobeshield
- name = "Strobe Shield"
- result = /obj/item/shield/riot/flash
- reqs = list(/obj/item/wallframe/flasher = 1,
- /obj/item/assembly/flash/handheld = 1,
- /obj/item/shield/riot = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/strobeshield/New()
- ..()
- blacklist |= subtypesof(/obj/item/shield/riot/)
-
-/datum/crafting_recipe/molotov
- name = "Molotov"
- result = /obj/item/reagent_containers/food/drinks/bottle/molotov
- reqs = list(/obj/item/reagent_containers/glass/rag = 1,
- /obj/item/reagent_containers/food/drinks/bottle = 1)
- parts = list(/obj/item/reagent_containers/food/drinks/bottle = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/stunprod
- name = "Stunprod"
- result = /obj/item/melee/baton/cattleprod
- reqs = list(/obj/item/restraints/handcuffs/cable = 1,
- /obj/item/stack/rods = 1,
- /obj/item/assembly/igniter = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/teleprod
- name = "Teleprod"
- result = /obj/item/melee/baton/cattleprod/teleprod
- reqs = list(/obj/item/restraints/handcuffs/cable = 1,
- /obj/item/stack/rods = 1,
- /obj/item/assembly/igniter = 1,
- /obj/item/stack/ore/bluespace_crystal = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/bola
- name = "Bola"
- result = /obj/item/restraints/legcuffs/bola
- reqs = list(/obj/item/restraints/handcuffs/cable = 1,
- /obj/item/stack/sheet/metal = 6)
- time = 20//15 faster than crafting them by hand!
- category= CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/gonbola
- name = "Gonbola"
- result = /obj/item/restraints/legcuffs/bola/gonbola
- reqs = list(/obj/item/restraints/handcuffs/cable = 1,
- /obj/item/stack/sheet/metal = 6,
- /obj/item/stack/sheet/animalhide/gondola = 1)
- time = 40
- category= CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/tailclub
- name = "Tail Club"
- result = /obj/item/tailclub
- reqs = list(/obj/item/organ/tail/lizard = 1,
- /obj/item/stack/sheet/metal = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/tailwhip
- name = "Liz O' Nine Tails"
- result = /obj/item/melee/chainofcommand/tailwhip
- reqs = list(/obj/item/organ/tail/lizard = 1,
- /obj/item/stack/cable_coil = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/catwhip
- name = "Cat O' Nine Tails"
- result = /obj/item/melee/chainofcommand/tailwhip/kitty
- reqs = list(/obj/item/organ/tail/cat = 1,
- /obj/item/stack/cable_coil = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/reciever
- name = "Modular Rifle Reciever"
- tools = list(TOOL_WRENCH, TOOL_WELDER, TOOL_SAW)
- result = /obj/item/weaponcrafting/receiver
- reqs = list(/obj/item/stack/sheet/metal = 5,
- /obj/item/stack/sticky_tape = 1,
- /obj/item/screwdriver = 1,
- /obj/item/assembly/mousetrap = 1)
- time = 100
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/riflestock
- name = "Wooden Rifle Stock"
- tools = list(/obj/item/hatchet)
- result = /obj/item/weaponcrafting/stock
- reqs = list(/obj/item/stack/sheet/mineral/wood = 8,
- /obj/item/stack/sticky_tape = 1)
- time = 50
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/advancedegun
- name = "Advanced Energy Gun"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/e_gun/nuclear
- reqs = list(/obj/item/gun/energy/e_gun = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/nuclear = 1)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/advancedegun/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/e_gun)
-
-/datum/crafting_recipe/tempgun
- name = "Temperature Gun"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/temperature
- reqs = list(/obj/item/gun/energy/e_gun = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/temperature = 1)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/tempgun/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/e_gun)
-
-/datum/crafting_recipe/beam_rifle
- name = "Particle Acceleration Rifle"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/beam_rifle
- reqs = list(/obj/item/gun/energy/e_gun = 1,
- /obj/item/assembly/signaler/anomaly/flux = 1,
- /obj/item/assembly/signaler/anomaly/grav = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/beam_rifle = 1)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/beam_rifle/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/e_gun)
-
-/datum/crafting_recipe/ebow
- name = "Energy Crossbow"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/kinetic_accelerator/crossbow/large
- reqs = list(/obj/item/gun/energy/kinetic_accelerator = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/ebow = 1,
- /datum/reagent/uranium/radium = 15)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/ebow/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/kinetic_accelerator)
-
-/datum/crafting_recipe/xraylaser
- name = "X-ray Laser Gun"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/xray
- reqs = list(/obj/item/gun/energy/laser = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/xray = 1)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/xraylaser/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/laser)
-
-/datum/crafting_recipe/hellgun
- name = "Hellfire Laser Gun"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/laser/hellgun
- reqs = list(/obj/item/gun/energy/laser = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/hellgun = 1)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/hellgun/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/laser)
-
-/datum/crafting_recipe/ioncarbine
- name = "Ion Carbine"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/ionrifle/carbine
- reqs = list(/obj/item/gun/energy/laser = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/ion = 1)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/ioncarbine/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/laser)
-
-/datum/crafting_recipe/decloner
- name = "Biological Demolecularisor"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/decloner
- reqs = list(/obj/item/gun/energy/laser = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/decloner = 1,
- /datum/reagent/baldium = 30,
- /datum/reagent/toxin/mutagen = 40)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/decloner/New()
- ..()
- blacklist += subtypesof(/obj/item/gun/energy/laser)
-
-/datum/crafting_recipe/teslacannon
- name = "Tesla Cannon"
- tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
- result = /obj/item/gun/energy/tesla_cannon
- reqs = list(/obj/item/assembly/signaler/anomaly/flux = 1,
- /obj/item/stack/cable_coil = 5,
- /obj/item/weaponcrafting/gunkit/tesla = 1)
- time = 200
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/ed209
- name = "ED209"
- result = /mob/living/simple_animal/bot/secbot/ed209
- reqs = list(/obj/item/robot_suit = 1,
- /obj/item/clothing/head/helmet = 1,
- /obj/item/clothing/suit/armor/vest = 1,
- /obj/item/bodypart/l_leg/robot = 1,
- /obj/item/bodypart/r_leg/robot = 1,
- /obj/item/stack/sheet/metal = 1,
- /obj/item/stack/cable_coil = 1,
- /obj/item/gun/energy/disabler = 1,
- /obj/item/assembly/prox_sensor = 1)
- tools = list(TOOL_WELDER, TOOL_SCREWDRIVER)
- time = 60
- category = CAT_ROBOT
-
-/datum/crafting_recipe/secbot
- name = "Secbot"
- result = /mob/living/simple_animal/bot/secbot
- reqs = list(/obj/item/assembly/signaler = 1,
- /obj/item/clothing/head/helmet/sec = 1,
- /obj/item/melee/baton = 1,
- /obj/item/assembly/prox_sensor = 1,
- /obj/item/bodypart/r_arm/robot = 1)
- tools = list(TOOL_WELDER)
- time = 60
- category = CAT_ROBOT
-
-/datum/crafting_recipe/cleanbot
- name = "Cleanbot"
- result = /mob/living/simple_animal/bot/cleanbot
- reqs = list(/obj/item/reagent_containers/glass/bucket = 1,
- /obj/item/assembly/prox_sensor = 1,
- /obj/item/bodypart/r_arm/robot = 1)
- time = 40
- category = CAT_ROBOT
-
-/datum/crafting_recipe/floorbot
- name = "Floorbot"
- result = /mob/living/simple_animal/bot/floorbot
- reqs = list(/obj/item/storage/toolbox = 1,
- /obj/item/stack/tile/plasteel = 10,
- /obj/item/assembly/prox_sensor = 1,
- /obj/item/bodypart/r_arm/robot = 1)
- time = 40
- category = CAT_ROBOT
-
-/datum/crafting_recipe/medbot
- name = "Medbot"
- result = /mob/living/simple_animal/bot/medbot
- reqs = list(/obj/item/healthanalyzer = 1,
- /obj/item/storage/firstaid = 1,
- /obj/item/assembly/prox_sensor = 1,
- /obj/item/bodypart/r_arm/robot = 1)
- time = 40
- category = CAT_ROBOT
-
-/datum/crafting_recipe/honkbot
- name = "Honkbot"
- result = /mob/living/simple_animal/bot/honkbot
- reqs = list(/obj/item/storage/box/clown = 1,
- /obj/item/bodypart/r_arm/robot = 1,
- /obj/item/assembly/prox_sensor = 1,
- /obj/item/bikehorn/ = 1)
- time = 40
- category = CAT_ROBOT
-
-/datum/crafting_recipe/firebot
- name = "Firebot"
- result = /mob/living/simple_animal/bot/firebot
- reqs = list(/obj/item/extinguisher = 1,
- /obj/item/bodypart/r_arm/robot = 1,
- /obj/item/assembly/prox_sensor = 1,
- /obj/item/clothing/head/hardhat/red = 1)
- time = 40
- category = CAT_ROBOT
-
-/datum/crafting_recipe/vibebot
- name = "Vibebot"
- result = /mob/living/simple_animal/bot/vibebot
- reqs = list(/obj/item/light/bulb = 2,
- /obj/item/bodypart/head/robot = 1,
- /obj/item/assembly/prox_sensor = 1,
- /obj/item/toy/crayon = 1)
- time = 40
- category = CAT_ROBOT
-
-/datum/crafting_recipe/hygienebot
- name = "Hygienebot"
- result = /mob/living/simple_animal/bot/hygienebot
- reqs = list(/obj/item/bot_assembly/hygienebot = 1,
- /obj/item/stack/ducts = 1,
- /obj/item/assembly/prox_sensor = 1)
- tools = list(TOOL_WELDER)
- time = 40
- category = CAT_ROBOT
-
-/datum/crafting_recipe/improvised_pneumatic_cannon //Pretty easy to obtain but
- name = "Pneumatic Cannon"
- result = /obj/item/pneumatic_cannon/ghetto
- tools = list(TOOL_WELDER, TOOL_WRENCH)
- reqs = list(/obj/item/stack/sheet/metal = 4,
- /obj/item/stack/package_wrap = 8,
- /obj/item/pipe = 2)
- time = 50
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/flamethrower
- name = "Flamethrower"
- result = /obj/item/flamethrower
- reqs = list(/obj/item/weldingtool = 1,
- /obj/item/assembly/igniter = 1,
- /obj/item/stack/rods = 1)
- parts = list(/obj/item/assembly/igniter = 1,
- /obj/item/weldingtool = 1)
- tools = list(TOOL_SCREWDRIVER)
- time = 10
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/pipebow
- name = "Pipe Bow"
- result = /obj/item/gun/ballistic/bow/pipe
- reqs = list(/obj/item/pipe = 5,
- /obj/item/stack/sheet/plastic = 15,
- /obj/item/weaponcrafting/silkstring = 10)
- time = 450
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/meteorslug
- name = "Meteorslug Shell"
- result = /obj/item/ammo_casing/shotgun/meteorslug
- reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
- /obj/item/rcd_ammo = 1,
- /obj/item/stock_parts/manipulator = 2)
- tools = list(TOOL_SCREWDRIVER)
- time = 5
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/pulseslug
- name = "Pulse Slug Shell"
- result = /obj/item/ammo_casing/shotgun/pulseslug
- reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
- /obj/item/stock_parts/capacitor/adv = 2,
- /obj/item/stock_parts/micro_laser/ultra = 1)
- tools = list(TOOL_SCREWDRIVER)
- time = 5
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/dragonsbreath
- name = "Dragonsbreath Shell"
- result = /obj/item/ammo_casing/shotgun/dragonsbreath
- reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1, /datum/reagent/phosphorus = 5)
- tools = list(TOOL_SCREWDRIVER)
- time = 5
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/frag12
- name = "FRAG-12 Shell"
- result = /obj/item/ammo_casing/shotgun/frag12
- reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
- /datum/reagent/glycerol = 5,
- /datum/reagent/toxin/acid = 5,
- /datum/reagent/toxin/acid/fluacid = 5)
- tools = list(TOOL_SCREWDRIVER)
- time = 5
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/ionslug
- name = "Ion Scatter Shell"
- result = /obj/item/ammo_casing/shotgun/ion
- reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
- /obj/item/stock_parts/micro_laser/ultra = 1,
- /obj/item/stock_parts/subspace/crystal = 1)
- tools = list(TOOL_SCREWDRIVER)
- time = 5
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/improvisedslug
- name = "Improvised Shotgun Shell"
- result = /obj/item/ammo_casing/shotgun/improvised
- reqs = list(/obj/item/stack/sheet/metal = 2,
- /obj/item/stack/cable_coil = 1,
- /datum/reagent/fuel = 10)
- tools = list(TOOL_SCREWDRIVER)
- time = 12
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/laserslug
- name = "Scatter Laser Shell"
- result = /obj/item/ammo_casing/shotgun/laserslug
- reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
- /obj/item/stock_parts/capacitor/adv = 1,
- /obj/item/stock_parts/micro_laser/high = 1)
- tools = list(TOOL_SCREWDRIVER)
- time = 5
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/arrow
- name = "Arrow"
- result = /obj/item/ammo_casing/caseless/arrow/wood
- time = 30
- reqs = list(/obj/item/stack/sheet/mineral/wood = 1,
- /obj/item/stack/sheet/silk = 1,
- /obj/item/stack/rods = 1) //1 metal sheet = 2 rods= 2 arrows
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/bone_arrow
- name = "Bone Arrow"
- result = /obj/item/ammo_casing/caseless/arrow/bone
- time = 30
- reqs = list(/obj/item/stack/sheet/bone = 1,
- /obj/item/stack/sheet/sinew = 1,
- /obj/item/ammo_casing/caseless/arrow/ash = 1)
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/ashen_arrow
- name = "Fire hardened arrow"
- result = /obj/item/ammo_casing/caseless/arrow/ash
- tools = list(TOOL_WELDER)
- time = 30
- reqs = list(/obj/item/ammo_casing/caseless/arrow/wood = 1)
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/bronze_arrow
- name = "Bronze arrow"
- result = /obj/item/ammo_casing/caseless/arrow/bronze
- time = 30
- reqs = list(/obj/item/stack/sheet/mineral/wood = 1,
- /obj/item/stack/tile/bronze = 1,
- /obj/item/stack/sheet/silk = 1)
- category = CAT_WEAPONRY
- subcategory = CAT_AMMO
-
-/datum/crafting_recipe/pipegun
- name = "Pipegun"
- result = /obj/item/gun/ballistic/rifle/boltaction/pipegun
- reqs = list(/obj/item/weaponcrafting/receiver = 1,
- /obj/item/pipe = 1,
- /obj/item/weaponcrafting/stock = 1,
- /obj/item/stack/sticky_tape = 1)
- tools = list(TOOL_SCREWDRIVER)
- time = 50
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/pipegun_prime
- name = "Regal Pipegun"
- always_available = FALSE
- result = /obj/item/gun/ballistic/rifle/boltaction/pipegun/prime
- reqs = list(/obj/item/gun/ballistic/rifle/boltaction/pipegun = 1,
- /obj/item/food/deadmouse = 1,
- /datum/reagent/consumable/grey_bull = 20,
- /obj/item/spear = 1,
- /obj/item/storage/toolbox= 1)
- tools = list(TOOL_SCREWDRIVER, /obj/item/clothing/gloves/color/yellow, /obj/item/clothing/mask/gas, /obj/item/melee/baton/cattleprod)
- time = 300 //contemplate for a bit
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/chainsaw
- name = "Chainsaw"
- result = /obj/item/chainsaw
- reqs = list(/obj/item/circular_saw = 1,
- /obj/item/stack/cable_coil = 3,
- /obj/item/stack/sheet/plasteel = 5)
- tools = list(TOOL_WELDER)
- time = 50
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/spear
- name = "Spear"
- result = /obj/item/spear
- reqs = list(/obj/item/restraints/handcuffs/cable = 1,
- /obj/item/shard = 1,
- /obj/item/stack/rods = 1)
- parts = list(/obj/item/shard = 1)
- time = 40
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/lizardhat
- name = "Lizard Cloche Hat"
- result = /obj/item/clothing/head/lizard
- time = 10
- reqs = list(/obj/item/organ/tail/lizard = 1)
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/lizardhat_alternate
- name = "Lizard Cloche Hat"
- result = /obj/item/clothing/head/lizard
- time = 10
- reqs = list(/obj/item/stack/sheet/animalhide/lizard = 1)
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/kittyears
- name = "Kitty Ears"
- result = /obj/item/clothing/head/kitty/genuine
- time = 10
- reqs = list(/obj/item/organ/tail/cat = 1,
- /obj/item/organ/ears/cat = 1)
- category = CAT_CLOTHING
-
-
-/datum/crafting_recipe/radiogloves
- name = "Radio Gloves"
- result = /obj/item/clothing/gloves/radio
- time = 15
- reqs = list(/obj/item/clothing/gloves/color/black = 1,
- /obj/item/stack/cable_coil = 2,
- /obj/item/radio = 1)
- tools = list(TOOL_WIRECUTTER)
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/mixedbouquet
- name = "Mixed bouquet"
- result = /obj/item/bouquet
- reqs = list(/obj/item/food/grown/poppy/lily =2,
- /obj/item/grown/sunflower = 2,
- /obj/item/food/grown/poppy/geranium = 2)
- category = CAT_MISC
-
-/datum/crafting_recipe/sunbouquet
- name = "Sunflower bouquet"
- result = /obj/item/bouquet/sunflower
- reqs = list(/obj/item/grown/sunflower = 6)
- category = CAT_MISC
-
-/datum/crafting_recipe/poppybouquet
- name = "Poppy bouquet"
- result = /obj/item/bouquet/poppy
- reqs = list (/obj/item/food/grown/poppy = 6)
- category = CAT_MISC
-
-/datum/crafting_recipe/spooky_camera
- name = "Camera Obscura"
- result = /obj/item/camera/spooky
- time = 15
- reqs = list(/obj/item/camera = 1,
- /datum/reagent/water/holywater = 10)
- parts = list(/obj/item/camera = 1)
- category = CAT_MISC
-
-/*
-/datum/crafting_recipe/skateboard
- name = "Skateboard"
- result = /obj/vehicle/ridden/scooter/skateboard/improvised
- time = 60
- reqs = list(/obj/item/stack/sheet/metal = 5,
- /obj/item/stack/rods = 10)
- category = CAT_MISC
-
-/datum/crafting_recipe/scooter
- name = "Scooter"
- result = /obj/vehicle/ridden/scooter
- time = 65
- reqs = list(/obj/item/stack/sheet/metal = 5,
- /obj/item/stack/rods = 12)
- category = CAT_MISC
-*/
-
-/datum/crafting_recipe/wheelchair
- name = "Wheelchair"
- result = /obj/vehicle/ridden/wheelchair
- reqs = list(/obj/item/stack/sheet/metal = 4,
- /obj/item/stack/rods = 6)
- time = 100
- category = CAT_MISC
-
-/datum/crafting_recipe/motorized_wheelchair
- name = "Motorized Wheelchair"
- result = /obj/vehicle/ridden/wheelchair/motorized
- reqs = list(/obj/item/stack/sheet/metal = 10,
- /obj/item/stack/rods = 8,
- /obj/item/stock_parts/manipulator = 2,
- /obj/item/stock_parts/capacitor = 1)
- parts = list(/obj/item/stock_parts/manipulator = 2,
- /obj/item/stock_parts/capacitor = 1)
- tools = list(TOOL_WELDER, TOOL_SCREWDRIVER, TOOL_WRENCH)
- time = 200
- category = CAT_MISC
-
-/datum/crafting_recipe/mousetrap
- name = "Mouse Trap"
- result = /obj/item/assembly/mousetrap
- time = 10
- reqs = list(/obj/item/stack/sheet/cardboard = 1,
- /obj/item/stack/rods = 1)
- category = CAT_MISC
-
-/datum/crafting_recipe/papersack
- name = "Paper Sack"
- result = /obj/item/storage/box/papersack
- time = 10
- reqs = list(/obj/item/paper = 5)
- category = CAT_MISC
-
-
-/datum/crafting_recipe/flashlight_eyes
- name = "Flashlight Eyes"
- result = /obj/item/organ/eyes/robotic/flashlight
- time = 10
- reqs = list(
- /obj/item/flashlight = 2,
- /obj/item/restraints/handcuffs/cable = 1
- )
- category = CAT_MISC
-
-/datum/crafting_recipe/paperframes
- name = "Paper Frames"
- result = /obj/item/stack/sheet/paperframes/five
- time = 10
- reqs = list(/obj/item/stack/sheet/mineral/wood = 5, /obj/item/paper = 20)
- category = CAT_MISC
-
-/datum/crafting_recipe/naturalpaper
- name = "Hand-Pressed Paper"
- time = 30
- reqs = list(/datum/reagent/water = 50, /obj/item/stack/sheet/mineral/wood = 1)
- tools = list(/obj/item/hatchet)
- result = /obj/item/paper_bin/bundlenatural
- category = CAT_MISC
-
-/datum/crafting_recipe/toysword
- name = "Toy Sword"
- reqs = list(/obj/item/light/bulb = 1, /obj/item/stack/cable_coil = 1, /obj/item/stack/sheet/plastic = 4)
- result = /obj/item/toy/sword
- category = CAT_MISC
-
-/datum/crafting_recipe/blackcarpet
- name = "Black Carpet"
- reqs = list(/obj/item/stack/tile/carpet = 50, /obj/item/toy/crayon/black = 1)
- result = /obj/item/stack/tile/carpet/black/fifty
- category = CAT_MISC
-
-/datum/crafting_recipe/curtain
- name = "Curtains"
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 4, /obj/item/stack/rods = 1)
- result = /obj/structure/curtain/cloth
- category = CAT_MISC
-
-/datum/crafting_recipe/showercurtain
- name = "Shower Curtains"
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 2, /obj/item/stack/sheet/plastic = 2, /obj/item/stack/rods = 1)
- result = /obj/structure/curtain
- category = CAT_MISC
-
-/datum/crafting_recipe/extendohand_r
- name = "Extendo-Hand (Right Arm)"
- reqs = list(/obj/item/bodypart/r_arm/robot = 1, /obj/item/clothing/gloves/boxing = 1)
- result = /obj/item/extendohand
- category = CAT_MISC
-
-/datum/crafting_recipe/extendohand_l
- name = "Extendo-Hand (Left Arm)"
- reqs = list(/obj/item/bodypart/l_arm/robot = 1, /obj/item/clothing/gloves/boxing = 1)
- result = /obj/item/extendohand
- category = CAT_MISC
-
-/datum/crafting_recipe/chemical_payload
- name = "Chemical Payload (C4)"
- result = /obj/item/bombcore/chemical
- reqs = list(
- /obj/item/stock_parts/matter_bin = 1,
- /obj/item/grenade/c4 = 1,
- /obj/item/grenade/chem_grenade = 2
- )
- parts = list(/obj/item/stock_parts/matter_bin = 1, /obj/item/grenade/chem_grenade = 2)
- time = 30
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/chemical_payload2
- name = "Chemical Payload (Gibtonite)"
- result = /obj/item/bombcore/chemical
- reqs = list(
- /obj/item/stock_parts/matter_bin = 1,
- /obj/item/gibtonite = 1,
- /obj/item/grenade/chem_grenade = 2
- )
- parts = list(/obj/item/stock_parts/matter_bin = 1, /obj/item/grenade/chem_grenade = 2)
- time = 50
- category = CAT_WEAPONRY
- subcategory = CAT_WEAPON
-
-/datum/crafting_recipe/bonearmor
- name = "Bone Armor"
- result = /obj/item/clothing/suit/armor/bone
- time = 30
- reqs = list(/obj/item/stack/sheet/bone = 6)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/heavybonearmor
- name = "Heavy Bone Armor"
- result = /obj/item/clothing/suit/hooded/cloak/bone
- time = 80
- reqs = list(/obj/item/stack/sheet/bone = 10,
- /obj/item/stack/sheet/sinew = 3,
- /obj/item/stack/sheet/animalhide/goliath_hide = 2)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/bonetalisman
- name = "Bone Talisman"
- result = /obj/item/clothing/accessory/talisman
- time = 20
- reqs = list(/obj/item/stack/sheet/bone = 2,
- /obj/item/stack/sheet/sinew = 1)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/bonecodpiece
- name = "Skull Codpiece"
- result = /obj/item/clothing/accessory/skullcodpiece
- time = 20
- reqs = list(/obj/item/stack/sheet/bone = 2,
- /obj/item/stack/sheet/animalhide/goliath_hide = 1)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/skilt
- name = "Sinew Kilt"
- result = /obj/item/clothing/accessory/skilt
- time = 20
- reqs = list(/obj/item/stack/sheet/bone = 1,
- /obj/item/stack/sheet/sinew = 2)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/bracers
- name = "Bone Bracers"
- result = /obj/item/clothing/gloves/bracer
- time = 20
- reqs = list(/obj/item/stack/sheet/bone = 2,
- /obj/item/stack/sheet/sinew = 1)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/skullhelm
- name = "Skull Helmet"
- result = /obj/item/clothing/head/helmet/skull
- time = 30
- reqs = list(/obj/item/stack/sheet/bone = 4)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/goliathcloak
- name = "Goliath Cloak"
- result = /obj/item/clothing/suit/hooded/cloak/goliath
- time = 50
- reqs = list(/obj/item/stack/sheet/leather = 2,
- /obj/item/stack/sheet/sinew = 2,
- /obj/item/stack/sheet/animalhide/goliath_hide = 2) //it takes 4 goliaths to make 1 cloak if the plates are skinned
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/drakecloak
- name = "Ash Drake Armour"
- result = /obj/item/clothing/suit/hooded/cloak/drake
- time = 60
- reqs = list(/obj/item/stack/sheet/bone = 10,
- /obj/item/stack/sheet/sinew = 2,
- /obj/item/stack/sheet/animalhide/ashdrake = 5)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/watcherbola
- name = "Watcher Bola"
- result = /obj/item/restraints/legcuffs/bola/watcher
- time = 30
- reqs = list(/obj/item/stack/sheet/animalhide/goliath_hide = 2,
- /obj/item/restraints/handcuffs/cable/sinew = 1)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/goliathshield
- name = "Goliath shield"
- result = /obj/item/shield/riot/goliath
- time = 60
- reqs = list(/obj/item/stack/sheet/bone = 4,
- /obj/item/stack/sheet/animalhide/goliath_hide = 3)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/bonesword
- name = "Bone Sword"
- result = /obj/item/claymore/bone
- time = 40
- reqs = list(/obj/item/stack/sheet/bone = 3,
- /obj/item/stack/sheet/sinew = 2)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/hunterbelt
- name = "Hunters Belt"
- result = /obj/item/storage/belt/mining/primitive
- time = 20
- reqs = list(/obj/item/stack/sheet/sinew = 2,
- /obj/item/stack/sheet/animalhide/goliath_hide = 2)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/quiver
- name = "Quiver"
- result = /obj/item/storage/bag/quiver/empty
- time = 80
- reqs = list(/obj/item/stack/sheet/leather = 3,
- /obj/item/stack/sheet/sinew = 4)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/bone_bow
- name = "Bone Bow"
- result = /obj/item/gun/ballistic/bow/ashen
- time = 200
- reqs = list(/obj/item/stack/sheet/bone = 8,
- /obj/item/stack/sheet/sinew = 4)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/firebrand
- name = "Firebrand"
- result = /obj/item/match/firebrand
- time = 100 //Long construction time. Making fire is hard work.
- reqs = list(/obj/item/stack/sheet/mineral/wood = 2)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/gold_horn
- name = "Golden Bike Horn"
- result = /obj/item/bikehorn/golden
- time = 20
- reqs = list(/obj/item/stack/sheet/mineral/bananium = 5,
- /obj/item/bikehorn = 1)
- category = CAT_MISC
-
-/datum/crafting_recipe/bonedagger
- name = "Bone Dagger"
- result = /obj/item/kitchen/knife/combat/bone
- time = 20
- reqs = list(/obj/item/stack/sheet/bone = 2)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/bonespear
- name = "Bone Spear"
- result = /obj/item/spear/bonespear
- time = 30
- reqs = list(/obj/item/stack/sheet/bone = 4,
- /obj/item/stack/sheet/sinew = 1)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/boneaxe
- name = "Bone Axe"
- result = /obj/item/fireaxe/boneaxe
- time = 50
- reqs = list(/obj/item/stack/sheet/bone = 6,
- /obj/item/stack/sheet/sinew = 3)
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/bonfire
- name = "Bonfire"
- time = 60
- reqs = list(/obj/item/grown/log = 5)
- parts = list(/obj/item/grown/log = 5)
- blacklist = list(/obj/item/grown/log/steel)
- result = /obj/structure/bonfire
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/rake //Category resorting incoming
- name = "Rake"
- time = 30
- reqs = list(/obj/item/stack/sheet/mineral/wood = 5)
- result = /obj/item/cultivator/rake
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/woodbucket
- name = "Wooden Bucket"
- time = 30
- reqs = list(/obj/item/stack/sheet/mineral/wood = 3)
- result = /obj/item/reagent_containers/glass/bucket/wooden
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/headpike
- name = "Spike Head (Glass Spear)"
- time = 65
- reqs = list(/obj/item/spear = 1,
- /obj/item/bodypart/head = 1)
- parts = list(/obj/item/bodypart/head = 1,
- /obj/item/spear = 1)
- blacklist = list(/obj/item/spear/explosive, /obj/item/spear/bonespear)
- result = /obj/structure/headpike
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/headpikebone
- name = "Spike Head (Bone Spear)"
- time = 65
- reqs = list(/obj/item/spear/bonespear = 1,
- /obj/item/bodypart/head = 1)
- parts = list(/obj/item/bodypart/head = 1,
- /obj/item/spear/bonespear = 1)
- result = /obj/structure/headpike/bone
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/pressureplate
- name = "Pressure Plate"
- result = /obj/item/pressure_plate
- time = 5
- reqs = list(/obj/item/stack/sheet/metal = 1,
- /obj/item/stack/tile/plasteel = 1,
- /obj/item/stack/cable_coil = 2,
- /obj/item/assembly/igniter = 1)
- category = CAT_MISC
-
-
-/datum/crafting_recipe/rcl
- name = "Makeshift Rapid Pipe Cleaner Layer"
- result = /obj/item/rcl/ghetto
- time = 40
- tools = list(TOOL_WELDER, TOOL_SCREWDRIVER, TOOL_WRENCH)
- reqs = list(/obj/item/stack/sheet/metal = 15)
- category = CAT_MISC
-
-/datum/crafting_recipe/mummy
- name = "Mummification Bandages (Mask)"
- result = /obj/item/clothing/mask/mummy
- time = 10
- tools = list(/obj/item/nullrod/egyptian)
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 2)
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/mummy/body
- name = "Mummification Bandages (Body)"
- result = /obj/item/clothing/under/costume/mummy
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 5)
-
-/datum/crafting_recipe/chaplain_hood
- name = "Follower Hoodie"
- result = /obj/item/clothing/suit/hooded/chaplain_hoodie
- time = 10
- tools = list(/obj/item/clothing/suit/hooded/chaplain_hoodie, /obj/item/storage/book/bible)
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 4)
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/guillotine
- name = "Guillotine"
- result = /obj/structure/guillotine
- time = 150 // Building a functioning guillotine takes time
- reqs = list(/obj/item/stack/sheet/plasteel = 3,
- /obj/item/stack/sheet/mineral/wood = 20,
- /obj/item/stack/cable_coil = 10)
- tools = list(TOOL_SCREWDRIVER, TOOL_WRENCH, TOOL_WELDER)
- category = CAT_MISC
-
-/datum/crafting_recipe/aitater
- name = "intelliTater"
- result = /obj/item/aicard/aitater
- time = 30
- tools = list(TOOL_WIRECUTTER)
- reqs = list(/obj/item/aicard = 1,
- /obj/item/food/grown/potato = 1,
- /obj/item/stack/cable_coil = 5)
- category = CAT_MISC
-
-/datum/crafting_recipe/aitater/check_requirements(mob/user, list/collected_requirements)
- var/obj/item/aicard/aicard = collected_requirements[/obj/item/aicard][1]
- if(!aicard.AI)
- return TRUE
-
- to_chat(user, "You can't craft an intelliTater with an AI in the card!")
- return FALSE
-
-/datum/crafting_recipe/aispook
- name = "intelliLantern"
- result = /obj/item/aicard/aispook
- time = 30
- tools = list(TOOL_WIRECUTTER)
- reqs = list(/obj/item/aicard = 1,
- /obj/item/food/grown/pumpkin = 1,
- /obj/item/stack/cable_coil = 5)
- category = CAT_MISC
-
-/datum/crafting_recipe/ghettojetpack
- name = "Improvised Jetpack"
- result = /obj/item/tank/jetpack/improvised
- time = 30
- reqs = list(/obj/item/tank/internals/oxygen = 2, /obj/item/extinguisher = 1, /obj/item/pipe = 3, /obj/item/stack/cable_coil = MAXCOIL)
- category = CAT_MISC
- tools = list(TOOL_WRENCH, TOOL_WELDER, TOOL_WIRECUTTER)
-
-/datum/crafting_recipe/multiduct
- name = "Multi-layer duct"
- result = /obj/machinery/duct/multilayered
- time = 5
- reqs = list(/obj/item/stack/ducts = 5)
- category = CAT_MISC
- tools = list(TOOL_WELDER)
-
-/datum/crafting_recipe/rib
- name = "Collosal Rib"
- always_available = FALSE
- reqs = list(
- /obj/item/stack/sheet/bone = 10,
- /datum/reagent/fuel/oil = 5,
- )
- result = /obj/structure/statue/bone/rib
- subcategory = CAT_PRIMAL
-
-/datum/crafting_recipe/skull
- name = "Skull Carving"
- always_available = FALSE
- reqs = list(
- /obj/item/stack/sheet/bone = 6,
- /datum/reagent/fuel/oil = 5,
- )
- result = /obj/structure/statue/bone/skull
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/halfskull
- name = "Cracked Skull Carving"
- always_available = FALSE
- reqs = list(
- /obj/item/stack/sheet/bone = 3,
- /datum/reagent/fuel/oil = 5,
- )
- result = /obj/structure/statue/bone/skull/half
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/boneshovel
- name = "Serrated Bone Shovel"
- always_available = FALSE
- reqs = list(
- /obj/item/stack/sheet/bone = 4,
- /datum/reagent/fuel/oil = 5,
- /obj/item/shovel/spade = 1,
- )
- result = /obj/item/shovel/serrated
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/lasso
- name = "Bone Lasso"
- reqs = list(
- /obj/item/stack/sheet/bone = 1,
- /obj/item/stack/sheet/sinew = 5,
- )
- result = /obj/item/key/lasso
- category = CAT_PRIMAL
-
-/datum/crafting_recipe/gripperoffbrand
- name = "Improvised Gripper Gloves"
- reqs = list(
- /obj/item/clothing/gloves/fingerless = 1,
- /obj/item/stack/sticky_tape = 1,
- )
- result = /obj/item/clothing/gloves/tackler/offbrand
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/boh
- name = "Bag of Holding"
- reqs = list(
- /obj/item/bag_of_holding_inert = 1,
- /obj/item/assembly/signaler/anomaly/bluespace = 1,
- )
- result = /obj/item/storage/backpack/holding
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/ipickaxe
- name = "Improvised Pickaxe"
- reqs = list(
- /obj/item/crowbar = 1,
- /obj/item/kitchen/knife = 1,
- /obj/item/stack/sticky_tape = 1,
- )
- result = /obj/item/pickaxe/improvised
- category = CAT_MISC
-
-/datum/crafting_recipe/elder_atmosian_statue
- name = "Elder Atmosian Statue"
- result = /obj/structure/statue/elder_atmosian
- time = 6 SECONDS
- reqs = list(/obj/item/stack/sheet/mineral/metal_hydrogen = 10,
- /obj/item/grenade/gas_crystal/healium_crystal = 1,
- /obj/item/grenade/gas_crystal/proto_nitrate_crystal = 1,
- /obj/item/grenade/gas_crystal/zauker_crystal = 1
- )
- category = CAT_MISC
-
-/datum/crafting_recipe/shutters
- name = "Shutters"
- reqs = list(/obj/item/stack/sheet/plasteel = 10,
- /obj/item/stack/cable_coil = 10,
- /obj/item/electronics/airlock = 1
- )
- result = /obj/machinery/door/poddoor/shutters/preopen
- tools = list(TOOL_SCREWDRIVER, TOOL_MULTITOOL, TOOL_WIRECUTTER, TOOL_WELDER)
- time = 15 SECONDS
- category = CAT_MISC
-
-/datum/crafting_recipe/blast_doors
- name = "Blast Door"
- reqs = list(/obj/item/stack/sheet/plasteel = 15,
- /obj/item/stack/cable_coil = 15,
- /obj/item/electronics/airlock = 1
- )
- result = /obj/machinery/door/poddoor/preopen
- tools = list(TOOL_SCREWDRIVER, TOOL_MULTITOOL, TOOL_WIRECUTTER, TOOL_WELDER)
- time = 30 SECONDS
- category = CAT_MISC
-
-/datum/crafting_recipe/aquarium
- name = "Aquarium"
- result = /obj/structure/aquarium
- time = 10 SECONDS
- reqs = list(/obj/item/stack/sheet/metal = 15,
- /obj/item/stack/sheet/glass = 10,
- /obj/item/aquarium_kit = 1
- )
- category = CAT_MISC
-
-//Carnival Recipes
-/datum/crafting_recipe/indigo_armor
- name = "Sweeper Suit"
- result = /obj/item/clothing/suit/armor/ego_gear/city/indigo_armor
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/green_armor
- name = "Doubting Suit"
- result = /obj/item/clothing/suit/armor/ego_gear/city/green_armor
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 3)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/amber_armor
- name = "Hunger Suit"
- result = /obj/item/clothing/suit/armor/ego_gear/city/amber_armor
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 3)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/steel_armor
- name = "Soldier's Uniform"
- result = /obj/item/clothing/suit/armor/ego_gear/city/steel_armor
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 3)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/carnival_robes
- name = "Carnival's Robes"
- result = /obj/item/clothing/suit/armor/ego_gear/city/carnival_robes
- reqs = list(/obj/item/stack/sheet/silk/indigo_advanced = 3,
- /obj/item/stack/sheet/silk/green_advanced = 3,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Meat Crafting
-/datum/crafting_recipe/amber_silk_simple
- name = "Simple Amber Silk"
- result = /obj/item/stack/sheet/silk/amber_simple
- reqs = list(/obj/item/food/meat/slab/worm = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/steel_silk_simple
- name = "Simple Steel Silk"
- result = /obj/item/stack/sheet/silk/steel_simple
- reqs = list(/obj/item/food/meat/slab/human/mutant/moth = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/indigo_silk_simple
- name = "Simple Indigo Silk"
- result = /obj/item/stack/sheet/silk/indigo_simple
- reqs = list(/obj/item/food/meat/slab/sweeper = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/green_silk_simple
- name = "Simple Green Silk"
- result = /obj/item/stack/sheet/silk/green_simple
- reqs = list(/obj/item/food/meat/slab/robot = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/indigo_silk_advanced
- name = "Advanced Indigo Silk"
- result = /obj/item/stack/sheet/silk/indigo_advanced
- reqs = list(/obj/item/food/meat/slab/sweeper = 6)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/green_silk_advanced
- name = "Advanced Green Silk"
- result = /obj/item/stack/sheet/silk/green_advanced
- reqs = list(/obj/item/food/meat/slab/robot = 6)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-//Converted Silk Crafts
-/datum/crafting_recipe/converted_green_silk_advanced
- name = "Converted Advanced Green Silk"
- result = /obj/item/stack/sheet/silk/green_advanced
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/converted_green_silk_elegant
- name = "Converted Elegant Green Silk"
- result = /obj/item/stack/sheet/silk/green_elegant
- reqs = list(/obj/item/stack/sheet/silk/green_advanced = 5)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/converted_indigo_silk_advanced
- name = "Converted Advanced Indigo Silk"
- result = /obj/item/stack/sheet/silk/indigo_advanced
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 5)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/converted_indigo_silk_elegant
- name = "Converted Elegant Indigo Silk"
- result = /obj/item/stack/sheet/silk/indigo_elegant
- reqs = list(/obj/item/stack/sheet/silk/indigo_advanced = 5)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/converted_amber_silk_advanced
- name = "Converted Advanced Amber Silk"
- result = /obj/item/stack/sheet/silk/amber_advanced
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/converted_steel_silk_advanced
- name = "Converted Advanced Steel Silk"
- result = /obj/item/stack/sheet/silk/steel_advanced
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/converted_human_silk_advanced
- name = "Converted Advanced Human Silk"
- result = /obj/item/stack/sheet/silk/human_advanced
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/converted_human_silk_elegant
- name = "Converted Elegant Human Silk"
- result = /obj/item/stack/sheet/silk/human_elegant
- reqs = list(/obj/item/stack/sheet/silk/human_advanced = 4)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Silk into different Silk
-/datum/crafting_recipe/green_silk_to_steel_silk
- name = "Green Silk to Steel Silk"
- result = /obj/item/stack/sheet/silk/steel_simple
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/indigo_silk_to_amber_silk
- name = "Indigo Silk to Amber Silk"
- result = /obj/item/stack/sheet/silk/amber_simple
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 5
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Blade Lineage Recipes
-/datum/crafting_recipe/blade_lineage_salsu
- name = "Blade Lineage Salsu Robe"
- result = /obj/item/clothing/suit/armor/ego_gear/city/blade_lineage_salsu
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4,
- /obj/item/stack/sheet/silk/amber_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/blade_lineage_cutthroat
- name = "Blade Lineage Cutthroat"
- result = /obj/item/clothing/suit/armor/ego_gear/city/blade_lineage_cutthroat
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4,
- /obj/item/stack/sheet/silk/amber_advanced = 4,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/blade_lineage_admin
- name = "Blade Lineage Admin"
- result = /obj/item/clothing/suit/armor/ego_gear/city/blade_lineage_admin
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4,
- /obj/item/stack/sheet/silk/amber_advanced = 5,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Index Recipes
-/datum/crafting_recipe/index_proselyte
- name = "Index Proselyte Armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/index
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/steel_simple = 2,
- /obj/item/stack/sheet/silk/indigo_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/index_proxy
- name = "Index Proxy Armor"
- result = /obj/item/clothing/suit/armor/ego_gear/adjustable/index_proxy
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/steel_simple = 2,
- /obj/item/stack/sheet/silk/indigo_advanced = 4,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/index_mess
- name = "Index Messenger Armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/index_mess
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/steel_simple = 2,
- /obj/item/stack/sheet/silk/indigo_advanced = 5,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Kurokumo Recipes
-/datum/crafting_recipe/kurokumo
- name = "Kurokumo Wakashu Dress Jacket"
- result = /obj/item/clothing/suit/armor/ego_gear/city/kurokumo
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5,
- /obj/item/stack/sheet/silk/indigo_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/kurokumo_jacket
- name = "Kurokumo Enforcer Dress Shirt"
- result = /obj/item/clothing/suit/armor/ego_gear/city/kurokumo/jacket
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5,
- /obj/item/stack/sheet/silk/indigo_advanced = 4,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/kurokumo_captain
- name = "Kurokumo Captain Kimono"
- result = /obj/item/clothing/suit/armor/ego_gear/city/kurokumo/captain
- reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5,
- /obj/item/stack/sheet/silk/indigo_advanced = 5,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Liu Recipes
-/datum/crafting_recipe/liu_suit
- name = "Liu Association combat suit"
- result = /obj/item/clothing/suit/armor/ego_gear/city/liu
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/liu_jacket
- name = "Liu Association combat jacket"
- result = /obj/item/clothing/suit/armor/ego_gear/city/liu/section5
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/liu_coat
- name = "Liu Association combat coat"
- result = /obj/item/clothing/suit/armor/ego_gear/city/liuvet
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 4,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/liu_combat_coat
- name = "Liu Association section 2 combat coat"
- result = /obj/item/clothing/suit/armor/ego_gear/city/liuvet/section2
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 4,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/liu_combat_jacket
- name = "Liu Association veteran combat jacket"
- result = /obj/item/clothing/suit/armor/ego_gear/city/liuvet/section5
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 4,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/liu_heavy_coat
- name = "Liu Association heavy combat coat"
- result = /obj/item/clothing/suit/armor/ego_gear/city/liuleader
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 5,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/liu_officer_coat
- name = "Liu Association officer coat"
- result = /obj/item/clothing/suit/armor/ego_gear/city/liuleader/section5
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 5,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-//N-Corp Crafting Recipes
-/datum/crafting_recipe/ncorp
- name = "Nagel und Hammer armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/ncorp
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 1,
- /obj/item/stack/sheet/silk/human_simple = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/ncorp_vet
- name = "Decorated Nagel und Hammer armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/ncorp/vet
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 2,
- /obj/item/stack/sheet/silk/human_advanced = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/ncorp_grosshammmer
- name = "Nagel und Hammer Grosshammer armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/grosshammmer
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 4,
- /obj/item/stack/sheet/silk/human_elegant = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/ncorpcommander
- name = "Rüstung der auserwählten Frau Gottes"
- result = /obj/item/clothing/suit/armor/ego_gear/city/ncorpcommander
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 5,
- /obj/item/stack/sheet/silk/human_masterpiece = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/ncorp_white_mark
- name = "Ncorp White mark"
- result = /obj/item/ego_weapon/city/ncorp_mark/white
- reqs = list(/obj/item/stack/sheet/silk/green_advanced = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/ncorp_black_mark
- name = "Ncorp Black mark"
- result = /obj/item/ego_weapon/city/ncorp_mark/black
- reqs = list(/obj/item/stack/sheet/silk/indigo_advanced = 2)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/ncorp_pale_mark
- name = "Ncorp Pale mark"
- result = /obj/item/ego_weapon/city/ncorp_mark/pale
- reqs = list(/obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Seven Recipes
-/datum/crafting_recipe/seven
- name = "Seven Association armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/seven
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/seven_recon
- name = "Seven Association recon armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/sevenrecon
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/amber_advanced = 1,
- /obj/item/stack/sheet/silk/green_advanced = 2,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/seven_vet
- name = "Seven Association veteran armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/sevenvet
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 4,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/seven_vet_intel
- name = "Seven Association recon armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/sevenvet/intel
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/indigo_advanced = 2,
- /obj/item/stack/sheet/silk/green_advanced = 2,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/seven_dir
- name = "Seven Association recon armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/sevendirector
- reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
- /obj/item/stack/sheet/silk/indigo_advanced = 2,
- /obj/item/stack/sheet/silk/green_advanced = 3,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Shi Recipes
-/datum/crafting_recipe/shi_2
- name = "Shi association jacket section 2"
- result = /obj/item/clothing/suit/armor/ego_gear/city/shi
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 2,
- /obj/item/stack/sheet/silk/green_simple = 2,
- /obj/item/stack/sheet/silk/steel_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/shi_5
- name = "Shi association jacket section 5"
- result = /obj/item/clothing/suit/armor/ego_gear/city/shilimbus
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 2,
- /obj/item/stack/sheet/silk/green_simple = 2,
- /obj/item/stack/sheet/silk/steel_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/shi_2_vet
- name = "Shi association veteran jacket"
- result = /obj/item/clothing/suit/armor/ego_gear/city/shi/vet
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
- /obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/steel_advanced = 3,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/shi_5_vet
- name = "Shi association veteran combat suit"
- result = /obj/item/clothing/suit/armor/ego_gear/city/shilimbus/vet
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
- /obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/steel_advanced = 3,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/shi_2_dir
- name = "Shi association director jacket"
- result = /obj/item/clothing/suit/armor/ego_gear/city/shi/director
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
- /obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/steel_advanced = 4,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/shi_5_dir
- name = "Shi association director combat suit"
- result = /obj/item/clothing/suit/armor/ego_gear/city/shilimbus/director
- reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
- /obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/steel_advanced = 4,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-//Zwei Recipes
-/datum/crafting_recipe/zwei
- name = "Zwei Association armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/zwei
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 1,
- /obj/item/stack/sheet/silk/indigo_advanced = 2,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/zwei_junior
- name = "Zwei Association junior armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/zweijunior
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
- /obj/item/stack/sheet/silk/indigo_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/zwei_riot
- name = "Zwei Association riot armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/zweiriot
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 3,
- /obj/item/stack/sheet/silk/human_simple = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 10
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/zwei_vet
- name = "Zwei Association veteran armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/zweivet
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 2,
- /obj/item/stack/sheet/silk/indigo_advanced = 2,
- /obj/item/stack/sheet/silk/human_advanced = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/zwei_dir
- name = "Zwei Association director armor"
- result = /obj/item/clothing/suit/armor/ego_gear/city/zweileader
- reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
- /obj/item/stack/sheet/silk/green_advanced = 2,
- /obj/item/stack/sheet/silk/indigo_advanced = 3,
- /obj/item/stack/sheet/silk/human_elegant = 1)
- tools = list(/obj/item/silkknife = 1)
- time = 15
- always_available = FALSE
- category = CAT_CLOTHING
diff --git a/code/datums/components/crafting/recipes/_recipes.dm b/code/datums/components/crafting/recipes/_recipes.dm
new file mode 100644
index 000000000000..5d35e75cf539
--- /dev/null
+++ b/code/datums/components/crafting/recipes/_recipes.dm
@@ -0,0 +1,28 @@
+
+/datum/crafting_recipe
+ var/name = "" //in-game display name
+ var/list/reqs = list() //type paths of items consumed associated with how many are needed
+ var/list/blacklist = list() //type paths of items explicitly not allowed as an ingredient
+ var/result //type path of item resulting from this craft
+ var/list/tools = list() //type paths of items needed but not consumed
+ var/time = 30 //time in deciseconds
+ var/list/parts = list() //type paths of items that will be placed in the result
+ var/list/chem_catalysts = list() //like tools but for reagents
+ var/category = CAT_NONE //where it shows up in the crafting UI
+ var/subcategory = CAT_NONE
+ var/always_available = TRUE //Set to FALSE if it needs to be learned first.
+ /// Additonal requirements text shown in UI
+ var/additional_req_text
+
+/datum/crafting_recipe/New()
+ if(!(result in reqs))
+ blacklist += result
+
+/**
+ * Run custom pre-craft checks for this recipe
+ *
+ * user: The /mob that initiated the crafting
+ * collected_requirements: A list of lists of /obj/item instances that satisfy reqs. Top level list is keyed by requirement path.
+ */
+/datum/crafting_recipe/proc/check_requirements(mob/user, list/collected_requirements)
+ return TRUE
diff --git a/code/datums/components/crafting/recipes/ammo.dm b/code/datums/components/crafting/recipes/ammo.dm
new file mode 100644
index 000000000000..d7f6ed3bc7b1
--- /dev/null
+++ b/code/datums/components/crafting/recipes/ammo.dm
@@ -0,0 +1,122 @@
+/////Arrows
+/datum/crafting_recipe/arrow
+ name = "Arrow"
+ result = /obj/item/ammo_casing/caseless/arrow/wood
+ time = 30
+ reqs = list(/obj/item/stack/sheet/mineral/wood = 1,
+ /obj/item/stack/sheet/silk = 1,
+ /obj/item/stack/rods = 1) //1 metal sheet = 2 rods= 2 arrows
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+
+/datum/crafting_recipe/ashen_arrow
+ name = "Fire hardened arrow"
+ result = /obj/item/ammo_casing/caseless/arrow/ash
+ tools = list(TOOL_WELDER)
+ time = 30
+ reqs = list(/obj/item/ammo_casing/caseless/arrow/wood = 1)
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+
+/datum/crafting_recipe/bone_arrow
+ name = "Bone Arrow"
+ result = /obj/item/ammo_casing/caseless/arrow/bone
+ time = 30
+ reqs = list(/obj/item/stack/sheet/bone = 1,
+ /obj/item/stack/sheet/sinew = 1,
+ /obj/item/ammo_casing/caseless/arrow/ash = 1)
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+
+/datum/crafting_recipe/bronze_arrow
+ name = "Bronze arrow"
+ result = /obj/item/ammo_casing/caseless/arrow/bronze
+ time = 30
+ reqs = list(/obj/item/stack/sheet/mineral/wood = 1,
+ /obj/item/stack/tile/bronze = 1,
+ /obj/item/stack/sheet/silk = 1)
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+
+/////Shotgun Ammo
+/datum/crafting_recipe/meteorslug
+ name = "Meteorslug Shell"
+ result = /obj/item/ammo_casing/shotgun/meteorslug
+ reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
+ /obj/item/rcd_ammo = 1,
+ /obj/item/stock_parts/manipulator = 2)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 5
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+ always_available = FALSE
+
+/datum/crafting_recipe/pulseslug
+ name = "Pulse Slug Shell"
+ result = /obj/item/ammo_casing/shotgun/pulseslug
+ reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
+ /obj/item/stock_parts/capacitor/adv = 2,
+ /obj/item/stock_parts/micro_laser/ultra = 1)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 5
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+ always_available = FALSE
+
+/datum/crafting_recipe/dragonsbreath
+ name = "Dragonsbreath Shell"
+ result = /obj/item/ammo_casing/shotgun/dragonsbreath
+ reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1, /datum/reagent/phosphorus = 5)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 5
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+ always_available = FALSE
+
+/datum/crafting_recipe/frag12
+ name = "FRAG-12 Shell"
+ result = /obj/item/ammo_casing/shotgun/frag12
+ reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
+ /datum/reagent/glycerol = 5,
+ /datum/reagent/toxin/acid = 5,
+ /datum/reagent/toxin/acid/fluacid = 5)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 5
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+ always_available = FALSE
+
+/datum/crafting_recipe/ionslug
+ name = "Ion Scatter Shell"
+ result = /obj/item/ammo_casing/shotgun/ion
+ reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
+ /obj/item/stock_parts/micro_laser/ultra = 1,
+ /obj/item/stock_parts/subspace/crystal = 1)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 5
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+ always_available = FALSE
+
+/datum/crafting_recipe/improvisedslug
+ name = "Improvised Shotgun Shell"
+ result = /obj/item/ammo_casing/shotgun/improvised
+ reqs = list(/obj/item/stack/sheet/metal = 2,
+ /obj/item/stack/cable_coil = 1,
+ /datum/reagent/fuel = 10)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 12
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+
+/datum/crafting_recipe/laserslug
+ name = "Scatter Laser Shell"
+ result = /obj/item/ammo_casing/shotgun/laserslug
+ reqs = list(/obj/item/ammo_casing/shotgun/techshell = 1,
+ /obj/item/stock_parts/capacitor/adv = 1,
+ /obj/item/stock_parts/micro_laser/high = 1)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 5
+ category = CAT_WEAPONRY
+ subcategory = CAT_AMMO
+ always_available = FALSE
diff --git a/code/datums/components/crafting/recipes/carnival_silkcrafting.dm b/code/datums/components/crafting/recipes/carnival_silkcrafting.dm
new file mode 100644
index 000000000000..1c9f3cf46631
--- /dev/null
+++ b/code/datums/components/crafting/recipes/carnival_silkcrafting.dm
@@ -0,0 +1,639 @@
+
+//Carnival Recipes
+/datum/crafting_recipe/indigo_armor
+ name = "Sweeper Suit"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/indigo_armor
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/green_armor
+ name = "Doubting Suit"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/green_armor
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 3)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/amber_armor
+ name = "Hunger Suit"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/amber_armor
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 3)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/steel_armor
+ name = "Soldier's Uniform"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/steel_armor
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 3)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/carnival_robes
+ name = "Carnival's Robes"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/carnival_robes
+ reqs = list(/obj/item/stack/sheet/silk/indigo_advanced = 3,
+ /obj/item/stack/sheet/silk/green_advanced = 3,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+//Meat Crafting
+/datum/crafting_recipe/amber_silk_simple
+ name = "Simple Amber Silk"
+ result = /obj/item/stack/sheet/silk/amber_simple
+ reqs = list(/obj/item/food/meat/slab/worm = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/steel_silk_simple
+ name = "Simple Steel Silk"
+ result = /obj/item/stack/sheet/silk/steel_simple
+ reqs = list(/obj/item/food/meat/slab/human/mutant/moth = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/indigo_silk_simple
+ name = "Simple Indigo Silk"
+ result = /obj/item/stack/sheet/silk/indigo_simple
+ reqs = list(/obj/item/food/meat/slab/sweeper = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/green_silk_simple
+ name = "Simple Green Silk"
+ result = /obj/item/stack/sheet/silk/green_simple
+ reqs = list(/obj/item/food/meat/slab/robot = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/indigo_silk_advanced
+ name = "Advanced Indigo Silk"
+ result = /obj/item/stack/sheet/silk/indigo_advanced
+ reqs = list(/obj/item/food/meat/slab/sweeper = 6)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/green_silk_advanced
+ name = "Advanced Green Silk"
+ result = /obj/item/stack/sheet/silk/green_advanced
+ reqs = list(/obj/item/food/meat/slab/robot = 6)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+//Converted Silk Crafts
+/datum/crafting_recipe/converted_green_silk_advanced
+ name = "Converted Advanced Green Silk"
+ result = /obj/item/stack/sheet/silk/green_advanced
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/converted_green_silk_elegant
+ name = "Converted Elegant Green Silk"
+ result = /obj/item/stack/sheet/silk/green_elegant
+ reqs = list(/obj/item/stack/sheet/silk/green_advanced = 5)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/converted_indigo_silk_advanced
+ name = "Converted Advanced Indigo Silk"
+ result = /obj/item/stack/sheet/silk/indigo_advanced
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 5)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/converted_indigo_silk_elegant
+ name = "Converted Elegant Indigo Silk"
+ result = /obj/item/stack/sheet/silk/indigo_elegant
+ reqs = list(/obj/item/stack/sheet/silk/indigo_advanced = 5)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/converted_amber_silk_advanced
+ name = "Converted Advanced Amber Silk"
+ result = /obj/item/stack/sheet/silk/amber_advanced
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/converted_steel_silk_advanced
+ name = "Converted Advanced Steel Silk"
+ result = /obj/item/stack/sheet/silk/steel_advanced
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/converted_human_silk_advanced
+ name = "Converted Advanced Human Silk"
+ result = /obj/item/stack/sheet/silk/human_advanced
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/converted_human_silk_elegant
+ name = "Converted Elegant Human Silk"
+ result = /obj/item/stack/sheet/silk/human_elegant
+ reqs = list(/obj/item/stack/sheet/silk/human_advanced = 4)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+//Silk into different Silk
+/datum/crafting_recipe/green_silk_to_steel_silk
+ name = "Green Silk to Steel Silk"
+ result = /obj/item/stack/sheet/silk/steel_simple
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/indigo_silk_to_amber_silk
+ name = "Indigo Silk to Amber Silk"
+ result = /obj/item/stack/sheet/silk/amber_simple
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 5
+ always_available = FALSE
+ category = CAT_SILK
+
+//Blade Lineage Recipes
+/datum/crafting_recipe/blade_lineage_salsu
+ name = "Blade Lineage Salsu Robe"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/blade_lineage_salsu
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4,
+ /obj/item/stack/sheet/silk/amber_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/blade_lineage_cutthroat
+ name = "Blade Lineage Cutthroat"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/blade_lineage_cutthroat
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4,
+ /obj/item/stack/sheet/silk/amber_advanced = 4,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/blade_lineage_admin
+ name = "Blade Lineage Admin"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/blade_lineage_admin
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 4,
+ /obj/item/stack/sheet/silk/amber_advanced = 5,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+//Index Recipes
+/datum/crafting_recipe/index_proselyte
+ name = "Index Proselyte Armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/index
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/steel_simple = 2,
+ /obj/item/stack/sheet/silk/indigo_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/index_proxy
+ name = "Index Proxy Armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/adjustable/index_proxy
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/steel_simple = 2,
+ /obj/item/stack/sheet/silk/indigo_advanced = 4,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/index_mess
+ name = "Index Messenger Armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/index_mess
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/steel_simple = 2,
+ /obj/item/stack/sheet/silk/indigo_advanced = 5,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+//Kurokumo Recipes
+/datum/crafting_recipe/kurokumo
+ name = "Kurokumo Wakashu Dress Jacket"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/kurokumo
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5,
+ /obj/item/stack/sheet/silk/indigo_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/kurokumo_jacket
+ name = "Kurokumo Enforcer Dress Shirt"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/kurokumo/jacket
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5,
+ /obj/item/stack/sheet/silk/indigo_advanced = 4,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/kurokumo_captain
+ name = "Kurokumo Captain Kimono"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/kurokumo/captain
+ reqs = list(/obj/item/stack/sheet/silk/steel_simple = 5,
+ /obj/item/stack/sheet/silk/indigo_advanced = 5,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+//Liu Recipes
+/datum/crafting_recipe/liu_suit
+ name = "Liu Association combat suit"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/liu
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/liu_jacket
+ name = "Liu Association combat jacket"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/liu/section5
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/liu_coat
+ name = "Liu Association combat coat"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/liuvet
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 4,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/liu_combat_coat
+ name = "Liu Association section 2 combat coat"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/liuvet/section2
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 4,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/liu_combat_jacket
+ name = "Liu Association veteran combat jacket"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/liuvet/section5
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 4,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/liu_heavy_coat
+ name = "Liu Association heavy combat coat"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/liuleader
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 5,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/liu_officer_coat
+ name = "Liu Association officer coat"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/liuleader/section5
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 5,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+//N-Corp Crafting Recipes
+/datum/crafting_recipe/ncorp
+ name = "Nagel und Hammer armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/ncorp
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 1,
+ /obj/item/stack/sheet/silk/human_simple = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/ncorp_vet
+ name = "Decorated Nagel und Hammer armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/ncorp/vet
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 2,
+ /obj/item/stack/sheet/silk/human_advanced = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/ncorp_grosshammmer
+ name = "Nagel und Hammer Grosshammer armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/grosshammmer
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 4,
+ /obj/item/stack/sheet/silk/human_elegant = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/ncorpcommander
+ name = "Rüstung der auserwählten Frau Gottes"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/ncorpcommander
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 5,
+ /obj/item/stack/sheet/silk/human_masterpiece = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/ncorp_white_mark
+ name = "Ncorp White mark"
+ result = /obj/item/ego_weapon/city/ncorp_mark/white
+ reqs = list(/obj/item/stack/sheet/silk/green_advanced = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/ncorp_black_mark
+ name = "Ncorp Black mark"
+ result = /obj/item/ego_weapon/city/ncorp_mark/black
+ reqs = list(/obj/item/stack/sheet/silk/indigo_advanced = 2)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/ncorp_pale_mark
+ name = "Ncorp Pale mark"
+ result = /obj/item/ego_weapon/city/ncorp_mark/pale
+ reqs = list(/obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+//Seven Recipes
+/datum/crafting_recipe/seven
+ name = "Seven Association armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/seven
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/seven_recon
+ name = "Seven Association recon armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/sevenrecon
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/amber_advanced = 1,
+ /obj/item/stack/sheet/silk/green_advanced = 2,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/seven_vet
+ name = "Seven Association veteran armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/sevenvet
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 4,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/seven_vet_intel
+ name = "Seven Association recon armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/sevenvet/intel
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/indigo_advanced = 2,
+ /obj/item/stack/sheet/silk/green_advanced = 2,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/seven_dir
+ name = "Seven Association recon armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/sevendirector
+ reqs = list(/obj/item/stack/sheet/silk/amber_simple = 5,
+ /obj/item/stack/sheet/silk/indigo_advanced = 2,
+ /obj/item/stack/sheet/silk/green_advanced = 3,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+//Shi Recipes
+/datum/crafting_recipe/shi_2
+ name = "Shi association jacket section 2"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/shi
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 2,
+ /obj/item/stack/sheet/silk/green_simple = 2,
+ /obj/item/stack/sheet/silk/steel_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/shi_5
+ name = "Shi association jacket section 5"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/shilimbus
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 2,
+ /obj/item/stack/sheet/silk/green_simple = 2,
+ /obj/item/stack/sheet/silk/steel_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/shi_2_vet
+ name = "Shi association veteran jacket"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/shi/vet
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
+ /obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/steel_advanced = 3,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/shi_5_vet
+ name = "Shi association veteran combat suit"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/shilimbus/vet
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
+ /obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/steel_advanced = 3,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/shi_2_dir
+ name = "Shi association director jacket"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/shi/director
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
+ /obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/steel_advanced = 4,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/shi_5_dir
+ name = "Shi association director combat suit"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/shilimbus/director
+ reqs = list(/obj/item/stack/sheet/silk/indigo_simple = 3,
+ /obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/steel_advanced = 4,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+//Zwei Recipes
+/datum/crafting_recipe/zwei
+ name = "Zwei Association armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/zwei
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 1,
+ /obj/item/stack/sheet/silk/indigo_advanced = 2,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/zwei_junior
+ name = "Zwei Association junior armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/zweijunior
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 3,
+ /obj/item/stack/sheet/silk/indigo_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/zwei_riot
+ name = "Zwei Association riot armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/zweiriot
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 3,
+ /obj/item/stack/sheet/silk/human_simple = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 10
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/zwei_vet
+ name = "Zwei Association veteran armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/zweivet
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 2,
+ /obj/item/stack/sheet/silk/indigo_advanced = 2,
+ /obj/item/stack/sheet/silk/human_advanced = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
+
+/datum/crafting_recipe/zwei_dir
+ name = "Zwei Association director armor"
+ result = /obj/item/clothing/suit/armor/ego_gear/city/zweileader
+ reqs = list(/obj/item/stack/sheet/silk/green_simple = 5,
+ /obj/item/stack/sheet/silk/green_advanced = 2,
+ /obj/item/stack/sheet/silk/indigo_advanced = 3,
+ /obj/item/stack/sheet/silk/human_elegant = 1)
+ tools = list(/obj/item/silkknife = 1)
+ time = 15
+ always_available = FALSE
+ category = CAT_SILK
diff --git a/code/datums/components/crafting/tailoring.dm b/code/datums/components/crafting/recipes/clothing.dm
similarity index 52%
rename from code/datums/components/crafting/tailoring.dm
rename to code/datums/components/crafting/recipes/clothing.dm
index 705eeca247fd..2464c713c470 100644
--- a/code/datums/components/crafting/tailoring.dm
+++ b/code/datums/components/crafting/recipes/clothing.dm
@@ -1,3 +1,70 @@
+/////Simple Crafting Cloth
+
+/datum/crafting_recipe/mummy
+ name = "Mummification Bandages (Mask)"
+ result = /obj/item/clothing/mask/mummy
+ time = 10
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 2)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/mummy/body
+ name = "Mummification Bandages (Body)"
+ result = /obj/item/clothing/under/costume/mummy
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 5)
+
+/datum/crafting_recipe/chaplain_hood
+ name = "Follower Hoodie"
+ result = /obj/item/clothing/suit/hooded/chaplain_hoodie
+ time = 10
+ tools = list(/obj/item/storage/book/bible)
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 4)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/prisonsuit
+ name = "Prisoner Uniform (Suit)"
+ result = /obj/item/clothing/under/rank/prisoner
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 3)
+ time = 20
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/prisonskirt
+ name = "Prisoner Uniform (Skirt)"
+ result = /obj/item/clothing/under/rank/prisoner/skirt
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 3)
+ time = 20
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/prisonshoes
+ name = "Orange Prison Shoes"
+ result = /obj/item/clothing/shoes/sneakers/orange
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 2)
+ time = 10
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/ghostsheet
+ name = "Ghost Sheet"
+ result = /obj/item/clothing/suit/ghost_sheet
+ time = 5
+ tools = list(TOOL_WIRECUTTER)
+ reqs = list(/obj/item/bedsheet = 1)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/fannypack
+ name = "Fannypack"
+ result = /obj/item/storage/belt/fannypack
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 2,
+ /obj/item/stack/sheet/leather = 1)
+ time = 20
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/cowboyboots
+ name = "Cowboy Boots"
+ result = /obj/item/clothing/shoes/cowboy
+ reqs = list(/obj/item/stack/sheet/leather = 2)
+ time = 45
+ category = CAT_CLOTHING
+
+/////DURATHREAD
/datum/crafting_recipe/durathread_vest
name = "Durathread Vest"
result = /obj/item/clothing/suit/armor/vest/durathread
@@ -42,12 +109,24 @@
time = 25
category = CAT_CLOTHING
-/datum/crafting_recipe/fannypack
- name = "Fannypack"
- result = /obj/item/storage/belt/fannypack
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 2,
- /obj/item/stack/sheet/leather = 1)
- time = 20
+/////Subterfuge and Hacking
+/datum/crafting_recipe/radiogloves
+ name = "Radio Gloves"
+ result = /obj/item/clothing/gloves/radio
+ time = 15
+ reqs = list(/obj/item/clothing/gloves/color/black = 1,
+ /obj/item/stack/cable_coil = 2,
+ /obj/item/radio = 1)
+ tools = list(TOOL_WIRECUTTER)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/gripperoffbrand
+ name = "Improvised Gripper Gloves"
+ reqs = list(
+ /obj/item/clothing/gloves/fingerless = 1,
+ /obj/item/stack/sticky_tape = 1,
+ )
+ result = /obj/item/clothing/gloves/tackler/offbrand
category = CAT_CLOTHING
/datum/crafting_recipe/hudsunsec
@@ -122,21 +201,7 @@
reqs = list(/obj/item/clothing/glasses/sunglasses/chemical = 1)
category = CAT_CLOTHING
-/datum/crafting_recipe/ghostsheet
- name = "Ghost Sheet"
- result = /obj/item/clothing/suit/ghost_sheet
- time = 5
- tools = list(TOOL_WIRECUTTER)
- reqs = list(/obj/item/bedsheet = 1)
- category = CAT_CLOTHING
-
-/datum/crafting_recipe/cowboyboots
- name = "Cowboy Boots"
- result = /obj/item/clothing/shoes/cowboy
- reqs = list(/obj/item/stack/sheet/leather = 2)
- time = 45
- category = CAT_CLOTHING
-
+/////Alien Components
/datum/crafting_recipe/lizardboots
name = "Lizard Skin Boots"
result = /obj/effect/spawner/lootdrop/lizardboots
@@ -144,23 +209,117 @@
time = 60
category = CAT_CLOTHING
-/datum/crafting_recipe/prisonsuit
- name = "Prisoner Uniform (Suit)"
- result = /obj/item/clothing/under/rank/prisoner
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 3, /obj/item/stack/license_plates = 1)
+/datum/crafting_recipe/lizardhat
+ name = "Lizard Cloche Hat"
+ result = /obj/item/clothing/head/lizard
+ time = 10
+ reqs = list(/obj/item/organ/tail/lizard = 1)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/lizardhat_alternate
+ name = "Lizard Cloche Hat"
+ result = /obj/item/clothing/head/lizard
+ time = 10
+ reqs = list(/obj/item/stack/sheet/animalhide/lizard = 1)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/kittyears
+ name = "Kitty Ears"
+ result = /obj/item/clothing/head/kitty/genuine
+ time = 10
+ reqs = list(/obj/item/organ/tail/cat = 1,
+ /obj/item/organ/ears/cat = 1)
+ category = CAT_CLOTHING
+
+/////Lavaland Components
+/datum/crafting_recipe/hunterbelt
+ name = "Hunters Belt"
+ result = /obj/item/storage/belt/mining/primitive
time = 20
+ reqs = list(/obj/item/stack/sheet/sinew = 2,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 2)
category = CAT_CLOTHING
-/datum/crafting_recipe/prisonskirt
- name = "Prisoner Uniform (Skirt)"
- result = /obj/item/clothing/under/rank/prisoner/skirt
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 3, /obj/item/stack/license_plates = 1)
+/datum/crafting_recipe/bonearmor
+ name = "Bone Armor"
+ result = /obj/item/clothing/suit/armor/bone
+ time = 30
+ reqs = list(/obj/item/stack/sheet/bone = 6)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/heavybonearmor
+ name = "Heavy Bone Armor"
+ result = /obj/item/clothing/suit/hooded/cloak/bone
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 10,
+ /obj/item/stack/sheet/sinew = 3,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 2)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/bonetalisman
+ name = "Bone Talisman"
+ result = /obj/item/clothing/accessory/talisman
time = 20
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
category = CAT_CLOTHING
-/datum/crafting_recipe/prisonshoes
- name = "Orange Prison Shoes"
- result = /obj/item/clothing/shoes/sneakers/orange
- reqs = list(/obj/item/stack/sheet/cotton/cloth = 2, /obj/item/stack/license_plates = 1)
- time = 10
+/datum/crafting_recipe/bonecodpiece
+ name = "Skull Codpiece"
+ result = /obj/item/clothing/accessory/skullcodpiece
+ time = 20
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 1)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/skilt
+ name = "Sinew Kilt"
+ result = /obj/item/clothing/accessory/skilt
+ time = 20
+ reqs = list(/obj/item/stack/sheet/bone = 1,
+ /obj/item/stack/sheet/sinew = 2)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/bracers
+ name = "Bone Bracers"
+ result = /obj/item/clothing/gloves/bracer
+ time = 20
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/skullhelm
+ name = "Skull Helmet"
+ result = /obj/item/clothing/head/helmet/skull
+ time = 30
+ reqs = list(/obj/item/stack/sheet/bone = 4)
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/goliathcloak
+ name = "Goliath Cloak"
+ result = /obj/item/clothing/suit/hooded/cloak/goliath
+ time = 50
+ reqs = list(/obj/item/stack/sheet/leather = 2,
+ /obj/item/stack/sheet/sinew = 2,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 2) //it takes 4 goliaths to make 1 cloak if the plates are skinned
+ category = CAT_CLOTHING
+
+/datum/crafting_recipe/drakecloak
+ name = "Ash Drake Armour"
+ result = /obj/item/clothing/suit/hooded/cloak/drake
+ time = 60
+ reqs = list(/obj/item/stack/sheet/bone = 10,
+ /obj/item/stack/sheet/sinew = 2,
+ /obj/item/stack/sheet/animalhide/ashdrake = 5)
+ category = CAT_CLOTHING
+
+/*
+/datum/crafting_recipe/boh
+ name = "Bag of Holding"
+ reqs = list(
+ /obj/item/bag_of_holding_inert = 1,
+ /obj/item/assembly/signaler/anomaly/bluespace = 1,
+ )
+ result = /obj/item/storage/backpack/holding
category = CAT_CLOTHING
+*/
diff --git a/code/datums/components/crafting/recipes/misc.dm b/code/datums/components/crafting/recipes/misc.dm
new file mode 100644
index 000000000000..226fece9d7e4
--- /dev/null
+++ b/code/datums/components/crafting/recipes/misc.dm
@@ -0,0 +1,195 @@
+/datum/crafting_recipe/papersack
+ name = "Paper Sack"
+ result = /obj/item/storage/box/papersack
+ time = 10
+ reqs = list(/obj/item/paper = 5)
+ category = CAT_MISC
+
+/datum/crafting_recipe/mousetrap
+ name = "Mouse Trap"
+ result = /obj/item/assembly/mousetrap
+ time = 10
+ reqs = list(/obj/item/stack/sheet/cardboard = 1,
+ /obj/item/stack/rods = 1)
+ category = CAT_MISC
+
+/datum/crafting_recipe/flashlight_eyes
+ name = "Flashlight Eyes"
+ result = /obj/item/organ/eyes/robotic/flashlight
+ time = 10
+ reqs = list(
+ /obj/item/flashlight = 2,
+ /obj/item/restraints/handcuffs/cable = 1
+ )
+ category = CAT_MISC
+
+/datum/crafting_recipe/paperframes
+ name = "Paper Frames"
+ result = /obj/item/stack/sheet/paperframes/five
+ time = 10
+ reqs = list(/obj/item/stack/sheet/mineral/wood = 5, /obj/item/paper = 20)
+ category = CAT_MISC
+
+/datum/crafting_recipe/naturalpaper
+ name = "Hand-Pressed Paper"
+ time = 30
+ reqs = list(/datum/reagent/water = 50, /obj/item/stack/sheet/mineral/wood = 1)
+ tools = list(/obj/item/hatchet)
+ result = /obj/item/paper_bin/bundlenatural
+ category = CAT_MISC
+
+/datum/crafting_recipe/toysword
+ name = "Toy Sword"
+ reqs = list(/obj/item/light/bulb = 1, /obj/item/stack/cable_coil = 1, /obj/item/stack/sheet/plastic = 4)
+ result = /obj/item/toy/sword
+ category = CAT_MISC
+
+/datum/crafting_recipe/lasso
+ name = "Bone Lasso"
+ reqs = list(
+ /obj/item/stack/sheet/bone = 1,
+ /obj/item/stack/sheet/sinew = 5,
+ )
+ result = /obj/item/key/lasso
+ category = CAT_MISC
+
+/datum/crafting_recipe/ipickaxe
+ name = "Improvised Pickaxe"
+ reqs = list(
+ /obj/item/crowbar = 1,
+ /obj/item/kitchen/knife = 1,
+ /obj/item/stack/sticky_tape = 1,
+ )
+ result = /obj/item/pickaxe/improvised
+ category = CAT_MISC
+
+/datum/crafting_recipe/mixedbouquet
+ name = "Mixed bouquet"
+ result = /obj/item/bouquet
+ reqs = list(/obj/item/food/grown/poppy/lily =2,
+ /obj/item/grown/sunflower = 2,
+ /obj/item/food/grown/poppy/geranium = 2)
+ category = CAT_MISC
+
+/datum/crafting_recipe/sunbouquet
+ name = "Sunflower bouquet"
+ result = /obj/item/bouquet/sunflower
+ reqs = list(/obj/item/grown/sunflower = 6)
+ category = CAT_MISC
+
+/datum/crafting_recipe/poppybouquet
+ name = "Poppy bouquet"
+ result = /obj/item/bouquet/poppy
+ reqs = list (/obj/item/food/grown/poppy = 6)
+ category = CAT_MISC
+
+/datum/crafting_recipe/reciever
+ name = "Modular Rifle Reciever"
+ tools = list(TOOL_WRENCH, TOOL_WELDER, TOOL_SAW)
+ result = /obj/item/weaponcrafting/receiver
+ reqs = list(/obj/item/stack/sheet/metal = 5,
+ /obj/item/stack/sticky_tape = 1,
+ /obj/item/screwdriver = 1,
+ /obj/item/assembly/mousetrap = 1)
+ time = 100
+ category = CAT_MISC
+
+/datum/crafting_recipe/riflestock
+ name = "Wooden Rifle Stock"
+ tools = list(/obj/item/hatchet)
+ result = /obj/item/weaponcrafting/stock
+ reqs = list(/obj/item/stack/sheet/mineral/wood = 8,
+ /obj/item/stack/sticky_tape = 1)
+ time = 50
+ category = CAT_MISC
+
+/*
+/datum/crafting_recipe/skateboard
+ name = "Skateboard"
+ result = /obj/vehicle/ridden/scooter/skateboard/improvised
+ time = 60
+ reqs = list(/obj/item/stack/sheet/metal = 5,
+ /obj/item/stack/rods = 10)
+ category = CAT_MISC
+
+/datum/crafting_recipe/scooter
+ name = "Scooter"
+ result = /obj/vehicle/ridden/scooter
+ time = 65
+ reqs = list(/obj/item/stack/sheet/metal = 5,
+ /obj/item/stack/rods = 12)
+ category = CAT_MISC
+*/
+
+/datum/crafting_recipe/wheelchair
+ name = "Wheelchair"
+ result = /obj/vehicle/ridden/wheelchair
+ reqs = list(/obj/item/stack/sheet/metal = 4,
+ /obj/item/stack/rods = 6)
+ time = 100
+ category = CAT_MISC
+
+/datum/crafting_recipe/motorized_wheelchair
+ name = "Motorized Wheelchair"
+ result = /obj/vehicle/ridden/wheelchair/motorized
+ reqs = list(/obj/item/stack/sheet/metal = 10,
+ /obj/item/stack/rods = 8,
+ /obj/item/stock_parts/manipulator = 2,
+ /obj/item/stock_parts/capacitor = 1)
+ parts = list(/obj/item/stock_parts/manipulator = 2,
+ /obj/item/stock_parts/capacitor = 1)
+ tools = list(TOOL_WELDER, TOOL_SCREWDRIVER, TOOL_WRENCH)
+ time = 200
+ category = CAT_MISC
+
+/datum/crafting_recipe/gold_horn
+ name = "Golden Bike Horn"
+ result = /obj/item/bikehorn/golden
+ time = 20
+ reqs = list(/obj/item/stack/sheet/mineral/bananium = 5,
+ /obj/item/bikehorn = 1)
+ category = CAT_MISC
+
+/datum/crafting_recipe/rcl
+ name = "Makeshift Rapid Pipe Cleaner Layer"
+ result = /obj/item/rcl/ghetto
+ time = 40
+ tools = list(TOOL_WELDER, TOOL_SCREWDRIVER, TOOL_WRENCH)
+ reqs = list(/obj/item/stack/sheet/metal = 15)
+ category = CAT_MISC
+
+/datum/crafting_recipe/aitater
+ name = "intelliTater"
+ result = /obj/item/aicard/aitater
+ time = 30
+ tools = list(TOOL_WIRECUTTER)
+ reqs = list(/obj/item/aicard = 1,
+ /obj/item/food/grown/potato = 1,
+ /obj/item/stack/cable_coil = 5)
+ category = CAT_MISC
+
+/datum/crafting_recipe/aitater/check_requirements(mob/user, list/collected_requirements)
+ var/obj/item/aicard/aicard = collected_requirements[/obj/item/aicard][1]
+ if(!aicard.AI)
+ return TRUE
+
+ to_chat(user, "You can't craft an intelliTater with an AI in the card!")
+ return FALSE
+
+/datum/crafting_recipe/aispook
+ name = "intelliLantern"
+ result = /obj/item/aicard/aispook
+ time = 30
+ tools = list(TOOL_WIRECUTTER)
+ reqs = list(/obj/item/aicard = 1,
+ /obj/item/food/grown/pumpkin = 1,
+ /obj/item/stack/cable_coil = 5)
+ category = CAT_MISC
+
+/datum/crafting_recipe/ghettojetpack
+ name = "Improvised Jetpack"
+ result = /obj/item/tank/jetpack/improvised
+ time = 30
+ reqs = list(/obj/item/tank/internals/oxygen = 2, /obj/item/extinguisher = 1, /obj/item/pipe = 3, /obj/item/stack/cable_coil = MAXCOIL)
+ category = CAT_MISC
+ tools = list(TOOL_WRENCH, TOOL_WELDER, TOOL_WIRECUTTER)
diff --git a/code/datums/components/crafting/recipes/robots.dm b/code/datums/components/crafting/recipes/robots.dm
new file mode 100644
index 000000000000..ecc6ba620e66
--- /dev/null
+++ b/code/datums/components/crafting/recipes/robots.dm
@@ -0,0 +1,97 @@
+
+/datum/crafting_recipe/ed209
+ name = "ED209"
+ result = /mob/living/simple_animal/bot/secbot/ed209
+ reqs = list(/obj/item/robot_suit = 1,
+ /obj/item/clothing/head/helmet = 1,
+ /obj/item/clothing/suit/armor/vest = 1,
+ /obj/item/bodypart/l_leg/robot = 1,
+ /obj/item/bodypart/r_leg/robot = 1,
+ /obj/item/stack/sheet/metal = 1,
+ /obj/item/stack/cable_coil = 1,
+ /obj/item/gun/energy/disabler = 1,
+ /obj/item/assembly/prox_sensor = 1)
+ tools = list(TOOL_WELDER, TOOL_SCREWDRIVER)
+ time = 60
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/secbot
+ name = "Secbot"
+ result = /mob/living/simple_animal/bot/secbot
+ reqs = list(/obj/item/assembly/signaler = 1,
+ /obj/item/clothing/head/helmet/sec = 1,
+ /obj/item/melee/baton = 1,
+ /obj/item/assembly/prox_sensor = 1,
+ /obj/item/bodypart/r_arm/robot = 1)
+ tools = list(TOOL_WELDER)
+ time = 60
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/cleanbot
+ name = "Cleanbot"
+ result = /mob/living/simple_animal/bot/cleanbot
+ reqs = list(/obj/item/reagent_containers/glass/bucket = 1,
+ /obj/item/assembly/prox_sensor = 1,
+ /obj/item/bodypart/r_arm/robot = 1)
+ time = 40
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/floorbot
+ name = "Floorbot"
+ result = /mob/living/simple_animal/bot/floorbot
+ reqs = list(/obj/item/storage/toolbox = 1,
+ /obj/item/stack/tile/plasteel = 10,
+ /obj/item/assembly/prox_sensor = 1,
+ /obj/item/bodypart/r_arm/robot = 1)
+ time = 40
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/medbot
+ name = "Medbot"
+ result = /mob/living/simple_animal/bot/medbot
+ reqs = list(/obj/item/healthanalyzer = 1,
+ /obj/item/storage/firstaid = 1,
+ /obj/item/assembly/prox_sensor = 1,
+ /obj/item/bodypart/r_arm/robot = 1)
+ time = 40
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/honkbot
+ name = "Honkbot"
+ result = /mob/living/simple_animal/bot/honkbot
+ reqs = list(/obj/item/storage/box/clown = 1,
+ /obj/item/bodypart/r_arm/robot = 1,
+ /obj/item/assembly/prox_sensor = 1,
+ /obj/item/bikehorn/ = 1)
+ time = 40
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/firebot
+ name = "Firebot"
+ result = /mob/living/simple_animal/bot/firebot
+ reqs = list(/obj/item/extinguisher = 1,
+ /obj/item/bodypart/r_arm/robot = 1,
+ /obj/item/assembly/prox_sensor = 1,
+ /obj/item/clothing/head/hardhat/red = 1)
+ time = 40
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/vibebot
+ name = "Vibebot"
+ result = /mob/living/simple_animal/bot/vibebot
+ reqs = list(/obj/item/light/bulb = 2,
+ /obj/item/bodypart/head/robot = 1,
+ /obj/item/assembly/prox_sensor = 1,
+ /obj/item/toy/crayon = 1)
+ time = 40
+ category = CAT_ROBOT
+
+/datum/crafting_recipe/hygienebot
+ name = "Hygienebot"
+ result = /mob/living/simple_animal/bot/hygienebot
+ reqs = list(/obj/item/bot_assembly/hygienebot = 1,
+ /obj/item/stack/ducts = 1,
+ /obj/item/assembly/prox_sensor = 1)
+ tools = list(TOOL_WELDER)
+ time = 40
+ category = CAT_ROBOT
diff --git a/code/datums/components/crafting/recipes/structures.dm b/code/datums/components/crafting/recipes/structures.dm
new file mode 100644
index 000000000000..961ff6d51223
--- /dev/null
+++ b/code/datums/components/crafting/recipes/structures.dm
@@ -0,0 +1,150 @@
+
+/datum/crafting_recipe/bonfire
+ name = "Bonfire"
+ time = 60
+ reqs = list(/obj/item/grown/log = 5)
+ parts = list(/obj/item/grown/log = 5)
+ blacklist = list(/obj/item/grown/log/steel)
+ result = /obj/structure/bonfire
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/blackcarpet
+ name = "Black Carpet"
+ reqs = list(/obj/item/stack/tile/carpet = 50, /obj/item/toy/crayon/black = 1)
+ result = /obj/item/stack/tile/carpet/black/fifty
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/curtain
+ name = "Curtains"
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 4, /obj/item/stack/rods = 1)
+ result = /obj/structure/curtain/cloth
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/showercurtain
+ name = "Shower Curtains"
+ reqs = list(/obj/item/stack/sheet/cotton/cloth = 2, /obj/item/stack/sheet/plastic = 2, /obj/item/stack/rods = 1)
+ result = /obj/structure/curtain
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/shutters
+ name = "Shutters"
+ reqs = list(/obj/item/stack/sheet/plasteel = 10,
+ /obj/item/stack/cable_coil = 10,
+ /obj/item/electronics/airlock = 1
+ )
+ result = /obj/machinery/door/poddoor/shutters/preopen
+ tools = list(TOOL_SCREWDRIVER, TOOL_MULTITOOL, TOOL_WIRECUTTER, TOOL_WELDER)
+ time = 15 SECONDS
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/blast_doors
+ name = "Blast Door"
+ reqs = list(/obj/item/stack/sheet/plasteel = 15,
+ /obj/item/stack/cable_coil = 15,
+ /obj/item/electronics/airlock = 1
+ )
+ result = /obj/machinery/door/poddoor/preopen
+ tools = list(TOOL_SCREWDRIVER, TOOL_MULTITOOL, TOOL_WIRECUTTER, TOOL_WELDER)
+ time = 30 SECONDS
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/aquarium
+ name = "Aquarium"
+ result = /obj/structure/aquarium
+ time = 10 SECONDS
+ reqs = list(/obj/item/stack/sheet/metal = 15,
+ /obj/item/stack/sheet/glass = 10,
+ /obj/item/aquarium_kit = 1
+ )
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/headpike
+ name = "Spike Head (Glass Spear)"
+ time = 65
+ reqs = list(/obj/item/spear = 1,
+ /obj/item/bodypart/head = 1)
+ parts = list(/obj/item/bodypart/head = 1,
+ /obj/item/spear = 1)
+ blacklist = list(/obj/item/spear/explosive, /obj/item/spear/bonespear)
+ result = /obj/structure/headpike
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/headpikebone
+ name = "Spike Head (Bone Spear)"
+ time = 65
+ reqs = list(/obj/item/spear/bonespear = 1,
+ /obj/item/bodypart/head = 1)
+ parts = list(/obj/item/bodypart/head = 1,
+ /obj/item/spear/bonespear = 1)
+ result = /obj/structure/headpike/bone
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/pressureplate
+ name = "Pressure Plate"
+ result = /obj/item/pressure_plate
+ time = 5
+ reqs = list(/obj/item/stack/sheet/metal = 1,
+ /obj/item/stack/tile/plasteel = 1,
+ /obj/item/stack/cable_coil = 2,
+ /obj/item/assembly/igniter = 1)
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/guillotine
+ name = "Guillotine"
+ result = /obj/structure/guillotine
+ time = 150 // Building a functioning guillotine takes time
+ reqs = list(/obj/item/stack/sheet/plasteel = 3,
+ /obj/item/stack/sheet/mineral/wood = 20,
+ /obj/item/stack/cable_coil = 10)
+ tools = list(TOOL_SCREWDRIVER, TOOL_WRENCH, TOOL_WELDER)
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/multiduct
+ name = "Multi-layer duct"
+ result = /obj/machinery/duct/multilayered
+ time = 5
+ reqs = list(/obj/item/stack/ducts = 5)
+ category = CAT_STRUCT
+ tools = list(TOOL_WELDER)
+
+/datum/crafting_recipe/rib
+ name = "Collosal Rib"
+ always_available = FALSE
+ reqs = list(
+ /obj/item/stack/sheet/bone = 10,
+ /datum/reagent/fuel/oil = 5,
+ )
+ result = /obj/structure/statue/bone/rib
+ subcategory = CAT_STRUCT
+
+/datum/crafting_recipe/skull
+ name = "Skull Carving"
+ always_available = FALSE
+ reqs = list(
+ /obj/item/stack/sheet/bone = 6,
+ /datum/reagent/fuel/oil = 5,
+ )
+ result = /obj/structure/statue/bone/skull
+ category = CAT_STRUCT
+
+/datum/crafting_recipe/halfskull
+ name = "Cracked Skull Carving"
+ always_available = FALSE
+ reqs = list(
+ /obj/item/stack/sheet/bone = 3,
+ /datum/reagent/fuel/oil = 5,
+ )
+ result = /obj/structure/statue/bone/skull/half
+ category = CAT_STRUCT
+/*
+/datum/crafting_recipe/elder_atmosian_statue
+ name = "Elder Atmosian Statue"
+ result = /obj/structure/statue/elder_atmosian
+ time = 6 SECONDS
+ reqs = list(/obj/item/stack/sheet/mineral/metal_hydrogen = 10,
+ /obj/item/grenade/gas_crystal/healium_crystal = 1,
+ /obj/item/grenade/gas_crystal/proto_nitrate_crystal = 1,
+ /obj/item/grenade/gas_crystal/zauker_crystal = 1
+ )
+ category = CAT_STRUCT
+*/
diff --git a/code/datums/components/crafting/recipes/tools.dm b/code/datums/components/crafting/recipes/tools.dm
new file mode 100644
index 000000000000..71f3e57b6aa9
--- /dev/null
+++ b/code/datums/components/crafting/recipes/tools.dm
@@ -0,0 +1,71 @@
+/////TOOLS/////
+
+/datum/crafting_recipe/rake //Category resorting incoming
+ name = "Rake"
+ time = 30
+ reqs = list(/obj/item/stack/sheet/mineral/wood = 5)
+ result = /obj/item/cultivator/rake
+ category = CAT_TOOL
+
+/datum/crafting_recipe/firebrand
+ name = "Firebrand"
+ result = /obj/item/match/firebrand
+ time = 100 //Long construction time. Making fire is hard work.
+ reqs = list(/obj/item/stack/sheet/mineral/wood = 2)
+ category = CAT_TOOL
+
+/datum/crafting_recipe/bonedagger
+ name = "Bone Dagger"
+ result = /obj/item/kitchen/knife/combat/bone
+ time = 20
+ reqs = list(/obj/item/stack/sheet/bone = 2)
+ category = CAT_TOOL
+
+/datum/crafting_recipe/extendohand_r
+ name = "Extendo-Hand (Right Arm)"
+ reqs = list(/obj/item/bodypart/r_arm/robot = 1, /obj/item/clothing/gloves/boxing = 1)
+ result = /obj/item/extendohand
+ category = CAT_TOOL
+
+/datum/crafting_recipe/extendohand_l
+ name = "Extendo-Hand (Left Arm)"
+ reqs = list(/obj/item/bodypart/l_arm/robot = 1, /obj/item/clothing/gloves/boxing = 1)
+ result = /obj/item/extendohand
+ category = CAT_TOOL
+
+/datum/crafting_recipe/spooky_camera
+ name = "Camera Obscura"
+ result = /obj/item/camera/spooky
+ time = 15
+ reqs = list(/obj/item/camera = 1,
+ /datum/reagent/water/holywater = 10)
+ parts = list(/obj/item/camera = 1)
+ category = CAT_TOOL
+
+/datum/crafting_recipe/boneshovel
+ name = "Serrated Bone Shovel"
+ always_available = FALSE
+ reqs = list(
+ /obj/item/stack/sheet/bone = 4,
+ /datum/reagent/fuel/oil = 5,
+ /obj/item/shovel/spade = 1,
+ )
+ result = /obj/item/shovel/serrated
+ category = CAT_TOOL
+
+////CONTAINERS/////
+
+/datum/crafting_recipe/woodbucket
+ name = "Wooden Bucket"
+ time = 30
+ reqs = list(/obj/item/stack/sheet/mineral/wood = 3)
+ result = /obj/item/reagent_containers/glass/bucket/wooden
+ category = CAT_TOOL
+
+/datum/crafting_recipe/quiver
+ name = "Quiver"
+ result = /obj/item/storage/bag/quiver/empty
+ time = 80
+ reqs = list(/obj/item/stack/sheet/leather = 3,
+ /obj/item/stack/sheet/sinew = 4)
+ category = CAT_TOOL
diff --git a/code/datums/components/crafting/recipes/weapons.dm b/code/datums/components/crafting/recipes/weapons.dm
new file mode 100644
index 000000000000..2c5e2899808f
--- /dev/null
+++ b/code/datums/components/crafting/recipes/weapons.dm
@@ -0,0 +1,441 @@
+/////Melee
+/datum/crafting_recipe/chainsaw
+ name = "Chainsaw"
+ result = /obj/item/chainsaw
+ reqs = list(/obj/item/circular_saw = 1,
+ /obj/item/stack/cable_coil = 3,
+ /obj/item/stack/sheet/plasteel = 5)
+ tools = list(TOOL_WELDER)
+ time = 50
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/stunprod
+ name = "Stunprod"
+ result = /obj/item/melee/baton/cattleprod
+ reqs = list(/obj/item/restraints/handcuffs/cable = 1,
+ /obj/item/stack/rods = 1,
+ /obj/item/assembly/igniter = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/teleprod
+ name = "Teleprod"
+ result = /obj/item/melee/baton/cattleprod/teleprod
+ reqs = list(/obj/item/restraints/handcuffs/cable = 1,
+ /obj/item/stack/rods = 1,
+ /obj/item/assembly/igniter = 1,
+ /obj/item/stack/ore/bluespace_crystal = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/tailclub
+ name = "Tail Club"
+ result = /obj/item/tailclub
+ reqs = list(/obj/item/organ/tail/lizard = 1,
+ /obj/item/stack/sheet/metal = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/tailwhip
+ name = "Liz O' Nine Tails"
+ result = /obj/item/melee/chainofcommand/tailwhip
+ reqs = list(/obj/item/organ/tail/lizard = 1,
+ /obj/item/stack/cable_coil = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/catwhip
+ name = "Cat O' Nine Tails"
+ result = /obj/item/melee/chainofcommand/tailwhip/kitty
+ reqs = list(/obj/item/organ/tail/cat = 1,
+ /obj/item/stack/cable_coil = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/bonesword
+ name = "Bone Sword"
+ result = /obj/item/claymore/bone
+ time = 40
+ reqs = list(/obj/item/stack/sheet/bone = 3,
+ /obj/item/stack/sheet/sinew = 2)
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/boneaxe
+ name = "Bone Axe"
+ result = /obj/item/fireaxe/boneaxe
+ time = 50
+ reqs = list(/obj/item/stack/sheet/bone = 6,
+ /obj/item/stack/sheet/sinew = 3)
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/////Bows
+/datum/crafting_recipe/bone_bow
+ name = "Bone Bow"
+ result = /obj/item/gun/ballistic/bow/ashen
+ time = 200
+ reqs = list(/obj/item/stack/sheet/bone = 8,
+ /obj/item/stack/sheet/sinew = 4)
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/pipebow
+ name = "Pipe Bow"
+ result = /obj/item/gun/ballistic/bow/pipe
+ reqs = list(/obj/item/pipe = 5,
+ /obj/item/stack/sheet/plastic = 15,
+ /obj/item/weaponcrafting/silkstring = 10)
+ time = 450
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/////Ballistic
+/datum/crafting_recipe/pipegun
+ name = "Pipegun"
+ result = /obj/item/gun/ballistic/rifle/boltaction/pipegun
+ reqs = list(/obj/item/weaponcrafting/receiver = 1,
+ /obj/item/pipe = 1,
+ /obj/item/weaponcrafting/stock = 1,
+ /obj/item/stack/sticky_tape = 1)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 50
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/pipegun_prime
+ name = "Regal Pipegun"
+ result = /obj/item/gun/ballistic/rifle/boltaction/pipegun/prime
+ reqs = list(/obj/item/gun/ballistic/rifle/boltaction/pipegun = 1,
+ /obj/item/food/deadmouse = 1,
+ /datum/reagent/consumable/grey_bull = 20,
+ /obj/item/spear = 1,
+ /obj/item/storage/toolbox= 1)
+ tools = list(TOOL_SCREWDRIVER, /obj/item/clothing/gloves/color/yellow, /obj/item/clothing/mask/gas, /obj/item/melee/baton/cattleprod)
+ time = 300 //contemplate for a bit
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/////Thrown
+/datum/crafting_recipe/spear
+ name = "Spear"
+ result = /obj/item/spear
+ reqs = list(/obj/item/restraints/handcuffs/cable = 1,
+ /obj/item/shard = 1,
+ /obj/item/stack/rods = 1)
+ parts = list(/obj/item/shard = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/bonespear
+ name = "Bone Spear"
+ result = /obj/item/spear/bonespear
+ time = 30
+ reqs = list(/obj/item/stack/sheet/bone = 4,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/bola
+ name = "Bola"
+ result = /obj/item/restraints/legcuffs/bola
+ reqs = list(/obj/item/restraints/handcuffs/cable = 1,
+ /obj/item/stack/sheet/metal = 6)
+ time = 20//15 faster than crafting them by hand!
+ category= CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/watcherbola
+ name = "Watcher Bola"
+ result = /obj/item/restraints/legcuffs/bola/watcher
+ time = 30
+ reqs = list(/obj/item/stack/sheet/animalhide/goliath_hide = 2,
+ /obj/item/restraints/handcuffs/cable/sinew = 1)
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/gonbola
+ name = "Gonbola"
+ result = /obj/item/restraints/legcuffs/bola/gonbola
+ reqs = list(/obj/item/restraints/handcuffs/cable = 1,
+ /obj/item/stack/sheet/metal = 6,
+ /obj/item/stack/sheet/animalhide/gondola = 1)
+ time = 40
+ category= CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/////Shield
+/datum/crafting_recipe/goliathshield
+ name = "Goliath shield"
+ result = /obj/item/shield/riot/goliath
+ time = 60
+ reqs = list(/obj/item/stack/sheet/bone = 4,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 3)
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/strobeshield
+ name = "Strobe Shield"
+ result = /obj/item/shield/riot/flash
+ reqs = list(/obj/item/wallframe/flasher = 1,
+ /obj/item/assembly/flash/handheld = 1,
+ /obj/item/shield/riot = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/strobeshield/New()
+ ..()
+ blacklist |= subtypesof(/obj/item/shield/riot/)
+
+/////Energy Weapons
+/datum/crafting_recipe/advancedegun
+ name = "Advanced Energy Gun"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/e_gun/nuclear
+ reqs = list(/obj/item/gun/energy/e_gun = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/nuclear = 1)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/advancedegun/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/e_gun)
+
+/datum/crafting_recipe/tempgun
+ name = "Temperature Gun"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/temperature
+ reqs = list(/obj/item/gun/energy/e_gun = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/temperature = 1)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/tempgun/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/e_gun)
+
+/datum/crafting_recipe/beam_rifle
+ name = "Particle Acceleration Rifle"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/beam_rifle
+ reqs = list(/obj/item/gun/energy/e_gun = 1,
+ /obj/item/assembly/signaler/anomaly/flux = 1,
+ /obj/item/assembly/signaler/anomaly/grav = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/beam_rifle = 1)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/beam_rifle/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/e_gun)
+
+/datum/crafting_recipe/ebow
+ name = "Energy Crossbow"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/kinetic_accelerator/crossbow/large
+ reqs = list(/obj/item/gun/energy/kinetic_accelerator = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/ebow = 1,
+ /datum/reagent/uranium/radium = 15)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/ebow/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/kinetic_accelerator)
+
+/datum/crafting_recipe/xraylaser
+ name = "X-ray Laser Gun"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/xray
+ reqs = list(/obj/item/gun/energy/laser = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/xray = 1)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/xraylaser/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/laser)
+
+/datum/crafting_recipe/hellgun
+ name = "Hellfire Laser Gun"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/laser/hellgun
+ reqs = list(/obj/item/gun/energy/laser = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/hellgun = 1)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/hellgun/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/laser)
+
+/datum/crafting_recipe/ioncarbine
+ name = "Ion Carbine"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/ionrifle/carbine
+ reqs = list(/obj/item/gun/energy/laser = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/ion = 1)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/ioncarbine/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/laser)
+
+/datum/crafting_recipe/decloner
+ name = "Biological Demolecularisor"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/decloner
+ reqs = list(/obj/item/gun/energy/laser = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/decloner = 1,
+ /datum/reagent/baldium = 30,
+ /datum/reagent/toxin/mutagen = 40)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/decloner/New()
+ ..()
+ blacklist += subtypesof(/obj/item/gun/energy/laser)
+
+/datum/crafting_recipe/teslacannon
+ name = "Tesla Cannon"
+ tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER)
+ result = /obj/item/gun/energy/tesla_cannon
+ reqs = list(/obj/item/assembly/signaler/anomaly/flux = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/weaponcrafting/gunkit/tesla = 1)
+ time = 200
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/////Explosives
+/datum/crafting_recipe/improv_explosive
+ name = "IED"
+ result = /obj/item/grenade/iedcasing
+ reqs = list(/datum/reagent/fuel = 50,
+ /obj/item/stack/cable_coil = 1,
+ /obj/item/assembly/igniter = 1,
+ /obj/item/reagent_containers/food/drinks/soda_cans = 1)
+ parts = list(/obj/item/reagent_containers/food/drinks/soda_cans = 1)
+ time = 15
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/molotov
+ name = "Molotov"
+ result = /obj/item/reagent_containers/food/drinks/bottle/molotov
+ reqs = list(/obj/item/reagent_containers/glass/rag = 1,
+ /obj/item/reagent_containers/food/drinks/bottle = 1)
+ parts = list(/obj/item/reagent_containers/food/drinks/bottle = 1)
+ time = 40
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/chemical_payload
+ name = "Chemical Payload (C4)"
+ result = /obj/item/bombcore/chemical
+ reqs = list(
+ /obj/item/stock_parts/matter_bin = 1,
+ /obj/item/grenade/c4 = 1,
+ /obj/item/grenade/chem_grenade = 2
+ )
+ parts = list(/obj/item/stock_parts/matter_bin = 1, /obj/item/grenade/chem_grenade = 2)
+ time = 30
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/chemical_payload2
+ name = "Chemical Payload (Gibtonite)"
+ result = /obj/item/bombcore/chemical
+ reqs = list(
+ /obj/item/stock_parts/matter_bin = 1,
+ /obj/item/gibtonite = 1,
+ /obj/item/grenade/chem_grenade = 2
+ )
+ parts = list(/obj/item/stock_parts/matter_bin = 1, /obj/item/grenade/chem_grenade = 2)
+ time = 50
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
+
+/datum/crafting_recipe/lance
+ name = "Explosive Lance (Grenade)"
+ result = /obj/item/spear/explosive
+ reqs = list(/obj/item/spear = 1,
+ /obj/item/grenade = 1)
+ blacklist = list(/obj/item/spear/bonespear)
+ parts = list(/obj/item/spear = 1,
+ /obj/item/grenade = 1)
+ time = 15
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/////MISC
+/datum/crafting_recipe/improvised_pneumatic_cannon //Pretty easy to obtain but
+ name = "Pneumatic Cannon"
+ result = /obj/item/pneumatic_cannon/ghetto
+ tools = list(TOOL_WELDER, TOOL_WRENCH)
+ reqs = list(/obj/item/stack/sheet/metal = 4,
+ /obj/item/stack/package_wrap = 8,
+ /obj/item/pipe = 2)
+ time = 50
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+
+/datum/crafting_recipe/flamethrower
+ name = "Flamethrower"
+ result = /obj/item/flamethrower
+ reqs = list(/obj/item/weldingtool = 1,
+ /obj/item/assembly/igniter = 1,
+ /obj/item/stack/rods = 1)
+ parts = list(/obj/item/assembly/igniter = 1,
+ /obj/item/weldingtool = 1)
+ tools = list(TOOL_SCREWDRIVER)
+ time = 10
+ category = CAT_WEAPONRY
+ subcategory = CAT_WEAPON
+ always_available = FALSE
diff --git a/code/game/objects/items/food/pie.dm b/code/game/objects/items/food/pie.dm
index 3b4befcd01e0..66a1371f8207 100644
--- a/code/game/objects/items/food/pie.dm
+++ b/code/game/objects/items/food/pie.dm
@@ -264,7 +264,7 @@
tastes = list("nuts" = 1, "pie" = 1)
foodtypes = GRAIN
-/obj/item/food/pie/Pierre
+/obj/item/food/pie/pierre
name = "Pierre's hand pie"
desc = "A famous pie from the streets of flavour."
icon_state = "meatpie"
diff --git a/code/game/objects/items/granters.dm b/code/game/objects/items/granters.dm
index 2aee377495ea..590014ac923e 100644
--- a/code/game/objects/items/granters.dm
+++ b/code/game/objects/items/granters.dm
@@ -419,17 +419,105 @@
/obj/item/book/granter/crafting_recipe/cooking_sweets_101
name = "Cooking Desserts 101"
- desc = "A cook book that teaches you some more of the newest desserts. AI approved, and a best seller on Honkplanet."
+ desc = "A cook book that teaches you how to cook basic desserts."
crafting_recipe_types = list(
- /datum/crafting_recipe/food/mimetart,
+ /datum/crafting_recipe/food/pumpkinspicecake,
+ /datum/crafting_recipe/food/bscccake,
+ /datum/crafting_recipe/food/bscvcake,
/datum/crafting_recipe/food/berrytart,
- /datum/crafting_recipe/food/cocolavatart,
/datum/crafting_recipe/food/clowncake,
- /datum/crafting_recipe/food/vanillacake
+ /datum/crafting_recipe/food/braincake,
+ /datum/crafting_recipe/food/birthdaycake,
+ /datum/crafting_recipe/food/chocolatecake,
+ /datum/crafting_recipe/food/lemoncake,
+ /datum/crafting_recipe/food/limecake,
+ /datum/crafting_recipe/food/orangecake,
+ /datum/crafting_recipe/food/applecake,
+ /datum/crafting_recipe/food/cheesecake,
+ /datum/crafting_recipe/food/carrotcake,
+ /datum/crafting_recipe/food/pumpkinpie,
+ /datum/crafting_recipe/food/bananacreampie,
+ /datum/crafting_recipe/food/berryclafoutis,
+ /datum/crafting_recipe/food/grapetart,
+ /datum/crafting_recipe/food/dulcedebatata,
+ /datum/crafting_recipe/food/baklava,
+ /datum/crafting_recipe/food/chocolateegg,
+ /datum/crafting_recipe/food/chocoorange,
+ /datum/crafting_recipe/food/fudgedice,
+ /datum/crafting_recipe/food/chococoin,
+ /datum/crafting_recipe/food/candiedapple,
)
icon_state = "cooking_learing_sweets"
oneuse = FALSE
- remarks = list("So that is how icing is made!", "Placing fruit on top? How simple...", "Huh layering cake seems harder then this...", "This book smells like candy", "A clown must have made this page, or they forgot to spell check it before printing...", "Wait, a way to cook slime to be safe?")
+ remarks = list("So that is how icing is made!", "Placing fruit on top? How simple...", "Huh layering cake seems harder then this...", "This book smells like candy", "A clown must have made this page, or they forgot to spell check it before printing...", "Why do they call it oven?")
+
+/obj/item/book/granter/crafting_recipe/jelly_doughnuts_101
+ name = "Jelly Doughnuts 101"
+ desc = "A cook book that teaches you how to make jelly doughnuts."
+ crafting_recipe_types = list(
+ /datum/crafting_recipe/food/donut/jelly,
+ /datum/crafting_recipe/food/donut/jelly/berry,
+ /datum/crafting_recipe/food/donut/jelly/apple,
+ /datum/crafting_recipe/food/donut/jelly/caramel,
+ /datum/crafting_recipe/food/donut/jelly/choco,
+ /datum/crafting_recipe/food/donut/jelly/blumpkin,
+ /datum/crafting_recipe/food/donut/jelly/bungo,
+ /datum/crafting_recipe/food/donut/jelly/matcha,
+ /datum/crafting_recipe/food/donut/jelly/laugh,
+ )
+ icon_state = "cooking_learing_sweets"
+ oneuse = FALSE
+ remarks = list("But how do they make the hole...", "Dough-nut!", "Dough-nut?", "Dough-nut...", "The Os of the bakery.")
+
+/obj/item/book/granter/crafting_recipe/donk_yourself
+ name = "Donk Yourself Donkpocket DIY"
+ desc = "A cook book that teaches you how to make uniquely flavored homemade donkpockets."
+ crafting_recipe_types = list(
+ /datum/crafting_recipe/food/dankpocket,
+ /datum/crafting_recipe/food/donkpocket/spicy,
+ /datum/crafting_recipe/food/donkpocket/teriyaki,
+ /datum/crafting_recipe/food/donkpocket/pizza,
+ /datum/crafting_recipe/food/donkpocket/honk,
+ /datum/crafting_recipe/food/donkpocket/berry,
+ )
+ icon_state = "cooking_learing_sweets"
+ oneuse = FALSE
+ remarks = list("The secret ingredient is love?", "If you dont have the chemicals, regular preservatives can be used...", "Gotta... peel off these warning labels.", "Add more cooking oil.", "Is this stuff safe to consume?")
+
+/obj/item/book/granter/crafting_recipe/explosives_weekly
+ name = "Explosives Weekly"
+ desc = "A well used book on ways to manufacture explosives."
+ crafting_recipe_types = list(
+ /datum/crafting_recipe/improv_explosive,
+ /datum/crafting_recipe/chemical_payload,
+ /datum/crafting_recipe/chemical_payload2,
+ )
+ icon_state = "book1"
+ oneuse = FALSE
+ remarks = list("So thats why it kept exploding in my hands...", "Maybe it needed more oil...", "The author sounds a bit unwell...")
+
+
+/obj/item/book/granter/crafting_recipe/rifles_weekly
+ name = "Rifles Weekly"
+ desc = "A well used book on ways to manufacture weapons."
+ crafting_recipe_types = list(
+ /datum/crafting_recipe/advancedegun,
+ /datum/crafting_recipe/tempgun,
+ /datum/crafting_recipe/beam_rifle,
+ /datum/crafting_recipe/ebow,
+ /datum/crafting_recipe/xraylaser,
+ /datum/crafting_recipe/hellgun,
+ /datum/crafting_recipe/ioncarbine,
+ /datum/crafting_recipe/frag12,
+ /datum/crafting_recipe/ionslug,
+ /datum/crafting_recipe/dragonsbreath,
+ /datum/crafting_recipe/pulseslug,
+ /datum/crafting_recipe/meteorslug,
+ /datum/crafting_recipe/laserslug,
+ )
+ icon_state = "book1"
+ oneuse = FALSE
+ remarks = list("So thats why it kept exploding in my hands...", "Maybe it needed more oil...")
/obj/item/book/granter/crafting_recipe/pipegun_prime
name = "diary of a dead assistant"
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
index 6afa69195747..97b83890eeca 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_bread.dm
@@ -13,26 +13,6 @@
result = /obj/item/food/bread/meat
subcategory = CAT_BREAD
-/datum/crafting_recipe/food/xenomeatbread
- name = "Xenomeat bread"
- reqs = list(
- /obj/item/food/bread/plain = 1,
- /obj/item/food/meat/cutlet/xeno = 3,
- /obj/item/food/cheesewedge = 3
- )
- result = /obj/item/food/bread/xenomeat
- subcategory = CAT_BREAD
-
-/datum/crafting_recipe/food/spidermeatbread
- name = "Spidermeat bread"
- reqs = list(
- /obj/item/food/bread/plain = 1,
- /obj/item/food/meat/cutlet/spider = 3,
- /obj/item/food/cheesewedge = 3
- )
- result = /obj/item/food/bread/spidermeat
- subcategory = CAT_BREAD
-
/datum/crafting_recipe/food/banananutbread
name = "Banana nut bread"
reqs = list(
@@ -64,17 +44,6 @@
result = /obj/item/food/bread/creamcheese
subcategory = CAT_BREAD
-/datum/crafting_recipe/food/mimanabread
- name = "Mimana bread"
- reqs = list(
- /datum/reagent/consumable/soymilk = 5,
- /obj/item/food/bread/plain = 1,
- /obj/item/food/tofu = 3,
- /obj/item/food/grown/banana/mime = 1
- )
- result = /obj/item/food/bread/mimana
- subcategory = CAT_BREAD
-
/datum/crafting_recipe/food/garlicbread
name = "Garlic Bread"
time = 40
@@ -102,25 +71,3 @@
)
result = /obj/item/food/butterdog
subcategory = CAT_BREAD
-
-/datum/crafting_recipe/food/moldybread // why would you make this?
- name = "Moldy Bread"
- reqs = list(
- /obj/item/food/breadslice/plain = 1,
- /obj/item/food/grown/mushroom/amanita = 1
- )
- result = /obj/item/food/breadslice/moldy
- subcategory = CAT_BREAD
-
-/datum/crafting_recipe/food/breadcat
- name = "Bread cat/bread hybrid"
- reqs = list(
- /obj/item/food/bread/plain = 1,
- /obj/item/organ/ears/cat = 1,
- /obj/item/organ/tail/cat = 1,
- /obj/item/food/meat/slab = 3,
- /datum/reagent/blood = 50,
- /datum/reagent/medicine/strange_reagent = 5
- )
- result = /mob/living/simple_animal/pet/cat/breadcat
- subcategory = CAT_BREAD
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
deleted file mode 100644
index b6e73e869da0..000000000000
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_burger.dm
+++ /dev/null
@@ -1,385 +0,0 @@
-
-// see code/module/crafting/table.dm
-
-////////////////////////////////////////////////BURGERS////////////////////////////////////////////////
-
-
-/datum/crafting_recipe/food/humanburger
- name = "Human burger"
- reqs = list(
- /obj/item/food/bun = 1,
- /obj/item/food/patty/human = 1
- )
- parts = list(
- /obj/item/food/patty = 1
- )
- result = /obj/item/food/burger/human
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/burger
- name = "Burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/food/bun = 1
- )
-
- result = /obj/item/food/burger/plain
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/corgiburger
- name = "Corgi burger"
- reqs = list(
- /obj/item/food/patty/corgi = 1,
- /obj/item/food/bun = 1
- )
-
- result = /obj/item/food/burger/corgi
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/appendixburger
- name = "Appendix burger"
- reqs = list(
- /obj/item/organ/appendix = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/appendix
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/brainburger
- name = "Brain burger"
- reqs = list(
- /obj/item/organ/brain = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/brain
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/xenoburger
- name = "Xeno burger"
- reqs = list(
- /obj/item/food/patty/xeno = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/xeno
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/bearger
- name = "Bearger"
- reqs = list(
- /obj/item/food/patty/bear = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/bearger
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/fishburger
- name = "Fish burger"
- reqs = list(
- /obj/item/food/fishfingers = 1,
- /obj/item/food/bun = 1,
- /obj/item/food/cheesewedge = 1
- )
- result = /obj/item/food/burger/fish
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/tofuburger
- name = "Tofu burger"
- reqs = list(
- /obj/item/food/tofu = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/tofu
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/ghostburger
- name = "Ghost burger"
- reqs = list(
- /obj/item/ectoplasm = 1,
- /datum/reagent/consumable/salt = 2,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/ghost
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/clownburger
- name = "Clown burger"
- reqs = list(
- /obj/item/clothing/mask/gas/clown_hat = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/clown
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/mimeburger
- name = "Mime burger"
- reqs = list(
- /obj/item/clothing/mask/gas/mime = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/mime
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/redburger
- name = "Red burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/red = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/red
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/orangeburger
- name = "Orange burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/orange = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/orange
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/yellowburger
- name = "Yellow burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/yellow = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/yellow
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/greenburger
- name = "Green burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/green = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/green
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/blueburger
- name = "Blue burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/blue = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/blue
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/purpleburger
- name = "Purple burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/purple = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/purple
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/blackburger
- name = "Black burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/black = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/black
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/whiteburger
- name = "White burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/toy/crayon/white = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/white
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/spellburger
- name = "Spell burger"
- reqs = list(
- /obj/item/clothing/head/wizard/fake = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/spell
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/spellburger2
- name = "Spell burger"
- reqs = list(
- /obj/item/clothing/head/wizard = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/spell
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/bigbiteburger
- name = "Big bite burger"
- reqs = list(
- /obj/item/food/patty/plain = 3,
- /obj/item/food/bun = 1,
- /obj/item/food/cheesewedge = 2
- )
- result = /obj/item/food/burger/bigbite
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/superbiteburger
- name = "Super bite burger"
- reqs = list(
- /datum/reagent/consumable/salt = 5,
- /datum/reagent/consumable/blackpepper = 5,
- /obj/item/food/patty/plain = 5,
- /obj/item/food/grown/tomato = 4,
- /obj/item/food/cheesewedge = 3,
- /obj/item/food/boiledegg = 1,
- /obj/item/food/meat/bacon = 1,
- /obj/item/food/bun = 1
-
- )
- result = /obj/item/food/burger/superbite
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/slimeburger
- name = "Jelly burger"
- reqs = list(
- /datum/reagent/toxin/slimejelly = 5,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/jelly/slime
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/jellyburger
- name = "Jelly burger"
- reqs = list(
- /datum/reagent/consumable/cherryjelly = 5,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/jelly/cherry
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/fivealarmburger
- name = "Five alarm burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/food/grown/ghost_chili = 2,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/fivealarm
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/ratburger
- name = "Rat burger"
- reqs = list(
- /obj/item/food/deadmouse = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/rat
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/baseballburger
- name = "Home run baseball burger"
- reqs = list(
- /obj/item/melee/baseball_bat = 1,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/baseball
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/baconburger
- name = "Bacon Burger"
- reqs = list(
- /obj/item/food/meat/bacon = 3,
- /obj/item/food/bun = 1
- )
-
- result = /obj/item/food/burger/baconburger
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/empoweredburger
- name = "Empowered Burger"
- reqs = list(
- /obj/item/stack/sheet/mineral/plasma = 2,
- /obj/item/food/bun = 1
- )
-
- result = /obj/item/food/burger/empoweredburger
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/crabburger
- name = "Crab Burger"
- reqs = list(
- /obj/item/food/meat/crab = 2,
- /obj/item/food/bun = 1
- )
-
- result = /obj/item/food/burger/crab
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/cheeseburger
- name = "Cheese Burger"
- reqs = list(
- /obj/item/food/patty/plain = 1,
- /obj/item/food/bun = 1,
- /obj/item/food/cheesewedge = 1,
- )
- result = /obj/item/food/burger/cheese
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/soylentburger
- name = "Soylent Burger"
- reqs = list(
- /obj/item/food/soylentgreen = 1, //two full meats worth.
- /obj/item/food/bun = 1,
- /obj/item/food/cheesewedge = 2,
- )
- result = /obj/item/food/burger/soylent
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/ribburger
- name = "McRib"
- reqs = list(
- /obj/item/food/bbqribs = 1, //The sauce is already included in the ribs
- /obj/item/food/onion_slice = 1, //feel free to remove if too burdensome.
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/rib
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/mcguffin
- name = "McGuffin"
- reqs = list(
- /obj/item/food/friedegg = 1,
- /obj/item/food/meat/bacon = 2,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/mcguffin
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/chickenburger
- name = "Chicken Sandwich"
- reqs = list(
- /obj/item/food/patty/chicken = 1,
- /datum/reagent/consumable/mayonnaise = 5,
- /obj/item/food/bun = 1
- )
- result = /obj/item/food/burger/chicken
- subcategory = CAT_BURGER
-
-/datum/crafting_recipe/food/crazyhamburger
- name = "Crazy hamburger"
- reqs = list(
- /obj/item/food/patty/plain = 2,
- /obj/item/food/bun = 1,
- /obj/item/food/cheesewedge = 2,
- /obj/item/food/grown/chili = 1,
- /obj/item/food/grown/cabbage = 1,
- /obj/item/toy/crayon/green = 1,
- /obj/item/flashlight/flare = 1,
- /datum/reagent/consumable/cooking_oil = 15
- )
- result = /obj/item/food/burger/crazy
- subcategory = CAT_BURGER
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm
deleted file mode 100644
index 94dc48f37a5c..000000000000
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_cake.dm
+++ /dev/null
@@ -1,196 +0,0 @@
-
-// see code/module/crafting/table.dm
-
-////////////////////////////////////////////////CAKE////////////////////////////////////////////////
-
-/datum/crafting_recipe/food/carrotcake
- name = "Carrot cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/carrot = 2
- )
- result = /obj/item/food/cake/carrot
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/cheesecake
- name = "Cheese cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/cheesewedge = 2
- )
- result = /obj/item/food/cake/cheese
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/applecake
- name = "Apple cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/apple = 2
- )
- result = /obj/item/food/cake/apple
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/orangecake
- name = "Orange cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/citrus/orange = 2
- )
- result = /obj/item/food/cake/orange
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/limecake
- name = "Lime cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/citrus/lime = 2
- )
- result = /obj/item/food/cake/lime
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/lemoncake
- name = "Lemon cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/citrus/lemon = 2
- )
- result = /obj/item/food/cake/lemon
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/chocolatecake
- name = "Chocolate cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/chocolatebar = 2
- )
- result = /obj/item/food/cake/chocolate
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/birthdaycake
- name = "Birthday cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/candle = 1,
- /datum/reagent/consumable/sugar = 5,
- /datum/reagent/consumable/caramel = 2
- )
- result = /obj/item/food/cake/birthday
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/energycake
- name = "Energy cake"
- reqs = list(
- /obj/item/food/cake/birthday = 1,
- /obj/item/melee/transforming/energy/sword = 1,
- )
- blacklist = list(/obj/item/food/cake/birthday/energy)
- result = /obj/item/food/cake/birthday/energy
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/braincake
- name = "Brain cake"
- reqs = list(
- /obj/item/organ/brain = 1,
- /obj/item/food/cake/plain = 1
- )
- result = /obj/item/food/cake/brain
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/slimecake
- name = "Slime cake"
- reqs = list(
- /obj/item/slime_extract = 1,
- /obj/item/food/cake/plain = 1
- )
- result = /obj/item/food/cake/slimecake
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/pumpkinspicecake
- name = "Pumpkin spice cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/pumpkin = 2
- )
- result = /obj/item/food/cake/pumpkinspice
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/holycake
- name = "Angel food cake"
- reqs = list(
- /datum/reagent/water/holywater = 15,
- /obj/item/food/cake/plain = 1
- )
- result = /obj/item/food/cake/holy_cake
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/poundcake
- name = "Pound cake"
- reqs = list(
- /obj/item/food/cake/plain = 4
- )
- result = /obj/item/food/cake/pound_cake
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/hardwarecake
- name = "Hardware cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/circuitboard = 2,
- /datum/reagent/toxin/acid = 5
- )
- result = /obj/item/food/cake/hardware_cake
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/bscccake
- name = "blackberry and strawberry chocolate cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/chocolatebar = 2,
- /obj/item/food/grown/berries = 5
- )
- result = /obj/item/food/cake/bscc
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/bscvcake
- name = "blackberry and strawberry vanilla cake"
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/berries = 5
- )
- result = /obj/item/food/cake/bsvc
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/clowncake
- name = "clown cake"
- always_available = FALSE
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/sundae = 2,
- /obj/item/food/grown/banana = 5
- )
- result = /obj/item/food/cake/clown_cake
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/vanillacake
- name = "vanilla cake"
- always_available = FALSE
- reqs = list(
- /obj/item/food/cake/plain = 1,
- /obj/item/food/grown/vanillapod = 2
- )
- result = /obj/item/food/cake/vanilla_cake
- subcategory = CAT_CAKE
-
-/datum/crafting_recipe/food/cak
- name = "Living cat/cake hybrid"
- reqs = list(
- /obj/item/organ/brain = 1,
- /obj/item/organ/heart = 1,
- /obj/item/food/cake/birthday = 1,
- /obj/item/food/meat/slab = 3,
- /datum/reagent/blood = 30,
- /datum/reagent/consumable/sprinkles = 5,
- /datum/reagent/teslium = 1 //To shock the whole thing into life
- )
- result = /mob/living/simple_animal/pet/cat/cak
- subcategory = CAT_CAKE //Cat! Haha, get it? CAT? GET IT? We get it - Love Felines
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_drink.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_drink.dm
index 813b8f63ebda..c9b14e7f79aa 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_drink.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_drink.dm
@@ -1,6 +1,36 @@
// This is the home of drink related tablecrafting recipes, I have opted to only let players bottle fancy boozes to reduce the number of entries.
+////////////////////// Non-alcoholic recipes ///////////////////
+/datum/crafting_recipe/smallcarton
+ name = "Small Carton"
+ result = /obj/item/reagent_containers/food/drinks/sillycup/smallcarton
+ time = 10
+ reqs = list(/obj/item/stack/sheet/cardboard = 1)
+ category = CAT_DRINK
+
+/datum/crafting_recipe/holybottle
+ name = "Holy Water Flask"
+ time = 30
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/bottle = 1,
+ /datum/reagent/water/holywater = 100
+ )
+ result = /obj/item/reagent_containers/food/drinks/bottle/holywater
+ category = CAT_DRINK
+
+//flask of unholy water is a beaker for some reason, I will try making it a bottle and add it here once the antag freeze is over. t. kryson
+
+/datum/crafting_recipe/nothingbottle
+ name = "Nothing Bottle"
+ time = 30
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/bottle = 1,
+ /datum/reagent/consumable/nothing = 100
+ )
+ result = /obj/item/reagent_containers/food/drinks/bottle/bottleofnothing
+ category = CAT_DRINK
+
///////////////// Booze & Bottles ///////////////////
/datum/crafting_recipe/lizardwine
@@ -84,37 +114,6 @@
result = /obj/item/reagent_containers/food/drinks/bottle/patron
category = CAT_DRINK
-////////////////////// Non-alcoholic recipes ///////////////////
-
-/datum/crafting_recipe/holybottle
- name = "Holy Water Flask"
- time = 30
- reqs = list(
- /obj/item/reagent_containers/food/drinks/bottle = 1,
- /datum/reagent/water/holywater = 100
- )
- result = /obj/item/reagent_containers/food/drinks/bottle/holywater
- category = CAT_DRINK
-
-//flask of unholy water is a beaker for some reason, I will try making it a bottle and add it here once the antag freeze is over. t. kryson
-
-/datum/crafting_recipe/nothingbottle
- name = "Nothing Bottle"
- time = 30
- reqs = list(
- /obj/item/reagent_containers/food/drinks/bottle = 1,
- /datum/reagent/consumable/nothing = 100
- )
- result = /obj/item/reagent_containers/food/drinks/bottle/bottleofnothing
- category = CAT_DRINK
-
-/datum/crafting_recipe/smallcarton
- name = "Small Carton"
- result = /obj/item/reagent_containers/food/drinks/sillycup/smallcarton
- time = 10
- reqs = list(/obj/item/stack/sheet/cardboard = 1)
- category = CAT_DRINK
-
/datum/crafting_recipe/candycornliquor
name = "candy corn liquor"
result = /obj/item/reagent_containers/food/drinks/bottle/candycornliquor
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
deleted file mode 100644
index 3881d1aa47c1..000000000000
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_egg.dm
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// see code/module/crafting/table.dm
-
-////////////////////////////////////////////////EGG RECIPE's////////////////////////////////////////////////
-
-/datum/crafting_recipe/food/friedegg
- name = "Fried egg"
- reqs = list(
- /datum/reagent/consumable/salt = 1,
- /datum/reagent/consumable/blackpepper = 1,
- /obj/item/food/egg = 1
- )
- result = /obj/item/food/friedegg
- subcategory = CAT_EGG
-
-/datum/crafting_recipe/food/omelette
- name = "Omelette"
- reqs = list(
- /obj/item/food/egg = 2,
- /obj/item/food/cheesewedge = 2
- )
- result = /obj/item/food/omelette
- subcategory = CAT_EGG
-
-/datum/crafting_recipe/food/chocolateegg
- name = "Chocolate egg"
- reqs = list(
- /obj/item/food/boiledegg = 1,
- /obj/item/food/chocolatebar = 1
- )
- result = /obj/item/food/chocolateegg
- subcategory = CAT_EGG
-
-/datum/crafting_recipe/food/eggsbenedict
- name = "Eggs benedict"
- reqs = list(
- /obj/item/food/friedegg = 1,
- /obj/item/food/meat/steak = 1,
- /obj/item/food/breadslice/plain = 1,
- )
- result = /obj/item/food/benedict
- subcategory = CAT_EGG
-
-/datum/crafting_recipe/food/eggbowl
- name = "Egg bowl"
- reqs = list(
- /obj/item/food/salad/boiledrice = 1,
- /obj/item/food/boiledegg = 1,
- /obj/item/food/grown/carrot = 1,
- /obj/item/food/grown/corn = 1
- )
- result = /obj/item/food/salad/eggbowl
- subcategory = CAT_EGG
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
deleted file mode 100644
index 75767f59acf1..000000000000
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm
+++ /dev/null
@@ -1,312 +0,0 @@
-
-/////////////////
-//Misc. Frozen.//
-/////////////////
-
-/datum/crafting_recipe/food/icecreamsandwich
- name = "Icecream sandwich"
- reqs = list(
- /datum/reagent/consumable/cream = 5,
- /datum/reagent/consumable/ice = 5,
- /obj/item/food/icecream = 1
- )
- result = /obj/item/food/icecreamsandwich
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/strawberryicecreamsandwich
- name = "Strawberry ice cream sandwich"
- reqs = list(
- /datum/reagent/consumable/cream = 5,
- /datum/reagent/consumable/ice = 5,
- /obj/item/food/grown/berries = 2,
- /obj/item/food/icecream = 1
- )
- result = /obj/item/food/strawberryicecreamsandwich
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/spacefreezy
- name ="Space freezy"
- reqs = list(
- /datum/reagent/consumable/bluecherryjelly = 5,
- /datum/reagent/consumable/spacemountainwind = 15,
- /obj/item/food/icecream = 1
- )
- result = /obj/item/food/spacefreezy
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/sundae
- name ="Sundae"
- reqs = list(
- /datum/reagent/consumable/cream = 5,
- /obj/item/food/grown/cherries = 1,
- /obj/item/food/grown/banana = 1,
- /obj/item/food/icecream = 1
- )
- result = /obj/item/food/sundae
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/honkdae
- name ="Honkdae"
- reqs = list(
- /datum/reagent/consumable/cream = 5,
- /obj/item/clothing/mask/gas/clown_hat = 1,
- /obj/item/food/grown/cherries = 1,
- /obj/item/food/grown/banana = 2,
- /obj/item/food/icecream = 1
- )
- result = /obj/item/food/honkdae
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/cornuto
- name = "Cornuto"
- reqs = list(
- /obj/item/food/chocolatebar = 1,
- /datum/reagent/consumable/cream = 4,
- /datum/reagent/consumable/ice = 2,
- /datum/reagent/consumable/sugar = 4,
- /obj/item/food/icecream = 1
- )
- result = /obj/item/food/cornuto
- subcategory = CAT_ICE
-
-//////////////////////////SNOW CONES///////////////////////
-
-/datum/crafting_recipe/food/flavorless_sc
- name = "Flavorless snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15
- )
- result = /obj/item/food/snowcones
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/pineapple_sc
- name = "Pineapple snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/pineapplejuice = 5
- )
- result = /obj/item/food/snowcones/pineapple
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/lime_sc
- name = "Lime snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/limejuice = 5
- )
- result = /obj/item/food/snowcones/lime
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/lemon_sc
- name = "Lemon snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/lemonjuice = 5
- )
- result = /obj/item/food/snowcones/lemon
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/apple_sc
- name = "Apple snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/applejuice = 5
- )
- result = /obj/item/food/snowcones/apple
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/grape_sc
- name = "Grape snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/grapejuice = 5
- )
- result = /obj/item/food/snowcones/grape
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/orange_sc
- name = "Orange snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/orangejuice = 5
- )
- result = /obj/item/food/snowcones/orange
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/blue_sc
- name = "Bluecherry snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/bluecherryjelly= 5
- )
- result = /obj/item/food/snowcones/blue
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/red_sc
- name = "Cherry snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/cherryjelly= 5
- )
- result = /obj/item/food/snowcones/red
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/berry_sc
- name = "Berry snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/berryjuice = 5
- )
- result = /obj/item/food/snowcones/berry
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/fruitsalad_sc
- name = "Fruit Salad snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/water = 5,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/orangejuice = 5,
- /datum/reagent/consumable/limejuice = 5,
- /datum/reagent/consumable/lemonjuice = 5
- )
- result = /obj/item/food/snowcones/fruitsalad
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/mime_sc
- name = "Mime snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/nothing = 5
- )
- result = /obj/item/food/snowcones/mime
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/clown_sc
- name = "Clown snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/laughter = 5
- )
- result = /obj/item/food/snowcones/clown
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/soda_sc
- name = "City Cola snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/space_cola = 5
- )
- result = /obj/item/food/snowcones/soda
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/spacemountainwind_sc
- name = "Space Mountain Wind snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/spacemountainwind = 5
- )
- result = /obj/item/food/snowcones/spacemountainwind
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/pwrgame_sc
- name = "Pwrgame snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/pwr_game = 15
- )
- result = /obj/item/food/snowcones/pwrgame
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/honey_sc
- name = "Honey snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/consumable/honey = 5
- )
- result = /obj/item/food/snowcones/honey
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/rainbow_sc
- name = "Rainbow snowcone"
- reqs = list(
- /obj/item/reagent_containers/food/drinks/sillycup = 1,
- /datum/reagent/consumable/ice = 15,
- /datum/reagent/colorful_reagent = 1 //Harder to make
- )
- result = /obj/item/food/snowcones/rainbow
- subcategory = CAT_ICE
-
-//////////////////////////POPSICLES///////////////////////
-
-// This section includes any frozen treat served on a stick.
-////////////////////////////////////////////////////////////
-
-/datum/crafting_recipe/food/orange_popsicle
- name = "Orange popsicle"
- reqs = list(
- /obj/item/popsicle_stick = 1,
- /datum/reagent/consumable/orangejuice = 4,
- /datum/reagent/consumable/ice = 2,
- /datum/reagent/consumable/cream = 2,
- /datum/reagent/consumable/vanilla = 2,
- /datum/reagent/consumable/sugar = 2
- )
- result = /obj/item/food/popsicle/creamsicle_orange
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/berry_popsicle
- name = "Berry popsicle"
- reqs = list(
- /obj/item/popsicle_stick = 1,
- /datum/reagent/consumable/berryjuice = 4,
- /datum/reagent/consumable/ice = 2,
- /datum/reagent/consumable/cream = 2,
- /datum/reagent/consumable/vanilla = 2,
- /datum/reagent/consumable/sugar = 2
- )
- result = /obj/item/food/popsicle/creamsicle_berry
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/jumbo
- name = "Jumbo icecream"
- reqs = list(
- /obj/item/popsicle_stick = 1,
- /obj/item/food/chocolatebar = 1,
- /datum/reagent/consumable/ice = 2,
- /datum/reagent/consumable/cream = 2,
- /datum/reagent/consumable/vanilla = 3,
- /datum/reagent/consumable/sugar = 2
- )
- result = /obj/item/food/popsicle/jumbo
- subcategory = CAT_ICE
-
-/datum/crafting_recipe/food/nogga_black
- name = "Nogga black"
- reqs = list(
- /obj/item/popsicle_stick = 1,
- /datum/reagent/consumable/blumpkinjuice = 4, //natural source of ammonium chloride
- /datum/reagent/consumable/salt = 2,
- /datum/reagent/consumable/ice = 2,
- /datum/reagent/consumable/cream = 2,
- /datum/reagent/consumable/vanilla = 2,
- /datum/reagent/consumable/sugar = 2
- )
- result = /obj/item/food/popsicle/nogga_black
- subcategory = CAT_ICE
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm
index ccf9cf945905..a0931e6a1856 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_meat.dm
@@ -2,15 +2,6 @@
////////////////////////////////////////////////KEBABS////////////////////////////////////////////////
-/datum/crafting_recipe/food/humankebab
- name = "Human kebab"
- reqs = list(
- /obj/item/stack/rods = 1,
- /obj/item/food/meat/steak/plain/human = 2
- )
- result = /obj/item/food/kebab/human
- subcategory = CAT_MEAT
-
/datum/crafting_recipe/food/kebab
name = "Kebab"
reqs = list(
@@ -29,15 +20,6 @@
result = /obj/item/food/kebab/tofu
subcategory = CAT_MEAT
-/datum/crafting_recipe/food/tailkebab
- name = "Lizard tail kebab"
- reqs = list(
- /obj/item/stack/rods = 1,
- /obj/item/organ/tail/lizard = 1
- )
- result = /obj/item/food/kebab/tail
- subcategory = CAT_MEAT
-
/datum/crafting_recipe/food/fiestaskewer
name = "Fiesta Skewer"
reqs = list(
@@ -99,18 +81,6 @@
result = /obj/item/food/sashimi
subcategory = CAT_MEAT
-////////////////////////////////////////////////MR SPIDER////////////////////////////////////////////////
-
-/datum/crafting_recipe/food/spidereggsham
- name = "Spider eggs ham"
- reqs = list(
- /datum/reagent/consumable/salt = 1,
- /obj/item/food/spidereggs = 1,
- /obj/item/food/meat/cutlet/spider = 2
- )
- result = /obj/item/food/spidereggsham
- subcategory = CAT_MEAT
-
////////////////////////////////////////////////MISC RECIPE's////////////////////////////////////////////////
/datum/crafting_recipe/food/cornedbeef
@@ -123,16 +93,6 @@
result = /obj/item/food/cornedbeef
subcategory = CAT_MEAT
-/datum/crafting_recipe/food/bearsteak
- name = "Filet migrawr"
- reqs = list(
- /datum/reagent/consumable/ethanol/manly_dorf = 5,
- /obj/item/food/meat/steak/bear = 1,
- )
- tools = list(/obj/item/lighter)
- result = /obj/item/food/bearsteak
- subcategory = CAT_MEAT
-
/datum/crafting_recipe/food/enchiladas
name = "Enchiladas"
reqs = list(
@@ -190,24 +150,6 @@
result = /obj/item/food/pigblanket
subcategory = CAT_MEAT
-/datum/crafting_recipe/food/ratkebab
- name = "Rat Kebab"
- reqs = list(
- /obj/item/stack/rods = 1,
- /obj/item/food/deadmouse = 1
- )
- result = /obj/item/food/kebab/rat
- subcategory = CAT_MEAT
-
-/datum/crafting_recipe/food/doubleratkebab
- name = "Double Rat Kebab"
- reqs = list(
- /obj/item/stack/rods = 1,
- /obj/item/food/deadmouse = 2
- )
- result = /obj/item/food/kebab/rat/double
- subcategory = CAT_MEAT
-
/datum/crafting_recipe/food/ricepork
name = "Rice and Pork"
reqs = list(
@@ -227,15 +169,6 @@
result = /obj/item/food/bbqribs
subcategory = CAT_MEAT
-/datum/crafting_recipe/food/meatclown
- name = "Meat Clown"
- reqs = list(
- /obj/item/food/meat/steak/plain = 1,
- /obj/item/food/grown/banana = 1
- )
- result = /obj/item/food/meatclown
- subcategory = CAT_MEAT
-
/datum/crafting_recipe/food/lasagna
name = "Lasagna"
reqs = list(
@@ -258,7 +191,6 @@
result = /obj/item/food/salad/gumbo
subcategory = CAT_MEAT
-
/datum/crafting_recipe/food/fried_chicken
name = "Fried Chicken"
reqs = list(
@@ -277,11 +209,3 @@
)
result = /obj/item/food/yukhoe
subcategory = CAT_MEAT
-
-/datum/crafting_recipe/food/meatjam
- name = "Meat Jam"
- reqs = list(
- /obj/item/food/meat/slab/human = 1
- )
- result = /obj/item/food/meatjam
- subcategory = CAT_MEAT
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
index 4145a8d3dde2..e8df15bc617c 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm
@@ -3,6 +3,18 @@
// MISC
+////////////////////////////////////////////////EGG RECIPE's////////////////////////////////////////////////
+
+/datum/crafting_recipe/food/chocolateegg
+ name = "Chocolate egg"
+ reqs = list(
+ /obj/item/food/boiledegg = 1,
+ /obj/item/food/chocolatebar = 1
+ )
+ result = /obj/item/food/chocolateegg
+ subcategory = CAT_MISCFOOD
+ always_available = FALSE
+
/datum/crafting_recipe/food/candiedapple
name = "Candied apple"
reqs = list(
@@ -11,16 +23,7 @@
)
result = /obj/item/food/candiedapple
subcategory = CAT_MISCFOOD
-
-/datum/crafting_recipe/food/spiderlollipop
- name = "Spider Lollipop"
- reqs = list(/obj/item/stack/rods = 1,
- /datum/reagent/consumable/sugar = 5,
- /datum/reagent/water = 5,
- /obj/item/food/spiderling = 1
- )
- result = /obj/item/food/chewable/spiderlollipop
- subcategory = CAT_MISCFOOD
+ always_available = FALSE
/datum/crafting_recipe/food/chococoin
name = "Choco coin"
@@ -30,6 +33,7 @@
)
result = /obj/item/food/chococoin
subcategory = CAT_MISCFOOD
+ always_available = FALSE
/datum/crafting_recipe/food/fudgedice
name = "Fudge dice"
@@ -39,6 +43,7 @@
)
result = /obj/item/food/fudgedice
subcategory = CAT_MISCFOOD
+ always_available = FALSE
/datum/crafting_recipe/food/chocoorange
name = "Choco orange"
@@ -48,6 +53,47 @@
)
result = /obj/item/food/chocoorange
subcategory = CAT_MISCFOOD
+ always_available = FALSE
+
+/datum/crafting_recipe/food/friedegg
+ name = "Fried egg"
+ reqs = list(
+ /datum/reagent/consumable/salt = 1,
+ /datum/reagent/consumable/blackpepper = 1,
+ /obj/item/food/egg = 1
+ )
+ result = /obj/item/food/friedegg
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/omelette
+ name = "Omelette"
+ reqs = list(
+ /obj/item/food/egg = 2,
+ /obj/item/food/cheesewedge = 2
+ )
+ result = /obj/item/food/omelette
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/eggsbenedict
+ name = "Eggs benedict"
+ reqs = list(
+ /obj/item/food/friedegg = 1,
+ /obj/item/food/meat/steak = 1,
+ /obj/item/food/breadslice/plain = 1,
+ )
+ result = /obj/item/food/benedict
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/eggbowl
+ name = "Egg bowl"
+ reqs = list(
+ /obj/item/food/salad/boiledrice = 1,
+ /obj/item/food/boiledegg = 1,
+ /obj/item/food/grown/carrot = 1,
+ /obj/item/food/grown/corn = 1
+ )
+ result = /obj/item/food/salad/eggbowl
+ subcategory = CAT_MISCFOOD
/datum/crafting_recipe/food/loadedbakedpotato
name = "Loaded baked potato"
@@ -107,15 +153,6 @@
////////////////////////////////////////////////TOAST////////////////////////////////////////////////
-/datum/crafting_recipe/food/slimetoast
- name = "Slime toast"
- reqs = list(
- /datum/reagent/toxin/slimejelly = 5,
- /obj/item/food/breadslice/plain = 1
- )
- result = /obj/item/food/jelliedtoast/slime
- subcategory = CAT_MISCFOOD
-
/datum/crafting_recipe/food/jelliedyoast
name = "Jellied toast"
reqs = list(
@@ -172,16 +209,6 @@
result = /obj/item/food/carneburrito
subcategory = CAT_MISCFOOD
-/datum/crafting_recipe/food/fuegoburrito
- name ="Fuego plasma burrito"
- reqs = list(
- /obj/item/food/tortilla = 1,
- /obj/item/food/grown/ghost_chili = 2,
- /obj/item/food/grown/soybeans = 1
- )
- result = /obj/item/food/fuegoburrito
- subcategory = CAT_MISCFOOD
-
/datum/crafting_recipe/food/melonfruitbowl
name ="Melon fruit bowl"
reqs = list(
@@ -232,32 +259,6 @@
result = /obj/item/food/honeybar
subcategory = CAT_MISCFOOD
-
-/datum/crafting_recipe/food/stuffedlegion
- name = "Stuffed legion"
- time = 40
- reqs = list(
- /obj/item/food/meat/steak/goliath = 1,
- /obj/item/organ/regenerative_core/legion = 1,
- /datum/reagent/consumable/ketchup = 2,
- /datum/reagent/consumable/capsaicin = 2
- )
- result = /obj/item/food/stuffedlegion
- subcategory = CAT_MISCFOOD
-
-/datum/crafting_recipe/food/powercrepe
- name = "Powercrepe"
- time = 40
- reqs = list(
- /obj/item/food/flatdough = 1,
- /datum/reagent/consumable/milk = 1,
- /datum/reagent/consumable/cherryjelly = 5,
- /obj/item/stock_parts/cell/super =1,
- /obj/item/melee/sabre = 1
- )
- result = /obj/item/food/powercrepe
- subcategory = CAT_MISCFOOD
-
/datum/crafting_recipe/food/taco
name ="Classic Taco"
reqs = list(
@@ -298,19 +299,6 @@
result = /obj/item/food/salad/ricepudding
subcategory = CAT_MISCFOOD
-/datum/crafting_recipe/food/butterbear //ITS ALIVEEEEEE!
- name = "Living bear/butter hybrid"
- reqs = list(
- /obj/item/organ/brain = 1,
- /obj/item/organ/heart = 1,
- /obj/item/food/butter = 10,
- /obj/item/food/meat/slab = 5,
- /datum/reagent/blood = 50,
- /datum/reagent/teslium = 1 //To shock the whole thing into life
- )
- result = /mob/living/simple_animal/hostile/bear/butter
- subcategory = CAT_MISCFOOD
-
/datum/crafting_recipe/food/crab_rangoon
name = "Crab Rangoon"
reqs = list(
@@ -322,13 +310,300 @@
result = /obj/item/food/crab_rangoon
subcategory = CAT_MISCFOOD
-/datum/crafting_recipe/food/royalcheese
- name = "Royal Cheese"
+/////////////////
+//Misc. Frozen.//
+/////////////////
+
+/datum/crafting_recipe/food/icecreamsandwich
+ name = "Icecream sandwich"
+ reqs = list(
+ /datum/reagent/consumable/cream = 5,
+ /datum/reagent/consumable/ice = 5,
+ /obj/item/food/icecream = 1
+ )
+ result = /obj/item/food/icecreamsandwich
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/strawberryicecreamsandwich
+ name = "Strawberry ice cream sandwich"
+ reqs = list(
+ /datum/reagent/consumable/cream = 5,
+ /datum/reagent/consumable/ice = 5,
+ /obj/item/food/grown/berries = 2,
+ /obj/item/food/icecream = 1
+ )
+ result = /obj/item/food/strawberryicecreamsandwich
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/spacefreezy
+ name ="Space freezy"
+ reqs = list(
+ /datum/reagent/consumable/bluecherryjelly = 5,
+ /datum/reagent/consumable/spacemountainwind = 15,
+ /obj/item/food/icecream = 1
+ )
+ result = /obj/item/food/spacefreezy
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/sundae
+ name ="Sundae"
+ reqs = list(
+ /datum/reagent/consumable/cream = 5,
+ /obj/item/food/grown/cherries = 1,
+ /obj/item/food/grown/banana = 1,
+ /obj/item/food/icecream = 1
+ )
+ result = /obj/item/food/sundae
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/honkdae
+ name ="Honkdae"
+ reqs = list(
+ /datum/reagent/consumable/cream = 5,
+ /obj/item/clothing/mask/gas/clown_hat = 1,
+ /obj/item/food/grown/cherries = 1,
+ /obj/item/food/grown/banana = 2,
+ /obj/item/food/icecream = 1
+ )
+ result = /obj/item/food/honkdae
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/cornuto
+ name = "Cornuto"
+ reqs = list(
+ /obj/item/food/chocolatebar = 1,
+ /datum/reagent/consumable/cream = 4,
+ /datum/reagent/consumable/ice = 2,
+ /datum/reagent/consumable/sugar = 4,
+ /obj/item/food/icecream = 1
+ )
+ result = /obj/item/food/cornuto
+ subcategory = CAT_MISCFOOD
+
+//////////////////////////SNOW CONES///////////////////////
+
+/datum/crafting_recipe/food/flavorless_sc
+ name = "Flavorless snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15
+ )
+ result = /obj/item/food/snowcones
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/pineapple_sc
+ name = "Pineapple snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/pineapplejuice = 5
+ )
+ result = /obj/item/food/snowcones/pineapple
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/lime_sc
+ name = "Lime snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/limejuice = 5
+ )
+ result = /obj/item/food/snowcones/lime
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/lemon_sc
+ name = "Lemon snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/lemonjuice = 5
+ )
+ result = /obj/item/food/snowcones/lemon
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/apple_sc
+ name = "Apple snowcone"
reqs = list(
- /obj/item/food/cheesewheel = 1,
- /obj/item/clothing/head/crown = 1,
- /datum/reagent/medicine/strange_reagent = 5,
- /datum/reagent/toxin/mutagen = 5
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/applejuice = 5
+ )
+ result = /obj/item/food/snowcones/apple
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/grape_sc
+ name = "Grape snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/grapejuice = 5
+ )
+ result = /obj/item/food/snowcones/grape
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/orange_sc
+ name = "Orange snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/orangejuice = 5
+ )
+ result = /obj/item/food/snowcones/orange
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/blue_sc
+ name = "Bluecherry snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/bluecherryjelly= 5
+ )
+ result = /obj/item/food/snowcones/blue
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/red_sc
+ name = "Cherry snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/cherryjelly= 5
+ )
+ result = /obj/item/food/snowcones/red
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/berry_sc
+ name = "Berry snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/berryjuice = 5
+ )
+ result = /obj/item/food/snowcones/berry
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/fruitsalad_sc
+ name = "Fruit Salad snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/water = 5,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/orangejuice = 5,
+ /datum/reagent/consumable/limejuice = 5,
+ /datum/reagent/consumable/lemonjuice = 5
+ )
+ result = /obj/item/food/snowcones/fruitsalad
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/mime_sc
+ name = "Mime snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/nothing = 5
+ )
+ result = /obj/item/food/snowcones/mime
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/clown_sc
+ name = "Clown snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/laughter = 5
+ )
+ result = /obj/item/food/snowcones/clown
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/soda_sc
+ name = "City Cola snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/space_cola = 5
+ )
+ result = /obj/item/food/snowcones/soda
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/spacemountainwind_sc
+ name = "Space Mountain Wind snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/spacemountainwind = 5
+ )
+ result = /obj/item/food/snowcones/spacemountainwind
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/pwrgame_sc
+ name = "Pwrgame snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/pwr_game = 15
+ )
+ result = /obj/item/food/snowcones/pwrgame
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/honey_sc
+ name = "Honey snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/consumable/honey = 5
+ )
+ result = /obj/item/food/snowcones/honey
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/rainbow_sc
+ name = "Rainbow snowcone"
+ reqs = list(
+ /obj/item/reagent_containers/food/drinks/sillycup = 1,
+ /datum/reagent/consumable/ice = 15,
+ /datum/reagent/colorful_reagent = 1 //Harder to make
+ )
+ result = /obj/item/food/snowcones/rainbow
+ subcategory = CAT_MISCFOOD
+
+//////////////////////////POPSICLES///////////////////////
+
+// This section includes any frozen treat served on a stick.
+////////////////////////////////////////////////////////////
+
+/datum/crafting_recipe/food/orange_popsicle
+ name = "Orange popsicle"
+ reqs = list(
+ /obj/item/popsicle_stick = 1,
+ /datum/reagent/consumable/orangejuice = 4,
+ /datum/reagent/consumable/ice = 2,
+ /datum/reagent/consumable/cream = 2,
+ /datum/reagent/consumable/vanilla = 2,
+ /datum/reagent/consumable/sugar = 2
+ )
+ result = /obj/item/food/popsicle/creamsicle_orange
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/berry_popsicle
+ name = "Berry popsicle"
+ reqs = list(
+ /obj/item/popsicle_stick = 1,
+ /datum/reagent/consumable/berryjuice = 4,
+ /datum/reagent/consumable/ice = 2,
+ /datum/reagent/consumable/cream = 2,
+ /datum/reagent/consumable/vanilla = 2,
+ /datum/reagent/consumable/sugar = 2
+ )
+ result = /obj/item/food/popsicle/creamsicle_berry
+ subcategory = CAT_MISCFOOD
+
+/datum/crafting_recipe/food/jumbo
+ name = "Jumbo icecream"
+ reqs = list(
+ /obj/item/popsicle_stick = 1,
+ /obj/item/food/chocolatebar = 1,
+ /datum/reagent/consumable/ice = 2,
+ /datum/reagent/consumable/cream = 2,
+ /datum/reagent/consumable/vanilla = 3,
+ /datum/reagent/consumable/sugar = 2
)
- result = /obj/item/food/royalcheese
+ result = /obj/item/food/popsicle/jumbo
subcategory = CAT_MISCFOOD
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
index aab8a45528c6..80a0c264cf91 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm
@@ -1,5 +1,294 @@
// see code/module/crafting/table.dm
+////////////////////////////////////////////////CAKE////////////////////////////////////////////////
+
+/datum/crafting_recipe/food/poundcake
+ name = "Pound cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 4
+ )
+ result = /obj/item/food/cake/pound_cake
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/vanillacake
+ name = "vanilla cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/vanillapod = 2
+ )
+ result = /obj/item/food/cake/vanilla_cake
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/bscccake
+ name = "blackberry and strawberry chocolate cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/chocolatebar = 2,
+ /obj/item/food/grown/berries = 5
+ )
+ result = /obj/item/food/cake/bscc
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/bscvcake
+ name = "blackberry and strawberry vanilla cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/berries = 5
+ )
+ result = /obj/item/food/cake/bsvc
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/clowncake
+ name = "clown cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/sundae = 2,
+ /obj/item/food/grown/banana = 5
+ )
+ result = /obj/item/food/cake/clown_cake
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/carrotcake
+ name = "Carrot cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/carrot = 2
+ )
+ result = /obj/item/food/cake/carrot
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/cheesecake
+ name = "Cheese cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/cheesewedge = 2
+ )
+ result = /obj/item/food/cake/cheese
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/applecake
+ name = "Apple cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/apple = 2
+ )
+ result = /obj/item/food/cake/apple
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/orangecake
+ name = "Orange cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/citrus/orange = 2
+ )
+ result = /obj/item/food/cake/orange
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/limecake
+ name = "Lime cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/citrus/lime = 2
+ )
+ result = /obj/item/food/cake/lime
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/lemoncake
+ name = "Lemon cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/citrus/lemon = 2
+ )
+ result = /obj/item/food/cake/lemon
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/chocolatecake
+ name = "Chocolate cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/chocolatebar = 2
+ )
+ result = /obj/item/food/cake/chocolate
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/birthdaycake
+ name = "Birthday cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/candle = 1,
+ /datum/reagent/consumable/sugar = 5,
+ /datum/reagent/consumable/caramel = 2
+ )
+ result = /obj/item/food/cake/birthday
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/braincake
+ name = "Brain cake"
+ reqs = list(
+ /obj/item/organ/brain = 1,
+ /obj/item/food/cake/plain = 1
+ )
+ result = /obj/item/food/cake/brain
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/pumpkinspicecake
+ name = "Pumpkin spice cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/food/grown/pumpkin = 2
+ )
+ result = /obj/item/food/cake/pumpkinspice
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+////////////////////////////////////////////////PIES////////////////////////////////////////////////
+
+/datum/crafting_recipe/food/cherrypie
+ name = "Cherry pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/cherries = 1
+ )
+ result = /obj/item/food/pie/cherrypie
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/plumppie
+ name = "Plump pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/mushroom/plumphelmet = 1
+ )
+ result = /obj/item/food/pie/plump_pie
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/applepie
+ name = "Apple pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/apple = 1
+ )
+ result = /obj/item/food/pie/applepie
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/meatpie
+ name = "Meat pie"
+ reqs = list(
+ /datum/reagent/consumable/blackpepper = 1,
+ /datum/reagent/consumable/salt = 1,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/meat/steak/plain = 1
+ )
+ result = /obj/item/food/pie/meatpie
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/tofupie
+ name = "Tofu pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/tofu = 1
+ )
+ result = /obj/item/food/pie/tofupie
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/amanitapie
+ name = "Amanita pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/mushroom/amanita = 1
+ )
+ result = /obj/item/food/pie/amanita_pie
+ subcategory = CAT_PASTRY
+
+/datum/crafting_recipe/food/pumpkinpie
+ name = "Pumpkin pie"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /datum/reagent/consumable/sugar = 5,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/pumpkin = 1
+ )
+ result = /obj/item/food/pie/pumpkinpie
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/bananacreampie
+ name = "Banana cream pie"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/banana = 1
+ )
+ result = /obj/item/food/pie/cream
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/berryclafoutis
+ name = "Berry clafoutis"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/berries = 1
+ )
+ result = /obj/item/food/pie/berryclafoutis
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/grapetart
+ name = "Grape tart"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /datum/reagent/consumable/sugar = 5,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/grapes = 3
+ )
+ result = /obj/item/food/pie/grapetart
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/berrytart
+ name = "Berry tart"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /datum/reagent/consumable/sugar = 5,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/berries = 3
+ )
+ result = /obj/item/food/pie/berrytart
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/dulcedebatata
+ name = "Dulce de batata"
+ reqs = list(
+ /datum/reagent/consumable/vanilla = 5,
+ /datum/reagent/water = 5,
+ /obj/item/food/grown/potato/sweet = 2
+ )
+ result = /obj/item/food/pie/dulcedebatata
+ subcategory = CAT_PASTRY
+ always_available = FALSE
+
+/datum/crafting_recipe/food/baklava
+ name = "Baklava pie"
+ reqs = list(
+ /obj/item/food/butter = 2,
+ /obj/item/food/tortilla = 4, //Layers
+ /obj/item/seeds/wheat/oat = 4
+ )
+ result = /obj/item/food/pie/baklava
+ subcategory = CAT_PASTRY
+ always_available = FALSE
////////////////////////////////////////////////DONUTS////////////////////////////////////////////////
@@ -13,16 +302,6 @@
result = /obj/item/food/donut/plain
subcategory = CAT_PASTRY
-
-/datum/crafting_recipe/food/donut/chaos
- name = "Chaos donut"
- reqs = list(
- /datum/reagent/consumable/frostoil = 5,
- /datum/reagent/consumable/capsaicin = 5,
- /obj/item/food/pastrybase = 1
- )
- result = /obj/item/food/donut/chaos
-
/datum/crafting_recipe/food/donut/meat
time = 15
name = "Meat donut"
@@ -32,23 +311,6 @@
)
result = /obj/item/food/donut/meat
-/datum/crafting_recipe/food/donut/jelly
- name = "Jelly donut"
- reqs = list(
- /datum/reagent/consumable/berryjuice = 5,
- /obj/item/food/pastrybase = 1
- )
- result = /obj/item/food/donut/jelly/plain
-
-/datum/crafting_recipe/food/donut/slimejelly
- name = "Slime jelly donut"
- reqs = list(
- /datum/reagent/toxin/slimejelly = 5,
- /obj/item/food/pastrybase = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/plain
-
-
/datum/crafting_recipe/food/donut/berry
name = "Berry Donut"
reqs = list(
@@ -57,15 +319,6 @@
)
result = /obj/item/food/donut/berry
-/datum/crafting_recipe/food/donut/trumpet
- name = "Spaceman's Donut"
- reqs = list(
- /datum/reagent/medicine/polypyr = 3,
- /obj/item/food/donut/plain = 1
- )
-
- result = /obj/item/food/donut/trumpet
-
/datum/crafting_recipe/food/donut/apple
name = "Apple Donut"
reqs = list(
@@ -90,6 +343,14 @@
)
result = /obj/item/food/donut/choco
+/datum/crafting_recipe/food/donut/matcha
+ name = "Matcha Donut"
+ reqs = list(
+ /datum/reagent/toxin/teapowder = 3,
+ /obj/item/food/donut/plain = 1
+ )
+ result = /obj/item/food/donut/matcha
+
/datum/crafting_recipe/food/donut/blumpkin
name = "Blumpkin Donut"
reqs = list(
@@ -106,14 +367,6 @@
)
result = /obj/item/food/donut/bungo
-/datum/crafting_recipe/food/donut/matcha
- name = "Matcha Donut"
- reqs = list(
- /datum/reagent/toxin/teapowder = 3,
- /obj/item/food/donut/plain = 1
- )
- result = /obj/item/food/donut/matcha
-
/datum/crafting_recipe/food/donut/laugh
name = "Sweet Pea Donut"
reqs = list(
@@ -124,6 +377,15 @@
////////////////////////////////////////////////////JELLY DONUTS///////////////////////////////////////////////////////
+/datum/crafting_recipe/food/donut/jelly
+ name = "Jelly donut"
+ reqs = list(
+ /datum/reagent/consumable/berryjuice = 5,
+ /obj/item/food/pastrybase = 1
+ )
+ result = /obj/item/food/donut/jelly/plain
+ always_available = FALSE
+
/datum/crafting_recipe/food/donut/jelly/berry
name = "Berry Jelly Donut"
reqs = list(
@@ -132,15 +394,6 @@
)
result = /obj/item/food/donut/jelly/berry
-/datum/crafting_recipe/food/donut/jelly/trumpet
- name = "Spaceman's Jelly Donut"
- reqs = list(
- /datum/reagent/medicine/polypyr = 3,
- /obj/item/food/donut/jelly/plain = 1
- )
-
- result = /obj/item/food/donut/jelly/trumpet
-
/datum/crafting_recipe/food/donut/jelly/apple
name = "Apple Jelly Donut"
reqs = list(
@@ -197,81 +450,6 @@
)
result = /obj/item/food/donut/jelly/laugh
-////////////////////////////////////////////////////SLIME DONUTS///////////////////////////////////////////////////////
-
-/datum/crafting_recipe/food/donut/slimejelly/berry
- name = "Berry Slime Donut"
- reqs = list(
- /datum/reagent/consumable/berryjuice = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/berry
-
-/datum/crafting_recipe/food/donut/slimejelly/trumpet
- name = "Spaceman's Slime Donut"
- reqs = list(
- /datum/reagent/medicine/polypyr = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
-
- result = /obj/item/food/donut/jelly/slimejelly/trumpet
-
-/datum/crafting_recipe/food/donut/slimejelly/apple
- name = "Apple Slime Donut"
- reqs = list(
- /datum/reagent/consumable/applejuice = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/apple
-
-/datum/crafting_recipe/food/donut/slimejelly/caramel
- name = "Caramel Slime Donut"
- reqs = list(
- /datum/reagent/consumable/caramel = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/caramel
-
-/datum/crafting_recipe/food/donut/slimejelly/choco
- name = "Chocolate Slime Donut"
- reqs = list(
- /obj/item/food/chocolatebar = 1,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/choco
-
-/datum/crafting_recipe/food/donut/slimejelly/blumpkin
- name = "Blumpkin Slime Donut"
- reqs = list(
- /datum/reagent/consumable/blumpkinjuice = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/blumpkin
-
-/datum/crafting_recipe/food/donut/slimejelly/bungo
- name = "Bungo Slime Donut"
- reqs = list(
- /datum/reagent/consumable/bungojuice = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/bungo
-
-/datum/crafting_recipe/food/donut/slimejelly/matcha
- name = "Matcha Slime Donut"
- reqs = list(
- /datum/reagent/toxin/teapowder = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/matcha
-
-/datum/crafting_recipe/food/donut/slimejelly/laugh
- name = "Sweet Pea Jelly Donut"
- reqs = list(
- /datum/reagent/consumable/laughsyrup = 3,
- /obj/item/food/donut/jelly/slimejelly/plain = 1
- )
- result = /obj/item/food/donut/jelly/slimejelly/laugh
-
////////////////////////////////////////////////WAFFLES////////////////////////////////////////////////
/datum/crafting_recipe/food/waffles
@@ -283,7 +461,6 @@
result = /obj/item/food/waffles
subcategory = CAT_PASTRY
-
/datum/crafting_recipe/food/soylenviridians
name = "Soylent viridians"
reqs = list(
@@ -302,16 +479,6 @@
result = /obj/item/food/soylentgreen
subcategory = CAT_PASTRY
-
-/datum/crafting_recipe/food/rofflewaffles
- name = "Roffle waffles"
- reqs = list(
- /datum/reagent/drug/mushroomhallucinogen = 5,
- /obj/item/food/pastrybase = 2
- )
- result = /obj/item/food/rofflewaffles
- subcategory = CAT_PASTRY
-
////////////////////////////////////////////////DONKPOCCKETS////////////////////////////////////////////////
/datum/crafting_recipe/food/donkpocket
@@ -323,6 +490,7 @@
)
result = /obj/item/food/donkpocket
subcategory = CAT_PASTRY
+ always_available = FALSE
/datum/crafting_recipe/food/dankpocket
time = 15
@@ -333,6 +501,7 @@
)
result = /obj/item/food/dankpocket
subcategory = CAT_PASTRY
+ always_available = FALSE
/datum/crafting_recipe/food/donkpocket/spicy
time = 15
@@ -344,6 +513,7 @@
)
result = /obj/item/food/donkpocket/spicy
subcategory = CAT_PASTRY
+ always_available = FALSE
/datum/crafting_recipe/food/donkpocket/teriyaki
time = 15
@@ -355,6 +525,7 @@
)
result = /obj/item/food/donkpocket/teriyaki
subcategory = CAT_PASTRY
+ always_available = FALSE
/datum/crafting_recipe/food/donkpocket/pizza
time = 15
@@ -366,6 +537,7 @@
)
result = /obj/item/food/donkpocket/pizza
subcategory = CAT_PASTRY
+ always_available = FALSE
/datum/crafting_recipe/food/donkpocket/honk
time = 15
@@ -377,6 +549,7 @@
)
result = /obj/item/food/donkpocket/honk
subcategory = CAT_PASTRY
+ always_available = FALSE
/datum/crafting_recipe/food/donkpocket/berry
time = 15
@@ -387,17 +560,7 @@
)
result = /obj/item/food/donkpocket/berry
subcategory = CAT_PASTRY
-
-/datum/crafting_recipe/food/donkpocket/gondola
- time = 15
- name = "Gondola-pocket"
- reqs = list(
- /obj/item/food/pastrybase = 1,
- /obj/item/food/meatball = 1,
- /datum/reagent/tranquility = 5
- )
- result = /obj/item/food/donkpocket/gondola
- subcategory = CAT_PASTRY
+ always_available = FALSE
////////////////////////////////////////////////MUFFINS////////////////////////////////////////////////
@@ -421,17 +584,6 @@
result = /obj/item/food/muffin/berry
subcategory = CAT_PASTRY
-/datum/crafting_recipe/food/booberrymuffin
- name = "Booberry muffin"
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /obj/item/food/pastrybase = 1,
- /obj/item/food/grown/berries = 1,
- /obj/item/ectoplasm = 1
- )
- result = /obj/item/food/muffin/booberry
- subcategory = CAT_PASTRY
-
/datum/crafting_recipe/food/chawanmushi
name = "Chawanmushi"
reqs = list(
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm
deleted file mode 100644
index 5e30ff8d416b..000000000000
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pie.dm
+++ /dev/null
@@ -1,220 +0,0 @@
-
-// see code/module/crafting/table.dm
-
-////////////////////////////////////////////////PIES////////////////////////////////////////////////
-
-/datum/crafting_recipe/food/bananacreampie
- name = "Banana cream pie"
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/banana = 1
- )
- result = /obj/item/food/pie/cream
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/meatpie
- name = "Meat pie"
- reqs = list(
- /datum/reagent/consumable/blackpepper = 1,
- /datum/reagent/consumable/salt = 1,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/meat/steak/plain = 1
- )
- result = /obj/item/food/pie/meatpie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/tofupie
- name = "Tofu pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/tofu = 1
- )
- result = /obj/item/food/pie/tofupie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/xenopie
- name = "Xeno pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/meat/cutlet/xeno = 1
- )
- result = /obj/item/food/pie/xemeatpie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/cherrypie
- name = "Cherry pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/cherries = 1
- )
- result = /obj/item/food/pie/cherrypie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/berryclafoutis
- name = "Berry clafoutis"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/berries = 1
- )
- result = /obj/item/food/pie/berryclafoutis
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/bearypie
- name = "Beary Pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/berries = 1,
- /obj/item/food/meat/steak/bear = 1
- )
- result = /obj/item/food/pie/bearypie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/amanitapie
- name = "Amanita pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/mushroom/amanita = 1
- )
- result = /obj/item/food/pie/amanita_pie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/plumppie
- name = "Plump pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/mushroom/plumphelmet = 1
- )
- result = /obj/item/food/pie/plump_pie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/applepie
- name = "Apple pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/apple = 1
- )
- result = /obj/item/food/pie/applepie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/pumpkinpie
- name = "Pumpkin pie"
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /datum/reagent/consumable/sugar = 5,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/pumpkin = 1
- )
- result = /obj/item/food/pie/pumpkinpie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/goldenappletart
- name = "Golden apple tart"
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /datum/reagent/consumable/sugar = 5,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/apple/gold = 1
- )
- result = /obj/item/food/pie/appletart
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/grapetart
- name = "Grape tart"
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /datum/reagent/consumable/sugar = 5,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/grapes = 3
- )
- result = /obj/item/food/pie/grapetart
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/mimetart
- name = "Mime tart"
- always_available = FALSE
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /datum/reagent/consumable/sugar = 5,
- /obj/item/food/pie/plain = 1,
- /datum/reagent/consumable/nothing = 5
- )
- result = /obj/item/food/pie/mimetart
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/berrytart
- name = "Berry tart"
- always_available = FALSE
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /datum/reagent/consumable/sugar = 5,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/berries = 3
- )
- result = /obj/item/food/pie/berrytart
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/cocolavatart
- name = "Chocolate Lava tart"
- always_available = FALSE
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /datum/reagent/consumable/sugar = 5,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/chocolatebar = 3,
- /obj/item/slime_extract = 1 //The reason you dont know how to make it!
- )
- result = /obj/item/food/pie/cocolavatart
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/blumpkinpie
- name = "Blumpkin pie"
- reqs = list(
- /datum/reagent/consumable/milk = 5,
- /datum/reagent/consumable/sugar = 5,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/blumpkin = 1
- )
- result = /obj/item/food/pie/blumpkinpie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/dulcedebatata
- name = "Dulce de batata"
- reqs = list(
- /datum/reagent/consumable/vanilla = 5,
- /datum/reagent/water = 5,
- /obj/item/food/grown/potato/sweet = 2
- )
- result = /obj/item/food/pie/dulcedebatata
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/frostypie
- name = "Frosty pie"
- reqs = list(
- /obj/item/food/pie/plain = 1,
- /obj/item/food/grown/bluecherries = 1
- )
- result = /obj/item/food/pie/frostypie
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/baklava
- name = "Baklava pie"
- reqs = list(
- /obj/item/food/butter = 2,
- /obj/item/food/tortilla = 4, //Layers
- /obj/item/seeds/wheat/oat = 4
- )
- result = /obj/item/food/pie/baklava
- subcategory = CAT_PIE
-
-/datum/crafting_recipe/food/Pierre
- name = "Pierre's hand pie"
- reqs = list(
- /datum/reagent/consumable/blackpepper = 1,
- /datum/reagent/consumable/salt = 1,
- /obj/item/food/pie/plain = 1,
- /obj/item/food/meat/slab/human = 1
- )
- result = /obj/item/food/pie/Pierre
- subcategory = CAT_PIE
-
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm
index 8a1f873b70ae..6aeb30f59c22 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pizza.dm
@@ -24,18 +24,6 @@
result = /obj/item/food/pizza/meat
subcategory = CAT_PIZZA
-/datum/crafting_recipe/food/arnold
- name = "Arnold pizza"
- reqs = list(
- /obj/item/food/pizzabread = 1,
- /obj/item/food/meat/cutlet = 3,
- /obj/item/ammo_casing/c9mm = 8,
- /obj/item/food/cheesewedge = 1,
- /obj/item/food/grown/tomato = 1
- )
- result = /obj/item/food/pizza/arnold
- subcategory = CAT_PIZZA
-
/datum/crafting_recipe/food/mushroompizza
name = "Mushroom pizza"
reqs = list(
@@ -68,17 +56,6 @@
result = /obj/item/food/pizza/donkpocket
subcategory = CAT_PIZZA
-/datum/crafting_recipe/food/dankpizza
- name = "Dank pizza"
- reqs = list(
- /obj/item/food/pizzabread = 1,
- /obj/item/food/grown/ambrosia/vulgaris = 3,
- /obj/item/food/cheesewedge = 1,
- /obj/item/food/grown/tomato = 1
- )
- result = /obj/item/food/pizza/dank
- subcategory = CAT_PIZZA
-
/datum/crafting_recipe/food/sassysagepizza
name = "Sassysage pizza"
reqs = list(
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm
index ab93d50ed91a..5d03fa46ed9e 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_salad.dm
@@ -3,26 +3,6 @@
////////////////////////////////////////////////SALADS////////////////////////////////////////////////
-/datum/crafting_recipe/food/herbsalad
- name = "Herb salad"
- reqs = list(
- /obj/item/reagent_containers/glass/bowl = 1,
- /obj/item/food/grown/ambrosia/vulgaris = 3,
- /obj/item/food/grown/apple = 1
- )
- result = /obj/item/food/salad/herbsalad
- subcategory = CAT_SALAD
-
-/datum/crafting_recipe/food/aesirsalad
- name = "Aesir salad"
- reqs = list(
- /obj/item/reagent_containers/glass/bowl = 1,
- /obj/item/food/grown/ambrosia/deus = 3,
- /obj/item/food/grown/apple/gold = 1
- )
- result = /obj/item/food/salad/aesirsalad
- subcategory = CAT_SALAD
-
/datum/crafting_recipe/food/validsalad
name = "Valid salad"
reqs = list(
@@ -34,19 +14,6 @@
result = /obj/item/food/salad/validsalad
subcategory = CAT_SALAD
-/datum/crafting_recipe/food/monkeysdelight
- name = "Monkeys delight"
- reqs = list(
- /datum/reagent/consumable/flour = 5,
- /datum/reagent/consumable/salt = 1,
- /datum/reagent/consumable/blackpepper = 1,
- /obj/item/reagent_containers/glass/bowl = 1,
- /obj/item/food/monkeycube = 1,
- /obj/item/food/grown/banana = 1
- )
- result = /obj/item/food/soup/monkeysdelight
- subcategory = CAT_SALAD
-
/datum/crafting_recipe/food/oatmeal
name = "Oatmeal"
reqs = list(
@@ -77,8 +44,7 @@
/obj/item/food/grown/apple = 1,
/obj/item/food/grown/grapes = 1,
/obj/item/food/grown/banana = 2,
- /obj/item/food/watermelonslice = 2
-
+ /obj/item/food/watermelonslice = 2,
)
result = /obj/item/food/salad/jungle
subcategory = CAT_SALAD
@@ -89,8 +55,7 @@
/obj/item/reagent_containers/glass/bowl = 1,
/obj/item/food/grown/citrus/lime = 1,
/obj/item/food/grown/citrus/lemon = 1,
- /obj/item/food/grown/citrus/orange = 1
-
+ /obj/item/food/grown/citrus/orange = 1,
)
result = /obj/item/food/salad/citrusdelight
subcategory = CAT_SALAD
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm
index e069cffeea55..331d42818eb7 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_sandwich.dm
@@ -25,32 +25,265 @@
result = /obj/item/food/grilledcheese
subcategory = CAT_SANDWICH
-/datum/crafting_recipe/food/slimesandwich
+/datum/crafting_recipe/food/cherrysandwich
name = "Jelly sandwich"
reqs = list(
- /datum/reagent/toxin/slimejelly = 5,
+ /datum/reagent/consumable/cherryjelly = 5,
/obj/item/food/breadslice/plain = 2,
)
- result = /obj/item/food/jellysandwich/slime
+ result = /obj/item/food/jellysandwich/cherry
subcategory = CAT_SANDWICH
-/datum/crafting_recipe/food/cherrysandwich
- name = "Jelly sandwich"
+////////////////////////////////////////////////BURGERS////////////////////////////////////////////////
+
+/datum/crafting_recipe/food/burger
+ name = "Burger"
reqs = list(
- /datum/reagent/consumable/cherryjelly = 5,
- /obj/item/food/breadslice/plain = 2,
+ /obj/item/food/patty/plain = 1,
+ /obj/item/food/bun = 1
)
- result = /obj/item/food/jellysandwich/cherry
+
+ result = /obj/item/food/burger/plain
subcategory = CAT_SANDWICH
-/datum/crafting_recipe/food/notasandwich
- name = "Not a sandwich"
+/datum/crafting_recipe/food/corgiburger
+ name = "Corgi burger"
reqs = list(
- /obj/item/food/breadslice/plain = 2,
- /obj/item/clothing/mask/fakemoustache = 1
+ /obj/item/food/patty/corgi = 1,
+ /obj/item/food/bun = 1
+ )
+
+ result = /obj/item/food/burger/corgi
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/appendixburger
+ name = "Appendix burger"
+ reqs = list(
+ /obj/item/organ/appendix = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/appendix
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/brainburger
+ name = "Brain burger"
+ reqs = list(
+ /obj/item/organ/brain = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/brain
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/fishburger
+ name = "Fish burger"
+ reqs = list(
+ /obj/item/food/carpmeat = 1,
+ /obj/item/food/bun = 1,
+ /obj/item/food/cheesewedge = 1
+ )
+ result = /obj/item/food/burger/fish
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/tofuburger
+ name = "Tofu burger"
+ reqs = list(
+ /obj/item/food/tofu = 1,
+ /obj/item/food/bun = 1
)
- result = /obj/item/food/notasandwich
+ result = /obj/item/food/burger/tofu
subcategory = CAT_SANDWICH
+/datum/crafting_recipe/food/redburger
+ name = "Red burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/red = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/red
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/orangeburger
+ name = "Orange burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/orange = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/orange
+ subcategory = CAT_SANDWICH
+/datum/crafting_recipe/food/yellowburger
+ name = "Yellow burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/yellow = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/yellow
+ subcategory = CAT_SANDWICH
+/datum/crafting_recipe/food/greenburger
+ name = "Green burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/green = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/green
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/blueburger
+ name = "Blue burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/blue = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/blue
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/purpleburger
+ name = "Purple burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/purple = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/purple
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/blackburger
+ name = "Black burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/black = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/black
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/whiteburger
+ name = "White burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/toy/crayon/white = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/white
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/bigbiteburger
+ name = "Big bite burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 3,
+ /obj/item/food/bun = 1,
+ /obj/item/food/cheesewedge = 2
+ )
+ result = /obj/item/food/burger/bigbite
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/superbiteburger
+ name = "Super bite burger"
+ reqs = list(
+ /datum/reagent/consumable/salt = 5,
+ /datum/reagent/consumable/blackpepper = 5,
+ /obj/item/food/patty/plain = 5,
+ /obj/item/food/grown/tomato = 4,
+ /obj/item/food/cheesewedge = 3,
+ /obj/item/food/boiledegg = 1,
+ /obj/item/food/meat/bacon = 1,
+ /obj/item/food/bun = 1
+
+ )
+ result = /obj/item/food/burger/superbite
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/jellyburger
+ name = "Jelly burger"
+ reqs = list(
+ /datum/reagent/consumable/cherryjelly = 5,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/jelly/cherry
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/baconburger
+ name = "Bacon Burger"
+ reqs = list(
+ /obj/item/food/meat/bacon = 3,
+ /obj/item/food/bun = 1
+ )
+
+ result = /obj/item/food/burger/baconburger
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/empoweredburger
+ name = "Empowered Burger"
+ reqs = list(
+ /obj/item/stack/sheet/mineral/plasma = 2,
+ /obj/item/food/bun = 1
+ )
+
+ result = /obj/item/food/burger/empoweredburger
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/crabburger
+ name = "Crab Burger"
+ reqs = list(
+ /obj/item/food/meat/crab = 2,
+ /obj/item/food/bun = 1
+ )
+
+ result = /obj/item/food/burger/crab
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/cheeseburger
+ name = "Cheese Burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/food/bun = 1,
+ /obj/item/food/cheesewedge = 1,
+ )
+ result = /obj/item/food/burger/cheese
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/soylentburger
+ name = "Soylent Burger"
+ reqs = list(
+ /obj/item/food/soylentgreen = 1, //two full meats worth.
+ /obj/item/food/bun = 1,
+ /obj/item/food/cheesewedge = 2,
+ )
+ result = /obj/item/food/burger/soylent
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/ribburger
+ name = "McRib"
+ reqs = list(
+ /obj/item/food/bbqribs = 1, //The sauce is already included in the ribs
+ /obj/item/food/onion_slice = 1, //feel free to remove if too burdensome.
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/rib
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/mcguffin
+ name = "McGuffin"
+ reqs = list(
+ /obj/item/food/friedegg = 1,
+ /obj/item/food/meat/bacon = 2,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/mcguffin
+ subcategory = CAT_SANDWICH
+
+/datum/crafting_recipe/food/chickenburger
+ name = "Chicken Sandwich"
+ reqs = list(
+ /obj/item/food/patty/chicken = 1,
+ /datum/reagent/consumable/mayonnaise = 5,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/chicken
+ subcategory = CAT_SANDWICH
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm
index 1ec7cf038ea5..72cbd93e043d 100644
--- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm
@@ -3,6 +3,15 @@
////////////////////////////////////////////////SOUP////////////////////////////////////////////////
+/datum/crafting_recipe/food/wishsoup
+ name = "Wish soup"
+ reqs = list(
+ /datum/reagent/water = 20,
+ /obj/item/reagent_containers/glass/bowl = 1
+ )
+ result= /obj/item/food/soup/wish
+ subcategory = CAT_SOUP
+
/datum/crafting_recipe/food/meatballsoup
name = "Meatball soup"
reqs = list(
@@ -40,25 +49,6 @@
result = /obj/item/food/soup/nettle
subcategory = CAT_SOUP
-/datum/crafting_recipe/food/wingfangchu
- name = "Wingfangchu"
- reqs = list(
- /obj/item/reagent_containers/glass/bowl = 1,
- /datum/reagent/consumable/soysauce = 5,
- /obj/item/food/meat/cutlet/xeno = 2
- )
- result = /obj/item/food/soup/wingfangchu
- subcategory = CAT_SOUP
-
-/datum/crafting_recipe/food/wishsoup
- name = "Wish soup"
- reqs = list(
- /datum/reagent/water = 20,
- /obj/item/reagent_containers/glass/bowl = 1
- )
- result= /obj/item/food/soup/wish
- subcategory = CAT_SOUP
-
/datum/crafting_recipe/food/hotchili
name = "Hot chili"
reqs = list(
@@ -70,29 +60,6 @@
result = /obj/item/food/soup/hotchili
subcategory = CAT_SOUP
-/datum/crafting_recipe/food/coldchili
- name = "Cold chili"
- reqs = list(
- /obj/item/reagent_containers/glass/bowl = 1,
- /obj/item/food/meat/cutlet = 2,
- /obj/item/food/grown/icepepper = 1,
- /obj/item/food/grown/tomato = 1
- )
- result = /obj/item/food/soup/coldchili
- subcategory = CAT_SOUP
-
-/datum/crafting_recipe/food/clownchili
- name = "Chili con carnival"
- reqs = list(
- /obj/item/reagent_containers/glass/bowl = 1,
- /obj/item/food/meat/cutlet = 2,
- /obj/item/food/grown/chili = 1,
- /obj/item/food/grown/tomato = 1,
- /obj/item/clothing/shoes/clown_shoes = 1
- )
- result = /obj/item/food/soup/clownchili
- subcategory = CAT_SOUP
-
/datum/crafting_recipe/food/tomatosoup
name = "Tomato soup"
reqs = list(
@@ -294,3 +261,63 @@
)
result = /obj/item/food/soup/peasoup
subcategory = CAT_SOUP
+
+
+////////////////////////////////////////////////SALADS////////////////////////////////////////////////
+
+/datum/crafting_recipe/food/validsalad
+ name = "Valid salad"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/grown/ambrosia/vulgaris = 3,
+ /obj/item/food/grown/potato = 1,
+ /obj/item/food/meatball = 1
+ )
+ result = /obj/item/food/salad/validsalad
+ subcategory = CAT_SALAD
+
+/datum/crafting_recipe/food/oatmeal
+ name = "Oatmeal"
+ reqs = list(
+ /datum/reagent/consumable/milk = 10,
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/grown/oat = 1
+ )
+ result = /obj/item/food/salad/oatmeal
+ subcategory = CAT_SALAD
+
+/datum/crafting_recipe/food/fruitsalad
+ name = "Fruit salad"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/grown/apple = 1,
+ /obj/item/food/grown/grapes = 1,
+ /obj/item/food/grown/citrus/orange = 1,
+ /obj/item/food/watermelonslice = 2
+
+ )
+ result = /obj/item/food/salad/fruit
+ subcategory = CAT_SALAD
+
+/datum/crafting_recipe/food/junglesalad
+ name = "Jungle salad"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/grown/apple = 1,
+ /obj/item/food/grown/grapes = 1,
+ /obj/item/food/grown/banana = 2,
+ /obj/item/food/watermelonslice = 2,
+ )
+ result = /obj/item/food/salad/jungle
+ subcategory = CAT_SALAD
+
+/datum/crafting_recipe/food/citrusdelight
+ name = "Citrus delight"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/grown/citrus/lime = 1,
+ /obj/item/food/grown/citrus/lemon = 1,
+ /obj/item/food/grown/citrus/orange = 1,
+ )
+ result = /obj/item/food/salad/citrusdelight
+ subcategory = CAT_SALAD
diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_unusual.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_unusual.dm
new file mode 100644
index 000000000000..e3a343c36b03
--- /dev/null
+++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_unusual.dm
@@ -0,0 +1,782 @@
+/*
+* Unusual food recipes require ingredients that are
+* rare or inaccessable under normal means.
+*/
+
+/datum/crafting_recipe/food/meatjam
+ name = "Meat Jam"
+ reqs = list(
+ /obj/item/food/meat/slab/human = 1
+ )
+ result = /obj/item/food/meatjam
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/pierre
+ name = "Pierre's hand pie"
+ reqs = list(
+ /datum/reagent/consumable/blackpepper = 1,
+ /datum/reagent/consumable/salt = 1,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/meat/slab/human = 1
+ )
+ result = /obj/item/food/pie/pierre
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/humankebab
+ name = "Human kebab"
+ reqs = list(
+ /obj/item/stack/rods = 1,
+ /obj/item/food/meat/steak/plain/human = 2
+ )
+ result = /obj/item/food/kebab/human
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/humanburger
+ name = "Human burger"
+ reqs = list(
+ /obj/item/food/bun = 1,
+ /obj/item/food/patty/human = 1
+ )
+ parts = list(
+ /obj/item/food/patty = 1
+ )
+ result = /obj/item/food/burger/human
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/ratkebab
+ name = "Rat Kebab"
+ reqs = list(
+ /obj/item/stack/rods = 1,
+ /obj/item/food/deadmouse = 1
+ )
+ result = /obj/item/food/kebab/rat
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/doubleratkebab
+ name = "Double Rat Kebab"
+ reqs = list(
+ /obj/item/stack/rods = 1,
+ /obj/item/food/deadmouse = 2
+ )
+ result = /obj/item/food/kebab/rat/double
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/ratburger
+ name = "Rat burger"
+ reqs = list(
+ /obj/item/food/deadmouse = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/rat
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/meatclown
+ name = "Meat Clown"
+ reqs = list(
+ /obj/item/food/meat/steak/plain = 1,
+ /obj/item/food/grown/banana = 1
+ )
+ result = /obj/item/food/meatclown
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/rofflewaffles
+ name = "Roffle waffles"
+ reqs = list(
+ /datum/reagent/drug/mushroomhallucinogen = 5,
+ /obj/item/food/pastrybase = 2
+ )
+ result = /obj/item/food/rofflewaffles
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/clownchili
+ name = "Chili con carnival"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/meat/cutlet = 2,
+ /obj/item/food/grown/chili = 1,
+ /obj/item/food/grown/tomato = 1,
+ /obj/item/clothing/shoes/clown_shoes = 1
+ )
+ result = /obj/item/food/soup/clownchili
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/notasandwich
+ name = "Not a sandwich"
+ reqs = list(
+ /obj/item/food/breadslice/plain = 2,
+ /obj/item/clothing/mask/fakemoustache = 1
+ )
+ result = /obj/item/food/notasandwich
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/moldybread // why would you make this?
+ name = "Moldy Bread"
+ reqs = list(
+ /obj/item/food/breadslice/plain = 1,
+ /obj/item/food/grown/mushroom/amanita = 1
+ )
+ result = /obj/item/food/breadslice/moldy
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/goldenappletart
+ name = "Golden apple tart"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /datum/reagent/consumable/sugar = 5,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/apple/gold = 1
+ )
+ result = /obj/item/food/pie/appletart
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/spiderlollipop
+ name = "Spider Lollipop"
+ reqs = list(/obj/item/stack/rods = 1,
+ /datum/reagent/consumable/sugar = 5,
+ /datum/reagent/water = 5,
+ /obj/item/food/spiderling = 1
+ )
+ result = /obj/item/food/chewable/spiderlollipop
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/dankpizza
+ name = "Dank pizza"
+ reqs = list(
+ /obj/item/food/pizzabread = 1,
+ /obj/item/food/grown/ambrosia/vulgaris = 3,
+ /obj/item/food/cheesewedge = 1,
+ /obj/item/food/grown/tomato = 1
+ )
+ result = /obj/item/food/pizza/dank
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/clownburger
+ name = "Clown burger"
+ reqs = list(
+ /obj/item/clothing/mask/gas/clown_hat = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/clown
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/mimeburger
+ name = "Mime burger"
+ reqs = list(
+ /obj/item/clothing/mask/gas/mime = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/mime
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/spellburger
+ name = "Spell burger"
+ reqs = list(
+ /obj/item/clothing/head/wizard/fake = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/spell
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/spellburger2
+ name = "Spell burger"
+ reqs = list(
+ /obj/item/clothing/head/wizard = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/spell
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/baseballburger
+ name = "Home run baseball burger"
+ reqs = list(
+ /obj/item/melee/baseball_bat = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/baseball
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/crazyhamburger
+ name = "Crazy hamburger"
+ reqs = list(
+ /obj/item/food/patty/plain = 2,
+ /obj/item/food/bun = 1,
+ /obj/item/food/cheesewedge = 2,
+ /obj/item/food/grown/chili = 1,
+ /obj/item/food/grown/cabbage = 1,
+ /obj/item/toy/crayon/green = 1,
+ /obj/item/flashlight/flare = 1,
+ /datum/reagent/consumable/cooking_oil = 15
+ )
+ result = /obj/item/food/burger/crazy
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/herbsalad
+ name = "Herb salad"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/grown/ambrosia/vulgaris = 3,
+ /obj/item/food/grown/apple = 1
+ )
+ result = /obj/item/food/salad/herbsalad
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/aesirsalad
+ name = "Aesir salad"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/grown/ambrosia/deus = 3,
+ /obj/item/food/grown/apple/gold = 1
+ )
+ result = /obj/item/food/salad/aesirsalad
+ subcategory = CAT_UNUSUAL
+
+/datum/crafting_recipe/food/nogga_black
+ name = "Nogga black"
+ reqs = list(
+ /obj/item/popsicle_stick = 1,
+ /datum/reagent/consumable/blumpkinjuice = 4, //natural source of ammonium chloride
+ /datum/reagent/consumable/salt = 2,
+ /datum/reagent/consumable/ice = 2,
+ /datum/reagent/consumable/cream = 2,
+ /datum/reagent/consumable/vanilla = 2,
+ /datum/reagent/consumable/sugar = 2
+ )
+ result = /obj/item/food/popsicle/nogga_black
+ subcategory = CAT_UNUSUAL
+
+/////NEEDS TO BE LEARNED FIRST/////
+
+/datum/crafting_recipe/food/donut/trumpet
+ name = "Spaceman's Donut"
+ reqs = list(
+ /datum/reagent/medicine/polypyr = 3,
+ /obj/item/food/donut/plain = 1
+ )
+ result = /obj/item/food/donut/trumpet
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/donut/jelly/trumpet
+ name = "Spaceman's Jelly Donut"
+ reqs = list(
+ /datum/reagent/medicine/polypyr = 3,
+ /obj/item/food/donut/jelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/trumpet
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/coldchili
+ name = "Cold chili"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/meat/cutlet = 2,
+ /obj/item/food/grown/icepepper = 1,
+ /obj/item/food/grown/tomato = 1
+ )
+ result = /obj/item/food/soup/coldchili
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/mimanabread
+ name = "Mimana bread"
+ reqs = list(
+ /datum/reagent/consumable/soymilk = 5,
+ /obj/item/food/bread/plain = 1,
+ /obj/item/food/tofu = 3,
+ /obj/item/food/grown/banana/mime = 1
+ )
+ result = /obj/item/food/bread/mimana
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/blumpkinpie
+ name = "Blumpkin pie"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /datum/reagent/consumable/sugar = 5,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/blumpkin = 1
+ )
+ result = /obj/item/food/pie/blumpkinpie
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/frostypie
+ name = "Frosty pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/bluecherries = 1
+ )
+ result = /obj/item/food/pie/frostypie
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+ /////////////////////////
+ //Impossible ingredients/
+ /////////////////////////
+/datum/crafting_recipe/food/butterbear //ITS ALIVEEEEEE!
+ name = "Living bear/butter hybrid"
+ reqs = list(
+ /obj/item/organ/brain = 1,
+ /obj/item/organ/heart = 1,
+ /obj/item/food/butter = 10,
+ /obj/item/food/meat/slab = 5,
+ /datum/reagent/blood = 50,
+ /datum/reagent/teslium = 1 //To shock the whole thing into life
+ )
+ result = /mob/living/simple_animal/hostile/bear/butter
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/cak
+ name = "Living cat/cake hybrid"
+ reqs = list(
+ /obj/item/organ/brain = 1,
+ /obj/item/organ/heart = 1,
+ /obj/item/food/cake/birthday = 1,
+ /obj/item/food/meat/slab = 3,
+ /datum/reagent/blood = 30,
+ /datum/reagent/consumable/sprinkles = 5,
+ /datum/reagent/teslium = 1 //To shock the whole thing into life
+ )
+ result = /mob/living/simple_animal/pet/cat/cak
+ subcategory = CAT_UNUSUAL //Cat! Haha, get it? CAT? GET IT? We get it - Love Felines
+ always_available = FALSE
+
+/datum/crafting_recipe/food/breadcat
+ name = "Bread cat/bread hybrid"
+ reqs = list(
+ /obj/item/food/bread/plain = 1,
+ /obj/item/organ/ears/cat = 1,
+ /obj/item/organ/tail/cat = 1,
+ /obj/item/food/meat/slab = 3,
+ /datum/reagent/blood = 50,
+ /datum/reagent/medicine/strange_reagent = 5
+ )
+ result = /mob/living/simple_animal/pet/cat/breadcat
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/royalcheese
+ name = "Royal Cheese"
+ reqs = list(
+ /obj/item/food/cheesewheel = 1,
+ /obj/item/clothing/head/crown = 1,
+ /datum/reagent/medicine/strange_reagent = 5,
+ /datum/reagent/toxin/mutagen = 5
+ )
+ result = /obj/item/food/royalcheese
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/slimecake
+ name = "Slime cake"
+ reqs = list(
+ /obj/item/slime_extract = 1,
+ /obj/item/food/cake/plain = 1
+ )
+ result = /obj/item/food/cake/slimecake
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/holycake
+ name = "Angel food cake"
+ reqs = list(
+ /datum/reagent/water/holywater = 15,
+ /obj/item/food/cake/plain = 1
+ )
+ result = /obj/item/food/cake/holy_cake
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/mimetart
+ name = "Mime tart"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /datum/reagent/consumable/sugar = 5,
+ /obj/item/food/pie/plain = 1,
+ /datum/reagent/consumable/nothing = 5
+ )
+ result = /obj/item/food/pie/mimetart
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/cocolavatart
+ name = "Chocolate Lava tart"
+ always_available = FALSE
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /datum/reagent/consumable/sugar = 5,
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/chocolatebar = 3,
+ /obj/item/slime_extract = 1 //The reason you dont know how to make it!
+ )
+ result = /obj/item/food/pie/cocolavatart
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/donut/chaos
+ name = "Chaos donut"
+ reqs = list(
+ /datum/reagent/consumable/frostoil = 5,
+ /datum/reagent/consumable/capsaicin = 5,
+ /obj/item/food/pastrybase = 1
+ )
+ result = /obj/item/food/donut/chaos
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/donkpocket/gondola
+ time = 15
+ name = "Gondola-pocket"
+ reqs = list(
+ /obj/item/food/pastrybase = 1,
+ /obj/item/food/meatball = 1,
+ /datum/reagent/tranquility = 5
+ )
+ result = /obj/item/food/donkpocket/gondola
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/booberrymuffin
+ name = "Booberry muffin"
+ reqs = list(
+ /datum/reagent/consumable/milk = 5,
+ /obj/item/food/pastrybase = 1,
+ /obj/item/food/grown/berries = 1,
+ /obj/item/ectoplasm = 1
+ )
+ result = /obj/item/food/muffin/booberry
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/fivealarmburger
+ name = "Five alarm burger"
+ reqs = list(
+ /obj/item/food/patty/plain = 1,
+ /obj/item/food/grown/ghost_chili = 2,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/fivealarm
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/ghostburger
+ name = "Ghost burger"
+ reqs = list(
+ /obj/item/ectoplasm = 1,
+ /datum/reagent/consumable/salt = 2,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/ghost
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/fuegoburrito
+ name ="Fuego plasma burrito"
+ reqs = list(
+ /obj/item/food/tortilla = 1,
+ /obj/item/food/grown/ghost_chili = 2,
+ /obj/item/food/grown/soybeans = 1
+ )
+ result = /obj/item/food/fuegoburrito
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/stuffedlegion
+ name = "Stuffed legion"
+ time = 40
+ reqs = list(
+ /obj/item/food/meat/steak/goliath = 1,
+ /obj/item/organ/regenerative_core/legion = 1,
+ /datum/reagent/consumable/ketchup = 2,
+ /datum/reagent/consumable/capsaicin = 2
+ )
+ result = /obj/item/food/stuffedlegion
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/powercrepe
+ name = "Powercrepe"
+ time = 40
+ reqs = list(
+ /obj/item/food/flatdough = 1,
+ /datum/reagent/consumable/milk = 1,
+ /datum/reagent/consumable/cherryjelly = 5,
+ /obj/item/stock_parts/cell/super =1,
+ /obj/item/melee/sabre = 1
+ )
+ result = /obj/item/food/powercrepe
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/arnold
+ name = "Arnold pizza"
+ reqs = list(
+ /obj/item/food/pizzabread = 1,
+ /obj/item/food/meat/cutlet = 3,
+ /obj/item/ammo_casing/c9mm = 8,
+ /obj/item/food/cheesewedge = 1,
+ /obj/item/food/grown/tomato = 1
+ )
+ result = /obj/item/food/pizza/arnold
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/hardwarecake
+ name = "Hardware cake"
+ reqs = list(
+ /obj/item/food/cake/plain = 1,
+ /obj/item/circuitboard = 2,
+ /datum/reagent/toxin/acid = 5
+ )
+ result = /obj/item/food/cake/hardware_cake
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+ //Slimejelly
+/datum/crafting_recipe/food/slimeburger
+ name = "Jelly burger"
+ reqs = list(
+ /datum/reagent/toxin/slimejelly = 5,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/jelly/slime
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/slimetoast
+ name = "Slime toast"
+ reqs = list(
+ /datum/reagent/toxin/slimejelly = 5,
+ /obj/item/food/breadslice/plain = 1
+ )
+ result = /obj/item/food/jelliedtoast/slime
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/slimesandwich
+ name = "Jelly sandwich"
+ reqs = list(
+ /datum/reagent/toxin/slimejelly = 5,
+ /obj/item/food/breadslice/plain = 2,
+ )
+ result = /obj/item/food/jellysandwich/slime
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/donut/slimejelly
+ name = "Slime jelly donut"
+ reqs = list(
+ /datum/reagent/toxin/slimejelly = 5,
+ /obj/item/food/pastrybase = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/plain
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/donut/slimejelly/berry
+ name = "Berry Slime Donut"
+ reqs = list(
+ /datum/reagent/consumable/berryjuice = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/berry
+
+/datum/crafting_recipe/food/donut/slimejelly/trumpet
+ name = "Spaceman's Slime Donut"
+ reqs = list(
+ /datum/reagent/medicine/polypyr = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/trumpet
+
+/datum/crafting_recipe/food/donut/slimejelly/apple
+ name = "Apple Slime Donut"
+ reqs = list(
+ /datum/reagent/consumable/applejuice = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/apple
+
+/datum/crafting_recipe/food/donut/slimejelly/caramel
+ name = "Caramel Slime Donut"
+ reqs = list(
+ /datum/reagent/consumable/caramel = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/caramel
+
+/datum/crafting_recipe/food/donut/slimejelly/choco
+ name = "Chocolate Slime Donut"
+ reqs = list(
+ /obj/item/food/chocolatebar = 1,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/choco
+
+/datum/crafting_recipe/food/donut/slimejelly/blumpkin
+ name = "Blumpkin Slime Donut"
+ reqs = list(
+ /datum/reagent/consumable/blumpkinjuice = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/blumpkin
+
+/datum/crafting_recipe/food/donut/slimejelly/bungo
+ name = "Bungo Slime Donut"
+ reqs = list(
+ /datum/reagent/consumable/bungojuice = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/bungo
+
+/datum/crafting_recipe/food/donut/slimejelly/matcha
+ name = "Matcha Slime Donut"
+ reqs = list(
+ /datum/reagent/toxin/teapowder = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/matcha
+
+/datum/crafting_recipe/food/donut/slimejelly/laugh
+ name = "Sweet Pea Jelly Donut"
+ reqs = list(
+ /datum/reagent/consumable/laughsyrup = 3,
+ /obj/item/food/donut/jelly/slimejelly/plain = 1
+ )
+ result = /obj/item/food/donut/jelly/slimejelly/laugh
+
+/datum/crafting_recipe/food/energycake
+ name = "Energy cake"
+ reqs = list(
+ /obj/item/food/cake/birthday = 1,
+ /obj/item/melee/transforming/energy/sword = 1,
+ )
+ blacklist = list(/obj/item/food/cake/birthday/energy)
+ result = /obj/item/food/cake/birthday/energy
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/monkeysdelight
+ name = "Monkeys delight"
+ reqs = list(
+ /datum/reagent/consumable/flour = 5,
+ /datum/reagent/consumable/salt = 1,
+ /datum/reagent/consumable/blackpepper = 1,
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /obj/item/food/monkeycube = 1,
+ /obj/item/food/grown/banana = 1
+ )
+ result = /obj/item/food/soup/monkeysdelight
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+ //Xenomeat
+/datum/crafting_recipe/food/wingfangchu
+ name = "Wingfangchu"
+ reqs = list(
+ /obj/item/reagent_containers/glass/bowl = 1,
+ /datum/reagent/consumable/soysauce = 5,
+ /obj/item/food/meat/cutlet/xeno = 2
+ )
+ result = /obj/item/food/soup/wingfangchu
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/xenomeatbread
+ name = "Xenomeat bread"
+ reqs = list(
+ /obj/item/food/bread/plain = 1,
+ /obj/item/food/meat/cutlet/xeno = 3,
+ /obj/item/food/cheesewedge = 3
+ )
+ result = /obj/item/food/bread/xenomeat
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/xenopie
+ name = "Xeno pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/meat/cutlet/xeno = 1
+ )
+ result = /obj/item/food/pie/xemeatpie
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/xenoburger
+ name = "Xeno burger"
+ reqs = list(
+ /obj/item/food/patty/xeno = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/xeno
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+ //Unavaliable meats
+/datum/crafting_recipe/food/tailkebab
+ name = "Lizard tail kebab"
+ reqs = list(
+ /obj/item/stack/rods = 1,
+ /obj/item/organ/tail/lizard = 1
+ )
+ result = /obj/item/food/kebab/tail
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/spidermeatbread
+ name = "Spidermeat bread"
+ reqs = list(
+ /obj/item/food/bread/plain = 1,
+ /obj/item/food/meat/cutlet/spider = 3,
+ /obj/item/food/cheesewedge = 3
+ )
+ result = /obj/item/food/bread/spidermeat
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/spidereggsham
+ name = "Spider eggs ham"
+ reqs = list(
+ /datum/reagent/consumable/salt = 1,
+ /obj/item/food/spidereggs = 1,
+ /obj/item/food/meat/cutlet/spider = 2
+ )
+ result = /obj/item/food/spidereggsham
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/bearypie
+ name = "Beary Pie"
+ reqs = list(
+ /obj/item/food/pie/plain = 1,
+ /obj/item/food/grown/berries = 1,
+ /obj/item/food/meat/steak/bear = 1
+ )
+ result = /obj/item/food/pie/bearypie
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/bearger
+ name = "Bearger"
+ reqs = list(
+ /obj/item/food/patty/bear = 1,
+ /obj/item/food/bun = 1
+ )
+ result = /obj/item/food/burger/bearger
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
+
+/datum/crafting_recipe/food/bearsteak
+ name = "Filet migrawr"
+ reqs = list(
+ /datum/reagent/consumable/ethanol/manly_dorf = 5,
+ /obj/item/food/meat/steak/bear = 1,
+ )
+ tools = list(/obj/item/lighter)
+ result = /obj/item/food/bearsteak
+ subcategory = CAT_UNUSUAL
+ always_available = FALSE
diff --git a/code/modules/hydroponics/fermenting_barrel.dm b/code/modules/hydroponics/fermenting_barrel.dm
index 001865122ca4..a9e612f6d4de 100644
--- a/code/modules/hydroponics/fermenting_barrel.dm
+++ b/code/modules/hydroponics/fermenting_barrel.dm
@@ -79,4 +79,4 @@
result = /obj/structure/fermenting_barrel
reqs = list(/obj/item/stack/sheet/mineral/wood = 8)
time = 50
- category = CAT_PRIMAL
+ category = CAT_STRUCT
diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm
index f356454eacae..0e3196fa3915 100644
--- a/code/modules/mining/lavaland/ash_flora.dm
+++ b/code/modules/mining/lavaland/ash_flora.dm
@@ -349,7 +349,7 @@
result = /obj/item/reagent_containers/glass/bowl/mushroom_bowl
reqs = list(/obj/item/food/grown/ash_flora/shavings = 5)
time = 30
- category = CAT_PRIMAL
+ category = CAT_TOOL
/obj/item/reagent_containers/glass/bowl/mushroom_bowl
name = "mushroom bowl"
diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm
index a163394d606e..dc294514ac01 100644
--- a/code/modules/paperwork/pen.dm
+++ b/code/modules/paperwork/pen.dm
@@ -91,7 +91,7 @@
result = /obj/item/pen/charcoal
reqs = list(/obj/item/stack/sheet/mineral/wood = 1, /datum/reagent/ash = 30)
time = 30
- category = CAT_PRIMAL
+ category = CAT_TOOL
/obj/item/pen/fountain/captain
name = "captain's fountain pen"
diff --git a/code/modules/vehicles/lavaboat.dm b/code/modules/vehicles/lavaboat.dm
index a14886871c68..e1fa02fac3dc 100644
--- a/code/modules/vehicles/lavaboat.dm
+++ b/code/modules/vehicles/lavaboat.dm
@@ -32,14 +32,14 @@
result = /obj/item/oar
reqs = list(/obj/item/stack/sheet/bone = 2)
time = 15
- category = CAT_PRIMAL
+ category = CAT_TOOL
/datum/crafting_recipe/boat
name = "Goliath Hide Boat"
result = /obj/vehicle/ridden/lavaboat
reqs = list(/obj/item/stack/sheet/animalhide/goliath_hide = 3)
time = 50
- category = CAT_PRIMAL
+ category = CAT_STRUCT
//Dragon Boat
diff --git a/lobotomy-corp13.dme b/lobotomy-corp13.dme
index 76b3dd53e118..c5937666d9b2 100644
--- a/lobotomy-corp13.dme
+++ b/lobotomy-corp13.dme
@@ -564,8 +564,15 @@
#include "code\datums\components\container_item\tank_holder.dm"
#include "code\datums\components\crafting\crafting.dm"
#include "code\datums\components\crafting\guncrafting.dm"
-#include "code\datums\components\crafting\recipes.dm"
-#include "code\datums\components\crafting\tailoring.dm"
+#include "code\datums\components\crafting\recipes\_recipes.dm"
+#include "code\datums\components\crafting\recipes\ammo.dm"
+#include "code\datums\components\crafting\recipes\carnival_silkcrafting.dm"
+#include "code\datums\components\crafting\recipes\clothing.dm"
+#include "code\datums\components\crafting\recipes\misc.dm"
+#include "code\datums\components\crafting\recipes\robots.dm"
+#include "code\datums\components\crafting\recipes\structures.dm"
+#include "code\datums\components\crafting\recipes\tools.dm"
+#include "code\datums\components\crafting\recipes\weapons.dm"
#include "code\datums\components\fantasy\_fantasy.dm"
#include "code\datums\components\fantasy\affix.dm"
#include "code\datums\components\fantasy\prefixes.dm"
@@ -2275,20 +2282,16 @@
#include "code\modules\food_and_drinks\recipes\food_mixtures.dm"
#include "code\modules\food_and_drinks\recipes\processor_recipes.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_bread.dm"
-#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_burger.dm"
-#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_cake.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_drink.dm"
-#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_egg.dm"
-#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_frozen.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_meat.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_misc.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_pastry.dm"
-#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_pie.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_pizza.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_salad.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_sandwich.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_soup.dm"
#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_spaghetti.dm"
+#include "code\modules\food_and_drinks\recipes\tablecraft\recipes_unusual.dm"
#include "code\modules\games\cas.dm"
#include "code\modules\games\kotahi.dm"
#include "code\modules\games\tarot.dm"