I have been working on a dynamic attribute system that is based on the new map variable, introduced in UE4 version 4.15. It handels stuff like: Health with recovering, shields, regeneration, depletetion and effects. Experience bars that calculate a rise in required experience, leveling, skipping levels and event subtracting experience. Stats that can be bufft and nerft static and temporary and Scores that can be clamped to a min and max value.
I am very happy to announce that it is finally on the marketplace. [HR][/HR]
[SIZE=12px]Attribute System - Marketplace Link[/SIZE]
Supported Engine Versions: 4.22 - 4.24
- V 1.0 - Release February 2nd 2018
- V 1.1 - Bug fixes
- V 1.2 - Release January 7th 2019
This System provides a variety of functions, that can handle modules for calculation of Experience, Bars, Stats and Scores.
The package is aimed to imitate popular game stats characteristics for example from RPGs. And It provides an easy integration into your project, just by adding one component to the actor.
The focus of the project is the diversity of use cases and Customization of stats that can be added, removed or modified during runtime.
The whole project is setup in blueprint in a clean and easy to understand fashion.
- Dynamic addition and removal of Attributes at runtime
- Bars for Health, Mana, Stamina etc.
- Regeneration and Depletion over time
- Bar Recovering, Shield, Effects
- Stats for Vitality, Defence, Luck etc.
- Static and temorary Buffs and Nerfs
- Experience Bars for Level, Charisma, Reputation etc.
- Calculating required experience based on float curves
- Scores for Coins, Credits, Goals etc.
- Dynamic min and max Values
- Dynamic Debug UI
- Straight and circular UI Bar Material
- Demo Overlap Volumes
- Demo Teleporters
It is important to know that the system is **NOT **network replicated, even though the system runs on server event. Normally it is only necessary to run the execution on the server and set the variables to replicated to make them accessible for listen server and clients, but map and set variables can`t be put to replicated. So I am not sure if there is another way, but that is what I was able to figure out.
The system is meant to run all unreal supported platforms since it doesn´t use the Tick Event.
If you have any question, wishes or recommendation please post it in the forum below.