To snap a vector to a uniform grid you should use the following formula:
GridPoint = Floor(Point / GridSize) * GridSze;
Where GridSize
is a scalar and Point
is your input.
GridPoint is your output.
It's pretty easy to do with blueprints and the built in math library functions.
Basically just divide your position vector with the prefered grid size (Float) and round/floor it. Then multiply with the grid size and you have your position snapped to the nearest grid point.
UE4 Blueprint example:

UE4 C++
// Define Grid Size
float GridSize = 100.0f;
// Get Actor Position
FVector Position = GetActorLocation();
// Calculate Grid Position
FVector TmpPosition = FVector(Position / GridSize);
FVector GridPoint = FVector(FMath::RoundHalfToZero(TmpPosition.X),FMath::RoundHalfToZero(TmpPosition.Y), FMath::RoundHalfToZero(TmpPosition.Z)) * GridSize;
SetActorLocation(GridPoint);