Currently I am making a game where the characters slides around on ice. I am using 8 directional movement (but restricted to 4 directions) to achieve this. However I am running into the issues of hitting corners of collidables
Also objects seem to be teleporting at start of layout which I also believe is to do with the collisions
Try editing collision polygons to remove sharp corners. Also, make sure you only use 8-direction behavior to control the character, and not changing its position or angle directly with actions.
Everything is 50 x 50. I tried making the collisional 48 x 48 however there is other objects that can move the same way as the player (such as a pushable snowball) when they are pushed now i run into an issue of having them 2 pixels to the left of the object above it which just runs into the same issue
No, I meant like this:
And add lots of points to your character polygon to make it as smooth as possible.
But then wouldnt it run into the same issue again but colliding with where the polygon starts?
I don't know, but this is the first thing I would try.
8-direction may not work very well with corners. You can try physics behavior instead. Controlling the character with physics will be more difficult, but collisions should work better. You can check this demo:
howtoconstructdemos.com/physics-puzzler-move-and-re-arrange-blocks-with-mouse-c3p
I feel like tile movement would be best but I dont think you can actually make the character continue until it hits something can you?
I don't know what kind of game you are making. You need to post your project file or maybe a video.
Develop games in your browser. Powerful, performant & highly capable.
dropbox.com/s/ss481gzj4ujrxi1/Slip%20Slap%20Snap.c3p
It's hard to explain my issue but hopefully that makes it easier to understand. Player should stop on collision with
Trees, Snowball, Wall and boulder
Snowball should stop on the above as well as the exit and the cabin.
However they sometimes stop when they are diagonal from one of these as it thinks they are colliding.
Thanks for the link - I now see that I misunderstood your issue completely..
You just need to make the polygons a bit smaller, 1-2 pixels from all sides.
TileMovement behavior should also work nicely here.
Thank you. This was my original thought however this runs into issues when next to the snowball (specifically at the first one after going left twice). The player ends up to the left of the collision box of the tree above it.
Also I was planning on doing tile movement but then couldnt figure out how to get it to work. Already half way through the game jam so idk if ive got time to switch over
When the character stops, you should snap its position to the grid, for example:
Set x to round(self.x/50)*50, set y to round(self.y/50)*50
Or use TileMovement behavior.
Okay thanks
I had to add +15 to Y due to my useless offset but besides that it worked great. Thanks. This is the 4th issue youve helped me out with dop2000