Announcement

Collapse
No announcement yet.

Flag recapture time bug

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Flag recapture time bug

    Reported this in some other thread, but it's worthy of its own thread.

    When someone captures your flag, there's a period of time in which you're allowed to recapture it. If you do recapture it within that time, then the flag timer should continue counting down for you, rather than resetting.

    What actually happens is:
    1. Someone captures my flag, the flag changes blue, but the timer indicates I can recapture it.
    2. I recapture it, the flag changes yellow, but the timer continues to indicate I can recapture it.
    3. When the recapture time elapses, the flag timer resets. It should not reset because I recaptured the flag.

    So basically what's happening is the "recapture time" doesn't work. It just delays when the timer reset happens. Either fix it or remove it.

  • #2
    I've attempted to reproduce this but had no luck. Are you saying this happens every time, or just occasionally/in certain situations?
    "You're a gentleman," they used to say to him. "You shouldn't have gone murdering people with a hatchet; that's no occupation for a gentleman."
    -Dostoevsky's Crime and Punishment

    Comment


    • #3
      Feels like it's every time, but really hard to say, it's not like I've been keeping track of recapture timing. Right now I just know I see this regularly enough that it's a problem, it just flat-out denies wins and it's likely something to do with timers not accounting for each other so shouldn't be all that hard to fix once we know why it happens. What we really need is an arena to test in. If you could set one up I could grab someone to test it with me and figure out the reproduction steps.

      Comment


      • #4
        Some proper testing would be a good way to go ... but, pubsystem as a bot has really been geared toward running exclusively in one arena. Might be quite a bit of effort to bring a second one online after all these years. I'd be wary of conflicts.

        Would be easier just to lock the public arena for a short time during dead hours and test it that way.
        "You're a gentleman," they used to say to him. "You shouldn't have gone murdering people with a hatchet; that's no occupation for a gentleman."
        -Dostoevsky's Crime and Punishment

        Comment


        • #5
          Me and clay just did it twice in a row.
          There's no complication to it, all you gotta do is:
          1) rab has flag, 10 seconds remaining
          2) clay takes flag, 9, 8,
          3) rab reclaims flag, 7, 6,
          4) timer resets, 1:30

          Comment


          • #6
            Will need some debug code to figure out the problem, I'm guessing. There's something truly strange going on here, as I've looked over this section of the code for literally hours at this point. Probably something quite minor that I've overlooked.

            It of course says that Clay's freq claimed the flag in the above instance, correct?

            Do you notice this problem occurring specifically only in smaller games, or large ones as well?
            "You're a gentleman," they used to say to him. "You shouldn't have gone murdering people with a hatchet; that's no occupation for a gentleman."
            -Dostoevsky's Crime and Punishment

            Comment


            • #7
              Also, I just noticed. You're saying the flag timer continues to advance after Clay claimed it? If that's true, are you certain? It should be pausing.
              "You're a gentleman," they used to say to him. "You shouldn't have gone murdering people with a hatchet; that's no occupation for a gentleman."
              -Dostoevsky's Crime and Punishment

              Comment


              • #8
                Originally posted by qan View Post
                It of course says that Clay's freq claimed the flag in the above instance, correct?
                Don't think so. Because I recaptured quickly, clay never had a timer counting down in his favour. So I don't think he ever controlled the flag from the bot's perspective.

                Originally posted by qan View Post
                Do you notice this problem occurring specifically only in smaller games, or large ones as well?
                Usually when I play the games are between 1v1 and 8v8. The thing is, as the game gets bigger it gets harder to reclaim the flag, and less likely I'd be the one doing it, and there are less captures overall, so I really couldn't say.

                Originally posted by qan View Post
                Also, I just noticed. You're saying the flag timer continues to advance after Clay claimed it? If that's true, are you certain? It should be pausing.
                Not certain. After clay touched the flag the timer icon in the top right changed to indicate the opportunity to recapture (looks like it's blinking/flashing), but it didn't reset and start counting for clay.
                What I was really trying to say was after I recaptured the flag the timer continued to count down from where it left off.
                Then a couple of seconds later it reset from my control (almost won), to my control (full timer).

                Comment


                • #9
                  It seems to me that when someone touches the flag a timer is started. That timer should only have 2 results:
                  - it elapses
                  - something intervenes, e.g. recapture, or round end

                  I think that timer is elapsing as if it thought there had been no intervention.

                  Arguably, there could be a check in that event to say only reset the game timer if it's owner differs from the flag's owner. But really the bug is the recapture timer should have been disposed due to intervention.

                  Perhaps there's something conditional in a flag touch event that is missing a recapture timer disposal, e.g. trying to prevent chained recapture timers. Or perhaps chained recapture timers aren't accounted for and it's actually my flag touch's recapture timer that's elapsing.

                  I'm happy to spend some time looking at the code, just need a copy if you wanna email it or whatever the offer is there.
                  Last edited by Rab; 11-19-2019, 06:29 AM.

                  Comment


                  • #10
                    OK, thanks for the offer. I'll see if the debug code turns up anything, and if not, send something over. Been hoping for a free minute in the morning when few are on to test.
                    "You're a gentleman," they used to say to him. "You shouldn't have gone murdering people with a hatchet; that's no occupation for a gentleman."
                    -Dostoevsky's Crime and Punishment

                    Comment

                    Working...
                    X