DEVHUB DOCUMENTATION
Tebex StoreDevhub LIbDiscord Support
  • 🏠Home page
  • 🐌Download purchased assets
  • â‰ī¸Error: "You lack the required entitlement to use"
  • â‰ī¸Error: syntax error near '<\1>'
  • 💾Partnered FiveM Hosting
  • 💾SCRIPTS
    • 📗devhub_lib (NEEDED FOR EACH SCRIPT!)
      • đŸ’ģInstallation
      • 2ī¸âƒŖMigration from v1 to v2
      • âš™ī¸Framework
      • đŸ–ī¸Target
      • 🧭Ui
      • 🔑Vehicle Keys
      • â›ŊVehicle fuel
      • 🔊Sound System
      • 👕Clothing
      • â„šī¸Logs
      • 📡SQL
      • 🎨UI Color Customization
      • 🆘Compatibility test
  • 🔧Car Tune
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
    • 💾Saving Cartune Settings
  • 🚙Car Dancing
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
      • Beat generating
  • đŸ’ĒSkill Tree
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
    • đŸŽĢDevelopment
      • Listeners
      • Exports
      • Example skill
      • Pre-made skills
    • âš™ī¸Skill Generator
    • 🎨UI Color Customization
    • ❔FAQ
  • â›ī¸Miner Job
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
      • client.lua
      • shared.lua
      • server.lua
      • skillTree.lua
      • config.js
    • 🎨UI Color Customization
  • đŸĒĩDrywood Cutter Job
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
      • client.lua
      • shared.lua
      • server.lua
      • skillTree.lua
      • config.js
      • zones.lua
    • 🎨UI Color Customization
  • 🌊Pool Cleaner Job
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
      • client.lua
      • shared.lua
      • server.lua
      • skillTree.lua
      • config.js
      • zones.lua
    • 🎨UI Color Customization
  • đŸŒŋ[FREE] Herbal Alchemist Job
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
      • client.lua
      • shared.lua
      • server.lua
      • skillTree.lua
      • config.js
    • 🎨UI Color Customization
  • 📱Who Am I?
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
      • shared.lua
    • Hide default busy spinner
    • 🎨UI Color Customization
  • 🎆Skill Selection
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
    • đŸ’ĒSkill Tree connection
    • 🎨UI Color Customization
  • 🍲3D CRAFTING TABLE
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
    • ❓How to create table
    • ❓Multiple recepies configuration
    • 🌹Custom props
  • đŸ‹ī¸Gym
    • đŸ’ģInstallation
    • đŸ› ī¸Configuration
  • â™Ÿī¸Props
    • đŸ–ŧī¸Paintings Pack
    • đŸ”ĒKitchen Furniture Pack
Powered by GitBook
On this page
  • đŸ§Ē How to Create Custom Recipes
  • 🤔 Why Use Custom Recipes?
  • Understanding the Structure
  • Creating Your First Custom Recipe
  • Adding Multiple Recipes to One Table
  • Recipe Configuration Options
  • Advanced Recipe Examples
  • Testing Your Recipes
  • Best Practices
  • đŸŽ¯ Quick Start Template
  • 📝 Summary
  1. 3D CRAFTING TABLE

Multiple recepies configuration

đŸ§Ē How to Create Custom Recipes

Learn how to create and configure custom recipes using the new Shared.MultipleRecipes system. This flexible system allows you to create multiple unique recipes for a single crafting table without using the visual table generator.

🤔 Why Use Custom Recipes?

The Shared.MultipleRecipes system offers several advantages over the traditional table generator:

Benefits:

  • Multiple Recipes Per Table: Add 10, 20, or even more different recipes to a single crafting table

  • No Visual Configuration Required: Skip the complex prop positioning and animation setup

  • Easy Management: Add, remove, or modify recipes with simple configuration changes

  • Mix & Match: Combine different recipe types at the same table

  • Quick Setup: Create recipes in minutes instead of hours

  • Reusable Tables: Use existing table designs with new recipes

Perfect For:

  • Alchemy stations with multiple potion types

  • Cooking tables with various food recipes

  • Weapon crafting benches with different weapons

  • Any scenario where you need recipe variety without visual complexity


