Installation Guide

Follow this comprehensive guide to install and set up noclip_crafting on your FiveM server.

Prerequisites

Before installing noclip_crafting, ensure you have the following dependencies installed and configured:

  • QBCore Framework: Latest version of QBCore
  • ox_lib: Modern UI library for FiveM
  • ox_target: Advanced targeting system
  • ox_inventory: Modern inventory system
Important: Make sure all dependencies are properly installed and configured before proceeding with the installation.

Step 1: Download and Extract

  1. Download the latest version of noclip_crafting
  2. Extract the files to your server's resources directory
  3. Ensure the folder is named noclip_crafting

Step 2: Server Configuration

Add the following line to your server.cfg file:

ensure noclip_crafting
Note: Make sure to add this line after the [qb] and [standalone] sections in your server.cfg.

Step 3: ox_inventory Items

Add the following items to your ox_inventory/data/items.lua file:

-- Noclip-Crafting
["craftrecipe"] = {
    name = "craftrecipe",
    label = "Crafting Recipe",
    weight = 100,
    type = "item",
    image = "blueprint.png",
    unique = true,
    useable = false,
    shouldClose = false,
    description = "Crafting Recipe"
},
["paper"] = {
    name = "paper",
    label = "Roll of Paper",
    weight = 100,
    type = "item",
    image = "paperroll.png",
    unique = false,
    useable = false,
    shouldClose = false,
    description = ""
}
Note: You'll need to add the corresponding images to your ox_inventory/web/images folder.

Step 4: Configuration

Configure the script by editing the config.lua file:

  1. Open config.lua in your preferred text editor
  2. Review and modify the settings according to your server's needs
  3. Set up crafting locations and recipes
  4. Configure job restrictions if needed
  5. Set up the skill system parameters

Basic Configuration Example

Config = {}

-- Debug mode
Config.Debug = false

-- Language settings
Config.Language = 'en'

-- Skill system
Config.SkillSystem = {
    enabled = true,
    maxLevel = 100,
    experienceMultiplier = 1.0,
    baseExp = 100,
    expMultiplier = 1.5
}

-- Crafting locations
Config.CraftingLocations = {
    {
        name = "Basic Crafting Bench",
        coords = { vector4(x, y, z, heading) },
        prop = `prop_tool_bench02`,
        craftingTable = {
            -- Your recipes here
        }
    }
}

Step 5: Adding New Locations

To add new crafting locations:

  1. Copy an existing location entry in config.lua
  2. Modify the coordinates, name, and recipes
  3. Set appropriate job restrictions if needed
  4. Add blip configuration for map visibility

Location Configuration Example

{
    name = "Advanced Electronics Bench",
    coords = { vector4(x, y, z, heading) },
    prop = `prop_tool_bench02`,
    requiredItems = {
        ["electronics_toolkit"] = 1,
        ["soldering_iron"] = 1,
    },
    jobRestriction = {
        job = "mechanic",
        grade = 2
    },
    craftingTable = {
        ["advanced_circuit"] = {
            amount = 1,
            time = 5000,
            requires = {
                ["copper_wire"] = 3,
                ["silicon_chip"] = 2,
                ["plastic"] = 1
            }
        }
    }
}

Step 6: Item Requirements System

The item requirement system allows you to restrict access to crafting benches based on whether players have specific items:

  • Single Item Requirement: Require one specific item
  • Multiple Items (OR Logic): Require any one of several items
  • No Requirements: Allow access without any items

Item Requirement Examples

-- Single item requirement
requiredItems = {
    ["crafting_toolkit"] = 1,
}

-- Multiple items (OR logic)
requiredItems = {
    ["electronics_toolkit"] = 1, -- OR
    ["soldering_iron"] = 1, -- OR
    ["circuit_board"] = 5, -- OR (needs 5 circuit boards)
}

-- No requirements (default)
-- Simply omit the requiredItems field

Step 7: Resource Dependencies

For optional resource dependencies, add the requiredResource field:

{
    name = "Lumberjack Crafting",
    requiredResource = "jim-lumberjack", -- Only loads if this resource is started
    coords = { vector4(x, y, z, heading) },
    -- ... rest of configuration
}

Step 8: Testing

After installation, test the script:

  1. Restart your server
  2. Check the server console for any error messages
  3. Visit a crafting location in-game
  4. Test the crafting functionality
  5. Verify job restrictions work correctly
  6. Test the skill system if enabled

Troubleshooting

If you encounter issues during installation:

  • Check that all dependencies are properly installed
  • Verify the resource name in server.cfg matches the folder name
  • Ensure all required items are added to ox_inventory
  • Check the server console for error messages
  • Enable debug mode for detailed logging
Success! If you've followed all steps and the script is working correctly, you're ready to start customizing it for your server.