(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 :)
I'm having a little issue however - the turret isn't spinning and is not facing whoever it's supposed to attack. It just stays there like a statue - but the attack anim is playing correctly. Also, I used the Shrike turret model instead of Flaming Betty because I wanted to make it fire from both cannons. How can I do that? I want to make each cannon to fire one after the other.
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.
Found something - for the Turret Actor, I think you meant set Turret Body+: Attachment Bunker, not Attachment Turret. The turret begins spinning when I do that, but now it isn't attacking from the Turret but from the Bunker.
EDIT: Right, my bad, the beam wasn't firing from the Turret in the first place. I must have done something wrong down the line.
EDIT2: I really don't know why it's not attacking from the turret :S
Hmm, this seems to come closest to my question: All i found here about rotation and orbiting is how to move a model one time, for good. Is it possible to let a turret orbit a unit? Like a Zealot with a Glowing ball around his head, that is orbiting him and well, is a turret that shots?
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.
Hmm, sounds interesting. Ill try that out, hope my understanding of turrets and attaching them will suffice. Still having a hard time to decide when i will need an actor and what i actually have to put into that actor :/
Cant get this to work, sounded easier then it seems to be. Looking forward to your concept map. Pretty sure this would be a cool effect a lot of people would like to use!
Edit: Was able to implement this into your Attachment tutorial map now, kinda need to add and change a lot of stuff, but got the balls orbiting the turret and shooting. Looks awesome. Now i hope i can implement this into my own towers as well, without breaking them lol
This is the second tutorial I read about site ops and I still don't get a thing.
When I read any tutorial I just follow it like a parrot, untill I end up with the end result, not knowing how I got there, or how I could learn something from what I've done.
I'd really appreciate it if you could just simply demonstrate a very simple and very quick way to attach models together via data.
I dont want a spine crawler, a turret or anything acting, please just show me for example, the quickest way to attaching say, a tree to a marine's head.
I'd also appreciate it more if you could explain more during your tutorial, I'd learn a lot more if instead of just telling me to, for example:
"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]"
You could tell me after a thing like that, exacly what I just did, what I did it for, and other causes, effects, or really, what did I just do? cus If I don't know I haven't learned a thing.
If you give a man a fish you feed him for a day, if you teach a man how to fish, you feed him for a lifetime.
Frankly, this tutorial threw me a fish.
ProzaicMuze, please consider this.
EDIT: oh and by the way, the fish was very delicious, was just amazing, best fish out there that a tutorial ever gave me, but really, a fish would taste better, even if its rotten, old and slimy as long I caught it myself.
kinda gave up now. I can get your Bunker to rotate the attachment and shot beams out of it. But i can NOT duplicate this behavior to my own tower. Since i am using a doodad as a base i have to attach a hard point to it... i took the auto turret model that has a turretZ point. Also the turret is showing up and i can make it small enough to not see it anymore. But whatever i try... i can not attach anything on the autoturrets turretZ spot. Nothing will show up,... shooting the beam out of something should be working by now, but i am stuck at attaching that golf ball to my auto turret. Copied about everything from the test map and double and triple checked.
Ill go along with 38dedo here and say THANK you for your work here, but id also like to understand what i am doing and not just copying your work every time i try a new Unit / Tower idea. If you find the time to do this "orbiting stuff" Tut and could combine it with the needed explanations, that would just be pure ownage :-)
@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?
What a great tutorial! I liked the other one as well, I even figured out how to successfully attach things and put an offset. This just makes everything more clear to me now! You are great at making tutorials I must say.
I, and everyone else very much appreciates all the hard work you put in to these great tutorials.
But of course when someone like me am trying to learn, when I keep 'copy phasteing' in my head, like copying L2 L3 R1 R2 R3, well you kind of lose track of where you stand, what you're doing, because you are not doing it independently.
Anyway I'd very much appreciate a little review after each major part of a tutorial, so that if someone is not interested in making an uberlisk or a bunker-turret, he just wants to know how to attach a model onto another model using data without all the huss and fuss and weapons and stuff, he could find that section of the tutorial, and skip all the creating actors, and weapons, and the things you might not be interested in, if you want to learn in your own pace.
Another fail sentence I just made up, feel free to facepalm me: Don't teach a man how to ride a horse, if you didn't yet instruct him how to get on it.
What I mean is, I myself, and I'm sure other people will learn a lot if they first learnt how to attach models, then learnt how to make them act as units, then learnt how to make them attack, etc. :)
On a personal note, I teach myself a lot in the editor, like i'm sure, so do you. I found this model attaching a bit tricky, and if I could just see a very very simple way to put models together, I could teach myself the rest, like making them act. Even if I couldn't and will find that part tricky too, This tutorial would be much easier to learn from then.
A recap sounds like a great way to implement this. People that just want to copy paste can do it.... and people that want to learn what each action does can as well. I think it would be cool if you could do it like this:
To attach the turret you need:
1. attach the model to part X (you need to attach to a specific point [like turretZ] BECAUSE,...)
2. then you have to change the actor of XY to ZZ, this will do XX and is needed to archieve this and that BECAUSE,...
Or simple: Leave out everything but the because lol. Explain what you did and WHY and WHAT each step really does (you did the "what" part a little here, that was actually the most useful info for me!)
I was curious if there was a way to Site Ops like SOpAdjustShield and SOpTiltShield in conjuction with an actual attachment? Right now I have an attachment (a weapon) attached to Nova's arm (Weaponless Nova done by Utli with additional attach points) but the thing needs to be rotated and moved a little bit. The moment I attach either SOpAdjustShield or SOpTiltShield the weapon stops animating with the unit (for the most part. Every once in a while it'll jump around during an attack)
I have a question... When you attach something does the birth and death model stay with the attached model?
I'm trying to get a building that has an attached model on it to have, it's death model, birth model, and placement model, all still intact and animations playing when they should. So far from what I've done.. when i attach it to a building only the stand is there, no birth or death, or going unpowered. Things like that. Any solution?
EDIT: I looked at your bunker and i killed it with the marines and it seems you have the same thing as me.. The turret didn't have death model after i killed it. With yours its hardly noticeable but with my bigger buildings and attachments it's very noticeable it just pops out of existence.
(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 :)
@ProzaicMuze: Go
yet another amazing tutorial by the data editor guru, Muze
Amazing tutorial!
I'm having a little issue however - the turret isn't spinning and is not facing whoever it's supposed to attack. It just stays there like a statue - but the attack anim is playing correctly. Also, I used the Shrike turret model instead of Flaming Betty because I wanted to make it fire from both cannons. How can I do that? I want to make each cannon to fire one after the other.
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.
Found something - for the Turret Actor, I think you meant set Turret Body+: Attachment Bunker, not Attachment Turret. The turret begins spinning when I do that, but now it isn't attacking from the Turret but from the Bunker.
EDIT: Right, my bad, the beam wasn't firing from the Turret in the first place. I must have done something wrong down the line.
EDIT2: I really don't know why it's not attacking from the turret :S
@ProzaicMuze: Go
Great tutorial.
Can't wait for the next one :D .
Hmm, this seems to come closest to my question: All i found here about rotation and orbiting is how to move a model one time, for good. Is it possible to let a turret orbit a unit? Like a Zealot with a Glowing ball around his head, that is orbiting him and well, is a turret that shots?
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.
Hmm, sounds interesting. Ill try that out, hope my understanding of turrets and attaching them will suffice. Still having a hard time to decide when i will need an actor and what i actually have to put into that actor :/
Cant get this to work, sounded easier then it seems to be. Looking forward to your concept map. Pretty sure this would be a cool effect a lot of people would like to use!
Edit: Was able to implement this into your Attachment tutorial map now, kinda need to add and change a lot of stuff, but got the balls orbiting the turret and shooting. Looks awesome. Now i hope i can implement this into my own towers as well, without breaking them lol
@ProzaicMuze: Go
This is the second tutorial I read about site ops and I still don't get a thing.
When I read any tutorial I just follow it like a parrot, untill I end up with the end result, not knowing how I got there, or how I could learn something from what I've done.
I'd really appreciate it if you could just simply demonstrate a very simple and very quick way to attach models together via data. I dont want a spine crawler, a turret or anything acting, please just show me for example, the quickest way to attaching say, a tree to a marine's head.
I'd also appreciate it more if you could explain more during your tutorial, I'd learn a lot more if instead of just telling me to, for example:
"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]"
You could tell me after a thing like that, exacly what I just did, what I did it for, and other causes, effects, or really, what did I just do? cus If I don't know I haven't learned a thing.
If you give a man a fish you feed him for a day, if you teach a man how to fish, you feed him for a lifetime.
Frankly, this tutorial threw me a fish.
ProzaicMuze, please consider this.
EDIT: oh and by the way, the fish was very delicious, was just amazing, best fish out there that a tutorial ever gave me, but really, a fish would taste better, even if its rotten, old and slimy as long I caught it myself.
kinda gave up now. I can get your Bunker to rotate the attachment and shot beams out of it. But i can NOT duplicate this behavior to my own tower. Since i am using a doodad as a base i have to attach a hard point to it... i took the auto turret model that has a turretZ point. Also the turret is showing up and i can make it small enough to not see it anymore. But whatever i try... i can not attach anything on the autoturrets turretZ spot. Nothing will show up,... shooting the beam out of something should be working by now, but i am stuck at attaching that golf ball to my auto turret. Copied about everything from the test map and double and triple checked.
Ill go along with 38dedo here and say THANK you for your work here, but id also like to understand what i am doing and not just copying your work every time i try a new Unit / Tower idea. If you find the time to do this "orbiting stuff" Tut and could combine it with the needed explanations, that would just be pure ownage :-)
@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:
What a great tutorial! I liked the other one as well, I even figured out how to successfully attach things and put an offset. This just makes everything more clear to me now! You are great at making tutorials I must say.
@ProzaicMuze: Go
I, and everyone else very much appreciates all the hard work you put in to these great tutorials. But of course when someone like me am trying to learn, when I keep 'copy phasteing' in my head, like copying L2 L3 R1 R2 R3, well you kind of lose track of where you stand, what you're doing, because you are not doing it independently.
Anyway I'd very much appreciate a little review after each major part of a tutorial, so that if someone is not interested in making an uberlisk or a bunker-turret, he just wants to know how to attach a model onto another model using data without all the huss and fuss and weapons and stuff, he could find that section of the tutorial, and skip all the creating actors, and weapons, and the things you might not be interested in, if you want to learn in your own pace.
Another fail sentence I just made up, feel free to facepalm me: Don't teach a man how to ride a horse, if you didn't yet instruct him how to get on it.
What I mean is, I myself, and I'm sure other people will learn a lot if they first learnt how to attach models, then learnt how to make them act as units, then learnt how to make them attack, etc. :)
On a personal note, I teach myself a lot in the editor, like i'm sure, so do you. I found this model attaching a bit tricky, and if I could just see a very very simple way to put models together, I could teach myself the rest, like making them act. Even if I couldn't and will find that part tricky too, This tutorial would be much easier to learn from then.
Kudos again, you do an amazing job here.
A recap sounds like a great way to implement this. People that just want to copy paste can do it.... and people that want to learn what each action does can as well. I think it would be cool if you could do it like this:
To attach the turret you need: 1. attach the model to part X (you need to attach to a specific point [like turretZ] BECAUSE,...) 2. then you have to change the actor of XY to ZZ, this will do XX and is needed to archieve this and that BECAUSE,...
Or simple: Leave out everything but the because lol. Explain what you did and WHY and WHAT each step really does (you did the "what" part a little here, that was actually the most useful info for me!)
Awesome, thanks for this tutorial.
I was curious if there was a way to Site Ops like SOpAdjustShield and SOpTiltShield in conjuction with an actual attachment? Right now I have an attachment (a weapon) attached to Nova's arm (Weaponless Nova done by Utli with additional attach points) but the thing needs to be rotated and moved a little bit. The moment I attach either SOpAdjustShield or SOpTiltShield the weapon stops animating with the unit (for the most part. Every once in a while it'll jump around during an attack)
Awesome tutorial man, im sure this information will come handy soon. Thanks allot!
those wraiths are just upside down.
I have a question... When you attach something does the birth and death model stay with the attached model?
I'm trying to get a building that has an attached model on it to have, it's death model, birth model, and placement model, all still intact and animations playing when they should. So far from what I've done.. when i attach it to a building only the stand is there, no birth or death, or going unpowered. Things like that. Any solution?
EDIT: I looked at your bunker and i killed it with the marines and it seems you have the same thing as me.. The turret didn't have death model after i killed it. With yours its hardly noticeable but with my bigger buildings and attachments it's very noticeable it just pops out of existence.