Live Updates – You can make live updates to signs around the map with our in-game menu.
Multiple Icons – We’ve got multiple icons including speeds (20, 30, 40, 50, 50 & National Speed (UK)) along with arrow left, arrow right and lane closed.
Textures Editable – You can re-texture the speeds should you wish to do so.
Custom Menu – We’ve designed an in-game menu which is realistic for you to easily update the lanes.
Fully Synced – This is fully synced to all players.
Permissions – We’ve added support for QBCore, ESX and vRP permissions straight out of the box.
Panel sterowania – Nasz panel sterowania w grze pozwala graczom łatwo ustawić ikonę lub prędkość używaną nad pasami ruchu w czasie rzeczywistym.
Zdalne zmiany – Bramownice autostradowe można aktualizować na całej mapie za pomocą jednego polecenia, z mapą pozwalającą wybrać zamierzoną lokalizację do edycji.
System monitoringu CCTV – Z łatwością przeglądaj i przenoś kamery CCTV na wysięgnikach po całej mapie z panelu sterowania.
Tryb USA / Wielka Brytania / UE – Smart Motorways obsługuje trzy tryby, w tym amerykański, brytyjski i europejski. Oznacza to, że obsługujemy szeroki zakres różnych prędkości od razu po wyjęciu z pudełka dla Twojego serwera.
Integracja Smart Signs – Smart Motorways jest zintegrowany z Smart Signs, co oznacza, że jeśli posiadasz obie te rzeczy, będziesz mógł dodawać wiadomości/ikony na nowej tablicy nad każdą bramownicą.
Integracja inteligentnych fotoradarów – Smart Motorways jest zintegrowany z inteligentnymi fotoradarami, co oznacza, że jeśli posiadasz obie kopie, kamery na wszystkich bramownicach staną się aktywne i będą dynamicznie dostosowywać się do ograniczenia prędkości ustawionego nad każdym indywidualnym pasem ruchu, pomagając w egzekwowaniu prędkości.
Obsługa ikon – Oprócz obsługi prędkości, mamy ikony, w tym strzałkę w lewo i zamknięty pas.
Logowanie przez Discord – Nasz zasób może integrować się z Discord z logowaniem przez webhooks. Pozwala to logować wszelkie zmiany na bramownicach autostradowych i przechowywać zapis na przyszłość.
Prekonfigurowane znaki – Skonfigurowaliśmy ponad 60 lokalizacji na mapie, co oznacza, że Smart Motorways jest gotowy do użycia od razu po wyjęciu z pudełka.
Oszczędność pamięci – Wszelkie zmiany wprowadzone w Smart Motorways na mapie zostaną zapisane w pamięci, co oznacza, że pozostaną tam po restartach. Możesz łatwo usunąć wszystkie znaki za pomocą naszego polecenia /resetsmartmotorways.
Tekstury Emisyjne – Te ikony są jasne zarówno w dzień, jak i w nocy, dzięki czemu zawsze przyciągają uwagę kierowców o każdej porze dnia.
Obsługa wielu pasów ruchu – Posiadamy wsparcie dla dróg dwu-, trzy- i czteropasmowych.
Łatwo dodawaj lokalizacje – Dzięki naszemu poleceniu deweloperskiemu możesz łatwo dodawać nowe lokalizacje w grze, które są automatycznie zapisywane na potrzeby następnego restartu.
Config
config = {
-- We've included speed options for the UK, EU, and US based servers
-- Simply type "UK", "EU", or "US" to change the speed options
iconPack = "UK",
-- If you add custom icons, you can add them here
-- Speed-related icons will be used for speed cameras, and must contain the speed limit in the name as numbers only.
-- E.g. an icon of speed_60 will be used for a speed limit of 60. An icon of 3_speed_40 would result in a speed limit of 340.
-- Do NOT edit this section unless you know what you are doing and have modelled custom icons.
iconPacks = {
["UK"] = {
"arrow_left",
"arrow_right",
"red_x",
"speed_20",
"speed_30",
"speed_40",
"speed_50",
"speed_60",
"national_speed",
},
["EU"] = {
"arrow_left",
"arrow_right",
"red_x",
"speed_20",
"speed_30",
"speed_40",
"speed_50",
"speed_60",
"speed_70",
"speed_80",
"speed_90",
"speed_100",
"speed_110",
"speed_120",
"speed_130",
"speed_140",
"speed_150",
},
["US"] = {
"arrow_left",
"arrow_right",
"red_x",
"bv_motorway_speed_15",
"bv_motorway_speed_20",
"bv_motorway_speed_25",
"bv_motorway_speed_30",
"bv_motorway_speed_35",
"bv_motorway_speed_40",
"bv_motorway_speed_45",
"bv_motorway_speed_50",
"bv_motorway_speed_55",
"bv_motorway_speed_60",
"bv_motorway_speed_65",
"bv_motorway_speed_70",
"bv_motorway_speed_75",
"bv_motorway_speed_80",
"bv_motorway_speed_85",
},
},
cctvKeys = {
up = {0, 172},
down = {0, 173},
left = {0, 174},
right = {0, 175},
leaveCam = {0, 200},
},
-- The distance in which the sign and its speed limits will load/unload at
loadDistance = 200.0,
-- This will enable debug printing on both the client and the server. This should be set to false most of the time.
developerMode = false,
integrations = {
smartSpeedCameras = {
enabled = false, -- Only enable if you have the Smart Speed Cameras resource installed and up to date
resourceName = "SmartSpeedCameras", -- This is the name of the resource which Smart Speed Cameras is installed under
cooldown = 60, -- This is the cooldown in seconds between speed camera detections. This is to prevent spam fines.
},
smartSigns = {
enabled = false, -- Only enable if you have the Smart Signs resource installed and up to date
resourceName = "SmartSigns", -- This is the name of the resource which Smart Signs is installed under
}
},
saveSpeedsOnChange = true, -- If this is set to true, the speeds will be saved to locations.json when changed. If false, the speeds will reset on restart.
saveTextOnChange = true, -- If this is set to true, the text will be saved to locations.json when changed. If false, the text will reset on restart.
saveIconOnChange = true, -- If this is set to true, the icon will be
closeMenuButton = {0, 177},
-- This allows you to enable Discord logging for the signs
-- You must add your webhook in sv_utils.lua
logging = {
enabled = false,
displayName = "Smart Motorways",
colour = 31487,
title = "**New Sign Log**",
icon = "https://i.imgur.com/dcOQmpA.jpg",
footerIcon = "https://i.imgur.com/n3n7JNW.png",
dateFormat = "%d-%m-%Y %H:%M:%S", -- Day-Month-Year Hour-Minute-Second
},
resetSignsCommand = {
enabled = true,
commandName = "resetsmartmotorway",
Permissions = {
EnablePermissions = false, -- If set to false, all below job checks will be disabled, even if they are enabled in the config.lua
AcePermissions = {
Permission = "update.motorway.sign",
Enabled = false,
},
ESX = {
Enabled = false,
CheckJob = {
Enabled = false, -- Enable this to use ESX job check
Jobs = {"police"} -- A user can have any of the following jobs, allowing you to add multiple
}
},
-- We've added vRP integration. All you need to do is enable it below. Then, configure if you wish to check for groups or permissions, or even both
vRP = {
Enabled = false,
CheckGroup = {
Enabled = false, -- Enable this to use vRP group check
Groups = {"police"}, -- A user can have any of the following groups, meaning you can add different jobs
},
CheckPermission = {
Enabled = false, -- Enable this to use vRP permission check
Permissions = {"police"} -- A user can have any of the following permissions, allowing you to add multiple
},
},
-- We've added QBCore integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
QBCore = {
Enabled = false,
CheckJob = {
Enabled = false, -- Enable this to use QBCore job check
Jobs = {"police"}, -- A user can have any of the following jobs, meaning you can add different jobs
},
CheckPermission = {
Enabled = false, -- Enable this to use QBCore permission check
Permissions = {"police"}, -- A user can have any of the following permissions, allowing you to add multiple
},
},
-- We've added QBX integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
QBX = {
Enabled = false,
CheckJob = {
Enabled = false, -- Enable this to use QBX job check
Jobs = {"police"}, -- A user can have any of the following jobs, meaning you can add different jobs
}
},
},
},
selectSignCommand = {
commandName = "selectsign",
Permissions = {
EnablePermissions = false, -- If set to false, all below job checks will be disabled, even if they are enabled in the config.lua
AcePermissions = {
Permission = "update.motorway.sign",
Enabled = false,
},
ESX = {
Enabled = false,
CheckJob = {
Enabled = false, -- Enable this to use ESX job check
Jobs = {"police"} -- A user can have any of the following jobs, allowing you to add multiple
}
},
-- We've added vRP integration. All you need to do is enable it below. Then, configure if you wish to check for groups or permissions, or even both
vRP = {
Enabled = false,
CheckGroup = {
Enabled = false, -- Enable this to use vRP group check
Groups = {"police"}, -- A user can have any of the following groups, meaning you can add different jobs
},
CheckPermission = {
Enabled = false, -- Enable this to use vRP permission check
Permissions = {"police"} -- A user can have any of the following permissions, allowing you to add multiple
},
},
-- We've added QBCore integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
QBCore = {
Enabled = false,
CheckJob = {
Enabled = false, -- Enable this to use QBCore job check
Jobs = {"police"}, -- A user can have any of the following jobs, meaning you can add different jobs
},
CheckPermission = {
Enabled = false, -- Enable this to use QBCore permission check
Permissions = {"police"}, -- A user can have any of the following permissions, allowing you to add multiple
},
},
-- We've added QBX integration. All you need to do is enable it below. Then, configure if you wish to check for jobs or permissions, or even both
QBX = {
Enabled = false,
CheckJob = {
Enabled = false, -- Enable this to use QBX job check
Jobs = {"police"}, -- A user can have any of the following jobs, meaning you can add different jobs
}
},
},
},
directionColours = {
["north"] = 17,
["south"] = 18,
["east"] = 17,
["west"] = 18,
},
-- Here you can translate the resource into another language
translations = {
selectSignHelp = "Select a smart motorways sign",
editingSign = "Now editing sign ID: ",
hasBeenSetTo = " has been set to: ",
speedLimitOfLane = "Speed limit of lane ",
symbolOfLane = "Symbol of lane ",
speedUnit = "mph",
resetAll = "All lanes have been reset.",
resetSignsHelp = "Reset all Smart Motorways",
},
-- We do not recommend editing below this section:
-- The offsets which the signs are placed at in comparison to the sign
spawnOffsets = {
-- Offsets for two lane setups
[2] = {
[1] = {x = -3.9, y = -2.1, z = 3.65},
[2] = {x = 1.61, y = -2.1, z = 3.65}
},
-- Offsets for three lane setups
[3] = {
[1] = {x = -6.04, y = -2.2, z = 3.65},
[2] = {x = -0.925, y = -2.2, z = 3.65},
[3] = {x = 3.82, y = -2.2, z = 3.65}
},
-- Offsets for four lane setups
[4] = {
[1] = {x = -9.7801, y = -2.2, z = 3.65},
[2] = {x = -3.21, y = -2.2, z = 3.65},
[3] = {x = 2.52, y = -2.1, z = 3.65},
[4] = {x = 8.0501, y = -2.1, z = 3.65}
}
},
-- Here you can define the various locations of the signs around the map.
-- Here you can configure the sound effect which is played when a sign is successfully updated
soundEffect = {
enabled = true,
name = "CONFIRM_BEEP",
dict = "HUD_MINI_GAME_SOUNDSET",
},
gantryModels = {
[2] = `2_lane`,
[3] = `3_lane`,
[4] = `4_lane`,
},
}
Setup guide
The delivered package includes a London Studios documentation shortcut; these local notes preserve the essential deployment boundary.
Requirements and preparation
Choose ACE, ESX, QBCore or QBX permissions for motorway controls.
A map/location review before enabling the preconfigured gantries.
Instalacja
Eksportuj SmartMotorways and open the package documentation shortcut.
Configure permissions, commands and enabled gantry locations in config.lua.
Start the resource and add any custom locations with its developer workflow on staging.
Configuration checkpoints
Verify remote sign changes, persistence after restart and reset behavior.
Safety: Back up the affected resource and database tables, use credentials owned by your server, and complete a staging test before replacing a live resource. The full configuration remains in the download package.