99Instances2Go , you're using rescaled objects, which seems to get checked differently. If you use objects scaled to their origin size, they would overlap on the edges.
R0J0hound, thanks.. I've gone with one of those options since everything is block shaped and aligned to grids. The sprites extend further than the polygons, so bboundleft, etc, don't correspond to the polygon collision area. So I have to calculate from center of the objects.. It's working how I want it now.
Would be useful to have a choice of edge cases by default though in construct2.