Mads' Resource Documentation
  • 📺Youtube
  • 🤝Discord
  • ⭐Tebex
  • 👨‍💻GitHub
  • 👋Welcome!
  • General Info
    • ❓Questions and Answers
      • Is X script locked/encrypted?
      • I need support, where can I reach out?
      • How do I update my server artifacts?
      • How do I transfer a script from one account to another?
      • How do I set my game build?
    • ⚠️Common Problems
      • You lack the required entitlement
      • Failed to verify protected resource
      • Could not find dependency /assetpacks for resource
  • Resources
    • 🪑Sit Anywhere
      • Adding Custom Models
      • Falling Through the Map
      • Exports
      • Events
    • 🚁Helicopter Camera
      • Adding custom helicopters
      • Moving the UI above the minimap
      • Adding controller inputs
      • Controls
      • Exports
      • Events
    • 🚙Slash Tires
      • Exports
      • Events
    • 🕶️Stungrenade
      • Adding the Stungrenade as an item
      • Measures Against Cheaters
      • Exports
      • Events
    • 🪖CS Styled Killfeed
      • General Information
      • Exports - Client Side
      • Exports - Server Side
      • Examples
      • Adding Messages to the feed
      • Weapons List / Death Reasons
      • Changing the position if the killfeed
    • Crouch & Crawl
      • Exports
    • 🔫Taser Effect
    • 🔭Telescopes
    • 🩺Crutches
      • How to make the script compatible with ps-walkstyle
    • ⛽No Exploding Pumps
    • 👠Hookers
Powered by GitBook
On this page
  • QB-Core (qb-core)
  • QB-Inventory
  • PS-Inventory
  • QS Inventory (qs-inventory)
  • Qbox (qbx_core)
  • ESX (es_extended)
  • OX Inventory
  • Standalone/vMenu
  1. Resources
  2. Stungrenade

Adding the Stungrenade as an item

If you use a framework or an inventory script, you may need to make some changes to allow the stungrenade to work as an item.

PreviousStungrenadeNextMeasures Against Cheaters

Last updated 10 months ago

IMPORTANT NOTE: If you use an escrowed inventory that doesn’t support addon-throwing weapons then I can’t help you. It’s a problem with the inventory script, not with this script.

QB-Core (qb-core)

Note: This is for version 1.2.6 of qb-core (March 2023).

  1. Set Config.UseGameEvent to false in Config.lua inside the stungrenade resource.

  2. Add weapon_stungrenade as an item inside like this:

weapon_stungrenade = { name = 'weapon_stungrenade', label = 'Stun Grenade', weight = 1000, type = 'weapon', ammotype = nil, image = 'weapon_stungrenade.png', unique = true, useable = false, description = 'This blinds people!' },
  1. Add weapon_stungrenade as an item inside like this:

[`weapon_stungrenade`] = { name = 'weapon_stungrenade', label = 'Stun Grenade', weight = 1000, type = 'weapon', ammotype = nil, image = 'weapon_stungrenade.png', unique = true, useable = false, description = 'This blinds people!' },
  1. Add it in qb-weapons:

NOTE: This step (3) can be skipped if you are using OX Inventory.

If you are using an older version (pre-February 16th 2023 / v. 1.2.0) then do the following: Add the following code to the prison:server:checkThrowable callback in server/main.lua:

elseif QBCore.Shared.Weapons[weapon]["name"] == "weapon_stungrenade" then
    Player.Functions.RemoveItem("weapon_stungrenade", 1)

And add weapon_stungrenade inside Config.DurabilityMultiplier in the config.lua file.

Or if you are using a newer version (version 1.2.1 or newer) then do the following: Add stungrenade inside Config.Throwables and weapon_stungrenade inside Config.DurabilityMultiplier in the config.lua file.

  1. Add it to your inventory script (See QB-Inventory or OX Inventory).

QB-Inventory

elseif weaponName == 'weapon_stickybomb' or weaponName == 'weapon_pipebomb' or weaponName == 'weapon_smokegrenade' or weaponName == 'weapon_flare' or weaponName == 'weapon_proxmine' or weaponName == 'weapon_ball' or weaponName == 'weapon_molotov' or weaponName == 'weapon_grenade' or weaponName == 'weapon_bzgas' or weaponName == 'weapon_stungrenade' then

PS-Inventory

