WackyToaster's Forum Posts

  • if they set/adjust the vector manually every frame

    Well but the vector is set to a fixed value so deltatime shouldn't matter, right? Deltatime is for acceleration.

    e.g.: Set vectorX to vectorX+acceleration*dt

    But OP does: Set vectorX to value*maxSpeed

    The only factor that changes really might be the movement angle, but assuming the player just holds right on the stick, the result should always be the same value regardless of framerate. e.g. (cos(0) = 1) * (maxSpeed = 300) = 300

    And any change in angle would just register instantly on that tick, not as an acceleration.

  • I don't think you need deltatime here. This function sets the movement speed directly. Deltatime is used for changes over time e.g. an acceleration over 1 second. There might be an other event that does something that causes the problem with the framerate dependence.

  • Ashley I've recently encountered this (again) and solved it as you suggest. But in the editor it clearly says "Not recommended" due to the memory usage, but I really never noticed any issues with it even on a ~7 year old Ipad. Is the cost really that dramatic?

  • Disable webGPU

  • I'm not sure if that's an app that's possible to make with construct. Construct is browser-based and I heavily doubt it's possible to do this with browsers for security reasons.

    You may be able to write some sort of wrapper in C# I'd think.

  • That's because of what Kashin Ginn mentioned. You set the opacity of the menu to 0 at the start of layout, which is not needed.

    Just delete those two "set opacity to 0" actions. You don't need it because the menu is already set to not be visible.

  • The "Is visible" also needs to be a sub-event. The reason Else is red is because it needs a condition at the same level above it as I posted in my screenshot.

    On space pressed

    ----- condition is visible -> do this

    ----- else -> do that

  • Oh I did attach an image, maybe it didn't load for you?

    Either way, your event is not quite right. On space pressed should be the only top condition, with no actions. Then as sub-conditions you do the "is visible" and "else"

    There should be an image in this post for how it's supposed to look like.

  • Events run from top to bottom. So you press space + menu isn't visible so it gets enabled. Then the next event + menu is now visible, it instantly gets disabled again. Use sub-events with an "else"

  • No problem, good thing you found the issue.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hard to know exactly what issue you are describing. Ideally you can post a project file (upload on google drive and post link) or at least a video of what is happening.

    JumpThru platforms are a little bit... let's call them susceptible in terms of bugs.

  • The eventsheet runs every tick, top to bottom. So every condition in the eventsheet will run every tick.

    The exception are trigger conditions, which only trigger a single time (generally speaking). All trigger conditions have this little green arrow. That's how you deduce this.

    "Is overlapping" is a question you can ask repeatedly: is A overlapping B?

    "On collision" is a definitive singular event, generally described as: Is A overlapping B AND was it not overlapping the previous frame. It will only trigger once, and then never again unless the objects are completely separated and then put together again.

  • The issue is that the pineapple is constantly "not cooking" so this event runs every tick. You could track that with an instance variable.

    Pineapple is overlapping flame -> set pineapple.cooking to true

    Pineapple is not overlapping flame & pineapple.cooking = true -> set animation not cooking, set pineapple.cooking = false

    On animation not cooking end -> set animation to default

    Something along those lines

  • Here's some useful tips for bigger files. Comment your code with

    // MARK: WHATEVER
    

    and it makes that little code minimap significantly more useful.

    There's also

    // MARK: -
    

    which creates a separation line. And also

    //#region Utility
    function yourcodehere(){}
    //#endregion
    

    Which kind of does the same as MARK but it allows you to also collapse the entire code region.

  • Could unavailable features be crammed into C3's AudioContext, e.g. "detune"

    I know what you're after and if I remember correctly detune sadly doesn't actually do it much different than setting the playback rate. It just uses a different unit of measurement. :(