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

Ordering units to use abilities without order strings? Help!!

Status
Not open for further replies.
Level 11
Joined
Feb 11, 2010
Messages
199
Alright, I'm stumped here. Certain abilities in the World Editor (such as any ability converted from an item ability) have no order string. I am sure of this... I did some testing to confirm that there is in fact no order string given when they are used. Simply adding an order string to them yourself doesn't do anything... they still use no order string when used. So the question is... how the hell do I make a unit cast such an ability with triggers?

Many thanks if anyone can help.
 
You order the units using order ids.

For example Illusion has no order string, yet you can make the unit cast it using its order id, which is 852008.

So to make the unit cast it you use custom script as you cannot use this in the normal gui interface.
  • Custom script: call IssueTargetOrderById( yourunit, 852008, target )
To detect the order id you can use a trigger like this
  • OrderId
    • Events
      • Unit - A unit Is issued an order targeting an object
      • Unit - A unit Is issued an order targeting a point
      • Unit - A unit Is issued an order with no target
    • Conditions
    • Actions
      • Game - Display to (All players) the text: ===================...
      • Game - Display to (All players) the text: (== Order String: + (String((Issued order))))
      • Custom script: call BJDebugMsg( "== Order ID: " + I2S( GetIssuedOrderId( ) ) )
      • Game - Display to (All players) the text: ===================...
 
Level 11
Joined
Feb 11, 2010
Messages
199
You order the units using order ids.

For example Illusion has no order string, yet you can make the unit cast it using its order id, which is 852008.

So to make the unit cast it you use custom script as you cannot use this in the normal gui interface.
  • Custom script: call IssueTargetOrderById( yourunit, 852008, target )
To detect the order id you can use a trigger like this
  • OrderId
    • Events
      • Unit - A unit Is issued an order targeting an object
      • Unit - A unit Is issued an order targeting a point
      • Unit - A unit Is issued an order with no target
    • Conditions
    • Actions
      • Game - Display to (All players) the text: ===================...
      • Game - Display to (All players) the text: (== Order String: + (String((Issued order))))
      • Custom script: call BJDebugMsg( "== Order ID: " + I2S( GetIssuedOrderId( ) ) )
      • Game - Display to (All players) the text: ===================...

Thanks a million! +Rep :thumbs_up:
 
Status
Not open for further replies.
Top