skindstrom / 4temps-tournament

A website used to host 4temps tournaments
GNU General Public License v3.0
1 stars 1 forks source link

Generate as many full groups at once that's possible for a round #133

Closed skindstrom closed 6 years ago

skindstrom commented 6 years ago

A/ For the qualification where one role (e.g. Followers) is more numerous than the other role. Let's call phase A the first moment of the qualification, where every Leader dance one, and phase B the second moment, where each Follower who hasn't dance in phase A dances with a Leader who already danced in phase A.

A1/ The Leaders who dance again are those whose partner in phase A got the worst score. In case of equality among the partner score (eg. we should pick 4 Leaders but 3 Followers got the same worst score and 2 Followers got the same second worst score), pick randomly the Leaders (in the example, we pick the 3 who danced with the worst Followers and 1 among the 2 who danced with the second worst Followers). A2/ The final note of those who compete twice should be the average of phase A and B (and not the best one). A3/ There should be a pause between phase A and phase B. I do not remind well but, during the last tournament, the Leaders who had to dance twice where picked among the last phase A round (or was it among all phase A except the last round of phase A?). Anyways. To assure that every dancer has the same chances to be picked, we should wait for the end of phase A to pick the Leaders of phase 2.

So, basically, we have:

1/ make the couples of phase A + a list of Followers of phase B 2/ do phase A 3/ when we have every note, pick the Leaders of phase B 4/ do phase B 5/ the Leaders scores are the average of phase A&B 6/ select those who are selected

Tasks

Backend

Frontend

skindstrom commented 6 years ago

Changes are necessary in: generate-groups, regenerate-group, next-group-generator, end-dance, start-round.

skindstrom commented 6 years ago

For the frontend some sort of notification must be given to the admin that the next groups won't be generated until the previous groups are done.

skindstrom commented 6 years ago

Also related: 53f78b4bb213d67facd5a4295890f2f12d117ce0