citron2010's Forum Posts

  • Could you put a blank "Every tick" event as the first event in the event sheet and set it as a breakpoint?

  • You could use "Play (by name)" instead of just "Play" then deleting the sound file won't delete the action.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I just recreated this project for fun and the weird thing is that it seems to work every other time - i.e. start the project:

    1. music plays
    2. press space
    3. music stops
    4. layout restarts
    5. music doesn't restart
    6. press space
    7. music stops
    8. layout restarts
    9. music restarts
    10. repeat

    I even inserted a "wait" as the first action in event 3, and regardless of how long I wait, the same behaviour is observed - perhaps there's a clue there?

  • Isn't just searching the project for the sound name enough?

  • Hi,

    When a user attempts to purchase an IAP, I make the purchase button spin and stop it either when "on product owned" or "on product purchase failed" triggers.

    I tried entering an IAP promo code as payment method and the icon kept spinning.

    So it looks like "on product owned" doesn't trigger when a promo code is used (like it does when using a credit card or if the user is a licenced tester) - is this a bug?

    I'm working on a workaround where:

    1. User clicks the button (and I make it spin)
    2. Set a "purchaseAttemptInProgress" bool = TRUE
    3. Every tick and if that bool = TRUE, check "has product"
    4. If "has product" = TRUE, then register the IAP and set that bool = FALSE
    5. If "on product owned" triggers, then I can do the same.
    6. If "on product purchase failed" set the bool to FALSE and stop the icon spinning
    7. If the user closes the window with the IAP button, then also set it to FALSE and stop the button spinning.

    Also, does anyone know what can cause "on product purchase failed" to trigger? Specifically, does "purchase product" ever time out?

    As it stands, the button will keep spinning unless one of the above conditions is met - although I don't think this will be a problem.

  • It's addressed in this beta so hopefully in production soon:

    construct.net/en/make-games/releases/beta/r394

  • Hi,

    Flippee Ball is a pinball/basketball hybrid game I've just released on iOS and Android.

    This all started 15 years ago when I was messing with a 2D physics simulator and game up with the basic game mechanic. 10 years ago I made a slightly more playable version in Construct 2. I've just had the opportunity over the last few months to turn it into a real game.

    The main feedback I've had from testers is that it's quite hard! I've played it a lot so have become quite skilled at it and I guess I lost sight of how frustrating it might be for a newcomer. I'm hoping some people will see the potential rewards if some time is taken to learn how to play. If not, then I've still made a game I love playing!

    https://www.flippeeball.com/

    P.S. Thanks for all the help I've had here.

  • Hey there, thanks for the reply. :)

    I need to save and load Instance Variable of a Sprite. With LocalStorage it doesn't seem possible. Also, if it were possible to save entire groups via "Families", that would be best.

    You can save any data to localstorage - I write all the variables I want to save to a dictionary then save/load that in one operation. So maybe you could loop through all your sprites, write their UID & instance variables to a dictionary, the save that?

  • Impulse should be applied just once when you hit something ( as fedca mentions above ). Maybe you were applying it every tick?

    Sorry, should have said - yes, I was.

  • One of my testers noticed that my framerate independent physics based game was running slowly (or at least parts of it were) on his 120Hz iPad Pro. Fortunately I guessed that this was because I was applying an impulse to some of my objects, so changed to applying a force and all is good now.

    I'd need to do some more testing - likely build a minimal test app - but to me it looks like impulse doesn't work correctly with framerate independence/non-60Hz screens/changing time scales - I'm guessing all these issue are related?

  • Hi,

    I’m preparing to get my game onto Steam (its page is complete and has been approved) and I’d like to try getting it onto Steam Deck too. I’ve just added full UI navigation using a gamepad, but have a few assumptions and questions. In return, I promise to document the whole process here!

    1. I’m going to use the official SteamWorks addon that uses WebView2 and I understand that this should just work on Linux/Steam Deck via Proton.
    2. Ideally, I’d like Windows/Linux users to have the game launched in a window so they can use the standard minimise/maximise/close window controls, then add full screen/exit full screen buttons to my game’s UI but not sure how Steam Deck would handle this?
    3. Is there any way to detect that the game’s running on a Steam Deck? If so, I would automatically enter full screen when the game stats.
    4. Next question – if a game’s running in full screen on a Steam Deck, how do users expect to quit the game? Is there some native function of the Steam Deck that does this without having to add anything to the game? Or should I add a button that calls Browser -> Close? (Of course, Windows users wouldn’t need this as they could use the window’s X button.
    5. Regarding pause – I understand that the Steam Deck’s “Steam” button will pause the game and display the Steam menu, but I want my own pause menu (where users can quit the current level and change settings). Currently this is mapped to the ESC on keyboards – am I right in thinking that by default, the Menu/Start button on the Steam Deck is mapped to ESC (in which case I wouldn’t need to explicitly map a controller button to my pause function)?
    6. Finally, does anyone know whether tapping one of the Steam Decks trackpads can be detected by Construct’s Gamepad or Touch plugins? Reason I ask is that I’ve found touchpads more sensitive than buttons.

    Tagged:

  • Dialog engine with workflows? 30 minutes of effort. Questing system? 1 hour. Support for random battle encounters with enemy lookup tables and basic logic? 4 hours.

    I think the fact that you managed to work this quickly (as an experienced developer) just goes to show that C3 is really just another language - albeit very high level, visual and oriented to making games.

    I have a little programming experience so looked at Unity/Godot etc. but their scripting paradigms just didn't click with me.

    C3 on the other hand is like a toy box full of fun and easy to use things - and like the best toys (e.g. Lego), your only limit is your imagination.

    It reminds me of when my father tried to get me into Mecano when I was a kid rather than Lego. Sure, if you build something from Mecano, it'll be much closer to the real thing than if you build from Lego - but its much harder (especially for a kid) and takes much longer to screw tiny Mecano bolts together rather than just snapping bits of Lego together.

    I think most 2D games I've seen could comfortably have been built in C3 too.

  • I'm trying to make my touch UI support game controllers.

    Currently each UI button is actioned using "on tap" which works for touch and mouse.

    I've created an array that maps each button to the next button the cursor should move to if the gamepad d-pad is moved left/up/right/down.

    When the cursor moves, it sets a global variable ("UIButton") to the name of the button it's moved to.

    So what I want is:

    on tap "buttonX" or (on gamepad Button A pressed & UIButton = "buttonX") -> do something

    But I can't figure out how to do it in event blocks. Feels like it should be obvious and I'm dumb.

    Don't think I can use "evaluate expression" with triggers.

    So the only other way I can think is to create functions for all the "do somethings" and call them in separate triggers (one for touch/mouse & one for controller/keyboard).

  • Flashback was, no IS such a great game. I just started playing it on my iPhone since they allowed emulators.

    I can't answer your question but I suspect you're correct that the two behaviors don't play well together.

    I've also thought about trying to replicate the same movement and think I'd have to build it from scratch rather than using any existing movement behaviors.

    I don't think platform behavior would work because in Flashback, movement is quantized whereas platform behavior is continuous.

    And tile movement doesn't deal with jumping/falling. Maybe you could disable tile movement during jumping/falling and move the sprite 'manually'?

    EDIT - just found this:

    spriters-resource.com/fullview/54385

    Also not sure custom movement behavior would help as it also look continuous.

    But I'm just rambling so not sure - I think I'm going to try this myself and would love to see how you get on.

  • Search for "audio analyser" in the example browser