-
Notifications
You must be signed in to change notification settings - Fork 16
Tournament Protocol
Diagram by @chrstngyn
- Create a new tournament via
npm run cli:prod -- tournament create --tournamentName "Fall 2020 Mars Madness"
- Create the first tournament round with appropriate intro/exit survey URLs, numberOfGameRounds e.g.,
% npm run cli:prod -- tournament round create --tournamentId <pk> --introSurveyUrl=https://asu.qualtrics.etc --exitSurveyUrl=https://foo --numberOfGameRounds=27
- Create scheduled tournament round dates:
% npm run cli:prod -- tournament round date --tournamentRoundId 6 --date "2020-10-02T15:00:00-07:00"
- Set
isSignUpEnabled
to false inkeys/settings.json
to prevent users from going to the genericthanks for signing up!
SignedUp page and run% npm run cli:prod -- settings reload
to get it to take effect - Test
- backup db via
npm run backupdb
- create new tournament round with appropriate intro and exit survey URLs and numberOfGameRounds as needed. Second round and later has a different introSurveyUrl but the same exitSurveyUrl
- create new scheduled tournament round dates for tournament round
- find eligible participants (top N point scorers from all games ending in victory) and select their user ids
- create tournament round invitations for the user ids selected in the previous step
- export email addresses for invited participants and send them all an email inviting them to participate in the new round (ideally as a mailchimp segment?)
In the future it would be nice to have a tournament admin dashboard to perform some / all of these tasks from a web UI.
- Confirm individually via bcc email with all prospective players that they can attend the approved time slot.
- Set up invitations
- Create a Google Calendar invite with a hidden invite list to help them keep track of the timing - should also consider putting the "Add to calendar" button prominently in the player dashboard for the championship round.
npm run cli:prod -- tournament round create --tournamentId <pk> --introSurveyUrl=https://asu.qualtrics.etc --numberOfGameRounds=11
npm run cli:prod -- tournament round invite --tournamentRoundId 6 --userIds 10 11 12 13 14 15
npm run cli:prod -- tournament round emails --tournamentRoundId 6
This creates an emails.txt
csv file to use for creating an email to send out.
% npm run cli:prod -- tournament round date --tournamentRoundId 6 --date "2020-10-02T15:00:00-07:00"
Creates a new scheduled TournamentRoundDate for round ID 6 at October 2, 2020 at 3PM local Arizona time.
Edit server/deploy/settings.template.json
(if you want to make a permanent change for version control) and just change keys/settings.json
Then exec into the server container and run
% npm run cli:prod -- settings reload
to save your new settings
% ./dump.sh prod # all games
% ./dump.sh prod --tournamentRoundId 11 # dumps all games for the given tournament round
find users who have signed up but haven't participated yet (for reminder emails)
> select email, name from "user" where id > 31 and "isActive"=true and email is not null and id not in (select "userId" from "tournament_round_invite" where "hasParticipated"=true and "tournamentRoundId"=6);
npm run cli:prod -- game finalize --gameId <gameId>
Changes a games status from incomplete to victory/failure depending on game events.
Round 1: Wednesday 2022-02-23 to Sunday 2022-02-27 3pm + 7pm Arizona time
Round 2: Tuesday 2022-02-28 7pm Arizona time
Round 3: Thursday 2022-03-02 7pm Arizona time
Round 1: M-F, 11/8 - 11/12 at 3pm & 7pm Arizona time Round 2: 2021-11-16 7pm Arizona time
Round 1: M-F, 3/15 - 3/19 at 3pm & 7pm Arizona time Round 2: 3/22 7pm Arizona time
- Tuesday, 10/20 at 3:00pm PST, 7:00pm PST
- Wednesday, 10/21 at 3:00pm PST, 7:00pm PST
- Thursday, 10/22 at 3:00pm PST, 7:00pm PST
- Tuesday, 10/27 at 1500 PST
- Thursday, 10/29 at 1900 PST
- create new tournament and deactivate existing tournaments
- create new tournament round with intro + exit survey URLs and appropriate number of game rounds
- create new tournament round dates
- create tournament round invites with hasParticipated=True for all prior participants in the earlier Pilot Test to prevent them from participating in this current round.
- Initial start, Wednesday September 30th at 3pm and 7pm Arizona time
- Subsequent round on Friday (or continuing round 1 depending on participation)
- final tournament champion round will either be Friday or the following week