Good way of making synergy ability?

millz-

New Member
Reaction score
25
As I am still quite new to WE, I don't really know many other more possibilities of playing around with it. I am trying to make a passive ability, much like Diablo II's Sorceress' Lightning Mastery whereby when it's learned or leveled up, passively increases lightning skills'/other skills' damage.

My normal abilities will have 10 levels each. What I have thought of doing was if I learned the mastery level, use trigger to raise other ability level to level + 10*mastery level. But it would get really troublesome to make 110 levels for every spell.

Is there any good way to implement this kind of synergy?
 

Rllulium

New Member
Reaction score
10
There is a ability called Engineering upgrade that can do similar things, by exchanging one ability for another. Basicly you can have one set of abilities per level of mastery ability. That's still alot of abilities/ability levels to do thou; the positive thing being that it requires no trigger.
Another thing is to let all your abilities deal damage through triggers, and add the mastery ability's level to the damage calculation. But I would recommend the first of these two solutions.
 

tooltiperror

Super Moderator
Reaction score
231
Maybe you could trigger the spell with integers. Here goes nothing.

Trigger:
  • Dealing Damage
    • Events
      • Unit - A unit Begins casting an ability
    • Conditions
      • (Ability being cast) Equal to Animate Dead
    • Actions
      • Unit - Set life of (Target unit of ability being cast) to (Damage Dealt)


Trigger:
  • Dealing Damage
    • Events
      • Time - Every 10.00 seconds of game time
    • Conditions
    • Actions
      • Set DamageDealt = (DamageDealt + 10)


It could use balancing based upon your damage system, but basic idea is there.
 

millz-

New Member
Reaction score
25
Thanks for the reply Rllulium but I think the engineering upgrade method would be 10 times more troublesome than my original idea of having 110 ability levels.

I would prefer doing it the damage way. But do you have any idea how to detect that a unit is being damaged by a spell? I've tried Get ability being cast on a Unit is attacked event but that didn't work. Also if I were to use a Unit starts effect of an ability, it's really hard to get units that are damaged or going to be damaged for an AOE spell.

@ToolTipError
Sorry, but I really don't understand what is that for :|
 

tooltiperror

Super Moderator
Reaction score
231
> @ToolTipError
Sorry, but I really don't understand what is that for :|​

Was just a template for you.

What it does, in a nutshell, is deals "DamageDealt" (an integer) to a unit when a spell is cast on them.

Every ten seconds "DamageDealt" increases by ten, meaning more damage passively.
 

Admit

New Member
Reaction score
25
> @ToolTipError
Sorry, but I really don't understand what is that for :|​

Was just a template for you.

What it does, in a nutshell, is deals "DamageDealt" (an integer) to a unit when a spell is cast on them.

Every ten seconds "DamageDealt" increases by ten, meaning more damage passively.

Your spell will never kill the target unit, it will only set it's life to X (Where X is your interger number) So higer spell "number" the more hp target unit get.

Here is a MUI AoE triggered Spell:
Trigger:
  • TriggeredSpell
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Channel
    • Actions
      • Set Temp_Point = (Target point of ability being cast)
      • Set Temp_UnitGroup = (Units within 512.00 of Temp_Point matching (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True))
      • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
        • Loop - Actions
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing (50.00 + (50.00 x (Real((Level of SkillMastery for (Triggering unit)))))) damage of attack type Spells and damage type Magic
      • Custom script: call RemoveLocation (udg_Temp_Point)
      • Custom script: call DestroyGroup (udg_Temp_UnitGroup)


Edit*
Updated it so it deals damage acording to the "SkillMastery" skill.
SkillMastery should just be a random passive spell that does nothing.
 

tooltiperror

Super Moderator
Reaction score
231
> Your spell will never kill the target unit, it will only set it's life to X (Where X is your interger number) So higer spell "number" the more hp target unit get.​

Wow, Noob Mistake on my part, thanks for catching that.
 

millz-

New Member
Reaction score
25
Thanks for that Admit, but what I really wanted is a percentage damage boost of what the original ability has. Example:

Ability1 deals 200 damage at level 1.
Ability2 deals 300 damage at level 1.
Mastery level 1 increases Ability1 and Ability2 damage by 10% which inturn deals 220 and 330 damage respectively.

I don't want it to be a constant number * Mastery level, is this possible? As in, is it possible to detect how much damage would an ability do? Or do I have to do it the long way? E.g. setting all damage of all ability for all levels into arrays
 

avalya

New Member
Reaction score
37
millz- Engineering Upgrade is the most simple way of doing this, do not bother to trigger it, it will be much, much harder. You will still have to do all the "110 ranks", but it will go faster than triggering... about 25 times faster.
 

Admit

New Member
Reaction score
25
millz- Engineering Upgrade is the most simple way of doing this, do not bother to trigger it, it will be much, much harder. You will still have to do all the "110 ranks", but it will go faster than triggering... about 25 times faster.

I do not agree. This trigger is Alot faster then createting 110 diffrent spells and it takes up less space too.

It now Deal damage according to it's own level + 10% for every level in Spellupgrade2 (Aka; SkillMastery)
Trigger:
  • TriggeredSpell
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to AoE Spell
    • Actions
      • Set SpellDmg_R[0] = (25.00 x (Real((Level of (Ability being cast) for (Triggering unit)))))
      • Set SpellDmg_R[1] = ((0.10 x (Real((Level of Spellupdate2 for (Triggering unit))))) x (25.00 x (Real((Level of (Ability being cast) for (Triggering unit))))))
      • Set Temp_Point = (Target point of ability being cast)
      • Set Temp_UnitGroup = (Units within 512.00 of Temp_Point matching (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True))
      • Unit Group - Pick every unit in Temp_UnitGroup and do (Actions)
        • Loop - Actions
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing (SpellDmg_R[0] + SpellDmg_R[1]) damage of attack type Spells and damage type Magic
      • Custom script: call RemoveLocation (udg_Temp_Point)
      • Custom script: call DestroyGroup (udg_Temp_UnitGroup)
 

avalya

New Member
Reaction score
37
Yes, but if he uses for example, spells with missiles, an AOE spell and for example, a buff spell, it is easier just doing Engineering Upgrade than triggering them individually, the tooltip will also show up correctly instead of being false.
 

Admit

New Member
Reaction score
25
Yes, but if he uses for example, spells with missiles, an AOE spell and for example, a buff spell, it is easier just doing Engineering Upgrade than triggering them individually, the tooltip will also show up correctly instead of being false.

That is indeed true.

Becuse he would also need a seperated trigger for every spell becuse all spells dosen't do same amount of "core" damage.

However if you use many spells with the same "core" damage this would be easyer. As you could just add
Trigger:
  • Or - Any (Conditions) are true
    • Conditions

to the trigger.

But yes your right, "Engeenering upgrade" is easyer to create than alot of different triggers doing almost the samething.

But you could also create alot of If/Then Else and have pre saved the damage amount every spell does in a Variable. That way you only need one trigger. The tooltip could be like "Dealing 25+"10% for every level in Skillmastery"".
This way you only need half the ability's needed for the "Engeenering upgrade".

But the Trigger would needed to be larger, It's up to the OP to chose, both should work, but i think the Engeenering upgrade is easyer to make.
 

millz-

New Member
Reaction score
25
Thanks for all the help guys, I have come up with a solution myself. I used part of your code Admit, to get units within an AOE, then pick the units and add a custom ability based on Spell Damage Reduction, and let the game calculate the bonus damage instead.
 

tooltiperror

Super Moderator
Reaction score
231
Very Cool!

Good Job, hope you can use this as a learning experience.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Howdy
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top