@ I got a question. Able Ability Blueprint is basically an “object” right? So as it is initiated from class, for being variable free and super fast replicated by just replicating the class - the ability after creation can track variables? What I mean… For example a level 6 cleric Casts “bless” - this spell gives contastant bonus to all targets in specific range for his level * 1 minute. Easy to do - Just add 6 stacks of minute long passive that on end removes one stact. On ability begin add bonus, on ability end remove bonus. Bonuses don’t stack. However for example a level 9 wizard casts stoneskin. Stoneskin gives damage reduction 10/+5 - and that is being added to his damage reduction table in the character and removed on ability end. BUT the spell also absorbs level *10 damage - so overall 90 damage.
My question is:
- Can I add a variable / local variable to the ability that is being set on creation and updates. when reach zero it stops the passive ability? If so - can it be “Public”?
- Can an ability bind to event dispatcher from example owner/target - so when the owner receives damage it can push the reduction absorbed damage to the ability so ability could track it?
- Can ability give access to variables via interface or “get passive abilities” (it gives object list not class list). So I can update the interface properly?
- Can variables be replicated, or should I avoid any replication on the abilities as they exist on both player and server without the need of replication for avoiding choking of network? Or maybe abilities are instanced in a way that using variables is not a good idea. Mostly any ability doesn’t have to track more than a single value. It doesn’t really have to replicated and in sync as it could get updates on client and server at same events and server wont be cheated by client side manipulation of this value.
Or simply put - How could I manage this stoneskin problem without creating variable on the character itself and changing the value there… I have 900 Abilities to create. Many of those should track something for short time and after finishing never bother with it again.
Edit: Ragard Variables - can I use dynamically Gameplay Tags ? Except for skills having tags like "spell.component.varbal for example… Can I add Tag Spell.Power.9 on start of ability?