Fab bataille navale - c unix

Description

Il s'agit dans ce module d'un exemple classique de projet de fin d'année d'école en C Système Unix.
Ce programme est adapté a une plateforme Unix type Linux RedHat. Il tourne en réseau IP avec un serveur et un client et est en mode console pur.

- Le serveur de jeu "servjeu" lancé en tache de fond sur une machine gère les échange des données et la partie en cours.

- Le client du jeu "clientjeu" se lance en se connectant sur le serveur. Celui-ci gère l'affichage de la partie et des données à envoyer (coup, administration, ...).

Le mode de jeu est le suivant :
1) Lancer le serveur sur une machine (./servjeu 6667)
2) Connecter l'administrateur (./clientjeu IpServeur 6667)
3) Lancer une partie (en mode administrateur, reconnu à partir du fichier de config)
4) Connecter les joueurs (le nombre de joueurs choisis)
5) Jouer.

La même carte est donnée a tous les joueurs connectés et ils savent tous les coups touchés ou coulés.

Source / Exemple :


Les sources sont dans le répertoire 'src' du ZIP ainsi que le rapport et les annexes rendus.
En gros tout est déja fait et fonctionne si vous souhaitez une bonne base pour un projet.

Un fichier script bash permet de compiler automatiquement l'ensemble du projet et de changer les modes des fichiers exécutables.
>> 'compile.sh'

Vous pouvez aussi le télécharger ici :
  http://fromelard.free.fr/Scripts/projetCBatailleNavalle/

A cette adresse, vous trouverez les sources et les PDF des rapports.

Conclusion :


Un conseil :
Veuillez changer les noms dans les sources même et des rapports.
De la même facon il manque une partie du projet de base qui est ladministration en dynamique des joueurs (interdire la connexion à un joueur directement, donner à l'administrateur la liste des joueurs connectés, ...).

Attention :
Un bug reste présent dans le jeu, les bateaux étant identifiés par les lettres (A, B, C, ...), lors de la partie, il y a confusion entre le C (nom du bateau) et le C (Bateau coulé) de la meme facon pour le T (de touché), il faudrait changer le mode d'identification des bateaux.

Donc si vous prenez ce projet, je vous invite à le corriger car le bug est visible très vite (dès que l'on place 3 bateaux).

----------------------

Je remercie pour ce projet Richeton Nicolas (qui fut mon binome), lifo et franck pour leur apport de base.

Romelard Fabrice (Alias F___)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.