Skip to content
Games by Hyper
Sign Up / Login
Games by Hyper

Generic

  • QuickStart
  • Support
  • Purchase Options
  • Roadmap
  • FAQ
  • Learning
  • For Professional Studios

Templates

  • Template Logic and flexibility

Shared Infrastructure

  • Gameplay Tags
  • Datamanagement
  • Folder Structure

Item Management

  • Inventory
  • Jigsaw Inventory
  • List Inventory
  • Respawn Actor Manager
  • Hotbar
  • Crafting
  • Item Allocator
  • Vendor
  • Icon Creator
  • Interactive Foliage
  • Inspection System

Interaction and Feedback

  • Interaction System
  • Outliner System

UI

  • Main Menu
  • HUD
  • Information Prompt

Locomotion

  • Animation Framework
  • Extended Movement Component
  • Leader Posing
  • Custom-Skeletal-Meshes

Combat

  • Attribute Manager
  • Team Affiliation
  • Equipment Manager
  • Ragdoll System
  • Ability System
  • Target Locking
  • Weapon Attachment System
  • Limb System
  • Combat-framework

Construction and Survival Mechanics

  • Building System
  • Mineable Rocks
  • Tree Cutting
  • Farming System
  • Fishing System
  • Swimming System

Game Management

  • Global Save System
  • Respawn System
  • Session Manager
  • Game Mode System
  • Spectate System
  • Player Manager
  • Team Manager
  • Score Manager
  • Guild Manager
  • Party Manager

Multiplayer

  • Online Multiplayer Framework
  • Replication Subsystem
  • Chat System
  • Console Command Manager

AI

  • Basic AI
  • NPC Behavior System
  • Perception System
  • Companion System

Exploration and Narrative

  • Dialogue System
  • Memory System
  • Quest Manager
  • Map System
  • Teleport System
  • Guide System
  • Event Manager
  • Visual Novel System
  • Dungeon Adventure Kit
  • Region Manager

Progression and Leveling

  • Level Manager
  • Unlock System
  • Reputation System

Security and Control Systems

  • Drone System
  • Lock System
  • Security System
  • Defense System
  • Defense System – Modern
  • Defense System – Primitive

Character and Player Systems

  • Character Creator
  • Class System
  • Mount System
  • First Person

Environmental Control and Immersion

  • Time and Day Night Cycle management
  • Weather System
  • Background Music System
  • Footstep System

Environment Building

  • Mesh to Actor Swap System
  • Auto Landscape
  • Cave
  • Deform
  • Ditch
  • Exclusion
  • Forest
  • Forest-Basic
  • Lake
  • Level Instances
  • Mesh
  • Path
  • Props
  • Spline
  • Village
View Categories
  • Home
  • Docs
  • Equipment Manager

Equipment Manager

11 min read

Equipment Manager #

This is an abtract video about the core features of the equipment manager:

Play

We also have a full tutorial in our Udemy course on how to setup a basic version (focus on the core principles explaining the why instead of only how) from scratch.

Want to know how to change equipment in an example project like MST Pro? Check out this video on this timestamp:

Play

Equipment manager overview #

Important: Read the inventory documentation first to understand the container system and how items work.

Equipment Container #

The equipment manager uses a single container to store all equipped items. This container is managed by AC_Inventory_Advanced and holds items the character is currently wearing or wielding.

Equipment Container Structure:

AC_Inventory_Advanced

├─ Default Container (backpack)
└─ Equipment Container
 ├─ Equipment_Helmet
 ├─ Equipment_Chest
 ├─ Equipment_Weapon
 │ ├─ Ammo (nested container)
 │ └─ Attachments (nested container)
 └─ Other equipment items

All equipment items are stored inside this single equipment container. Each equipment item has a linked slot (such as Head, Primary Weapon, etc.) that determines where it's displayed and what it affects.

Important: Use Equip/Unequip Functions

You cannot simply add items to the equipment container. You must use the Equip and Unequip functions. Equipment slots themselves are not restricted by the container – the equip/unequip functions handle validation, stat application, and visual updates.

