Cooking Pot - unforbidable/tfcplus-bids GitHub Wiki

Description

A cooking pot is a partial alternative to large vessel with additional features mainly focused on cooking, mixing and extracting liquid and solid materials.

Crafting

A clay cooking pot and lid can be crafted by knapping clay.

image image

Then fired in a kiln to become a ceramic cooking pot and lid.

Usage

The cooking pot can contain a liquid substance and a solid item, and in addition, there is an slot for an accessory item. The fluid is visible, as well as the accessory item and the solid item, unless when the lid is placed on the cooking pot.

The cooking pot lid is a separate item that can be placed on top of the cooking pot, and removed as needed, instead of pressing a button in the UI. Shift right click the cooking pot with an empty hand to remove the lid.

Similarly an accessory can be placed on the cooking pot. Currently only Steaming Mesh exists as an accessory. Input items are placed on top of the accessory, so if the cooking pot already contains an input item, accessory cannot be placed, or removed. Shift right click the cooking pot with an empty hand to remove the accessory.

Cooking pot will retain all of its content when broken and picked up, even without a lid placed.

Solid ingredients

Input item can be placed either inside the cooking pot or on top of the accessory. When placing a stack of items, such as salt when making salt water, the exact amount that is required for the recipe will be placed if possible. Sometimes, depending on the recipe, more items can be added to an existing stack of items, such as resin when making pitch. Shift right click the cooking pot with an empty hand to remove then input item. If a stack of items is present, the whole stack is removed at a time.

Liquid ingredients

Liquids can be added and removed using any item container and large vessel.

Without any UI, there is no direct way to empty the liquid from a cooking pot while it is placed on the ground. While the cooking pot is placed on the ground, liquids can to be removed using other containers, such as bottles and large vessels.

To empty the liquids from a cooking pot, first break it to pick it up, then craft in. This action clears out any liquid that may be present in the cooking pot and the liquid is lost forever. If the cooking pot had a lid, any accessory or an input item, those will remain inside the cooking pot.

Recipes

In order to process recipes that require heat, the cooking pot needs to be placed next to a lit firepit, and moved to the edge of the firepit by right clicking the ground. Depending on the fuel used in the firepit the heat level can be either LOW or MEDIUM.

When the conditions change and a recipe becomes invalid (lid removed, insufficient or too much heat) the progress is paused and will resume once the conditions are met again. However, if only minimal progress has been made, the progress is reset. This prevents locking in recipes that might partially overlap with others, while the player is still setting up the cooking conditions. For the same reason, there is a certain delay after the last change has been made before the recipe progress starts. When the input item or input fluid changes, the progress is reset as well.

When a cooking pot is broken and picked up, any recipe progress is reset.

Cooking

Cooking recipes process the liquid content using heat without an input item for a period of time.

Cooking mixes prepared with a Cooking Prep surface can be cooked this way.

Cooking mixes can be added to a cooking pot when it is empty. Cooking mixes up 2 large bowls can be combined into a cooking pot as long as the ingredients used to make them are the same.

Cooking mixes can be merged with liquids such as water or milk.

Output Input Added Fluid
Fish + Water Mix Fish Mix Fresh Water
Meat + Water Mix Meat Mix Fresh Water
Bean + Water Mix Bean Mix Fresh Water
Vegetable + Water Mix Vegetable Mix Fresh Water
Cereal + Water Mix Cereal Mix Fresh Water
Cereal + Milk Mix Cereal Mix Milk

Cooked cooking mixes typically become finished meals, that can be retrieved using ceramic bowls, consuming 250 mB at a time. A bowl of cooked meal weighs 20 oz.

Cooked Meal Cooking Mix Heat Lid
Fish Stew Fish Mix LOW Yes
Fish Soup Fish + Water Mix LOW-MED Yes
Meat Stew Meat Mix LOW Yes
Meat Soup Meat + Water Mix LOW-MED Yes
Bean Stew Bean Mix LOW Yes
Bean Soup Bean + Water Mix LOW-MED Yes
Vegetable Stew Vegetable Mix LOW Yes
Vegetable Soup Vegetable + Water Mix LOW-MED Yes
Porridge Cereal + Water Mix LOW Yes
Porridge (Milk) Cereal + Milk Mix LOW Yes

Cooked meals remain fresh for 18 hours after which they begin to rapidly decay.

Cooked meals are automatically named after the main ingredient, for example Beef Stew or Cabbage Soup.

Resting

Resting recipes process the liquid content without using heat for a period of time.

Output Fluid Input Liquid Time
Curdled Milk 1 mB Milk + Vinegar Mix 1 mB 8 hours
Curdled Goat Milk 1 mB Goat Milk + Vinegar Mix 1 mB 8 hours
Curdled Skimmed Milk 1 mB Skimmed Milk + Vinegar Mix 1 mB 8 hours

Boiling

Boiling recipes process the input item using heat while consuming a portion of the liquid content, typically water.

Any cookable raw food item can be boiled in fresh water or salt water, receiving the Cooked status as well as Boiled status and Cooked level depending on the cooking time.

With LOW heat level the cooked level cannot exceed Medium for meat and Light for fruit and vegetable. With MEDIUM heat level the cooked level cannot exceed Well Done for meat and Medium for fruit and vegetable. The heat level also affects the speed of boiling.

Boiling in salt water enhances the saltiness of the cooked food. Boiling in fresh water slightly reduces the overall taste.

Boiled food will cool down after a while if they are kept in the cooking pot without a heat source.

Steaming

Steaming recipes process the input item using heat while consuming a portion of the liquid, typically water, when a steaming mesh is placed as the accessory inside the cooking pot.

