Problems with Custom Movement > Stepping Mode

0 favourites
  • 2 posts
From the Asset Store
Various Bell Sounds (from small to huge) / 35 Unique Clips / 2:46 minutes of audio
  • Hi, I'm pretty new to Construct 3, though I have made games before using other tools. The game I am currently working on uses low-res pixel art, and I believe I have my project settings how they should be to best work with this style.

    I have a sprite that moves away from an origin at a 45 degree angle. As it moves, I am "drawing" a trail of 2x2 sprites behind it. The intended effect is a "tongue" that the player character stretches out to grab stuff. This all works, more or less.

    The problem is that the main sprite wasn't moving in even steps; it looked jittery because it was stepping x and y independently. In trying to fix this I found the behavior Custom Movement, which has the property, Stepping Mode:

    Setting this to Linear fixed my problem, at first. The issue I have now is that this works...until I move my player character the first time, after this it is always jittery again. I tried to make a brute force fix by just re-setting Stepping Mode on my sprite to Linear every time my 'extend tongue' button is pressed, but apparently there's no way to set this via the Add Action menu? That makes no sense to me.

    Currently I set the Stepping Mode value for my sprite in the left-hand Properties pane in a topmost ObjectBank layer I have. This appears to be the only place to set it. What's more, when I go into debug mode to try and monitor this value, it's not even listed!

    So I have no idea how to fix my issue from here. I've searched around and can't find anyone else who's had this problem. Is there an easier way to set my sprite's movement stepping, maybe via script perhaps?


  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • So I figured this out!

    Even though I have Pixel Rounding turned on, I didn't realize this only rounds coordinates for drawing my objects. In the debugger, the true X/Y values of my sprites was still represented with decimal numbers, which was in turn causing the inconsistencies with how my tongue sprite was moving. The reason it was fine before moving my character was because the starting coordinates were set as integers.

    For the fix I just added a new action every tick that if my tongue sprite is in motion, use round() to translate the coordinates to integers.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)