Closed LAFAFARP closed 1 year ago
its not using jobmoney? if using jobmoney , qb-management must have a money for the current job.
yes for the payment system I use QB-Management and Jim-Payments but nothing helps yet in the company's account there is money 1.5M€ but impossible
and the same for crafting impossible to craft and drop the items should we add the items 1 by 1 in the item.lua shared of QBCORE?
otherwise your script is really really perfect such a feat, too bad you didn't have discord
should we add the items 1 by 1 in the item.lua shared of QBCORE?
if you want items , yes you need to install
the item is in renzu_tuners\install folder
yes for the payment system I use QB-Management
can you show me your config for tuners
-- renzu_tuners
config = {}
-- debug mode -- saves all vehicle including non owned vehicles
config.debug = true -- enable commands for dev. /sethandling 100 (0-100), /setfuel 100 (0-100), /setmileage 1000 (0,10000) !! note this does not have permission checks
config.sandboxmode = false -- different tuning and no degrations and other stuff. mostly used only when trying to tweak a vehicle handling meta in dyno.
config.freeupgrade = true -- for upgrades. set to true best for standalone purpose or testing purpose, for roleplay use the crafting/jobmanage money. if false menu will requires you a specific item for each upgrades
config.metadata = false -- use item metadata when crafting items if ox_inventory. if your inventory does not support it, set this to false.
config.job = { -- set to false (config.job = false) if you want all feature are accesible by any player, or true, required job to use repairs and upgrade menu, dyno -- job access for menu upgrade and points. ex. mechanic, tuner?
['mechanic'] = 4, -- @jobname -- @grade_level
['tuners'] = 3, -- @jobname -- @grade_level
}
config.usetarget = true-- if false, please configure the points config -- supports ox_target,qtarget,qb-target only
config.enablepackage = true -- easy install all upgrade variants. ex. Full Upgrade all Racing Parts. this will install all in one package for each variants. each upgrades requires item if itemrequired is true
config.upgradepackageAnimation = false -- do animation for each upgrades in package
config.upgradevariation = { -- enable/disable upgrade variation.
['elite'] = true,
['pro'] = true,
['racing'] = true,
['ultimate'] = true,
}
config.enablecrafting = true -- crafting for items and parts,turbo, engine etc..
config.purchasableUpgrade = false -- dont like crafting / item based? set this to true to use money to all item upgrades
config.jobmanagemoney = false -- use job money if purchasableUpgrade. ex. esx_society, qb-management
-- prevent local entity / spawn entity by admin to be saved in server.
config.plateprefix = 'FRA' -- recommended 3 char
config.plateformat = config.plateprefix..'^ 111' -- this will make plate CFXIE91F for example.. this is required to prevent local vehicles/ admin spawn entity filling up global state vehicle stats -- docs: https://docs.fivem.net/natives/?_0x79780FD2
config.nosaveplate = { -- dont save this plate pattern
['CFX'] = true,
['RENT'] = true,
['ESX'] = true,
}
-- points
config.engineswapper = {
coords = {
[1] = vector4(-316.03, -121.16, 38.99, 65.03)
},
label = 'Changement de moteur',
model = prop_engine_hoist
,
}
config.enablemarkers = true -- markers points config.points = { -- marker and drawtext type interactions [1] = {label = 'Mise à niveau du véhicule', coord = vector3(-320.34, -126.2, 38.97)}, -- add new here }
config.repairpoints = { -- marker and drawtext type interactions [1] = {label = 'Réparation du véhicule', coord = vector3(-322.9, -132.33, 38.96)}, }
config.useMlo = false -- set to true if your using MLO and there will be no need to spawn Dynamometer prop
config.dynoprop = mist_dyno
-- replace with your dyno prop or leave default
config.dynopropShow = true -- set to false if your MLO has a DYNO area.. but setting up the coordinates for prop is still require to make the dyno logic work.
config.dynocollision = true -- set to true if your using dynamometer prop
config.routingbucket = 0 -- leave default if your not using custom routing buckets
config.dynopoints = { -- @platform = exact location of prop. @coord marker location of dyno access
-- east lost santos customs sample placement
[1] = {
label = "Dynojet",
platform = vec4(-360.3323, -112.5015, 38.9845, 158.4727+180), -- location of dyno position where vehicle will align
offsets = vec3(0.2,0.0,0.0), -- additional (+) offset to vehicle fittings
coord = vec3(-362.3821, -117.6957, 39.083) -- location of Interaction
},
-- benny sample placement
[2] = {
label = "Dynojet",
platform = vec4(-214.057, -1319.63, 31.15, 1.93), -- location of dyno position where vehicle will align
offsets = vec3(0.0,0.2,0.0), -- additional (+) offset to vehicle fittings
coord = vec3(-213.894, -1324.475, 30.909) -- location of Interaction
}
}
config.enginestat_default = { -- default engine stat. do not edit, this is being used in tuning computation logic compression = 100.0, airpressure = 100.0, fuelpressure = 100.0, ignition = 100.0, }
config.tuningmenu = { [1] = { label = 'Mise au point du moteur', icon = 'wrench', description = 'Système de gestion du moteur', type = 'engine', attributes = { { name = 'acceleration', type = "slider", label = "Calendrier d'allumage", min = -0.5, max = 1.5 , step = 0.001, default = 1.0}, { name = 'engineresponse', type = "slider", label = "Tableau des carburants", min = -0.5, max = 1.5 , step = 0.001, default = 1.0}, { name = 'gear_response', type = "slider", label = "Réponse de l'engrenage", min = -0.5, max = 1.5 , step = 0.01, default = 1.0}, { name = 'topspeed', type = "slider", label = "Transmission finale", min = -0.5, max = 1.5 , step = 0.01, default = 1.0}, } }, [2] = { label = 'Rapport d\'engrenage', icon = 'cogs', type = 'gearratio', description = 'Changer les rapports de vitesse (affecte uniquement /manualgear, /autogear)', }, [3] = { label = 'Réglage Turbo', type = 'turbo', icon = 'chart-area', description = 'Modification de la pression de suralimentation par engrenage', min = 0.5, max = 1.5, }, [4] = { label = 'Réglage de la suspension', type = 'suspension', icon = 'car', description = 'Réglage de la suspension de votre véhicule', handlingname = 'CHandlingData', attributes = { { type = "slider", label = "fSuspensionForce", min = 0.5, max = 1.5 , step = 0.001, default = 1.0}, { type = "slider", label = "fSuspensionCompDamp", min = 0.5, max = 1.5 , step = 0.001, default = 1.0}, { type = "slider", label = "fSuspensionReboundDamp", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fSuspensionUpperLimit", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fSuspensionLowerLimit", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fSuspensionRaise", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fSuspensionBiasFront", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fAntiRollBarForce", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fAntiRollBarBiasFront", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fRollCentreHeightFront", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, { type = "slider", label = "fRollCentreHeightRear", min = 0.5, max = 1.5 , step = 0.01, default = 1.0}, } }, }
config.tunableonly = { -- bypasses upgrade add stats. dont disable these if you dont know what it is. this can only be modify via tuning when ex. in suspension if vehicle have upgraded suspension. eg. elite_suspension ['fSuspensionUpperLimit'] = true, ['fSuspensionLowerLimit'] = true, ['fSuspensionRaise'] = true, ['fSuspensionBiasFront'] = true, ['fAntiRollBarForce'] = true, ['fAntiRollBarBiasFront'] = true, ['fRollCentreHeightFront'] = true, ['fRollCentreHeightRear'] = true,
}
config.engineparts = { -- @item = item name, @handling = Affected Handling when degraded [1] = {item = 'engine_oil', label = 'Huile moteur', handling = {'fInitialDriveMaxFlatVel'}, maxdegrade = 0.1, affects = 'Vitesse maximale', cost = 25000}, [2] = {item = 'engine_sparkplug', label = 'Bougie d\'allumage du moteur', handling = {'fDriveInertia'}, maxdegrade = 0.2, affects = 'Couple', cost = 25000}, [3] = {item = 'engine_gasket', label = 'Joint de culasse', handling = {'fDriveInertia'}, maxdegrade = 0.3, affects = 'Couple', cost = 25000}, [4] = {item = 'engine_airfilter', label = 'Filtre à air du moteur', handling = {'fInitialDriveForce'}, maxdegrade = 0.15, affects = 'Puissance', cost = 25000}, [5] = {item = 'engine_fuelinjector', label = 'Injecteurs de carburant pour moteurs', handling = {'fInitialDriveForce'}, maxdegrade = 0.15, affects = 'Puissance', cost = 25000}, [6] = {item = 'engine_pistons', label = 'Pistons de moteur' , handling = {'fInitialDriveMaxFlatVel'}, maxdegrade = 0.2, affects = 'Vitesse maximale', cost = 25000}, [7] = {item = 'engine_connectingrods', label = 'Barres de connexion du moteur' , handling = {'fInitialDriveForce'}, maxdegrade = 0.2, affects = 'Vitesse maximale', cost = 25000}, [8] = {item = 'engine_valves', label = 'Soupapes de moteur', handling = {'fInitialDriveForce'}, maxdegrade = 0.2, affects = 'Puissance', cost = 25000}, [9] = {item = 'engine_block', label = 'Bloc moteur', handling = {'fInitialDriveMaxFlatVel'}, maxdegrade = 0.2, affects = 'Vitesse maximale', cost = 25000}, [10] = {item = 'engine_crankshaft', label = 'Vilebrequin du moteur', handling = {'fDriveInertia'}, maxdegrade = 0.3, affects = 'Couple', cost = 25000}, [11] = {item = 'transmition_clutch', label = 'Embrayage de transmission', handling = {'fClutchChangeRateScaleUpShift'}, maxdegrade = 0.7, affects = 'Passage au rapport inférieur', cost = 25000}, [12] = {item = 'engine_flywheel', label = 'Volant d\'inertie du moteur', handling = {'fClutchChangeRateScaleDownShift'}, maxdegrade = 0.8, affects = 'Passage au niveau supérieur', cost = 25000}, [13] = {item = 'engine_camshaft', label = 'Arbre à cames du moteur', handling = {'fInitialDriveMaxFlatVel'}, maxdegrade = 0.5, affects = 'Vitesse maximale', cost = 25000}, [14] = {item = 'oem_brakes', label = 'Freins OEM', handling = {'fBrakeForce','fHandBrakeForce'}, maxdegrade = 0.8, affects = 'Brake Power', cost = 25000}, [15] = {item = 'oem_suspension', label = 'Suspension OEM', handling = {'fSuspensionForce','fSuspensionCompDamp','fSuspensionReboundDamp'}, maxdegrade = 0.8, affects = 'Suspension', cost = 25000}, [16] = {item = 'oem_gearbox', label = 'Boîte de vitesses OEM', handling = {'nInitialDriveGears','fDriveInertia','fClutchChangeRateScaleUpShift','fClutchChangeRateScaleDownShift'}, maxdegrade = 0.2, affects = 'Acceleration', cost = 25000}, }
-- @category = category of upgrades, @state = state bag name of degration status. @item = item name, @handling = affected handling when upgraded , @add = percent added when upgraded config.engineupgrades = { -- ULTIMATE {category = 'ultimate', state = 'engine_oil', item = 'ultimate_oil', label = 'Huile ultime', handling = {'fInitialDriveMaxFlatVel'}, add = 1.15, affects = 'Vitesse maximale', cost = 25000}, {category = 'ultimate', state = 'engine_sparkplug', item = 'ultimate_sparkplug', label = 'Bougie d\'allumage ultime', stat = {ignition = 3.2}, handling = {'fDriveInertia'}, add = 1.3, affects = 'Couple', cost = 25000}, {category = 'ultimate', state = 'engine_gasket', item = 'ultimate_gasket', label = 'Joint de culasse ultime', handling = {'fDriveInertia'}, add = 1.2, affects = 'Couple', cost = 25000}, {category = 'ultimate', state = 'engine_airfilter', item = 'ultimate_airfilter', label = 'Filtre à air ultime', handling = {'fInitialDriveForce'}, add =1.2, affects = 'Puissance', cost = 25000}, {category = 'ultimate', state = 'engine_fuelinjector', item = 'ultimate_fuelinjector', label = 'Injecteurs de carburant Ultimate', stat = {fuelpressure = 43.2}, handling = {'fInitialDriveForce'}, add = 1.2, affects = 'Puissance', cost = 25000}, {category = 'ultimate', state = 'engine_pistons', item = 'ultimate_pistons', label = 'Pistons ultimes' , stat = {compression = 16.0, fuelpressure = -16.0, ignition = 8.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.2, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'ultimate', state = 'engine_connectingrods', item = 'ultimate_connectingrods', label = 'Ultimate Connecting Rods' , handling = {'fInitialDriveForce'}, add = 1.2, affects = 'Vitesse maximale', cost = 25000}, {category = 'ultimate', state = 'engine_valves', item = 'ultimate_valves', label = 'Vannes ultimes', stat = {compression = 1.6, fuelpressure = -1.6}, handling = {'fInitialDriveForce'}, add = 1.2, affects = 'Puissance', cost = 25000}, {category = 'ultimate', state = 'engine_block', item = 'ultimate_block', label = 'Bloc ultime', stat = {compression = 16.0, fuelpressure = -8.0, ignition = 8.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.3, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'ultimate', state = 'engine_crankshaft', item = 'ultimate_crankshaft', label = 'Vilebrequin Ultime', stat = {ignition = 8.0}, handling = {'fDriveInertia'}, add = 1.2, affects = 'Couple', mod = {index = 11, add = 1}, cost = 25000}, {category = 'ultimate', state = 'transmition_clutch', item = 'ultimate_clutch', label = 'Embrayage de transmission ultime', handling = {'fClutchChangeRateScaleUpShift'}, add = 1.4, affects = 'Passage au rapport inférieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'ultimate', state = 'engine_flywheel', item = 'ultimate_flywheel', label = 'Volant d\'inertie Ultime', handling = {'fClutchChangeRateScaleDownShift'}, add = 1.3, affects = 'Passage au niveau supérieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'ultimate', state = 'engine_camshaft', item = 'ultimate_camshaft', label = 'Arbre à cames ultime',stat = {duration = 48.0, compression = 16.0, fuelpressure = -16.0, ignition = 16.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.3, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'ultimate', state = 'oem_brakes', item = 'ultimate_brakes', label = 'Freins ultimes', handling = {'fBrakeForce','fHandBrakeForce'}, add = 6.4, affects = 'Brake Power', mod = {index = 12, add = 3}, cost = 25000}, {category = 'ultimate', state = 'oem_suspension', item = 'ultimate_suspension', label = 'Suspension ultime', handling = {'fSuspensionForce','fSuspensionCompDamp','fSuspensionReboundDamp','fSuspensionUpperLimit','fSuspensionLowerLimit','fSuspensionRaise','fSuspensionBiasFront','fAntiRollBarForce','fAntiRollBarBiasFront','fRollCentreHeightFront','fRollCentreHeightRear'}, add = 1.6, affects = 'Suspension', mod = {index = 15, add = 4}, cost = 25000}, {category = 'ultimate', state = 'oem_gearbox', item = 'ultimate_gearbox', label = 'Boîte de vitesses ultime', handling = {'nInitialDriveGears','fDriveInertia','fClutchChangeRateScaleUpShift','fClutchChangeRateScaleDownShift'}, add = 1.7, affects = 'Acceleration', mod = {index = 13, add = 1}, cost = 25000}, -- RACING {category = 'racing', state = 'engine_oil', item = 'racing_oil', label = 'Huile de course', handling = {'fInitialDriveMaxFlatVel'}, add = 1.1, affects = 'Vitesse maximale', cost = 25000}, {category = 'racing', state = 'engine_sparkplug', item = 'racing_sparkplug', label = 'Bougie d\'allumage de compétition', stat = {ignition = 1.6}, handling = {'fDriveInertia'}, add = 1.2, affects = 'Couple', cost = 25000}, {category = 'racing', state = 'engine_gasket', item = 'racing_gasket', label = 'Joint de culasse de compétition', handling = {'fDriveInertia'}, add = 1.1, affects = 'Couple', cost = 25000}, {category = 'racing', state = 'engine_airfilter', item = 'racing_airfilter', label = 'Filtre à air Racing', handling = {'fInitialDriveForce'}, add = 1.1, affects = 'Puissance', cost = 25000}, {category = 'racing', state = 'engine_fuelinjector', item = 'racing_fuelinjector', label = 'Injecteurs de carburant de compétition', stat = {fuelpressure = 21.6}, handling = {'fInitialDriveForce'}, add = 1.1, affects = 'Puissance', cost = 25000}, {category = 'racing', state = 'engine_pistons', item = 'racing_pistons', label = 'Pistons de course', stat = {compression = 8.0, fuelpressure = -8.0, ignition = 4.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.1, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'racing', state = 'engine_connectingrods', item = 'racing_connectingrods', label = 'Bielles de course' , handling = {'fInitialDriveForce'}, add = 1.1, affects = 'Vitesse maximale', cost = 25000}, {category = 'racing', state = 'engine_valves', item = 'racing_valves', label = 'Soupapes de course', stat = {compression = 0.8, fuelpressure = -0.8}, handling = {'fInitialDriveForce'}, add = 1.1, affects = 'Puissance', cost = 25000}, {category = 'racing', state = 'engine_block', item = 'racing_block', label = 'Bloc de course', stat = {compression = 8.0, fuelpressure = -4.0, ignition = 4.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.2, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'racing', state = 'engine_crankshaft', item = 'racing_crankshaft', label = 'Vilebrequin Racing', stat = {ignition = 4.0}, handling = {'fDriveInertia'}, add = 1.1, affects = 'Couple', mod = {index = 11, add = 1}, cost = 25000}, {category = 'racing', state = 'transmition_clutch', item = 'racing_clutch', label = 'Embrayage de transmission Racing', handling = {'fClutchChangeRateScaleUpShift'}, add = 1.3, affects = 'Passage au rapport inférieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'racing', state = 'engine_flywheel', item = 'racing_flywheel', label = 'Volant de course', handling = {'fClutchChangeRateScaleDownShift'}, add = 1.2, affects = 'Passage au niveau supérieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'racing', state = 'engine_camshaft', item = 'racing_camshaft', label = 'Arbre à cames de compétition',stat = {duration = 26.0, compression = 8.0, fuelpressure = -8.0, ignition = 8.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.2, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'racing', state = 'oem_brakes', item = 'racing_brakes', label = 'Freins de course', handling = {'fBrakeForce','fHandBrakeForce'}, add = 4.4, affects = 'Brake Power', mod = {index = 12, add = 3}, cost = 25000}, {category = 'racing', state = 'oem_suspension', item = 'racing_suspension', label = 'Suspension de course', handling = {'fSuspensionForce','fSuspensionCompDamp','fSuspensionReboundDamp','fSuspensionUpperLimit','fSuspensionLowerLimit','fSuspensionRaise','fSuspensionBiasFront','fAntiRollBarForce','fAntiRollBarBiasFront','fRollCentreHeightFront','fRollCentreHeightRear'}, add = 1.4, affects = 'Suspension', mod = {index = 15, add = 4}, cost = 25000}, {category = 'racing', state = 'oem_gearbox', item = 'racing_gearbox', label = 'Boîte de vitesses de course', handling = {'nInitialDriveGears','fDriveInertia','fClutchChangeRateScaleUpShift','fClutchChangeRateScaleDownShift'}, add = 1.5, affects = 'Acceleration', mod = {index = 13, add = 1}, cost = 25000}, -- PRO {category = 'pro', state = 'engine_oil', item = 'pro_oil', label = 'Huile Pro', handling = {'fInitialDriveMaxFlatVel'}, add = 1.07, affects = 'Vitesse maximale', cost = 25000}, {category = 'pro', state = 'engine_sparkplug', item = 'pro_sparkplug', label = 'Bougies d\'allumage Pro',stat = {ignition = 0.8}, handling = {'fDriveInertia'}, add = 1.12, affects = 'Couple', cost = 25000}, {category = 'pro', state = 'engine_gasket', item = 'pro_gasket', label = 'Joint de culasse Pro', handling = {'fDriveInertia'}, add = 1.07, affects = 'Couple', cost = 25000}, {category = 'pro', state = 'engine_airfilter', item = 'pro_airfilter', label = 'Filtre à air Pro', handling = {'fInitialDriveForce'}, add =1.07, affects = 'Puissance', cost = 25000}, {category = 'pro', state = 'engine_fuelinjector', item = 'pro_fuelinjector', label = 'Pro Fuel Injectors',stat = {fuelpressure = 12.0}, handling = {'fInitialDriveForce'}, add = 1.07, affects = 'Puissance', cost = 25000}, {category = 'pro', state = 'engine_pistons', item = 'pro_pistons', label = 'Pistons Pro' , stat = {compression = 4.0, fuelpressure = -4.0, ignition = 2.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.07, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'pro', state = 'engine_connectingrods', item = 'pro_connectingrods', label = 'Bielles Pro' , handling = {'fInitialDriveForce'}, add = 1.07, affects = 'Vitesse maximale', cost = 25000}, {category = 'pro', state = 'engine_valves', item = 'pro_valves', label = 'Soupapes Pro', stat = {compression = 0.4, fuelpressure = -0.4}, handling = {'fInitialDriveForce'}, add = 1.07, affects = 'Puissance', cost = 25000}, {category = 'pro', state = 'engine_block', item = 'pro_block', label = 'Bloc Pro', stat = {compression = 4.0, fuelpressure = -2.0, ignition = 2.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.12, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'pro', state = 'engine_crankshaft', item = 'pro_crankshaft', label = 'Vilebrequin Pro', stat = {ignition = 2.0}, handling = {'fDriveInertia'}, add = 1.07, affects = 'Couple', mod = {index = 11, add = 1}, cost = 25000}, {category = 'pro', state = 'transmition_clutch', item = 'pro_clutch', label = 'Embrayage Pro Transmission', handling = {'fClutchChangeRateScaleUpShift'}, add = 1.12, affects = 'Passage au rapport inférieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'pro', state = 'engine_flywheel', item = 'pro_flywheel', label = 'Volant d\'inertie Pro', handling = {'fClutchChangeRateScaleDownShift'}, add = 1.07, affects = 'Passage au niveau supérieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'pro', state = 'engine_camshaft', item = 'pro_camshaft', label = 'Arbre à cames Pro',stat = {duration = 12.6,compression = 4.0, fuelpressure = -4.0, ignition = 4.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.12, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'pro', state = 'oem_brakes', item = 'pro_brakes', label = 'Freins Pro', handling = {'fBrakeForce','fHandBrakeForce'}, add = 3.4, affects = 'Brake Power', mod = {index = 12, add = 3}, cost = 25000}, {category = 'pro', state = 'oem_suspension', item = 'pro_suspension', label = 'Suspension Pro', handling = {'fSuspensionForce','fSuspensionCompDamp','fSuspensionReboundDamp','fSuspensionUpperLimit','fSuspensionLowerLimit','fSuspensionRaise','fSuspensionBiasFront','fAntiRollBarForce','fAntiRollBarBiasFront','fRollCentreHeightFront','fRollCentreHeightRear'}, add = 1.25, affects = 'Suspension', mod = {index = 15, add = 4}, cost = 25000}, {category = 'pro', state = 'oem_gearbox', item = 'pro_gearbox', label = 'Boîte de vitesses Pro', handling = {'nInitialDriveGears','fDriveInertia','fClutchChangeRateScaleUpShift','fClutchChangeRateScaleDownShift'}, add = 1.3, affects = 'Acceleration', mod = {index = 13, add = 1}, cost = 25000}, -- ELITE {category = 'elite', state = 'engine_oil', item = 'elite_oil', label = 'Huile d\'élite', handling = {'fInitialDriveMaxFlatVel'}, add = 1.03, affects = 'Vitesse maximale', cost = 125000}, {category = 'elite', state = 'engine_sparkplug', item = 'elite_sparkplug', label = 'Bougie d\'allumage Elite',stat = {ignition = 0.4}, handling = {'fDriveInertia'}, add = 1.05, affects = 'Couple', cost = 25000}, {category = 'elite', state = 'engine_gasket', item = 'elite_gasket', label = 'Joint de culasse Elite', handling = {'fDriveInertia'}, add = 1.03, affects = 'Couple', cost = 125000}, {category = 'elite', state = 'engine_airfilter', item = 'elite_airfilter', label = 'Filtre à air Elite', handling = {'fInitialDriveForce'}, add =1.03, affects = 'Puissance', cost = 125000}, {category = 'elite', state = 'engine_fuelinjector', item = 'elite_fuelinjector', label = 'Injecteurs de carburant Elite', stat = {fuelpressure = 5.2}, handling = {'fInitialDriveForce'}, add = 1.03, affects = 'Puissance', cost = 25000}, {category = 'elite', state = 'engine_pistons', item = 'elite_pistons', label = 'Pistons d\'élite' ,stat = {compression = 2.0, fuelpressure = -2.0, ignition = 1.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.03, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'elite', state = 'engine_connectingrods', item = 'elite_connectingrods', label = 'Bielles Elite' , handling = {'fInitialDriveForce'}, add = 1.03, affects = 'Vitesse maximale', cost = 25000}, {category = 'elite', state = 'engine_valves', item = 'elite_valves', label = 'Vannes Elite',stat = {compression = 0.2, fuelpressure = -0.2}, handling = {'fInitialDriveForce'}, add = 1.03, affects = 'Puissance', cost = 25000}, {category = 'elite', state = 'engine_block', item = 'elite_block', label = 'Bloc d\'élite',stat = {compression = 2.0, fuelpressure = -1.0, ignition = 1.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.05, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'elite', state = 'engine_crankshaft', item = 'elite_crankshaft', label = 'Vilebrequin Elite',stat = {ignition = 1.0}, handling = {'fDriveInertia'}, add = 1.03, affects = 'Couple', mod = {index = 11, add = 1}, cost = 25000}, {category = 'elite', state = 'transmition_clutch', item = 'elite_clutch', label = 'Embrayage Elite Transmission', handling = {'fClutchChangeRateScaleUpShift'}, add = 1.1, affects = 'Passage au rapport inférieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'elite', state = 'engine_flywheel', item = 'elite_flywheel', label = 'Volant d\'inertie Elite', handling = {'fClutchChangeRateScaleDownShift'}, add = 1.03, affects = 'Passage au niveau supérieur', mod = {index = 13, add = 1}, cost = 25000}, {category = 'elite', state = 'engine_camshaft', item = 'elite_camshaft', label = 'Arbre à cames Elite',stat = {duration = 6.3, compression = 2.0, fuelpressure = -2.0, ignition = 2.0}, handling = {'fInitialDriveMaxFlatVel'}, add = 1.05, affects = 'Vitesse maximale', mod = {index = 11, add = 1}, cost = 25000}, {category = 'elite', state = 'oem_brakes', item = 'elite_brakes', label = 'Freins d\'élite', handling = {'fBrakeForce','fHandBrakeForce'}, add = 2.4, affects = 'Brake Power', mod = {index = 12, add = 3}, cost = 25000}, {category = 'elite', state = 'oem_suspension', item = 'elite_suspension', label = 'Suspension d\'élite', handling = {'fSuspensionForce','fSuspensionCompDamp','fSuspensionReboundDamp','fSuspensionUpperLimit','fSuspensionLowerLimit','fSuspensionRaise','fSuspensionBiasFront','fAntiRollBarForce','fAntiRollBarBiasFront','fRollCentreHeightFront','fRollCentreHeightRear'}, add = 1.1, affects = 'Suspension', mod = {index = 15, add = 4}, cost = 25000}, {category = 'elite', state = 'oem_gearbox', item = 'elite_gearbox', label = 'Boîte de vitesses Elite', handling = {'nInitialDriveGears','fDriveInertia','fClutchChangeRateScaleUpShift','fClutchChangeRateScaleDownShift'}, add = 1.1, affects = 'Acceleration', mod = {index = 13, add = 1}, cost = 25000}, }
config.upgraderequire = { -- crafting required category for each parts variants --- @category = required category of parts to craft the current parts, @chance = chances of success ['elite'] = {category = 'oem', chance = 90}, -- ex. elite parts need x5 OEM ['pro'] = {category = 'elite', chance = 70}, ['racing'] = {category = 'pro', chance = 50}, ['ultimate'] = {category = 'racing', chance = 20}, }
-- Hardcoded Function for materials required for each variants -- turbo, engineswap, nitro requires Latest renzu_turbo, renzu_engine, renzu_nitro GetEngineLocals = function() local engines = {} if GetResourceState('renzu_engine') == 'started' then local local_engines = exports.renzu_engine:Engines().Locals for k,v in pairs(local_engines) do if v.model then table.insert(engines,{label = v.name, name = v.model, requires = {steel = 5,aluminum = 5,iron = 5, copper = 5}}) -- requirements for Local Engines Crafting end end end return engines end
GetEngineCustoms = function() local engines = {} if GetResourceState('renzu_engine') == 'started' then local custom_engines = exports.renzu_engine:Engines().Custom for k,v in pairs(custom_engines) do table.insert(engines,{label = v.label, name = v.soundname, requires = {steel = 25,aluminum = 25,iron = 25, copper = 25}}) -- requirements for Custom Engines Crafting end end return engines end
GetRecentOptions = function(type,state) for k,v in pairs(config.engineupgrades) do if v.category == config.upgraderequire[type].category and v.state == state then return v.item, config.upgraderequire[type].chance end end end
GetCraftableParts = function() local parts = {} for k,v in pairs(config.engineparts) do table.insert(parts,{label = v.label, name = v.item, requires = {steel = 5,aluminum = 5,iron = 5, copper = 5}}) -- requirements for OEM Parts Crafting end return parts end
GetCraftableUpgradeParts = function(type) local parts = {} for k,v in pairs(config.engineupgrades) do if type == v.category then local item, chance = GetRecentOptions(v.category,v.state) local require = {steel = 10,aluminum = 10,iron = 10, copper = 10} if item then require = {[item] = 5, steel = 10,aluminum = 10,} -- requirements for Upgrade Parts Crafting .. the [item] variable is the recent category ex. racing_pistons requires 5x of pro_pistons end table.insert(parts,{label = v.label, name = v.item, state = v.state, requires = require, chance = chance, type = 'upgrade'}) end end return parts end
config.crafting = { -- crafting config and requires item ['engine'] = { label = 'Crée moteur', coord = vector3(-340.32, -141.09, 39.01), categories = { [1] = { items = GetEngineLocals(), label = 'Moteurs locaux', }, [2] = { items = GetEngineCustoms(), label = 'Moteurs sur mesure', }, } }, ['parts'] = { label = 'Pièces détachées pour moteurs', coord = vector3(-342.0, -140.67, 39.01), categories = { [1] = {items = GetCraftableParts(), label = 'Pièces Oem'}, [2] = {items = GetCraftableUpgradeParts('elite'), label = 'Pièces d\'élite'}, [3] = {items = GetCraftableUpgradeParts('pro'), label = 'Pièces détachées'}, [4] = {items = GetCraftableUpgradeParts('racing'), label = 'Pièces de rechange'}, [5] = {items = GetCraftableUpgradeParts('ultimate'), label = 'Pièces ultimes'}, } }, ['etc'] = { label = 'Craft Turbo, pneus et pièces de rechange', coord = vector3(-344.0, -139.94, 39.01), categories = { [1] = { items = { [1] = {name = 'turbostreet', label = 'Street Turbo', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [2] = {name = 'turbosports', label = 'Sports Turbo', requires = {steel = 20,aluminum = 20,iron = 20, copper = 20}}, [3] = {name = 'turboracing', label = 'Racing Turbo', requires = {steel = 40,aluminum = 40,iron = 40, copper = 40}}, [4] = {name = 'turboultimate', label = 'Ultimate Turbo', requires = {steel = 40,aluminum = 40,iron = 40, copper = 40}}, }, label = 'Turbos sur mesure', }, [2] = { items = { [1] = {name = 'street_tires', label = 'Pneus de route', requires = {rubber = 10, sulfur = 10,steel = 10, polyester = 10}}, [2] = {name = 'sports_tires', label = 'Pneus de sport', requires = {rubber = 20, sulfur = 20,steel = 20, polyester = 20}}, [3] = {name = 'racing_tires', label = 'Pneus de course', requires = {rubber = 40, sulfur = 40,steel = 40, polyester = 40}}, }, label = 'Pneus sur mesure', }, [3] = { items = { [1] = { label = 'Différentiel à glissement limité (avant)', name = 'lsdf' ,requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [2] = { label = 'Différentiel à glissement limité (arrière)', name = 'lsdr', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [3] = { label = 'Système de contrôle de la traction', name = 'tcs', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [4] = { label = 'Système de contrôle de la stabilité', name = 'esc', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [5] = { label = 'Rapports de démultiplication', name = 'closerationgears', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [6] = { label = 'Transmission CVT', name = 'cvttranny', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [7] = { label = 'Freinage antiblocage', name = 'abs', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [8] = { label = 'Torsion de \'essieu (avant)', name = 'axletorsionfront', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [9] = { label = 'Torsion de l\'essieu (arrière)', name = 'axletorsionrear', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [10] = { label = 'Essieu solide (avant)', name = 'axlesolidfront', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [11] = { label = 'Essieu solide (arrière)', name = 'axlesolidrear', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [12] = { label = 'Système de récupération de l\'énergie cinétique (KERS)', name = 'kers', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [13] = { label = 'Offroad Tune 1', name = 'offroadtune1', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [14] = { label = 'Offroad Tune 2', name = 'offroadtune2', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [15] = { label = 'Stanced', name = 'stanced', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [16] = { label = 'Traction avant', name = 'frontwheeldrive', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [17] = { label = 'Traction arrière', name = 'rearwheeldrive', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [18] = { label = 'Toutes roues motrices', name = 'allwheeldrive', requires = {steel = 10,aluminum = 10,iron = 10, copper = 10}}, [19] = { label = 'ECU programmable', name = 'ecu', requires = {chip = 1,board = 1,copper = 10, steel = 10}},
},
label = 'Advanced Parts'
},
[4] = {
items = {
[1] = {name = 'nitro50shot', label = 'Nitros à 50 coups', requires = {bottle = 1, methane = 10,steel = 10, water = 1}},
[2] = {name = 'nitro100shot', label = 'Nitros à 100 coups', requires = {bottle = 2, methane = 20,steel = 20, water = 20}},
[3] = {name = 'nitro200shot', label = 'Nitros à 200 coups', requires = {bottle = 3, methane = 40,steel = 40, water = 40}},
},
label = 'NOS',
},
}
},
}
config.degrade = { -- degrade value when specific mileage value is reach [1] = { min = 50000, degrade = 0.9}, [2] = { min = 20000, degrade = 0.8}, [3] = { min = 10000, degrade = 0.75}, [4] = { min = 5000, degrade = 0.65}, [5] = { min = 3000, degrade = 0.55}, [6] = { min = 2000, degrade = 0.45}, [7] = { min = 1500, degrade = 0.35}, [8] = { min = 1000, degrade = 0.25}, [9] = { min = 500, degrade = 0.15}, [10] = { min = 100, degrade = 0.11}, [11] = { min = 1, degrade = 0.01}, }
config.tires = { -- tires handling @item = item name, @degrade = degrade percent for each MS tick. [1] = {label = 'Pneus de route', item = 'street_tires', degrade = 0.01, handling = {fLowSpeedTractionLossMult = 1.1,fTractionLossMult = 1.1,fTractionCurveMin = 1.2, fTractionCurveMax = 1.0, fTractionCurveLateral = 1.25}, cost = 25000}, [2] = {label = 'Pneus de sport', item = 'sports_tires', degrade = 0.02, handling = {fLowSpeedTractionLossMult = 0.9,fTractionLossMult = 0.9,fTractionCurveMin = 1.1, fTractionCurveMax = 1.1, fTractionCurveLateral = 1.0}, cost = 25000}, [3] = {label = 'Pneus de course', item = 'racing_tires', degrade = 0.03, handling = {fLowSpeedTractionLossMult = 0.65,fTractionLossMult = 0.7,fTractionCurveMin = 1.25, fTractionCurveMax = 1.35, fTractionCurveLateral = 0.7}, cost = 25000}, [4] = {label = 'Pneus de traînée', item = 'drag_tires', degrade = 0.1, handling = {fLowSpeedTractionLossMult = 0.7,fTractionLossMult = 2.1,fTractionCurveMin = 1.91, fTractionCurveMax = 0.4, fTractionCurveLateral = 1.4}, cost = 25000}, [5] = {label = 'Pneus de dérive', item = 'drift_tires', degrade = 0.2, handling = {fLowSpeedTractionLossMult = 1.0,fTractionLossMult = 1.0,fTractionCurveMin = 1.0, fTractionCurveMax = 1.0, fTractionCurveLateral = 1.0}, cost = 25000},
}
config.drivetrain = { [1] = { label = 'FWD', item = 'frontwheeldrive', value = 1.0, cost = 25000 }, [2] = { label = 'AWD', item = 'allwheeldrive', value = 0.5, cost = 25000 }, [3] = { label = 'RWD', item = 'rearwheeldrive', value = 0.0, cost = 25000 } }
config.extras = { -- do not change unless you know how vehicle flags works for this resource [1] = { label = 'Différentiel à glissement limité (avant)', item = 'lsdf' ,handling = {type = 'CCarHandlingData', name = 'strAdvancedFlags', value = {0,3}}, cost = 25000}, [2] = { label = 'Différentiel à glissement limité (arrière)', item = 'lsdr', handling = {type = 'CCarHandlingData', name = 'strAdvancedFlags', value = {1,4}}, cost = 25000}, [3] = { label = 'Système de contrôle de la traction', item = 'tcs', handling = {type = 'CCarHandlingData', name = 'strAdvancedFlags', value = {13}}, cost = 25000}, [4] = { label = 'Système de contrôle de la stabilité', item = 'esc', handling = {type = 'CCarHandlingData', name = 'strAdvancedFlags', value = {14}}, cost = 25000}, [5] = { label = 'Rapports de démultiplication', item = 'closerationgears', handling = {type = 'CCarHandlingData', name = 'strAdvancedFlags', value = {21}}, cost = 25000}, [6] = { label = 'Transmission CVT', item = 'cvttranny', handling = {type = 'CHandlingData', name = 'strHandlingFlags', value = {12}}, cost = 25000}, [7] = { label = 'Freinage antiblocage', item = 'abs', handling = {type = 'CHandlingData', name = 'strModelFlags', value = {4}}, cost = 25000}, [8] = { label = 'Torsion de l\'essieu (avant)', item = 'axletorsionfront', handling = {type = 'CHandlingData', name = 'strModelFlags', value = {16}}, cost = 25000}, [9] = { label = 'Torsion de l\'essieu (arrière)', item = 'axletorsionrear', handling = {type = 'CHandlingData', name = 'strModelFlags', value = {20}}, cost = 25000}, [10] = { label = 'Essieu solide (avant)', item = 'axlesolidfront', handling = {type = 'CHandlingData', name = 'strModelFlags', value = {17}}, cost = 25000}, [11] = { label = 'Essieu solide (arrière)', item = 'axlesolidrear', handling = {type = 'CHandlingData', name = 'strModelFlags', value = {21}}, cost = 25000}, [12] = { label = 'Système de récupération de l\'énergie cinétique (KERS)', item = 'kers', handling = {type = 'CHandlingData', name = 'strHandlingFlags', value = {2}}, cost = 25000}, [13] = { label = 'Offroad Tune 1', item = 'offroadtune1', handling = {type = 'CHandlingData', name = 'strHandlingFlags', value = {20}}, cost = 25000}, [14] = { label = 'Offroad Tune 2', item = 'offroadtune2', handling = {type = 'CHandlingData', name = 'strHandlingFlags', value = {21}}, cost = 25000}, [15] = { label = 'Stanced', item = 'stanced', handling = {type = 'CCarHandlingData', name = 'strAdvancedFlags', value = {15,26}}, cost = 25000},
}
config.gears = { -- hugo simones config data. gear 8 are corrected due to probably changes from newer builds ( 2699 tested ), gear 9 untested [1] = {0.90},--1 [2] = {3.33, 0.90},--2 [3] = {3.33, 1.57, 0.90},--3 [4] = {3.33, 1.83, 1.22, 0.90},--4 [5] = {3.33, 1.92, 1.36, 1.05, 0.90},--5 [6] = {3.33, 1.95, 1.39, 1.09, 0.95, 0.90},--6 [7] = {4.00, 2.34, 1.67, 1.31, 1.14, 1.08, 0.90},--7 [8] = {4.025, 2.025, 1.523, 1.314, 1.154, 1.073, 1.0, 0.90},--8 [9] = {7.70, 4.51, 3.22, 2.52, 2.20, 2.08, 1.73, 1.31, 0.90}--9 }
config.tunableRPM = { [1] = 1.0, [2] = 0.9, [3] = 0.8, [4] = 0.7, [5] = 0.6, [6] = 0.5, [7] = 0.4, [8] = 0.3, [9] = 0.2, [10] = 0.1, }
config.radialoptions = { { id = 'Upgrades', label = 'Améliorations', icon = 'wrench', onSelect = function() return UpgradePackage() end }, { id = 'Repair', label = 'Réparation', icon = 'hammer', onSelect = function() return Repair() end }, { id = 'tuning', label = 'Tuning', icon = 'chart-bar', onSelect = function() return TuningMenu() end }, { id = 'parts', label = 'Pièces de moteur', icon = 'cog', onSelect = function() return CheckVehicle(true) end }, { id = 'performance', label = 'Performance', icon = 'chart-line', onSelect = function() return CheckPerformance(true) end }, { id = 'seetires', label = 'Voir Pneus', icon = 'car', onSelect = function() return CheckWheels(true) end }, }
config.drift_handlings = { {'fInitialDriveMaxFlatVel',380.000000}, -- {'fDriveInertia', 3.000000}, -- {'fInitialDriveForce', 2.200000}, {'fMass', 700.000000}, {'fInitialDragCoeff',0.500000}, {'fPercentSubmerged',85.000000}, {'vecCentreOfMassOffset', vector3(0.000000,-0.100000,-0.100000)}, {'vecInertiaMultiplier', vector3(1.200000,1.400000,2.000000)}, {'fDriveBiasFront',0.000000}, {'fClutchChangeRateScaleUpShift',51.300000}, {'fClutchChangeRateScaleDownShift',51.300000}, --{'fInitialDriveMaxFlatVel',380.000000}, {'fSteeringLock',55.000000}, {'fTractionCurveMax',1.040000,0.840000}, {'fTractionCurveMin',1.200000,1.400000}, {'fTractionCurveLateral',45.500000}, {'fTractionSpringDeltaMax',0.110000}, {'fLowSpeedTractionLossMult',0.200000}, {'fCamberStiffnesss',0.000000}, {'fTractionBiasFront',0.420000}, {'fTractionLossMult',0.950000}, {'fSuspensionForce',2.200000}, {'fSuspensionCompDamp',2.200000}, {'fSuspensionReboundDamp',2.100000}, {'fSuspensionUpperLimit',0.030000}, {'fSuspensionLowerLimit',-0.030000}, {'fSuspensionRaise',-0.000000}, {'fSuspensionBiasFront',0.550000}, {'fAntiRollBarForce',0.800000}, {'fAntiRollBarBiasFront',0.430000}, {'fRollCentreHeightFront',0.150000}, {'fRollCentreHeightRear',0.150000}, }
function import(file) local name = ('%s.lua'):format(file) local content = LoadResourceFile(GetCurrentResourceName(),name) local f, err = load(content) return f() end
-- customs items from other resource config.customItems = { [1] = {item = 'turbostreet', cost = 25000}, [2] = {item = 'turbosports', cost = 25000}, [3] = {item = 'turboracing', cost = 25000}, [4] = {item = 'nitro50shot', cost = 25000}, [5] = {item = 'nitro100shot', cost = 25000}, [6] = {item = 'nitro200shot', cost = 25000}, }
itemsData = {} for k,v in pairs(config.engineparts) do table.insert(itemsData,v) end for k,v in pairs(config.engineupgrades) do table.insert(itemsData,v) end for k,v in pairs(config.tires) do table.insert(itemsData,v) end for k,v in pairs(config.drivetrain) do table.insert(itemsData,v) end for k,v in pairs(config.extras) do table.insert(itemsData,v) end for k,v in pairs(config.customItems) do table.insert(itemsData,v) end table.insert(itemsData,{item = 'ecu', cost = 25000}) config.developertune = { [1] = { label = 'Attributs physiques', icon = 'wrench', description = 'Ces sept valeurs représentent les proportions physiques des véhicules dans le jeu :', type = 'PhysicalAttributes', handlingname = 'CHandlingData', attributes = { { type = "input", label = "fMass", default = 1.0, description = 'Il s\'agit du poids du véhicule en kilogrammes.'}, { type = "input", label = "fInitialDragCoeff", default = 1.0, description = ' Augmenter pour simuler la traînée aérodynamique.'}, { type = "input", label = "fDownForceModifier", default = 1.0, description = ' Augmentez cette valeur pour accroître l\'adhérence à grande vitesse.'}, { type = "input", label = "fPopUpLightRotation", default = 1.0, description = 'Remplace le comportement de l\'os light_cover pour lui permettre de pivoter jusqu\'à l\'angle spécifié.'}, { type = "input", label = "fPercentSubmerged", default = 1.0, description = 'Pourcentage de la hauteur du véhicule dans l\'eau avant que le véhicule ne "flotte". '}, { type = "textarea", label = "vecCentreOfMassOffset", default = 1.0, description = 'Cette valeur déplace le centre de gravité en mètres d\'un côté à l\'autre. '}, { type = "textarea", label = "vecInertiaMultiplier", default = 1.0, description = ''},
}
},
[2] = {
label = 'Attributs de la transmission',
icon = 'wrench',
description = 'Ces valeurs décrivent les performances du véhicule en ligne droite.',
type = 'Transmission',
handlingname = 'CHandlingData',
attributes = {
{ type = "input", label = "fDriveBiasFront", default = 1.0, description = 'Cette valeur est utilisée pour déterminer si un véhicule est à traction avant, arrière ou à quatre roues motrices.'},
{ type = "number", label = "nInitialDriveGears", default = 1.0, description = 'Nombre de vitesses d\'avance qu\'une transmission contient.'},
{ type = "input", label = "fInitialDriveForce", default = 1.0, description = 'Cette valeur indique la force motrice de la voiture, au niveau des roues.'},
{ type = "input", label = "fDriveInertia", default = 1.0, description = 'Décrit la vitesse de rotation d\'un moteur.'},
{ type = "input", label = "fClutchChangeRateScaleUpShift", default = 1.0, description = 'Multiplicateur de la vitesse d\'embrayage pour les changements de vitesse, un nombre plus élevé = changements de vitesse plus rapides.'},
{ type = "input", label = "fClutchChangeRateScaleDownShift", default = 1.0, description = 'Multiplicateur de la vitesse de l\'embrayage lors des rétrogradations, un nombre plus élevé = des rétrogradations plus rapides.'},
{ type = "input", label = "fInitialDriveMaxFlatVel", default = 1.0, description = 'Détermine la vitesse à la ligne rouge en vitesse supérieure ; contrôle l\'entraînement final de la boîte de vitesses du véhicule.'},
{ type = "input", label = "fBrakeForce", default = 1.0, description = 'Multiplie le calcul de décélération des jeux. Plus le nombre est grand, plus le freinage est fort.'},
{ type = "input", label = "fBrakeBiasFront", default = 1.0, description = 'Il contrôle la répartition de la force de freinage entre les essieux avant et arrière..'},
{ type = "input", label = "fHandBrakeForce", default = 1.0, description = 'Puissance de freinage du frein à main. Plus le chiffre est élevé, plus le freinage est puissant.'},
{ type = "input", label = "fSteeringLock", default = 1.0, description = 'Cette valeur est un multiplicateur du calcul par le jeu de l\'angle de rotation d\'une roue directrice en plein virage.'},
}
},
[3] = {
label = 'Attributs de la traction des roues',
icon = 'wrench',
description = 'Les attributs suivants décrivent le comportement dynamique du véhicule, de la négociation des virages à l\'accélération et à la décélération.',
type = 'Transmission',
handlingname = 'CHandlingData',
attributes = {
{ type = "input", label = "fTractionCurveMax", default = 1.0, description = 'L\'adhérence du véhicule dans les virages est un multiplicateur du frottement de la surface du pneu.'},
{ type = "input", label = "fTractionCurveMin", default = 1.0, description = 'L\'adhérence du véhicule à l\'accélération et au freinage est un multiplicateur du frottement de la surface du pneu. '},
{ type = "input", label = "fTractionCurveLateral", default = 1.0, description = 'Forme de la courbe de traction latérale (position du pic de traction en degrés). Des valeurs plus faibles rendent l\'adhérence du véhicule plus réactive mais moins tolérante à la perte d\'adhérence.'},
{ type = "input", label = "fTractionSpringDeltaMax", default = 1.0, description = 'Distance maximale de déplacement des parois latérales. Unité : mètre. Une force tire le véhicule dans la direction opposée au déplacement latéral.'},
{ type = "input", label = "fLowSpeedTractionLossMult", default = 1.0, description = 'Le degré de réduction de l\'adhérence à basse vitesse, 0,0 signifie une adhérence normale. Cela affecte principalement l\'épuisement de la voiture. '},
{ type = "input", label = "fCamberStiffnesss", default = 1.0, description = 'Le degré de poussée du véhicule dans le sens du roulis. Le carrossage de la route affecte également le roulis et les forces appliquées.'},
{ type = "input", label = "fTractionBiasFront", default = 1.0, description = 'Détermine la répartition de la traction de l\'avant vers l\'arrière.'},
{ type = "input", label = "fTractionLossMult", default = 1.0, description = 'Dans quelle mesure la traction est-elle affectée par les différences d\'adhérence des matériaux par rapport à la version 1.0 ? En fait, il s\'agit de savoir dans quelle mesure l\'adhérence est modifiée lorsque l\'on conduit sur l\'asphalte et la boue.'},
}
},
[4] = {
label = 'Attributs de la suspension',
type = 'suspension',
icon = 'car',
description = 'Réglage de la suspension de votre véhicule',
handlingname = 'CHandlingData',
attributes = {
{ type = "input", label = "fSuspensionForce", default = 1.0, description = ' Affecte la solidité de la suspension. Peut être utile si la voiture se renverse facilement dans les virages.'},
{ type = "input", label = "fSuspensionCompDamp", default = 1.0, description = 'Amortissement lors de la compression de la jambe de force. Plus grand = plus rigide.'},
{ type = "input", label = "fSuspensionReboundDamp", default = 1.0, description = 'Amortissement lors de la détente de la jambe de force. Plus grand = plus rigide'},
{ type = "input", label = "fSuspensionUpperLimit", default = 1.0, description = 'Limite visuelle... jusqu\'où les roues peuvent-elles se déplacer vers le haut ou vers le bas par rapport à leur position d\'origine ?'},
{ type = "input", label = "fSuspensionLowerLimit", default = 1.0, description = 'Limite visuelle... jusqu\'où les roues peuvent-elles se déplacer vers le haut ou vers le bas par rapport à leur position d\'origine ?'},
{ type = "input", label = "fSuspensionRaise", default = 1.0, description = 'La quantité de suspension qui soulève le corps des roues.'},
{ type = "input", label = "fSuspensionBiasFront", default = 1.0, description = 'Échelle d\'amortissement des forces avant/arrière.'},
{ type = "input", label = "fAntiRollBarForce", default = 1.0, description = 'La constante du ressort qui est transmise à la roue opposée lorsqu\'elle est soumise à une compression - des nombres plus élevés correspondent à une force plus importante. Plus les chiffres sont élevés, moins il y a de roulis.'},
{ type = "input", label = "fAntiRollBarBiasFront", default = 1.0, description = 'La répartition entre l\'avant et l\'arrière de la barre antiroulis (0 à l\'avant, 1 à l\'arrière)'},
{ type = "input", label = "fRollCentreHeightFront", default = 1.0, description = 'Hauteur du centre de roulis de l\'essieu avant, à partir du bas du modèle (route), en mètres.'},
{ type = "input", label = "fRollCentreHeightRear", default = 1.0, description = 'Hauteur du centre de roulis de l\'essieu arrière, à partir de la base du modèle (route), en mètres..'},
}
},
[5] = {
label = 'Attributs des dommages',
type = 'Damage',
icon = 'car',
description = 'Les attributs suivants déterminent la manière dont le véhicule réagit aux effets dommageables.',
handlingname = 'CHandlingData',
attributes = {
{ type = "input", label = "fCollisionDamageMult", default = 1.0, description = 'Multiplie le calcul des dommages subis par le véhicule lors d\'une collision, provoquant l\'incendie du réservoir d\'essence et des roues.'},
{ type = "input", label = "fWeaponDamageMult", default = 1.0, description = 'Multiplie le calcul des dégâts infligés au véhicule par les armes.'},
{ type = "input", label = "fDeformationDamageMult", default = 1.0, description = 'Multiplie le calcul des jeux de dommages causant des déformations.'},
{ type = "input", label = "fEngineDamageMult", default = 1.0, description = 'Multiplie le calcul des jeux de dommages au moteur, provoquant une explosion ou une panne du moteur.'},
{ type = "input", label = "fPetrolTankVolume", default = 1.0, description = 'Quantité d\'essence qui fuira après avoir tiré sur le réservoir d\'essence du véhicule. Également utilisé par certains scripts de consommation de carburant..'},
{ type = "input", label = "fOilVolume", default = 1.0, description = 'Temps de fumée noire avant que le moteur ne s\'éteigne ?'},
{ type = "input", label = "fPetrolConsumptionRate", default = 1.0, description = ''},
}
},
[6] = {
label = 'Drapeaux de véhicules',
type = 'Flags',
icon = 'car',
description = 'CHandlingData Flags',
handlingname = 'CHandlingData',
attributes = {
{ type = "number", label = "strModelFlags", default = 1.0, description = 'Affecte les fonctions liées au modèle.'},
{ type = "number", label = "strHandlingFlags", default = 1.0, description = 'Affecte les fonctions liées à la manutention.'},
{ type = "number", label = "strDamageFlags", default = 1.0, description = 'Indique les portes qui sont incassables.'},
}
},
[7] = {
label = 'Données de sous-traitement',
type = 'SubHandlingData',
icon = 'car',
description = 'CCarHandlingData Attributes',
handlingname = 'CCarHandlingData',
attributes = {
{ type = "input", label = "fBackEndPopUpCarImpulseMult", default = 1.0, description = '.'},
{ type = "input", label = "fBackEndPopUpBuildingImpulseMult", default = 1.0, description = ''},
{ type = "input", label = "fBackEndPopUpMaxDeltaSpeed", default = 1.0, description = ''},
{ type = "input", label = "fToeFront", default = 1.0, description = 'Règle le pincement des roues avant du véhicule. '},
{ type = "input", label = "fToeRear", default = 1.0, description = 'Règle le pincement des roues arrière du véhicule.'},
{ type = "input", label = "fCamberFront", default = 1.0, description = 'Règle le carrossage des roues avant du véhicule. '},
{ type = "input", label = "fCamberRear", default = 1.0, description = 'Règle le carrossage des roues arrière du véhicule.'},
{ type = "input", label = "fCastor", default = 1.0, description = 'Règle l\'angle de chasse du véhicule.'},
{ type = "input", label = "fEngineResistance", default = 1.0, description = 'Ajusté par plusieurs véhicules depuis l\'ajout de ce paramètre, il n\'y a cependant pas d\'effets connus ou observés..'},
{ type = "input", label = "fMaxDriveBiasTransfer", default = 1.0, description = 'Transfère la force motrice des roues qui patinent aux roues moins entraînées. Affecte les différentiels'},
{ type = "input", label = "fJumpForceScale", default = 1.0, description = 'Ajuste la force avec laquelle les véhicules dotés d\'un saut sont boostés. Plus la valeur est élevée, plus le saut est important.'},
{ type = "input", label = "fIncreasedRammingForceScale", default = 1.0, description = 'Augmentation de la force d\'éperonnage.'},
{ type = "number", label = "strAdvancedFlags", default = 1.0, description = 'Drapeaux avancés pour voitures. Ces drapeaux sont tristement célèbres parce que leur application originale a des effets négatifs sur certains véhicules.'},
}
},
} if config.sandboxmode then config.tuningorig = config.tuningmenu config.tuningmenu = config.developertune end
so to activate the crafting of items you have to put the objects from your install file but it will be long because they are not the same as my item.lua file in my qbcore shared
its the same format for qbcore items.
and
config.purchasableUpgrade = false -- dont like crafting / item based? set this to true to use money to all item upgrades config.jobmanagemoney = false -- use job money if purchasableUpgrade. ex. esx_society, qb-management
you need to set this both true, if you want to use job money
it tells me as soon as I activate the option:/ https://prnt.sc/vwOiFRCyXqW2
its mean you dont have the item,
can you make a clip?
this is well tested in qbcore using qbinventory.
Yes
https://streamable.com/3qm2f6 this is what happens when I activate the config.jobmanagemoney option
that means, you dont have money from Job Society. if qb-core its qb-management.
or your current job is not listed in the config.jobs
if do you want job upgrades. you should enable this config.purchasableUpgrade and config.jobmanagemoney set both to true
check your jobs if its correct here. config.jobs check if your job management have a money.
ok ill try
news error : https://prnt.sc/Tw5yBdMPoj0D and on live console https://prnt.sc/-8TRCKTciJBG
its seems your issue is not updating the resource,
this issue has been fixed few days ago if i remember correctly
However, I seem to have the new version
i will upload new version
If I understand correctly I can't activate these 3 options? config.enablecrafting = true -- crafting for items and parts,turbo, engine etc.. config.purchasableUpgrade = true -- dont like crafting / item based? set this to true to use money to all item upgrades config.jobmanagemoney = true -- use job money if purchasableUpgrade. ex. esx_society, qb-management
and i have news error on disable enablecrafting : https://prnt.sc/4YdWf8MbHBcu however i updated it
try the latest commit
hello again news error on start renzu_tuners after download latest version : https://prnt.sc/4iKjMPdem4BB
ok no problem solved on that one it's just that I updated OX_LIB and it didn't pass I put back the old version and 0 problem
it's good it works more than adding the items 1 by 1 for crafting
Hello I am under QB-CORE all works niquel except that when I activate the buy option in the config.lua it tells me that I have no money, or when I activate for crafted impossible nothing is displayed therefore obliged to leave all free and all works well