Files

55 lines
1.6 KiB
Markdown
Raw Permalink Normal View History

2026-02-06 01:32:24 +01:00
# BUT3 Projet Jeu : Hex
2026-02-06 01:32:24 +01:00
Il sagit dune implémentation du jeu **Hex** en Java, développée à partir de lAPI fournie par le Monsieur Madelaine.
Le projet comprend un moteur de jeu fonctionnel, un affichage console pour le debug, ainsi que des bots permettant de jouer automatiquement.
2026-02-06 01:32:24 +01:00
## Compilation
2026-02-06 01:32:24 +01:00
Depuis la racine du projet, compiler lensemble des fichiers Java avec la commande suivante :
2026-02-06 01:32:24 +01:00
```bash
javac -d build $(find javaAPI -name "*.java")
```
2026-02-06 01:32:24 +01:00
Les fichiers compilés (`.class`) sont générés dans le dossier `bin`.
2026-02-06 01:32:24 +01:00
## Lancer une démonstration
2026-02-06 01:32:24 +01:00
### Partie automatique (bot)
2026-02-06 01:32:24 +01:00
```bash
java -cp build fr.iut_fbleau.HexGame.HexMain 3 autoplay
```
2026-02-06 01:32:24 +01:00
Ce mode permet de lancer une partie entièrement automatique en utilisant le bot implémenté dans la classe `Simulation`.
### Partie interactive (joueur humain)
```bash
java -cp build fr.iut_fbleau.HexGame.HexMain
```
Le plateau saffiche dans le terminal et les coups sont entrés sous forme de coordonnées.
2026-02-15 22:29:55 +01:00
### Partie arène (bot)
```bash
java -cp build fr.iut_fbleau.HexGame.ArenaMain
```
Créer un fichier arena_result.csv à la fin avec les résultats des combats
2026-02-06 01:32:24 +01:00
## Tests et validation
2026-02-06 01:32:24 +01:00
Les tests sont réalisés sous forme de **tests fonctionnels** via des méthodes `main` et des modes de démonstration :
- vérification de la validité des coups,
- alternance correcte des joueurs,
- détection des conditions de fin de partie,
- exécution de parties complètes en mode automatique.
2026-02-15 22:29:55 +01:00
Laffichage console du plateau, fourni par la méthode `HexBoard.toString()`, est utilisé comme outil de debug pour visualiser létat du jeu à chaque tour.