Ability Stops Working if Used Through Trigger?

wingdnosring

New Member
Reaction score
16
I know that title was rather vague, but I'm having a very strange problem here, which I'm hoping somebody can guide me through. I have a fairly large triggered ability (Dummy Cast Effect, all actions performed through behaviors and triggers) with two Wait actions in it.

I have another ability which orders all units in a unit group to use the first ability. In theory, that should work...as each unit is issued the order, it SHOULD run through the first trigger for each of them, the same as if they'd each used it on their own.

Here's the weird part: This ability works absolutely flawlessly if I order the units to use it directly in-game. If I use this 'proxy ability' (for lack of a better term) it either a) works, b) performs the actions before the first Wait and then stops, or c) performs the actions before the second Wait and then stops. There doesn't seem to be any pattern to whether it works or not. I'd say the three options happen rather evenly (roughly 33% of the time).

Why would the Waits be messing up the ability? I thought about trying to make the ability a custom action instead with the Create Thread option enabled, but that's a real pain to do at this point. Anybody else had this problem? If so, what was your solution?

Here's the ability:

Code:
Fall Back/Advance
    Events
        Unit - Any Unit uses  Fall Back at Effect3 - Cast stage (Ignore shared abilities)
        Unit - Any Unit uses  Advance at Effect3 - Cast stage (Ignore shared abilities)
    Local Variables
        Unit = No Unit <Unit>
        Destination Point = No Point <Point>
    Conditions
    Actions
        Variable - Set Unit = (Triggering unit)
        General - If (Conditions) then do (Actions) else do (Actions)
            If
                (Triggering ability) ==  Fall Back
            Then
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Unit has Advance Status) == true
                    Then
                        Variable - Set Destination Point = ((Position of Unit) offset by 6.0 towards 0.0 degrees)
                        Unit - Add 1 Fall/Advance Pos Long to Unit from Unit
                        Unit - Remove 1 Advance Status from Unit
                    Else
                        Variable - Set Destination Point = ((Position of Unit) offset by 3.0 towards 0.0 degrees)
                        Unit - Add 1 Fall/Advance Pos to Unit from Unit
                Unit - Add 1 Fall Back Status to Unit from Unit
                General - Wait for (Conditions), checking every 0.1 Game Time seconds
                    Conditions
                        Or
                            Conditions
                                (Unit has Fall/Advance Pos) == true
                                (Unit has Fall/Advance Pos Long) == true
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Spider Bot - Blink count for player (Owner of Unit), counting Complete) >= 1
                        (Unit type of Unit) == Spider Bot
                    Then
                        Unit - Order Unit to (Spider Bot - Blink targeting Destination Point) (Replace Existing Orders)
                    Else
                        Unit - Order Unit to ( Move targeting Destination Point) (Replace Existing Orders)
                General - Wait for (Conditions), checking every 0.2 Game Time seconds
                    Conditions
                        (Position of Unit) == Destination Point
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Unit has Fall/Advance Pos) == true
                    Then
                        Unit - Remove 1 Fall/Advance Pos from Unit
                    Else
                        Unit - Remove 1 Fall/Advance Pos Long from Unit
                Unit - Disable the Fall Back ability for Unit
                Unit - Enable the Advance ability for Unit
                Unit - Enable the Regroup ability for Unit
            Else
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Unit has Fall Back Status) == true
                    Then
                        Variable - Set Destination Point = ((Position of Unit) offset by 6.0 towards 180.0 degrees)
                        Unit - Add 1 Fall/Advance Pos Long to Unit from Unit
                        Unit - Remove 1 Fall Back Status from Unit
                    Else
                        Variable - Set Destination Point = ((Position of Unit) offset by 3.0 towards 180.0 degrees)
                        Unit - Add 1 Fall/Advance Pos to Unit from Unit
                Unit - Add 1 Advance Status to Unit from Unit
                General - Wait for (Conditions), checking every 0.1 Game Time seconds
                    Conditions
                        Or
                            Conditions
                                (Unit has Fall/Advance Pos) == true
                                (Unit has Fall/Advance Pos Long) == true
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Spider Bot - Blink count for player (Owner of Unit), counting Complete) >= 1
                        (Unit type of Unit) == Spider Bot
                    Then
                        Unit - Order Unit to (Spider Bot - Blink targeting Destination Point) (Replace Existing Orders)
                    Else
                        Unit - Order Unit to ( Move targeting Destination Point) (Replace Existing Orders)
                General - Wait for (Conditions), checking every 0.2 Game Time seconds
                    Conditions
                        (Position of Unit) == Destination Point
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Unit has Fall/Advance Pos) == true
                    Then
                        Unit - Remove 1 Fall/Advance Pos from Unit
                    Else
                        Unit - Remove 1 Fall/Advance Pos Long from Unit
                Unit - Disable the Advance ability for Unit
                Unit - Enable the Fall Back ability for Unit
                Unit - Enable the Regroup ability for Unit
