---
title: Equipment Manager
description: "**Important:** Read the Inventory documentation first so the container system, item data, and item movement rules are clear before configuring equipment. # Overview The Equipment Manager handles equipped items, linked equipment slots, equipment actors, animation-driven equip flow, attribute application, and…"
url: "https://gamesbyhyper.com/docs/combat/equipment-manager/"
updated: "2026-05-25"
category: Combat
---

# Equipment Manager

**Important:** Read the Inventory
 documentation first so the container system, item data, and item movement rules
 are clear before configuring equipment.

# Overview

The Equipment Manager handles equipped items, linked
 equipment slots, equipment actors, animation-driven equip flow, attribute
 application, and equipment-specific events. It builds on **AC_Inventory**:
 equipment is still item data, but equipped items are moved through validated
 equip and unequip functions instead of being placed directly into arbitrary
 slots.

For shared setup
 guidance, see the [Migration
 Guide](/docs/getting-started/migrate-and-integrate-hyper/) and [Integration
 Guide](/docs/getting-started/migrate-and-integrate-hyper/). Use the [System Atlas](/docs/system-atlas/) to look up
 functions, variables, events, components, and ownership references. Use this
 page for Equipment Manager-specific setup, runtime behavior, extension points,
 and integration notes.

**Related setup:** [Make your own
 Equipment](/docs/getting-started/make-your-own-equipment/), [Set
 Up Inventory for the Player](/docs/getting-started/set-up-inventory-for-the-player/).

The system is responsible for:

- Creating and managing the equipment container. Equipping and unequipping items through controlled functions. Applying and removing equipment attribute bonuses. Spawning visual and functional equipment actors. Handling equip animations and instant equip paths. Supporting gender-specific equipment and animation layers. Triggering events when equipment changes or is used. Related Videos Version note: Some videos may have been recorded before V4. The concepts still apply, but asset names, component names, and folder locations may differ. Treat the written V4 documentation as the source of truth. Equipment Manager walkthrough
  [Creating and managing the equipment container. Equipping and unequipping items through controlled functions. Applying and removing equipment attribute bonuses. Spawning visual and functional equipment actors. Handling equip animations and instant equip paths. Supporting gender-specific equipment and animation layers. Triggering events when equipment changes or is used. Related Videos Version note: Some videos may have been recorded before V4. The concepts still apply, but asset names, component names, and folder locations may differ. Treat the written V4 documentation as the source of truth. Equipment Manager walkthrough](https://www.youtube-nocookie.com/embed/UWMy9MWHO5I?rel=0&modestbranding=1)
- Your first hour in the Multiplayer Survival Template [MST]
  [Your first hour in the Multiplayer Survival Template [MST]](https://www.youtube-nocookie.com/embed/HWQqVuqcdE8?rel=0&modestbranding=1)

# Equipment Container

The equipment manager uses a single equipment container
 owned by **AC_Inventory**.
 That container stores the items the character is currently wearing or wielding.

```
AC_Inventory
```

```
├─ Default Container (backpack)
```

```
└─ Equipment Container
```

```
   ├─ Equipment_Helmet
```

```
   ├─ Equipment_Chest
```

```
   ├─ Equipment_Weapon
```

```
   │  ├─ Ammo (nested container)
```

```
   │  └─ Attachments (nested container)
```

```
   └─ Other equipment items
```

Each equipment item has a **linked slot**, such as **Head** or **Primary Weapon**, that
 determines where it appears and what it affects.

**Use the Equip and Unequip functions.** Do not add items directly to the equipment container. The equip and
 unequip functions handle validation, stat changes, visuals, animation, and
 events.

| **Container** | **Purpose** |
| --- | --- |
| **Equipment Container** | Items currently worn or wielded by the character. These affect stats and appearance. |
| **Default Container** | Stored items that are not equipped and do not affect the character. |

# Equipment Manager Component

The equipment functionality lives on **AC_Inventory**. On
 initialization, it creates the equipment container, configures linked slots,
 loads starting equipment when configured, and applies attributes from equipped
 starting items.

![Equipment Manager Component screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-screenshot-001.png)

Equipment events allow UI, stats, animation, and other
 systems to respond to changes:

- **Equipment added or removed:** Triggered when an item is
   equipped or unequipped.
- **Used Equipment:** Triggered when an equipped item is activated or
   used.

# Equipment Attributes

Equipment attributes are defined in **DT_Equipment** and
 applied to the character's attribute set while the item is equipped. Common
 examples include Max Health, Armor, Damage, and Movement Speed.

**Use Added values for equipment bonuses.** Use **Added**,
 not **Base**,
 when defining equipment attribute changes. **Base** changes can become permanent; **Added** values are
 temporary and can be removed when the item is unequipped.

| **Example** | **Result** |
| --- | --- |
| Helmet: Max Health **Added** = 50 | Correct. The bonus is removed when the helmet is unequipped. |
| Helmet: Max Health **Base** = 50 | Incorrect for equipment bonuses. This permanently increases the attribute. |

Equip flow applies the item's **Added** values and
 triggers attribute change events. Unequip flow removes those values and
 triggers the same update path.

**Armor note:**
 The attribute manager currently applies armor as overall damage reduction. It
 does not support hit-location-based armor checks.

# Linked Slots and Starting Equipment

A linked slot controls where an equipment item can be
 equipped. Examples include Head, Chest, Legs, Boots, Gloves, Primary Weapon,
 Secondary Weapon, and Accessory slots.

![Linked Slots screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-linked-slots-screenshot-002.png)

Starting equipment can be configured so characters spawn
 with items already equipped.

![Starting Equipment screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-starting-equipment-screenshot-003.png)

When the character spawns:

1. The equipment container is created.
2. Each configured starting equipment entry creates the
    matching item from **DT_Items**.
3. The system equips each item through the normal **Equip** function.
4. Equipment attributes are applied.
5. The character starts with the configured equipment
    active.

# Full Mag Custom Container

**BP_Container_FullMag**
 is an optional custom container class for COD-style weapon setups where a
 weapon should spawn with a full magazine and extra ammunition.

The class extends **BP_Inventory_Container**
 and adds initialization logic when the weapon is equipped. It can add a full
 magazine and additional magazines, such as three extra mags.

**Note:** This container only
 initializes the ammo items. Ammo management, reloading, and consumption are
 handled by the equipment manager. The stored ammo entries remain regular ammo
 items.

# Equipment Actor System

When an item is equipped, the system spawns an equipment
 actor for the visual representation and equipment-specific behavior.

![Equipment Actor Classes screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-equipment-actor-classes-screenshot-004.png)

The documented hierarchy includes:

- **BP_Equipment_Base:** Base class for equipment actors. Handles common
   equip and unequip behavior, mesh attachment, and shared functionality.
- **BP_Equipment_Melee:** Extends the base class for melee weapons, melee
   attack logic, and melee hit detection.
- **BP_Equipment_Ranged:** Base class for ranged weapons, including shared
   aiming and firing behavior.
- **BP_Equipment_Ranged_Projectile:** Ranged implementation that spawns
   physical projectiles, such as grenade launchers or rocket launchers.
- **BP_Equipment_Ranged_Hitscan:** Ranged implementation that uses
   line traces for instant hit detection, such as rifles and pistols.
- **BP_Equipment_Bow:** Specific equipment actor implementation for bow
   behavior.

![Equipment Actor Classes screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-equipment-actor-classes-screenshot-005.png)

Multiple equipment actors can exist on the same character
 at the same time. This supports visible armor pieces, weapons, dual wielding,
 or other equipment that needs independent functionality.

![Equipment Actor Classes screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-equipment-actor-classes-screenshot-006.png)

When using the **Equip**
 function, the system gets the equipment class from **DT_Equipment**, spawns
 the appropriate actor, attaches it to the character skeleton, and lets that
 actor handle its specialized logic.

# Equip Animations

Most equipment can use latent equip animations so
 attachment happens at the correct moment in the montage instead of instantly.

![Equip Animations screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-equip-animations-screenshot-007.png)

Animation montages use notify markers:

- **Notify Attach:** Placed where the hand reaches the holster or
   weapon.
- **Finish:** Placed at the end of the equip sequence.

![Equip Animations screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-equip-animations-screenshot-008.png)

The attach notify should align to the frame where the
 visual attachment should happen. For instant equip paths, such as
 inventory-screen swaps or quick changes, use **With Animation = false**. This skips the
 montage and attaches equipment immediately.

![Equip Animations screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-equip-animations-screenshot-009.png)

# Gender-Based Equipment

The equipment system supports gender-specific animation
 layers and equipment restrictions.

In **DT_Equipment**,
 configure:

- **Masculine Animation Layer:** Animation blueprint used for
   masculine characters.
- **Feminine Animation Layer:** Animation blueprint used for
   feminine characters.
- **Should Check Gender Before Equip:** Enables gender validation for the
   item.
- **Accepted Gender:** Defines which gender can equip the item.

![Gender-Based Equipment screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-gender-based-equipment-screenshot-010.png)

Example configurations:

- **Masculine armor:** Enable gender check and set Accepted Gender to
   Masculine.
- **Feminine armor:** Enable gender check, set Accepted Gender to
   Feminine, and use the matching skeletal mesh and settings.

Character gender is set on the character's **Extended Movement Component**,
 Basic or Advanced. The equipment system reads that value for validation,
 animation layer selection, and visual consistency.

The project uses the **Enhanced Input System** plugin for
 character controls. If Enhanced Input is enabled, controls work automatically.
 If the project does not use Enhanced Input, replace the input implementations
 used by the **Extended
 Movement Component**.

# Data Tables

The equipment system uses **DT_Items** and **DT_Equipment**. They
 cross-reference each other using the same row name.

| **DT_Items** | **DT_Equipment** |
| --- | --- |
| - **Item Type:** Equipment. - **Linked Slot:** Equipment slot such as Head or Primary Weapon. - **Icon, Name, Description:** UI display data. - **Weight, Value:** Base inventory data. - **Equipment Reference:** Points to the matching **DT_Equipment** row. | - **Equipment Class:** Equipment actor class such as **BP_Equipment_Melee** or **BP_Equipment_Ranged_Hitscan**. - **Skeletal Mesh:** Visual mesh. - **Equip/Unequip Animation Montages:** Animation assets for latent equip flow. - **Socket Name:** Attachment point on the character skeleton. - **Animation Layers:** Masculine and feminine animation blueprints. - **Attributes:** Equipment bonuses such as armor or damage. - **Item Reference:** Points to the matching **DT_Items** row. |

Example bidirectional link:

- **DT_Items** row **Sword_Iron**:
   Equipment Reference points to **Sword_Iron**
   in **DT_Equipment**.
- **DT_Equipment** row **Sword_Iron**:
   Item Reference points to **Sword_Iron**
   in **DT_Items**.

# Equipment Gameplay Tags

Equipment uses **Gameplay
 Tags** for categorization, filtering, requirements, UI grouping,
 and category-specific logic.

- **Equipment.Helmet:** Head slot equipment.
- **Equipment.Chestplate:** Torso slot equipment.
- **Equipment.Boots:** Foot slot equipment.
- **Equipment.Weapon.Melee:** Melee weapons.
- **Equipment.Weapon.Ranged.Hitscan:** Hitscan ranged weapons.
- **Equipment.Weapon.Ranged.Projectile:** Projectile ranged weapons.

![Equipment Gameplay Tags screenshot](/wp-content/uploads/docs/Combat/Equipment%20Manager/equipment-manager-equipment-gameplay-tags-screenshot-011.png)

To create new tags, open **Project Settings** → **Gameplay Tags**, add
 the tag under the Equipment hierarchy, follow the existing naming convention,
 and assign the tag in **DT_Items**.

# Equipment Functions

## Equip

The **Equip**
 function equips an item from inventory into the equipment container.

Inputs include the item struct, the linked slot, and **With Animation**.

1. Validate that the item can be equipped.
2. Validate that the item matches the linked slot.
3. If the slot is already occupied, unequip the current
    item first.
4. Remove the item from its inventory container.
5. Add the item to the equipment container.
6. Apply equipment attributes.
7. Update character visuals.
8. Play the equip animation when **With Animation**
    is true.
9. Trigger **Equipment
    added or removed**.
10. Return success.

## Unequip

The **Unequip**
 function removes an item from the equipment container and returns it to
 inventory.

Inputs include the linked slot and **With Animation**.

1. Get the item in the linked slot.
2. Check that the slot contains an item.
3. Check that the inventory has space.
4. Remove the item from the equipment container.
5. Add the item to the inventory container.
6. Remove equipment attributes.
7. Update character visuals.
8. Play the unequip animation when **With Animation**
    is true.
9. Trigger **Equipment
    added or removed**.
10. Return success.

## Events

- **Equipment added or removed:** Use this to update equipment UI,
   recalculate character stats, and refresh character appearance.
- **Used Equipment:** Triggered when an equipped item is activated, such
   as firing a weapon, using a tool, or activating a consumable. Use this for
   animations, effects, and UI feedback.

# Set Up Equipment Manager

1. Open the character blueprint and find the **AC_Inventory**
    component.
2. Configure the linked equipment slots, such as Head,
    Chest, Primary Weapon, and Secondary Weapon.
3. Define each equipment item in **DT_Items**.
4. Define the matching equipment behavior in **DT_Equipment**.
5. Use the **Equip**
    and **Unequip**
    functions from player controller, UI, or gameplay logic.
6. Listen for **Equipment
    added or removed** to update UI and dependent systems.

# Configure Starting Equipment

1. Select the character blueprint.
2. Open the inventory component.
3. Add entries to the starting equipment array.
4. Start a play session.
5. Verify the items are equipped, attributes are
    applied, visuals are correct, and equipment events fire as expected.

# Add New Equipment

1. Open **DT_Items**
    and add a new row for the equipment item.
2. Set **Item
    Type** to Equipment.
3. Set the **Linked
    Slot**, icon, display name, description, weight, and value.
4. Open **DT_Equipment**
    and add a row with the same name.
5. Set the equipment class, skeletal mesh, equip and
    unequip montages, socket name, animation layers, and attributes.
6. Cross-reference the rows by setting the **Equipment Reference**
    in **DT_Items**
    and the **Item
    Reference** in **DT_Equipment**.
7. Add or assign the appropriate Gameplay Tag under the
    Equipment hierarchy.
8. If the equipment needs custom behavior, open the
    equipment actor blueprint, such as **BP_Equipment_Melee**,
    and add the required logic.
9. Test by spawning the item through an equip pad or
    starting equipment, then verify the mesh, animations, attributes, and
    functionality.
