how do I issue order? (special)

MissKerrigan

Active Member
Reaction score
23
Hello Guysss,

I make 2 regions of 12x1 size (12 vertical, 1 horizontal)
I placed this regions next to each other with about 10 distance between

I create baneling at a random point in the first region
How do I trigger them to move STRAIGHT to the other region? (not center of)

MissKerrigan
 

MissKerrigan

Active Member
Reaction score
23
I changed it a little bit, but to be more clear I have a screenshot here

http://i.imgur.com/2Iw90.jpg

Now when you see the yellow tiles, this are the places where banelings must spawn
Once they are spawned, they must automatically walk to their opposite destination

1. How do I make the banelings are randomly spawned in one of the yellow areas?
2. Once they are spawned, how do I move them to their opposite direction across?

Does anybody understand what I mean?

MissKerrigan
 

Phubar

Ultra Cool Member
Reaction score
30
In regions at the top order banelings to "move in point" and change "point" in "point with polar offset" setting distance (the vertical size of the map) and angle -90°

In regions at the bottom order banelings to "move in point" and change "point" in "point with polar offset" setting distance (the vertical size of the map) and angle 90°

In regions at the right order banelings to "move in point" and change "point" in "point with polar offset" setting distance (the orizzontal size of the map) and angle 180°

In regions at the left order banelings to "move in point" and change "point" in "point with polar offset" setting distance (the orizzontal size of the map) and angle 0°
 

Phubar