1

Understanding the Structure

The custom recipe system consists of two main parts:

1. Recipe Definition (configs/shared.lua)

Shared.MultipleRecipes = {
    ["your_recipe_uid"] = {
        itemsNeeded = { -- Items required to craft
            { name = "item_name", amount = 2 },
            { name = "another_item", amount = 1 },
        },
        rewards = { -- Items given after successful craft
            { name = "crafted_item", amount = 1 },
        },
        tableUid = "herbal_table", -- Visual table reference
    },
}

2. Table Assignment (configs/server.lua)

Config.Tables = {
    {
        coords = vec4(x, y, z, heading),
        recipeUids = { "your_recipe_uid", "another_recipe" }, -- Assign recipes to table
        snapToGround = true,
    },
}
2

Creating Your First Custom Recipe

Let's create a simple health potion recipe:

Step 1: Add Recipe to configs/shared.lua

Open configs/shared.lua and find or create the Shared.MultipleRecipes section:

Shared.MultipleRecipes = {
    ["health_potion_basic"] = {
        itemsNeeded = {
            {
                name = "red_herb",
                amount = 3,
            },
            {
                name = "water_bottle", 
                amount = 1,
            },
        },
        rewards = {
            {
                name = "health_potion",
                amount = 1,
            },
        },
        tableUid = "herbal_table", -- This must match a key in Shared.Recepie
    },
}

Step 2: Configure Table in configs/server.lua

Add or modify a table to use your new recipe:

Config.Tables = {
    {
        coords = vec4(250.0, -750.0, 34.0, 90.0), -- Your table position
        recipeUids = { "health_potion_basic" }, -- Reference your recipe
        snapToGround = true,
    },
}
3

Adding Multiple Recipes to One Table

Let's create a complete alchemy station with multiple potion types:

Multiple Recipe Example:

Shared.MultipleRecipes = {
    -- Health Potions
    ["health_potion_small"] = {
        itemsNeeded = {
            { name = "red_herb", amount = 2 },
            { name = "water_bottle", amount = 1 },
        },
        rewards = {
            { name = "health_potion_small", amount = 1 },
        },
        tableUid = "herbal_table",
    },
    ["health_potion_large"] = {
        itemsNeeded = {
            { name = "red_herb", amount = 5 },
            { name = "crystal_shard", amount = 1 },
            { name = "water_bottle", amount = 1 },
        },
        rewards = {
            { name = "health_potion_large", amount = 1 },
        },
        tableUid = "herbal_table",
    },
    
    -- Mana Potions
    ["mana_potion_small"] = {
        itemsNeeded = {
            { name = "blue_herb", amount = 2 },
            { name = "water_bottle", amount = 1 },
        },
        rewards = {
            { name = "mana_potion_small", amount = 1 },
        },
        tableUid = "herbal_table",
    },
    
    -- Special Potions
    ["invisibility_potion"] = {
        itemsNeeded = {
            { name = "shadow_essence", amount = 1 },
            { name = "blue_herb", amount = 3 },
            { name = "rare_mushroom", amount = 1 },
            { name = "water_bottle", amount = 1 },
        },
        rewards = {
            { name = "invisibility_potion", amount = 1 },
        },
        tableUid = "herbal_table",
    },
}

Assign All Recipes to One Table:

Config.Tables = {
    {
        coords = vec4(250.0, -750.0, 34.0, 90.0),
        recipeUids = { 
            "health_potion_small",
            "health_potion_large", 
            "mana_potion_small",
            "invisibility_potion"
        },
        snapToGround = true,
    },
}
4

Recipe Configuration Options

Required Fields:

Field
Description
Example

itemsNeeded

Array of required items

{ name = "herb", amount = 2 }

rewards

Array of items given

{ name = "potion", amount = 1 }

tableUid

Visual table reference

"herbal_table"

Item Structure:

{
    name = "item_identifier",  -- Must match your inventory system
    amount = 5,               -- Quantity required/given
}

Available Table UIDs created by us:

Use these tableUid values to reference existing table visuals:

  • "herbal_table" - Alchemy table with cauldron

  • "spices" - Simple crafting table

5

