Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT  (Read 1054 times)

Reelya

  • Bay Watcher
    • View Profile

Hey I've just started a mod a couple of hours ago to see how much i can add to the dwarven cooking experience ... this post is reserved for results ... once i have something decent going ... being caught by all sorts of caveats and limitations of the engine, will post some observations for laughs ...

Reelya

  • Bay Watcher
    • View Profile
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #1 on: February 19, 2012, 04:24:18 pm »

Post reserved for chapter headings

Reelya

  • Bay Watcher
    • View Profile
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #2 on: February 19, 2012, 04:24:41 pm »

Episode 1 - making dough and bread from flour. I'm going into this blind with little idea how to do things, which is kinda fun, lots of dead-ends and mistakes ahead.

The very first thing i tried was making a tool or toy which inherited the material from the flour. The pros were that this required very minimal modifications to each crop (added reaction class "IS_FLOUR" to each flour) and gave dough and bread with the name of the type and quality modifiers, e.g. "*dwarven wheat flour dough*" , which was really nice. The cons were that the game won't stockpile this stuff anywhere and the dwarves won't eat it since it's a toy. We need an edible ITEM type with it's own food stockpile section, which would allow cakes, etc which remember their key ingredient and have quality ratings.

D'oh - scratch approach #1, it won't work without Toady adding to the engine, but this approach would have been nice as it minimizes the need to directly edit plants. Implement edible items Toady!

----

Testing an approach #2 gave concrete results - borrowing from quarry bushes I added these lines to cave wheat MILL section :-

      [STATE_NAME_ADJ:SOLID_PASTE:dwarven wheat dough]
      [STATE_NAME_ADJ:SOLID_PRESSED:dwarven wheat bread]
      [REACTION_CLASS:IS_FLOUR]
      [STOCKPILE_GLOB_PASTE]
      [STOCKPILE_GLOB_PRESSED]

After updating the reactions, dwarves will make dough and bake bread as GLOB type, and stockpile them (under paste and press sections of food stockpile settings). Pros are it stockpiles nicely, but cons are it's not stackable and has no quality settings and as I just stuck it in the "MILL" section I can't make the dough or bread directly edible without making the flour edible too.

Now on to version #3 which should be properly edible. I have two options it seems - #1 = edit in an edible dough and bread for every plant with flour (which would make the bread remember its type), #2 - edit in a "dummy" plant with a single dough / bread type. On the principle of conserving information, I'm going with #1. Also, I'd like the products to be stackable. For this reason I looked over the edible product types which are stackable and chose "cheese", as plant cheeses are stackable, and have a stockpile section which is empty.
« Last Edit: February 19, 2012, 04:42:56 pm by Reelya »
Logged

Deon

  • Bay Watcher
  • 💀 💀 💀 💀 💀
    • View Profile
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #3 on: February 19, 2012, 04:28:58 pm »

It's quite easy, you can check Genesis (for 0.31.25) for bread baking, candy making etc.

At first, you need to add the BREAD material to a plant. Each plant can have its own bread type (although you could use a generic "bread" attached to any plant and use it as a product).

