You might think that the good ending requires no damage and no checkpoints, but all things considered it's very forgiving.