Movement per pixel?

How do I make it so the player moves per pixel? I’m making a game similar to Faith, but in Faith when John walks he basically teleports to the next pixel. I have been using the Topdown movement extension up until now but with the extension characters just kind of slide around, is there a way to do this?
what I mean

Hey!

Double click your object, then go to behaviors and choose “PixelPerfectTopDownMovement”.
Then type in “Pixel Size” your needs (for example your grid size).

Me personally haven’t tried a teleport effect unfortunately, but:
you could try at the Object/Behavior/TopDownMovement to give your character a lot of acceleration and / or max. speed, maybe this could simulate teleporting…

1 Like

I’ve already tried that. the problem with the PixelPerfect extension is that it just slides you like normal but if you stop pressing it it will slide to the grid.

Most simple solution
If you really want per pixel movement

Condition
D key is pressed
Trigger Once

Action
Change Player X position to Player.X()+1

This will require tapping D key for constant movement
If you want to keep moving while holding D key then remove trigger once from condition

2 Likes

try this like in the screenshot:
instead of “oo”: user your object
instead of “32”: use your (grid) size

Edit: I made a mistake in the screenshot: usually w key is for up, so make “Y()-32” instead of “Y()+32”

1 Like

I tried what you guys suggested and some other things I could think of, but I still couldn’t get the result I wanted so I think I’ll leave it as is and maybe I’ll come back to it later. thanks a lot for the help though.

Hi, the solution is simple, just make a no-condition event:

Change the position of Player set to floor(Player.X()); floor(Player.Y())

Make sure in the top-down behavior properties to set acceleration and decceleration to 9999999

1 Like

Hi, thanks for the recommendation, but it just made the movement kind of weird, still thank you though.