Managed to get stuff spawning on a grid thanks to a few threads on here and some tweaking/messing around.
But stuck on trying to work out how to spawn a ghost image of the actor attached to the cursor when i say press hotbar button 1 then spawn the real actor at ghost location when i press another button (say mouse button)
Create a ghost actor blueprint that has a mesh that is exposed on spawn and a material that is transparent I guess. When you know what kind of actor to place (press 1), you spawn the ghost actor, set the mesh to be the mesh of your final actor. Since you can spawn the object in the grid, that code should be enought for you to figure out where to place the ghost actor, destroy the ghost actor when you palce your real actor, unless you can place multiple. Then you destroy the ghost actor as soon as you leave your placement state.