> For the complete documentation index, see [llms.txt](https://striga.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://striga.gitbook.io/docs/striga-inventory/weapons.md).

# Weapons

The built-in weapon pack. Ammo and wear on the server, attachments, tints and a gunsmith.

Striga Inventory has its own weapon pack, made to replace **qb-weapons**. File: `editable/weapons.lua`.

{% hint style="warning" %}
`Weapons.Enabled = 'auto'` (default) turns the pack **on only when qb-weapons is not running**. Move `qb-weapons` out of `resources` to use it. `true` = always on, `false` = off (another weapon script handles weapons).
{% endhint %}

## How it works

* **Use** a weapon item (or its hotbar key) to draw it, use it again to holster it. Both play an animation.
* **Ammo** lives on the weapon item. Shots are counted by the server: the client can only report less ammo, never more.
* **Wear**: every shot lowers the weapon's quality (`Durability`). At 0 the weapon is broken and cannot be drawn.
* **Reload**: use an ammo item with the weapon out, or press `R` with an empty weapon (it takes the first fitting ammo item).
* **Throwables** (grenades, molotovs...): the item count is the ammo. Every throw removes one item.
* Give, drop or store the weapon you hold and it leaves your hands.
* The GTA weapon wheel is blocked while a weapon is out (`DisableWheel`), the inventory decides.

## Config

| Option         | Default                              | What it does                                                                                                                              |
| -------------- | ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `Enabled`      | `'auto'`                             | See above                                                                                                                                 |
| `MaxAmmo`      | `250`                                | Most rounds one weapon holds                                                                                                              |
| `DisableWheel` | `true`                               | Block the GTA weapon wheel while a weapon is out                                                                                          |
| `SwapNoAnim`   | `true`                               | Switching straight to another weapon skips the holster animation                                                                          |
| `Anims`        | -                                    | `draw` and `holster` animation (`dict`, `clip`, `time`, `wait`)                                                                           |
| `Ammo`         | qb ammo items                        | Ammo item = ammo type + rounds per item: `pistol_ammo = { type = 'AMMO_PISTOL', amount = 30 }`                                            |
| `Durability`   | `default = 0.15`                     | Quality lost per shot, per weapon (`weapon_stungun = 0`)                                                                                  |
| `Throwables`   | -                                    | Weapons where one item = one throw                                                                                                        |
| `Tints`        | `normal = 7`, `mk2 = 32`             | Tint items `weapontint_0..7` (all weapons) and `weapontint_mk2_0..32` (MK2 only)                                                          |
| `Guard`        | `'log'`                              | A weapon in hand the inventory did not give (menu, cheat): `'log'` writes it to the console, `'remove'` also takes it away, `false` = off |
| `GuardIgnore`  | `weapon_unarmed`, `gadget_parachute` | Weapons other scripts give on purpose                                                                                                     |
| `Attachments`  | qb attachment items                  | Attachment item = the components it may add. The first one the weapon takes is used                                                       |

A weapon's ammo type comes from the item list (`ammotype` on the weapon item).

## Attachments and tints

* **Use** an attachment item (`clip_attachment`, `suppressor_attachment`...) with the weapon out to put it on. The item is used up.
* **Use** a tint item (`weapontint_1`...) the same way.
* Right click a weapon > **Attachments** lists what is on it. Pick one to take it off: the item comes back. The tint can be taken off there too.

## Gunsmith

With a weapon in hand, press `E` at a gunsmith. The camera turns to the weapon and a menu opens:

* **Repair** - the price goes with the damage (a weapon at 60 % pays 40 % of `RepairPrice`).
* **Attachments** - every part the weapon takes. The part shows on the weapon first, then **confirm** to buy it.
* **Tints** - same, with the tint.

Prices only come from the server config:

```lua
Weapons.Gunsmith = {
    Enabled = true,
    Account = 'cash',          -- 'cash' (the cash item) or 'bank'
    RepairPrice = 500,
    TintPrice = 250,
    AttachmentPrice = 750,     -- any attachment not listed below
    AttachmentPrices = { suppressor_attachment = 2500 },
    Points = {
        { id = 'gunsmith_pillbox', label = 'Gunsmith', coords = vector4(17.9, -1108.4, 29.8, 340.0),
          interactionDistance = 1.5, blip = { sprite = 402, scale = 0.7, color = 1 } },
    },
}
```

{% hint style="info" %}
Add as many `Points` as you like. Check the default spot in game and move it where it fits your map.
{% endhint %}

{% content-ref url="/pages/HK4NxiX32fXVvA2VMzwH" %}
[Clothing & Character](/docs/striga-inventory/clothing-and-character.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://striga.gitbook.io/docs/striga-inventory/weapons.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
