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

Changing How To Cast Abilities/Spells

Status
Not open for further replies.
Level 2
Joined
Nov 15, 2008
Messages
22
Hello, I have a slight problem. I want to change certain abilities to cast differently. What do I mean? Well, take Divine Shield, it automatically targets yourself right? But lets say I want it to be manually casted so you can pick what unit will get invulnerability. Same thing with other prefrences, lets say with Dispel Magic, it has an Area of Effect circle, correct? But maybe I want to change it to automatically cast it on yourself, or manually click a unit, like Abolish Magic. Is it possible to do this? Thanks a bunch!
 
Level 6
Joined
Sep 13, 2008
Messages
261
Most skills don't allow you to change target types. Most people use dummy abilities in cases like those and trigger the spell effects themselves. Just search for a custom spell tutorial it should give you the information you seek.
 
Level 12
Joined
Mar 26, 2005
Messages
790
It really depends on specific spell


Like that with divine shield, that spell wil be based from target_singe_unit spell, like unholy frenzy from necromancer, change all stats to 0%, and make single trigger that

E:units begins casting an ability
C:ability being cast is UNHOLY FRENZY MODIFIED
A:give ability DIVINE SHIELD MODIFIED to target of ability being cast
issue target of ability being cast to cast Divine shield
remove DIVINE SHIELD MODIFIED from target of ability being cast

UNHOLY FRENZY MODIFIED=is that unholy frenzy with 0%stats
DIVINE SHIELD MODIFIED=is like normal divine shield but not hero ability but ability of unit, so every unit can cast it


Of course if that divine shield ability ought to be more level-spell, it will be more difficult, but still very simple


And with tha dispell magic, i think that ability from dryads works like you want. But maybe they cannot be casted on the caster himself.

Just base it on ability which can be casted both on caster and others. I dont know such ability by heart, but surely these ones exist. And one simple trigger-when he casts it-make dummy unit to cast-abolish magic on the target.
 
Level 11
Joined
May 31, 2008
Messages
698
Unfortunately the only way to do what you want is by making your own spells through triggers. There are some different versions of abilities though. I think there is an AOE dispel and a single target dispel. So I would look for that and if you have no luck just trigger the ability.
 
Level 2
Joined
Nov 15, 2008
Messages
22
Thanks for the outlines, but theres another problem following this. The divine shield is actually a custom spell, so I couldn't find custom spells in the issue order list, although it does follow the the spell duration, because I set it to 5, and it stayed for 5 seconds. Is it possible to order the target unit of ability being cast to cast custom spells? Thanks! Also, at the end, the trigger doesn't really delete itself after the spell. And the dummy spell thats being cast to make the custom divine shield work doesn't have a cooldown and its set to 15 seconds.

I'm very sorry if I'm bugging you guys, I haven't played with triggers until now.
 
Level 18
Joined
Mar 13, 2009
Messages
1,411
Yes pick the order of which the custom spell is based of.
Divine Shield custom based? Make it cast the Divine Shield from the order list.

