-
Notifications
You must be signed in to change notification settings - Fork 25
/
tournament-preparation
62 lines (51 loc) · 2.77 KB
/
tournament-preparation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Tournament preparation process on DDNet
=======================================
3-6 days prior:
- Make a nice screenshot and prepare the msgpack file
- Put the screenshot on ddnet.tw too
- Announce on DDNet Forum
- Announce on DDNet.tw
- Announce on Discord
- Announce in Client: news
- Announce on Steam
- Also scripts/print.sh, first days only lower lines, comment out upper ones
./git-update-files-only.sh
Crontab all servers to run print.sh every 2 hours
24 hours before:
- Change scripts/print.sh to run the upper part and write some nice messages
./git-update-files-only.sh
Crontab all servers to run print.sh every minute (yes, will only print every hour at the start, then faster)
- Prepare the right Tournament scripts:
scripts/quick-tournament.py for regular team quick tournaments (first wins)
scripts/solo-quick-tournament.py for the same on solo maps
scripts/solo-tournament.py for best time wins on solo maps
Edit the tournament file
Example run: scripts/solo-tournament.py Solo > /var/www/tournaments/38/index.html
During the night/morning before (after 1 AM):
- Edit motd/tournament.cfg based on info about the map and the current news from maps/*.map.cfg
- Edit tournament-prepare.sh on each server (except ddnet.tw) to run a nice map before the tournament, also make sure the other server settings are right
- When the server is empty, run ./tournament-prepare.sh
- Usually only on GER: When a server is full later, edit tournament-prepare.sh to add another server
- Prepare tournament-start.sh on ddnet.tw, update it to all servers
Use a fun loading screen
- Make sure all times are correct on servers, only do an ntp sync when servers are empty as it times everyone out
Without NTP can also do: date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"
1 hour before:
- cssh ddnet and abc
- Occasionally write something interesting or useful, for example at 40 min and 20 min explain the tournament
- Edit tournament-start.sh on locations with multiple servers to include them
- Connect to all/many interesting servers to watch
- Set livestream on website when it goes online
2 minutes before:
- Stop crontab scripts, write manually with abc
- When Tournament starts, switch to ./bc.py > servers/83{03,04,05}.fifo (all tournament servers)
- Upload the Tournament map (don't add it to votes) and ./git-update-files-only.sh
Make sure the Tournament map is on all servers
Tournament starts:
- ./tournament-start.sh
- Make sure the Tournament map loads everywhere
- Broadcast interesting events of the tournament
- Periodically run scripts/xx-tournament.py > /var/www/tournaments/xx/index.html
Tournament finished:
- Announce the winners
- Add the map to types/*/maps and ./git-update.sh (This also turns the Tournament servers into regular servers again)