<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://avendar.net/index.php?action=history&amp;feed=atom&amp;title=Avendar%3AOLC_Section_8</id>
	<title>Avendar:OLC Section 8 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://avendar.net/index.php?action=history&amp;feed=atom&amp;title=Avendar%3AOLC_Section_8"/>
	<link rel="alternate" type="text/html" href="https://avendar.net/index.php?title=Avendar:OLC_Section_8&amp;action=history"/>
	<updated>2026-05-21T04:28:10Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.4</generator>
	<entry>
		<id>https://avendar.net/index.php?title=Avendar:OLC_Section_8&amp;diff=2664&amp;oldid=prev</id>
		<title>Elanthe: Created page with &quot;= Recipe Data =  == Overview ==  Recipes are stored on the crafted item--that is the &#039;&#039;result&#039;&#039; of the crafting combo. Ingredients are listed in the recipe, along with various other details.  == The Recipe Data Viewer ==    +----------------------------------------------------------------------------------+   | Recipe Settings (Slot 0)                                                         |   | Recipe type: 1                                     (Cooking)...&quot;</title>
		<link rel="alternate" type="text/html" href="https://avendar.net/index.php?title=Avendar:OLC_Section_8&amp;diff=2664&amp;oldid=prev"/>
		<updated>2025-01-19T03:01:40Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;= Recipe Data =  == Overview ==  Recipes are stored on the crafted item--that is the &amp;#039;&amp;#039;result&amp;#039;&amp;#039; of the crafting combo. Ingredients are listed in the recipe, along with various other details.  == The Recipe Data Viewer ==    +----------------------------------------------------------------------------------+   | Recipe Settings (Slot 0)                                                         |   | Recipe type: 1                                     (Cooking)...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Recipe Data =&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
Recipes are stored on the crafted item--that is the &amp;#039;&amp;#039;result&amp;#039;&amp;#039; of the crafting combo. Ingredients are listed in the recipe, along with various other details.&lt;br /&gt;
&lt;br /&gt;
== The Recipe Data Viewer ==&lt;br /&gt;
&lt;br /&gt;
  +----------------------------------------------------------------------------------+&lt;br /&gt;
  | Recipe Settings (Slot 0)                                                         |&lt;br /&gt;
  | Recipe type: 1                                     (Cooking)                     |&lt;br /&gt;
  | Flags:       [needs_fire cooking_kit use_keywords]                               |&lt;br /&gt;
  | Keyword 1:   cooking_barley                                                      |&lt;br /&gt;
  | Keyword 2:   cooking_mushroom                                                    |&lt;br /&gt;
  | Keyword 3:   (null)                                                              |&lt;br /&gt;
  | Keyword 4:   (null)                                                              |&lt;br /&gt;
  +----------------------------------------------------------------------------------+&lt;br /&gt;
&lt;br /&gt;
This will appear in Oedit after you&amp;#039;ve started a recipe.  To begin a recipe, you need to first declare its slot.&lt;br /&gt;
&lt;br /&gt;
Recipe commands use the following format:&lt;br /&gt;
&lt;br /&gt;
  recipe &amp;lt;command&amp;gt; &amp;lt;value&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Available Commands ==&lt;br /&gt;
&lt;br /&gt;
===== Slot =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Syntax: recipe slot &amp;lt;value&amp;gt;&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This specifies which slot you are using. An item can have multiple recipes with different ingredient combinations that result in the same item. In prog, the craft_script correspond to the recipe slot, allowing a great deal of flexibility. &lt;br /&gt;
&lt;br /&gt;
There is presumably a limit to the number of recipe slots an item may have. NINJA FILL IN HERE.&lt;br /&gt;
&lt;br /&gt;
===== Type =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Syntax: recipe type &amp;lt;value&amp;gt;&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifies what skill the crafter will be using to craft the item. The types are (NOTE: these types are preliminary):&lt;br /&gt;
&lt;br /&gt;
  1: Cooking. For edible and drinkable items.&lt;br /&gt;
  2: Alchemy. Potions and pills probably.&lt;br /&gt;
  3: Smithing. Armor and weapons.&lt;br /&gt;
  4: Tailoring. Clothes.&lt;br /&gt;
  5. Scribing. ????&lt;br /&gt;
