Attachment Turret is the name of the Actor you are setting as the Host for your Site Actor
SOpAttachWeapon is a Site Operation Actor created by Blizzard. It is not mentioned elsewhere as you do not need to create it yourself. It already exists.
I'm not sure what I am doing wrong here, I went through and read the replies you gave to people saying that the animation isn't lining up after they used an offset.
The same thing is happening to me but the attachment point seems animated with the unit because it works fine if there is no offset (also the attachment point moves with the unit in the previewer) but as soon as I add any offset it stops animating/scaling with the unit completely.
any ideas?
Edit: I am not sure if my problem is caused from a custom import
Also what I am trying to do is attach a helmet to a skeleton and move it up a little bit so that it looks better. I attached a map to show what I mean.
As best I can tell this issue is limited to custom models (like imported WoW models). I haven't done much work with complex attachments on important models so I'd need to look into this further before I can say for certain what is causing the issue.
I also have this problem, I used this tutorial as a basis in making a structure whith the attachment of a point defense drone. However, it does not matter how much I try I can not get it to spin or move. I did the same with a Science Vessel and it spins properly. I have revised this tutorial for days now copying it completly. All this in vain as the problem remains. Could you help me in any way?
If you're not using a custom model, I don't see a reason why you would have issues. I'd need more details or a copy of your map to know what, exactly, the problem is.
If you're still having the problem, attach a copy of your map so I can give it a look. If it is indeed something that changed in an update I'll need to look where the change was made and update the tutorial accordingly :)
You should get in the habit of editing with all 5 buttons enabled on the right of the center divide. All of my tutorials were made with this setup. All of my tutorials also use three dependencies. Some of my earlier tutorials, don't have the Campaign dependencies, but this doesn't matter because this setup gives you access to everything in the editor and is backwards compatible:
Liberty Story (Campaign)
Liberty (Campaign)
Liberty (Mod)
In that order. Keep in mind that you can always download my test map and look at exactly how my dependencies are setup.
As for duplicating you guessed right. I mean, quite literally, check the top box and the one actor box that has the same name. After you've made these adjustments and tried again let me know if you're still having the same problem and we can start from there :)
It sounds like you attached the turret to a point that doesn't move with the animation of the unit (the bobbing). You can probably fix this by opening the model in the previewer and pressing A. Then find one of the triangles that bobs up and down during the animation and attach the turret to this point (offset it if needed).
I've updated the tutorial to hopefully be more user friendly.
@Mienk - You can certain use the Site Operations I created on an actual attachment, but you need to make sure Local is enabled (if it isn't already) on Explicit Rotation SOps and that you're attaching to a point that animates with the unit. For example, if you open your model in the previewer and press A, you'll notice that not all of the triangles are moving with the unit. This means it's not ideal for attachments that you need to move with the unit. Find one that moves in the way that you want (it doesn't matter what part of the body given that you can offset it) and use that as your anchor for your SOps.
@SaucySC (And Mienk) - In order for your attachments to blow up and die when the host does, you have to either add events to include the desired animations or create splats when the unit dies. For example, if you wanted your building to play it's death animation when the host dies, you'd change change the events from
UnitDeath.[HOST] > Destroy
to
UnitDeath.[HOST] > Animation Play (Configure for your Death animation)
Animation Done (Death) > Destroy
Now instead of blowing up it animates and THEN blows up. You would use similar events based upon what you were trying to accomplish. If the unit doesn't have a death animation, you'd find the splat it uses and have the attachment create that splat via the Create Event.
You can use this tutorial for Turrets as a reference. I include steps for making the attached turrets explode instead of just disappearing. I may update the test map and tutorial at a later point to show how do to so here as well.
@Redfox777 - SOpBanker was one of the actors already included on the Wraith. I did not add this myself. I didn't cover it because it controls a units movement when turning. If you look closely, the Wraith will tilt slightly as it turns. This is banking hence the name Banker.
Your turret probably isn't bobbing with the train while idle because of the attachment point you used. While annoying, sometimes when switching between animations (your trains movement vs it's standing) an attachment point will go from moving with the model to floating in space while the model continues to move.
It's important to note that it's not the host that needs the TurretZ attachment point. It's the model you want to make into a turret that needs this so that it can rotate. So you can attach a unit wherever you want, but not every model can be made into a turret given that only certain models have these turret bones.
@KorvinGump - With lots of practice. Most folks will find new fields they don't know and leave them alone because they are unsure what will happen if they change them. I will purpose mess with all of the fields I can find until I figure out what they do while noting what bad things may happen. This trial and error is the fastest way to learn what fields mix well with others.
@GePanda - The turret isn't responsible for splash damage, the Effect - Damage is. You would add an area to the Effect - Area+ field OR add an Effect - Search in front of the damage and have it search for targets in an area and apply your damage effect to those targets.
@38dedo - I understand where you're coming from, but I hear a lot more people tell me they enjoy my tutorials because they are very concise and to the point than those asking for more elaborate explanations. However Attachments are definitely a tricky subject. Would it help if I added a recap section at the end that quickly walked through each of the objects made and what parts were used where? That way you make the stuff first, then you go back and connect the dots without worrying about all the numbers and fields?
Most definitely, but until I've spent a lot of time and found a better way, this is the first Idea that comes to mind:
This is going to be very hackish, but I see no reason why it wouldn't work.
Essentially you take ANY unit and create a turret model. Doesn't matter what the model is as long as it has the Turret Z attachment point. Then you attach this model to your unit's Center attachment point and shrink it waaaay down. This essentially hides the turret inside the model. You don't want this to be seen. Then you can take the object you DO want to be seen and attach it to the Weapon attachment point of this turret. Use Site Operation (Local Offset) to create your orbit radius and then setup the turret to spin when idle at whatever speed you want.
Create a weapon for this turret, attach it to your unit and then the important part: Exclude EVERYTHING in the Weapon's Target Filters and make it Hidden. You will essentially make this weapon have no effect. Now your turret will always spin. From here you can make beams fire from the orbiting object through Site Actors or missiles launch from it through SOps.
I'm sure this can be simplified in a few ways, but this is the first idea that came to mind. When I have the free time I'll look into making a concept map and video.
It sounds like either your Turret Object isn't setup or you don't have the right events in the Turret Actor. Also, look at the Bunker to see how the Shrike Turret is attached to that. I believe you can remove a couple of events (that use validators to check for upgrades before adding the turret) to make the bunker start with Shrike Turrets. Then you wouldn't need to make it from scratch.
(If you see typos, please point them out so that I can fix them)
I got a lot of requests for a more basic and intuitive guide for attachments after making the Uberlisk Tutorial. So this will serve to bridge the gap between those needing to understand what attachments are and those who have a solid understanding of them. It's important to note that this doesn't cover all aspects of attachments given that there are some fairly complex methods of attaching objects together. These are merely the methods that I think are likely to become commonplace once more widely understood.
Attachment Basics
The vast majority of attachments are based upon Site Operation Actors. Even when using Site Actors to create custom launch points you are likely still using a Site Operation to specify its exact location. This means understanding related fields is central to using them:
Host: The actor the attachment is anchored to
Host Launch: The unit/location a beam/projectile is fired from.
Host Impact: The unit/location a beam/projectile is fired to.
Host Supporter: The actor that Signals are sent to/from. This is ONLY needed used with Signals, ::Supporter values or SupporterDestruction events. We won't be covering this, but it's important to understand that this field has a wide range of uses. Look at stock units made by Blizzard to see the various ways they use it.
[ANY] Site Operations: This is where you specify offsets, rotations and other modifications by linking Site Operation Actors.
Bunker Turret
We're going to make a bunker with a fully functioning turret. The turret will fire a beam and have its own attachment. In my Test Map I've removed all abilities unrelated to this turret, but you can easily keep the basic functions of the bunker as well as the added turret weapon.
Effects Tab
Create a new Effect named Attachment Turret (Damage) with Effect Type: Damage
set AI Notify Flags: Hurt Enemy
set Amount: 10
set Armor Reduction: 1
set Death: Fire
set Flags: Notification
set Kind: Ranged
set Response Flags: [Acquire/Flee]
The 3 Flag fields are what cause the unit you attack to respond to you. Either they will attack you or run away based upon what responses the unit has been given.
Weapons Tab
Create a new Weapon named Attachment Turret
set Effect:Attachment Turret (Damage)
set Damage Point: 0.5
set Period: 1.5
set Range: 6
set Damage Display Effect:Attachment Turret (Damage)
set Icon: btn-techupgrade-terran-particlecannon.dds
set Target Filters: Exclude [Dead/Hidden/Invulnerable/Missile/Self/Stasis] and Require [Visible]
This is the Turrets weapon that will go on the unit.
Turrets Tab
Create a new Turret named Attachment Turret
set Idle: Spin
set Yaw Arc: 360
set Yaw Idle Rate: 45
set Yaw Rate: 720
set Yaw Start: 0
You can set these to whatever you'd prefer, but Idle controls the turrets action when not in combat, Yaw Arc controls its range of motion, Yaw Idle Rate is how quickly the turret rotates out of combat, Yaw Rate is how quickly the turret rotates in combat and Yaw Start determines the angle the turret begins facing.
Models Tab
Create a new Model named Attachment Shield
set Model: MarineShieldUpgrade.m3
Create a new Model named Attachment Turret
set Model: FlameTurret.m3
Create a new Model named Beam Example
set Model: DiamondbackBeam.m3
Units Tab
Duplicate the Bunker structure and its corresponding Actor. Everything else will be stock or made from scratch.
Name it Attachment Bunker
open Abilities + and remove all but [Attack/Stop]
open Command Card+ and add [Attack/Stop] buttons
remove everything in Behaviors +
open Weapons + and add Attachment Turret (Weapon and Turret)
Name the building's Actor Attachment Bunker
Actors Tab
Site Operation Actors
Create a new Actor named SOpAttachDamage03 with Actor Type: Site Operation (Attachment)
set Attachment Query +: Direct > Damage [Index 3]
Create a new Actor named SOpAttachTurretZ with Actor Type: Site Operation (Attachment)
set Attachment Query +: Direct > Turret Z
Attachment Query + is where you use Attachment Methods (AMs) or Direct values to specify how attachments link together.
AMs are filters in that AMFilterWeapon wouldlook for any attachment point with the name Weapon to use. It usually takes the lowest index (0, 1 etc) first and before looking for other points. This can be convenient for use with a wide range of models. Direct allows you to pick a specific point and index. If you didn't want Weapon00/01 you could use Direct to attach to Weapon07 instead.
Create a new Actor named SOpAdjustTurret with Actor Type: Site Operation (Local Offset)
set Local Offset: (0.0, -0.02, -0.1)
Create a new Actor named SOpAdjustShield with Actor Type: Site Operation (Local Offset)
set Local Offset: (-0.06, -0.035, 0.17)
These Site Operations will offset the attachments in any direction while preserving its facing and rotational axis. Using the objects original point as the origin:
+X is right of the object, -X is left of the object
+Y is towards/into the object, -Y is away from/out of the object
+Z is above the object, -Z is below the object
One thing to note is that while it preserves its rotational axis, some anchor (attachment) points will actually tilt this axis to align it with the plane it's attached to. In other words, if you attach it to a surface that's at a 45 degree angle to ground, the attached model will also be at a 45 degree angle. Thus it's important to pick the right anchor point to move from before applying offsets.
Create a new Actor named SOpTiltShield with Actor Type: Site Operation (Explicit Rotation)
set Forward: (0.2, -1.0, 0.1)
set Is Local: Enabled
set Up: (-1.0, 0.0, 0.0)
This Site Operation tilts and rotates the shield model. It's important that
local is enabled so that the vectors rotate with the attachment. If it is not, the rotation is static and faces the map direction created by the vectors. Also, you must have a value for BOTH vectors even if using the default forward/facing (0.0, -1.0, 0.0) or up/axis (0.0, 0.0, -1.0). If either field is left with (0.0, 0.0, 0.0) the attachment will spin sporadically as the attachment Host moves.
The directions from offsets are the same, but instead of moving the object you are going to create new vectors. Forward is the facing vector and Up is the rotational axis vector. Some examples:
Face North
Forward - (X: 0.0,Y: 1.0, Z: 0.0)
Up - (X: 0.0,Y: 0.0, Z: 1.0)
Face Up
Forward - (X: 0.0, Y: 0.0, Z: 1.0)
Up - (X: 0.0, Y: 0.0, Z: 1.0)
Face South West
Forward - (X: -1.0, Y: -1.0, Z: 0.0)
Up - (X: 0.0,Y: 0.0, Z: 1.0)
Tilt West
Forward - (X: 0.0, Y: -1.0, Z: 0.0)
Up - (X: -1.0, Y: 0.0, Z: 0.0)
Tilt North East
Forward - (X: 0.0, Y: -1.0, Z: 0.0)
Up - (X: 1.0, Y: 1.0, Z: 0.0)
Flip Upside Down
Forward - (X: 0.0, Y: -1.0, Z: 0.0)
Up - (X: 0.0, Y: 0.0, Z: -1.0)
Model Actors
Create a new Actor named Attachment Turret with Actor Type: Model and Based On: ModelAddition
set Model:Attachment Turret
set Scale: 0.75
set Host +: Subject > Attachment Bunker
set Host Site Operations+:SOpAttachTurretZ and SOpAdjustTurret
open Events + and create the following events:
Unit Birth - Attachment Bunker
Create
Unit Death - Attachment Bunker
Destroy
Actor Creation
Animation Play (Name: Attach; Animation Properties: Stand; Flags: Play Forever)
Weapon Start - Attachment Turret - Attack Start
Animation Play (Name: Attack; Animation Properties: Attack)
Weapon Stop - Attachment Turret - Attack Stop
Animation Clear (Name: Attack)
This will create the turret model, attach it to the bunker with the specified offset and play its attack animation whenever the bunker's weapon fires. Its creation and destruction both tied to the Attachment Bunker.
Create a new Actor named Attachment Shield with Actor Type: Model and Based On: ModelAddition
set Model:Attachment Shield
set Host +: Subject > Attachment Turret
set Host Site Operations+:SOpAttachDamage03, SOpAdjustShield and SOpTiltShield
open Events + and create the following events:
Unit Birth - Attachment Bunker
Create
Unit Death - Attachment Bunker
Destroy
Actor Creation
Animation Play (Name: Attach; Animation Properties: Stand; Flags: Play Forever)
This will create the shield model and attach it to the turret with the specified offset and rotation. Its creation and destruction both tied to the Attachment Bunker.
Create a new Actor named Beam Example with Actor Type: Beam (Simple) and Based On: Beam Simple Animation Style One Shot
set Model:Beam Example
open Events + and create the following events:
Actor Creation
Animation Play (Name: Beam; Animation Properties: Stand; Time Variant: 0.5; Time Type: Duration)
Animation Done
Destroy
This actor is part of pair. We're going to create its Attack Actor next.
Other Actors
Create a new Actor named Beam Example Site with Actor Type: Site
set Host +: Subject > Attachment Turret
set Host Site Operations +:SOpAttachWeapon
open Events + and create the following events:
Unit Birth - Attachment Bunker
Create
Unit Death - Attachment Bunker
Destroy
This actor will allow you to shoot the beam from the turret by creating a point of reference. This can be any attachment point or even a random point in space. All that matters is that this actor is created at the same time the unit it will be associated with.
Create a new Actor named Beam Example Attack with Actor Type: Action and Based On: GenericAttack
set Attack Effect Token:Attachment Turret (Damage)
set Beam:Beam Example (Actor)
set Launch Assets +: Sound > Diamondback_AttackLaunch
If you use the token, you don't need to mess with the events. While I didn't do so in the Test Map, I'll typically change the token AND clear out the extra events that I don't need. This is just for my own personal organization and isn't required at all. That asside, The Launch Assets + controls the sounds/models created at the Launch Site and the Impact Map + controls the sounds/models created at the impact point.
Create a new Actor named Turret Actor with Actor Type: Turret
set Turret Body +:Attachment Turret
set Yaw Query +: Direct > Turret Z
open Events + and create the following events:
Turret Enable - Attachment Turret
Create
This actor allows the turret to function by tying the Turret object to the Turret actor. The Turret Body + is the model that will rotate while the Yaw Query + is the axis.
Flipped Wraith
Fairly self-explanatory. We're going to flip a Wraith upside down. While not incredibly impressive on its own, this is to demonstrate how to change the angle of ships. I've seen a lot of posts asking how to change the Yaw, Pitch and Roll of flying ships and this portion of the tutorial aims to answer those questions.
Actors Tab
Create a new Actor named SOpFlip with Actor Type: Site Operation (Explicit Rotation)
set Forward: (0.0, -1.0, 0.0)
set Is Local: Enabled
set Up: (0.0, 0.0, -1.0)
This actor does nothing more than reverse a unit's axis. As mentioned before you need to input values for both vectors (default or otherwise) and ensure local is enabled.
Find the Actor named Wraith
set Host Site Operations +:SOpBankerWraith and SOpFlip
Now the Wraith flies upside down :)
(Note, SOpBankerWraith is a Site Operation made by Blizzard. It does not contribute to attaching models together or flipping the Wraith. It controls how much a unit banks (tilts/rolls)as it turns. You can see this when you make sharp turns while flying around.
Feel free to use the attached Test Map or contact me via forum post/IRC if you encounter problems. Keep in mind that I'm a busy person so I may not reply right away, but I'll do my best to answer all questions/concerns that I am aware of :)
Attachment Turret is the name of the Actor you are setting as the Host for your Site Actor
SOpAttachWeapon is a Site Operation Actor created by Blizzard. It is not mentioned elsewhere as you do not need to create it yourself. It already exists.
What is the exact error you are getting? Is "Link Invalid" all that shows up?
As best I can tell this issue is limited to custom models (like imported WoW models). I haven't done much work with complex attachments on important models so I'd need to look into this further before I can say for certain what is causing the issue.
If you're not using a custom model, I don't see a reason why you would have issues. I'd need more details or a copy of your map to know what, exactly, the problem is.
If you're still having the problem, attach a copy of your map so I can give it a look. If it is indeed something that changed in an update I'll need to look where the change was made and update the tutorial accordingly :)
You should get in the habit of editing with all 5 buttons enabled on the right of the center divide. All of my tutorials were made with this setup. All of my tutorials also use three dependencies. Some of my earlier tutorials, don't have the Campaign dependencies, but this doesn't matter because this setup gives you access to everything in the editor and is backwards compatible:
In that order. Keep in mind that you can always download my test map and look at exactly how my dependencies are setup.
As for duplicating you guessed right. I mean, quite literally, check the top box and the one actor box that has the same name. After you've made these adjustments and tried again let me know if you're still having the same problem and we can start from there :)
The weapon belongs to the bunker and is being offset to the attachment.
It sounds like you attached the turret to a point that doesn't move with the animation of the unit (the bobbing). You can probably fix this by opening the model in the previewer and pressing A. Then find one of the triangles that bobs up and down during the animation and attach the turret to this point (offset it if needed).
I've updated the tutorial to hopefully be more user friendly.
@Mienk - You can certain use the Site Operations I created on an actual attachment, but you need to make sure Local is enabled (if it isn't already) on Explicit Rotation SOps and that you're attaching to a point that animates with the unit. For example, if you open your model in the previewer and press A, you'll notice that not all of the triangles are moving with the unit. This means it's not ideal for attachments that you need to move with the unit. Find one that moves in the way that you want (it doesn't matter what part of the body given that you can offset it) and use that as your anchor for your SOps.
@SaucySC (And Mienk) - In order for your attachments to blow up and die when the host does, you have to either add events to include the desired animations or create splats when the unit dies. For example, if you wanted your building to play it's death animation when the host dies, you'd change change the events from
to
Now instead of blowing up it animates and THEN blows up. You would use similar events based upon what you were trying to accomplish. If the unit doesn't have a death animation, you'd find the splat it uses and have the attachment create that splat via the Create Event.
You can use this tutorial for Turrets as a reference. I include steps for making the attached turrets explode instead of just disappearing. I may update the test map and tutorial at a later point to show how do to so here as well.
@Redfox777 - SOpBanker was one of the actors already included on the Wraith. I did not add this myself. I didn't cover it because it controls a units movement when turning. If you look closely, the Wraith will tilt slightly as it turns. This is banking hence the name Banker.
Your turret probably isn't bobbing with the train while idle because of the attachment point you used. While annoying, sometimes when switching between animations (your trains movement vs it's standing) an attachment point will go from moving with the model to floating in space while the model continues to move.
It's important to note that it's not the host that needs the TurretZ attachment point. It's the model you want to make into a turret that needs this so that it can rotate. So you can attach a unit wherever you want, but not every model can be made into a turret given that only certain models have these turret bones.
@KorvinGump - With lots of practice. Most folks will find new fields they don't know and leave them alone because they are unsure what will happen if they change them. I will purpose mess with all of the fields I can find until I figure out what they do while noting what bad things may happen. This trial and error is the fastest way to learn what fields mix well with others.
@GePanda - The turret isn't responsible for splash damage, the Effect - Damage is. You would add an area to the Effect - Area+ field OR add an Effect - Search in front of the damage and have it search for targets in an area and apply your damage effect to those targets.
@38dedo - I understand where you're coming from, but I hear a lot more people tell me they enjoy my tutorials because they are very concise and to the point than those asking for more elaborate explanations. However Attachments are definitely a tricky subject. Would it help if I added a recap section at the end that quickly walked through each of the objects made and what parts were used where? That way you make the stuff first, then you go back and connect the dots without worrying about all the numbers and fields?
Example:
Most definitely, but until I've spent a lot of time and found a better way, this is the first Idea that comes to mind:
This is going to be very hackish, but I see no reason why it wouldn't work.
Essentially you take ANY unit and create a turret model. Doesn't matter what the model is as long as it has the Turret Z attachment point. Then you attach this model to your unit's Center attachment point and shrink it waaaay down. This essentially hides the turret inside the model. You don't want this to be seen. Then you can take the object you DO want to be seen and attach it to the Weapon attachment point of this turret. Use Site Operation (Local Offset) to create your orbit radius and then setup the turret to spin when idle at whatever speed you want.
Create a weapon for this turret, attach it to your unit and then the important part: Exclude EVERYTHING in the Weapon's Target Filters and make it Hidden. You will essentially make this weapon have no effect. Now your turret will always spin. From here you can make beams fire from the orbiting object through Site Actors or missiles launch from it through SOps.
I'm sure this can be simplified in a few ways, but this is the first idea that came to mind. When I have the free time I'll look into making a concept map and video.
It sounds like either your Turret Object isn't setup or you don't have the right events in the Turret Actor. Also, look at the Bunker to see how the Shrike Turret is attached to that. I believe you can remove a couple of events (that use validators to check for upgrades before adding the turret) to make the bunker start with Shrike Turrets. Then you wouldn't need to make it from scratch.
(If you see typos, please point them out so that I can fix them)
I got a lot of requests for a more basic and intuitive guide for attachments after making the Uberlisk Tutorial. So this will serve to bridge the gap between those needing to understand what attachments are and those who have a solid understanding of them. It's important to note that this doesn't cover all aspects of attachments given that there are some fairly complex methods of attaching objects together. These are merely the methods that I think are likely to become commonplace once more widely understood.
Attachment Basics
The vast majority of attachments are based upon Site Operation Actors. Even when using Site Actors to create custom launch points you are likely still using a Site Operation to specify its exact location. This means understanding related fields is central to using them:
Bunker Turret
We're going to make a bunker with a fully functioning turret. The turret will fire a beam and have its own attachment. In my Test Map I've removed all abilities unrelated to this turret, but you can easily keep the basic functions of the bunker as well as the added turret weapon.
Effects Tab
The 3 Flag fields are what cause the unit you attack to respond to you. Either they will attack you or run away based upon what responses the unit has been given.
Weapons Tab
This is the Turrets weapon that will go on the unit.
Turrets Tab
You can set these to whatever you'd prefer, but Idle controls the turrets action when not in combat, Yaw Arc controls its range of motion, Yaw Idle Rate is how quickly the turret rotates out of combat, Yaw Rate is how quickly the turret rotates in combat and Yaw Start determines the angle the turret begins facing.
Models Tab
Units Tab
Duplicate the Bunker structure and its corresponding Actor. Everything else will be stock or made from scratch.
Actors Tab
Site Operation Actors
Attachment Query + is where you use Attachment Methods (AMs) or Direct values to specify how attachments link together.
AMs are filters in that AMFilterWeapon wouldlook for any attachment point with the name Weapon to use. It usually takes the lowest index (0, 1 etc) first and before looking for other points. This can be convenient for use with a wide range of models. Direct allows you to pick a specific point and index. If you didn't want Weapon00/01 you could use Direct to attach to Weapon07 instead.
These Site Operations will offset the attachments in any direction while preserving its facing and rotational axis. Using the objects original point as the origin:
+X is right of the object, -X is left of the object
+Y is towards/into the object, -Y is away from/out of the object
+Z is above the object, -Z is below the object
One thing to note is that while it preserves its rotational axis, some anchor (attachment) points will actually tilt this axis to align it with the plane it's attached to. In other words, if you attach it to a surface that's at a 45 degree angle to ground, the attached model will also be at a 45 degree angle. Thus it's important to pick the right anchor point to move from before applying offsets.
This Site Operation tilts and rotates the shield model. It's important that local is enabled so that the vectors rotate with the attachment. If it is not, the rotation is static and faces the map direction created by the vectors. Also, you must have a value for BOTH vectors even if using the default forward/facing (0.0, -1.0, 0.0) or up/axis (0.0, 0.0, -1.0). If either field is left with (0.0, 0.0, 0.0) the attachment will spin sporadically as the attachment Host moves.
The directions from offsets are the same, but instead of moving the object you are going to create new vectors. Forward is the facing vector and Up is the rotational axis vector. Some examples:
Face North
Forward - (X: 0.0,Y: 1.0, Z: 0.0)
Up - (X: 0.0,Y: 0.0, Z: 1.0)
Face Up
Forward - (X: 0.0, Y: 0.0, Z: 1.0)
Up - (X: 0.0, Y: 0.0, Z: 1.0)
Face South West
Forward - (X: -1.0, Y: -1.0, Z: 0.0)
Up - (X: 0.0,Y: 0.0, Z: 1.0)
Tilt West
Forward - (X: 0.0, Y: -1.0, Z: 0.0)
Up - (X: -1.0, Y: 0.0, Z: 0.0)
Tilt North East
Forward - (X: 0.0, Y: -1.0, Z: 0.0)
Up - (X: 1.0, Y: 1.0, Z: 0.0)
Flip Upside Down
Forward - (X: 0.0, Y: -1.0, Z: 0.0)
Up - (X: 0.0, Y: 0.0, Z: -1.0)
Model Actors
This will create the turret model, attach it to the bunker with the specified offset and play its attack animation whenever the bunker's weapon fires. Its creation and destruction both tied to the Attachment Bunker.
This will create the shield model and attach it to the turret with the specified offset and rotation. Its creation and destruction both tied to the Attachment Bunker.
This actor is part of pair. We're going to create its Attack Actor next.
Other Actors
This actor will allow you to shoot the beam from the turret by creating a point of reference. This can be any attachment point or even a random point in space. All that matters is that this actor is created at the same time the unit it will be associated with.
If you use the token, you don't need to mess with the events. While I didn't do so in the Test Map, I'll typically change the token AND clear out the extra events that I don't need. This is just for my own personal organization and isn't required at all. That asside, The Launch Assets + controls the sounds/models created at the Launch Site and the Impact Map + controls the sounds/models created at the impact point.
This actor allows the turret to function by tying the Turret object to the Turret actor. The Turret Body + is the model that will rotate while the Yaw Query + is the axis.
Flipped Wraith
Fairly self-explanatory. We're going to flip a Wraith upside down. While not incredibly impressive on its own, this is to demonstrate how to change the angle of ships. I've seen a lot of posts asking how to change the Yaw, Pitch and Roll of flying ships and this portion of the tutorial aims to answer those questions.
Actors Tab
This actor does nothing more than reverse a unit's axis. As mentioned before you need to input values for both vectors (default or otherwise) and ensure local is enabled.
Now the Wraith flies upside down :)
(Note, SOpBankerWraith is a Site Operation made by Blizzard. It does not contribute to attaching models together or flipping the Wraith. It controls how much a unit banks (tilts/rolls)as it turns. You can see this when you make sharp turns while flying around.
Feel free to use the attached Test Map or contact me via forum post/IRC if you encounter problems. Keep in mind that I'm a busy person so I may not reply right away, but I'll do my best to answer all questions/concerns that I am aware of :)