← Packet index

Packet 52

CraftingDataPacket

Crafting Data

Sent from the server on level startup to send all recipes to the client.

Packet datagramWire order
HeaderID 52varuint
0Shaped Recipesarray<ShapedRecipePayload> · variable
1Shapeless Recipesarray<ShapelessRecipePayload> · variable
2Multi Recipesarray<MultiRecipePayload> · variable
3User Data Shapeless Recipesarray<ShapelessRecipePayload> · variable
4Shapeless Chemistry Recipesarray<ShapelessRecipePayload> · variable
5Shaped Chemistry Recipesarray<ShapedRecipePayload> · variable
6Smithing Transform Recipesarray<SmithingTransformRecipePayload> · variable
7Smithing Trim Recipesarray<SmithingTrimRecipePayload> · variable
8Potion Mixesarray<PotionMixDataEntry> · variable
9Container Mixesarray<ContainerMixDataEntry> · variable
10Material Reducersarray<MaterialReducerDataEntry> · variable
11Clear Recipesboolean · 1 byte

Serialized fields

12 top-level fields
  1. 0Shaped RecipesRecipes with a fixed grid layout.ShapedRecipePayloadas array<ShapedRecipePayload>
    1. 0Recipe IdUnique string identifier of the recipe.string
    2. 1WidthWidth of the crafting grid for this shaped recipe.Compressionvarint32
    3. 2HeightHeight of the crafting grid for this shaped recipe.Compressionvarint32
    4. 3IngredientsGrid ingredients in row-major order; the count must equal Width * Height.RecipeIngredientas array<RecipeIngredient>
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    5. 4ResultsThe item(s) produced by the recipe.NetworkItemInstanceDescriptorDataas array<NetworkItemInstanceDescriptorData>
      1. 0IdItem id (network varint). Send fixed Id of 0 for invalid item.Compressionvarint32
      2. 1Stack sizeThe number of items in the stack.uint16
      3. 2Aux valueItem auxiliary/metadata value. Ignored for block items where aux is always 0.Compressionvaruint32
      4. 3Block Runtime IdRuntime block state ID associated with this item when it represents a block.Compressionvarint32
      5. 4User Data BufferThe item user data binary blob encoded as a String.string
    6. 5UUIDStable unique id of the recipe.mce::UUID
      1. 0Most Significant Bitsuint64
      2. 1Least Significant Bitsuint64
    7. 6TagCrafting block tag this recipe is associated with (e.g. crafting_table).string
    8. 7PriorityRecipe priority used to resolve conflicts between matching recipes.Compressionvarint32
    9. 8Assume SymmetryWhether the recipe also matches mirrored grid layouts.boolean
    10. 9Unlocking RequirementoptionalOptional requirement that must be satisfied to unlock the recipe.RecipeUnlockingRequirement
      1. 0Unlocking ContextCompressionEnum-as-ValueRecipeUnlockingContextas varint32
        1. 0None
        2. 1AlwaysUnlocked
        3. 2PlayerInWater
        4. 3PlayerHasManyItems
      2. 1Unlocking IngredientsoptionalOptional list of ingredients required to unlock the recipe. Only populated when Unlocking Context is None; otherwise the recipe is unlocked by the context condition and no ingredients are transmitted.RecipeIngredientas array<RecipeIngredient>
        1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
          0EmptyItemDescriptorEmptyItemDescriptor
          1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          1ItemNameDescriptorItemNameDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Full Namestring
          3. 2Aux ValueCompressionvarint32
          2MolangItemDescriptorMolangItemDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Tag Expressionstring
          3. 2Molang VersionEnum-as-ValueMolangVersionas int16
            1. 0Invalid
            2. 1BeforeVersioning
            3. 2Initial
            4. 3FixedItemRemainingUseDurationQuery
            5. 4ExpressionErrorMessages
            6. 5UnexpectedOperatorErrors
            7. 6ConditionalOperatorAssociativity
            8. 7ComparisonAndLogicalOperatorPrecedence
            9. 8DivideByNegativeValue
            10. 9FixedCapeFlapAmountQuery
            11. 10QueryBlockPropertyRenamedToState
            12. 11DeprecateOldBlockQueryNames
            13. 12DeprecatedSnifferAndCamelQueries
            14. 13LeafSupportingInFirstSolidBlockBelow
            15. 14NumValidVersions
            16. 15Latest
            17. 16HardcodedMolang
          3ItemTagDescriptorItemTagDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Item Tagstring
        2. 1StackSizeuint16
    11. 10Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  2. 1Shapeless RecipesRecipes whose ingredients can be placed in any arrangement.ShapelessRecipePayloadas array<ShapelessRecipePayload>
    1. 0Recipe IdUnique string identifier of the recipe.string
    2. 1IngredientsThe unordered ingredients required by the recipe.RecipeIngredientas array<RecipeIngredient>
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    3. 2ResultsThe item(s) produced by the recipe.NetworkItemInstanceDescriptorDataas array<NetworkItemInstanceDescriptorData>
      1. 0IdItem id (network varint). Send fixed Id of 0 for invalid item.Compressionvarint32
      2. 1Stack sizeThe number of items in the stack.uint16
      3. 2Aux valueItem auxiliary/metadata value. Ignored for block items where aux is always 0.Compressionvaruint32
      4. 3Block Runtime IdRuntime block state ID associated with this item when it represents a block.Compressionvarint32
      5. 4User Data BufferThe item user data binary blob encoded as a String.string
    4. 3UUIDStable unique id of the recipe.mce::UUID
      1. 0Most Significant Bitsuint64
      2. 1Least Significant Bitsuint64
    5. 4TagCrafting block tag this recipe is associated with (e.g. crafting_table).string
    6. 5PriorityRecipe priority used to resolve conflicts between matching recipes.Compressionvarint32
    7. 6Unlocking RequirementoptionalOptional requirement that must be satisfied to unlock the recipe.RecipeUnlockingRequirement
      1. 0Unlocking ContextCompressionEnum-as-ValueRecipeUnlockingContextas varint32
        1. 0None
        2. 1AlwaysUnlocked
        3. 2PlayerInWater
        4. 3PlayerHasManyItems
      2. 1Unlocking IngredientsoptionalOptional list of ingredients required to unlock the recipe. Only populated when Unlocking Context is None; otherwise the recipe is unlocked by the context condition and no ingredients are transmitted.RecipeIngredientas array<RecipeIngredient>
        1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
          0EmptyItemDescriptorEmptyItemDescriptor
          1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          1ItemNameDescriptorItemNameDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Full Namestring
          3. 2Aux ValueCompressionvarint32
          2MolangItemDescriptorMolangItemDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Tag Expressionstring
          3. 2Molang VersionEnum-as-ValueMolangVersionas int16
            1. 0Invalid
            2. 1BeforeVersioning
            3. 2Initial
            4. 3FixedItemRemainingUseDurationQuery
            5. 4ExpressionErrorMessages
            6. 5UnexpectedOperatorErrors
            7. 6ConditionalOperatorAssociativity
            8. 7ComparisonAndLogicalOperatorPrecedence
            9. 8DivideByNegativeValue
            10. 9FixedCapeFlapAmountQuery
            11. 10QueryBlockPropertyRenamedToState
            12. 11DeprecateOldBlockQueryNames
            13. 12DeprecatedSnifferAndCamelQueries
            14. 13LeafSupportingInFirstSolidBlockBelow
            15. 14NumValidVersions
            16. 15Latest
            17. 16HardcodedMolang
          3ItemTagDescriptorItemTagDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Item Tagstring
        2. 1StackSizeuint16
    8. 7Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  3. 2Multi RecipesBuilt-in special recipes identified by UUID (map cloning, banner duplicate, etc.).MultiRecipePayloadas array<MultiRecipePayload>
    1. 0Multi-Recipe UUIDUUID identifying which built-in multi-recipe (e.g. map cloning, banner duplicate) this represents.mce::UUID
      1. 0Most Significant Bitsuint64
      2. 1Least Significant Bitsuint64
    2. 1Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  4. 3User Data Shapeless RecipesShapeless recipes that carry user data (e.g. user-applied item data).ShapelessRecipePayloadas array<ShapelessRecipePayload>
    1. 0Recipe IdUnique string identifier of the recipe.string
    2. 1IngredientsThe unordered ingredients required by the recipe.RecipeIngredientas array<RecipeIngredient>
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    3. 2ResultsThe item(s) produced by the recipe.NetworkItemInstanceDescriptorDataas array<NetworkItemInstanceDescriptorData>
      1. 0IdItem id (network varint). Send fixed Id of 0 for invalid item.Compressionvarint32
      2. 1Stack sizeThe number of items in the stack.uint16
      3. 2Aux valueItem auxiliary/metadata value. Ignored for block items where aux is always 0.Compressionvaruint32
      4. 3Block Runtime IdRuntime block state ID associated with this item when it represents a block.Compressionvarint32
      5. 4User Data BufferThe item user data binary blob encoded as a String.string
    4. 3UUIDStable unique id of the recipe.mce::UUID
      1. 0Most Significant Bitsuint64
      2. 1Least Significant Bitsuint64
    5. 4TagCrafting block tag this recipe is associated with (e.g. crafting_table).string
    6. 5PriorityRecipe priority used to resolve conflicts between matching recipes.Compressionvarint32
    7. 6Unlocking RequirementoptionalOptional requirement that must be satisfied to unlock the recipe.RecipeUnlockingRequirement
      1. 0Unlocking ContextCompressionEnum-as-ValueRecipeUnlockingContextas varint32
        1. 0None
        2. 1AlwaysUnlocked
        3. 2PlayerInWater
        4. 3PlayerHasManyItems
      2. 1Unlocking IngredientsoptionalOptional list of ingredients required to unlock the recipe. Only populated when Unlocking Context is None; otherwise the recipe is unlocked by the context condition and no ingredients are transmitted.RecipeIngredientas array<RecipeIngredient>
        1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
          0EmptyItemDescriptorEmptyItemDescriptor
          1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          1ItemNameDescriptorItemNameDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Full Namestring
          3. 2Aux ValueCompressionvarint32
          2MolangItemDescriptorMolangItemDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Tag Expressionstring
          3. 2Molang VersionEnum-as-ValueMolangVersionas int16
            1. 0Invalid
            2. 1BeforeVersioning
            3. 2Initial
            4. 3FixedItemRemainingUseDurationQuery
            5. 4ExpressionErrorMessages
            6. 5UnexpectedOperatorErrors
            7. 6ConditionalOperatorAssociativity
            8. 7ComparisonAndLogicalOperatorPrecedence
            9. 8DivideByNegativeValue
            10. 9FixedCapeFlapAmountQuery
            11. 10QueryBlockPropertyRenamedToState
            12. 11DeprecateOldBlockQueryNames
            13. 12DeprecatedSnifferAndCamelQueries
            14. 13LeafSupportingInFirstSolidBlockBelow
            15. 14NumValidVersions
            16. 15Latest
            17. 16HardcodedMolang
          3ItemTagDescriptorItemTagDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Item Tagstring
        2. 1StackSizeuint16
    8. 7Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  5. 4Shapeless Chemistry RecipesEducation-Edition shapeless chemistry recipes.ShapelessRecipePayloadas array<ShapelessRecipePayload>
    1. 0Recipe IdUnique string identifier of the recipe.string
    2. 1IngredientsThe unordered ingredients required by the recipe.RecipeIngredientas array<RecipeIngredient>
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    3. 2ResultsThe item(s) produced by the recipe.NetworkItemInstanceDescriptorDataas array<NetworkItemInstanceDescriptorData>
      1. 0IdItem id (network varint). Send fixed Id of 0 for invalid item.Compressionvarint32
      2. 1Stack sizeThe number of items in the stack.uint16
      3. 2Aux valueItem auxiliary/metadata value. Ignored for block items where aux is always 0.Compressionvaruint32
      4. 3Block Runtime IdRuntime block state ID associated with this item when it represents a block.Compressionvarint32
      5. 4User Data BufferThe item user data binary blob encoded as a String.string
    4. 3UUIDStable unique id of the recipe.mce::UUID
      1. 0Most Significant Bitsuint64
      2. 1Least Significant Bitsuint64
    5. 4TagCrafting block tag this recipe is associated with (e.g. crafting_table).string
    6. 5PriorityRecipe priority used to resolve conflicts between matching recipes.Compressionvarint32
    7. 6Unlocking RequirementoptionalOptional requirement that must be satisfied to unlock the recipe.RecipeUnlockingRequirement
      1. 0Unlocking ContextCompressionEnum-as-ValueRecipeUnlockingContextas varint32
        1. 0None
        2. 1AlwaysUnlocked
        3. 2PlayerInWater
        4. 3PlayerHasManyItems
      2. 1Unlocking IngredientsoptionalOptional list of ingredients required to unlock the recipe. Only populated when Unlocking Context is None; otherwise the recipe is unlocked by the context condition and no ingredients are transmitted.RecipeIngredientas array<RecipeIngredient>
        1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
          0EmptyItemDescriptorEmptyItemDescriptor
          1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          1ItemNameDescriptorItemNameDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Full Namestring
          3. 2Aux ValueCompressionvarint32
          2MolangItemDescriptorMolangItemDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Tag Expressionstring
          3. 2Molang VersionEnum-as-ValueMolangVersionas int16
            1. 0Invalid
            2. 1BeforeVersioning
            3. 2Initial
            4. 3FixedItemRemainingUseDurationQuery
            5. 4ExpressionErrorMessages
            6. 5UnexpectedOperatorErrors
            7. 6ConditionalOperatorAssociativity
            8. 7ComparisonAndLogicalOperatorPrecedence
            9. 8DivideByNegativeValue
            10. 9FixedCapeFlapAmountQuery
            11. 10QueryBlockPropertyRenamedToState
            12. 11DeprecateOldBlockQueryNames
            13. 12DeprecatedSnifferAndCamelQueries
            14. 13LeafSupportingInFirstSolidBlockBelow
            15. 14NumValidVersions
            16. 15Latest
            17. 16HardcodedMolang
          3ItemTagDescriptorItemTagDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Item Tagstring
        2. 1StackSizeuint16
    8. 7Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  6. 5Shaped Chemistry RecipesEducation-Edition shaped chemistry recipes.ShapedRecipePayloadas array<ShapedRecipePayload>
    1. 0Recipe IdUnique string identifier of the recipe.string
    2. 1WidthWidth of the crafting grid for this shaped recipe.Compressionvarint32
    3. 2HeightHeight of the crafting grid for this shaped recipe.Compressionvarint32
    4. 3IngredientsGrid ingredients in row-major order; the count must equal Width * Height.RecipeIngredientas array<RecipeIngredient>
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    5. 4ResultsThe item(s) produced by the recipe.NetworkItemInstanceDescriptorDataas array<NetworkItemInstanceDescriptorData>
      1. 0IdItem id (network varint). Send fixed Id of 0 for invalid item.Compressionvarint32
      2. 1Stack sizeThe number of items in the stack.uint16
      3. 2Aux valueItem auxiliary/metadata value. Ignored for block items where aux is always 0.Compressionvaruint32
      4. 3Block Runtime IdRuntime block state ID associated with this item when it represents a block.Compressionvarint32
      5. 4User Data BufferThe item user data binary blob encoded as a String.string
    6. 5UUIDStable unique id of the recipe.mce::UUID
      1. 0Most Significant Bitsuint64
      2. 1Least Significant Bitsuint64
    7. 6TagCrafting block tag this recipe is associated with (e.g. crafting_table).string
    8. 7PriorityRecipe priority used to resolve conflicts between matching recipes.Compressionvarint32
    9. 8Assume SymmetryWhether the recipe also matches mirrored grid layouts.boolean
    10. 9Unlocking RequirementoptionalOptional requirement that must be satisfied to unlock the recipe.RecipeUnlockingRequirement
      1. 0Unlocking ContextCompressionEnum-as-ValueRecipeUnlockingContextas varint32
        1. 0None
        2. 1AlwaysUnlocked
        3. 2PlayerInWater
        4. 3PlayerHasManyItems
      2. 1Unlocking IngredientsoptionalOptional list of ingredients required to unlock the recipe. Only populated when Unlocking Context is None; otherwise the recipe is unlocked by the context condition and no ingredients are transmitted.RecipeIngredientas array<RecipeIngredient>
        1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
          0EmptyItemDescriptorEmptyItemDescriptor
          1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          1ItemNameDescriptorItemNameDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Full Namestring
          3. 2Aux ValueCompressionvarint32
          2MolangItemDescriptorMolangItemDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Tag Expressionstring
          3. 2Molang VersionEnum-as-ValueMolangVersionas int16
            1. 0Invalid
            2. 1BeforeVersioning
            3. 2Initial
            4. 3FixedItemRemainingUseDurationQuery
            5. 4ExpressionErrorMessages
            6. 5UnexpectedOperatorErrors
            7. 6ConditionalOperatorAssociativity
            8. 7ComparisonAndLogicalOperatorPrecedence
            9. 8DivideByNegativeValue
            10. 9FixedCapeFlapAmountQuery
            11. 10QueryBlockPropertyRenamedToState
            12. 11DeprecateOldBlockQueryNames
            13. 12DeprecatedSnifferAndCamelQueries
            14. 13LeafSupportingInFirstSolidBlockBelow
            15. 14NumValidVersions
            16. 15Latest
            17. 16HardcodedMolang
          3ItemTagDescriptorItemTagDescriptor
          1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
            1. 0Empty
            2. 1ItemName
            3. 2Molang
            4. 3ItemTag
          2. 1Item Tagstring
        2. 1StackSizeuint16
    11. 10Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  7. 6Smithing Transform RecipesSmithing-table upgrade recipes.SmithingTransformRecipePayloadas array<SmithingTransformRecipePayload>
    1. 0Recipe IdUnique string identifier of the recipe.string
    2. 1Template IngredientThe smithing template ingredient.RecipeIngredient
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    3. 2Base IngredientThe base item being upgraded.RecipeIngredient
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    4. 3Addition IngredientThe material added to the base item.RecipeIngredient
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    5. 4ResultThe resulting upgraded item.NetworkItemInstanceDescriptorData
      1. 0IdItem id (network varint). Send fixed Id of 0 for invalid item.Compressionvarint32
      2. 1Stack sizeThe number of items in the stack.uint16
      3. 2Aux valueItem auxiliary/metadata value. Ignored for block items where aux is always 0.Compressionvaruint32
      4. 3Block Runtime IdRuntime block state ID associated with this item when it represents a block.Compressionvarint32
      5. 4User Data BufferThe item user data binary blob encoded as a String.string
    6. 5TagCrafting block tag this recipe is associated with (e.g. smithing_table).string
    7. 6Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  8. 7Smithing Trim RecipesSmithing-table armor-trim recipes.SmithingTrimRecipePayloadas array<SmithingTrimRecipePayload>
    1. 0Recipe IdUnique string identifier of the recipe.string
    2. 1Template IngredientThe smithing template ingredient.RecipeIngredient
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    3. 2Base IngredientThe base armor item being trimmed.RecipeIngredient
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    4. 3Addition IngredientThe trim material added to the base item.RecipeIngredient
      1. 0Item DescriptoroneOf<EmptyItemDescriptor, ItemNameDescriptor, MolangItemDescriptor, ItemTagDescriptor>
        0EmptyItemDescriptorEmptyItemDescriptor
        1. 0Descriptor TypeEmpty item descriptor.Enum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        1ItemNameDescriptorItemNameDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Full Namestring
        3. 2Aux ValueCompressionvarint32
        2MolangItemDescriptorMolangItemDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Tag Expressionstring
        3. 2Molang VersionEnum-as-ValueMolangVersionas int16
          1. 0Invalid
          2. 1BeforeVersioning
          3. 2Initial
          4. 3FixedItemRemainingUseDurationQuery
          5. 4ExpressionErrorMessages
          6. 5UnexpectedOperatorErrors
          7. 6ConditionalOperatorAssociativity
          8. 7ComparisonAndLogicalOperatorPrecedence
          9. 8DivideByNegativeValue
          10. 9FixedCapeFlapAmountQuery
          11. 10QueryBlockPropertyRenamedToState
          12. 11DeprecateOldBlockQueryNames
          13. 12DeprecatedSnifferAndCamelQueries
          14. 13LeafSupportingInFirstSolidBlockBelow
          15. 14NumValidVersions
          16. 15Latest
          17. 16HardcodedMolang
        3ItemTagDescriptorItemTagDescriptor
        1. 0Descriptor TypeEnum-as-ValueItemDescriptorTypeas uint8
          1. 0Empty
          2. 1ItemName
          3. 2Molang
          4. 3ItemTag
        2. 1Item Tagstring
      2. 1StackSizeuint16
    5. 4TagCrafting block tag this recipe is associated with (e.g. smithing_table).string
    6. 5Net IdNetwork id assigned to this recipe.RecipeNetId
      1. 0Raw IdCompressionvaruint32
  9. 8Potion MixesBrewing-stand potion mix definitions.PotionMixDataEntryas array<PotionMixDataEntry>
    1. 0From Potion IdItem id of the input potion.Compressionvarint32
    2. 1From Item AuxAux/data value of the input potion.Compressionvarint32
    3. 2Reagent Item IdItem id of the reagent applied to the potion.Compressionvarint32
    4. 3Reagent Item AuxAux/data value of the reagent.Compressionvarint32
    5. 4To Potion IdItem id of the resulting potion.Compressionvarint32
    6. 5To Item AuxAux/data value of the resulting potion.Compressionvarint32
  10. 9Container MixesBrewing-stand container mix definitions.ContainerMixDataEntryas array<ContainerMixDataEntry>
    1. 0From Item IdItem id of the input container item.Compressionvarint32
    2. 1Reagent Item IdItem id of the reagent applied to the container.Compressionvarint32
    3. 2To Item IdItem id of the resulting container item.Compressionvarint32
  11. 10Material ReducersEducation-Edition material reducer definitions.MaterialReducerDataEntryas array<MaterialReducerDataEntry>
    1. 0From Item KeyPacked item id/aux key of the input material.Compressionvarint32
    2. 1Item Ids and CountsThe items (and counts) the input material reduces to.MaterialReducerEntryOutputas array<MaterialReducerEntryOutput>
      1. 0Item IdItem id produced by the material reducer.Compressionvarint32
      2. 1Item CountNumber of items produced.Compressionvarint32
  12. 11Clear RecipesWhen true, the client clears its existing recipes before applying this packet.boolean

Changelog

Stable releases

Changes between stable protocol releases.

No stable release changes are recorded for this packet.