elseif weaponName == "weapon_stickybomb" or weaponName == "weapon_pipebomb" or weaponName == "weapon_smokegrenade" or weaponName == "weapon_flare" or weaponName == "weapon_proxmine" or weaponName == "weapon_ball" or weaponName == "weapon_molotov" or weaponName == "weapon_grenade" or weaponName == "weapon_bzgas" or weaponName == "weapon_stungrenade" then

QS Inventory (qs-inventory)

Thanks to psycomantisx for providing info on adding throwable weapons to qs-inventory!

  1. Similar to both ps and qb inventory you need to add the following: or weaponName == "weapon_stungrenade" then inside qs-inventory/client/custom/misc/UseWeapon.lua. If you are unsure of what line this is on then search for weapon_grenade and copy-paste it and replace the weapon name with weapon_stungrenade.

  2. Add stungrenade inside the Config.Throwables table inside qs-inventory/config/weapons.lua.

  3. Add weapon_stungrenade inside qs-inventory/config/weapons.lua, again you can search for and copy-paste the weapon_grenade entry.

  4. Add weapon_stungrenade inside qs-inventory/shared/items.lua, again you can search and copy-paste weapon_grenade and then simply replace the needed data.

  5. Add weapon_stungrenade inside qs-inventory/shared/weapons.lua (again use the search and copy-paste tactic).

Qbox (qbx_core)

Note 13.03.2024: This guide is outdated! I will update it soon!

Note: Since Qbox is in active development the following steps may be different in the future. This was last tested in late November 2023. The following steps are pretty close to the qbcore steps as of now.

  1. Set Config.UseGameEvent to false in Config.lua inside the stungrenade resource.

['weapon_stungrenade'] = {['name'] = 'weapon_stungrenade', ['label'] = 'Stun Grenade', ['weight'] = 1000, ['type'] = 'weapon', ['ammotype'] = nil, ['image'] = 'weapon_stungrenade.png', ['unique'] = true, ['useable'] = false, ['description'] = 'This blinds people!'},
  1. Add it inside a shop (or make some other way of getting it, eg. a command)

  2. Add it to your inventory script (See OX Inventory)

ESX (es_extended)

Note: This is for version 1.10.2 of ESX Legacy, yours may be different depending on the version of esx that you are running.

  1. Set Config.UseGameEvent to false in Config.lua inside the stungrenade resource (you can try with it on, but it may not work properly).

  2. Add the following inside Config.Weapons:

{ name = 'WEAPON_STUNGRENADE', label = TranslateCap('weapon_stungrenade'), components = {}, ammo = { label = TranslateCap('ammo_stungrenade'), hash = `AMMO_STUNGRENADE` } }

OX Inventory

Only add WEAPON_STUNGRENADE as a weapon, and NOT an item.

  1. Set Config.OxInventory to true inside Config.lua inside the stungrenade resource.

  2. Add 'WEAPON_STUNGRENADE' inside ox_inventory/data/weapons.lua like so (inside the Weapons table, NOT the Ammo table!):

['WEAPON_STUNGRENADE'] = {
    label = 'Stun Grenade',
    weight = 600,
    throwable = true
},

Standalone/vMenu

Add or weaponName == "weapon_stungrenade" then inside on line 564 (line might be different) so the line looks like this:

Add an image named weapon_stungrenade.png inside .

Add or weaponName == "weapon_stungrenade" then inside on line 597 (line might be different) so the line looks like this:

Add an image named weapon_stungrenade.png inside .

Add weapon_stungrenade as an item inside like this:

Find the es_extended resource and open .

Then add ["weapon_stungrenade"] = "Stun Grenade", and ["ammo_stungrenade"] = "stun grenade(s)", inside your preferred localization file ( for example). You can skip this step if you put the text directly into the file (replacing the TranslateCap functions), however, I do recommend that you use esx's localization system if you can.

Add an image named WEAPON_STUNGRENADE.png inside .

The spawn code/name for the stungrenade is WEAPON_STUNGRENADE. For adding this to vMenu please read their docs: .

🕶️
qb-core/shared/items.lua
qb-core/shared/weapons.lua
qb-inventory/client/main.lua
qb-inventory/html/images
ps-inventory/client/main.lua
ps-inventory/html/images
qbx_core/shared/items.lua
config.weapons.lua
es_extended/locales/en.lua
config.weapons.lua
ox_inventory/web/images
https://docs.vespura.com/vmenu/configuration/addons.json