How would I make a map move on the players position?

I want my map to move based on the players position, theres a marker of the players pos on the map and it has to lock on it.

The issue is that I tried a method but it wouldn’t quite work spot on and it doesn’t account for the maps size as you zoom in with the size changing.

The marker goes like this, i tried so that if data.lock == true it moves based on the players pos but it’s inaccurate depending on zoom and how far you go.

				Marker.Rotation = Data.angle
				Marker.Parent = Map.Markers.SatelliteMarkers
				
				if Data.Lock == true then
					Map.Position = UDim2.new(1 - Data.normalizedX, 0, Data.normalizedZ, 0)
				end