Yeah the code I've written for the scoring logic is fragile, to put it mildly. Thanks for the feedback!