Checking a Vector3 every frame

What's wrong with my script? I want the objects to check every frame where the player is, and then move towards it. Currently they go towards the place where the player is spawned. What can I do?

var playerShip : Transform;
var approachSpeed = 5;
var lookAtPoint = Vector3.zero;

function Update () {
lookAtPoint = playerShip.position;
print (playerShip.position);
 transform.LookAt (lookAtPoint);
transform.Translate (Vector3(0,0,approachSpeed)* Time.deltaTime); 
}

You seem to be translating the transform in the direction of (0,0,approachSpeed), i.e. they're constantly being moved by some fraction of the vector (0,0,5).

To move towards your player, I think it should be

transform.Translate((playerShip.position-transform.position).normalized*Time.deltaTime, Space.World)

instead.