Installation Guide

Follow this step-by-step guide to install, configure, and verify the BS Road Maintenance Multiplayer Job on your FiveM server.

Check Prerequisites & Dependencies

Before installing, ensure your FiveM server is running an up-to-date server artifact (recommended: 7290+) and has the following required dependencies running:

  • Core Framework: qbx_core (QBox), qb-core, or es_extended (ESX Legacy / 1.final)
  • Database Library: oxmysql
  • UI & Utilities Library: ox_lib
  • Target Interaction System: ox_target or qb-target
  • Vehicle Keys System (Optional): qb-vehiclekeys, qbx_vehiclekeys, qs-vehiclekeys, or custom via unencrypted bridge
  • Notification System (Optional): ox_lib, bs-advnotifications, esx, qb, qbx, mythic_notify, okokNotify, or pNotify

Download the Resource

Acquire BS Road Maintenance Multiplayer Job from your FiveM Keymaster (opens in a new tab) granted assets or the Cfx.re Portal (opens in a new tab).

Extract the archive into your server's resources directory (e.g., resources/[jobs]/bs-roadmaintenancejob). Ensure the resource folder is named exactly:

bs-roadmaintenancejob

Execute Database Migration (roadmaintenancejob.sql)

Import the provided roadmaintenancejob.sql file into your MySQL database using HeidiSQL, phpMyAdmin, or your database management tool of choice.

Configure Server ACE Permissions (server.cfg)

Open your server.cfg file and add the following permission grant line above the ensure bs-roadmaintenancejob command:

add_ace resource.bs-roadmaintenancejob command.add_ace allow

IMPORTANT: Why is add_ace resource.bs-roadmaintenancejob command.add_ace allow required?

When bs-roadmaintenancejob initializes, the server script in server/functions.lua executes the following native command:

ExecuteCommand(('add_ace %s %s allow'):format(serverConfig.adminPermission, 'roadmaintenancejob.admin'))

By default, FiveM prevents server resources from executing the add_ace command from script contexts unless the resource is explicitly granted command.add_ace allow. Without this line in your server.cfg, FiveM will deny command execution, preventing server staff from accessing the in-game Area Manager (/roadtaskmanager) and Bonus Manager (/roadbonusmanager).

Configure Service Fleet Vehicles

The resource includes pre-configured settings and streamed vehicle liveries for three municipal road maintenance vehicles in config/sh_config.lua:

    vehicles = {
      models = {
        {
          model = 'boxville',
          label = 'Brute Boxville',
          requiredLevel = 1,
          colours = { primary = 111, secondary = 111 },
          livery = 2,
          extras = {},
        },
        {
          model = 'utillitruck3',
          label = 'Utility Truck',
          requiredLevel = 2,
          colours = { primary = 111, secondary = 111 },
          livery = 0,
          extras = {},
        },
        {
          model = 'bison3',
          label = 'Bravado Bison',
          requiredLevel = 3,
          colours = { primary = 111, secondary = 111 },
          livery = 0,
          extras = {},
        },
      },
      spawnCoords = {
        vec4(880.5, -2437.72, 27.13, 358.18),
        vec4(876.96, -2437.66, 27.28, 358.55),
        vec4(873.21, -2437.61, 27.24, 359.94),
        vec4(869.62, -2437.6, 27.13, 0.83),
      },
    },
  • When a work route starts, the system checks parking bay clearance using job.spawnClearRadius (default: 2.5m).
  • For crews with 3 or more players, the script automatically spawns 2 service vehicles simultaneously to accommodate all members.
  • Vehicle keys are automatically distributed to all active lobby crew members upon spawn.

Add to Server Startup (server.cfg)

Add the permission and resource start lines below all framework, database, and bridge dependencies in your server.cfg:

# Permissions
add_ace resource.bs-roadmaintenancejob command.add_ace allow

# Start Resource
ensure bs-roadmaintenancejob

Start the Server and Verify Installation

  1. Restart your FiveM server (or run refresh and ensure bs-roadmaintenancejob in the live server console).
  2. Check your server console to ensure the database connects without SQL syntax errors and that the initialization completes cleanly.
  3. In-game, travel to the base headquarters located at vec4(864.89, -2429.71, 27.13, 171.74) (marked on your map by the orange Road Maintenance blip, sprite 801).
  4. Approach the supervisor NPC (s_m_y_dockwork_01) and interact with your target key (Alt or Right Click).
  5. Select Road Maintenance Job to open the comprehensive NUI job tablet, create a crew lobby, or start a route!