Installation

Quasar Crafting Creator is the ultimate FiveM crafting system, letting you create weapons, items, and attachments with 3D crafting tables and real-time in-game editing. Define recipes, cooldowns, and XP levels, add props, and control access by job or level. From black market labs to food stands, it adapts to any roleplay. Fully compatible with ESX and QBCORE, it brings immersion and creative freedom.


Download Script

To download the assets needed for this script, you must access the official Cfx.re portal, where all assets purchased through Tebex are managed.

  1. Go to the following link: 🔗 https://portal.cfx.re/assets/granted-assets

  2. Log in with the same Cfx.re account you used to make the purchase.

  3. In the list of granted assets, find and download the following:

    • Crafting Creator


Download Dependencies

This script requires some mandatory dependencies to function correctly. Make sure to download and extract them inside your server’s main directory, keeping their original folder structure intact.


Remove Other Scripts

This script may cause conflicts or errors if you use other crafting systems on your server. Common examples include qb-crafting, or other similar crafting scripts. It’s strongly recommended to remove them completely before installation to prevent compatibility or functionality issues.


Server.cfg Placement

This script must always start after es_extended or qb-core, never before. We recommend placing it below them in your server.cfg, ensuring all dependencies are loaded first to prevent errors or unexpected behavior.


Database Setup

This script includes an essential database required for its operation. You must import it before starting your server, preferably using HeidiSQL or any other manager compatible with MariaDB/MySQL.

ESX
DROP TABLE IF EXISTS `crafting_queue`;
DROP TABLE IF EXISTS `crafting_tables`;

CREATE TABLE IF NOT EXISTS `crafting_queue` (
	`id` INT(11) NOT NULL AUTO_INCREMENT,
	`owner` VARCHAR(80) NOT NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`tableId` VARCHAR(30) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`item` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`amount` INT(11) NOT NULL DEFAULT '1',
	`startDate` TIMESTAMP NULL DEFAULT NULL,
	`duration` INT(11) NULL DEFAULT NULL,
	`earn` INT(11) NULL DEFAULT '0',
	PRIMARY KEY (`id`) USING BTREE,
	INDEX `owner_tableId` (`owner`, `tableId`) USING BTREE
)
COLLATE='utf8mb3_general_ci';

CREATE TABLE IF NOT EXISTS `crafting_tables` (
	`id` INT(11) NOT NULL AUTO_INCREMENT,
	`creator` VARCHAR(80) NOT NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`label` VARCHAR(50) NOT NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`size` SMALLINT(6) NOT NULL DEFAULT '0',
	`job` VARCHAR(30) NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`grades` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`gang` VARCHAR(30) NULL DEFAULT NULL,
	`gangGrades` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`object` VARCHAR(50) NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`coords` LONGTEXT NOT NULL COLLATE 'utf8mb3_general_ci',
	`recipes` LONGTEXT NOT NULL COLLATE 'utf8mb4_bin',
	`blip` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`global` TINYINT(1) NULL DEFAULT NULL,
	PRIMARY KEY (`id`) USING BTREE
)
COLLATE='utf8mb3_general_ci';

ALTER TABLE `users` ADD IF NOT EXISTS `crafting_skill` LONGTEXT NULL DEFAULT NULL;

DELIMITER $$

CREATE PROCEDURE migrate_crafting_tables()
BEGIN
    IF EXISTS (
        SELECT * FROM INFORMATION_SCHEMA.COLUMNS 
        WHERE TABLE_NAME = 'crafting_tables' 
        AND COLUMN_NAME = 'job'
        AND TABLE_SCHEMA = DATABASE()
    ) THEN
        ALTER TABLE `crafting_tables` 
            DROP COLUMN `job`,
            DROP COLUMN `grades`,
            DROP COLUMN `gang`,
            DROP COLUMN `gangGrades`;
        
        ALTER TABLE `crafting_tables`
            ADD COLUMN `jobs` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
            ADD COLUMN `gangs` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci';
    END IF;
END$$

DELIMITER ;

CALL migrate_crafting_tables();
DROP PROCEDURE IF EXISTS migrate_crafting_tables;
QBCORE
DROP TABLE IF EXISTS `crafting_queue`;
DROP TABLE IF EXISTS `crafting_tables`;

CREATE TABLE IF NOT EXISTS `crafting_queue` (
	`id` INT(11) NOT NULL AUTO_INCREMENT,
	`owner` VARCHAR(80) NOT NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`tableId` VARCHAR(30) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`item` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`amount` INT(11) NOT NULL DEFAULT '1',
	`startDate` TIMESTAMP NULL DEFAULT NULL,
	`duration` INT(11) NULL DEFAULT NULL,
	`earn` INT(11) NULL DEFAULT '0',
	PRIMARY KEY (`id`) USING BTREE,
	INDEX `owner_tableId` (`owner`, `tableId`) USING BTREE
)
COLLATE='utf8mb3_general_ci';

CREATE TABLE IF NOT EXISTS `crafting_tables` (
	`id` INT(11) NOT NULL AUTO_INCREMENT,
	`creator` VARCHAR(80) NOT NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`label` VARCHAR(50) NOT NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`size` SMALLINT(6) NOT NULL DEFAULT '0',
	`job` VARCHAR(30) NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`grades` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`gang` VARCHAR(30) NULL DEFAULT NULL,
	`gangGrades` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`object` VARCHAR(50) NULL DEFAULT '0' COLLATE 'utf8mb3_general_ci',
	`coords` LONGTEXT NOT NULL COLLATE 'utf8mb3_general_ci',
	`recipes` LONGTEXT NOT NULL COLLATE 'utf8mb4_bin',
	`blip` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
	`global` TINYINT(1) NULL DEFAULT NULL,
	PRIMARY KEY (`id`) USING BTREE
)
COLLATE='utf8mb3_general_ci';


ALTER TABLE `players` ADD IF NOT EXISTS `crafting_skill` LONGTEXT NULL DEFAULT NULL;

DELIMITER $$

CREATE PROCEDURE migrate_crafting_tables()
BEGIN
    IF EXISTS (
        SELECT * FROM INFORMATION_SCHEMA.COLUMNS 
        WHERE TABLE_NAME = 'crafting_tables' 
        AND COLUMN_NAME = 'job'
        AND TABLE_SCHEMA = DATABASE()
    ) THEN
        ALTER TABLE `crafting_tables` 
            DROP COLUMN `job`,
            DROP COLUMN `grades`,
            DROP COLUMN `gang`,
            DROP COLUMN `gangGrades`;
        
        ALTER TABLE `crafting_tables`
            ADD COLUMN `jobs` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci',
            ADD COLUMN `gangs` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci';
    END IF;
END$$

DELIMITER ;

CALL migrate_crafting_tables();
DROP PROCEDURE IF EXISTS migrate_crafting_tables;

Crafting Creation Menu

To access the crafting creation menu, simply use the following command in the in-game chat:

/crafting_creator

This command will open the Quasar Crafting Creator interface, allowing you to create, edit, and configure your crafting quickly and visually.