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

Cast 2 different spells when pressing 1 spell ?

Status
Not open for further replies.
Level 25
Joined
May 11, 2007
Messages
4,651
Are the two spells based on one spell?
For that doesn't work, you can only have one "Shadow Strike" based spell, etc on a hero, or they will only cast the first one first, then if it has cooldown, it will cast the second.

The fix is, use the Channel spell, (it can be used multiple times on a hero).
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
Every ability has "Ability ID" and "Order ID". If you create several custom abilities from the same, they'll all share the same Ability ID, and they will malfunction. Order ID is the number of the string order "thunderclap", "slowon", etc.

The problem is: Your unit is having 2 abilities based on the same bility, and they'll share cooldowns and other values. They won't work correctly. You'll have to remove 1, cast, re add the removed, or cast one of those with a dummy.
 
Level 9
Joined
Apr 23, 2011
Messages
460
Like LordDz said, use a channel spell as a base. Here's a picture highlighting the string to change.

attachment.php
 

Attachments

  • Order String Check.png
    Order String Check.png
    142.5 KB · Views: 405
Level 8
Joined
Aug 8, 2011
Messages
297
i still got the problem.... when using my hero: Bat Girl, spells: Multi Shot and Cross fire. When i press Cross Fire spell, it fires the Multishot spell instead of Cross fire.

i have changed the strings to channel, but its not helping... here is my map, can someone fix or see whats wrong ?
 

Attachments

  • Dota Frenzy NG 7.09.w3x
    2 MB · Views: 45
Level 10
Joined
Mar 31, 2009
Messages
732
You have the order strings for both of them set to Channel. Their dummies are both set to carrionswarm too.

Change ONE of them to something else. To an order string that hero won't use in another spell. Change ONE of the dummies too.
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
stim... just get the idea:

The order ID and Ability ID have to be different from one ability to another.

Just be sure that your unit doens't have 2 abilities with either THE SAME TEXT ORDER ID, nor the same ABILITY ID
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
Ability A - Base Order ID = wispharvest
Ability A - Text Order String = wispharvest

Ability B - Base Order ID = channel
Ability B - Text Order String = channel
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
I said

If you're using the Channel ability, the first "Data" field is "Base order ID"

Only Channel ability (and Spellbook) allows changing Base Order ID.
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
Because Multishot isn't Channel ability, therefore, you can't change the Base Order ID of Multishot. You can only change Base Order ID on Channel ability.

Remember: Base order ID and Text Order String isn't the same thing, these are different data values. Channel allows modificating both. The rest of the abilities only allows modificating the Text Order String, but the Base Order ID is bound to the ability, so, doesn't allow modifications.
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
Ok...

MultiShot and CrossFire are both custom abilities based on Carrion Swarm. The order String doesn't matter... Since "Both" are "Modified copies" of Carrion Swarm, they both share the Base order ID, and that causes malfunctions.

The ONLY way to have both abilities on your unit is basing one of them in a different ability. Means changing the base ability of one of those. To change the Base ability of one of them, you have to create a custom copy of one of the game skills and base the effect of the skill in that ability.
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
You just need an ability that allows you to target a unit or the ground in order the start the triggered effect. For that you can use ANY ability that allows casting on both, ground and terrain... like Crushing Wave, as Teelo said... That ability will, by default, have a different Base Order ID and different Text ORder String than Carrion Swarm, so, it won't cause any problem.

You can also use CHANNEL ability, since it allows No target / Unit Target / Point Target / Unit & Point Target. Just be sure to change the "Base order ID" of Channel Ability to any ability the hero won't ever have (wispharvest for example).

Remember that when you change the base ability, you'll have to modify the base ability in the trigger aswell. (The ability that triggers the trigger :p)
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
LOL xD Crushing Wave doesn't work. It's hardcoded to work based on Carrion Swarm.

Even changing the Text Order String makes the hero cast both.

EDIT: You can use Breath of Fire as a base ability...

Remember, you can ALWAYS use Channel as a base ability for any triggered effect, as long as you configure it correctly :)
 
Level 20
Joined
Jul 14, 2011
Messages
3,213
I don't know... seems like a common 12yo dumb in triggering and stuff... So far, I still feel like I've been there.
 
Status
Not open for further replies.
Top