Use density noise node and density filtering node to filter out points.
Use transform points node to apply transformations for scale / rotation & position variation.
Use projection node to project points onto the landscape
Use the self pruning node to remove overlapping points
Use StaticMesh Spawner node to spawn meshes where the points are.
Use the bounds modifier node and difference node to create bounds around point/mesh to not spawn other meshes
Boolean out a path using a tagged spline and generate points within the spline with get spline data and spline sampler nodes
Screenshot of Final PCG Graph