Equipment vs Inventory:

  • Equipment Container: Items currently worn/wielded by character (affects stats and appearance)
  • Default Container: Items stored but not equipped (no effect on character)

Equipment Manager Component #

The AC_Inventory_Advanced component includes equipment manager functionality.

Equipment Manager Responsibilities:

  • Create equipment container at initialization
  • Manage equip/unequip operations
  • Apply/remove attribute bonuses from equipped items
  • Update character appearance based on equipment
  • Handle ammo consumption and reloading
  • Validate equipment changes
  • Trigger equipment events

Equipment Initialization:

On component initialization (BeginPlay):

  • Create equipment container
  • Configure linked slots (Head, Primary Weapon, etc.)
  • Load starting equipment (if configured)
  • Apply attributes from starting equipment

Equipment Events:

The equipment manager triggers event dispatchers:

  • Equipment added or removed: When an item is equipped or unequipped
  • Used Equipment: When equipped item is activated/used

These events allow other systems to react (update UI, change stats, etc.).

Equipment Attributes #

Equipment items can have attributes that are added to the character when equipped.

Attribute System:

Equipment attributes are defined in DT_Equipment and added to the character's attribute set when equipped. Examples:

  • Increase Max Health
  • Increase Armor
  • Increase Damage
  • Increase Movement Speed
Important: Use “Added” Value

When defining equipment attributes, always use the “Added” value, not the “Base” value. The base value will permanently add the attribute to the character, while the added value is temporary and removed when unequipping.

Example:
  • Helmet: Max Health Added = 50 (correct – removes when unequipped)
  • Helmet: Max Health Base = 50 (incorrect – permanently increases health)

Attribute Application:

When equipment is equipped:

  • Get equipment item's attributes from DT_Equipment
  • Apply “Added” values to character's attribute set
  • Trigger attribute changed events

When equipment is unequipped:

  • Get equipment item's attributes
  • Remove “Added” values from character's attribute set
  • Trigger attribute changed events

Armor and Damage:

Currently, the attribute manager does not support hit location-based armor checks. Armor attributes apply overall damage reduction, not location-specific protection.


Equipment system #

Linked Slots #

Each equipment item has a linked slot that determines where it can be equipped.

Linked Slot Types:

  • Head
  • Chest
  • Legs
  • Boots
  • Gloves
  • Primary Weapon
  • Secondary Weapon
  • Accessory 1, 2, 3
  • etc.

Equipment items are inventory items with a linked slot property. When equipping, the system uses this property to determine placement and what other equipment it might replace.

Starting Equipment #

Characters can spawn with equipment already equipped.

Starting Equipment Configuration:

In AC_Equipment_Manager_Advanced component, you can define starting equipment. This is an example configuration.

Starting Equipment Initialization:

When the character spawns:

  • Create equipment container
  • For each starting equipment entry:

a. Create the item from DT_Items

b. Use Equip function to equip item

c. Apply equipment attributes

  • Character is ready with equipment

This spawns one equipment container with all configured starting items inside it.

Full Mag Custom Container (Optional) #

For COD-style games where you want weapons to spawn with a full magazine and extra ammunition, you can use a custom container class.

BP_Container_FullMag:

This optional custom container class extends BP_Inventory_Container and includes initialization logic to add specific items when the weapon is equipped.

Purpose:

When a weapon is equipped, the Full Mag container automatically adds:

  • Full magazine of ammo
  • Additional magazines (e.g., 3 extra mags)

This is useful for games where players should always start with ammunition when picking up a weapon.

Note: This container only handles item initialization. All ammo management, reloading, and consumption is handled by the equipment manager, not the container itself. The items stored are regular ammo items.

Equipment actor system #

Equipment Actor Classes #

When equipment is equipped, an equipment actor is spawned to handle the visual representation and equipment-specific functionality. The system uses different actor classes for different equipment types.

Equipment Actor Hierarchy:

The equipment system has been split into multiple specialized actor classes. These are some of the implemented examples:

BP_Equipment_Advanced (Base Class):

  • Base class for all equipment actors
  • Handles basic equip/unequip logic
  • Manages visual mesh attachment
  • Common functionality shared by all equipment

