Stricter checks for move validitiy