Configuration

Every aspect of the script can be configured in shared/config.lua.

Config = {
    Lang = "en",
    System = {
        CheckForNewVersion = true,                  -- Check for new script versions?
        Debug = false,                              -- Enable debug messages
        LogToDiscord = false,                        -- Send logs to Discord? true or false
        DiscordWebhookLink = "", -- Insert your webhook
        DiscordColor = 16711680,                    -- Set the color for the Discord logs
    },
    UseTarget = false,                              -- 'qb-target' or false
    controlButton = 38,                             -- 38 = E (https://docs.fivem.net/docs/game-references/controls/)

    driver_license = "driver_license",              -- The item name for the driverslicense
    useItem = false,                                -- Use the driver license item instead of metadata?
                                                    -- If set to true, the player will get the physical item mentioned in driver_license
                                                    -- If set to false, the metadata will be edited and the player can go get their driverslicense at the townhall

    theoryQuestionsNeeded = 10,                     -- Amount of theory questions the player gets
    theoryPassPercentage = 70,                      -- Percentage needed to pass the theory test
    theoryTimeout = 10,                             -- Define the minutes a player has to complete the theory test, set this to 0 to disable the timer
    theoryCosts = 150,                              -- The amount of theory costs
    practicalCosts = 1000,                          -- The amount of practical exam costs
    practicalTimeout = 10,                          -- Define the minutes a player has to complete the practical exam, set this to 0 to disable the timer
    maxVehDamage = 30,                              -- Max allowed vehicle damage (in percent) before the exam fails
    fuelForExam = 100.0,                            -- How much fuel should the practical exam vehicle get?

    DrivingSchools = {                              -- Build your driving schools here
        [1] = {
            active = true,
            coords = vector3(215.95, -1388.59, 30.59), -- School and ped coordinates
            vehSpawn = vector3(216.27, -1381.2, 30.19), -- Spawn and drop off location
            vehHeading = 269.08,                    -- Heading for the vehicle
            distanceToSpawn = 10,                   -- Increase this number if vehSpawn is further away from coords (this will prevent the exam to fail while walking to the vehicle)
            vehicles = {                            -- List of vehicles to spawn (1 random will be selected)
                "primo",
            },
            showBlip = true,                        -- Show blip for this school?
            showPed = true,                         -- Show ped for this school?
            pedModel = `a_m_m_eastsa_02`,           -- Ped model
            scenario = "WORLD_HUMAN_CLIPBOARD",     -- https://gtaforums.com/topic/796181-list-of-scenarios-for-peds/
            pedHeading = 280.31,
            blipData = {
                sprite = 225,
                display = 4,
                scale = 0.65,
                colour = 3,
                title = "Driving School"
            },
            zoneOptions = {                         -- Used for when UseTarget is false
                length = 3.0,
                width = 3.0,
            },

            practicalRoutes = {
                [1] = {
                    vector3(228.32, -1392.72, 30.14),
                    vector3(221.65, -1405.75, 29.23),
                    vector3(178.38, -1401.94, 28.97),
                    vector3(113.72, -1365.42, 28.97),
                    vector3(-74.21, -1364.56, 29.03),
                    vector3(-210.69, -1413.29, 30.89),
                    vector3(-355.81, -1419.9, 28.95),
                    vector3(777.53, -1245.82, 26.29),
                    vector3(789.6, -1416.25, 26.81),
                    vector3(815.83, -1724.1, 28.87),
                    vector3(768.21, -2039.09, 28.88),
                    vector3(913.76, -2088.81, 30.11),
                    vector3(896.68, -2443.07, 28.09),
                    vector3(777.4, -2444.25, 19.89),
                    vector3(782.75, -2090.22, 28.89),
                    vector3(495.73, -2039.45, 25.24),
                    vector3(380.86, -1934.64, 24.2),
                    vector3(458.06, -1840.89, 27.57),
                    vector3(512.79, -1712.66, 28.9),
                    vector3(488.44, -1648.08, 29.04),
                    vector3(346.68, -1529.02, 28.96),
                },
            },
        },
    },

    theoryTestQuestions = {
        { question = "What does a yellow traffic light indicate?", options = {"Stop", "Slow down", "Go faster"}, correctAnswer = 2, image = "images/1.png" },
        { question = "What does a roundabout sign mean?", options = {"Slow down and proceed with caution", "Stop and give way", "No entry"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a red traffic light indicate?", options = {"Go", "Slow down", "Stop"}, correctAnswer = 3, image = "images/3.png" },
        { question = "What does a green traffic light indicate?", options = {"Stop", "Slow down", "Go"}, correctAnswer = 3, image = "images/4.png" },
        { question = "What does a blue traffic light indicate?", options = {"Stop", "Slow down", "Proceed with caution"}, correctAnswer = 3, image = "images/placeholder.png" },
        { question = "What does a yield sign mean?", options = {"Stop and give way", "Slow down", "Go faster"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What should you do when approaching a stop sign?", options = {"Go faster", "Slow down and stop", "Ignore it"}, correctAnswer = 2, image = "images/7.png" },
        { question = "What does a 'no parking' sign mean?", options = {"Park anywhere", "Park only on weekdays", "Do not park here"}, correctAnswer = 3, image = "images/placeholder.png" },
        { question = "What does a 'no entry' sign mean?", options = {"Enter freely", "Do not enter", "Stop and wait"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'keep right' sign mean?", options = {"Keep left", "Keep right", "Stop and give way"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no overtaking' sign mean?", options = {"You can overtake", "Do not overtake", "Proceed with caution"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'one way' sign mean?", options = {"You can drive in both directions", "Drive in one direction only", "Stop and give way"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'pedestrian crossing' sign mean?", options = {"Pedestrians not allowed", "Pedestrians allowed to cross", "Drive faster"}, correctAnswer = 2, image = "images/13.png" },
        { question = "What does a 'school zone' sign mean?", options = {"Drive slowly", "School ahead", "Drive faster"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'slippery road' sign mean?", options = {"Drive slowly", "Road ahead is slippery", "No overtaking"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'railroad crossing' sign mean?", options = {"Railroad ahead", "Do not cross the railroad", "Slow down and look for trains"}, correctAnswer = 3, image = "images/placeholder.png" },
        { question = "What does a 'bicycle lane' sign mean?", options = {"You can park here", "Bicycle lane ahead", "Do not park here"}, correctAnswer = 3, image = "images/placeholder.png" },
        { question = "What does a 'bus lane' sign mean?", options = {"You can drive here", "Bus lane ahead", "Do not drive here"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'merge' sign mean?", options = {"Merge with other traffic", "Do not merge", "Stop"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'divided road ends' sign mean?", options = {"End of divided road", "Road ahead is divided", "No overtaking"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'road narrows' sign mean?", options = {"Road ahead narrows", "Wide road ahead", "Drive faster"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'curve ahead' sign mean?", options = {"Drive straight", "Curve ahead", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'stop ahead' sign mean?", options = {"Stop ahead", "Slow down", "Drive faster"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'pedestrian crossing ahead' sign mean?", options = {"Drive faster", "Pedestrian crossing ahead", "Do not drive here"}, correctAnswer = 2, image = "images/24.png" },
        { question = "What does a 'school zone ahead' sign mean?", options = {"Drive faster", "School zone ahead", "No parking"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'construction ahead' sign mean?", options = {"Drive faster", "Construction ahead", "No overtaking"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'roadwork ahead' sign mean?", options = {"Roadwork ahead", "Drive faster", "No parking"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'road closed ahead' sign mean?", options = {"Road closed ahead", "Drive faster", "Roadwork ahead"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'no left turn' sign mean?", options = {"Left turn allowed", "No left turn allowed", "Proceed with caution"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no right turn' sign mean?", options = {"Right turn allowed", "No right turn allowed", "Proceed with caution"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'give way' sign mean?", options = {"Give way to other vehicles", "Stop and wait", "Drive faster"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'stop' sign mean?", options = {"Slow down", "Stop and give way", "Drive faster"}, correctAnswer = 2, image = "images/32.png" },
        { question = "What does a 'no stopping' sign mean?", options = {"You can stop here", "Do not stop here", "Stop and give way"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no standing' sign mean?", options = {"You can stand here", "Do not stand here", "Slow down"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no idling' sign mean?", options = {"You can idle here", "Do not idle here", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'speed limit' sign indicate?", options = {"Drive at any speed", "Drive at the indicated speed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'dual carriageway ends' sign mean?", options = {"End of dual carriageway", "Drive faster", "No overtaking"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'keep left' sign mean?", options = {"Keep right", "Keep left", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'roundabout ahead' sign mean?", options = {"Proceed with caution", "Roundabout ahead", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'side road ahead' sign mean?", options = {"Drive straight", "Side road ahead", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 't-junction ahead' sign mean?", options = {"T-junction ahead", "Drive straight", "Drive faster"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'dead end' sign mean?", options = {"Dead end ahead", "Drive straight", "Drive faster"}, correctAnswer = 1, image = "images/placeholder.png" },
        { question = "What does a 'no horn' sign mean?", options = {"Honk freely", "No honking allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no smoking' sign mean?", options = {"Smoking allowed", "No smoking allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no cell phone' sign mean?", options = {"Use cell phone freely", "No cell phone use allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no pets' sign mean?", options = {"Pets allowed", "No pets allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no littering' sign mean?", options = {"Litter freely", "No littering allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no food or drink' sign mean?", options = {"Eat and drink freely", "No food or drink allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no entry for trucks' sign mean?", options = {"Trucks allowed", "No entry for trucks", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no bicycles' sign mean?", options = {"Bicycles allowed", "No bicycles allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no pedestrians' sign mean?", options = {"Pedestrians allowed", "No pedestrians allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no motorcycles' sign mean?", options = {"Motorcycles allowed", "No motorcycles allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no turn around' sign mean?", options = {"Turn around freely", "No turn around allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no parking or standing' sign mean?", options = {"You can park here", "Do not park or stand here", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no hitchhiking' sign mean?", options = {"Hitchhiking allowed", "No hitchhiking allowed", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no parking in this area' sign mean?", options = {"You can park here", "Do not park here", "Drive faster"}, correctAnswer = 2, image = "images/placeholder.png" },
        { question = "What does a 'no U-turn' sign mean?", options = {"You can make a U-turn", "No U-turn allowed", "Proceed with caution"}, correctAnswer = 2, image = "images/placeholder.png" },
    },
}

-- DO NOT TOUCH!
Loc = {}

Last updated