BP_Equipment_Melee:

  • Extends BP_Equipment_Advanced
  • Handles melee weapon functionality
  • Melee attack logic
  • Hit detection for melee strikes

BP_Equipment_Ranged (Base for ranged weapons):

  • Extends BP_Equipment_Advanced
  • Base class for all ranged weapons
  • Common ranged weapon functionality
  • Aiming and firing logic

BP_Equipment_Ranged_Projectile:

  • Extends BP_Equipment_Ranged
  • Spawns physical projectiles
  • Projectile-based damage
  • Examples: grenade launchers, rocket launchers

BP_Equipment_Ranged_Hitscan:

  • Extends BP_Equipment_Ranged
  • Instant hit detection via line trace
  • No physical projectiles
  • Examples: Rifles, pistols, most firearms

Specific Implementations:

The system also includes specific equipment actor implementations for unique weapon types. For example, BP_Equipment_Bow.

Multiple Equipment Actors:

You can spawn multiple equipment actors on the same character simultaneously. This allows for:

  • Dual wielding weapons
  • Multiple visible equipment pieces (helmet, chest armor, weapon)
  • Each actor handles its own functionality independently

Equipment Actor Spawning:

When using the Equip function:

  • Equipment item is added to equipment container
  • System gets equipment class from DT_Equipment
  • Spawns appropriate equipment actor (Melee, Ranged_Projectile, etc.)
  • Attaches actor to character skeleton
  • Equipment actor handles its specific logic

Equip Animations #

Equipment uses latent animation montages for realistic equip/unequip actions.

Latent Equip Animation:

When equipping most items, the system uses a latent equip function that plays an animation montage over time. The weapon is only attached when the animation reaches a specific point.

Animation Montage Setup:

Animation montages contain notify markers:

  • Notify Attach: Placed where hand reaches holster/weapon
  • Finish: Placed at end of equip sequence

The attach notify is aligned to the exact frame where the hand reaches the holster, making the spawn appear natural.

Equip Without Animation:

For instant equipping (inventory screen, quick swaps), use the With Animation = false parameter. This skips the montage and immediately attaches the equipment.

Gender-Based Equipment #

The equipment system supports gender-specific equipment and animations.

Switch Animation Layer Based on Gender:

Each piece of equipment can use different animation layers for different genders. For example, unarmed animations will look different on masculine vs feminine characters.

Animation Layer Configuration:

In DT_Equipment, set:

  • Masculine Animation Layer: Animation blueprint for masculine characters
  • Feminine Animation Layer: Animation blueprint for feminine characters

When equipment is equipped, the system checks the character's gender and applies the appropriate animation layer.

Gender-Restricted Equipment:

You can restrict certain equipment to specific genders. For example, a skeletal mesh body armor designed for masculine characters can be limited to that gender.

Configuration in DT_Equipment:

  • Should Check Gender Before Equip: Enable gender validation
  • Accepted Gender: Which gender(s) can equip this item
Example Masculine Armor:
  • Should Check Gender Before Equip: ✓
  • Accepted Gender: Masculine
Example Feminine Armor:
  • Should Check Gender Before Equip: ✓
  • Accepted Gender: Feminine
  • Different skeletal mesh and settings

Setting Character Gender:

Gender is set on the character's Extended Movement Component (Basic or Advanced).

The equipment system reads this gender value to:

  • Validate equipment restrictions
  • Apply correct animation layers
  • Ensure visual consistency

Enhanced Input System:

The project uses the Enhanced Input System plugin for character controls. If Enhanced Input is enabled, all controls work automatically.

These inputs are used in the Extended Movement Component, which handles character movement and camera control. If you don't want to use Enhanced Input, you must replace all input implementations.


Data table setup #

The equipment system uses two data tables that cross-reference each other: DT_Items and DT_Equipment.

DT_Items and DT_Equipment Cross-Referencing #

DT_Items contains inventory properties for all items including equipment:

  • Item Type: Equipment
  • Linked Slot: Which equipment slot (Head, Primary Weapon, etc.)
  • Icon, Name, Description: UI display
  • Weight, Value: Base stats
  • Equipment Reference: Points to DT_Equipment row (same name)

