El Constructorr's Forum Posts

  • You need to know the start of swipe (x,y) and end of swipe (x,y) then find the angle and distance from start-to-end to find the direction and power of impulse at which the ball should be hit.

    Like this: https://drive.google.com/file/d/1H4RdrvEPPUx43PRb08v1whBxC-icAdIX/view?usp=sharing

  • Hi. Can you share a screenshot of the event-sheet page of Loader? (the events that make it proceed to next layout).

    Also, to troubleshoot, can you make one of the files a new test copy/duplicate and remove almost 90% of the comics, i.e. delete the Sprites (or image frames) leaving only a few of the beginning. Just to make sure if it would load, and the problem may be caused due to the high-res images of that quantity.

    Have you tested on a another device? A newer mobile? See if it loads. OR share a signed apk here for us to test.

  • Thank you so much the.sand for the appreciation and the kind words! :)

    I just love to help :P and I'm glad I could!

    Good luck with your game! Looks very promising!

  • Read above first, follow that. But also, if the two (or more) stools have different purposes, and you want to keep them separate objects then at least add them to a Stool "Family". This way you can combine them in Events and Actions.

    https://www.construct.net/en/make-games/manuals/construct-3/project-primitives/objects/families

    So, Event 2 and 3 will be combined into one.

    Also, Event 4 and 5 will be combined into one.

    And, you don't need the Text to be updated every tick. You should remove that event, and update the text when the variable actually increments. So Set Text action can come after each "Add 5 to levelmoney" action. It will also improve performance as every tick text update takes a lot of CPU.

  • Hi the.sand

    So I looked into it.. I saw many things together that was affecting the glitch.

    1. The acceleration 1000 (due to which it was forcing itself forward). I know it is required, so I have a solution.
    2. The Aimer Collision Polygon was too small. Make it full sized
    3. The Aimer should not be destroying and recreating every tick! (That also affects the performance, apart from the glitches).

    All three changes are highlighted below:

    Note:

    1) I did not send you my updated c3p because I was experimenting, and may have changed other things I don't even remember. So just make those changes and hopefully it should work (let me know).

    2) I still insist on making the Origin of Walking at least to Bottom-center, not left most. It should be symmetrical. Otherwise you may end up facing more problems later.

  • Yes, of course, I assumed the speed remains the same (as that was the simplest solution).

    But, if you want to measure distance in pixels. This is what you can do:

    Example c3p file: https://drive.google.com/file/d/1aFlGJLwf8wkmk0r-jenMea4MTgXm-yq1/view?usp=sharing

  • Since you mentioned any solution is fine, The way I would do is keep an Instance variable (Number) and call it 'steps'. Then:

    [is Player moving] --> Add 0.01 to Player.steps

    (You can change the increment accordingly, trial and error)

    If you don't mind the accuracy of steps, then you can even do:

    [is Key down] [Every 1 second] --> Add 1 to Player.steps

  • the.sand The share link is restricted. You need to choose "Anyone with the link can access" before sharing. Thanks.

    To answer your question about best practices, well yes, there are. Like for your case, since you have multiple animations (and each animation could be different in size) so the best practice would be to select the Origin at (let's say) on the Head of the player and select 'For whole animation', and do that for each Animations.

    Note: For that above, you have to select "For whole animation" and not the same "For all animations". That way, each change in animation would have the player's "Head" aligned (since that's a common/stable part of the character, unless you decide to behead him).

  • Also check the 'Origin' point of your 'Animation' and 'Default' (standing) are exactly the same, or centered. Click on Origin and 'Apply to All Animations'.

  • On desktop if you see this happen, does resizing the browser window bring the dialog back?

    I have had this problem since a very long time on C3 (Desktop, Chrome)... and I have always found that re-sizing a dialog (or re-sizing any left/right panel) somehow brings everything back to normal instantly. (Not re-sizing the chrome window but re-sizing anything inside C3 editor).

    So, for anyone who faces this sudden "hang" or "Grayed out", just re-size an open editor, or side panel.

  • The level is not linear, meaning that it can expand horizontally and vertically. Also, some platform can rotate and move. So my concern of having an array with fixed angle wouldn't allow me to change the angle on dynamic platform. Still, I could do it for the static ones, that are the most used... However, I would still need a system to get the angle for the dynamic platform.

    Yeah, that approach will work for static platforms.

    I may be able to give you more ideas, if you could share how is your terrain going to be 'moving' or rotating? I can't relate, because of the sketch above, I am guessing it is made up of triangles, how are you managing the movement, a screenshot or video might help.

    I do have some ideas in mind, but it all depends on how your terrain is created (if it can be recreated differently maybe?).

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • What I would do is:

    Before game starts, spend around 1 second, to (automatically) survey the terrain and store 'angle' data in an array. That way, all the CPU-consuming tasks (collision-checking for angle detection) will be done beforehand and not in real-time.

    For example: Use the Ray-casting method by (above), and have it run along the terrain rapidly (use object time-scale if possible), and as it moves, every X distance, it checks the angle and stores in an array.

    Then, when the player uses the terrain, based on the X location, it uses the array data to set angle.

    Just a thought. What do you think?

  • I believe the object Sync would only sync what you've asked it to. For example: Position?

    Mirror is different from Position and Angle. You'll have to do it using another event/action.

    [Host]

    [Keyboard] On Space Bar: [Multiplayer] Send message to Multiplayer.PeerID, tag: "m", message: "yes"

    [Peer]

    [Multiplayer] On message "m": if Multiplayer.message = "yes", Sprite: Set Mirror, else: Not Mirror

  • Hi, I recently purchased Sparsha's Firebase plugin, and wanted to do something very similar.

    So I asked him if it is possible, he said, yes but not directly (he didn't share more details).

    I would contact him when I reach that point if I am unable to set up.. But my guess is it would be done using Date/Time plugin (locally) and instead of the regular "Scores" (or Level) database, have new Day1, Day2, .... Day923 databases everyday to store and display that day's score.

    Again, I haven't tried it yet. But yes, I'm sure it is possible.