Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

That is... a bit terrifying.  Putting "self" in front of anything shouldn't do anything.  Ever (outside of the context of a constructor, anyway).

Whoops, sorry! I didn't see a notification for your message previously.  I've since moved on to a different collision system for my current project as I couldn't get the collision just right for my needs (my project isn't a top down game, but I was trying to get the pixel perfect collision working for my platformer style game).


If I remember correctly, GMS2 was seeing x and y as a variable in the script, rather than the x and y instance variable of the object.  When putting "self." in front of it, the script found the calling object's instance variables and it worked as expected.  Maybe an update of GMS2 caused this?

Maybe?  That's why we usually declare vars as _x or _y instead of just x and y unless we literally want to deal with the calling instance's position.  Still feels unlikely, but as long as you got moving forward it really isn't important.

(1 edit)

I'm having this exact issue. This works perfect with the test square and it really is pixel perfect. However it prevents my player object from moving at all.


*editing because jump still works, but im sticking into walls and on floors. Last night I played with the player object mask and got it working with a detailed tileset, but switched to a simpler 32x16 block tileset today and this started happening. 

Just so I understand, the collision handling code you had previously that used place_meeting worked fine, but when you swapped to tile_meeting it started behaving badly?

This will be a difficult issue to resolve in this thread.  I would recommend joining the Game Maker Community Discord Server and asking there.  Most members are familiar with my system and could help you trouble shoot, and if I'm available, I'll help personally.  Here's an invite.

https://discord.gg/gamemaker

Thank you!