Skip to content

Matrix Signs Configuration Reference

This document provides a complete reference for every setting in config.lua for the MTM Highway Matrix Signs system.


Section Scope Key Settings
1. Language & General Display language, chat commands, keybinds, streaming range Config.Language, Config.command, Config.accessKey, Config.RenderDistance
2. Security & Permissions FiveM ACE permission restrictions Config.UseAcePermissions, Config.AcePermission
3. ESX Job Whitelist Job-based access restrictions Config.commandProtection, Config.commandWhitelist
4. Web Control & API External HTTP REST API toggles and secret API keys Config.EnableWebAPI, Config.WebApiKey
5. MTM-PADUI Tablet In-game iPadOS tablet app registration and metadata Config.PadApp.Enabled, Config.PadApp.Id, Config.PadApp.Category
6. Localizations Multi-language translation dictionary Config.Locales

Config = {}
-- ============================================================================
-- 1. LANGUAGE & GENERAL SETTINGS
-- ============================================================================
-- System display language: "en" (English) or "nl" (Dutch)
Config.Language = 'en'
-- Command used to open the matrix signs interface in chat (/matrix:menu)
Config.command = 'matrix'
-- Default keyboard keybind to open the menu (e.g. 'F5', 'U', or '' to disable)
Config.accessKey = 'F5'
-- Vertical height offset (Z-axis) for spawned matrix signs (+0.4 recommended)
Config.ZOffset = 0.4
-- In-game 3D prop streaming distance in meters (350.0m default)
Config.RenderDistance = 350.0
-- ============================================================================
-- 2. SECURITY & PERMISSIONS
-- ============================================================================
-- Enable FiveM ACE permissions via server.cfg (set to true to restrict access)
Config.UseAcePermissions = false
-- The ACE permission identifier (e.g. add_ace group.police "matrixborden.use" allow)
Config.AcePermission = 'matrixborden.use'
-- ============================================================================
-- 3. ESX JOB WHITELIST (OPTIONAL)
-- ============================================================================
-- Restrict access to specific ESX jobs (set to true to enable job verification)
Config.commandProtection = false
-- Whitelist of job names authorized to open and modify matrix signs
Config.commandWhitelist = {
"police",
"ambulance",
"mechanic",
"kmar"
}
-- ============================================================================
-- 4. WEB CONTROL CENTER & HTTP REST API SETTINGS
-- ============================================================================
-- Enable or disable the built-in Webserver & HTTP REST API.
-- true = External web browsers, dispatch centers, live web maps & CAD/MDT can connect.
-- false = Webserver and HTTP API disabled; resource runs purely local in-game via NUI (/matrix:menu).
Config.EnableWebAPI = true
-- Security: Secret API Key for external requests via the website or REST API.
-- Leave empty ("") if you do not want to require an API key / password.
Config.WebApiKey = ""
-- ============================================================================
-- 5. MTM-PADUI TABLET APP CONFIGURATION
-- ============================================================================
Config.PadApp = {
Enabled = true, -- Automatically register the app in the MTM-PADUI tablet
Id = 'mtm_matrix', -- Unique App ID in the tablet
Name = {
['en'] = 'Traffic Matrix Signs', -- App name in English
['nl'] = 'Matrixborden Beheer' -- App name in Dutch
},
Category = {
['en'] = 'Emergency Services & Police', -- Main category in the App Store
['nl'] = 'Hulpdiensten & Politie'
},
SubCategory = {
['en'] = 'Traffic & Infrastructure', -- Subcategory / Tag
['nl'] = 'Verkeer & Infrastructuur'
},
Description = {
['en'] = 'Real-time interactive highway matrix sign management system with live road map, lane controls, and advisory speed settings.',
['nl'] = 'Real-time interactief matrixborden beheersysteem voor snelwegen met live wegenkaart, rijstrookbediening en adviessnelheden.'
},
Author = 'Mountain Mods', -- Developer / Author name
Version = 'v2.0.0', -- App version string
Rating = {
['en'] = '★ 5.0 (Traffic)', -- Rating badge / tag
['nl'] = '★ 5.0 (Verkeer)'
},
Icon = 'fa-solid fa-traffic-light', -- FontAwesome icon class or image URL
IconBg = 'linear-gradient(135deg, #d97706 0%, #b45309 100%)', -- Icon background (CSS gradient or hex color)
IconColor = '#ffffff', -- Icon glyph color
Badge = 'LIVE', -- Optional status badge on the homescreen icon (e.g. 'LIVE' or nil)
InstalledByDefault = false -- Pre-installed on home screen (true) or downloadable via App Store (false)
}
-- ============================================================================
-- 6. LOCALIZATIONS & TRANSLATIONS
-- ============================================================================
Config.Locales = {
['en'] = {
['no_access'] = 'You do not have permission to access the matrix signs system!',
['unknown_prop'] = 'Unknown prop: %s',
['prop_spawned'] = "Prop '%s' spawned at %s"
},
['nl'] = {
['no_access'] = 'Je hebt geen toegang tot het matrixborden systeem!',
['unknown_prop'] = 'Onbekende prop: %s',
['prop_spawned'] = "Prop '%s' gespawned op %s"
}
}

Defines the distance (in meters) around the player at which 3D matrix sign props are actively streamed and rendered. The default value of 350.0 meters offers optimal visual distance while maintaining minimal client memory overhead.

Controls whether the resource registers an asynchronous HTTP endpoint on your FiveM server. If you only intend to use the in-game NUI menu or the MTM-PADUI tablet, set this to false for maximum security.

When Config.EnableWebAPI is true, setting a non-empty string here forces all incoming HTTP requests from web dashboards or CAD/MDT systems to supply a matching X-Api-Key header or ?apikey= parameter.