&lt;br /&gt;
===== Flags =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Syntax: recipe flags &amp;lt;flag&amp;gt;&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Recipe flags can alter the requirements or format for the recipe.&lt;br /&gt;
&lt;br /&gt;
  needs_fire: An object with the extra flag fire must be present in the room, or the recipe will fail.&lt;br /&gt;
  cooking_kit: Crafter must have an object with the extra flag cooking_kit in their inventory, or the recipe will fail.&lt;br /&gt;
  use_keywords: By default, recipes want specific ingredient vnums. Use_Keywords swaps to using [[#Key|keywords]]. You can only use one of these modes at a time.&lt;br /&gt;
&lt;br /&gt;
===== Comp =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Syntax: recipe comp&amp;lt;value&amp;gt; &amp;lt;vnum&amp;gt;&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example: recipe comp1 17134&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;The recipe adds [17134] some broccoli to the ingredient list.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Short for component, comp uses an exact vnum to specify an ingredient. Use this when you want EXACTLY Nika&amp;#039;s bacon and EXACTLY a griffin egg and EXACTLY an Uzith-Hazi mushroom. Comp accepts no substitutes. Comp can, however, hold multiple vnums on each comp slot.&lt;br /&gt;
&lt;br /&gt;
Example: recipe comp2 7189 11396&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;The recipe adds [ 7189] a pink and green apple and [11396] a ripe red apple as interchangeable ingredients&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
===== Key =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Syntax: recipe key&amp;lt;value&amp;gt; &amp;lt;keyword&amp;gt;&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example: recipe key1 cooking_broccoli&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;The recipe checks for anything with cooking_broccoli in its name.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Keywords are more flexible than comp, allowing you to specify a broad category of ingredient rather than an exact vnum. This lets you make apple pie from any apple, including apples added to the game &amp;#039;&amp;#039;after&amp;#039;&amp;#039; you built the pie.&lt;br /&gt;
&lt;br /&gt;
See the &amp;#039;&amp;#039;&amp;#039;Meow for Snack&amp;#039;&amp;#039;&amp;#039;[https://docs.google.com/spreadsheets/d/1FL64xLgKnltRsJnw5NPrcADPmpJXUBVDIPxHIJKvxLQ/edit#gid=0] spreadsheet for a list of known ingredients and their keywords. If you add an ingredient to the game, add it here!!!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Craft_script ==&lt;br /&gt;
&lt;br /&gt;
A data_prog that corresponds to a recipe slot, the craft_script can do whatever an item prog can do, making it a nigh limitless way to add functionality to your recipes. Triggered when the corresponding recipe slot is completed, the craft_script will go through its lines and act on them like any other prog. NOTE: the craft_script will override the normal success echo, so be sure to include an echo to indicate success (or failure as the case may be--yes, you can force a fail due to whatever arcane specificities your dark heart desires).&lt;br /&gt;
&lt;br /&gt;
  craft_script0: Corresponds to recipe slot 0.&lt;br /&gt;
  craft_script1: Corresponds to recipe slot 1.&lt;br /&gt;
  etc.&lt;br /&gt;
&lt;br /&gt;
== Example Walkthrough ==&lt;br /&gt;
&lt;br /&gt;
Let&amp;#039;s look at the recipe for [ 3588] sauteed broccoli in orange sauce.&lt;br /&gt;
&lt;br /&gt;
  +----------------------------------------------------------------------------------+&lt;br /&gt;
  | Recipe Settings (Slot 0)                                                         |&lt;br /&gt;
  | Recipe type: 1                                     (Cooking)                     |&lt;br /&gt;
  | Flags:       [needs_fire cooking_kit use_keywords]                               |&lt;br /&gt;
  | Keyword 1:   cooking_broccoli                                                    |&lt;br /&gt;
  | Keyword 2:   cooking_orange                                                      |&lt;br /&gt;
  | Keyword 3:   cooking_bandor_spice_mix                                            |&lt;br /&gt;
  | Keyword 4:   (null)                                                              |&lt;br /&gt;
  +----------------------------------------------------------------------------------+&lt;br /&gt;
&lt;br /&gt;
* Slot 0: This is the default slot.&lt;br /&gt;
* Recipe type: 1 (Cooking): We want this to check the cooking skill.&lt;br /&gt;
&lt;br /&gt;
* Needs_fire: Can&amp;#039;t sautee without a heat source. &lt;br /&gt;
* Cooking_kit: Can&amp;#039;t sautee without a pan.&lt;br /&gt;
** We&amp;#039;re using our judgement here on realism vs. player convenience. This doesn&amp;#039;t seem like something you can make with just your hands and no heat. Unlike i.e. sandwiches, players can&amp;#039;t make this on the go.&lt;br /&gt;
* Use_keywords: Several oranges already exist, and we want all of them to be valid for the recipe, so we&amp;#039;re using keywords instead of vnums.&lt;br /&gt;
&lt;br /&gt;
* Keyword 1...3: We&amp;#039;ve checked to make sure these ingredient keywords are on existing items.&lt;br /&gt;
* Keyword 4: We don&amp;#039;t need a fourth ingredient, so we&amp;#039;re leaving it blank.&lt;br /&gt;
&lt;br /&gt;
Let&amp;#039;s check if it works by loading the ingredients and cooking them.&lt;br /&gt;
&lt;br /&gt;
  &amp;gt;cook broccoli orange mix&lt;br /&gt;
  You prepare some broccoli, an orange, and a pouch of Bandor spice mix for use.&lt;br /&gt;
  You prepare a heavy iron cooking kit to assist you.&lt;br /&gt;
  You set yourself before the grill to cook.&lt;br /&gt;
  You successfully produce sauteed broccoli in orange sauce!&lt;br /&gt;
&lt;br /&gt;
This item will have an alternative recipe that produces a restringed object. Now we&amp;#039;ll switch to the alternative recipe by typing &amp;#039;&amp;#039;recipe slot 1&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
  &amp;gt;recipe slot 1&lt;br /&gt;
  Switching recipe slot.&lt;br /&gt;
&lt;br /&gt;
  +----------------------------------------------------------------------------------+&lt;br /&gt;
  | Recipe Settings (Slot 1)                                                         |&lt;br /&gt;
  | Recipe type: 1                                     (Cooking)                     |&lt;br /&gt;
  | Flags:       [needs_fire cooking_kit use_keywords]                               |&lt;br /&gt;
  | Keyword 1:   cooking_asparagus                                                   |&lt;br /&gt;
  | Keyword 2:   cooking_orange                                                      |&lt;br /&gt;
  | Keyword 3:   cooking_bandor_spice_mix                                            |&lt;br /&gt;
  | Keyword 4:   (null)                                                              |&lt;br /&gt;
  +----------------------------------------------------------------------------------+&lt;br /&gt;
&lt;br /&gt;
* Keyword 1: cooking_asparagus is the only change. The rest we&amp;#039;ll copy over from slot 0.&lt;br /&gt;
&lt;br /&gt;
By default, the different slots will craft the same item, in this case, sauteed broccoli in orange sauce.  However, we want slot 1 to produce sauteed &amp;#039;&amp;#039;asparagus&amp;#039;&amp;#039; in orange sauce. We&amp;#039;ll restring this bad boy in data_prog craft_script1, the craft script that corresponds to recipe slot 1. Remember, we need to add the success echo!&lt;br /&gt;
&lt;br /&gt;
  &amp;gt;data_prog craft_script1&lt;br /&gt;
  mpstring obj self name asparagus plate orange sauce gourmet sauteed&lt;br /&gt;
  mpstring obj self short sauteed asparagus in orange sauce&lt;br /&gt;
  mpstring obj self long A plate of sauteed asparagus in orange sauce sits here.&lt;br /&gt;
  mpechoat $n You made $I!&lt;br /&gt;
&lt;br /&gt;
Which in play produces...&lt;br /&gt;
&lt;br /&gt;
  &amp;gt;cook orange asparagus mix&lt;br /&gt;
  You prepare a reddish blood orange, a small bundle of asparagus, and a pouch of Bandor spice mix for use.&lt;br /&gt;
  You prepare a heavy iron cooking kit to assist you.&lt;br /&gt;
  You set yourself before the grill to cook.&lt;br /&gt;
  You made sauteed asparagus in orange sauce!&lt;/div&gt;</summary>
		<author><name>Elanthe</name></author>
	</entry>
</feed>