• Check out the results of the Techtree Contest #19!
  • Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.
  • Create a void inspired texture for Warcraft 3 and enter Hive's 34th Texturing Contest: Void! Click here to enter!
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!

Spell problem

Status
Not open for further replies.
Level 23
Joined
Dec 24, 2018
Messages
752
Hi, i created from dragon hawk cloud ability, hero ability and change cloud efect with rainbow efect. But rainbow is too small and i dont now have made him bigger cuz in middle of battle is almost invisible. can somebody help ?
 

Attachments

  • 2019-07-17_105541.png
    2019-07-17_105541.png
    3.6 MB · Views: 88
You can't change the size of the effect from within the object editor. You have two options:
  1. Edit and upscale the model so it appears bigger when used for the ability.
  2. Remove the model from the spell and instead create a special effect with a trigger. This effect can have its scale set to whatever you need it to be but must me manually cleaned up. There are more proper solutions but in this case you can use a locally-shadowed global effect variable and a wait to remove the effect when the spell is done. A sample trigger is below:
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) equal to Rainbow
  • Actions
    • Custom script: local effect udg_SomeEffect //match the name of your variable here but keep the udg_ prefix; this line has to be first in your trigger
    • Set TempPoint = (Target point of ability being cast)
    • Special Effect - Create a special effect at TempPoint using RainbowModel.mdl
    • Special Effect - Set scale of (last created special effect) to YOUR_SCALE
    • Set SomeEffect = (last created special effect)
    • Custom script: call RemoveLocation(udg_TempPoint)
    • Wait SPELL_DURATION seconds //might have to do some math here if different levels have different durations
    • Special Effect - Destroy SomeEffect
    • Set SomeEffect = (No effect) //necessary to prevent a leak
 
You can't change the size of the effect from within the object editor. You have two options:
  1. Edit and upscale the model so it appears bigger when used for the ability.
  2. Remove the model from the spell and instead create a special effect with a trigger. This effect can have its scale set to whatever you need it to be but must me manually cleaned up. There are more proper solutions but in this case you can use a locally-shadowed global effect variable and a wait to remove the effect when the spell is done. A sample trigger is below:
  • Events
    • Unit - A unit starts the effect of an ability
  • Conditions
    • (Ability being cast) equal to Rainbow
  • Actions
    • Custom script: local effect udg_SomeEffect //match the name of your variable here but keep the udg_ prefix; this line has to be first in your trigger
    • Set TempPoint = (Target point of ability being cast)
    • Special Effect - Create a special effect at TempPoint using RainbowModel.mdl
    • Special Effect - Set scale of (last created special effect) to YOUR_SCALE
    • Set SomeEffect = (last created special effect)
    • Custom script: call RemoveLocation(udg_TempPoint)
    • Wait SPELL_DURATION seconds //might have to do some math here if different levels have different durations
    • Special Effect - Destroy SomeEffect
    • Set SomeEffect = (No effect) //necessary to prevent a leak
I'll will see what I can do with my poor abilities, thanks anyway
 
Question, will this Hero be usable by only 1 player?

If that's the case then you can do a very simple trigger like this.

  • Cast Rainbow
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Rainbow
    • Actions
      • Set CastPoint = (Target point of ability being cast)
      • Special Effect - Create a special effect at CastPoint using Abilities\Weapons\DragonHawkMissile\DragonHawkMissile.mdl
      • Special Effect - Set Scale of (Last created special effect) to 4.00
      • Set RainbowSfx = (Last created special effect)
  • Stop Casting Rainbow
    • Events
      • Unit - A unit Stops casting an ability
    • Conditions
      • (Ability being cast) Equal to Rainbow
    • Actions
      • Special Effect - Destroy RainbowSfx
      • Custom script: call RemoveLocation(udg_CastPoint)
Similar to what Pyrogasm said, but we need to destroy the special effect if the unit stops casting the ability (channeling gets interrupted by a stun or the player orders the Hero to stop).

Attached a map, you can literally copy and paste the triggers into your map and then edit them to fit your ability. Change the ability being cast condition to your ability and change the special effect model/scale to your Rainbow model and whatever size you want.
 

Attachments

Last edited:
Status
Not open for further replies.
Back
Top