Gird placement system not working on the Y axis?

A simple project with just enough code to reproduce the error. So I can open it locally to see what’s wrong much easier.

Here is the test place.
TestPlace.rbxl (60.1 KB)
My friend is helping me make this.

I thought you were placing cubes, like in minecraft.
With items that are multiple grid tiles it gets complicated…

Here is some pseudo code I think should logically work

  1. Use a raycast to get the normal of the surface the mouse hit
  2. Convert the normal into an axis
    • (the axis that has the largest absolute member)
    • (so 0, .5, .25 becomes 0,1,0 and -.5, .2, 0 becomes -1,0,0)
  3. Add half of the size from the above calculated axis to the position

Ok e have done some thinking and we have changed it to a block placing system but we have a issue when we place it the block floats 0.05 studs above the ground and we have tried editing the script and moving the baseplate and we can’t see to fix it.