Pour lancer le serveur il suffit de le compiler avec make
(il est possible de recréer les dépendances avec make depend
). Pour lancer le serveur il suffit d'executer le fichier main. Pour couper le serveur Ctrl+C.
Pour lancer le client il suffit d'executer le fichier start.sh. Pour la compilation ou il faut inclure la bibliothèque json.jar présente dans le dossier lib. De même pour la bonne execution de Client.jar (lancé par start.sh) le dossier lib contenant la bibliothèque json.jar doit être dans le même dossier je l'archive java.
Pour le réseau notre projet utilise un serveur UDP et deux serveurs TCP. Le serveur UDP permet le broadcast pour repèrer les serveurs disponibles. Le 1er serveur TCP permet la communication entre le client et le serveur, c'est pat celui-ci que passe toutes les requetes du client au serveur (exemple : déplacement du personnage), et c'est par cette connexion que le serveur y répond (exemple : déplacement autorisé ou non). La seconde connexion permet la communication entre le serveur et le client, il est utilisé par le serveur pour notifier un evenement au client (exemple: explosion d'une bombe), le serveur n'attend pas de réponse du client.
zeae
Le client utilise 3 Thread, le thread principale qui lance le jeu, le thread d'attente de notification du serveur (attend en boucle la prochaine notification du serveur) et le thread d'affichage (qui utilise JavaFX).