Hoe weet je wanneer het volgende tornooi plaatsvindt?
Grote sportevenementen zoals de Olympische spelen of het WK voetbal worden gehouden volgens een vast schema. In beide gevallen worden ze gehouden om de vier jaar: de Olympische spelen in 2024, 2028 enzovoort, het WK voetbal in 2026, 2030 enzovoort - tenminste als de FIFA weer niet met een of ander idioot idee afkomt. Ik ga niet beweren dat de kaarttornooien op Whisthub grote sportevenementen zijn, maar als u regelmatig meedoet hebt u misschien al gemerkt dat ze eveneens een vast schema volgen.
Voor kleurenwiezen, bijvoorbeeld, wordt er een tornooi om de drie weken gehouden, en de startdag wisselt tussen maandag, dinsdag en woensdag. Voor manillen is dit gelijkaardig, maar hier zijn erechter twee types van tornooien: Solo Cups en Team Cups. De regel hier is dat een Team Cup telkens gespeeld wordt in de week na een Solo Cup.
Deze schema's zijn echter niet altijd voor iedereen duidelijk, en ik krijg dus ook regelmatig vragen over wanneer het volgende tornooi plaatsvindt. Om hieraan tegemoet te komen, heb ik een interactieve tornooikalender gemaakt die alle tornooien van de komende drie maanden toont. De kalender hieronder toont de tornooien voor alle spellen, maar u kunt de kalender voor een specifiek spel ook vinden door te klikken op "Tornooien" in de lobby van het betreffende spel en dan door te klikken op tornooikalender in de tekst.
Toon tornooien voor
De kalender kan als volgt geïnterpreteerd worden. Dagen waarop een tornooi plaatsvindt zijn aangegeven in het rood. Als de tornooipagina reeds aangemaakt is - hetgeen ik voorlopig nog manueel moet doen - dan kunt u klikken op de desbetreffende dag om op de tornooipagina terecht te komen waar u alle info vindt over het tornooi, zoals het speelschema en wanneer de inschrijvingen opengaan. Merk op dat een tornooipagina al aangemaakt kan zijn, nog voor dat het tornooi zichtbaar is in de lobby!
Tornooien die gepland zijn volgens het schema, maar waarvoor nog geen pagina werd aangemaakt, zijn weergegeven in het lichtrood. Enkel wanneer de tornooipagina is aangemaakt, is het effectief bevestigd dat het tornooi plaats zal vinden. Het is dus mogelijk dat door allerlei omstandigheden - denk bijvoorbeeld aan feestdagen - bepaalde tornooien niet plaatsvinden op dezelfde datum als zou moeten op basis van het schema, of dat ze zelfs helemaal niet plaatsvinden, maar dit is eerder zeldzaam.
Merk ook op dat er soms pauzes in het schema kunnen zitten. Het zou bijvoorbeeld niet echt logisch zijn om een tornooi te houden op kerstavond, dus het schema weet dit ook en slaat zulke tornooien over.
Zoals hierboven vermeld moet ik momenteel nog steeds de tornooipagina's manueel aanmaken, maar dat is slechts gedeeltelijk waar. Aangezien tornooien steeds dezelfde structuur hebben, is alles wat ik moet doen op een knop klikken in de kalender. Vervolgens wordt de tornooiconfiguratie aangemaakt, en moet ik enkel nog een naam verzinnen voor het tornooi - wat overigens soms verbazend moeilijk is! De naamgeving van tornooien is zelfs de enige redenen waarom het genereren van tornooien nog niet volledig automatisch gebeurt!
Als u geïnteresseerd bent in hoe dit technisch in elkaar zit, dan is het nuttig om te weten dat een tornooischema voorgesteld wordt door een object dat er typisch als volgt uitziet:
const schedule = {
anchor: '2023-10-09',
variant: 'manille',
name: 'Solo Cup',
day: ['Tuesday', 'Wednesday', 'Monday'],
opens: '19:00-6',
liveAt: 'Monday-1 19:00',
interval: '3 weeks',
pause: '12-23 01-01',
timeZone: 'Europe/Brussels',
schedule: {
rounds: [
'20:00',
'21:00',
'22:00',
'20:00+1',
'21:30+1',
],
},
};
Cruciaal hier is de ankerdatum - anchor date in het Engels: dit is de eerste datum wanneer een tornooi van dit schema werd gehouden. Op basis van de ankerdatum en het interval kunnen alle toekomstige tornooien aangemaakt worden, theoretisch tot in het einde der tijden. Merk ook op dat de dag waarop het tornooi start als een lijst - een array in het Engels - is opgegeven. Dit betekent dat de eerste keer dit tornooi gehouden wordt, dit gebeurt op een dinsdag, de volgende keer op woensdag, dan maandag, en vervolgens weer op dinsdag enzovoort.
Het is zelfs zo dat het algoritme zo is opgebouwd dat eender welke optie in de configuratie van een tornooi een lijst kan zijn, die dan doorlopen wordt. Dit gebeurt bijvoorbeeld met de Piccolo Cups in kleurenwiezen, waar elk vierde tornooi normaal gezien een is waar Piccolo gekozen kan worden als contract:
const schedule = {
variant: 'whist',
config: {
rules: {
piccolo: [false, false, false, true],
},
},
};
Een interessant aspect aan dit alles zijn tijdzones, en meerbepaald het al dan niet gebruiken van de zomertijd. Dit is relevant voor tornooien, want als een tornooischema aangeeft dat het tornooi telkens start om 20:00, dan moet dit zo zijn zowel in de zomer als in de winter. Dat is dan ook waarom elk tornooi intern gelinkt is aan een bepaalde tijdszone, dewelke Europe/Brussels
is voor de meeste tornooien.
Hoewel het niet echt relevant is als u ergens in Europa woont, wordt het dit wel als u bijvoorbeeld een expat bent in pakweg Mexico. Mexico gebruikt immers geen zomertijd, wat ervoor zorgt dat als u in Mexico Stad woont - m.a.w. in de America/Mexico_City
tijdzone - dan start een tornooi dat om 20:00 Belgische tijd start in december, in Mexico Stad om 13:00. Maar, als een tornooi om 20:00 start Belgische tijd in juli, dan start dit in Mexico Stad om 12:00 omdat Mexico geen zomertijd gebruikt!
Het wordt zelfs nog complexer wanneer u in de Verenigde Staten woont. Hoewel de VS wel degelijk de zomertijd gebruiken - tenminste, het grootste deel van het land - start en eindigt deze niet op dezelfde dag als in Europa! In Europa start de zomertijd immers de laatste zondag van maart om 01:00 UTC, maar in de Verenigde Staten start deze al op de tweede zondag van maart om 2 uur 's nachts lokale tijd!
M.a.w, als een tornooi gehouden wordt in maart en het is gelink aan de tijdzone Europe/Brussels
, dan leidt dit tot de volgende starturen op basis van wanneer het exact plaatsvindt in maart:
Datum | Europe/Brussels | America/New_York | America/Mexico_City |
---|---|---|---|
5 maart | 20:00 | 14:00 | 13:00 |
22 maart | 20:00 | 15:00 | 13:00 |
5 april | 20:00 | 14:00 | 12:00 |
Een gelijkaardig iets gebeurt in oktober bij het einde van de zomertijd! Om een bekend gezegde onder programmeurs te citeren:
I got 99 problems, and timezones are 97 of them.
Hoe het ook zij, als u in België woont - zoals de meeste spelers op deze website - dan moet u zich er niet veel van aantrekken. Zelfs wanneer u op vakantie bent in een andere tijdzone kunt u nog steeds eenvoudig meedoen aan tornooien omdat de starturen toch telkens aangegeven staan in de tijdzone van uw apparaat.
Dit betekent dat als u bijvoorbeeld naar Portugal reist - waar een andere tijdzone dan in België geldt - en uw gsm is ingesteld op Portugese tijd - hetgeen de meeste gsm's tegenwoordig automatisch doen - dan worden de starttijden van het tornooi automatisch aangepast. Dus, laat die 97 problemen maar over aan de programmeurs, en vertrouw gewoon op wat u ziet op de tornooipagina!