[ZaT-SCRIPTS][QBCore/ESX] FIVEM ADVANCED MINING PC (NOPIXEL 4.0 Inspired )

As a player, you will enjoy a seamless and user-friendly UI.

  • Supports Multilanguage.
  • Fully customizable UI.
  • Works with qb-ps-ox-qs inventories (You can add any inventory you want to)…
  • Fully optimized.
  • You can configure :
    • The framework pseudo (‘qb-core’ and change it ).
    • The App minium reputation.
    • The App are related to Wifi or not.
    • The App price from the AppStore.
    • The minigame prices.
    • The succes rep amount.
    • The Default Background.
    • The Default Theme.
    • The props.
    • The storage size.
    • The generated drone app items.
    • The Drone default locations.
    • Add as many GPUs, CPUs, MBs etc… as you want.
    • Minigame time speed.
    • BUTC currency worth to $
    • ++ AND MUCH MORE…

Code is accessible 80%
Subscription-based No
Lines (approximately) 10k+
Requirements qb-core/es_extended
Support Yes

Config.lua :

Config = {}

Config.Framework        = "qb" -- "qb"
Config.Inventory        = "qb" -- "ps", "qb", "ox", "qs"
Config.Target           = "qb" -- qb
Config.FrameworkPseudo  = 'qb-core'
Config.AreaSize         = 3.0 --  Z is considered aswell.
Config.Img              = 'qb-inventory/html/images/'-- 'qb-inventory/html/images/'




Config.ServerName = 'zat'   -- prefix for usernames
Config.decay = 0.01 -- Decay of the items performance / update time (3 min default 'Config.DataUpdate')

Config.Apps = {
    { name = "AntiVirus",   rep = 40,   wifi =  true,   price = 10, default = false}, 
    { name ="AppStore",     rep = 0,    wifi =  false,  price = 0,  default = true},
    { name ="Binunce",      rep = 0,    wifi =  false,  price = 0,  default = false},
    { name ="SmokeCrack",   rep = 0,    wifi =  false,  price = 15, default = false},
    { name ="Drone",        rep = 50,   wifi =  true,   price = 25, default = false},
    { name ="MinerExt",     rep = 20,   wifi =  false,  price = 10, default = false},
    { name ="Miner",        rep = 0,    wifi =  false,  price = 0,  default = false},
    { name ="Noid",         rep = 30,   wifi =  true,   price = 15, default = false},
    { name ="Notepad",      rep = 0,    wifi =  false,  price = 0,  default = false},
    { name ="Salty",        rep = 0,    wifi =  false,  price = 5,  default = false},
    { name ="Sniff",        rep = 40,   wifi =  true,   price = 10, default = false},
    { name ="Wally",        rep = 0,    wifi =  true,   price = 0,  default = false},
    { name ="Explorer",     rep = 0,    wifi =  false,  price = 0,  default = true},
}

Config.Prices = {
    saltyScan       = 1,
    sniffScan       = 5,
    securityLevel1  = 5,
    securityLevel2  = 15,
    securityLevel3  = 30,
    securityLevel4  = 50,
    securityLevel5  = 150,
}

Config.Rep = {
    SniffSuccess       = 1, -- Adds (1 x hack level) to the rep on success 
    SmokeCrackSuccess  = 1, -- Adds (1 x hack level) to the rep on success
    SniffFail          = 0, -- Removes (0 x hack level)  from the rep on success
    SmokeCrackFail     = 0, -- Removes (0 x hack level) from the rep on success
}

Config.DefaultBackground = 'https://i.postimg.cc/cZFPGD27/painting-mountain-lake-with-mountain-background-188544-9126.avif'

Config.DefaultTheme =   {
    bckDarkBlue     = '#242a34eb', 
    boxshadow       = '#0c0e12',
    npgreen         = '#2fa996',
    backGreen       = '#1e403db0',
    redBack         = '#ff000021',
    redFont         = '#ff0000c6',
    fontWhiteColor  = '#ffffffa1',
    upperBar        = '#131a1d',
    greyBck         = '#ffffff0f',
    whiteBorders    = '#ffffff4a',
    backBlue        = '#1e394c',
    backOrange      = '#3d322ede',
    fontOrangeColor = '#c38853',
}

Config.Items = {
    ["zatpc"]           = {model = 'prop_gaming_table'},
    ["zatminingrack"]   = {model = 'prop_mining_rack'},
    ["zatminingfan"]    = {model = 'prop_mining_fan'},
    ["zatbaskets"]      = {model = 'prop_basket_s'},
    ["zatbasketm"]      = {model = 'prop_basket_m'},
}

