WARNING: You are expected to know how to make a missile and change its mover. This tutorial won't be covering how to make missiles, custom launch sites or cool effects. Those can be found in Actor, Site Operation and Spell tutorials. We will instead be creating custom movers that control how the missile moves. This is something a lot of mappers have been struggling with and is largely unknown in terms of hard details. I, too, can't figure out certain mover fields, but I have discovered ways to create movers that will accomplish most things you would want. If you can provide information on a field I'm missing, please PM me with details so that I can update this tutorial :)
Mover Basics
I'd like to think it's fairly obvious that movers move things. If not. . . well. . . *facepalm*
But seriously, these are very simple to understand and implement. The difficult part is configuring them to do exactly what you want. This is because the fields often lack clear explanations and control a wide range of aspects that sometimes aren't significant enough to make any real changes. In some cases you'll have fields that require another unrelated field to have a specified value in order to work. Thus you'll be trying to change a mover's Speed only to realize that its missile isn't going to move until you've given it Orientation or messed with the Throw Band Yaw.
For the purposes of this tutorial, we'll only be covering Missile Movers and ignoring the other types. Those types are typically used for controlling how a unit moves and its pathing. We won't need any of that for our missiles. Before we dive in, you need to understand what Overlays and Phases are, and how they relate to each other.
Motion Overlays
Think of these as movement patterns. If you have a missile traveling along a given line, overlays would change how the missile moves along that line. Thus if you want to make spirals or zig-zag motions, this is where you'd do that.
Revolvers
If you want your missile to spiral around its axis of fire (the line between its launch point and its impact point) this is how.
Revolver Acceleration: The acceleration of motion around the axis. Revolver Maximum Speed: The max speed of motion around the axis. Revolver Speed: The speed of motion around the axis.
Waves
If you want your missile to zig-zag across its axis of fire (the line between its launch point and its impact point) this is how.
Axis: The direction waves move in relation to the missile's path.
X: Perpendicular (Left/Right)
Y: Parallel (Forward/Back)
Z: Perpendicular (Up/Down)
Polarity: Determines what direction the first wave travels. Wavelength: The size of each wave.
Motion Phases
Before you can make use of Overlays you need to have movement types to apply them to. That's what these are. They determine what kind of motion the mover will simulate when traveling to the target. Most importantly, you can chain them together to make a series of movements. This is the key to customizing your movers. However, in order to do this you need to understand the new terminology:
X axis = Pitch (Forward Tilt)
Y axis = Roll (Side Tilt)
Z axis = Yaw (Facing)
Keep this in mind as the fields will constantly switch between the Cartesian coordinate system and flight dynamics.
Index
Acceleration
Dynamic Parabola (Arc)
Static Parabola (Lob)
Release Fire
Spiral
Zig Zag
Burst
(I have included a map with examples of each of these that you can reference while reading)
Accelerating Missiles
Example - (Seeker Missile)
1st Motion Phase:
Acceleration: 2
Driver: Guidance
Maximum Speed: 100
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
Outro: Blend At: 0; Stop At: 2
Overlays: None
This first phase simulates the brief moment a missile acquires its target before racing after it. The higher the Stop At, the longer this phase lasts. Outro is directly related to a phases length and controls the smoothness of transitions. In order to track a target you MUST have Orientation values. These are responsible for whether or not a missile can turn to follow its target. No values means no tracking means buggy missiles.
2nd Motion Phase:
Acceleration: 10
Driver: Guidance
Maximum Speed: 100
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
Overlays: None
This phase occurs after the Outro from the 1st phase ends, ramping up to quickly close in on the target.
Other Important Fields
Speed: If you want to specify a starting speed to accelerate from, you need to put that value in this field. Timeout: If you want to make a missile that slowly tracks a target before dying, this is one method of doing so. Once this timer expires the mover disappears, typically killing the missile as well.
Parabolic Arcs (Dynamic)
Example - (Mortar/Grenade)
1st Motion Phase:
Driver: Throw
Maximum Speed: 10
Minimum Speed: 10
Overlays: None
Outro: Blend At: 0; Stop At: 2
Throw Vector: X: 0; Y: -0.5; Z: 1
This first phase controls the upward curve to the apex of the arc. The Outro is responsible for how high this arc is and the Throw Vector determines what direction the arc curves towards.
2nd Motion Phase:
Driver: None
Overlays: None
Outro: Blend At: 2; Stop At: 8
Throw Vector: X: 0; Y: -1; Z: 0
This phase controls the forward curve at the top of the arc before descending again. The Outro is responsible for how long this arc is and starts right as the previous phase ends. The 2 in Blend At connects directly to the 2 in Stop At from the previous phase. This is how motion phases connect if you want smooth transitions between them.
3rd Motion Phase:
Driver: Guidance
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
Overlays: None
This phase controls the target tracking and ends the arc. It's important to note that once this phase begins the missile no longer curves and will directly track the target. You can add more curve with additional Throw Vectors, but if you want the missile to connect with the target you need to end with a Guidance Motion Phase.
Depending on the distance to the target, the arc may look strange OR double back on itself. To remedy this you can make multiple movers with different Outro values yielding shorter\longer curves. You can then determine what mover is used base on the distance to the target in the Effect - Launch Missile. With a combination of movers you can adapt your missile's arc to look great at any distance.
Other Important Fields
Acceleration: You can use this field to simulate the effects of gravity on the missile's speed during each motion phase. Gravity: You can use this field to create a gravitational pull on the missile. It won't change the missile's speed, but it will pull the arc down to the grown for as long as the Motion Phase it has an assigned value in is active. Outro Altitude: This field allows you to tie phase changes to specific heights meaning that the next phase won't start until the missile reaches a certain height.
Parabolic Lobs (Static)
Example - (Infested Terran)
1st Motion Phase:
Driver: Parabola
Maximum Speed: 20
Minimum Speed: 20
Parabola Clearance: Base: 5
Parabola Upright: Enabled
That being said, this mover allows you to form perfect (static) arcs to the target with specific heights, speeds and distances. Used intelligently this mover is incredibly powerful. It is important to note that unless Parabola Upright: is set to disabled, the missile will always be horizontal meaning your parabola will look tacky. We'll create the mover with it enabled to demonstrate this. Additionally, this mover can't track the target on it's own.
Other Important Fields
Parabola Acceleration: You can simulate the effects of gravity by setting specific acceleration rates at different points along the curve with this field. Parabola Distance: This field determines the distance along the curve a given segment is like the apex or descent. Timeout: Because this mover can't track targets, this field can be important if you want the missile to disappear shortly after landing.
Release Firing Missile
Example - (Viking Fighter Missiles)
1st Motion Phase:
Driver: Throw
Gravity: 100
Maximum Speed: 2
Minimum Speed: 2
Outro: Blend At: 0; Stop At: 2
Throw Vector: X: 0; Y: -1; Z: 0
This first field simulates the brief hang of a missile as it is released from a ship before the burn kicks it and propels it to the target. Gravity controls how much it drops during the phase while Throw Vector determines what direction it initially leaves the ship before accelerating.
2nd Motion Phase:
Acceleration: 50
Driver: Guidance
Maximum Speed: 10
Orientation: Yaw: 5500; Pitch: 5500; Roll 5500
This field allows the missile to track the target after being fired and accelerated its speed to the desired value.
Other Important Fields
Outro Altitude: It is possible to make the missile drop until it reaches a specific height using this field.
Spiraling Missiles
Example
Motion Overlay:
Revolver Maximum Speed: 800
Revolver Speed: 800
Type: Revolver
This causes the missile to spiral in uniform circles around its axis of fire. The higher the speed, the tighter the circles will be and the longer it will take to reach the target. If you want the spiraling to be more sporadic, you can lower the Revolver Speed and add a Revolver Acceleration so that it spins faster and faster as it heads towards the target. Contrary to what you'd expect, this actually causes the missile to spiral arbitrarily and is an ideal method of making missile clusters fly in random patterns.
1st Motion Phase:
Driver: Throw
Maximum Speed: 5
Minimum Speed: 5
Outro: Blend At; 0; Stop At: 2
Throw Vector: X: 0; Y: -1; Z: 1
This first phase is used to get the missile out and away from the ship before it starts spiraling. The Throw Vector is the direction it is launched and the Outro determines how far it gets before spiraling.
2nd Motion Phase:
Driver: Guidance
Maximum Speed: 5
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
This phase's sole purpose is to allow the missile to track the target.
3rd Motion Phase:
Driver: None
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
Outro: Blend At; -1; Stop At: -1
Overlays: Overlay 0 (Scale - Base: 1; Range: 1)
This field applies the Revolver Overlay to the missile and spirals until it hits the target due to the Outro having a value of -1. It is important to note that the Driver from the previous phase persists through this phase meaning you don't need to set a new driver. If you want to change how much the Overlay affects the missile, Scale lessens or amplifies the spiraling motions.
It is entirely possible to do away with this phase and apply the Overlay to the Guidance Phase, but I prefer not to for flexibilities sake. The additional phase allows you to control the spiraling and missile movement independently.
Other Important Fields
Acceleration: If you don't want to change the Revolver Speed, you can use acceleration to speed up the missile and overcome its spiraling motion. Gravity: This field can be added to simulate an object spiraling down from orbit to the ground.
Zig-Zag Missiles
Example
Motion Overlay:
Axis: X: 1; Y: 0; Z: 0
Polarity: Random
Type: Wave
Wavelength: Base: 0.5
This causes the missile to bounce back and forth along the specified axis while traveling to its target. If you want longer zig-zags, you can increase the Wavelength. The higher this value is, the fewer zig-zags that will occur along the missile's path. You can also use Polarity to determine whether the missile bounces the same direction or alternates direction when fired.
1st Motion Phase:
Driver: Throw
Maximum Speed: 5
Minimum Speed: 5
Outro: Blend At; 0; Stop At: 2
Throw Vector: X: 0; Y: -1; Z: 1
This first phase is used to get the missile out and away from the ship before it starts spiraling. The Throw Vector is the direction it is launched and the Outro determines how far it gets before spiraling.
2nd Motion Phase:
Driver: Guidance
Maximum Speed: 5
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
This phase's sole purpose is to allow the missile to track the target.
3rd Motion Phase:
Driver: None
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
Outro: Blend At; -1; Stop At: -1
Overlays: Overlay 0 (Scale - Base: 1; Range: 1)
This field applies the Wave Overlay to the missile and zig-zags until it hits the target due to the Outro having a value of -1. It is important to note that the Driver from the previous phase persists through this phase meaning you don't need to set a new driver. If you want to change how much the Overlay affects the missile, Scale lessens or amplifies the zig-zag motions.
It is entirely possible to do away with this phase and apply the Overlay to the Guidance Phase, but I prefer not to for flexibilities sake. The additional phase allows you to control the bouncing and missile movement independently.
Other Important Fields
Acceleration: If you don't want to change the Wavelength, you can use acceleration to speed up the missile and overcome its zig-zag motion.
Burst Missiles
This is an example group of movers that will cause multiple missiles to "bloom" outward at launch before arcing to the target. While very simple in design, you can easily add more Motion Phases or apply Motion Overlays to get the desired movement patterns and/or arcs.
Example - (Phoenix Missiles)
(Missile 1) 1st Motion Phase:
Driver: Throw
Maximum Speed: 10
Minimum Speed: 10
Outro: Blend At: 0; Stop At; 3
Throw Vector: X: 0; Y: -1; Z: 1
This first phase arcs the missile in the +Z (up) direction before tracking the target.
(Missile 1) 2nd Motion Phase:
Driver: Guidance
Maximum Speed: 10
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
This phase allows the missile to track the target.
(Missile 2) 1st Motion Phase:
Driver: Throw
Maximum Speed: 10
Minimum Speed: 10
Outro: Blend At: 0; Stop At; 3
Throw Vector: X: 1; Y: -1; Z: 0
This first phase arcs the missile in the +X (left) direction before tracking the target.
(Missile 2) 2nd Motion Phase:
Driver: Guidance
Maximum Speed: 10
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
This phase allows the missile to track the target.
(Missile 3) 1st Motion Phase:
Driver: Throw
Maximum Speed: 10
Minimum Speed: 10
Outro: Blend At: 0; Stop At; 3
Throw Vector: X: 0; Y: -1; Z: -1
This first phase arcs the missile in the -Z (down) direction before tracking the target.
(Missile 3) 2nd Motion Phase:
Driver: Guidance
Maximum Speed: 10
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
This phase allows the missile to track the target.
(Missile 4) 1st Motion Phase:
Driver: Throw
Maximum Speed: 10
Minimum Speed: 10
Outro: Blend At: 0; Stop At; 3
Throw Vector: X: -1; Y: -1; Z: 0
This first phase arcs the missile in the -X (right) direction before tracking the target.
(Missile 4) 2nd Motion Phase:
Driver: Guidance
Maximum Speed: 10
Orientation: Yaw: 5500; Pitch: 5500; Roll: 5500
This phase allows the missile to track the target.
Other Fields
My examples didn't cover all of the possible fields you can edit, but some of the fields are self-explanatory like Flight Time or Timeout. I'll be adding the fields here if they don't fit into one of the above missile "themes." I'll also make new categories if you come up with something that isn't covered here. Any input is appreciated :D
In StarCraft 1, if you set a missile to "Go To Max. Range" in weapons.dat (like the Lurker's weapon, which is actually a missile), it fires in the direction that the attackwith opcode that launches it is reached in iscript.bin. By turning the unit by increments of one until the unit goes through a full circle, and calling attackwith after each turn, you could create "nova" attacks that fire in all directions. Variations on this include the "partial nova", where the unit sometimes turns in larger increments, allowing things like a plus-sign shaped attack or a conical blast, the "randomized nova", where each attackwith had a chance to be skipped, causing the attack to head in certain random directions, and the "randomized partial nova", which is a combination of the two. How would you go about creating something like this in SC2? I'm currently doing it by manually launching the attack with the "launch effect at point" trigger, but doing it with the data editor would probably be less laggy.
tl;dr Can you make an attack that launches in a different direction than the one that the unit is firing in without using triggers?
@ Jakpe - From what you are describing I'd suggest adding a Revolver Overlay. Check out the Spiraling Missiles section and test out the mover in my example map. If that's the kind of spiral you want, you can adjust the values to make the spiral less obvious so that your arc flies through the air while slightly spiraling.
@ Biophysicist - Are you wanting the missiles to be targetless (shoot out from a given point until they hit something) or are you wanting to "burst" from the shooter in a given pattern and then lock on to a target or the target in their line of fire? All of what you are asking is possible depending on the situation.
I presume he's referring to the novas that I used in AO and such. Basically, think Diablo 1/2 nova. The projectiles do damage as they travel over enemy units and you can also determine special effects/bonus damage at the end of their travel.
The randomized variants are best summarized as like those The Great Destroyer uses, where he fires randomized fire waves that also have randomized effects that occur when they reach the end of their travel distance (doing damage to enemies they travel over).
As a heavy user of these kinds of weapons I, too, would like to see them done in Sc2. I'd also love to see the version you speak of where they explode on impact with something. :D
@MrZ3r0 - You can make the Valkyrie missiles using the Spiral movers with Revolver Acceleration (to cause sporadic spirals). Look up my Psyborg video to see how this would look. While not exact, the missiles burst from a single point and then travel out and in non-uniform patterns.
@IskatuMesk - He could actually mean several things. Piercing Missiles, Pathing Missiles, Blast Missiles, Nova Missiles. . . etc Regardless, all of these things are possible. I just need to know WHICH kind of missile he/you want so that I can explain how to do it. In his case, I'm unsure.
For you, if you want to create novas, you can make a persistent with periodic offsets and fire missiles to their locations OR fire multiple missiles from a persistent effect with each missile having an impact offset. Either way the missiles will launch from your location and explode at the offset locations. If you want to make them explode upon traveling through an object along their path, you apply buffs to the missile units themselves.
This will cause the missile to search for targets while flying. If it finds any, it will deal its damage and kill itself. Alternatively you can give your Missile health and have the Damage do increments instead of "Kill" so that it passes through multiple targets. Each target doing 1 damage to the missile until it's predetermined "ticks" have been used up.
For you, if you want to create novas, you can make a persistent with periodic offsets and fire missiles to their locations OR fire multiple missiles from a persistent effect with each missile having an impact offset. Either way the missiles will launch from your location and explode at the offset locations. If you want to make them explode upon traveling through an object along their path, you apply buffs to the missile units themselves.
Is there a way to make the offset relative to the direction the unit is facing?
The offsets are already relative to the units facing. +Y is behind the unit, -Y is in front of the unit, +X is left of the unit and -X is right of the unit.
Thus if you wanted to make 8 missiles shoot in the cardinal directions from the unit, your impact offsets would be:
I have a behavior that runs a periodic effect. The effect is a create persistent effect with the field Target - Offset Expire set to (-3,-3) and the field Expire Effect set to the Launch Missile Effect. The Launch Missile's effect has the field Impact Location set to Target Point, the Source Location set to Caster Unit, and I have the Impact Effect set to an effect that creates a baneling. When I test this, the missile is launched and always creates a baneling to the bottom left of the unit regardless of where the unit is facing.
I also tried setting the Impact Offset field in the Launch Missile effect instead of the Offset in the persistent effect, but that just creates banelings at my unit.
It's just a behavior that periodically runs a persistent effect which runs a launch missile effect.
I'm trying to do something like the infestor's ability to launch eggs that morph into infested terrans, but instead make it a passive periodic behavior that launches eggs in the direction the unit is facing and instead of having them morph into infested terrans, make a delayed explosion like a grenade.
Give the Behavior -1 Periods (so it lasts forever) and have the Periodic Effect be to create the Persistent.
Give the 1st Persistent 1 Period with the desired Periodic Offset (0, -3) and Launch Missile Periodic Effect.
Make the Missile launch from Source Unit to Target Point (t)he Periodic Offset) and have it's Impact Effect be Create Persistent.
Give the 2nd Persistent 1 Period with the desired duration and Damage (Splash) Periodic Effect.
This should give you something similar to what you want and allow you to create graphics for each part of the process.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
WARNING: You are expected to know how to make a missile and change its mover. This tutorial won't be covering how to make missiles, custom launch sites or cool effects. Those can be found in Actor, Site Operation and Spell tutorials. We will instead be creating custom movers that control how the missile moves. This is something a lot of mappers have been struggling with and is largely unknown in terms of hard details. I, too, can't figure out certain mover fields, but I have discovered ways to create movers that will accomplish most things you would want. If you can provide information on a field I'm missing, please PM me with details so that I can update this tutorial :)
Mover Basics
I'd like to think it's fairly obvious that movers move things. If not. . . well. . . *facepalm*
But seriously, these are very simple to understand and implement. The difficult part is configuring them to do exactly what you want. This is because the fields often lack clear explanations and control a wide range of aspects that sometimes aren't significant enough to make any real changes. In some cases you'll have fields that require another unrelated field to have a specified value in order to work. Thus you'll be trying to change a mover's Speed only to realize that its missile isn't going to move until you've given it Orientation or messed with the Throw Band Yaw.
For the purposes of this tutorial, we'll only be covering Missile Movers and ignoring the other types. Those types are typically used for controlling how a unit moves and its pathing. We won't need any of that for our missiles. Before we dive in, you need to understand what Overlays and Phases are, and how they relate to each other.
Motion Overlays
Think of these as movement patterns. If you have a missile traveling along a given line, overlays would change how the missile moves along that line. Thus if you want to make spirals or zig-zag motions, this is where you'd do that.
Revolvers
If you want your missile to spiral around its axis of fire (the line between its launch point and its impact point) this is how.
Revolver Acceleration: The acceleration of motion around the axis.
Revolver Maximum Speed: The max speed of motion around the axis.
Revolver Speed: The speed of motion around the axis.
Waves
If you want your missile to zig-zag across its axis of fire (the line between its launch point and its impact point) this is how.
Axis: The direction waves move in relation to the missile's path.
Polarity: Determines what direction the first wave travels.
Wavelength: The size of each wave.
Motion Phases
Before you can make use of Overlays you need to have movement types to apply them to. That's what these are. They determine what kind of motion the mover will simulate when traveling to the target. Most importantly, you can chain them together to make a series of movements. This is the key to customizing your movers. However, in order to do this you need to understand the new terminology:
Keep this in mind as the fields will constantly switch between the Cartesian coordinate system and flight dynamics.
Index
(I have included a map with examples of each of these that you can reference while reading)
Accelerating Missiles
Example - (Seeker Missile)
1st Motion Phase:
This first phase simulates the brief moment a missile acquires its target before racing after it. The higher the Stop At, the longer this phase lasts. Outro is directly related to a phases length and controls the smoothness of transitions. In order to track a target you MUST have Orientation values. These are responsible for whether or not a missile can turn to follow its target. No values means no tracking means buggy missiles.
2nd Motion Phase:
This phase occurs after the Outro from the 1st phase ends, ramping up to quickly close in on the target.
Other Important Fields
Speed: If you want to specify a starting speed to accelerate from, you need to put that value in this field.
Timeout: If you want to make a missile that slowly tracks a target before dying, this is one method of doing so. Once this timer expires the mover disappears, typically killing the missile as well.
Parabolic Arcs (Dynamic)
Example - (Mortar/Grenade)
1st Motion Phase:
This first phase controls the upward curve to the apex of the arc. The Outro is responsible for how high this arc is and the Throw Vector determines what direction the arc curves towards.
2nd Motion Phase:
This phase controls the forward curve at the top of the arc before descending again. The Outro is responsible for how long this arc is and starts right as the previous phase ends. The 2 in Blend At connects directly to the 2 in Stop At from the previous phase. This is how motion phases connect if you want smooth transitions between them.
3rd Motion Phase:
This phase controls the target tracking and ends the arc. It's important to note that once this phase begins the missile no longer curves and will directly track the target. You can add more curve with additional Throw Vectors, but if you want the missile to connect with the target you need to end with a Guidance Motion Phase.
Depending on the distance to the target, the arc may look strange OR double back on itself. To remedy this you can make multiple movers with different Outro values yielding shorter\longer curves. You can then determine what mover is used base on the distance to the target in the Effect - Launch Missile. With a combination of movers you can adapt your missile's arc to look great at any distance.
Other Important Fields
Acceleration: You can use this field to simulate the effects of gravity on the missile's speed during each motion phase.
Gravity: You can use this field to create a gravitational pull on the missile. It won't change the missile's speed, but it will pull the arc down to the grown for as long as the Motion Phase it has an assigned value in is active.
Outro Altitude: This field allows you to tie phase changes to specific heights meaning that the next phase won't start until the missile reaches a certain height.
Parabolic Lobs (Static)
Example - (Infested Terran)
1st Motion Phase:
That being said, this mover allows you to form perfect (static) arcs to the target with specific heights, speeds and distances. Used intelligently this mover is incredibly powerful. It is important to note that unless Parabola Upright: is set to disabled, the missile will always be horizontal meaning your parabola will look tacky. We'll create the mover with it enabled to demonstrate this. Additionally, this mover can't track the target on it's own.
Other Important Fields
Parabola Acceleration: You can simulate the effects of gravity by setting specific acceleration rates at different points along the curve with this field.
Parabola Distance: This field determines the distance along the curve a given segment is like the apex or descent.
Timeout: Because this mover can't track targets, this field can be important if you want the missile to disappear shortly after landing.
Release Firing Missile
Example - (Viking Fighter Missiles)
1st Motion Phase:
This first field simulates the brief hang of a missile as it is released from a ship before the burn kicks it and propels it to the target. Gravity controls how much it drops during the phase while Throw Vector determines what direction it initially leaves the ship before accelerating.
2nd Motion Phase:
This field allows the missile to track the target after being fired and accelerated its speed to the desired value.
Other Important Fields
Outro Altitude: It is possible to make the missile drop until it reaches a specific height using this field.
Spiraling Missiles
Example
Motion Overlay:
This causes the missile to spiral in uniform circles around its axis of fire. The higher the speed, the tighter the circles will be and the longer it will take to reach the target. If you want the spiraling to be more sporadic, you can lower the Revolver Speed and add a Revolver Acceleration so that it spins faster and faster as it heads towards the target. Contrary to what you'd expect, this actually causes the missile to spiral arbitrarily and is an ideal method of making missile clusters fly in random patterns.
1st Motion Phase:
This first phase is used to get the missile out and away from the ship before it starts spiraling. The Throw Vector is the direction it is launched and the Outro determines how far it gets before spiraling.
2nd Motion Phase:
This phase's sole purpose is to allow the missile to track the target.
3rd Motion Phase:
This field applies the Revolver Overlay to the missile and spirals until it hits the target due to the Outro having a value of -1. It is important to note that the Driver from the previous phase persists through this phase meaning you don't need to set a new driver. If you want to change how much the Overlay affects the missile, Scale lessens or amplifies the spiraling motions.
It is entirely possible to do away with this phase and apply the Overlay to the Guidance Phase, but I prefer not to for flexibilities sake. The additional phase allows you to control the spiraling and missile movement independently.
Other Important Fields
Acceleration: If you don't want to change the Revolver Speed, you can use acceleration to speed up the missile and overcome its spiraling motion.
Gravity: This field can be added to simulate an object spiraling down from orbit to the ground.
Zig-Zag Missiles
Example
Motion Overlay:
This causes the missile to bounce back and forth along the specified axis while traveling to its target. If you want longer zig-zags, you can increase the Wavelength. The higher this value is, the fewer zig-zags that will occur along the missile's path. You can also use Polarity to determine whether the missile bounces the same direction or alternates direction when fired.
1st Motion Phase:
This first phase is used to get the missile out and away from the ship before it starts spiraling. The Throw Vector is the direction it is launched and the Outro determines how far it gets before spiraling.
2nd Motion Phase:
This phase's sole purpose is to allow the missile to track the target.
3rd Motion Phase:
This field applies the Wave Overlay to the missile and zig-zags until it hits the target due to the Outro having a value of -1. It is important to note that the Driver from the previous phase persists through this phase meaning you don't need to set a new driver. If you want to change how much the Overlay affects the missile, Scale lessens or amplifies the zig-zag motions.
It is entirely possible to do away with this phase and apply the Overlay to the Guidance Phase, but I prefer not to for flexibilities sake. The additional phase allows you to control the bouncing and missile movement independently.
Other Important Fields
Acceleration: If you don't want to change the Wavelength, you can use acceleration to speed up the missile and overcome its zig-zag motion.
Burst Missiles
This is an example group of movers that will cause multiple missiles to "bloom" outward at launch before arcing to the target. While very simple in design, you can easily add more Motion Phases or apply Motion Overlays to get the desired movement patterns and/or arcs.
Example - (Phoenix Missiles)
(Missile 1) 1st Motion Phase:
This first phase arcs the missile in the +Z (up) direction before tracking the target.
(Missile 1) 2nd Motion Phase:
This phase allows the missile to track the target.
(Missile 2) 1st Motion Phase:
This first phase arcs the missile in the +X (left) direction before tracking the target.
(Missile 2) 2nd Motion Phase:
This phase allows the missile to track the target.
(Missile 3) 1st Motion Phase:
This first phase arcs the missile in the -Z (down) direction before tracking the target.
(Missile 3) 2nd Motion Phase:
This phase allows the missile to track the target.
(Missile 4) 1st Motion Phase:
This first phase arcs the missile in the -X (right) direction before tracking the target.
(Missile 4) 2nd Motion Phase:
This phase allows the missile to track the target.
Other Fields
My examples didn't cover all of the possible fields you can edit, but some of the fields are self-explanatory like Flight Time or Timeout. I'll be adding the fields here if they don't fit into one of the above missile "themes." I'll also make new categories if you come up with something that isn't covered here. Any input is appreciated :D
Oh my, i love u guy so much :D
Can u post some example maps for spiral or zizag missile??
You posted that just before I finished uploading it. The map is now included :D
I forgot that i haven't updated the game yet(don't have any beta-key), so the map won't work with me :(
Maybe i should create by myself. Anyway, thank for the tutorial :D
Hey!
Im making a grenade, using something similar to the above Mortal/Grenade mover thingy.
Grenades doesnt often fly in the air like a missile towards the target, but kinda spins randomly in the air while travelling.
Is this done with movers or in the Actor of the grenade? =)
In StarCraft 1, if you set a missile to "Go To Max. Range" in weapons.dat (like the Lurker's weapon, which is actually a missile), it fires in the direction that the attackwith opcode that launches it is reached in iscript.bin. By turning the unit by increments of one until the unit goes through a full circle, and calling attackwith after each turn, you could create "nova" attacks that fire in all directions. Variations on this include the "partial nova", where the unit sometimes turns in larger increments, allowing things like a plus-sign shaped attack or a conical blast, the "randomized nova", where each attackwith had a chance to be skipped, causing the attack to head in certain random directions, and the "randomized partial nova", which is a combination of the two. How would you go about creating something like this in SC2? I'm currently doing it by manually launching the attack with the "launch effect at point" trigger, but doing it with the data editor would probably be less laggy.
tl;dr Can you make an attack that launches in a different direction than the one that the unit is firing in without using triggers?
@ Jakpe - From what you are describing I'd suggest adding a Revolver Overlay. Check out the Spiraling Missiles section and test out the mover in my example map. If that's the kind of spiral you want, you can adjust the values to make the spiral less obvious so that your arc flies through the air while slightly spiraling.
@ Biophysicist - Are you wanting the missiles to be targetless (shoot out from a given point until they hit something) or are you wanting to "burst" from the shooter in a given pattern and then lock on to a target or the target in their line of fire? All of what you are asking is possible depending on the situation.
@ YiffMaster - Glad I could help :D
Sorry, I wasnt being clear enough ^^
I mean the Grenade itself to spin randomly, not around the axis of fire.
This is probably something that has to be done in the actor and not the mover though.
Thanks anyways!
Awesome Tutorials!
In order for the grenade to spin you would indeed need to use Actors and possibly a few rotation Site Operations.
You could either set facing multiple times or change Site Ops over time.
Can u remade the "halo rockets" of SC1's Valkiry unit.
It look like a bunch of rocket shoot out.
@ProzaicMuze: Go
I presume he's referring to the novas that I used in AO and such. Basically, think Diablo 1/2 nova. The projectiles do damage as they travel over enemy units and you can also determine special effects/bonus damage at the end of their travel.
The randomized variants are best summarized as like those The Great Destroyer uses, where he fires randomized fire waves that also have randomized effects that occur when they reach the end of their travel distance (doing damage to enemies they travel over).
As a heavy user of these kinds of weapons I, too, would like to see them done in Sc2. I'd also love to see the version you speak of where they explode on impact with something. :D
@MrZ3r0 - You can make the Valkyrie missiles using the Spiral movers with Revolver Acceleration (to cause sporadic spirals). Look up my Psyborg video to see how this would look. While not exact, the missiles burst from a single point and then travel out and in non-uniform patterns.
@IskatuMesk - He could actually mean several things. Piercing Missiles, Pathing Missiles, Blast Missiles, Nova Missiles. . . etc Regardless, all of these things are possible. I just need to know WHICH kind of missile he/you want so that I can explain how to do it. In his case, I'm unsure.
For you, if you want to create novas, you can make a persistent with periodic offsets and fire missiles to their locations OR fire multiple missiles from a persistent effect with each missile having an impact offset. Either way the missiles will launch from your location and explode at the offset locations. If you want to make them explode upon traveling through an object along their path, you apply buffs to the missile units themselves.
Buff > Search > Set [Damage (Missiles Damage) | Damage (Flag: Kill)]
This will cause the missile to search for targets while flying. If it finds any, it will deal its damage and kill itself. Alternatively you can give your Missile health and have the Damage do increments instead of "Kill" so that it passes through multiple targets. Each target doing 1 damage to the missile until it's predetermined "ticks" have been used up.
Is there a way to make the offset relative to the direction the unit is facing?
The offsets are already relative to the units facing. +Y is behind the unit, -Y is in front of the unit, +X is left of the unit and -X is right of the unit.
Thus if you wanted to make 8 missiles shoot in the cardinal directions from the unit, your impact offsets would be:
N: (0,-5)
NE: (-5, -5)
E: (-5,0)
SE: (-5, 5)
S: (0, 5)
SW: (5, 5)
W: (5, 0)
NW: (5, -5)
I have a behavior that runs a periodic effect. The effect is a create persistent effect with the field Target - Offset Expire set to (-3,-3) and the field Expire Effect set to the Launch Missile Effect. The Launch Missile's effect has the field Impact Location set to Target Point, the Source Location set to Caster Unit, and I have the Impact Effect set to an effect that creates a baneling. When I test this, the missile is launched and always creates a baneling to the bottom left of the unit regardless of where the unit is facing.
I also tried setting the Impact Offset field in the Launch Missile effect instead of the Offset in the persistent effect, but that just creates banelings at my unit.
Is this a targeted effect or an instant effect (click the button and it runs itsel?f)
It's just a behavior that periodically runs a persistent effect which runs a launch missile effect.
I'm trying to do something like the infestor's ability to launch eggs that morph into infested terrans, but instead make it a passive periodic behavior that launches eggs in the direction the unit is facing and instead of having them morph into infested terrans, make a delayed explosion like a grenade.
devilesk did you find a way to make what you wanted yet cuz im needing the same thing
@devilesk - try the following effect chain:
Behavior - Buff > Effect - Persistent > Effect - Launch Missile > Effect - Create Persistent > Effect - Damage (Splash)
Give the Behavior -1 Periods (so it lasts forever) and have the Periodic Effect be to create the Persistent. Give the 1st Persistent 1 Period with the desired Periodic Offset (0, -3) and Launch Missile Periodic Effect. Make the Missile launch from Source Unit to Target Point (t)he Periodic Offset) and have it's Impact Effect be Create Persistent. Give the 2nd Persistent 1 Period with the desired duration and Damage (Splash) Periodic Effect.
This should give you something similar to what you want and allow you to create graphics for each part of the process.