Overview

The Attribute System is a simple plugin that facilitates the creation, modification, and management of fully replicated attributes that can be assigned to any Actor at runtime.

Although entirely standalone, the Attribute System Plugin is a core component of the Shooter Sandbox where it’s used to handle a range of different values from ammunition counts and recoil intensity to the health of the player character.

Fires Farther Afield

The Attribute System features in my new (and not officially announced) first-person shooter, Fires Farther Afield. This project will be the vehicle through which this plugin, alongside the other components of the Shooter Sandbox, will be thoroughly battle tested.

Utilising Gameplay Tags, any Actor with the BPI_AttributeSystem Interface can reach out and modify another Actor’s Attributes, automatically replicating them as required and optionally firing logic based on the result. You can find some example use cases on the plugin’s documentation page.

The configuration settings for some of the Attributes attached to the Shooter Sandbox Pawn.

Comparisons to the Gameplay Ability System

I’ve made it no secret that this plugin was directly inspired by my work with Epic’s Gameplay Ability System, and it’s my hope that it’s embraced as a more accessible (but less powerful) alternative for those who want to stick with Blueprint. With one small but very important exception the entire system has been created using Blueprint, and it is entirely modifiable within the Editor.

The Gameplay Ability System has a well-deserved reputation for having a significant barrier of entry, and it should be treated as an all-encompassing system. On the other side of the complexity spectrum, the Attribute System is a standalone plugin that simply adds replicated attributes to your game. There are no black boxes and nothing special or sneaky is going on under the hood, for both better and worse.

I acknowledge that when compared to GAS the Attribute System plugin will appear a little threadbare. It is my hope that as I use and expand these systems in my own personal projects both here on techarthub and elsewhere that we’ll all benefit from the regular updates. If you’re looking for a specific feature, please reach out!

A note on C++ usage

It’s always been one of my primary goals to keep the amount of C++ code in my Shooter Sandbox project to an absolute minimum, and to allow for as much development to happen within the editor as possible. Unfortunately this doesn’t always work out, and in this case it was the inability for the Attribute System plugin to be able to automatically add Gameplay Tags to your project.

This is because plugin configuration files are not automatically read by Unreal, as the documentation makes clear.

As a workaround, each of the Shooter Sandbox plugins has a class called [PluginName]GameplayTags that will add the default Gameplay Tags used by the system for you. You can read more about this class in the Attribute System documentation.

Features

  • Fully accessible in-editor with Blueprints
  • A modular approach makes the system very easy to adapt and extend
  • Fully replicated and designed with multiplayer in mind

Includes

  • 2 Blueprint Actor Components (The Attribute System and base Attribute class)
  • 1 Blueprint Interface
  • 1 Struct

Version History

VersionDateDescription
1.02024-10-31Initial UE5.4 release

I am a technical artist from Adelaide, Australia. I created techarthub to share my knowledge and love for this industry. I hope you feel it too!

More assets

Add customizable and fully replicated closed captions to your project!
A fully customizable grid material that can operate at any scale. Perfect for prototyping.
Replicating the blinding light and deafening noise of a flashbang/stun grenade.
A drag and drop orbit camera solution that comes with pan, dolly, and zoom options.
Scroll to Top