Proposer des courses : Différence entre versions

De VlmWiki
Ligne 89 : Ligne 89 :
  
  
idraces: N° de la course = date de départ année-mois-jour (sans les - )ici 28 fev 2009<br/>
+
'''idraces''': N° de la course = date de départ année-mois-jour (sans les - )ici 28 fev 2009<br/>
racename : nom de la course (entre guillemets)<br/>
+
'''racename''' : nom de la course (entre guillemets)<br/>
started : 0 ou 1 … 0 = pas encore partie ... toujours mettre 0 car sinon certaisn fichiers ne seront pas initialisés.<br/>
+
'''started''' : 0 ou 1 … 0 = pas encore partie ... toujours mettre 0 car sinon certaisn fichiers ne seront pas initialisés.<br/>
deptime : date et heure du départ en Unix Epoch time = nombres de secondes depuis le 1er Janvier 1970 … http://www.epochconverter.com/<br/>
+
'''deptime''' : date et heure du départ en Unix Epoch time = nombres de secondes depuis le 1er Janvier 1970 … http://www.epochconverter.com/<br/>
closetime : date de fermeture de la ligne de départ<br/>
+
'''closetime''' : date de fermeture de la ligne de départ<br/>
startlat : latitude du point de départ<br/>
+
'''startlat''' : latitude du point de départ<br/>
startlong : longitude du point de départ<br/>
+
'''startlong''' : longitude du point de départ<br/> coordonnées en degrées décimales avec 3 décimales … valeurs positives pour Nord et Est et valeur négatives pour Sud et Ouest<br/>
coordonnées en degrées décimales avec 3 décimales … valeurs positives pour Nord et Est et valeur négatives pour Sud et Ouest<br/>
+
'''racetype''' : 0 = course en ligne, 1 = course permanente<br/>
racetype : 0 = course en ligne, 1 = course permanente<br/>
+
'''boattype''' : type de bateau (voir liste : http://virtual-loup-de-mer.org/Polaires/ )<br/>
boattype : type de bateau (voir liste : http://virtual-loup-de-mer.org/Polaires/ )<br/>
+
'''firstpcttime''' : durée max de la course en % du temps du vainqueur en général 50 pour une course en ligne et 200 = 3 fois le temps du vainqueur pour une course permanente<br/>
firstpcttime : durée max de la course en % du temps du vainqueur en général 50 pour une course en ligne et 200 = 3 fois le temps du vainqueur pour une course permanente<br/>
+
'''qualifying_races''' : en cas que cette course soit une qualif pour une course future<br/>
qualifying_races : en cas que cette course soit une qualif pour une course future<br/>
+
'''coast_penalty''' : temps de Stop & Go en cas d’échouement en secondes, 3600 = 1 heure<br/>
coast_penalty : temps de Stop & Go en cas d’échouement en secondes, 3600 = 1 heure<br/>
+
'''vacfreq''' : fréquence des vac 1 ou 5 minutes<br/>
vacfreq : fréquence des vac 1 ou 5 minutes<br/>
 
  
  
Ligne 108 : Ligne 107 :
  
  
chaque valeur est terminée par une virgule "," et un ordre par un point/virgule ";"
+
chaque valeur est terminée par une virgule "," et un ordre par un point/virgule ";"<br/>
 
 
Les « delete from …. » servent à effacer tout WP qui aurait le même N° dans la BD de VLM
 
 
 
idwaypoint : N° du waypoint >>> N° de la course + 01, 02, …<br/>
 
libelle : nom du WP<br/>
 
latitude1 … longitude2 : lat et long des 2 points du WP (pour les portes) et pour un WP à point unique les lat et long doivent être identiques<br/>
 
maparea : le facteur zoom pour visualiser le WP à partir du tableau de bord (les N°en haut à droite du tableau de bord)
 
  
 +
Les « '''delete from''' …. » servent à effacer tout WP qui aurait le même N° dans la BD de VLM<br/>
 +
'''idwaypoint''' : N° du waypoint >>> N° de la course + 01, 02, …<br/>
 +
'''libelle''' : nom du WP<br/>
 +
'''latitude1''' … '''longitude2''' : lat et long des 2 points du WP (pour les portes) et pour un WP à point unique les lat et long doivent être identiques<br/>
 +
'''maparea''' : le facteur zoom pour visualiser le WP à partir du tableau de bord (les N°en haut à droite du tableau de bord)<br/>
 
séparer chaque WP par une virgule et à la fin un point/virgule
 
séparer chaque WP par une virgule et à la fin un point/virgule
  
Ligne 123 : Ligne 120 :
  
  
Le delete sert à effacer un tableau existant (du même nom)
+
Le '''delete from''' sert à effacer un tableau existant (du même nom)<br/>
 
+
Les valeurs : (N° de la course, ordre de passage du WP, laisser_au, type).La valeur '''laisser_au'''(relevé)sera de
Les valeurs : (N° de la course, ordre de passage du WP, relevé, type)
+
999 = pour WP avec 2 points ou de 0 à 360 pour laisser WP à point unique au cap xxx (relevé (laisser_au)) c'est à dire que pour passer au nord d'un Way-Point il faut le relever (le voir) au sud 180°sur le compas du bateau <br/>
999 = pour WP avec 2 points ou de 0 à 360 pour laisser WP à point unique au cap xxx (relevé (laisser_au)) c'est à dire que pour passer au nord d'un Way-Point il faut le relever (le voir) au sud 180°sur le compas du bateau  
+
'''type''' : Classement ou Finish (entre guillemets)<br/>
 
+
'''races_instructions''' : lien vers les IC de la course sur le forum de la Taverne.
type : Classement ou Finish (entre guillemets)
 
 
 
races_instructions : lien vers les IC de la course sur le forum de la Taverne.
 
 
(à crée par un admin ou un mod de la Taverne)
 
(à crée par un admin ou un mod de la Taverne)
  

Version du 23 janvier 2010 à 15:52

Cette page a besoin d'être complétée à partir des renseignements du forum

Les informations nécessaires pour créer une course

  • Choix Course en ligne ou course permanente (record)
  • Donner un nom
  • Durée du Stop&Go
  • Date d'ouverture de la ligne de départ
  • Date de fermeture de la ligne de départ
  • Fermeture de la ligne d'arrivée
  • Type de bateau voir Polaires
  • Qualification (lien vers la course de qualification)
  • L'image (la carte) qui résume la course
  • la fréquence de mise à jour (1min ou 5min)
  • les instructions de courses particulières (blackout,etc..)

A quel format ?

D'après le post Phille Comment créer une course, ... et à qui envoyer les info. [http://www.virtual-winds.com/forum/index.php?showtopic=4702&view=findpost&p=149921 et le post de sterwenn PUBLICATION DE COURSES, Voici ce qu'il me faut...


Informations nécessaires:

  • Fichier image en JPG de moins de 100 ko, de 720x480 pixels de dimension et nommé xxxxx.jpg (xxxxx=N° de la course idraces, voir plus loin) qui servira pour la vignette d'annonce. C'est une photo ou un schéma résumant le parcours.
  • Un fichier texte (xxxxx.txt où xxxxx est idraces, voir plus loin):
    • Coordonnées décimales du départ, des WP et de l'arrivée.
    • Type de bateau qui a une polaire dans VLM : http://wiki.virtual-loup-de-mer.org/index.php/Les_bateaux
    • Pen pour échouement en minutes (Le fameux stop and go)
    • Date et heure du départ
    • Fermeture ligne de départ
    • Fermeture de la course en % du temps du gagnant
    • Durée entre vac (1 ou 5 minutes) selon type de parcours (si il y a des passages entre les cailloux = 1 minutes)


Exemple de fichier xxxxx.txt

# LA COURSE  Route de Fantaisie. 
delete from races where idraces = 20090228; insert into races (idraces, racename, started, deptime, closetime, startlat, startlong, racetype, boattype, firstpcttime, qualifying_races, coastpenalty, vacfreq) values (20090228, "Route de Fantaisie", 0, 1235826000, 1235826000+3600, 22105, 114088, 0, "boat_C5v2", 200, "", 3600, 5);
# Les WAYPOINTS
delete from waypoints where idwaypoint = 2009022801; delete from waypoints where idwaypoint = 2009022802; delete from waypoints where idwaypoint = 2009022803; delete from waypoints where idwaypoint = 2009022804; delete from waypoints where idwaypoint = 2009022805; delete from waypoints where idwaypoint = 2009022806; delete from waypoints where idwaypoint = 2009022807;
insert into waypoints (idwaypoint, libelle, latitude1, longitude1,latitude2,longitude2, maparea) values (2009022801, "WP1", 22031, 114014, 21984, 114120, 12),
(2009022802, "Sonde", -5891, 105789, -5931, 105984, 12),
(2009022803, "Sud Afrique", -34823, 20000, -34823, 20000, 10),
(2009022804, "Archipel Bijagos", 11286, -16472, 11286, -16472, 8),
(2009022805, "Manche", 49960, -5201, 48571, -4706, 8),
(2009022806, "Mer du Nord", 51110, 1328, 50869, 1581, 8),
(2009022807, "Finish", 51445, 747, 51520, 783, 12);
# Les liens COURSE/WAYPOINTS
delete from races_waypoints where idraces = 20090228;
insert into races_waypoints ( idraces, wporder, idwaypoint, laisser_au, wptype)
values
(20090228,1,2009022801,999,"Classement"),
(20090228,2,2009022802,999,"Classement"),
(20090228,3,2009022803,0,"Classement"),
(20090228,4,2009022804,80,"Classement"),
(20090228,5,2009022805,999,"Classement"),
(20090228,6,2009022806,999,"Classement"),
(20090228,7,2009022807,999,"Finish");
delete from races_instructions where idraces=20090713;
insert into races_instructions ( idraces, instructions, flag)
values (20090713, "http://www.virtual-winds.com/forum/index.php?showtopic=6093", 13);
  • Explications:


    • LA COURSE 20090228 Route de Fantaisie.


idraces: N° de la course = date de départ année-mois-jour (sans les - )ici 28 fev 2009
racename : nom de la course (entre guillemets)
started : 0 ou 1 … 0 = pas encore partie ... toujours mettre 0 car sinon certaisn fichiers ne seront pas initialisés.
deptime : date et heure du départ en Unix Epoch time = nombres de secondes depuis le 1er Janvier 1970 … http://www.epochconverter.com/
closetime : date de fermeture de la ligne de départ
startlat : latitude du point de départ
startlong : longitude du point de départ
coordonnées en degrées décimales avec 3 décimales … valeurs positives pour Nord et Est et valeur négatives pour Sud et Ouest
racetype : 0 = course en ligne, 1 = course permanente
boattype : type de bateau (voir liste : http://virtual-loup-de-mer.org/Polaires/ )
firstpcttime : durée max de la course en % du temps du vainqueur en général 50 pour une course en ligne et 200 = 3 fois le temps du vainqueur pour une course permanente
qualifying_races : en cas que cette course soit une qualif pour une course future
coast_penalty : temps de Stop & Go en cas d’échouement en secondes, 3600 = 1 heure
vacfreq : fréquence des vac 1 ou 5 minutes


    • Les WAYPOINTS


chaque valeur est terminée par une virgule "," et un ordre par un point/virgule ";"

Les « delete from …. » servent à effacer tout WP qui aurait le même N° dans la BD de VLM
idwaypoint : N° du waypoint >>> N° de la course + 01, 02, …
libelle : nom du WP
latitude1longitude2 : lat et long des 2 points du WP (pour les portes) et pour un WP à point unique les lat et long doivent être identiques
maparea : le facteur zoom pour visualiser le WP à partir du tableau de bord (les N°en haut à droite du tableau de bord)
séparer chaque WP par une virgule et à la fin un point/virgule


    • Les liens COURSE/WAYPOINTS


Le delete from sert à effacer un tableau existant (du même nom)
Les valeurs : (N° de la course, ordre de passage du WP, laisser_au, type).La valeur laisser_au(relevé)sera de 999 = pour WP avec 2 points ou de 0 à 360 pour laisser WP à point unique au cap xxx (relevé (laisser_au)) c'est à dire que pour passer au nord d'un Way-Point il faut le relever (le voir) au sud 180°sur le compas du bateau
type : Classement ou Finish (entre guillemets)
races_instructions : lien vers les IC de la course sur le forum de la Taverne. (à crée par un admin ou un mod de la Taverne)


  • OUTIL POUR CREER DES PARCOURS (merci à JP « John-Pet)

http://www.virtual-winds.com/tcv/VLM_parcours.zip

il faut avoir la TCV installée sur votre ordinateur et il faut mettre l’exécutif dans un nouveau répertoire par exemple c:\VLM parcours\VLM_parcours.exe

double clique pour centrer la carte sur un point et puis zoomez clique droite (garder enfoncé) et déplacer le curseur pour dessiner une ligne et avoir les coordonnées début et fin de la ligne ainsi que sa longueur.

vous aurez les mêmes cartes que sur VLM donc très facile pour trouver les coordonnées des WP et le facteur zoom (ne pas oublier que la mini carte de WP fait 800x600 pixels … atention si vous avez un grand écran)

Les outils pour aider à la création de course

Carte de base : http://flatplanet.sourceforge.net/maps/natural.html

EPOC Converter : http://www.epochconverter.com/

John-Pet définition de parcours : http://www.virtual-winds.com/tcv/VLM_parcours.zip

(A compléter, Cf. Forum)

Ou / A qui envoyer cette proposition ?

Discutez en par courriel à vlm (arobase) virtual-winds.com et via le forum pour bénéficier de l'expertise et des idées de tous.

Annexe

Détail

  • Créer une course :
    1. ajouter une ligne dans "races"
      Description de la course
      idraces int(11) racename varchar(255) started int(11) deptime bigint(14) startlong int(11) startlat int(11) boattype varchar(255) closetime bigint(20) racetype int(11) firstpcttime bigint(20) depend_on int(11) qualifying_races text idchallenge text coastpenalty int(11) bobegin bigint(20) boend bigint(20) maxboats int(11) theme varchar(30) vacfreq tinyint(4)
      20091103 YYYYMMDD du depart
      laisser vide
      La Moqueca de Peixe 2 0 1254560401 (le 3/11/09 à 11:00 UTC) -1352 46036 Mono650 1254733216 (fermeture du départ le 5/11/09 à 11:00 UTC) 0 = course en ligne
      1 = course permanente
      200
      ex. 200% max du temps du vainqueur (course en ligne = 50, course qualif = 25, permanente = 200)
      laisser vide
      ne pas utiliser
      20090913
      La Moqueca de Peixe
      Challenge mini 650 2010 1200
      20 minutes
      1254733216
      début du blackout
      1254819639
      début du blackout de 24h
      200 flashy 1
      coordonnées : à multiplier par 1000, ex. 46036 = 46.036 N
      qualifying race : Liste des course qualificatives à une course (une seule suffit si plusieurs sont précisées). Ex. 20071021 20071022 20071023 20071024 20071025 (multikawa 2007) ou une seule (ex. TRANSQUAD2 avait TRANSQUAD1 en qualif). Il suffit en fait de faire un chainage et que le qualifying_races de l'une mentionne uniquement la course précédente. Ainsi, pas besoin du depend_on, qui devrait quitter la base de données.

      depend_on : liste des courses qu'il faut obligatoirement avoir terminée (toutes) pour prendre part à une autre. ==> non implémenté pour l'instant, le code n'est pas complêt et est en commentaire dans lib/phpcommon/functions.php. Ne pas utiliser.

      idchallenge : pour classements au temps cumulé. (pas nécessaire, Droopy fait très bien ce travail).
      maxboats : c'est pour faire des courses limitées en nombre d'inscrits (ex :le postlogue de Cap Istambul (80906), qui avait d'ailleurs la 80905 en qualifying_races)
      Le theme : c'est pour forcer un theme pour tous les joueurs d'une course. Pour la 956, on a forcé l'utilisation du theme "oceanexpress_newyork_lorient". ==> Le Theme, c'est le nom d'une feuille de style pour looker l'interface
      bobegin et boend, ce sont des dates, exprimées comme deptime et closetime à la façon "secondes depuis Epoch": elle introduisent le début d'un blackout et la fin de celui-ci.
      On peut par exemple imaginer qu'une course se déroulant autour du meridien 0 soit automatiquement mise en blackout entre 20UTC et 6UTC tous les jours, ça ferait un peu "il fait nuit donc on ne voit pas les concurents". La table "races" peut en mémoriser à la foi.

      Il y a maintenant : "vacfreq", qui indique la durée des vacations en minutes. (alors que le getinfo retourne l'info en secondes)
    2. les ICs sont facultatives
      Instructions de courses
      idraces int(11) instructions
      text
      flag int(11)
      20091103
      laisser vide
      6173
      num topic Taverne
      laisser vide
      13


    3. ajouter N lignes de waypoints
      waypoints
      idwaypoint
      int(20)
      latitude1
      double
      longitude1
      double
      latitude2
      double
      longitude2
      double
      libelle
      double
      maparea
      double
      2009110301 -3876 -38397 -3876 -38397 Noronha 8
      2009110302 -13050 -32300 -13200 -32300 Salvador de Bahia - Sud 12
      coordonnées : à multiplier par 1000, ex. -3876 = 3.876 S
    4. Ordonnancer les N waypoints sur la course (administrateur)
      enchainement des waypoints
      idraces
      int(11)
      wporder
      int(11)
      idwaypoint
      int(20)
      laisser_au
      int(11)
      wptype
      varchar(32)
      20091103
      ou laisser vide
      1 2009110301 270
      passer Norohna à l'ouest
      classement
      20091103
      ou laisser vide
      2 2009110302 999 finish line
      laisser_au : si dans table waypoints : latitude1 = latitude2 ET longitude1 = longitude2 alors le wp est de type laisser_au
      wptype : peut prendre les valeurs Classement ou Finish. Icegate et nosail zonesont des "règles de controle" mises en oeuvre "en dehors/parallèle du moteur VLM", mais ne figurent pas dans le script de création d'une course en base de données.

Schema extrait de http://dev.virtual-loup-de-mer.org/vlm/browser/trunk/base/schemas/races_tables.sql RACES, WAYPOINTS, RACES_WAYPOINTS, races_instructions

  • Créer une course,
    • ajouter une ligne dans "races"
    • ajounter N lignes dans "waypoints" (une par waypoint)
    • faire la relation 1,N (intégrant l'ordonnancement des WP) dans races_waypoint
    • la table races_instructions est facultative
tables valorisées par l'admin lors de la création d'une course
TABLE INFORMATIONS COMMENTAIRES
`races`
 `idraces` int(11) NOT NULL auto_increment,
 `racename` varchar(255) NOT NULL default ,
 `started` int(11) NOT NULL default '0',
 `deptime` bigint(14) default NULL,
 `startlong` int(11) NOT NULL default '0',
 `startlat` int(11) NOT NULL default '0',
 `boattype` varchar(255) default NULL,
 `closetime` bigint(20) default NULL,
 `racetype` int(11) default NULL,
 `firstpcttime` bigint(20) default NULL,
 `depend_on` int(11) default NULL,
 `qualifying_races` text,
 `idchallenge` text,
 `coastpenalty` int(11) default '0',
 `bobegin` bigint(20) default '0',
 `boend` bigint(20) default '0',
 `maxboats` int(11) default '0',
 `theme` varchar(30) default NULL,
 'vacfreq' tinyint(4) default 5,
 PRIMARY KEY  (`idraces`)
`races_instructions`
 `idraces` int(11) default NULL,
 `instructions` text,
 `flag` int(11),
 KEY (`idraces`)
`waypoints`
 `idwaypoint` int(20) NOT NULL default '0',
 `latitude1` double default NULL,
 `longitude1` double default NULL,
 `latitude2` double default NULL,
 `longitude2` double default NULL,
 `libelle` varchar(255) default NULL,
 `maparea` int(11) default '10',
  PRIMARY KEY  (`idwaypoint`)
`races_waypoints`
 `idraces` int(11) NOT NULL default '0',
 `wporder` int(11) NOT NULL default '0',
 `idwaypoint` int(20) default NULL,
 `laisser_au` int(11) default NULL, 
 `wptype` varchar(32) default NULL,
 PRIMARY KEY  (`idraces`,`wporder`)

si dans table waypoints :

latitude1 = latitude2 ET longitude1 = longitude2

alors le wp est de type laisser_au


Un extrait des tables :
+----------+---------------------------------------------------------------------------------+---------+------------+-----------+----------+----------------+------------+----------+--------------+-----------+------------------+-------------+--------------+---------+-------+----------+-------+---------+
| idraces | racename | started | deptime | startlong | startlat | boattype | closetime | racetype | firstpcttime | depend_on | qualifying_races | idchallenge | coastpenalty | bobegin | boend | maxboats | theme | vacfreq |
+----------+---------------------------------------------------------------------------------+---------+------------+-----------+----------+----------------+------------+----------+--------------+-----------+------------------+-------------+--------------+---------+-------+----------+-------+---------+
| 20081102 | Belfast - Man - Ouessant - Les Sables d'Olonne **QUALIF Vent des Globes** | -1 | 1225530000 | -5867 | 54658 | boat_Imoca2008 | 1225533600 | 0 | 10 | NULL | | NULL | 1800 | 0 | 0 | 0 | NULL | 5 |
| 20081103 | Lisboa - Ouessant<->Aber Ildut - Les Sables d'Olonne **QUALIF Vent des Globes** | -1 | 1225738800 | -9134 | 38704 | boat_Imoca2008 | 1225742400 | 0 | 150 | NULL | | NULL | 900 | 0 | 0 | 0 | NULL | 5 |
| 20081109 | Le Vent Des Globes | -1 | 1226232120 | -1790 | 46473 | boat_Imoca2008 | 1226836800 | 0 | 50 | 0 | | NULL | 10800 | 0 | 0 | 0 | NULL | 5 |
| 20090913 | La Moqueca de Peixe | -1 | 1252843200 | -1352 | 46036 | boat_Mono650 | 1252886400 | 0 | 50 | NULL | | NULL | 1800 | 0 | 0 | 0 | NULL | 5 |
| 20091003 | La Moqueca de Peixe 2 | 0 | 1254567600 | -16940 | 32610 | boat_Mono650 | 1254610800 | 0 | 50 | NULL | | NULL | 1800 | 0 | 0 | 0 | NULL | 5 |
+----------+---------------------------------------------------------------------------------+---------+------------+-----------+----------+----------------+------------+----------+--------------+-----------+------------------+-------------+--------------+---------+-------+----------+-------+---------+

+----------+---------+------------+------------+-------------------------+
| idraces | wporder | idwaypoint | laisser_au | wptype |
+----------+---------+------------+------------+-------------------------+
| 20081102 | 1 | 2008110201 | 999 | classement |
| 20081102 | 2 | 2008110202 | 999 | classement |
| 20081102 | 3 | 2008110203 | 999 | classement |
| 20081102 | 4 | 2008110204 | 999 | Finish |
| 20081103 | 1 | 2008110301 | 999 | classement |
| 20081103 | 2 | 2008110302 | 999 | classement |
| 20081103 | 3 | 2008110303 | 999 | Finish |
| 20081109 | 1 | 2008110911 | 999 | Atlantic IceGate |
| 20081109 | 2 | 2008110901 | 999 | Cape of Good Hope |
| 20081109 | 3 | 2008110912 | 999 | Kergelen IceGate |
| 20081109 | 4 | 2008110902 | 999 | Heard Island |
| 20081109 | 5 | 2008110913 | 999 | West Australian IceGate |
| 20081109 | 6 | 2008110903 | 999 | Cape Leuwin |
| 20081109 | 7 | 2008110914 | 999 | East Australian IceGate |
| 20081109 | 8 | 2008110915 | 999 | New-Zealand IceGate |
| 20081109 | 9 | 2008110916 | 999 | West Pacific IceGate |
| 20081109 | 10 | 2008110917 | 999 | East Pacific IceGate |
| 20081109 | 11 | 2008110904 | 999 | Cape Horn |
| 20081109 | 12 | 2008110905 | 999 | Finish |
| 20090913 | 1 | 2009091301 | 999 | Finish |
| 20091003 | 1 | 2009100301 | 999 | Finish |
+----------+---------+------------+------------+-------------------------+



  • les utilisateurs renseignent actuellement directement en SQL et transmettent à Phille, libellé de l'IC, n°topic créé par Phille.

[~]$ mysql -e "desc races"
+------------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------------+--------------+------+-----+---------+----------------+
| idraces | int(11) | NO | PRI | NULL | auto_increment |
| racename | varchar(255) | NO | | | |
| started | int(11) | NO | | 0 | |
| deptime | bigint(14) | YES | | NULL | |
| startlong | int(11) | NO | | 0 | |
| startlat | int(11) | NO | | 0 | |
| boattype | varchar(255) | YES | | NULL | |
| closetime | bigint(20) | YES | | NULL | |
| racetype | int(11) | YES | | NULL | |
| firstpcttime | bigint(20) | YES | | NULL | |
| depend_on | int(11) | YES | | NULL | |
| qualifying_races | text | YES | | NULL | |
| idchallenge | text | YES | | NULL | |
| coastpenalty | int(11) | YES | | 0 | |
| bobegin | bigint(20) | YES | | 0 | |
| boend | bigint(20) | YES | | 0 | |
| maxboats | int(11) | YES | | 0 | |
| theme | varchar(30) | YES | | NULL | |
| vacfreq | tinyint(4) | YES | | 5 | |
+------------------+--------------+------+-----+---------+----------------+

améliorer les performances : on devrait supprimer la colonne depend_on (on l'utilisera sans doute jamais, en fait) et la colonne idchallenge un jour. Ne pas prendre la peine de les valoriser, donc.