DT_Equipment contains equipment functionality:

  • Equipment Class: BP_Equipment_Melee, BP_Equipment_Ranged_Hitscan, etc.
  • Skeletal Mesh: Visual mesh
  • Equip/Unequip Animation Montages: Latent animations
  • Socket Name: Attachment point on skeleton
  • Animation Layers: Masculine/Feminine animation blueprints
  • Attributes: Stat bonuses (armor, damage, etc.)
  • Item Reference: Points to DT_Items row (same name)

Bidirectional Link:

Both tables must reference each other using the same row name. For example:

DT_Items row “Sword_Iron”:

  • Equipment Reference → Sword_Iron (in DT_Equipment)

DT_Equipment row “Sword_Iron”:

  • Item Reference → Sword_Iron (in DT_Items)

This creates a complete link between inventory data and equipment functionality.

Equipment Gameplay Tags #

Equipment items use Gameplay Tags for categorization and filtering.

Common Equipment Tags:

  • 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 (rifles, pistols)
  • Equipment.Weapon.Ranged.Projectile: Projectile ranged weapons (bows, launchers)

Tag Usage:

Assign tags in DT_Items for each equipment item. These tags are used to:

  • Filter equipment by type
  • Check equipment requirements
  • Apply category-specific logic
  • Organize equipment in UI

Creating New Tags:

  • Open Project Settings → Gameplay Tags
  • Add new tags under Equipment hierarchy
  • Follow naming convention: Equipment.SlotType or Equipment.Weapon.WeaponType
  • Assign to items in DT_Items

Equipment functions #

Equip Function #

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

Parameters:

  • Item Struct: The item to equip
  • Linked Slot: Which equipment slot (Head, Primary Weapon, etc.)
  • With Animation: Whether to play equip animation

Equip Process:

  • Validate item can be equipped
  • Validate item matches linked slot
  • If slot occupied, unequip current item first
  • Remove item from inventory container
  • Add item to equipment container
  • Apply equipment attributes
  • Update character visuals
  • Play animation (if With Animation = true)
  • Trigger Equipment added or removed event
  • Return success

Equip from Inventory:

Unequip Function #

The Unequip function removes an item from the equipment container to inventory.

Parameters:

  • Linked Slot: Which equipment slot to unequip
  • With Animation: Whether to play unequip animation

Unequip Process:

  • Get item in linked slot
  • Check if slot has item
  • Check if inventory has space
  • Remove item from equipment container
  • Add item to inventory container
  • Remove equipment attributes
  • Update character visuals
  • Play animation (if With Animation = true)
  • Trigger Equipment added or removed event
  • Return success

Equipment Events #

The equipment manager triggers event dispatchers when equipment changes.

Equipment added or removed:

Triggered when:

  • Item is equipped
  • Item is unequipped

Use this to:

  • Update equipment UI
  • Recalculate character stats
  • Update character appearance

Used Equipment:

Triggered when:

  • Equipped item is activated/used
  • Example: Weapon fired, tool used, consumable activated

Use this to:

  • Play use animations
  • Apply item effects
  • Update UI feedback

How to guides #

How to Set Up Equipment Manager #

Step 1: Configure Equipment Container #

In AC_Inventory_Advanced component:

  • Equipment container is created automatically
  • Configure linked slots (Head, Primary Weapon, etc.)

Step 2: Define Equipment in DT_Items #

For each equipment item:

  • Set item type to Equipment
  • Set linked slot (Head, Primary Weapon, etc.)
  • Configure visual meshes
  • Define attributes in DT_Equipment

Step 3: Use Equip/Unequip Functions #

In your player controller or UI:

  • Call Equip Item to equip items
  • Call Unequip Item to unequip items
  • Listen to Equipment added or removed event

How to Configure Starting Equipment #

Step 1: Open AC_Inventory_Advanced #

Select your character blueprint and find the inventory component.

Step 2: Configure Starting Equipment Array #

Add entries for each starting item.

Step 3: Test in Game #

  • Place character in level
  • Start play session
  • Verify equipment is equipped
  • Check attributes are applied
  • Trigger Equipment added or removed event
  • Return success

How to Add New Equipment #

