Open UEWBot opened 7 months ago
Sounds like two main classes - CircuitScoringSystem and Circuit. I don't see any reason why a Tournament should be prohibited from being in multiple Circuits. I guess we also need a CircuitPlayer, if only to store scores (we could calculate them on-demand, but that seems like a lot of repeated work given that they only change a few times a year).
There may be an issue with deciding who actually gets points from each tournament (in the weeds, players who registered but didn't play, registered and volunteered to sit out, etc). At the very least, we probably need to be able to tweak scores (or at least zero them out)
We probably also need a CircuitSeries, analogous to Series, to tie together the Circuit instances.
We need some intermediate model or something to allow us to have an arbitrary threshold for qualification - for example, a TD may decide that only players who played 2 or more games are qualified for the circuit. We may also have a tournament threshold e.g. players must have competed in 3 tournaments to be ranked on the circuit .
Should also be able to generate a CSV file for uploading results to the WDD.
Initially at least, qualification can be one by creating CircuitPlayers or not. If a player isn't qualified for the Circuit, don't create a CircutPlayer for them.
A circuit is made up of a number of tournaments, over a period of time (usually, or always, a calendar year). Scores from the tournaments are combined in some way to calculate a ranking for the circuit. See https://world-diplomacy-database.com/php/results/circuit_list.php for examples