The reason I think it's not working is how "Is overlapping another object" works.
Quote from Sprite Manual
[quote:3ih6i5rs] For example, testing for an overlap at an offset of (100, 0) will temporarily move the object to the right 100 pixels, test for the overlap, then move it back again.
And as your sprites are all touching each other the Y at 0 will all ways get triggered to anything below it.
To fix it your going to have to make a small gap around each sprite (1 pixel gap) then when it 0 on the Y it won't find anything and then you have to change all the X's from 1 to 2.
scirra.com forum / what-is-the-overlap-offset-coordinate-based-on_t72860
This is the location where I found that out from Kyatric
Try to have crates 1 pixel smaller (15X15) than the grid's cells size.
Hope you can understand it.