Welcome back.
Now that we have debuff type gameplay tags, our aura damage gameplay ability needs to know some parameters
related to debuffs.
So let's open public ability system abilities and get aura damage gameplay ability open.
So we have damage and damage type.
Let's make some parameters for debuffs now.
Now if you wanted this to scale by level, you'd make a scalable float just like damage.
In fact, all of the parameters we're about to make here could be scalable floats and in a serious RPG
they probably would be.
But that's going to create a lot more work for us to do, especially with something we already know
how to do.
So if you'd like to make these scalable floats and create a curve table and add curves for each of these,
feel free.
But I'm just going to make these floats that we can set on the gameplay ability itself rather than go
through all of the steps to make these scalable floats.
So I'm going to have a float called Debuff Chance.
And I'll give it a default value of 20.
But we'll have to set that in the blueprint.
So it's going to get a new property with edit defaults only, of course, but let's make the rest of
our parameters.
We're going to have a float called Debuff Damage.
We'll set that to five by default.
Now debuff damage is what our debuffs are going to apply every so often while that debuff is active.
In other words we're going to apply debuff damage every debuff frequency.
So we're going to have a float called debuff frequency.
And by default I'd like to apply that debuff damage every one second.
Just making room for the new properties that we can place there and the debuff will be active for a
duration.
So we're going to have a debuff duration as well.
And the duration can be, let's say five seconds.
You can even make this a randomized duration and have a duration min and max and those two could be
curves.
So this can get quite deep, but we're just going to have a debuff chance, a debuff damage, a debuff
frequency and a debuff duration and these can all be overridden in the gameplay ability blueprint.
So they're all going to be edit defaults only category damage.
And once we create a damage gameplay effect spec based on our damage effect class, we can set set by
color magnitudes for each of these, which means if we're going to set some set by color magnitudes
for debuff chance damage, frequency and duration, then we need gameplay tags to identify those set
by color magnitudes.
So this brings us back to our gameplay tags.
And these will be native just like our debuff types.
So let's go to aura gameplay tags and just under our debuff types we're going to have more debuff tags.
So we're going to have debuff chance.
Debuff damage debuff frequency and debuff duration.
So let's make an gameplay tag called debuff underscore chance.
And I'm going to copy.
Gameplay tag debuff with the underscore and we're going to have debuff damage.
We're going to have debuff duration and debuff frequency.
So in gameplay effects, you would call this the period, right?
So now we have declared these gameplay tags.
We need to actually create them, so we'll make those here.
Let's find where we're creating the debuff tags.
Just under debuffs.
We'll keep it in the debuff section, but I'm going to have four more tags and they're going to be debuff
dot chance.
And the name will be debuff chance.
And we'll just have debuff chance for the f string.
In addition to that, we need debuff damage and we're just going to replace burn with damage.
We'll say debuff damage and the string.
The next one is going to be debuff duration.
Just performing the same steps here debuff duration.
And finally we have debuff frequency.
So there we go.
We now have our debuff information tags.
We could have called them debuff info chance and so on, but this is fine.
We just need tags that we can identify these parameters by because we plan on using these in our effects
spec by setting gameplay effect parameters.
So that's the next step for debuffs.
Now when we create a gameplay effect spec for damage, we're now going to be setting lots of set by
caller magnitudes.
If we take a look at where we're doing it for a projectile spell, our one and only offensive spell,
we see that we're assigning the tag set by caller magnitude for the damage based on the damage type
right here.
Then later in the exact calc, we loop over damage types to get that damage set by caller magnitude.
And we're going to handle that in the next video as this is something that could use a nice helper function
to handle all of this for us.
So we'll handle that next.
I'll see you soon.