---
name: "magazinesDetail"
type: command
status: ok
groups: ["Unit Inventory", "Vehicle Inventory"]
arma3_since: "0.50"
locality: {"argument": null, "effect": null, "server_exec": false}
source: https://community.bistudio.com/wiki/magazinesDetail
revid: 377200
updated: 2026-01-01T11:36:18Z
---

# magazinesDetail

*Command · Unit Inventory, Vehicle Inventory · Arma 3 v0.50*

## Description

Returns an array of strings with description of all vehicle's magazines, their ammo count (current/default) and their ids for the primary gunner.

When applied to a unit (soldier), the command behaves differently and will omit magazines already loaded into unit's weapons. Use [currentMagazineDetail](../commands/currentMagazineDetail.md) to get this information for a currently loaded magazine.

## Syntax

### Syntax 1

```sqf
magazinesDetail vehicle
```

**Parameters:**

- `vehicle`: [Object](../topics/Object.md) - unit or vehicle

**Returns:** [Array](../topics/Array.md) of [String](../topics/String.md)s

### Syntax 2

*since arma3 2.00*

```sqf
magazinesDetail [vehicle, includeEmpty, includeLoaded]
```

**Parameters:**

- `vehicle`: [Object](../topics/Object.md) - unit or vehicle
- `includeEmpty`: [Boolean](../topics/Boolean.md) - (Optional, default [false](../commands/false.md)) [true](../commands/true.md) to include empty magazines
- `includeLoaded`: [Boolean](../topics/Boolean.md) - (Optional, default [false](../commands/false.md)) [true](../commands/true.md) to include magazines loaded in weapons (Since Arma 3 v2.07.148195)

**Returns:** [Array](../topics/Array.md) of [String](../topics/String.md)s

## Examples

### Example 1

```sqf
_magazinesDetail = magazinesDetail player;
/*
[
    "6.5 mm 30Rnd Sand Mag(30/30)[id/cr:10000003/0]",
    "Chemlight (Green)(1/1)[id/cr:10000020/0]",
    "6.5 mm 30Rnd Sand Mag(30/30)[id/cr:10000012/0]",
    "RGO Grenade(1/1)[id/cr:10000016/0]",
    "RGO Grenade(1/1)[id/cr:10000017/0]",
    "6.5 mm 30Rnd Sand Mag(30/30)[id/cr:10000070/0]",
    "PCML Missile(1/1)[id/cr:10000072/0]",
    "6.5 mm 30Rnd Sand Mag(30/30)[id/cr:10000001/0]",
    "9 mm 16Rnd Mag(16/16)[id/cr:10000013/0]"
]
*/
```

### Example 2

```sqf
_magazinesDetail = magazinesDetail Mi_48;
/*
[
    "30 mm HE Tracer (Green) Shells(250/250)[id/cr:10000043/0]",
    "30 mm APDS Tracer (Green) Shells(250/250)[id/cr:10000044/0]",
    "Designator Batteries(1/1)[id/cr:10000045/0]",
    "Scalpel 4x(4/4)[id/cr:10000049/0]",
    "Skyfire 19x(19/19)[id/cr:10000051/0]",
    "Skyfire 19x(19/19)[id/cr:10000052/0]",
    "Scalpel 4x(4/4)[id/cr:10000053/0]"
]
*/
```

## See also

[currentMagazineDetail](../commands/currentMagazineDetail.md) · [magazines](../commands/magazines.md) · [magazinesTurret](../commands/magazinesTurret.md) · [magazinesAmmo](../commands/magazinesAmmo.md) · [magazinesAmmoFull](../commands/magazinesAmmoFull.md) · [magazinesDetailUniform](../commands/magazinesDetailUniform.md) · [magazinesDetailVest](../commands/magazinesDetailVest.md) · [magazinesDetailBackpack](../commands/magazinesDetailBackpack.md)

## Community notes

**Leopard20** — 2021-09-12

To return the ammo count in each magazine, you can use this code:

```sqf
magazinesDetail player apply {
    private _reverse = reverse _x;
    private_i1 = (_reverse find "[)") + 1;
    private_i2 = (_reverse find ["/", _id1]) + 1;
    private_i3 = _reverse find ["(", _id2];
    parseNumber reverse (_reverse select [_i2, _i3 - _i2]); // return cnt
};
```

<sub>Source: [BI Community Wiki — magazinesDetail](https://community.bistudio.com/wiki/magazinesDetail) (revision 377200).</sub>
