Skip to content

lainez12/trains_game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚂 Trains - Implémentation Digitale d'un Jeu de Plateau

Jouer au jeu en ligne

Présentation

Trains est une implémentation numérique du jeu de plateau japonais de construction de réseaux ferroviaires. Dans ce jeu, les joueurs construisent leur réseau ferroviaire autour de Tokyo ou d'Osaka en plaçant des rails et des gares sur le plateau.

Caractéristiques Techniques

Architecture du Projet

UML

Dans le diagramme ci-dessus, sont représentés seulement les méthodes et attributs contribuant à la compréhension de la modélisation orientée objet du jeu

Le projet est structuré en trois packages principaux qui démontrent une séparation claire des responsabilités :

  • fr.umontpellier.iut.gui : Interface utilisateur

    • Gestion de l'affichage web
    • Communication client-serveur
    • Rendu des états de jeu
  • fr.umontpellier.iut.trains : Logique métier

    • Implémentation des règles du jeu
    • Gestion des tours de jeu
    • Système de cartes et actions
    • Manipulation des états de jeu
  • fr.umontpellier.iut.trains.data : Gestion des données

    • Structures de données du jeu
    • Persistance des états

Compétences Techniques Démontrées

Programmation Orientée Objet

  • Conception et implémentation d'une hiérarchie de classes complexe
  • Utilisation avancée de l'héritage et du polymorphisme
  • Encapsulation des données et comportements
  • Pattern MVC pour la séparation des responsabilités

Gestion du Code

  • Tests unitaires pour la validation du comportement
  • Versioning avec Git
  • Documentation du code
  • Architecture modulaire et maintenable

Algorithmes et Structures de Données

  • Implémentation d'algorithmes de graphes pour la gestion du réseau ferroviaire
  • Gestion efficace des collections pour les cartes et les joueurs
  • Optimisation des parcours et des recherches

Interface Utilisateur

  • Développement d'une interface web interactive
  • Communication client-serveur
  • Gestion des événements utilisateur
  • Rendu dynamique des états de jeu

Fonctionnalités du Jeu

Système de Cartes

  • 39 types de cartes uniques
  • Gestion de différents types : Train, Rail, Gare, Action, Victoire, Ferraille
  • Implémentation des effets spéciaux pour chaque carte

Gestion des Joueurs

  • Système de tours de jeu
  • Gestion des ressources et des actions
  • Pile de cartes personnalisée pour chaque joueur
  • Système de points et de victoire

Plateau de Jeu

  • Placement dynamique des rails et des gares
  • Validation des constructions
  • Calcul des scores et des bonus

Installation et Exécution

Pour Jouer en Ligne

Visitez le site du jeu

Pour Exécuter Localement

  1. Cloner le dépôt
  2. Exécuter la classe GameServer dans fr.umontpellier.iut.gui
  3. Ouvrir http://localhost:4242 dans un navigateur

Contexte du Projet

Ce projet a été développé dans le cadre des SAÉ S2.01 et S2.02 du BUT Informatique à l'IUT Montpellier-Sète. Il démontre la maîtrise de compétences essentielles en développement logiciel, de la conception à l'implémentation, en passant par les tests et la documentation.

Conclusion

Ce projet illustre ma capacité à :

  • Concevoir et implémenter une application complexe en Java
  • Créer une architecture logicielle robuste et maintenable
  • Développer des interfaces utilisateur interactives
  • Gérer un projet de développement complet
  • Travailler avec des algorithmes et structures de données complexes

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5