• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[Triggers] Giving Units Learn able Abilities.

Status
Not open for further replies.
Level 4
Joined
Nov 17, 2015
Messages
91
Hello, is there a way to add learn able abilities to my heroes?

The trigger below doesn't allow you to level the skill. How would I do this if I wanted the skill to be upgrade-able with skill-points? If it is too hard, I will just make different heroes with different abilities, but I really want to keep the level of customization this gives me.
  • Disappear
    • Events
      • Unit - A unit Uses an item
    • Conditions
      • (Item-type of (Item being manipulated)) Equal to Ninja Jutsu: Disappear
    • Actions
      • Unit - Add Disappearing Jutsu to (Triggering unit)
      • Custom script: call UnitMakeAbilityPermanent(GetTriggerUnit(), true, 'A000')
Pictures appreciated, and thank you so much for your help. :goblin_good_job:
 
Last edited:
To add/change hero skills, you must use the engineering upgrade ability. Note that this has some limitations; abilities added like this must be similar to the abilities they replace (aka must be based on the same base ability) or some object data fields might bug out.

If you base all your abilities on channel (or have your abilities mostly triggered), this isn't a problem, though.
 
Level 4
Joined
Nov 17, 2015
Messages
91
To add/change hero skills, you must use the engineering upgrade ability. Note that this has some limitations; abilities added like this must be similar to the abilities they replace (aka must be based on the same base ability) or some object data fields might bug out.

If you base all your abilities on channel (or have your abilities mostly triggered), this isn't a problem, though.

Can you show me an example of what you mean? :goblin_good_job:
 
Level 19
Joined
Jul 14, 2011
Messages
875
I think this is what you mean:

  • Disappear
    • Events
      • Unit - A unit Uses an item
    • Conditions
      • (Item-type of (Item being manipulated)) Equal to Ninja Jutsu: Disappear
    • Actions
      • Set TempInt = (Level of Disappearing Jutsu for (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TempInt Equal to 0
        • Then - Actions
          • Unit - Add Disappearing Jutsu to (Triggering unit)
          • Custom script: call UnitMakeAbilityPermanent(GetTriggerUnit(), true, 'A000')
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • TempInt Less than MaxLevel
            • Then - Actions
              • Unit - Set level of Disappearing Jutsu for (Triggering unit) to (TempInt + 1)
            • Else - Actions
              • -------- If it is maxed out --------
If the unit doesnt have the ability it adds it, else if has it, but it isnt maxed out, it will level it up.
 
Level 4
Joined
Nov 17, 2015
Messages
91
I think this is what you mean:

  • Disappear
    • Events
      • Unit - A unit Uses an item
    • Conditions
      • (Item-type of (Item being manipulated)) Equal to Ninja Jutsu: Disappear
    • Actions
      • Set TempInt = (Level of Disappearing Jutsu for (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TempInt Equal to 0
        • Then - Actions
          • Unit - Add Disappearing Jutsu to (Triggering unit)
          • Custom script: call UnitMakeAbilityPermanent(GetTriggerUnit(), true, 'A000')
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • TempInt Less than MaxLevel
            • Then - Actions
              • Unit - Set level of Disappearing Jutsu for (Triggering unit) to (TempInt + 1)
            • Else - Actions
              • -------- If it is maxed out --------
If the unit doesnt have the ability it adds it, else if has it, but it isnt maxed out, it will level it up.

Woah! This is exactly what I needed!! Thanks! :goblin_good_job:
 
Level 4
Joined
Nov 17, 2015
Messages
91
:ogre_datass::fp:

I think this is what you mean:

  • Disappear
    • Events
      • Unit - A unit Uses an item
    • Conditions
      • (Item-type of (Item being manipulated)) Equal to Ninja Jutsu: Disappear
    • Actions
      • Set TempInt = (Level of Disappearing Jutsu for (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TempInt Equal to 0
        • Then - Actions
          • Unit - Add Disappearing Jutsu to (Triggering unit)
          • Custom script: call UnitMakeAbilityPermanent(GetTriggerUnit(), true, 'A000')
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • TempInt Less than MaxLevel
            • Then - Actions
              • Unit - Set level of Disappearing Jutsu for (Triggering unit) to (TempInt + 1)
            • Else - Actions
              • -------- If it is maxed out --------
If the unit doesnt have the ability it adds it, else if has it, but it isnt maxed out, it will level it up.

I can not give you enough praise good sir, you just saved my map. :grin:
I lost my inspiration for days because this problem was a giant boulder in my way. Thank you!!!
 
I thought you want to *add* a hero skill as in: the unit doesn't have it defined in the object editor as an available hero skill?
In case the unit has the skill in the "hero abilities" field, you just need to increment the level of that ability. If you want to change a hero ability (for example, replace a "fireball" spell with a "waterball" spell), you must use engineering upgrade.
Hope that clarifies what I meant a bit more.
 
Status
Not open for further replies.
Top