I've created a new smart object via copy, and then I try and position it 25 pixels below the original (i visually place the new object so the borders touch). Using the transform controls, I click the triangle, but instead of the Y position being 0, it's an arbitrary number that corresponds with the objects height. This eliminates the use of the relative positioning function, because then I'm forced to go back and do math, which I could just do with absolute positioning.
How on earth do I set the relative position of a new smart object via copy to 0, so I can simply type "25" instead of having to add? May seem easy to add, but again, each shape is getting adjusted slightly, and as such, I have to add every time, which means I have to figure out the height of the object every time, which essentially makes this option totally useless.
Are you using Edit>Free Transform or using the Move Tool with show transform controls on and clicking on one of the handles to invoke transform?
If you use the move tool and click on one of the handles to invoke transform, then your method should work.