Ultra Cool Member
Reaction score
30
For the spawn crate an array with one dimension as big as the number of the yellow regions (ie "Spawning region[28]" and set its type to "region" an then manually set each region to each cell of the array.

Then create a trigger like that (assuming region 1-7 the top, 8-14 the right, 15-21 the bottom and 22-28 the left ones)

Code:
    Events
        Your event
    Local variables
        selector = 0 <Intero>
    Conditions
    Actions
        Variable -Set selector = (Integer random between 1 and 28)
        Unit -Create 1 Baneling for player 1 1 in (Random point in Spawning region[selector]) with random facing (Nessuna opzione)
        General -If (Condizioni) then do  (Azioni) else do (Azioni)
            If
                selector <= 7
            Then
                Unit -Order (last crated unit) di ( Move ha come bersaglio (Offset di (Position of (last created unit)) di 64.0 verso -90.0 degrees))
            Else
        Generale -Se (Condizioni) allora esegui (Azioni) altrimenti esegui (Azioni)
            If
                selector >= 8
                selector <= 14
            Then
                Unit -Order (last crated unit) di ( Move ha come bersaglio (Offset di (Position of (last created unit)) di 64.0 verso 180.0 degrees))
            Else
        Generale -Se (Condizioni) allora esegui (Azioni) altrimenti esegui (Azioni)
            Se
                selector >= 15
                selector <= 21
            Then
                Unit -Order (last crated unit) di ( Move ha come bersaglio (Offset di (Position of (last created unit)) di 64.0 verso 90.0 degrees))
            Else
        Generale -Se (Condizioni) allora esegui (Azioni) altrimenti esegui (Azioni)
            If
                selector >= 22
            Then
                Unit -Order (last crated unit) di ( Move ha come bersaglio (Offset di (Position of (last created unit)) di 64.0 verso 0.0 degrees))
            Else
            Altrimenti
 

MissKerrigan

Active Member
Reaction score
23
btw, the banelings must disappear when they reached the opposite holes, so this is impossible since I triggered them to move to the other direction when they entering the location.

How I suppost to do this?
 

Phubar

Ultra Cool Member
Reaction score
30
You can make 2 triggers:
- a trigger that adds something like a "flag" to a baneling when it leaves a region
- a trigger that removes a baneling from the game when int anters a region AND it has that "flag"
 

MissKerrigan

Active Member
Reaction score
23
so I understand that all banelings has the flag at last so they ALWAYS disappear it's not working
 

Phubar

Ultra Cool Member
Reaction score
30
No all banelings spawn without that "flag" (i'm not expert in this kind of things, i usually add them a usless behavior) and they gain that "flag" when they leave a region.
The other trigger will remove a baneling that enters a region only if it has that "flag" (so banelings that enter a region when created wont be removed since they didnt have the "flag")
 

Siretu

Starcraft 2 Editor Moderator
Reaction score
293
What Phubar is talking about, in case you didn't understand what he means with "flag", is a way to recognize if the baneling that enters a region just spawned there or came there from another region.l

You don't even have to use the triggers to handle the flag.

Create a new behavior of the buff type. Give it a 2-3 second duration. You could probably do with less.

Add the behavior to the banelings when you spawn them.(or add them in the baneling unit's behaviors field in the data editor)

In your trigger that removes the banelings(probably something with a lot of events for all regions, a condition to check it's the right player and a baneling and an action that removes the unit), add a condition that checks if the unit does not have the behavior. (Unit has (YourBehavior)) == False
 

MissKerrigan

Active Member
Reaction score
23
Alright I did it, it works! THANK YOU

Next think is about spawn units IN the level
Now please look at the screenshot again if you forgotten where it was about :)

http://i.imgur.com/2Iw90.jpg

note: all the bushes you see does have a footprint 1x1 path blocker

Question: when I create a unit in the 'level' will it automatically be spawned in a place where it is possible to spawn?
 

MissKerrigan

Active Member
Reaction score
23
Actually I found an easier way to do it with 4 unit groups:

Units Bottom
Units Top
Units Left
Units Right

now the units will be placed into the unit groups when they are spawn and if they reach the opposite they will be checked if they are in the unit group of the opposites :)

But the only thing I still can't figure out is that the units can ONLY move straight if you know what I mean. Example: a unit in left top must ONLY move to the left bottom square
 

Phubar

Ultra Cool Member
Reaction score
30
To "top" units order to move in a point with "-90" polar offset
With "bottom" units use "90" polar offset.
With "left" units use "180" polar offset.
With "right" units use "0" polar offset.
 

MissKerrigan

Active Member
Reaction score
23
nice try but this isn't working, yes it does work for 1 unit, but the units which are spawned at another place offset of the point will move all in wrong direction...

Guess I'll have to make my 80 triggers
 

Siretu

Starcraft 2 Editor Moderator
Reaction score
293
Okay, here's how you do it(with 2 triggers instead of 80):

Create 4 regions. One that covers the bottom squares(call it BanelingsBottomSpawn), one that covers the left squares(call it BanelingLeftSpawn), one that covers the right squares(call it BanelingRightSpawn) and one that covers the top squares(call it BanelingTopSpawn).

You can do it without those regions, but it makes it slightly more complex.

You'll need one region array just to save all the squares to pick a random one. Create a global variable(called something like "BanelingSpawnRegions") of the region type and set the size to 28(the amount of squares you have). I assume you have some trigger that runs when the game starts(with the event "Map Initialization"). In this trigger add the following:
Trigger:
  • Init
    • Events
      • Game - Map initialization
    • Local Variables
    • Conditions
    • Actions
      • Variable - Set BanelingSpawnRegions[0] = Baneling spawn 1
      • Variable - Set BanelingSpawnRegions[1] = Baneling spawn 2
      • Variable - Set BanelingSpawnRegions[2] = Baneling spawn 3
      • Variable - Set BanelingSpawnRegions[3] = Baneling spawn 4
      • ... And so on ...

Remember the behavior I told you to create in an earlier post? Let's assume you created it and called it BanelingSpawn.
Next, you need to measure the distance the baneling has to go. Specifically this distance:

So how do you measure that? The editor keeps track of the coordinates that your mouse is at. Look in the bottom left corner where it says "Point(X.x, Y.y, Z.z)". Here's a picture that shows what it looks like:
1VvJp.jpg
Hold the mouse over the square at the left side of the red line in my first picture. Remember the X value. Hold the mouse value over the square at the right side. Take the new X value and subtract the old one. This is the distance. When you see "*YourDistance*" in the trigger below, put in the distance instead.

Here's the first trigger you need(the earlier one was just stuff you put at init. You probably already have an init trigger, so it's not a new trigger)
Trigger:
  • Baneling Order/Kill
    • Events
      • Unit - Any Unit Enters BanelingsBottomSpawn
      • Unit - Any Unit Enters BanelingsTopSpawn
      • Unit - Any Unit Enters BanelingsLeftSpawn
      • Unit - Any Unit Enters BanelingsRightSpawn
    • Local Variables
      • Direction = 0.0 &lt;Real&gt;
    • Conditions
    • Actions
      • General - If (Conditions) then do (Actions) else do (Actions)
        • If
          • ((Triggering unit) has BanelingSpawn) == False
        • Then
          • Unit - Kill (Triggering unit)
        • Else
          • General - If (Conditions) then do (Actions) else do (Actions)
            • If
              • ((Triggering unit) is in BanelingsRightSpawn) == True
            • Then
              • Variable - Set Direction = 0.0
            • Else
          • General - If (Conditions) then do (Actions) else do (Actions)
            • If
              • ((Triggering unit) is in BanelingsBottomSpawn) == True
            • Then
              • Variable - Set Direction = 90.0
            • Else
          • General - If (Conditions) then do (Actions) else do (Actions)
            • If
              • ((Triggering unit) is in BanelingsLeftSpawn) == True
            • Then
              • Variable - Set Direction = 180.0
            • Else
          • General - If (Conditions) then do (Actions) else do (Actions)
            • If
              • ((Triggering unit) is in BanelingsTopSpawn) == True
            • Then
              • Variable - Set Direction = 270.0
            • Else
          • Unit - Order (Triggering unit) to ( Move targeting ((Position of (Triggering unit)) offset by *YourDistance* towards Direction degrees)) (Replace Existing Orders)


That's all.

Now to create a baneling in a random square and have it go straight over to the square on the other side, use the following actions:
Trigger:
  • Unit - Create 1 Baneling for player 15 at (Center of BanelingSpawnRegions[(Random integer between 0 and 27)]) using default facing (No Options)
    • Unit - Add 1 BanelingSpawn to (Last created unit) from (Last created unit)
 

MissKerrigan

Active Member
Reaction score
23
so it seems phubar meddles into things he shouldn't meddled into


I still not get the part of the regions
Do I have to make an extra region of each tile?
Or can I do it with only the 4 spawn regions?

Because you said I must make my map initialization trigger

set variable 28 times


there are 28 regions, not 27

Omg this looks scary to me, but I'll try to get it
 

X-maul

AKA: Demtrod
Reaction score
201
so it seems phubar meddles into things he shouldn't meddled into


I still not get the part of the regions
Do I have to make an extra region of each tile?
Or can I do it with only the 4 spawn regions?

Because you said I must make my map initialization trigger

set variable 28 times


there are 28 regions, not 27

Omg this looks scary to me, but I'll try to get it
1st of all - What is this? Phubar is trying to help you, and you respond like that?...o_O

2nd - When it goes from 0 to 27 it has 28 arays - 0,1,2,3,4, ... 25,26,27.
You do have to set it 28 times for it to work.
 

MissKerrigan

Active Member
Reaction score
23
I tried to use the trigger-action 'targeting point with polar offset' but when I turn it 90 degrees the units are NOT moving in upper direction but for some reason they move to a start location a placed in bottom of the map

I told Phubar already this is not working but I really APRECIATE he trying to help me! sorry pubhar if I insulted you with that! x

All this sounds to complicated so I just leave it by a random move to the region, I can live with this

It just suprised me there isn't a trigger-action 'move unit in upper direction for x seconds'

I am already glad that I found out the way of making regions into more fields by adding rectangles
 

Siretu

Starcraft 2 Editor Moderator
Reaction score
293
so it seems phubar meddles into things he shouldn't meddled into


His solution also works, and it is better than making 80 triggers.

I tried to use the trigger-action 'targeting point with polar offset' but when I turn it 90 degrees the units are NOT moving in upper direction but for some reason they move to a start location a placed in bottom of the map

How did you use the "targeting point with polar offset". Which point did you use?

It just suprised me there isn't a trigger-action 'move unit in upper direction for x seconds'

It would be redundant, it's easily doable with the "targeting point with polar offset".
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    New recipe is another summer dessert Berry and Peach Cheesecake - https://www.thehelper.net/threads/recipe-berry-and-peach-cheesecake.194169/

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top