☑️Config Breakdown

Config Option Explanations

Config.Lan

  • This script has a built-in locale system, it fairly updated versions, but the most recent versions of each language will be at: https://github.com/jimathy/mechanic-locales

  • You will need to then set the language with Config.Lan. By default, it's set to English "en"

Config.Debug

  • This enables a debug mode, which will enable the debug boxes around locations to show you where they are set and where they are moving to.

  • This also enables Debug Messages in the F8 Menu and server console to help me and you with debugging issues

Config.img

  • Use this if you are using an older/edited version of qb-menu

  • This is for adding images of inventory items to qb-menu and qb-input.

  • The default would be: qb-inventory/html/images/

  • I personally use LJ's inventory system which makes it: lj-inventory/html/images/. I imagine others are pretty similar.

Config.JimShops

  • Set this to true if you are using my free qb-shops alternative, jim-shops

  • Set to false to use default inventory style shops

Config.JimMenu

  • Set this to true if you have an updated qb-menu with inventory icon/font awesome support

  • This clear's Config.img so you don't get duplicate images

Config.distkph

  • This is only used when the odometer is used, the toolbox menu, and the onscreen mileage display.

    • true = distance in Kilometers

    • false = distance in Miles

Config.Notify

  • This controls which notification system is to be called

Config.isVehicleOwned

  • This checks the player_vehicles database for if the vehicle is player owned or not.

  • If you only want customizations to be made to player-owned vehicles, enable this.

Config.RequiresJob

  • This locks the mechanic's performance items and cosmetic items behind a job role.

  • The jobs are set lower in the config.lua file at Config.JobRoles

Config.LocationBlips

  • This enables your locations blips even if you disable location requirements

Config.LocationRequired

  • This makes it so items become location locked. You will only be able to work if you are in a polyzone for a job's location (items will only work in a set mechanic shop)

  • If this is disabled items can be used anywhere.

Config.CostmeticJob

  • This enables or disables a job requirement on cosmetic items.

  • This ignores Config.RequiresJob

Config.FreeRepair

  • Enabling this makes all repairs by mechanics not require any materials to repair, so the repairs are free.

Config.StashRepair

  • This enables grabbing materials for repairs from the mechanic's current job stash, these stashes are accessible at set locations in the locations.lua.

  • If disabled materials will be taken from the player's inventory.

Config.Stores

  • This enables or completely disables the creation of shops for items.

  • If you want your mechanics to be able to either buy or get the items for free quickly, enable this.

Config.StashCraft

  • This enables grabbing materials for crafting from the mechanic's current job stash, these stashes are accessible at set locations in the locations.lua.

  • If disabled materials will be taken from the player's inventory.

Config.Crafting

  • This enables or completely disables the creation of crafting locations for items.

  • If you want your mechanics to build and craft each item from ingredients, enable this.

Config.PreviewPhone

  • Enabling this will make the changed cosmetics from /preview be collected into an email and will be sent to the person who did the preview

  • Disabling this will make the list of changed cosmetics and put it on a new "mechboard" item which is given to the person who did the preview

Config.PreviewJob

  • Enabling this locks the /preview command behind job roles

  • The jobs are set lower in the config.lua file at Config.JobRoles

Config.PreviewLocation

  • Enable this if you want to lock the /preview command to only work in mechanic shops

Config.PhoneMail

  • This is used to determine which phone script you use to send an email with preview details to your players

  • This is only used if Config.PreviewPhone is true

  • Currently, as of 2023 this only supports qb-phone and gks-phone

Config.CosmeticRemoval

  • This simply, when enabled, will remove the cosmetic items (listed above) from your inventory when successfully added to the vehicle

  • Disabling makes them unlimited use

Config.ShowOdo

  • Enabling this will by default show the on-screen Odometer(Miles/Kilometers) when driving in an owned vehicle.

  • Players can toggle on and off themselves easily with the command /showodo

Config.OdoLocation

  • This determines where the location of the Odometer will be for your players

  • List of possible options:

	"left"
	"right"
	"top"
	"top-left"
	"top-right"
	"bottom"
	"bottom-left"
	"bottom-right"

Config.OdoShowIcons

  • As of v2.9 there is now a "dashboard" feature that shows icons representing the damage

  • Toggling this enables or completely disables these