(Remember that most units can have only 1 spell based on each ability or it would give some very annoying problems. A unit should have for example only 1 spell based off Divine Shield. I don't know what happens when a unit already has a spell based off Divine Shield and will get a spell based off it and the order to cast it D:)
 
Level 6
Joined
Sep 13, 2008
Messages
261
Yes pick the order of which the custom spell is based of.
Divine Shield custom based? Make it cast the Divine Shield from the order list.

(Remember that most units can have only 1 spell based on each ability or it would give some very annoying problems. A unit should have for example only 1 spell based off Divine Shield. I don't know what happens when a unit already has a spell based off Divine Shield and will get a spell based off it and the order to cast it D:)

The order strings are only picked up by one spell when that happens. You can only use one of the abilities.
 
Level 18
Joined
Mar 13, 2009
Messages
1,411
The order strings are only picked up by one spell when that happens. You can only use one of the abilities.

So that would mean that you can't properly add a Divine Shield based spell to a unit with Divine Shield to make it cast it D:

Removing all Divine Shields of a level then adding the new one and cast it and give the old Divine Shield back at the right level? :gg: .... meh wouldn't that mess with cooldown?
 
Level 2
Joined
Nov 15, 2008
Messages
22
Thanks for that information guys, the divine shield custom spell seems to copy the real divine shield, so it won't be the same buffs, but one problem comes to me.. The cooldown for the dummy spell (Which would be Unholy Frenzy Modified by Restor's guide.) has no cooldown. And the divine shield spell won't remove itself after it has been casted, but if I manually click the divine shield trigger spell, that has a cooldown. And plus, I put the trigger spell as no icon, so it would be a green square, is there anyway to make the trigger spell not noticable by the player? I think it would have to do something with the icon image. Anyways, thanks for replying!
 
Level 6
Joined
Sep 13, 2008
Messages
261
There are 2 ways.
1. use the channel ability as the base and uncheck the visible box
2. put it in a spellbook add the spellbook to the hero and have it set to hidden
 
Level 2
Joined
Nov 15, 2008
Messages
22
I hope I am allowed to legally bump this.. I tried to do the spell a different way and put the target of ability being cast to invulnerable. Wait 5 seconds, then make the unit vulnerable again. But it does not work, although it does seem to make it easier, although what am I doing wrong here?
 
Level 5
Joined
Apr 18, 2008
Messages
48
Do you have a termination on the trigger? Try something like.
Ev: Unit casting a spell
Co: Spell equal to Divine Shield(Dummy)
Ac: Cast Divine Shield (Real) on Triggering Unit
Wait 5 seconds
Remove Last spell

You could make it cast abolish magic on your hero is all else fails? Or another trigger to reset it? Just brainstorming.

I'd use a spell to make your unit invulnerable. Me and my Bro have had plenty of trouble with the trigger Invulnerable. I might experiment and post a text trigger here.
 
Level 2
Joined
Nov 15, 2008
Messages
22
Thanks for the suggestions, I tried the divine shield one and I'll tell you the results..
Well, the divine shield it didn't really do anything for 5 seconds, still vulnerable. So I tried adding invulnerable and vulnerable triggers in the actions list but it still creates my last problem. The unit never turns back to vulnerable. The abolish magic spell wouldn't work in my opinion because abolish magic only clears buffs and not the invulnerability state. So right now I'm going to try resetting it, but what is the trigger to reset another trigger? Sorry, this is actually my first time experimenting with triggers.
 
Level 2
Joined
Nov 15, 2008
Messages
22
Actually, I'm making a custom spell that its supposed to be the target version of Divine Shield. I use a base spell with 0 stats as a dummy spell so it can trigger the trigger. But anyways the duration of the dummy spell is really just 5 seconds. The dummy spell is learned by a unit from an upgrade.
 
Level 5
Joined
Apr 18, 2008
Messages
48
Mmm

Actually, I'm making a custom spell that its supposed to be the target version of Divine Shield. I use a base spell with 0 stats as a dummy spell so it can trigger the trigger. But anyways the duration of the dummy spell is really just 5 seconds. The dummy spell is learned by a unit from an upgrade.

Try making another trigger that turns the unit vulnerable when your dummy spell is finished. Like finishes channeling. (thought that would leave you unable to fight people while you were invulnerable like phase shift). Like make the dummy last for 5 seconds.

My trigger resetting system uses two triggers, in a my own way as terminators. but I recommend making a working version of the trigger, then copying that trigger. Turn one to initially off. Now add on the first trigger at the end for action.
A: Trigger/Turn Trigger on (Invun2)
A: Trigger/Turn Trigger Off (This One)
And on the other trigger do it in the series.
A: Trigger/Turn Trigger on (Invun1)
A: Trigger/Turn Trigger off (This One)
This systems works for me as a reset and is fairly basic. On one of my maps I used a different way for super weapons which went like:
E: Unit casts a spell
C: Unit equal to Superweapon
A: Create effect at region (Target of Ability) Flame strike.
A: Wait 5 seconds
A: Turn on Trigger 2
A: Turn off this trigger
Trigger 2
e: Periodic 2 seconds
a: Turn on Trigger 1
a: Turn off this trigger

The action Trigger->Turn off is essentially the terminator. It is useful for say, stopping enemies spawning during a cinematic.
The action Trigger->Turn on is very handy too. For say if you have dialogue boxes for game modes. You can use these to activate a set of triggers needed for that mode. (Like on my Paintball Map). If you need too you can make a trigger to turn on your real spell triggers when the upgrade for the dummy is finished too.
Hope this helped and I haven't wasted my time typing it and yours reading it.
 
Last edited:
Status
Not open for further replies.
Top