• 🏆 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!

How to hide ability

Ardenian

A

Ardenian

Create another ability that works as a dummy, having no impact on the hero.

I think an ability that is initially not shown cannot be shown in any way.
 
Level 24
Joined
Aug 1, 2013
Messages
4,657
I dont really understand what you say.
As far as I understand, you have an ability like hardened skin that you want to give to your unit, but without showing the icon.

In that case, make a spellbook.
Give the spellbook a base order ID that you will use for all hidden abilities like these.
I use windwalk because I would never use that basic ability :D
Add the hardened skin (your ability) to the spellbook and add the spellbook to the unit.
Then use this trigger:
  • Disable Spellbooks
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Player Group - Pick every player in (All players) and do (Actions)
        • Loop - Actions
          • Player - Disable Spell Book for (Picked player)
This trigger will hide the spell book and prevent all access to it.
So you will not be able to cast abilities manually (maybe they are castable via triggers but I dont know for sure).
However the passive effects still remain, so your unit still has the benefits from Hardened Skin.
(The level of Hardened Skin is also 1 (or higher) because the unit has the ability.)


Or do what LordDz said.
It seems to work but I have never heard of it before... Maybe there is a drawback from it because I dont know why everyone uses this method over Button -11.
 
Level 12
Joined
May 22, 2015
Messages
1,051
I dont really understand what you say.
As far as I understand, you have an ability like hardened skin that you want to give to your unit, but without showing the icon.

In that case, make a spellbook.
Give the spellbook a base order ID that you will use for all hidden abilities like these.
I use windwalk because I would never use that basic ability :D
Add the hardened skin (your ability) to the spellbook and add the spellbook to the unit.
Then use this trigger:
  • Disable Spellbooks
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Player Group - Pick every player in (All players) and do (Actions)
        • Loop - Actions
          • Player - Disable Spell Book for (Picked player)
This trigger will hide the spell book and prevent all access to it.
So you will not be able to cast abilities manually (maybe they are castable via triggers but I dont know for sure).
However the passive effects still remain, so your unit still has the benefits from Hardened Skin.
(The level of Hardened Skin is also 1 (or higher) because the unit has the ability.)


Or do what LordDz said.
It seems to work but I have never heard of it before... Maybe there is a drawback from it because I dont know why everyone uses this method over Button -11.

From the thread I read, it is not safe for mac users. It will crash their WC3. Not tested by me at all, though.
 
How did you do it?
The WE doesn't allow more then 1 number in X and Y coordinate. No other symbols like + or -.
Shift can be used to say "I'm certain I want to be allowed to put whatever I want". Maybe you also need to go File -> Preferences -> General and check the "Allow Negative Values"
 

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,543
Well, now that we're here, let's just get it all out.

It all depends on the patch you're on.

For most commonly used versions you can hide the ability like others have said using 0, -11 for the X/Y button positions inside the Object Editor.

Alternatively, in 1.31+ you have access to two functions for hiding an ability:
  • Unit - For (Triggering unit), Ability Animate Dead, Hide ability: True
  • Unit - For (Triggering unit), Ability Animate Dead, Disable ability: True, Hide UI: True
Keep in mind that these functions use a counter system to track the state of Disabled/Hidden (each have their own counters). These counters can go positive or negative. While a counter is at it's default value of 0 the ability is enabled/visible.

In older patches you needed to rely on disabled Spellbooks, but this is no longer the case and should not be used if you have access to the above methods.
 
Level 7
Joined
Feb 13, 2022
Messages
86
Well, now that we're here, let's just get it all out.

It all depends on the patch you're on.

For most commonly used versions you can hide the ability like others have said using 0, -11 for the X/Y button positions inside the Object Editor.

Alternatively, in 1.31+ you have access to two functions for hiding an ability:
  • Unit - For (Triggering unit), Ability Animate Dead, Hide ability: True
  • Unit - For (Triggering unit), Ability Animate Dead, Disable ability: True, Hide UI: True
Keep in mind that these functions use a counter system to track the state of Disabled/Hidden (each have their own counters). These counters can go positive or negative. While a counter is at it's default value of 0 the ability is enabled/visible.

In older patches you needed to rely on disabled Spellbooks, but this is no longer the case and should not be used if you have access to the above methods.
Do you know if the hide ability and the disable ability still work? I tried both methods on the harvest gold and lumber unit abilities and both disabled the ability. Is their a new method to hide unit/hero abilities and have them still work?
 

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,543
Not sure what you mean. They should still work, maybe you're not using them correctly?

Disable and hide ability:
  • Unit - For (Triggering unit), Ability Animate Dead, Disable ability: True, Hide UI: True
Enable and show ability:
  • Unit - For (Triggering unit), Ability Animate Dead, Disable ability: False, Hide UI: False
 
Level 7
Joined
Feb 13, 2022
Messages
86
Not sure what you mean. They should still work, maybe you're not using them correctly?

Disable and hide ability:
  • Unit - For (Triggering unit), Ability Animate Dead, Disable ability: True, Hide UI: True
Enable and show ability:
  • Unit - For (Triggering unit), Ability Animate Dead, Disable ability: False, Hide UI: False
  • Unit - For Rat 0001 <gen>, Ability Harvest (Gold and Lumber), Disable ability: False, Hide UI: True
I was trying to hide the ability but not disable it, is this possible?
 
Level 20
Joined
Aug 29, 2012
Messages
826
1692323353323.png
 
Level 7
Joined
Feb 13, 2022
Messages
86
I tried this. It hides the ability and disables it.

You can also hide any ability by changing it's Art - Button Positions to 0,-11 in the Object Editor. Anyway, last I used those Hide/Disable functions they worked, but that may have been a patch ago.
Seems like they changed that feature for some reason. But good idea to try the art button positions instead!
 

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,543
I tried this. It hides the ability and disables it.
A hidden ability cannot be used directly (hotkey/selection), so it sounds like it's working. However, a hidden ability can still be used through triggered Orders.

Edit: Tested the Actions and they're working as intended. I guess you were hoping that you could still use the ability with a hotkey when it was hidden?
 
Last edited:
Top