• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!
  • ✅ The POLL for Hive's Texturing Contest #34 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!
  • ✅ The POLL for Hive's Techtree Contest #20 is OPEN! Vote for the TOP 3 FACTIONS! 🔗Click here to cast your vote!

[Trigger] Automatic leveling of passive skills

Level 26
Joined
Dec 24, 2019
Messages
501
Hi, I've been experimenting with automatic skill leveling. In this case, I'm testing a system for skills to level up based on usage. Well, I did a quick test that works:
Example.png

The problem arose when I tried to do the same with passive skills, since they don't work with casting. Does anyone know how to do something similar with passive skills?

Regards.
 
That needs to be done case by case depending on what the passive does, but there will be problems e.g. there is no event to detect the default critical strikes, evades or bashes, so these would need to be replicated via trigger

Here's an idea for auras: they gain "experience" every few seconds based on the number of units that benefit them, then level up once they reach an experience threshold that you define
  • Devotion Aura
    • Events
      • Time - Every 5.00 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in (Units in (Playable map area) matching ((((Matching unit) has buff Devotion Aura) Equal to True) and ((Owner of (Matching unit)) Equal to Player 1 (Red)))) and do (Actions)
        • Loop - Actions
          • Set VariableSet DevotionAuraExperience = (DevotionAuraExperience + 1)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • DevotionAuraExperience Greater than or equal to DevotionAuraRequiredExp // Let's say 20
        • Then - Actions
          • Unit - Increase level of Devotion Aura for Paladin 0000 <gen>
          • Set VariableSet DevotionAuraRequiredExp = (DevotionAuraExperience + 20)
        • Else - Actions
You can refine and tweak the values to your liking and deal with the leaks, also probably add a cap so that the ability stops leveling at some point, but that's just to give you an idea
 
Back
Top