Config.Storage = {
    ["zatbaskets"] = 5,
    ["zatbasketm"] = 15,
}

Config.RandomItems = true -- if to choose random items from the Config.Drone items or not
Config.FixedCount  = 0 -- Generate only 3 items from the Config.drone items (0 : randomly)
Config.DroneProp = 'prop_drone'
Config.Drone = {
    [1] = {
        name = 'blueprint',                             -- item name
        label = 'Thermite Blueprint',                    -- label to display      
        price = 5,                                      -- price (BUTC)
        image = "nui://"..Config.Img..'blueprint.png',  -- image.png (same name as in the inventory/html/images)
        info  = { type = 'thermite'},                   -- info or metadata
        amount = 1,
    },  
    [2] = {
        name = 'blueprint',
        label = 'Pistol 50 Blueprint', 
        price = 25,
        image = "nui://"..Config.Img..'blueprint.png',
        info  = { type = 'weapon_pistol50'}, 
        amount = 1,
    },
    [3] = {
        name = 'blueprint',
        label = 'Assault Rifle Blueprint',
        price = 75,
        image = "nui://"..Config.Img..'blueprint.png',
        info  = { type = 'weapon_assaultrifle'},
        amount = 3,
    },
    [4] = {
        name = 'cryptostick',
        label = 'Crypto Stick',
        price = 5,
        image = "nui://"..Config.Img..'cryptostick.png',
        info  = {},
        amount = 5,
    },
}
Config.phone = 'qb-phone' -- for Drone Notification (if you are using another phone change it under (client/Framework/SnedPhonNotification))
Config.DroneLocations = {   -- ADD AS MANY COORDS AS YOU WANT
    [1]     = {coords = vector3(-715.34, -714.47, 29.13)        , busy = false},
    [2]     = {coords = vector3(-1181.55, -751.63, 19.59)       , busy = false},
    [3]     = {coords = vector3(-1320.8, -548.96, 32.14)        , busy = false},
    [4]     = {coords = vector3(-1374.45, -319.9, 39.54)        , busy = false},
    [5]     = {coords = vector3(-1414.89, -938.63, 10.76)       , busy = false},
    [6]     = {coords = vector3(-1537.65, -3214.44, 13.94)      , busy = false},
    [7]     = {coords = vector3(-979.28, -1961.36, 13.19)       , busy = false},
    [8]     = {coords = vector3(-1284.19, -1611.29, 4.1)        , busy = false},
    [9]     = {coords = vector3(-1807.88, -404.4, 44.61)        , busy = false},
    [10]    = {coords = vector3(-2252.65, 378.06, 174.6)        , busy = false},
    [11]    = {coords = vector3(-1102.79, 2726.59, 18.8)        , busy = false},
    [12]    = {coords = vector3(245.64, 3173.59, 42.74)         , busy = false},
    [13]    = {coords = vector3(1311.82, 2986.26, 41.56)        , busy = false},
    [14]    = {coords = vector3(2374.92, 3058.21, 48.15)        , busy = false},
    [15]    = {coords = vector3(2745.88, 2788.74, 35.44)        , busy = false},
}


