Madboy James
Member
Hi,
I have an ability system that I have integrated with Opsive ability system. However, I have come to the conclusion that balancing a power's active states within an Opsive ability is proving... messy.
So, I am going to use Opsive abilities solely for my "powers" implementation.
My question is "What would an Opsive engineer recommend, at an architectural level, for creating reusable code blocks for powers?" and "What tools or features are already included in opsive systems that I would be wise to utilize?"
I'll list some examples of my scope:
--Ability/Power Use Management--
-A character can have multiple active and passive powers.
-Active powers are based on recharge (cooldown) or charge (like ammo or grenades)
-Recharge bases powers can optionally share a cooldown
-Charge based powers optionally share a charge pool.
--Ability/Power Lifetime--
-Powers can be on-off (like activating permanent energy armor that slows the character while active)
-Powers can be instant use (like instantly firing a wrist rocket)
-Powers can (and often will) be equippable (such as equipping a rechargeable drone)
-Powers can often be interrupted by stagger, or by activating other powers or abilities, depending on the state of the power (such as a drone being canceled by another power before it is launched, but not able to be canceled while the "throw drone" animation is being played)
--Ability/Power Use--
-Power effects can affect the user or another target. (including effects that may persist after the ability finishes)
-Powers can have any number of effects. (In my power system I injected effects into power-wrappers for runtime... It seems like a good idea, but I don't know if there is a more reusable way)
-A Power is "active" as long as any effect is still active.
--Ability/ Power Upgrades--
-Powers can have "upgrades" which modify base values, add new effects, change existing effects, or change.
-Upgrades are non-procedural, and are catered to each ability specifically. (even though they are non-procedural, they still can be injected)
While I am providing a whole bunch of information, it's just to give some context. I'm primarily looking for architecture suggestions and to be pointed to existing features that may help.
Also I know you guys have all sorts of other requests to respond to, as well as actual code to write... so feel free to respond to this in parts, or in a week, or whatever. I am in no rush, and I recognize that this may be a time consuming question.
Thank you for your support and for the UCC asset.
I have an ability system that I have integrated with Opsive ability system. However, I have come to the conclusion that balancing a power's active states within an Opsive ability is proving... messy.
So, I am going to use Opsive abilities solely for my "powers" implementation.
My question is "What would an Opsive engineer recommend, at an architectural level, for creating reusable code blocks for powers?" and "What tools or features are already included in opsive systems that I would be wise to utilize?"
I'll list some examples of my scope:
--Ability/Power Use Management--
-A character can have multiple active and passive powers.
-Active powers are based on recharge (cooldown) or charge (like ammo or grenades)
-Recharge bases powers can optionally share a cooldown
-Charge based powers optionally share a charge pool.
--Ability/Power Lifetime--
-Powers can be on-off (like activating permanent energy armor that slows the character while active)
-Powers can be instant use (like instantly firing a wrist rocket)
-Powers can (and often will) be equippable (such as equipping a rechargeable drone)
-Powers can often be interrupted by stagger, or by activating other powers or abilities, depending on the state of the power (such as a drone being canceled by another power before it is launched, but not able to be canceled while the "throw drone" animation is being played)
--Ability/Power Use--
-Power effects can affect the user or another target. (including effects that may persist after the ability finishes)
-Powers can have any number of effects. (In my power system I injected effects into power-wrappers for runtime... It seems like a good idea, but I don't know if there is a more reusable way)
-A Power is "active" as long as any effect is still active.
--Ability/ Power Upgrades--
-Powers can have "upgrades" which modify base values, add new effects, change existing effects, or change.
-Upgrades are non-procedural, and are catered to each ability specifically. (even though they are non-procedural, they still can be injected)
While I am providing a whole bunch of information, it's just to give some context. I'm primarily looking for architecture suggestions and to be pointed to existing features that may help.
Also I know you guys have all sorts of other requests to respond to, as well as actual code to write... so feel free to respond to this in parts, or in a week, or whatever. I am in no rush, and I recognize that this may be a time consuming question.
Thank you for your support and for the UCC asset.