Code: [Select]
[PLANT:barley]
[NAME:barley][NAME_PLURAL:barley][ADJ:barley]
[USE_MATERIAL_TEMPLATE:STRUCTURAL:STRUCTURAL_PLANT_TEMPLATE]
[MATERIAL_VALUE:2]
[EDIBLE_VERMIN]
[BASIC_MAT:LOCAL_PLANT_MAT:STRUCTURAL]
[PICKED_TILE:159][PICKED_COLOR:6:6:1]
[DRY][BIOME:NOT_FREEZING]
[VALUE:2]
[USE_MATERIAL_TEMPLATE:BREAD:BREAD_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:barley bread]
[MATERIAL_VALUE:12]
[PREFIX:NONE]
[USE_MATERIAL_TEMPLATE:DRINK:PLANT_ALCOHOL_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:frozen barley beer]
[STATE_NAME_ADJ:LIQUID:barley beer]
[STATE_NAME_ADJ:GAS:boiling barley beer]
[MATERIAL_VALUE:2]
[DISPLAY_COLOR:6:0:0]
[EDIBLE_RAW][EDIBLE_COOKED]
[PREFIX:NONE]
[DRINK:LOCAL_PLANT_MAT:DRINK]
[USE_MATERIAL_TEMPLATE:MILL:PLANT_POWDER_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:barley flour]
[STATE_COLOR:ALL_SOLID:WHITE]
[DISPLAY_COLOR:7:0:1]
[MATERIAL_VALUE:10]
[MATERIAL_REACTION_PRODUCT:BREAD_MAT:LOCAL_PLANT_MAT:BREAD]
[EDIBLE_VERMIN]
[PREFIX:NONE]
[MILL:LOCAL_PLANT_MAT:MILL]
[USE_MATERIAL_TEMPLATE:SEED:SEED_TEMPLATE]
[SEED:barley seed:barley seeds:6:0:0:LOCAL_PLANT_MAT:SEED]
[SPRING][SUMMER][AUTUMN]
[FREQUENCY:50][CLUSTERSIZE:5]
[PREFSTRING:sweeping stalks]
[SHRUB_TILE:13]
[DEAD_SHRUB_TILE:13]
[SHRUB_COLOR:2:6:0]
[DEAD_SHRUB_COLOR:0:8:1]

Notice the added
Code: [Select]
[USE_MATERIAL_TEMPLATE:BREAD:BREAD_TEMPLATE]
[STATE_NAME_ADJ:ALL_SOLID:barley bread]
[MATERIAL_VALUE:12]
[PREFIX:NONE]

And notice the added
Code: [Select]
[MATERIAL_REACTION_PRODUCT:BREAD_MAT:LOCAL_PLANT_MAT:BREAD] to the mill (flour).

Now just make this reaction, and it will cook a bag of flour from ANY plant with an attached "bread" material (make sure that it has some kind of flour though) into a bread stack.
Code: [Select]
[REACTION:BAKE_BREAD]
   [NAME:bake bread]
   [BUILDING:KITCHEN:CUSTOM_SHIFT_B]
   [REAGENT:flour:150:POWDER_MISC:NONE:NONE:NONE]
      [UNROTTEN]
      [HAS_MATERIAL_REACTION_PRODUCT:BREAD_MAT]
   [REAGENT:flour container:1:BOX:NONE:NONE:NONE]
      [BAG]
      [CONTAINS:flour]
      [PRESERVE_REAGENT]
      [DOES_NOT_DETERMINE_PRODUCT_AMOUNT]
   [PRODUCT:100:1:CHEESE:NONE:GET_MATERIAL_FROM_REAGENT:flour:BREAD_MAT]
   [SKILL:COOK]

Don't forget that you need some kind of template for bread, I based it on cheese, so you could just use CHEESE_TEMPLATE instead. But this is mine:

Code: [Select]
[MATERIAL_TEMPLATE:BREAD_TEMPLATE]
   [STATE_COLOR:ALL_SOLID:BROWN]
   [STATE_NAME:ALL_SOLID:bread]
   [STATE_ADJ:ALL_SOLID:bread]
   [STATE_COLOR:LIQUID:BROWN]
   [STATE_NAME:LIQUID:molten bread]
   [STATE_ADJ:LIQUID:molten bread]
   [STATE_COLOR:GAS:BROWN]
   [STATE_NAME:GAS:bread smoke]
   [STATE_ADJ:GAS:bread smoke]
   [DISPLAY_COLOR:6:0:0]
   [MATERIAL_VALUE:1]
   [SPEC_HEAT:4181]
   [IGNITE_POINT:10540]
   [MELTING_POINT:10600]
   [BOILING_POINT:10601]
   [HEATDAM_POINT:10400]
   [COLDDAM_POINT:9000]
   [MAT_FIXED_TEMP:NONE]
   [SOLID_DENSITY:1200]
   [LIQUID_DENSITY:1200]
   [MOLAR_MASS:NONE]
   [IMPACT_YIELD:10000]
   [IMPACT_FRACTURE:10000]
   [IMPACT_STRAIN_AT_YIELD:50000]
   [COMPRESSIVE_YIELD:10000]
   [COMPRESSIVE_FRACTURE:10000]
   [COMPRESSIVE_STRAIN_AT_YIELD:50000]
   [TENSILE_YIELD:10000]
   [TENSILE_FRACTURE:10000]
   [TENSILE_STRAIN_AT_YIELD:50000]
   [TORSION_YIELD:10000]
   [TORSION_FRACTURE:10000]
   [TORSION_STRAIN_AT_YIELD:50000]
   [SHEAR_YIELD:10000]
   [SHEAR_FRACTURE:10000]
   [SHEAR_STRAIN_AT_YIELD:50000]
   [BENDING_YIELD:10000]
   [BENDING_FRACTURE:10000]
   [BENDING_STRAIN_AT_YIELD:50000]
   [MAX_EDGE:0]
   [ABSORPTION:100]
   [CHEESE_PLANT]
   [EDIBLE_VERMIN]
   [EDIBLE_RAW]
   [EDIBLE_COOKED]
   [ROTS]
« Last Edit: February 19, 2012, 04:33:34 pm by Deon »
Logged
▬(ஜ۩۞۩ஜ)▬
✫ DF Wanderer ✫ - the adventure mode crafting and tweaks
✫ Cartographer's Lounge ✫ - a custom worldgen repository

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #4 on: February 19, 2012, 04:34:26 pm »

You can also check my mod for the reaction_masterwork.txt and search for "new kitchen", "brewery", "new milling" and "new still" This should give you plenty... bread and candy (taken from deon, thx) sausages and ground meat, bacteria produced in the kitchen, new specific milling and brewing options, all drinks can be "seasoned" and so on...

Also have a look at: item_food_masterwork.txt for 85 new foodtype-names.

Have fun.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

Reelya

  • Bay Watcher
    • View Profile
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #5 on: February 19, 2012, 04:44:44 pm »

Interesting if you read my notes i just decided to make bread a "cheese". I guess the options to get this working are pretty limited.

The problem now is I'd like to make. e.g. a "cheese sandwich" which takes some cheese + bread and makes "sandwiches" which remember what animal cheese they're made from.

And i definitely don't want to replicate this for every creature with a "cheese". The only way to do this right now is to make an inedible "sandwich" tool or toy, and have it of the cheese material. Which is "pretty" but inedible.

btw Deon the point of this thread was for me to work out the solution. You posting a solution for me kind of derails what i was doing ;D maybe i should've waited until i had done v#3 before posting ;_;
« Last Edit: February 19, 2012, 04:51:06 pm by Reelya »
Logged

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #6 on: February 19, 2012, 04:51:18 pm »

Cant you take the material from the cheese reagent, take random bread, and produce an edible animal part, called (material name)-sandwich ? That sould not be too much work, you only have to do one, since it automatically uses the material of the cheese.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

Reelya

  • Bay Watcher
    • View Profile
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #7 on: February 19, 2012, 04:52:57 pm »

That's interesting, would I have to modify body detail plans or something?

Deon

  • Bay Watcher
  • 💀 💀 💀 💀 💀
    • View Profile
Re: (Mis)Adventures in Dwarven Cookery, pt1 - bake the damn bread AND EAT IT
« Reply #8 on: February 19, 2012, 04:53:51 pm »

Quote
btw Deon the point of this thread was for me to work out the solution. You posting a solution for me kind of derails what i was doing ;D maybe i should've waited until i had done v#3 before posting ;_;
Ugh, I am used to see any thread like a plead for help or advice, many people ask for help here, so I did not think twice before posting a "reply" :P. You could probably figure it out by yourself and then post a thread. Because logically it looked like you wanted some help or examples.
Logged
▬(ஜ۩۞۩ஜ)▬
✫ DF Wanderer ✫ - the adventure mode crafting and tweaks
✫ Cartographer's Lounge ✫ - a custom worldgen repository