Config.OdoAlwaysShowIcons

  • Enable this to show the icons ALL THE TIM, even when parts are not damaged

Config.OdoIconsToShow

  • Fine control over which icons will show

  • Setting any of these to false will make the icon never be shown

Config.Chameleon

  • Enabling this enables the chameleon paint features, which requires the files to be installed correctly, disabling this will hide all references to it

Config.WaxFeatures = true

  • This enables the ability to apply "Wax" to a car, making them stay clean for set amounts of time

Config.ManualRepairCost

  • This is the amount to charge people for a repair at the manual repair benches.

  • The default is 5000 but I recommend setting this to a high amount for your server

  • The intention of the mechanic script is to provide RP to the server, there is no RP in using a prop instead of talking to someone.

Config.ManualRepairCostBased

  • Set this to true if you want the cost to ALWAYS be the amount set at "ManualRepairCost"

  • Set this to false if you want it to "ManualRepairCost" to be the max and cost is calculated by damage

Config.ManualRepairBased

  • This overrides the previous setting ManualRepairCost

  • Setting this to true sets the price of the repair to be based on the cost of the vehicle in your vehicles.lua

Config.ManualRepairPercent

  • This is only used if ManualRepairBased is enabled.

  • This needs to be set to the percentage of the value of the vehicle you want to charge people per repair

  • For example:

    • 5% of a $10,000 car would be $500 per repair

    • 10% of a $200,000 car would be $20,000 per repair

Config.repairEngine

  • When enabled this will include engine repairs in the Repair Bench process

  • If disabled it will only attempt to repair the body

Config.repairExtras

  • Enabling this will include Extra Damages repair that comes from qb-mechanicjob

  • if qb-mechanicjob is not found but this is true, it will skip over these extras

Config.dutyMessage

  • I left his here as people were giving me different reasons for why they wanted the repair benches in the script

  • I'm leaving this up to them for how they want to phrase their notification.

  • Default: "There is a Mechanic on duty!"

Config.repairAnimate

  • When true this will add a small animation sequence to the repair of the vehicle, instead of people just sitting and watching a progress bar

Config.repairSpeed

  • The time between each task while using repairAnimate. 1500 Seems to be a reasonable time for each one

Config.NosRefillCharge

  • This only is used at NOS Refill stations, if you have added them to your locations in locations.lua

  • The amount in dollars required for a player to refill an Empty NOS can.

  • Note: There is also the option of a mechanic crafting them for you.

  • The default is 1000

Config.NosTopSpeed

  • Controls the top speed "multiplier" when boosting

  • Functions a bit weirdly - 55.0 isn't 55 times normal speed but seems a good boost value

  • Default - 55.0

  • This seems to be a fair number but people have said that in their servers this number is too powerful and needed to be lowered

  • Removing this config option or setting this to -1.0 disables it and leaves the acceleration boost on.

Config.NosBoostPower

  • Fine controls over the acceleration power for each boost level

  • Shown as a table for optimization

NosBoostPower = {
	10.0, -- Level 1
	30.0, -- Level 2
	50.0, -- Level 3
},
  • These values seem a good default, but may need adjusting if you have customized vehicle meta files

Config.NitrousUseRate

  • This is how fast the nitrous drains

  • Default - 0.4

  • Boost Level 1 changes this number minus half of this number (0.4 - (0.4 / 2))

  • Boost Level 3 changes this number plus half of this number (0.4 + (0.4 / 2))

Config.NitrousCoolDown

  • This is how long a player has to wait before the boost works again

  • Default - 7

  • 7 seconds seems to be enough time for it to cool down, setting this too low allows some servers players to travel at insane speeds after spamming the button

  • Set to 0 to disable this

Config.CooldownConfirm

  • Simply, this will play a confirmation beep when the cooldown is complete

  • Made is toggleable in the config in case people didn't like it

Config.nosDamage

  • This enables NOS to cause damage to the engine while boosting

  • Boosting for too long will play sound alerts and damage the Engine.

Config.boostExplode

  • If boosting too long at Boost Level 3 the NOS tank will explode.

  • Will cause damage to the vehicle and cause a fire.

  • This will remove the remaining NOS from the vehicle and not give an empty tank

Config.EnableFlame

  • true adds exhaust flame effects while boosting

Config.EnableTrails

  • true adds taillight effects while boosting