This guide explains the complete workflow for adding new equipment to your project.

Step 1: Add Equipment to DT_Items #

  • Open DT_Items data table
  • Add a new row for your equipment
  • Configure:
    • Item Type: Equipment
    • Linked Slot: Head, Primary Weapon, etc.
    • Icon: UI icon for the item
    • Name: Display name
    • Description: Item description
    • Weight, Value: Base stats

Step 2: Add Equipment to DT_Equipment #

  • Open DT_Equipment data table
  • Add a new row with the same name
  • Configure:
    • Equipment Class: BP_Equipment_Melee, BP_Equipment_Ranged_Hitscan, etc.
    • Skeletal Mesh: Visual mesh
    • Equip Animation Montage: Animation when equipping
    • Unequip Animation Montage: Animation when unequipping
    • Socket Name: Attachment point on skeleton
    • Masculine/Feminine Animation Layers: Gender-specific animations
    • Attributes: Stat bonuses (armor, damage, etc.)

Step 3: Cross-Reference the Tables #

  • In DT_Items, set Equipment Reference to point to your DT_Equipment row
  • In DT_Equipment, set Item Reference to point to your DT_Items row
  • This creates the bidirectional link

Step 4: Add Gameplay Tag #

  • Open Project Settings → Gameplay Tags
  • Add appropriate tag for your equipment:
    • Equipment.Helmet
    • Equipment.Weapon.Melee
    • Equipment.Weapon.Ranged.Hitscan
    • etc.
  • Assign tag to item in DT_Items

Step 5: Configure Equipment Blueprint (If Custom Logic Needed) #

If your equipment needs custom functionality:

  • Open the equipment actor blueprint (e.g., BP_Equipment_Melee)
  • Add your custom logic
  • You can:
    • Override existing functions
    • Add new functionality
    • Connect to animation notifies
    • Handle special interactions

Step 6: Test Your Equipment #

  • Place an equip pad in the map (or use starting equipment)
  • Configure it to spawn your new equipment
  • Start play session
  • Test equipping the item
  • Verify:
    • Visual mesh appears correctly
    • Animations play properly
    • Attributes apply
    • Functionality works
What are your Feelings
Still stuck? How can we help?

How can we help?

Table of Contents
  • Equipment Manager
    • Equipment manager overview
      • Equipment Container
      • Equipment Manager Component
      • Equipment Attributes
    • Equipment system
      • Linked Slots
      • Starting Equipment
      • Full Mag Custom Container (Optional)
    • Equipment actor system
      • Equipment Actor Classes
      • Equip Animations
      • Gender-Based Equipment
    • Data table setup
      • DT_Items and DT_Equipment Cross-Referencing
      • Equipment Gameplay Tags
    • Equipment functions
      • Equip Function
      • Unequip Function
      • Equipment Events
    • How to guides
      • How to Set Up Equipment Manager
      • Step 1: Configure Equipment Container
      • Step 2: Define Equipment in DT_Items
      • Step 3: Use Equip/Unequip Functions
      • How to Configure Starting Equipment
      • Step 1: Open AC_Inventory_Advanced
      • Step 2: Configure Starting Equipment Array
      • Step 3: Test in Game
      • How to Add New Equipment
      • Step 1: Add Equipment to DT_Items
      • Step 2: Add Equipment to DT_Equipment
      • Step 3: Cross-Reference the Tables
      • Step 4: Add Gameplay Tag
      • Step 5: Configure Equipment Blueprint (If Custom Logic Needed)
      • Step 6: Test Your Equipment

© 2025 Games by Hyper

X Reddit Patreon Discord Linkedin YouTube

Review Cart

No products in the cart.

We noticed you're visiting from Netherlands. We've updated our prices to Euro for your shopping convenience. Use United States (US) dollar instead. Dismiss

  • Hyper Bundle Configurator
  • Shop
    • Game Templates
    • Courses
    • Loyalty Store
    • Survival Modules
    • RPG Modules
    • Environment Building
    • Browse All
  • My account
  • Become a Member
  • Cart
  • Get Help
    • FAQ
    • Upgrade your Game Template
    • Documentation
  • About Hyper
  • News & Updates