Map System

Map System

Advanced map system

Instead of giving every player free access to the minimap and pause-menu map, map access is tied to a unique inventory item. The access is restricted for people with a map in their inventory. And they can use the map to have their own custom blips.

The script also includes a fully redesigned ESC menu with configurable buttons, player information, service status, money cards, social links, and custom colors.

Key Features :

Technical Information

Installation guide

  1. Download the resource

    After purchase, sign in to portal.cfx.re (Granted Assets) with the Cfx account linked to your Tebex order and download Syra_MapItem.

  2. Add it to your resources

    Extract the archive and place Syra_MapItem in your server resources folder. Keep the folder name unchanged: other resources and item exports call it by name.

  3. Import the SQL

    Import sql.sql from the resource root. It creates the player_maps table.

    source sql.sql
  4. Add the map item

    Add the item to ox_inventory/data/items.lua:

    ['map'] = {
    	label  = 'Map',
    	weight = 200,
    	stack  = false,
    	close  = true,
    },

    stack = false keeps a separate map_id per map. For QBCore, add to qb-core/shared/items.lua:

    map = { name = 'map', label = 'Map', weight = 0, type = 'item', image = 'map.png', unique = true, useable = false, shouldClose = true, description = 'A map used to write and share markers' },

    For qb-inventory, copy INVENTORY/map.png to qb-inventory/html/images/map.png.

  5. Start order in server.cfg

    Start it after oxmysql, ox_lib and your inventory:

    ensure oxmysql
    ensure ox_lib
    ensure ox_inventory
    ensure Syra_MapItem
  6. Configure

    Config.Framework        = 'esx'   -- 'esx' | 'qb'
    Config.Inventory        = 'ox'    -- 'ox' | 'qs' | 'qb' | 'esx'
    Config.Locale           = 'en'    -- 'en' | 'fr'
    Config.Notify           = 'ox'    -- 'ox' | 'esx' | 'syra'
    Config.MapItem          = 'map'   -- inventory item name
    Config.DisablePauseMenu = true    -- block ESC menu when player has no map
    Config.EditorKey        = 'F6'    -- key to open the blip editor
    Config.Target           = 'ox'    -- 'ox' | 'qb' | 'none'