-- 1 BUTCOIN / 24 Hours
-- 1 BUTCOIN / 1440 Minutes
-- 1 BUTCOIN / 480 x 3 minutes
-- 1/480 = 0.00208 BUTCOIN every 3 minutes 
Config.DataUpdate = 3 -- 3 minutes (keep it more than 3 minutes)
Config.HackEarn = 0.10 -- 10% of the crypto on that pc
Config.Performance = {
    ------------------------ GPUs ---------------------------------
    ["XTR-4090"] = 0.00125 * 1.40, --> 1.39 BUTCOINS in 24 hours
    ["XTR-4080"] = 0.00125 * 1.30, --> 1.29 BUTCOINS in 24 hours
    ["XTR-4070"] = 0.00125 * 1.20, --> 1.19 BUTCOINS in 24 hours
    ["XTR-3090"] = 0.00125 * 1.17, --> 1.16 BUTCOINS in 24 hours
    ["XTR-3080"] = 0.00125 * 1.15, --> 1.14 BUTCOINS in 24 hours
    ["XTG-1080"] = 0.00125 * 1.10, --> 1.09 BUTCOINS in 24 hours
    ["XTG-1070"] = 0.00125 * 1.07, --> 1.06 BUTCOINS in 24 hours
    ["XTG-1660"] = 0.00125 * 1.05, --> 1.04 BUTCOINS in 24 hours
    ["XTG-980"]  = 0.00125 * 1.00, --> 1.00 BUTCOINS in 24 hours
    ------------------------ CPUs ---------------------------------
    ["NEZYR7-7950"]  = 0.00035 * 1.40, --> 1.39 BUTCOINS in 24 hours
    ["NEZYR7-7900"]  = 0.00035 * 1.30, --> 1.39 BUTCOINS in 24 hours
    ["LETNI9-14900"] = 0.00035 * 1.20, --> 1.39 BUTCOINS in 24 hours
    ["LETNI9-14700"] = 0.00035 * 1.15, --> 1.39 BUTCOINS in 24 hours
    ["LETNI7-13700"] = 0.00035 * 1.07, --> 1.39 BUTCOINS in 24 hours
    ["LETNI5-14600"] = 0.00035 * 1.05, --> 1.39 BUTCOINS in 24 hours
    ["LETNI5-13600"] = 0.00035 * 1.00, --> 1.39 BUTCOINS in 24 hours
    ------------------------ MBs ---------------------------------
    ["ETYBAGIG-B650E"]  = 0.00023 * 1.40, --> 1.39 BUTCOINS in 24 hours
    ["KCORSA-X670ELI"]  = 0.00023 * 1.30, --> 1.39 BUTCOINS in 24 hours
    ["ETYBAGIG-X670E"]  = 0.00023 * 1.20, --> 1.39 BUTCOINS in 24 hours
    ["GORSUSA-B550FL"]  = 0.00023 * 1.12, --> 1.39 BUTCOINS in 24 hours
    ["TXZNN7-B550LIE"]  = 0.00023 * 1.07, --> 1.39 BUTCOINS in 24 hours
    ["ETYBAGIG-Z970R"]  = 0.00023 * 1.05, --> 1.39 BUTCOINS in 24 hours
    ["GORSUSA-Z970LI"]  = 0.00023 * 1.00, --> 1.39 BUTCOINS in 24 hours
    ------------------------ PSs ---------------------------------
    ["RIASROC-RM750X"]  = 0.00025 * 1.40, --> 1.39 BUTCOINS in 24 hours
    ["CINOSAES-TX100"]  = 0.00025 * 1.30, --> 1.39 BUTCOINS in 24 hours
    ["GPXNOLYP-TX450"]  = 0.00025 * 1.20, --> 1.39 BUTCOINS in 24 hours
    ["TEIUQEB11-550W"]  = 0.00025 * 1.12, --> 1.39 BUTCOINS in 24 hours
    ["RIASROC-AX1600"]  = 0.00025 * 1.07, --> 1.39 BUTCOINS in 24 hours
    ["CINOSAES-SX100"]  = 0.00025 * 1.05, --> 1.39 BUTCOINS in 24 hours
    ["RIASROC-RM1200"]  = 0.00025 * 1.00, --> 1.39 BUTCOINS in 24 hours
}

Config.Minigames = {
    SmokeCrack = 3 , -- 3s progressbar speed
    Noid       = 1 , -- 1s Refresh Caracters
}

Config.Currency = {
    Butc = math.random(250,400) -- 1 butc = random value between (250 and 400)
}

Is this easy to support for LB-Phone?

1 Like

yup !
under client/Framework.lua (open source) : just modify this part

function SendPhoneNotification(coords)
    if Config.phone == 'qb-phone' then
        TriggerServerEvent('qb-phone:server:sendNewMail', {
            sender = 'Drone App',
            subject = 'Delivery Ready',
            message = 'The drone will be in position in the next few minutes. Please hurry up before someone else steals the package.',
            button = {
                enabled = true,
                buttonEvent = "zat-desktop:client:setLocation",
                buttonData = coords
            }
        })
    end
end

And if you were not able to do it feel free to open a ticket on our discord and we will help you on doing that !

Perfect! Buying this script tonight/tomorrow - along with your weed growing. Your making some amazing looking stuff!

1 Like

this script looks amazing! it says Code is accessible 80%

can you explain what is and isnt accessible

image
and HTML is in build .

Looks great man, I am curious what other scripts of yours work with qs inventory? I am interested in the weed system. That is the coolest most in depth one I have ever seen haha I also use qtarget so am I clear with that with your scripts? Definitely will be making some purchases if I am.