logo hyperPad Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Login

    Timers not in time

    Scheduled Pinned Locked Moved
    Comments & Feedback
    7
    33
    3.8k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Aidan_FireA
      Aidan_Fire
      last edited by

      Basically, for example a 1s timer is not quite twice as slow as a 0.5s timer (which it should be). In this example project, a heap of timers run at once, adding their time to a label (except the 0s timer which is adding 1/60 of a second, 0.01666...), so if timers all stayed in time, the numbers (not the ones in brackets) should all always be the same. But they aren't, and over time they get further and further apart.

      Link: http://bit.ly/2I0UKKL

      D 1 Reply Last reply Reply Quote 0
      • D
        Deeeds @Aidan_Fire
        last edited by

        @aidan-oxley Yes. Found this problem, early on, and decided timers aren't linked to a fixed sense of game time, but independent things, without any coupling to a central time server or anything of the sort.

        So I gave up on doing anything that required any of this sort of dependency in hyperPad, despite decades of being accustomed to thinking in this way.

        Aidan_FireA 1 Reply Last reply Reply Quote 0
        • Aidan_FireA
          Aidan_Fire @Deeeds
          last edited by

          @deeeds This is making me want to run all my timers as 0s, then for example if I want every 0.1s, I'll make it trigger my event every 6 timer repeats just so I have more accuracy and timer consistency 😝

          D 1 Reply Last reply Reply Quote 0
          • D
            Deeeds @Aidan_Fire
            last edited by

            @aidan-oxley

            Due to the bug fix I provided for timing, as a whole, and throughout cocos2D-iPhone for hyperPad, they could, in that update, add proper time management tools and the equivalents to Unity Coroutines, and make timers work properly, too. Freeing up the engine from CADisplayLink means real time and real timers can be used, as well as frame and physics step counters, without the nightmare that was CADisplayLink dependency for frame/render stepping.

            But they're apparently too busy to submit any updates, of any sort.

            Aidan_FireA 1 Reply Last reply Reply Quote -2
            • Aidan_FireA
              Aidan_Fire @Deeeds
              last edited by

              @deeeds Busy as in still working on the update so it works properly before they release it? Also the fact that hyperPad is not their primary income source. They seem to like releasing few updates with lots of content rather than lots of updates with very little content.

              D 1 Reply Last reply Reply Quote 0
              • D
                Deeeds @Aidan_Fire
                last edited by

                @aidan-oxley

                "Not their primary income source" might be an understatement.

                As to the rest, I don't see why you continue to make apologies for a version that makes iPads physically hot to touch, instigates thermal throttling and flattens batteries at never before seen rates... in the static code (behaviour) editor. Let alone the stuttering in the runtime.

                The fix has been provided. Spelt out. Not even difficult. Just copy paste from someone else that discovered the problem and fixed it.

                1 Reply Last reply Reply Quote -2
                • HamedH
                  Hamed Admin
                  last edited by

                  @Deeeds fix is very difficult, actually. Since a lot of our app runs on timers, everything will need to be tested. Just because its a "quick" code fix (it's also not a quick fix), does not mean its a quick fix for everything.

                  As for timers being slightly inaccurate, I think its because time is based off of frames, so if you're doing some pretty time accurate things, they need to be multiples of your fps eg 1/20, 1/60, 1/30 etc.

                  D 1 Reply Last reply Reply Quote 1
                  • HamedH
                    Hamed Admin
                    last edited by

                    Also, updates are slow because our app is in both a really stable state and a really broken state. For our more hardcore users (you guys), we're fixing pretty much all the issues at once because they all relate to each other, while making sure that the app stays stable for everyone else.

                    1 Reply Last reply Reply Quote 0
                    • Aidan_FireA
                      Aidan_Fire
                      last edited by Aidan_Fire

                      @deeeds idk why you like to attack them so much.

                      D 1 Reply Last reply Reply Quote -1
                      • HamedH
                        Hamed Admin
                        last edited by Hamed

                        We're also working on Hyperpad full time. But it’s hard. There’s a reason why we're the only WYSIWYG game creator on iPad.

                        Aidan_FireA D 2 Replies Last reply Reply Quote 1
                        • Aidan_FireA
                          Aidan_Fire @Hamed
                          last edited by Aidan_Fire

                          @hamed when I let the project with them timers run for long enough, ALL of the timers have a different number. There's a 0s timer, 1s timer, 0.5s timer, 0.25s timer, 0.2s timer and a 0.1s timer. All of those are divisible by 60 (1 frame, 60 frames, 30 frames, 15 frames, 12 frames, 6 frames respectively).

                          D 1 Reply Last reply Reply Quote 0
                          • Aidan_FireA
                            Aidan_Fire
                            last edited by

                            The smaller the number in the timer, the lower their number is after leaving it for a while (except 0s, it ends up with the highest). Timers are adding to a label their own time (0.1s timer adds 0.1, 0.2s adds 0.2 etc).

                            1 Reply Last reply Reply Quote 0
                            • D
                              Deeeds @Hamed
                              last edited by

                              @hamed Bullshit.

                              The primary fix (independence from CADisplayLink) isolates you from the problems without creating other obligations and changes nothing of significance about cocos2D.

                              I might even know this to be fact.

                              I know you do.

                              1 Reply Last reply Reply Quote -2
                              • D
                                Deeeds @Aidan_Fire
                                last edited by

                                @aidan-oxley said in Timers not in time:

                                when I let the project with them timers run for long enough, ALL of the timers have a different number. There's a 0s timer, 1s timer, 0.5s timer, 0.25s timer, 0.2s timer and a 0.1s timer. All of those are divisible by 60 (1 frame, 60 frames, 30 frames, 15 frames, 12 frames, 6 frames respectively)
                                And this is only one part of the problem.

                                If you have multiple timers, and they all do your "rounding" @hamed, then every single one must be manually forcibly reset, without knowing which one is the problem.

                                This, the lack of functions and references generally indicate you don't care about your (very few) users.

                                Stop writing. Just fix it. Update it. Then go play with your efforts to become virtual currency "playas".

                                1 Reply Last reply Reply Quote -3
                                • D
                                  Deeeds @Hamed
                                  last edited by

                                  @hamed said in Timers not in time:

                                  We're also working on Hyperpad full time. But it’s hard. There’s a reason why we're the only WYSIWYG game creator on iPad.

                                  You're not the only WYSIWYG game creator on iPad. You're just the only one that never gets around to updating. The other significant one manages to create up to date documentation and samples and fixes, and updates to 3D and ARKit, despite having a programming team of the exact same size.... because they ACTUALLY work on it more than a little. Not full time, but more than you.

                                  Aidan_FireA 1 Reply Last reply Reply Quote -2
                                  • D
                                    Deeeds @Aidan_Fire
                                    last edited by

                                    @aidan-oxley No attack, yet. Just observation, commentary and critique. When you know the difference between those things and an actual attack, you'll be ready for a career in media. If you believe this is toxicity or need a safe space, that's on you.

                                    1 Reply Last reply Reply Quote -2
                                    • HamedH
                                      Hamed Admin
                                      last edited by

                                      That's pretty creepy. What we do on our own time is our own business.

                                      @Aidan-Oxley I've downloaded your project and will take a look

                                      D 2 Replies Last reply Reply Quote 0
                                      • Aidan_FireA
                                        Aidan_Fire @Deeeds
                                        last edited by Aidan_Fire

                                        @deeeds There's another WYSIWYG game creator on iPad? Maybe you should delete hyperPad and go download that one, and then you won't have to complain so much. Have you never seen a hyperPad update? They do get around to it, they just take a while.

                                        D 2 Replies Last reply Reply Quote 1
                                        • D
                                          Deeeds @Aidan_Fire
                                          last edited by Deeeds

                                          @aidan-oxley try Codea and Construct 3

                                          Neither offer Chipmunk2D and cocos2D rendering, but they're both very good at what they do, and far better in just about every way, other than the above mentioned two things.

                                          1 Reply Last reply Reply Quote 0
                                          • D
                                            Deeeds @Aidan_Fire
                                            last edited by

                                            @aidan-oxley In direct answer, no. Have not seen an update in the time I've been using hyperPad.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post