Eval Collection: Devour

I have no idea if there’s an easier way to achieve the effect that this particular eval collection snippet wants to achieve. If there is, feel free to share it with me. Otherwise stick to my instructions.

Everytime an ally with the devouring touch deals damage, a portion of that damage will be added to his ATK and MAT. Of course you’re not limited to these params. You can increase/decrease whichever you want.

Requirements:

♦ YEP_BuffsStatesCore.js

Recommended:

♦ YEP_X_SkillCooldowns.js

dt1.PNG

So let’s look at one of Dean’s skills. This is the damage the skill will normally deal:

dt2.PNG

After being affected with the devouring touch and dealing some damage, it looks like this:

dt3.PNG

The damage surged quite a bit! The goal of Devouring Touch is to make an ally accumulate a lot of ATK and MAT as fast as possible in order to deal enormous damage before the state wears off.

 

To recreate this effect you’ll need to do the following:

In the damage box of your “Devouring Touch” spell, you’ll need to write this:

Devour_Container=0;0

I recommend setting the damage type to recover MP, so that there will not be any popups. What we just did here is defining a variable called Devour_Container. It holds the value 0. Remember that each time the skill is used the counter will be set to 0 so make sure the duration of the state is shorter than the cooldown of the skill.

After you did that create a “Devouring Touch” state. In the state’s notebox, use this:


<Custom Establish Effect>
user._paramPlus[2] -= Devour_Container;
user._paramPlus[4] -= Devour_Container;
Devour_Container += Math.floor(value * 0.5)
user._paramPlus[2] += Devour_Container;
user._paramPlus[4] += Devour_Container;
</Custom Establish Effect>

<Custom Remove Effect>
user._paramPlus[2] -= Devour_Container;
user._paramPlus[4] -= Devour_Container;
Devour_Container = 0;
</Custom Remove Effect>

Now read this carefully!

Do you see those user._paramPlus[x] parts? Those determine which param will be raised. I used the values 2 and 4 which refer to ATK (2) and MAT (4). Here’s a short list of what number refers to what param:
0 – HP
1 – MP
2 – ATK
3 – DEF
4 – MAT
5 – MDF
6 – AGI
7 – LUK

You can use as many user._paramPlus[x] as you want. If you decide to add a new param or change the ones in the code above, please remember that you have to change EACH iteration of that user._paramPlus[x].

Example: You’d like the state to raise ATK and DEF. So you wouldn’t touch user._paramPlus[2] since that will raise ATK which is what you want. You’d change user._paramPlus[4] though, since that raises MAT which you don’t want. So what you want to do, is to change each user._paramPlus[4] to user._paramPlus[3] since the number 3 refers to DEF.

If you want to change the amount that the states go up by just alter Line 4. The important part here is the one within the brackets. Change (value * 0.5) to anything you want. Value stands for the damage done to the enemy.

I know this Eval Collection post is rather complicated. If there are questions feel free to ask!

7 thoughts on “Eval Collection: Devour

  1. Hello! This might sound silly, but I’m curious what happens after battle (whether a win, lose or abort). Will all Custom Remove Effect will run?

    Like

  2. Is there a way to make so that if an enemy/actor has this state then when they RECIEVE damage the damage dealer will get a portion of the damage dealt taken from a stat? To compliment the devour of attack?

    Like:
    Enemy attacks
    Actor recieves 10 damage
    Enemy receives 1 loss agi or 5 HP or 2 ATK

    When the Actor attacks
    Enemy recieves 10 damage
    Actor recieves 1 gain AGI or 10 HP or 1 ATK

    etc….

    Like

      1. The problem here is that when the Devouring Touch state disperses it’s hard to backtrack which enemies attacked the user and for how many damage etc.
        I think it would be easier to apply the state to enemies/actors and everytime they deal damage instead of gaining Stats they lose a bit.

        If you do it that way you can use these notetags:

        <Custom Apply Effect>
        user._devourContainer = 0;
        </Custom Apply Effect>
        
        <Custom Establish Effect>
        user._paramPlus[2] += user._devourContainer;
        user._paramPlus[4] += user._devourContainer;
        user._devourContainer += Math.floor(value * 0.5);
        user._paramPlus[2] -= user._devourContainer;
        user._paramPlus[4] -= user._devourContainer;
        </Custom Establish Effect>
         
        <Custom Remove Effect>
        user._paramPlus[2] += user._devourContainer;
        user._paramPlus[4] += user._devourContainer;
        user._devourContainer = 0;
        </Custom Remove Effect>
        

        Note that when using this notetag you musn’t use the Devour_Container=0;0 part in the skill’s damage formula. It’s unnecessary.

        Like

Write a comment