[PAID] [ESX] Easter Hunt

Showcase
EASTER HUNT

Purchase
TEBEX

Code is accessible Config, rewards
Subscription-based No
Lines (approximately) ~650
Requirements ESX Legacy and below
Support Yes

Optimization
Full optimized.
Idle 0.00
Near NPC 0.03 - 0.04

Features

  • While carrying an egg, if you fall, it can fall out of your hand.

  • In the script, you can set rewards based on the amount of eggs collected.

  • More than 80 locations already installed, can be modified in the config file.

  • Egg can drop out of the trunk if the trunk is open.

  • Deposit

  • Server-side checks to prevent abuse, cheating. VIDEO

Our Other Resources

Config

Config.KickReasons = {
    Deposit = "[EASTER HUNT] Tried to trigger [take deposit back] event! 😢",
    Rewards = "[EASTER HUNT] Tried to trigger [rewards] event! 😢"
}


Config.Discord = { 
    Webhook = "WEBHOOK_HERE",
    BotName = "d3_EasterHunt",
    BotIcon = "https://media.discordapp.net/attachments/909923315852910673/925756403979784192/d3mba_dasdasdadpng.png?width=468&height=468"
}


-- If is on true script will be stop game if palyer die while during game
Config.IfIsPlayerDiedStopGame = true -- true/false

Config.Egg = {
    Prop = "prop_alien_egg_01", 
    EggCrash = { 
        Use = true, -- If is on true 
        Chance =  50, -- e.g. 20 = 80%, 50 = 50%, 80 = 20%... 
    }, 
    Timer = 10 -- Minutes
}

Config.DisableControlsWhileCarryingEgg = {
	Sprint = true, -- If is true player can't sprint while carrying egg.
	Jump = false, 
	Attack = true -- (LEFT MOUSE BUTTON, Q, R).
}

Config.Ped = {
    -- Ped Options
    Pos = {x = 797.6865, y = -1627.64, z = 31.165, h = 351.09}, 
    Model = "a_m_m_socenlat_01", -- https://docs.fivem.net/docs/game-references/ped-models/
    Rotate = true, -- true/false 
    Distance = 2,
    -- Deposit Options
    Deposit = {
        Use = true,
        Amount = 250,
        Account = "money", -- money, bank, black_money
    }, 
    -- Blip Options
    Blip = { -- https://docs.fivem.net/docs/game-references/blips/
        Use = true,
        Sprite = 515, 
        Scale = 1.2,
        Color = 0,
        Label = "Easter Hunt"
    }
}


Config.Vehicle = {

    VehicleModels = {
        [1] = "rumpo",
        [2] = "speedo",
    },

    VehSpawnPos = {x = 804.8114, y = -1601.81, z = 31.413, h = 174.59}, -- Vehicle spawn position
    -- Options 
    UseSpawnPointCheck = true,
    SpawnPointCheckRadius = 3.5,
    SetPedIntoVehicle = true,
    FullFuel = true,

    TrunkDoors = {
        Distance = 1.5, -- Distance from where player can interact with trunk doors
        TrunkDoor = 3, -- door index
        TrunkDoor2 = 2
    },

    EggsDropFuntion = {
        Use = true,
        TimeCheck = 2, -- seconds 
        Speed = 20.0, -- km/h
    },
    
    -- Return vehicle marker options 
    ReturnVehicle = {
	    Pos = {x = 806.9727, y = -1622.37, z = 30.180}, -- Vehicle return position
	    Size = {x = 0.7, y = 0.7, z = 0.7},
	    Color = {r = 230, g = 230, b = 230, a = 230}, 
	    Type = 1, -- https://docs.fivem.net/docs/game-references/markers/
        Distance = 8,
        InteractDistance = 1.7,
        Rotate = false,
        Text3DHeight = 1.1,
    }
}

Config.EggHint = { 
    -- Blip 
    Blip = { 
        Sprite = 1,
        Colour = 0,
        Alpha = 200,
    },
}


Config.Notifications = { 
    ["paid_deposit"] = "You paid ~g~" ..Config.Ped.Deposit.Amount.. "~s~$ for the vehicle deposit!",
    ["no_enough_money"] = "You don't have enough money to pay the vehicle deposit ~r~" ..Config.Ped.Deposit.Amount.. "~s~ $",
    ["vehicle_too_damaged"] =  "~r~The vehicle is too damaged!",
    ["spawnpoint_check"] = "~r~Vehicle spawnpoint has been blocked!",
    ["vehicle_deleted"] = "[EASTER HUNT]~r~ The vehicle was deleted, ~w~~h~HUNT~h~~s~ ~r~stopped!",
    ["egg_broke"] = "~r~The egg broke!",
    ["egg_fell_out"] = "~r~Egg fell out of the trunk, because the trunk is open!",
    ["close_the_trunk"] = "~r~Close the trunk!",
    ["many_eggs_as_possible"] = "During the next ~h~" ..Config.Egg.Timer.. "~h~ minutes you must find as many eggs as possible, ~g~Good Luck~s~!",
    ["time_expired"] = "[EASTER HUNT] The time exipred. go back to the ped a and collect your rewards!",
    ["died"] = "[EASTER HUNT] ~r~Game stopped because you died!",
    ["new_location"] = "[EASTER HUNT] ~g~ You got new location, check your GPS!", 
    ["new_location_start"] = "Check your GPS and find the egg in the ~y~circle~s~ marked on your GPS!", 
}

Config.Text3D = { 
    ["start_hunt_deposit"] = "Press ~r~E~s~ to start ~o~Easter Hunt~s~ | Deposit = ~r~" ..Config.Ped.Deposit.Amount.. "~s~$.",
    ["return_deposit"] = "Press ~r~E~s~ to return ~g~deposit~s~.",
    ["start_hunt"] = "Press ~r~E~s~ to start ~o~Easter Hunt~s~.",
    ["stop_hunt"] = "Press ~r~H~s~ to ~h~STOP~h~ ~o~Easter Hunt~s~.",
    ["open_trunk"] = "[~r~H~s~] - Open trunk",
    ["close_trunk"] = "[~r~H~s~] - Close trunk",
    ["trunk_eggs"] = "Eggs: ~g~",
    ["close_take_eggs"] = "[~r~H~s~] - Close trunk | [~r~E~s~] - Take package out",
    ["put_egg"] = "[~r~E~s~] - Put egg in",
    ["return_vehicle"] = "Press [~g~E~w~] return vehicle.",
    ["return_vehicle2"] = "You are not in the ~r~hunter vehicle~w~!",
    ["return_vehicle3"] = "~r~You are not in the vehicle!",
    ["return_vehicle_rewards"] = "Press [~g~E~w~] return vehicle and ~g~take rewards~s~!.",
    ["droppaed_egg"] = "Press [~r~E~s~] to take egg",
    ["take_egg"] = "Press [~r~E~s~] to take egg",
}

function DrawText3D(x,y,z, text)
    local onScreen,_x,_y=World3dToScreen2d(x,y,z)
    local px,py,pz=table.unpack(GetGameplayCamCoords())
    SetTextScale(0.35, 0.35)
    SetTextFont(4)
    SetTextProportional(1)
    SetTextColour(255, 255, 255, 255)
    SetTextEntry("STRING")
    SetTextCentre(1)
    AddTextComponentString(text)
    DrawText(_x,_y)
    local factor = (string.len(text)) / 370
    DrawRect(_x,_y+0.0125, 0.015+ factor, 0.03, 41, 11, 41, 68)
end 


Config.Controls = { -- https://docs.fivem.net/docs/game-references/controls/
    start_hunt = 38, -- E  
    stop_hunt = 74, -- H
    return_vehicle = 38, -- E
    trunk_open_close = 74, -- H
	put_egg_in_the_trunk = 38, -- E
    take_egg = 38, -- E
}


Config.Locations = {
    [1] = {coords = vector3(212.6600, -813.976, 30.738),  taken = false},
    [2] = {coords = vector3(230.3247, -821.880, 30.280), taken = false},
    [3] = {coords = vector3(239.4504, -814.403, 30.203), taken = false},
    [4] = {coords = vector3(207.0708, -867.893, 31.450), taken = false},
    [5] = {coords = vector3(301.2170, -907.894, 29.293), taken = false},
    [6] = {coords = vector3(195.4207, -1191.45, 29.387), taken = false},
    [7] = {coords = vector3(275.3341, -1507.02, 29.211), taken = false},
    [8] = {coords = vector3(407.1463, -1538.71, 29.403), taken = false},
    [9] = {coords = vector3(420.0018, -1510.89, 40.925), taken = false},
    [10] = {coords = vector3(824.1869, -1100.81, 25.282), taken = false},
    [11] = {coords = vector3(847.0246, -1050.51, 27.959), taken = false},
    [12] = {coords = vector3(801.0152, -761.170, 26.800), taken = false},
    [13] = {coords = vector3(-1815.65, 865.1890, 144.31), taken = false},
    [14] = {coords = vector3(-1640.38, -1023.08, 13.152), taken = false},
    [15] = {coords = vector3(-1700.06, -1127.03, 13.152), taken = false},
    [16] = {coords = vector3(-1292.22, -1433.02, 4.6747), taken = false},
    [17] = {coords = vector3(-1020.00, -1503.09, 4.7689), taken = false},
    [18] = {coords = vector3(74.60530, 448.0578, 146.14), taken = false},
    [19] = {coords = vector3(1074.337, 2172.746, 49.019), taken = false},
    [20] = {coords = vector3(1329.271, 3014.321, 43.508), taken = false},
    [21] = {coords = vector3(-821.673, 889.3056, 203.34), taken = false},
    [21] = {coords = vector3(-1672.79, 479.8304, 127.47), taken = false},
    [22] = {coords = vector3(-1704.46, -31.7124, 65.446), taken = false},
    [23] = {coords = vector3(-1397.27, 12.27480, 53.262), taken = false},
    [24] = {coords = vector3(-1029.95, -123.443, 40.819), taken = false},
    [25] = {coords = vector3(-444.001, -791.405, 30.538), taken = false},
    [26] = {coords = vector3(-592.362, -1374.36, 18.462), taken = false},
    [27] = {coords = vector3(-459.691, -1804.77, 21.651), taken = false},
    [28] = {coords = vector3(148.3467, -1840.63, 26.278), taken = false},
    [29] = {coords = vector3(472.9765, -1721.12, 29.335), taken = false},
    [30] = {coords = vector3(540.3239, -1770.41, 28.880), taken = false},
    [31] = {coords = vector3(750.7891, -1865.70, 29.292), taken = false},
    [32] = {coords = vector3(1394.089, -1504.21, 58.128), taken = false},
    [33] = {coords = vector3(-1852.60, -465.825, 43.811), taken = false},
    [34] = {coords = vector3(-1450.54, -497.363, 34.201), taken = false},
    [35] = {coords = vector3(-875.803, -408.243, 37.784), taken = false},
    [36] = {coords = vector3(-748.571, -562.436, 30.307), taken = false},
    [37] = {coords = vector3(-655.976, -583.264, 35.092), taken = false},
    [38] = {coords = vector3(205.9658, -1001.11, 29.291), taken = false},
    [39] = {coords = vector3(203.9041, -1007.21, 29.291), taken = false},
    [40] = {coords = vector3(-28.6758, -1007.04, 29.416), taken = false},
    [41] = {coords = vector3(-135.546, -1172.99, 25.391), taken = false},
    [42] = {coords = vector3(14.00471, -1814.82, 25.364), taken = false},
    [43] = {coords = vector3(21.80907, -1814.89, 25.294), taken = false},
    [44] = {coords = vector3(226.7582, -1848.71, 26.964), taken = false},
    [45] = {coords = vector3(369.9371, -1860.31, 25.681), taken = false},
    [46] = {coords = vector3(560.3152, -1895.19, 25.174), taken = false},
    [47] = {coords = vector3(577.0502, -1670.09, 28.123), taken = false},
    [48] = {coords = vector3(327.9825, -1274.08, 31.649), taken = false},
    [49] = {coords = vector3(279.6161, -994.554, 29.314), taken = false},
    [50] = {coords = vector3(-438.433, -359.272, 34.899), taken = false},
    [51] = {coords = vector3(-1186.20, 208.6582, 66.835), taken = false},
    [52] = {coords = vector3(-1654.30, 402.0477, 89.417), taken = false},
    [53] = {coords = vector3(-1678.53, -98.8834, 70.712), taken = false},
    [54] = {coords = vector3(-1305.81, -543.707, 31.712), taken = false},
    [55] = {coords = vector3(-1094.53, -1240.72, 2.5366), taken = false},
    [56] = {coords = vector3(-1127.14, -1272.38, 7.3835), taken = false},
    [57] = {coords = vector3(-1136.52, -1245.47, 7.0121), taken = false},
    [58] = {coords = vector3(1288.446, -2353.31, 51.589), taken = false},
    [59] = {coords = vector3(1307.861, -2617.13, 46.165), taken = false},
    [61] = {coords = vector3(1319.470, -2604.78, 47.670), taken = false},
    [62] = {coords = vector3(412.7377, -2108.62, 20.102), taken = false},
    [63] = {coords = vector3(321.4085, -2125.55, 16.020), taken = false},
    [64] = {coords = vector3(236.7279, -2149.28, 12.640), taken = false},
    [65] = {coords = vector3(223.6631, -2126.43, 14.291), taken = false},
    [66] = {coords = vector3(-656.083, -25.2658, 39.629), taken = false},
    [67] = {coords = vector3(-611.910, -19.9472, 43.230), taken = false},
    [68] = {coords = vector3(-1825.54, 206.3548, 83.055), taken = false},
    [69] = {coords = vector3(-1545.82, 533.0683, 136.32), taken = false},
    [70] = {coords = vector3(1307.538, -605.073, 72.114), taken = false},
    [71] = {coords = vector3(1304.159, -621.348, 71.181), taken = false},
    [72] = {coords = vector3(1375.992, -690.224, 67.098), taken = false},
    [73] = {coords = vector3(1124.832, -903.437, 53.378), taken = false},
    [74] = {coords = vector3(1286.573, -1369.22, 46.324), taken = false},
    [75] = {coords = vector3(1196.149, -2036.39, 49.374), taken = false},
    [76] = {coords = vector3(1104.348, -2176.35, 31.103), taken = false},
    [77] = {coords = vector3(661.0254, -2480.34, 18.263), taken = false},
    [78] = {coords = vector3(239.5728, -1583.68, 29.403), taken = false},
    [79] = {coords = vector3(271.4329, -1575.38, 31.634), taken = false},
    [80] = {coords = vector3(519.9509, -1244.85, 30.960), taken = false},
    [81] = {coords = vector3(523.7606, -1255.97, 30.963), taken = false},
    [82] = {coords = vector3(541.2428, -1305.87, 30.470), taken = false},
    [83] = {coords = vector3(555.0835, -123.460, 63.206), taken = false},
    [84] = {coords = vector3(763.2738, 75.20018, 80.141), taken = false},
    [85] = {coords = vector3(867.8989, 426.0864, 122.71), taken = false},
}

Discord Logs

1 Like
2 Likes

You can download it and then return to my easter hunt script showcase to see how these scripts differ. :grinning:

that is not the same WTF

1 Like

Just posting a free alternative you knuckleheads.

I don’t understand why this had to be put here. I think everyone has google.

1 Like

everyone always has something to whinge about in this community don’t they

Not work for me, if i press E to Start then come this error:
image

cannot get it to work to get the rewards, support was not really able to fix it…
idea is nice but well …wasted money for me…

second year without any support to get that script working. do not buy here!