OP, how do you decide who controls a structure?
Whoever has the most units within X range? If both teams have units close to a structure, noone gets points?
Is it necessary to keep units close to the structure, or does the team keep getting points after capturing it even if noone is there?
There's just two things I see in that trigger that makes me think you need some help understanding how things work:
1. The "Pick each unit" loop will run for every unit the player has selected, even after you found a matching unit (set the variable to true). That's not necessary, is it? You can just "Break" out of the loop after the first "Variable - Set Infantry or Artillery in group = True".
2. At the very end of the trigger you do "Variable - Set Infantry or Artillery in group = False" as what I assume is the last action before the trigger ends. This is not necessary. The next time the trigger runs, it creates a new variable at the top under Local Variables and sets it to false: "Infantry or Artillery in group = False <Boolean>". If that variable was a global variable (declared in the folder-type pane on the left side), it would not be reset between events.
vakuu, your first action there ("Train 4 units of type SCV") is not completed instantly.
The AI will build those SCVs whenever it feels like it.
So the next line, "Set Workers = ...", will return 0.
What you want to do is to register for "Unit - Any Unit training progress is Completed" and if the "Triggering progress unit" is of unit type SCV, then "Enable script control for unit" and add it to some group.
The AI will not use those SCVs until you do "Disable script control" on them.
Thank you both, I read the guide and went to work.
But I figured out after a bit, and after actually looking at the model I was using: KerriganRespawnImpact.m3, that its GFX has two main components and one of them is offset from the other in the animation itself.
So I use a different one instead (Phase Shift Impact) now, and it looks much better.
Anyone have tips for even better levelup animations I could scrounge somewhere? ;-)
But the Actor ends up slightly in front of the unit and up. It's not at the Origin point at all.
I've verified through the Cutscene Editor viewing the hero model that the Origin point is in fact at the center of the unit on the base where it touches the ground.
I basically want the model to play in the center of the selection circle.
But I can't get it to work, and I am sooo bad with the Data Editor!
Hlep plz!
Hi!
Does anyone know if I can force a custom unitstatusframe to display during cinematics?
I have made one that shows just the unit names, and it works perfectly except turning on cinematic mode through a trigger hides all of them.
I've tried setting RenderPriority, RenderType, Unclipped, Visible, VisibleTo*, DisabledAlpha, IgnoreParentAlpha, DescFlags=Internal, AlwaysDisplay, and some others. Many of them in different combinations.
And then, while writing the post, I found the answer:
- SoundWait(sound, 1, 1), will wait on the thread until the given sound has finished playing
- SoundLengthQuery(soundlink) + SoundQueryWait() + SoundLengthSync(soundlink) to give you the total length of a sound
When you play a sound, can you store whatever you played in a variable?
There is SoundLastPlayed(), I don't know if that only covers sounds that you trigger or all unit sounds and such as well.
It was still not working properly, they would not change targets, so I started changing properties on the Ability that made sense.
I changed "Ability: Acquire Attackers" to enabled, "Ability: Auto Cast Range" to attack range.
Excellent, that is very valuable, thank you. Then I will change over to this method immediately.
Just in case you haven't tried it, vmware runs it a lot smoother than virtualbox. Of course, vmware isn't free.
The 5-15 seconds lag when changing things in the Data editor is because I run SC2+Editor through WINE on Linux and the editor is very badly made.
If I have everything in the Data view set to text-mode with list lists of properties and values, it doesn't lag at all, but since I am so inexperienced with it I can never find anything then.
I tried running a virtual machine (both vmware and virtualbox) just for the editor, and that helped a great deal but it's very backwards.
Thank you, I do code in Atom actually and copy+paste to SC2Editor when testing it :-)
I've looked at the other ways of doing it like importing script files with the Import manager and whatever, but my main question then is how I would execute a syntax check of my code without starting up the map?
And also when I hit Save in Atom, would GalaxyEdit automatically update the imports? How do you test the map efficiently?
It is really valuable now because the Galaxy syntax is so fucking weird and I keep forgetting things like implicit casts from fixed/int, variables can't be named "do", or start with _, and all this other crap. So when I copy from Atom and paste in the custom script section there and Ctrl+S for Save in SC2Edit, that checks my code every time.
0
OP, how do you decide who controls a structure? Whoever has the most units within X range? If both teams have units close to a structure, noone gets points? Is it necessary to keep units close to the structure, or does the team keep getting points after capturing it even if noone is there?
0
@AjaxTheNoob737: Go
There's just two things I see in that trigger that makes me think you need some help understanding how things work:
1. The "Pick each unit" loop will run for every unit the player has selected, even after you found a matching unit (set the variable to true). That's not necessary, is it? You can just "Break" out of the loop after the first "Variable - Set Infantry or Artillery in group = True".
2. At the very end of the trigger you do "Variable - Set Infantry or Artillery in group = False" as what I assume is the last action before the trigger ends. This is not necessary. The next time the trigger runs, it creates a new variable at the top under Local Variables and sets it to false: "Infantry or Artillery in group = False <Boolean>". If that variable was a global variable (declared in the folder-type pane on the left side), it would not be reset between events.
0
vakuu, your first action there ("Train 4 units of type SCV") is not completed instantly. The AI will build those SCVs whenever it feels like it.
So the next line, "Set Workers = ...", will return 0.
What you want to do is to register for "Unit - Any Unit training progress is Completed" and if the "Triggering progress unit" is of unit type SCV, then "Enable script control for unit" and add it to some group. The AI will not use those SCVs until you do "Disable script control" on them.
0
Thank you both, I read the guide and went to work.
But I figured out after a bit, and after actually looking at the model I was using: KerriganRespawnImpact.m3, that its GFX has two main components and one of them is offset from the other in the animation itself.
So I use a different one instead (Phase Shift Impact) now, and it looks much better.
Anyone have tips for even better levelup animations I could scrounge somewhere? ;-)
0
Hi, I'm trying to Attach Actor to Unit
But the Actor ends up slightly in front of the unit and up. It's not at the Origin point at all. I've verified through the Cutscene Editor viewing the hero model that the Origin point is in fact at the center of the unit on the base where it touches the ground.
I basically want the model to play in the center of the selection circle.
But I can't get it to work, and I am sooo bad with the Data Editor! Hlep plz!
0
Hi! Does anyone know if I can force a custom unitstatusframe to display during cinematics? I have made one that shows just the unit names, and it works perfectly except turning on cinematic mode through a trigger hides all of them.
I've tried setting RenderPriority, RenderType, Unclipped, Visible, VisibleTo*, DisabledAlpha, IgnoreParentAlpha, DescFlags=Internal, AlwaysDisplay, and some others. Many of them in different combinations.
And then, while writing the post, I found the answer:
So, guess I will post anyway for Google.
0
Hi,
I posted this thread to the Blizzard forums earlier; http://us.battle.net/sc2/en/forum/topic/19740593996#1
But I am guessing I will never get a reply, not to mention a change/fix for the behavior.
So I was hoping maybe someone here had an idea of how to handle this in a sane manner?
I could have a User Data table where I translate upgrade/button IDs to presentable translated names.
Is that the best I can do?
0
Have you given any thought as to why you obfuscate things at all? Such a useless thing to do, hiding knowledge and information from potential seekers.
0
- SoundWait(sound, 1, 1), will wait on the thread until the given sound has finished playing - SoundLengthQuery(soundlink) + SoundQueryWait() + SoundLengthSync(soundlink) to give you the total length of a sound
When you play a sound, can you store whatever you played in a variable?
There is SoundLastPlayed(), I don't know if that only covers sounds that you trigger or all unit sounds and such as well.
0
This seems like a perfect and easy job for Regions and triggers to me, but then again I am horrible with the data editor :-P
0
@ThePhail: Go What is the texture on the road in the lower right corner?! I can't find it in the editor! :-)
0
Oh thank you, this is excellent :-)
It was still not working properly, they would not change targets, so I started changing properties on the Ability that made sense. I changed "Ability: Acquire Attackers" to enabled, "Ability: Auto Cast Range" to attack range.
And that seems to have fixed it!
0
No, you are right, I didn't test it like you said.
I said in the reply I had to go out for a while and have not done any work in the editor since then.
I am going to now :-)
0
Excellent, that is very valuable, thank you. Then I will change over to this method immediately. Just in case you haven't tried it, vmware runs it a lot smoother than virtualbox. Of course, vmware isn't free.
0
The 5-15 seconds lag when changing things in the Data editor is because I run SC2+Editor through WINE on Linux and the editor is very badly made. If I have everything in the Data view set to text-mode with list lists of properties and values, it doesn't lag at all, but since I am so inexperienced with it I can never find anything then.
I tried running a virtual machine (both vmware and virtualbox) just for the editor, and that helped a great deal but it's very backwards.
Thank you, I do code in Atom actually and copy+paste to SC2Editor when testing it :-)
I've looked at the other ways of doing it like importing script files with the Import manager and whatever, but my main question then is how I would execute a syntax check of my code without starting up the map? And also when I hit Save in Atom, would GalaxyEdit automatically update the imports? How do you test the map efficiently?
It is really valuable now because the Galaxy syntax is so fucking weird and I keep forgetting things like implicit casts from fixed/int, variables can't be named "do", or start with _, and all this other crap. So when I copy from Atom and paste in the custom script section there and Ctrl+S for Save in SC2Edit, that checks my code every time.