Advanced Recipe Examples

Cooking Station Example:

-- Cooking Recipes
["grilled_meat"] = {
    itemsNeeded = {
        { name = "raw_meat", amount = 1 },
        { name = "salt", amount = 1 },
    },
    rewards = {
        { name = "grilled_meat", amount = 1 },
    },
    tableUid = "cooking_station",
},

["meat_stew"] = {
    itemsNeeded = {
        { name = "raw_meat", amount = 2 },
        { name = "potato", amount = 3 },
        { name = "carrot", amount = 2 },
        { name = "water_bottle", amount = 1 },
    },
    rewards = {
        { name = "meat_stew", amount = 1 },
    },
    tableUid = "cooking_station",
},

Weapon Crafting Example:

-- Weapon Recipes
["iron_sword"] = {
    itemsNeeded = {
        { name = "iron_ingot", amount = 3 },
        { name = "wood_handle", amount = 1 },
    },
    rewards = {
        { name = "iron_sword", amount = 1 },
    },
    tableUid = "smithing_table",
},

["steel_armor"] = {
    itemsNeeded = {
        { name = "steel_ingot", amount = 8 },
        { name = "leather", amount = 4 },
        { name = "cloth", amount = 2 },
    },
    rewards = {
        { name = "steel_chestplate", amount = 1 },
    },
    tableUid = "smithing_table",
},
6

Testing Your Recipes

1. Restart the Script

After adding your recipes, restart the resource:

restart your_resource_name

2. Test In-Game

  1. Go to your configured table location

  2. Ensure you have the required items in inventory

  3. Interact with the table

  4. Your custom recipes should appear in the crafting menu

3. Troubleshooting

Recipe Not Showing:

  • Check that recipeUids in server config matches your recipe names exactly

  • Verify the table coordinates are correct

  • Ensure tableUid references an existing table in Shared.Recepie

Items Not Working:

  • Confirm item names match your inventory system exactly

  • Check item amounts are correct

  • Verify players have the required items

7

Best Practices

Recipe Organization:

Shared.MultipleRecipes = {
    -- Group similar recipes together
    
    -- === HEALTH POTIONS ===
    ["health_small"] = { ... },
    ["health_medium"] = { ... },
    ["health_large"] = { ... },
    
    -- === MANA POTIONS ===
    ["mana_small"] = { ... },
    ["mana_medium"] = { ... },
    
    -- === FOOD RECIPES ===
    ["bread"] = { ... },
    ["soup"] = { ... },
}

Naming Convention:

  • Use descriptive, unique recipe UIDs

  • Include category/type in the name: "weapon_iron_sword", "potion_health_large"

  • Avoid spaces, use underscores: "my_recipe" not "my recipe"

Recipe Balance:

  • Start with simple recipes (2-3 ingredients)

  • Gradually add complexity for rare items

  • Consider ingredient availability in your server economy

  • Test crafting times and player experience


đŸŽ¯ Quick Start Template

Copy this template to get started quickly:

-- In configs/shared.lua
Shared.MultipleRecipes = {
    ["your_recipe_name"] = {
        itemsNeeded = {
            { name = "ingredient_1", amount = 1 },
            { name = "ingredient_2", amount = 2 },
        },
        rewards = {
            { name = "crafted_item", amount = 1 },
        },
        tableUid = "herbal_table", -- Change to your preferred table
    },
}

-- In configs/server.lua  
Config.Tables = {
    {
        coords = vec4(0.0, 0.0, 0.0, 0.0), -- Change to your coordinates
        recipeUids = { "your_recipe_name" },
        snapToGround = true,
    },
}

Replace the placeholders with your actual values and you're ready to go!


📝 Summary

The custom recipe system gives you the power to create rich, varied crafting experiences without the complexity of visual table generation. Use it to:

  • Quickly add multiple recipes to existing tables

  • Create themed crafting stations (alchemy, cooking, smithing)

  • Experiment with different ingredient combinations

  • Scale your crafting system as your server grows

Start simple with a few recipes and expand as you become comfortable with the system. Happy crafting! 🎉

PreviousHow to create tableNextCustom props

Last updated 1 day ago

🍲
❓