Any cookable raw food item can be steamed in fresh water, receiving the Cooked status as well as the Steamed status, and Cooked level depending on the cooking time. The cooked level cannot exceed Medium for meat and Light for fruit and vegetable. The heat level affects the speed of steaming.

Steaming does not change the taste profile of the food.

Steamed food will cool down after a while if they are kept in the cooking pot without a heat source.

Soaking

Soaking recipes process the input item while consuming some amount of the liquid.

If the recipe can be instantly completed, the output item is immediately returned to the player after they place the input item.

Output Item Input Item Input Liquid Heat Time
Torch Stick Pitch 50 mB n/a Instant
Unfinished Waterskin Leather Bag Pitch 250 mB n/a 1/10 hour
Candle String Wax 200 mB n/a Instant
Candle String Tallow 200 mB n/a Instant

Dissolving

Dissolving recipes consume the input item to craft a new liquid from an existing liquid.

Output Liquid Input Liquid Input Item Heat Time
Salt water 500 mB Fresh Water 500 mB 1x Salt n/a 20

Solidifying

Solidifying recipes consume input liquid to craft a solid item.

When making cheese, a non diary food item can be added for infusion as the input item. The weigh must not exceed 2oz per 1000mb of curdled milk.

Output Item Input Liquid Heat Time
Salt 1x Salt water 500 mB LOW-HIGH 3/4 hour
Cheese 16oz Curdled Milk 1000 mB NONE 8 hours
Goat Cheese 16oz Curdled Goat Milk 1000 mB NONE 8 hours
Hard Cheese 16oz Curdled Skimmed Milk 1000 mB NONE 8 hours
Tallow 16oz Tallow 1000 mB NONE 1 hour

Melting

Melting recipes consume solid input items to craft a new liquid.

Output Liquid Input Item Heat Time
Pitch 500 mB Resin 1x LOW-HIGH 3/4 hour
Wax 300 mB Empty honeycomn 1x LOW-HIGH 3/4 hour
Fresh water 200 mB Snowball 1x LOW-HIGH 1/5 hour
Fresh water 200 mB Snowball 1x NONE 1 hour
Tallow 5000 mB Suet 100 oz LOW 4 hours
Tallow 5000 mB Tallow 80 oz LOW-HIGH 1/4 hours

Fluid Separation

Fluid separation recipes process the input liquid content into two distinct liquids, moving the lighter one of the two to a separate layer at the very top of the cooking pot. The lighter liquid needs to be removed from the cooking pot using an empty container before the rest of the liquid can be retrieved.

The process of fluid separation takes a substantial amount of time.

Top Output Liquid Bottom Output Liquid Input Liquid Heat Time
Fish Oil 50 mB Fresh Water 950 mB Oily Fish Water 1000 mB n/a 48 hours
Cream 50 mB Skimmed Milk 450 mB Milk 500 mB n/a 24 hours
Cream 50 mB Skimmed Milk 450 mB Goat Milk 500 mB n/a 24 hours

Breaking the cooking pot resets the content to the original fluid, even if the recipe has completed.

Fluid Mixing

Fluid mixing recipes merges two input fluids together. The primary liquid needs to be added into the cooking pot. The secondary liquid is delivered by using a fluid container (such as a bottle) on the cooking pot. As long as the ratio is correct and there is sufficient room in the cooking pot, the output liquid is crafted and placed inside the cooking pot instantly.

Containers that support partial volume can be partially emptied to provide the secondary liquid. Containers that do not support partial volume must hold the exact amount of liquid required.

Any amount of fluids can be mixed as long as the ratio matches the recipe. For example, for the ratio of 9:1 the amounts 4500 + 500 => 5000 as well as 2250 + 250 => 2500 are valid.

The ratio does not need to match exactly. This allows partial containers such as ceramic jugs and glass bottles to provide small enough amount of secondary liquid for pretty much any amount of primary liquid. For example, 500 + 50 => 550 are also valid amounts for the ratio of 9:1.

Output Liquid Primary Input Liquid Secondary Item Liquid Heat Time
Honey Water 10 mB Fresh Water 9 mB Honey 1 mB n/a Instant
Brine 10 mB Salt Water 9 mB Vinegar 1 mB n/a Instant
Milk + Vinegar Mix 10 mB Milk 9 mB Vinegar 1 mB n/a Instant
Goat Milk + Vinegar Mix 10 mB Goat Milk 9 mB Vinegar 1 mB n/a Instant
Skimmed Milk + Vinegar Mix 10 mB Skimmed Milk 9 mB Vinegar 1 mB n/a Instant

About boiled and steamed status

Boiled and Steamed status is currently implemented by adding Boiled resp. Steamed food processing tag to the item stack's NBT. For boiled food, there is an additional tag BoiledFluid that holds the name of the fluid the item stack was boiled in.

These new tags are considered when items are being matched against this addon's recipes. For example, when pressing fish into Fish Oil, the fish being pressed needs to have the Steamed tag.

TFC+ obviously does not recognize these new tags, so boiled or steamed food is only shown as "Cooked". For debugging purposes, the new tags can be at least seen if the debug mode is enabled.

As a temporary and ever so slightly hacky measure to distinguish steamed food items, the tag Infusion is also set for steamed food items using the value "(Steamed)" which changes the display text of steamed food items, e.g. "Cooked (Steamed) Fish (Light)".

Notes

  • The amount of fluid consumed when boiling and steaming is rounded to 50 mB so that the entire amount of the remaining liquid can always be retrieved with a bottle.
  • Other addons can register their own recipes for the Cooking Pot.
  • Other addons can register extended food heat index which allows morphing boiled or steamed food item into another food item, similar to how dough can be baked into bread, or how Coarse Flour can be boiled into Porridge.

Future features

  • It will be possible to use metal cooking pots combined with Cooking Range for more efficient cooking and enabling HIGH heat level cooking.