### Install Pro Laser 4 Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/resource-installation.md Steps to install Pro Laser 4. This involves downloading the release, copying the resource folder, and adding the resource to the server configuration file. ```cfg ensure ProLaser4 ``` -------------------------------- ### Add LVC to server.cfg Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/v3/resource-installation/README.md This snippet shows how to add the LVC resource to your server configuration file (server.cfg) to ensure it is loaded when the server starts. ```cfg ensure lvc ``` -------------------------------- ### MySQL Connection String Configuration Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/persistent-records-and-tablet/README.md Example of a MySQL connection string to be used in server.cfg for the Pro Laser 4. It includes essential parameters like server address, credentials, database name, character set, and timeouts to prevent hangs or crashes during testing. ```bash set mysql_connection_string "server=localhost;user=;password=;database=resources;charset=utf8mb4;connectTimeout=60000;acquireTimeout=60000;timeout=60000 ``` -------------------------------- ### Add LVC:Fleet to server.cfg Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/installation-and-configuration/resource-installation.md This snippet shows the command to add to your server.cfg file to ensure LVC:Fleet is loaded and running on your server. ```cfg ensure lvc_fleet ``` -------------------------------- ### Open Lidar Records (Command) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md If logging is enabled and configured, this command opens a tablet interface to view previously recorded lidar data. It requires specific setup for logging. ```FiveM /lidarrecords ``` -------------------------------- ### vehicles.meta Example - XML Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/installation-and-configuration/configure-base-settings.md An example snippet from a vehicles.meta file, illustrating the 'gameName' field which is crucial for LVC:Fleet vehicle profile assignments. The 'gameName' must be unique after truncation to 11 characters. ```xml ... so2 so2 so2 null ... ``` -------------------------------- ### QB-Core: Add Pro Laser 4 Item Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/framework-guide.md Adds the Pro Laser 4 as an item within the QB-Core framework. This configuration is placed in the shared items file. ```lua ['weapon_prolaser4'] = { ['name'] = 'weapon_prolaser4', ['label'] = 'Lidar Gun', ['weight'] = 1000, ['type'] = 'weapon', ['ammotype'] = 'nil', ['image'] = 'weapon_prolaser4.png', ['unique'] = true, ['useable'] = false, ['description'] = 'ProLaser4 Lidar Gun' }, ``` -------------------------------- ### Configure Plugin Settings Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/shared-plugins/introduction-to-plugins.md This snippet illustrates how to configure a specific plugin after installation. Configuration is typically done in a settings file located within the plugin's folder, e.g., '/PLUGINS/XXXXX/SETTINGS.lua'. ```lua -- Configure the desired plugin to your liking using /PLUGINS/XXXXX/SETTINGS.lua ``` -------------------------------- ### vehicles.meta Example (XML) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/v3/resource-installation/assign-sirens.md An example snippet from a vehicles.meta file, illustrating the 'gameName' field which is crucial for matching vehicles in the SIREN_ASSIGNMENTS table. ```xml ... so2 so2 so2 null ... ``` -------------------------------- ### QB-Core: Add Pro Laser 4 Weapon Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/framework-guide.md Defines the Pro Laser 4 weapon for the QB-Core framework. This involves adding attributes to the shared weapons configuration file. ```lua ["weapon_prolaser4"] = { ['name'] = 'weapon_prolaser4', ['label'] = 'Lidar Gun', ['ammotype'] = 'nil', ['damagereason'] = 'Ticketed / Fined / Caught Speeding / Slow Down' }, ``` -------------------------------- ### Open Lidar Display (Command) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md This command is used to open the lidar display in-game. It functions identically to the 'I' keybind. ```FiveM /lidar ``` -------------------------------- ### Include oxmysql Library in server_scripts Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/persistent-records-and-tablet/README.md Lua code snippet demonstrating how to uncomment the inclusion of the oxmysql library in the server_scripts section of fxmanifest.lua. This enables the use of MySQL for persistent records and the tablet. ```lua server_scripts { '@oxmysql/lib/MySQL.lua', -- uncomment for persistent records & record management tablet. See docs and configs. ... } ``` -------------------------------- ### Move and Resize Lidar Display (Command) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md This command allows players to reposition and resize the on-screen lidar display. It offers customization for the user interface. ```FiveM /lidarmove ``` -------------------------------- ### LVC:Fleet Debugging Commands Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/fleet/in-game-use-guide/README.md Provides console commands for debugging LVC:Fleet, including printing debug messages, locking controls, recovering from crashes, and performing factory resets. ```Game Commands /lvcdebug ``` ```Game Commands /lvclock ``` ```Game Commands /lvcrecovercrash ``` ```Game Commands /lvcfactoryreset ``` -------------------------------- ### Enable oxmysql Dependency in fxmanifest.lua Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/persistent-records-and-tablet/README.md Lua code snippet showing how to uncomment the 'oxmysql' dependency in the fxmanifest.lua file. This is required to enable persistent records and the record management tablet functionality. ```lua dependencies { 'oxmysql', -- uncomment for persistent records & record management tablet. See docs and configs. } ``` -------------------------------- ### Pro Laser 4 Database Table Creation (SQL) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/persistent-records-and-tablet/README.md SQL script to create the 'prolaser4' table in a MySQL database. This table stores lidar records with columns for record ID, timestamp, speed, distance, coordinates, player name, street, and self-test timestamp. ```sql CREATE TABLE `prolaser4` ( `rid` INT(11) NOT NULL AUTO_INCREMENT, `timestamp` DATETIME NOT NULL, `speed` INT(11) NOT NULL DEFAULT '0', `distance` FLOAT NOT NULL DEFAULT '0', `targetX` FLOAT NOT NULL DEFAULT '0', `targetY` FLOAT NOT NULL DEFAULT '0', `player` TEXT NOT NULL COLLATE 'latin1_swedish_ci', `street` TEXT NOT NULL COLLATE 'latin1_swedish_ci', `selfTestTimestamp` DATETIME NOT NULL, PRIMARY KEY (`rid`) USING BTREE ) COLLATE='latin1_swedish_ci' ENGINE=InnoDB AUTO_INCREMENT=1; ``` -------------------------------- ### Overextended: Add Pro Laser 4 Weapon Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/framework-guide.md Configures the Pro Laser 4 as a weapon for the Overextended framework's inventory system. This entry is added to the weapons configuration file. ```lua ['WEAPON_PROLASER4'] = { label = 'Lidar Gun', weight = 700, durability = 0.1, }, ``` -------------------------------- ### Configure Discord Webhook URL in config.lua Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/persistent-records-and-tablet/README.md This snippet shows how to set the Discord webhook URL in the `config.lua` file for the Pro Laser 4. This URL is essential for enabling the device to send lidar records and screenshots to a specified Discord channel. ```lua cfg.discordWebhook = 'https://discord.com/api/webhooks/XXXXXXXXXXXXXXXXXXX/YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY' ``` -------------------------------- ### Enable Plugin Support in LVC Settings Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/shared-plugins/introduction-to-plugins.md This snippet shows how to enable plugin support in the LVC configuration file. You need to set the 'plugins_installed' variable to true in the 'lvc/SETTINGS.lua' file. ```lua plugins_installed = true ``` -------------------------------- ### Clear Lidar History (Command) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md This command clears all saved lidar history data. It is a utility command for managing stored information. ```FiveM /lidarwipe ``` -------------------------------- ### Toggle Lidar Display (Keybind) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md This snippet describes the keybind used to toggle the lidar display in-game. It is modifiable within the game's settings. ```FiveM cfg.toggleMenu ``` -------------------------------- ### Add Pro Laser 4 Weapon (Command) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md This command adds the Pro Laser 4 weapon to the player's character (ped). It's used for equipping the weapon. ```FiveM /lidarweapon ``` -------------------------------- ### Configure Trailer Support Settings Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/shared-plugins/trailer-support.md This Lua code snippet demonstrates the configuration of the TRAILERS table within the SETTINGS.lua file for the trailer-support plugin. It defines custom shortcuts to control trailer and vehicle extras, specifying whether an extra is on the trailer or cab, its ID, and the desired state (on/off). ```lua TRAILERS = { [''] = { { "", { { Trailer = , Extra = , State = }, { Trailer = < >, extra = < >, State = < > } } }, }, ['cfrladtcab'] = { { "Raise Ladder", { { Trailer = false, Extra = 8, State = true }, { Trailer = true, Extra = 2, State = false } } }, { "Lower Ladder", { { Trailer = false, Extra = 8, State = false }, { Trailer = true, Extra = 2, State = true } } }, { "Open All Doors", { { Trailer = false, Extra = 1, State = false }, { Trailer = true, Extra = 1, State = false } } }, { "Close All Doors", { { Trailer = false, Extra = 1, State = true }, { Trailer = true, Extra = 1, State = true } } }, } } ``` -------------------------------- ### Configure Takedowns Plugin Settings Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/shared-plugins/take-downs.md This snippet shows how to configure the Takedowns plugin by adjusting various settings in the `SETTINGS.lua` file. These settings control the plugin's master switch, activation keys, light intensity, spread, distance, falloff, synchronization radius, and high-beam integration. ```lua tkd_masterswitch = true tkd_key = 74 tkd_combokey = 21 tkd_intensity_default = 100 tkd_radius_default = 50 tkd_distance_default = 50 tkd_falloff_default = 1000 tkd_sync_radius = 400 tkd_highbeam_integration_default = 2 ``` -------------------------------- ### Reset Lidar Display Position (Command) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md This command resets the on-screen lidar display's size and location to their default settings. It's useful for restoring the default UI layout. ```FiveM /lidarmove true ``` -------------------------------- ### Set up VCF for ACE Permissions (XML) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/fleet/resource-installation/advanced-configuration.md This XML configuration shows how to enable ACE permissions for specific menu items within the VCF file. By adding 'Permissions="true"' to menu elements, you can control access to features, provided the 'Enabled' attribute is also set to 'true'. ```XML ... ... ``` -------------------------------- ### Lua: Resource Convars Configuration Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/v3/resource-installation/advanced-configuration.md This snippet shows how to configure resource convars within the fxmanifest.lua file. It includes options for enabling beta version notifications (`beta_checking`), muting experimental messages (`experimental`), and increasing client-side console logging for debugging (`debug_mode`). Changes require the 'refresh' command and a resource restart. ```Lua -- Example of how convars might be declared or referenced in fxmanifest.lua or related Lua files. -- Note: The actual declaration is typically within the fxmanifest.lua itself. -- Example for fxmanifest.lua (conceptual): -- fx_manifest_version 'cerulean' -- game 'gta5' -- -- -- Convars for advanced configuration -- sv_script 'config.lua' -- -- -- In config.lua or similar: -- RegisterConvar('beta_checking', 'false') -- Enables beta version notifications -- RegisterConvar('experimental', 'true') -- Mutes experimental messages -- RegisterConvar('debug_mode', 'false') -- Increases console logging for client ``` -------------------------------- ### Configure Audio Element Settings Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/installation-and-configuration/customize-vcfs.md This XML snippet configures various audio elements, including radio functionality, sound effects (SFX) for buttons and hazards, and volume levels for different audio types. It also specifies audio schemes and reminder intervals. ```XML ``` -------------------------------- ### Update Recalled Event Data Pseudocode Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/pro-laser-4/in-game-use-guide.md This pseudocode outlines the logic for updating an existing recalled event entry. It checks if the currently clocked vehicle is the same as the last recorded vehicle and if the new speed is greater than the stored speed. If both conditions are met, the existing record is updated with the new speed, range, and time. ```javascript If (lastVeh == currVeh AND lastVehSpeed < currVehSpeed) { // update existing data to new speed, range, and time } ``` -------------------------------- ### Assign VCF Profiles - Lua Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/installation-and-configuration/configure-base-settings.md Configures VCF file assignments for vehicle profiles. VCF_Files lists the available profiles, and VCF_Assignments maps vehicle game names to specific VCF profile indices. Ensure the 'DEFAULT' assignment is always present. ```lua ---------------------VCF FILES--------------------- VCF_Files = { 'DEFAULT.xml', --1 'WHELEN-295.xml', --2 'WHELEN-CENCOM-G.xml', --3 'MASTERCOM-B.xml', --4 'FS2000.xml', --5 'TMD.xml', --6 } VCF_Assignments = { ['DEFAULT'] = { 1 }, ['LAPD'] = { 1, 3 } [''] = { 1, 2, 3, 4, 5 } } ``` -------------------------------- ### Add ACE Config / Permissions Lines (ActionScript) Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/fleet/resource-installation/advanced-configuration.md This ActionScript code demonstrates how to grant specific ACE permissions to user groups. Replace 'builtin.everyone' with the desired ACE group to authorize access to various menu functions and features within the resource. ```ActionScript add_ace builtin.everyone "LVC:Fleet.menu_access" allow add_ace builtin.everyone "LVC:Fleet.menu_main_siren_settings" allow add_ace builtin.everyone "LVC:Fleet.toggle_peer_override" allow add_ace builtin.everyone "LVC:Fleet.toggle_local_override" allow add_ace builtin.everyone "LVC:Fleet.toggle_airhorn_intrp" allow add_ace builtin.everyone "LVC:Fleet.toggle_reset_standby" allow add_ace builtin.everyone "LVC:Fleet.custom_tone_options" allow add_ace builtin.everyone "LVC:Fleet.custom_manual" allow add_ace builtin.everyone "LVC:Fleet.custom_auxiliary" allow add_ace builtin.everyone "LVC:Fleet.toggle_park_kill" allow add_ace builtin.everyone "LVC:Fleet.menu_hud_settings" allow add_ace builtin.everyone "LVC:Fleet.toggle_hud" allow add_ace builtin.everyone "LVC:Fleet.custom_backlight_mode" allow add_ace builtin.everyone "LVC:Fleet.menu_audio_settings" allow add_ace builtin.everyone "LVC:Fleet.toggle_radio" allow add_ace builtin.everyone "LVC:Fleet.custom_scheme" allow add_ace builtin.everyone "LVC:Fleet.toggle_clicks" allow add_ace builtin.everyone "LVC:Fleet.custom_activity_reminder" allow add_ace builtin.everyone "LVC:Fleet.menu_plugins" allow ``` -------------------------------- ### Configure Traffic Advisor Assignments in Lua Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/shared-plugins/traffic-advisor.md This code snippet demonstrates how to configure the TA_ASSIGNMENTS table in SETTINGS.lua to define traffic advisor patterns. It shows how to specify lightbar dependencies, on/off states, and extras to add or remove for each pattern. ```lua TA_ASSIGNMENTS = { ['DEFAULT'] = { }, ['gameName'] = { lightbar = 3, left = { on = { add = 8, remove = 7, repair = true }, off = { add = {}, remove = { 7, 8 } } }, right = { on = { add = 7, remove = 8, repair = true }, off = { add = {}, remove = { 7, 8 } } }, middle = { on = { add = { 7, 8 }, remove = {}, repair = true }, off = { add = {}, remove = { 7, 8 } } }, }, } ``` -------------------------------- ### Configure Menu Element Permissions Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/installation-and-configuration/customize-vcfs.md This XML snippet defines access permissions for various menu elements within the system. It allows enabling or disabling access to main settings, override toggles, custom tone options, and other functional menus. ```XML ``` -------------------------------- ### Configure Community Identifier Source: https://github.com/trevorbarns/luxart-engineering-docs/blob/main/v3/resource-installation/configure-base-settings.md Sets a unique community identifier for profile saving. This 4-6 alphanumeric string differentiates client-side saves between servers and should be set once to avoid data loss. Spaces are not allowed; dashes can be used instead. ```lua -- Example community identifiers: -- "LCPS" -- "LCPSR" -- "SARP" -- "LSDOJ" -- "JakesRP" ```