douglas81's Forum Posts

  • 5 posts
  • Thanks both of you.

    Having looked at it more today, I just don't think there is a way to access the raw system time. Maybe possible using the SDK, but then that's starting to get over my head, and the appeal of C2 is in avoiding all that text-based coding!

    It's a shame, because it really limits the possibilities for using C2 in music apps.

  • I discovered Construct 2 quite recently. So far, very intuitive and simple to use—a big thanks to the creators! It seems a great platform for somebody like me who can think logically, but doesn't know any programming language. I'm mostly interested in using Construct 2 to make music apps.

    I'm currently working on a metronome, and while I can get it to function how I like, I'm finding it impossible to make the timing solid. It's always fluctuating. Or, to put it another way, there is always a small margin of error which becomes especially noticeable above 76 bpm, as the beat seems to waver back and forwards with up to 1 bpm difference from beat to beat.

    I think it's to do with the fact that all the timing options have limited accuracy: the "compare time" or "every x seconds" conditions are tied into the FPS (ticks); object timer behaviors, or "every x seconds" or "wait" commands are all limited to about 0.01s accuracy (sometimes worse).

    So, the question is this: if I want to have a metronome beeping steadily and accurately at 61bpm (that's 1 beep every 0.9836), how do I accomplish this in Construct 2? It seems like it's not possible. Or maybe I'm missing something quite basic...!?

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Thanks again for checking this out.

    I'm having a hard time getting my head around how it works.

    From what I can understand, the actual event sheet processes as fast as the computer will allow, correct? But the trigger accuracy of certain events is limited to 60fps (or whatever your device happens to be able to deal with). Is that basically how it works?

  • Hey,

    Thanks for that info. Yes, I already have a framework and I am able to change BPM, beats in the bar, etc. I'm just stuck trying to work out what is the best method to accurately time those beats.

    For example, I have a global variable "bpm". The simple solution would be to assign your beats per secong (i.e. 60/bpm) to a timer behavior. So, if your bpm is set to 120, you get a timer that runs every .5 sec.

    But, I'm wondering how accurate that timer behavior is? Does it run from the system time, or what? Is it rounded down or up? I suppose I'm wondering what the internal precision is and how reliable it is.

    Does that make sense?

    I see your code is using the "time" in a variable. Is that more accurate than using a "timer" behavior?

  • Hey guys/girls,

    I've been playing around with Construct 2 over the past few weeks and I'm starting to find my way around.

    I'm making a metronome app and I'm wondering what is the most reliable way to generate a steady, repeating "blip" sound. (I'm saying "blip" to avoid confusion with "tick"!)

    So, we have:

    (system) every x seconds -> audio play blip

    while something is true -> audio play blip, wait x seconds

    on timer -> audio play blip

    And one I have discovered which seems to work quite well

    on layout start -> audio play blip (tag "blip1")

    on timer -> seek "blip1" to 0

    And so on and so forth.

    So, I wonder if any of you experts can tell me which of these will be the most accurate and reliably steady? I'm finding all of them to have occasional glitches and they are not totally rock-steady.

    Cheers!

    Douglas.

  • 5 posts