Config.EnableScreen

  • true True adds screen effects while boosting

Config.skillcheck

  • When adding Nos to a vehicle there are three skill-check script options available

    • "qb-skillbar"

    • "qb-lock"

    • "ps-ui"

Config.explosiveFail

  • When true there is a 1 in 10 chance for when you fail the skill check for the tank to explode in the vehicle.

  • It doesn't cause much damage, but will push the player and vehicle back

Config.explosiveFailJob

  • When false mechanics WILL NOT cause explosions on failing the skill check

  • When true mechanics CAN cause explosions on failing the skill check

Config.DiscordPreview

  • This enables or disables the Discord Reports for the /preview command

  • When true this system will send the report to a specified discord channel using a webhook

  • When false this system will be ignored/disabled

Config.DiscordDefault

  • So people seem to be confused by this one.

  • This is the default channel that will be used, no matter where you are.

  • If you haven't set specific discord channels in a location, it should "default" to this link.

Config.DiscordColour

  • You don't need to touch this, but this is the default colour of the post in the discord channel

  • The default colour is 16753920 - this is a "decimal" colour number, which is a yellow colour.

Repair requirements

  • These are the repair costs and materials that are needed

  • Each one has to have 1 set item

  • The cost for each is a MAX amount, eg. 100% damage would be this number, 50% would be half this number.

  • The defaults:

RepairEngine = "iron",
RepairEngineCost = 8,
--
RepairBody = "plastic",
RepairBodyCost = 8,
--
RepairRadiator = "newoil",
RepairRadiatorCost = 1,
--
RepairAxle = "axleparts",
RepairAxleCost = 1,
--
RepairBrakes = "sparkplugs",
RepairBrakesCost = 1,
--
RepairClutch = "carbattery",
RepairClutchCost = 1,
--
RepairFuel = "plastic",
RepairFuelCost = 8,

Duct tape:

  • Many people forgot these things while begging me to add repair benches..

  • The Ducttape item is intended to be an alternative and customizable version of repair kits

  • They are customizable and let even set the max amount of how much the parts get repaired

Config.DuctSimpleMode

  • This sets the duct tape item into the simple mode, repairing to the amount every time

  • true makes duct tape set every use to the amount set below at MaxDuctEngine

  • false uses the DuctAmountEngine value to repair the by vehicle each use

Config.MaxDuctEngine

  • This is the MAX value the engine can be repaired by, leave this below 1000(100%) so people still need to use mechanics

  • If DuctSimpleMode is true will set it straight to this amount

  • If DuctSimpleMode is false it will be the max amount it can be repaired to

  • Default = 450.0 - (45% health)

Config.DuctAmountEngine

  • The amount to repair your engine by each duct tape item use

  • This is only used if DuctSimpleMode is false

  • Default = 100.0 - (10% Health)

Config.DuctTapeBody

  • Setting this to true allows the body to be repaired alongside the engine

  • This is also affected by DuctSimpleMode in the same ways

Config.MaxDuctBody

  • This is the MAX value the body can be repaired by, leave this below 1000(100%) so people still need to use mechanics

  • If DuctSimpleMode is true will set it straight to this amount

  • If DuctSimpleMode is false it will be the max amount it can be repaired to

  • Default = 450.0 - (45% health)

Config.DuctAmountBody

  • The amount to repair your engine by each duct tape item use

  • This is only used if DuctSimpleMode is false

  • Default = 100.0 - (10% Health)

Config.RemoveDuctTape

  • Simply, if this is true it will remove 1 duct tape item after use

  • If false it will be constantly reusable

Config.Jobroles:

  • This only matters if Config.RequiresJob is enabled and is specifically for the ability to use the mechanic items and use /preview command

  • These are the job roles that you want to be able to use the items in this script

  • An example layout for multiple job roles: JobRoles = { "mechanic", "tuner" }

  • The default setting is = { "mechanic" }

Config.nosBarColour

  • When set to true it will create a "progressbar" for a value in colour

    • ▓▓▓░

  • when set to false it will leave the bars as white and grey

    • ▓░

Config.nosBarFull

  • This is the symbol used to indicate a full segment in the bar

    • Default =

Config.nosBarEmpty

  • This is the symbol used to indicate an empty segment in the bar

    • Default =

Last updated