Introduction au projet tCHu

CS-108

1 Introduction

Le projet de cette année, nommé tCHu et prononcé « tchou », est un jeu fortement inspiré de la version suisse des Aventuriers du Rail, un célèbre jeu de société. Notre variante se joue à deux, sur une carte représentant un réseau ferroviaire reliant différentes villes de Suisse et des pays voisins.

La figure 1 ci-dessous montre une partie de tCHu en cours entre une joueuse nommée Ada et un joueur nommé Charles. Les différentes parties de l'interface graphique ont été numérotées de 1 à 6 pour faciliter la description qui suit.

La vue présentée ci-dessous est celle d'Ada. Celles de Charles est similaire, seuls diffèrent les éléments propres à chaque joueur affichés au bas (numéros 5 et 6).

tchu-game-window;128.png
Figure 1 : Partie de tCHu en cours, vue par Ada (cliquer pour agrandir)

Les joueurs de tCHu ont pour but de réaliser un certain nombre d'objectifs, donnés par les billets en leur possession, affichés en bas à gauche de l'écran (numéro 5). Par exemple, le second billet visible dans la liste d'Ada est :

Berne - Coire (10)

Ce billet permet à Ada de gagner 10 points si elle parvient à relier les villes de Berne et de Coire avant la fin de la partie. Si elle n'y parvient pas, elle perd ces 10 points.

Afin de relier ces deux villes, Ada doit s'emparer d'un certain nombre de routes qui, mises bout à bout, forment un trajet continu allant de Berne à Coire. Une route relie deux gares voisines du réseau, et le moyen le plus simple de relier Berne à Coire consiste donc à s'emparer des quatre routes suivantes :

  1. Berne - Lucerne,
  2. Lucerne - Schwyz,
  3. Schwyz - Wassen, et
  4. Wassen - Coire.

En consultant la carte (numéro 3), on remarque qu'à ce stade de la partie, Ada s'est déjà emparée de ces quatre routes. Cela se voit au fait qu'elles sont occupées par des wagons bleu clair — la couleur correspondant à Ada —, symbolisés par des rectangles colorés ornés de disques blancs.

Pour s'emparer de ces routes, Ada a utilisé des cartes colorées et des wagons qu'elle avait en main. Les cartes dont elle dispose actuellement sont visibles en bas de l'écran (numéro 6), tandis que le nombre de wagons qui lui restent (cinq) est visible dans les statistiques en haut à gauche (numéro 1).

Avec les cartes et les wagons dont elle dispose actuellement, Ada pourrait par exemple s'emparer de la route Kreuzlingen - Saint-Gall, au nord-est de la carte. En effet, cette route comporte une seule case verte, et un joueur désirant s'en emparer doit donc avoir en main au moins une carte verte et un wagon, ce qui est le cas pour Ada.

Pour obtenir de nouvelles cartes, les joueurs peuvent en tirer deux à chaque tour. Chacune de ces cartes peut être soit l'une des cinq cartes disposées face visible à droite du plateau, soit la carte du sommet de la pioche, dont la face n'est pas visible (numéro 4).

Les joueurs peuvent également obtenir de nouveaux billets lors d'un tour, en tirant les trois premiers de la pioche pour en garder au moins un. C'est d'ailleurs ce que Charles est en train de faire dans la partie montrée à la figure 1, comme on l'apprend en lisant les informations liées à son déroulement, présentées à gauche de l'écran (numéro 2).

La partie se termine lorsqu'un joueur possède deux wagons ou moins. Dès cet instant, chaque joueur joue encore un tour, après quoi le décompte des points est effectué. Le joueur en ayant obtenu le plus grand nombre est déclaré vainqueur.

La description du jeu donnée ci-dessus est encore incomplète, certains éléments comme les tunnels ou les cartes locomotive ayant été omis pour ne pas alourdir la présentation. Ces éléments et les règles qui y correspondent seront décrits dans le cadre des différentes étapes.

2 Organisation

Le projet se fait par groupes de 2 personnes au maximum. La formation de ces groupes est libre et peut changer au cours du semestre, pour peu que les directives concernant le plagiat soient respectées. En particulier, si deux personnes ayant travaillé en commun se séparent, elles doivent se partager le code et ne peuvent chacune l'emporter en totalité de leur côté.

La mise en œuvre du projet est découpée en 12 étapes hebdomadaires, regroupées en trois parties :

  1. la première partie est composée des étapes 1 à 6,
  2. la seconde partie est composée des étapes 7 à 11,
  3. la troisième partie est composée de l'étape 12.

La première partie est très guidée, afin de vous permettre de bien démarrer, tandis que la seconde l'est moins, la troisième étant (presque) totalement libre.

3 Notation

Un total de 500 points est attribué durant le semestre, répartis ainsi :

  • projet : 350 points,
  • examen final : 150 points.

Les 350 points attribués au projet sont répartis de la manière suivante :

  • rendus testés : 100 points (20 points par rendu),
  • rendu intermédiaire : 80 points,
  • rendu final : 110 points,
  • étape 12 : 40 points,
  • test final : 20 points.

Un rendu testé est un rendu qui est évalué automatiquement au moyen de tests. Il y a cinq rendus de ce type au cours du semestre, un pour chacune des étapes 2 à 6. Le nombre de points obtenus à un rendu testé est proportionnel au nombre de tests passés avec succès.

Le rendu intermédiaire, qui concerne les étapes 1 à 6, et le rendu final, qui concerne les étapes 7 à 11, sont quant à eux évalués par des correcteurs, et les points attribués en fonction de la qualité du programme. L'efficacité, la concision et l'élégance du code sont pris en compte dans cette évaluation.

Le test final consiste en un test non automatisé — contrairement au test des étapes 2 à 6 — du bon fonctionnement du projet terminé.

Finalement, l'étape 12 est évaluée en fonction des améliorations que vous aurez librement choisi d'apporter à votre projet, et du bref rapport les décrivant que vous aurez écrit.