and here's the 'proxy ability':

Code:
Ranger Group
    Events
        Unit - Any Unit uses  Rangers Advance at Effect3 - Cast stage (Ignore shared abilities)
        Unit - Any Unit uses  Rangers Regroup at Effect3 - Cast stage (Ignore shared abilities)
        Unit - Any Unit uses  Rangers Retreat at Effect3 - Cast stage (Ignore shared abilities)
    Local Variables
        TempGroup = (Empty unit group) <Unit Group>
        RangerGroup = (Empty unit group) <Unit Group>
    Conditions
    Actions
        (I have many, many lines of adding specific unit types to RangerGroup here, which I've edited out for you)
        Unit Group - Pick each unit in RangerGroup and do (Actions)
            Actions
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Triggering ability) ==  Rangers Retreat
                    Then
                        Unit - Order (Picked unit) to ( Fall Back) (Replace Existing Orders)
                    Else
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Triggering ability) ==  Rangers Regroup
                    Then
                        Unit - Order (Picked unit) to ( Regroup) (Replace Existing Orders)
                    Else
                General - If (Conditions) then do (Actions) else do (Actions)
                    If
                        (Triggering ability) ==  Rangers Advance
                    Then
                        Unit - Order (Picked unit) to ( Advance) (Replace Existing Orders)
                    Else
This ability is absolutely essential to my game, so a speedy response would be appreciated :).
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    No, I'm still looking into them and kind of leaning towards a Rebel T7 at the moment because it's pretty cheap and lenses seem pretty easy to come by. Used ones are only like 3-400 dollars, which is much cheaper than I was planning
  • jonas jonas:
    I can't really recommend you any specific lens or body due to lack of knowledge, but in my experience camera shops are very helpful, especially those that also sell used parts
  • Varine Varine:
    There's only one camera shop in my town and they seem to specialize in film, but I have time before I need it. I'm not in a rush so I'll keep researching them
  • jonas jonas:
    I think since you have such specific needs, you should find a way to give a try for different systems without having to commit to one
  • jonas jonas:
    It would suck to spend 400$ on a system that doesn't have the capability you need
  • jonas jonas:
    and it will probably take a couple of tries to get the settings right
  • Varine Varine:
    It would but I can also just make sure I can return them. The system I have works, it's pretty straightforward and I tested it with a camera I have. All it really is is a little cartridge that holds the transparency film and a white light source behind it that projects the image into the lens
  • Varine Varine:
    I'll have to fuck with the light a bit and try some different lighting methods to get color accuracy, but I have IT8 targets for that
    +1
  • The Helper The Helper:
    get that color accuracy :)
  • Varine Varine:
    They're really helpful for calibrating things because I'm really colorblind, so I'm not great at doing it by eye
    +2
  • Varine Varine:
    Well the long, slow slog of winter has officially begun here
  • Varine Varine:
    I have a bunch of community service I have to do, and I have a feeling there will be a lot of snow shoveling involved now
  • The Helper The Helper:
    don't know why people choose to live in that kind of weather :)
  • Varine Varine:
    Well
  • Varine Varine:
    My job is here
  • Varine Varine:
    I was born here man I didn't choose shit
  • Varine Varine:
    And also, I keep moving away and it doesn't get any better. I moved to San Antonio and shit froze there AND we had blackouts
  • tom_mai78101 tom_mai78101:
    I'm back, suffering from severe jet lag.
  • The Helper The Helper:
    Cold is following your ass around Varine - I just dont think I could handle a snowy winter.
  • The Helper The Helper:
    Welcome Back Tom!
  • The Helper The Helper:
    I hear that taking a Melatonin around your normal bedtime can really fix jet lag
  • tom_mai78101 tom_mai78101:
    Yeah, I also heard about that as well. I think I'm good. I'm just lucky it's the weekend so I have some time to readjust.
    +1

    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