Installation

2 min readUpdated Today

Overview

Placeable crafting stations for FiveM with fuel, durability, and timed cooking slots. Stations can be player-placed (persistent or temporary) or defined as fixed world points in config. XP system supports four providers: internal, ml_skills, DevHub, or custom.

Quick Start

  1. Download from CFX Portal
  2. Extract to your resources folder as ml_smelter_stations
  3. Add to server.cfg:
server.cfg
1ensure oxmysql
2ensure ox_lib
3ensure ml_bridge
4ensure ml_smelter_stations
Load Order

ml_smelter_stations must start AFTER ml_bridge.

  1. Register the station placement items in your inventory system (see Item Registration below)
  2. Restart the server

Database

Tables are created automatically on first start:

ml_smelter_stations: Stores persistent and fixed station positions, metadata (fuel state, cooking slots, durability), and ownership

ml_smelter_xp: Stores player XP and level data (only created when Config.XP.Provider = 'internal')

Item Registration

Register the following items in your inventory system. Each station type in Config.Stations requires a placement item:

  • campfire_kit: Places a temporary campfire
  • forge_kit: Places a persistent forge

Item names are configurable per station in Config.Stations[stationType].item.

Durability Metadata

Station items support a furnacelife metadata field (0-100) that preserves station durability when picked up and re-placed. The metadata is registered automatically on resource start.

Verify

After starting, the version banner prints to the server console:

lua
1[ml_smelter_stations] Resource started
2[ml_smelter_stations] Developed by Micio Mods | miciomods.it

With `Config.Debug = true`, the internal XP provider also logs when its table is ready:

lua
1[ml_smelter_stations] [XP] Internal database table ready.
  • Station props not spawning. Verify the prop model names in Config.Stations are valid GTA V props. Enable Config.Debug = true to see spawn logs.
  • Recipes not showing. Check that the recipe category matches one of the station's cook_categories.
  • XP not tracking. Confirm Config.XP.Enabled = true and the Provider value matches a valid option ('internal', 'ml_skills', 'devhub', 'custom').
  • Station limit reached. Players can own up to Config.MaxStationsPerPlayer stations. Fixed stations do not count toward this limit.
  • Old stations not being deleted. Config.DeleteOld must be a number (days). Check Config.DeleteOptions for conditions that prevent deletion (e.g., DeleteOnlyIfEmpty).