Skip to content

MatthewBhe/Java-Final-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tower Of Heroes

Jeu développé uniquement par BONHOMME Matthew, pour le projet final en PROGRAMMATION ORIENTEE OBJET NIVEAU 2 de 3eme année de Licence Informatique. Le jeu à été programmé en Java avec Swing pour l'interface graphique et MySQL pour la gestion des données des utilisateurs. Afin d'avoir accès à toutes les fonctionnalités et que le jeu fonctionne bien, regardez la partie sur l'installation et configuration. Tous les tests ont été réalisés à l'aide de l'IDE Eclipse et du serveur local WampServer.

Installation et configuration

Prérequis

  • Java (JDK 8 ou supérieur)
  • MySQL (via WAMP, XAMPP ou un serveur distant)
  • Connector JDBC pour MySQL

Configuration de la base de données

Si la base de données jeu n'existe pas, elle sera créée automatiquement au lancement du jeu. Cependant, pour assurer une bonne installation, il est recommandé de :

  1. Lancer WAMP ou XAMPP et s’assurer que MySQL fonctionne.
  2. Vérifier que la base de données est accessible via phpMyAdmin (Apres exécution du jeu !).
  3. Vérifier les paramètres de connexion dans DatabaseManager.java : private static final String URL = "jdbc:mysql://localhost:3306/jeu"; private static final String USER = "root"; private static final String PASSWORD = ""; Les identifiants de base sont donc "root" et en mot de passe "", vérifiez aussi d'être sur le port 3306.
  4. Modifier ces informations si nécessaire selon la configuration de votre serveur.

Exécution du projet

1. Exécution via le fichier .jar (recommandé)

Lancez directement le fichier Tower of Hero.jar en double-cliquant dessus.

2. Exécution depuis un IDE (si le .jar ne fonctionne pas)

Si l'exécution du .jar ne fonctionne pas, il est possible de lancer le projet directement depuis un IDE.

  1. Ouvrir le projet dans un IDE compatible (Eclipse, IntelliJ, NetBeans…).
  2. Ajout manuel du JDBC Connector dans Eclipse :
    • Ouvrir Eclipse et accéder au projet.
    • Ajouter le JDBC Connector :
      • Clic droit sur le projetBuild PathConfigure Build Path….
      • Allez dans l'onglet Libraries.
      • Cliquez sur Add External JARs….
      • Sélectionnez le fichier mysql-connector-j-9.2.0.jar situé dans le dossier lib du projet.
    • Appliquer les modifications :
      • Cliquez sur Apply and Close.
      • Nettoyez et reconstruisez le projet (Project → Clean).
    • Tester à nouveau l'exécution du projet.
  3. Exécuter la classe Main.java pour démarrer le jeu.

Si l'erreur persiste : Vérifiez que la version du JDBC Connector est compatible avec MySQL et Java installés sur votre machine.

Commandes et gameplay

  • Se connecter : Entrer un pseudo et un mot de passe.
  • Créer un compte : S'inscrire avec une question secrète.
  • Gérer ses unités : Améliorer ses héros et soldats pour progresser.
  • Sauvegarder : Cliquer sur le bouton "Sauvegarder" pour enregistrer la progression.
  • Se déconnecter : Redémarrer le jeu avec une progression vierge.

Fonctionnalités principales

  • Connexion et inscription des utilisateurs

    • Système d'authentification avec pseudo et mot de passe
    • Enregistrement d'une question secrète pour la récupération de mot de passe
    • Vérification de l’unicité du pseudo
  • Gestion des données utilisateurs

    • Sauvegarde et récupération des statistiques de jeu dans une base de données MySQL
    • Chargement automatique des données lors de la connexion
    • Réinitialisation du jeu après déconnexion
  • Mécaniques de jeu

    • Héros et soldats avec caractéristiques améliorable (PV, attaque, vitesse...)
    • Combat contre des ennemis et gain de pièces
  • Interface graphique (Swing)

    • Menu de connexion et d’inscription
    • Interface de jeu fluide et interactive
    • Utilisation de tuiles pour le fond
    • Bouton de sauvegarde et de déconnexion
  • Base de données MySQL

    • Création automatique de la base de données
    • Gestion des utilisateurs et de leurs progressions en jeu

Releases

No releases published

Packages

No packages published

Languages