Skip to content

Instantly share code, notes, and snippets.

@jag-dev
Created March 30, 2023 22:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jag-dev/2e0d6e91469230943ec5aeb4ed494cde to your computer and use it in GitHub Desktop.
Save jag-dev/2e0d6e91469230943ec5aeb4ed494cde to your computer and use it in GitHub Desktop.
Crypto Heist Config
Config = Config or {}
Config.startingPedModel = "a_m_y_business_03" -- Starting ped model
Config.targetPed = "Start the Crypto Heist" -- Message when player third eye's ped
Config.startMessage = "I\'ll get you some info soon" -- Heist initial message
Config.policeMessage = "Active robbery at Life Invader" -- Police system message
Config.robberyCall = "10-68: Active Heist" -- Robbery call (appears on blip)
Config.drillProgress = "Drilling into server gate..." -- Drilling progress bar
Config.drillSuccess = "Broke into Server Gates" -- Successful drill into gate
Config.drillFail = "Failed to drill gates" -- Unsuccessful drill into gate
Config.hackedServers = "Successfully infultrated" -- Successful trojan hack
Config.failedServers = "Trojan was unsuccessful" -- Unsuccessful trojan hack
Config.hackedCryptoStick = "Hacked a Crypto Stick" -- Successful crypto hack
Config.failedCryptoStick = "Failed to hack..." -- Unsuccessful crypto hack
Config.denyMessage = "Job\'s taken. Get out of here." -- Heist active or on cooldown
Config.needsItems = "You think I do this for free?" -- Player does not have required items
Config.notEnoughPolice = "Not enough cops online" -- Not enough police online
Config.disabledSecurityMessage = "Temporarily disabling security" -- Successfully disabled security system
Config.disabledSecurityMessageFail = "Failed to disable security system" -- Unsuccessfully disabled security system
Config.warnSecurityMessage = "Suspicious activity at Life Invader" -- Police message on disabled security system
Config.minimumPolice = 2 -- Minimum required police
Config.heistDurationSeconds = 30*60 -- How long until heist automatically resets
Config.cooldownSeconds = 15*60 -- How long the heist is on cooldown after ending
Config.trojanSeconds = 15 -- Hacking minigame duration
Config.cryptoStickLimit = 3 -- Amount of crypto sticks players can hack per heist
Config.minimumFails = 0 -- Minimum about of fails allowed during crypto stick hack minigame
Config.cryptoRange = math.random(3, 5) -- Decimal value between these two bounds, if set to (0,0) will give a decimal between 0-1
Config.disableSecurityAttempts = 5 -- Amount of times to perform security disabling minigame
Config.securityDisabledSeconds = 300 -- How long security system is disabled for until alerting police
Config.requireStartingItems = true -- Should a player need to give items to starting ped
Config.sendSuspiciousAlert = true -- Should cops get a suspicious notification when security system is disabled
Config.allowDisableSecurity = true -- Allow players to disable security system
Config.startingItems = { -- Required items to start heist
[1] = "cryptostick",
[2] = "cryptostick",
[3] = "cokebaggy",
}
Config.email = { -- Format for email sent to players phone
sender = 'QBit King',
subject = 'Inside Info',
message = 'Seems Life Invader are dipping their toes into the blockchain. Luckily, the second floor server room has... subpar security measures. Don\'t say I didn\'t do anything for you.',
}
Config.locations = { -- Locations for target areas and starting ped
["startingPed"] = vector4(-249.88, -1941.77, 28.95, 316.78),
["breakServerGate"] = vector4(-1055.93, -231.2, 44.02, 27.76),
["hackServerRack"] = vector4(-1053.92, -230.12, 44.02, 197.44),
["hackingDesk"] = vector4(-1052.93, -230.94, 44.92, 255.47),
["disableSecurity"] = vector4(-1051.43, -238.22, 39.73, 292.85),
["policeBlip"] = vector3(-1065.39, -243.43, 54.01),
}
Config.guardSpawnSettings = {
["guardsEnabled"] = true, -- Are guards enabled
["spawnGuardsAtStage"] = 1, -- What stage to spawn guards at (-1 = on start, 0 = failed security, 1 = drilled gate, 2 = hacked servers, 3 = last cryptostick)
["pedModel"] = "s_m_m_armoured_02", -- Guard ped model
["weapon"] = "WEAPON_CARBINERIFLE", -- Ped Weapon
["combatAbility"] = 1, -- How skilled the guards are, (0 = poor, 1 = average, 2 = professional)
["armour"] = 50, -- Ped armor
["health"] = 100, -- Ped health
["secondsTillDespawn"] = 300, -- Time until peds despawn
["locations"] = {
[1] = vector4(-1070.52, -249.97, 44.02, 295.87),
[2] = vector4(-1066.68, -245.73, 44.02, 292.75),
[3] = vector4(-1049.58, -236.77, 44.02, 94.75),
[4] = vector4(-1081.87, -248.46, 44.02, 252.43),
[5] = vector4(-1077.87, -244.51, 44.02, 159.53),
}
}
-------------------------------------
-- CUSTOMIZEABLE FUNCTIONS
--
-- These are functions that allow you to inject custom code
-- which is executed at predefined sections of the script
-------------------------------------
if not IsDuplicityVersion() then
-- This function is called when the police are notified of the heist
-- Example usage: Deploying AI police when required police amount are not online
function performOnPoliceCall(policeAmount)
-- policeAmount -> The current number of active police
if policeAmount < Config.minimumPolice then
print('Police have been notified')
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment