[PAID] XSC_Raids - Dynamic Raid System

XSC_Raids - Dynamic Raid System

XSC_Raids is a system that introduces engaging raid content to your FiveM server. Script comes with 4 pre-configured raid locations across San Andreas.

:video_camera: Showcase Video: Youtube
:shopping_cart: Purchase here: XSCripts Tebex
:question: Support & Questions: XSCripts Discord

Features

  • 4 Pre-Configured Raid Locations
    This raid system comes with 4 pre-configured locations. All settings can be configured.
  • NPC Looting
    Utilizes a “third-eye” loot system to loot items directly from the guards
  • Dynamic Hostile Guards with Networked Spawning
    All spawned peds are networked across all players to prevent any desync issues between different players.
  • Percent-based Loot System
    Utilizes a percent-based loot system to dynamically determine loot chances.
  • Highly Configurable
    All aspects of each raid is configurable, including raid location, guard behavior, loot, and rewards. New raids can be easily added or removed based on your preference.
  • Optimized for Performance on Large Servers
    Resource usage between 0.00ms and 0.01ms

Configuration

Each raid is configurable in its respective configuration file. See below for an example:

Example Config File
    raidId = "drugRaid", -- Unique identifier for the raid
    raidName = "Drug Raid", -- Display name of the raid
    startCost = 45000, -- Cost to start the raid
    cooldown = 120, -- Cooldown time in minutes between raid

    guardHelper = true, -- Whether the guard helper is enabled
    guardHelperTime = 5, -- Time before Guard Helper is shown in Minutes
    lootHelper = true, -- Whether the loot helper is enabled
    lootHelperTime = 5, -- Time before Loot Helper is shown in Minutes

    radiusSize = 150, -- Size of the raid radius
    radiusLocation = vector3(2219.08, 5591.67, 55.33), -- Coordinates of the raid radius center

    -- Information about the starting NPC
    -- startingPed.model string: Model of the starting NPC
    -- startingPed.coords vector4: Coordinates and heading of the starting NPC

    startingPed = {
        model = "g_m_y_salvaboss_01",
        coords = vector4(307.65, -1713.53, 29.28, 144.57),
    },

    -- Information about the ending NPC
    -- endingPed.model string: Model of the ending NPC
    -- endingPed.coords vector4: Coordinates and heading of the ending NPC
    endingPed = {
        model = "g_m_y_salvagoon_01",
        coords = vector4(1062.45, -1847.49, 37.30, 314.65),
    },
    
    -- List of loot items available in the raid
    -- loot.name string: Name of the loot item
    -- loot.chance number: Chance of the loot item dropping
    -- loot.lowAmount number: Minimum amount of the loot item
    -- loot.highAmount number: Maximum amount of the loot item
    loot = {
        { name = 'meth_1oz', chance = 45, lowAmount = 1, highAmount = 2},
        { name = 'crack_1oz', chance = 55, lowAmount = 1, highAmount = 3},
        { name = 'heroin_1oz', chance = 65, lowAmount = 1, highAmount = 2 },
        { name = 'xtcbaggybrick', chance = 30, lowAmount = 1, highAmount = 2 },
        { name = 'coke_1oz', chance = 45, lowAmount = 1, highAmount = 2 },
        { name = 'oxy', chance = 65, lowAmount = 10, highAmount = 25 },
        { name = 'illegalgasoline', chance = 35, lowAmount = 5, highAmount = 10 },
        { name = 'cocaleaf', chance = 65, lowAmount = 25, highAmount = 50 },
        { name = 'ephedrine', chance = 65, lowAmount = 25, highAmount = 50 },
        { name = 'benzocaine', chance = 55, lowAmount = 25, highAmount = 50 },
        { name = 'hydrochloricacid', chance = 45, lowAmount = 25, highAmount = 50 },
        { name = 'bromine', chance = 45, lowAmount = 25, highAmount = 50 },
        { name = 'methylamine', chance = 45, lowAmount = 15, highAmount = 35 },
        { name = 'opium', chance = 65, lowAmount = 25, highAmount = 50 },
        { name = 'orange_key', chance = 45, lowAmount = 1, highAmount = 1 },
        { name = 'yellow_key', chance = 45, lowAmount = 1, highAmount = 1 }
    },

    -- Information about the raid objective
    -- objective.item string: Item required to complete the objective
    -- objective.requiredAmount number: Amount of the item required
    objective = {
        item = "walker_manifest",
        requiredAmount = 1
    },

    -- List of guards present in the raid
    -- guards.model string: Model of the guard
    -- guards.weapon string: Weapon used by the guard
    -- guards.armor number: Armor value of the guard
    -- guards.accuracy number: Accuracy percentage of the guard
    -- guards.spawnPoint vector4: Coordinates and heading of the guard's spawn point
    guards = {
        {
            model = "a_m_m_eastsa_02",
            weapon = "WEAPON_HEAVYPISTOL",
            armor = 5,
            accuracy = 45,
            spawnPoint = vector4(2218.85, 5610.41, 54.69, 42.52)
        },
        {
            model = "a_m_m_soucent_01",
            weapon = "WEAPON_MACHINEPISTOL",
            armor = 5,
            accuracy = 65,
            spawnPoint = vector4(2197.95, 5606.86, 53.39, 342.99)
        },
        {
            model = "g_m_importexport_01",
            weapon = "WEAPON_PISTOL",
            armor = 5,
            accuracy = 25,
            spawnPoint = vector4(2193.09, 5596.71, 59.42, 317.48)
        },
        {
            model = "a_m_m_soucent_03",
            weapon = "WEAPON_SMG",
            armor = 5,
            accuracy = 25,
            spawnPoint = vector4(2197.53, 5584.39, 53.66, 303.31)
        },
        {
            model = "g_m_importexport_01",
            weapon = "WEAPON_MACHINEPISTOL",
            armor = 5,
            accuracy = 25,
            spawnPoint = vector4(2214.07, 5579.31, 53.85, 19.84)
        },
    }
}
Code is accessible Partially
Subscription-based No
Lines (approximately) 800+
Requirements QBCore
Support XSCripts Discord
3 Likes

W script holyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy

1 Like

oh hell yea… good stuff bro!!!

1 Like