♠ Skyjo

Implémentation Java du jeu de société Skyjo avec interface textuelle, joueurs robotiques et architecture MVC.

✓ Pipeline CI Java 23 Maven JUnit 5 INF2050 — UQAM
📚

Documentation

Consultez la Javadoc complète.

Consulter la Javadoc
⬇️

Téléchargement

Téléchargez la dernière version du JAR.

Télécharger Skyjo.jar
🎮

2 à 4 joueurs

Supporte des parties humaines, robotiques ou mixtes avec des noms dynamiques.

Keksli MadMax S38 Humain

Contexte du projet

Skyjo est un jeu de cartes multijoueur implémenté en Java dans le cadre du cours INF2050 — Outils et pratiques de développement logiciel à l'UQAM. Le jeu supporte de 2 à 4 joueurs humains ou robotiques, avec une interface textuelle en ligne de commande.

Le projet respecte une architecture MVC et inclut des tests unitaires, des tests de mutation et des tests d'intégration basés sur des joueurs robotiques déterministes.

Instructions d'exécution

Prérequis : Java 23 ou supérieur

Lancer une partie avec 2 à 4 joueurs :

java -jar Skyjo.jar nom1 nom2

Lancer une partie avec une seed déterministe :

java -jar Skyjo.jar 5 nom1 nom2 nom3 nom4

Joueurs robotiques disponibles :

NomComportementNiveau
KeksliChoisit toujours la première optionDébutant
MadMaxChoisit une option aléatoireIntermédiaire
S38Minimise les valeurs élevéesExpert

Exemples :

java -jar Skyjo.jar nom1 Keksli
java -jar Skyjo.jar Keksli MadMax Keksli S38

Règles du jeu

Consulter cette vidéo pour apprendre les règles du jeu.

Voir les règles

Qualité du code

Checkstyle
Complexité ≤ 7
Couverture
JaCoCo ≥ 85%
Mutation
PIT ≥ 65%
Javadoc
100% documenté

Contributeurs

HT

Hasmik Tadevosyan

Développeuse