Manuel de Blast
version 1.3.1
Un jeu fait par Phrounz (http://phrounz.chez.tiscali.fr).

I ) Configuration nécessaire (estimation) :

- DIRECT X 9.0 ou supérieur. Vous pourrez trouver la dernière version de DirectX sur le site de Microsoft.
- Windows (95 à XP).
- Un processeur 600 Mhz ou supérieur
- 5 Mo de mémoire vive (en plus de ce qu'il faut pour l'OS)
- Carte graphique assez bonne (GeForce ou supérieure recommandée).
- Ecran et carte graphique capables de supporter la résolution 1024x768 pixels.

- Jeu initialement crée sur un ordinateur celeron 1,2 Ghz, 256 Mo RAM, doté de Windows XP, et d'une carte graphique Radeon 9600. Sur cet ordinateur, le jeu fonctionnait correctement avec un FPS d'environ 60.
- Jeu testé sur un ordinateur Atlon 2400+, 256 Mo RAM, doté de Windows XP, et d'une Radeon 9700. Sur cet ordinateur, le jeu fonctionnait correctement.
- Jeu amélioré sur un ordinateur Atlon 3000+, 512 Mo RAM, doté de Windows XP, et d'une Radeon 9600. Sur cet ordinateur, le jeu fonctionnait correctement avec un FPS d'environ 62.
- Jeu testé sur un ordinateur Pentium II 200 Mhz, 32 Mo RAM, doté de Windows 95, et de DirectX 8.0. Sur cet ordinateur, le jeu fonctionnait avec un FPS de 5 à 10 (c'est à dire injouable), et il y avait des bugs d'affichage.

II ) Le jeu :

1 ) Informations générales :

Pour lancer le jeu, double-cliquez sur Blast.exe.

Vous voyez alors une image apparaitre. Appuyez sur F2 pour lancer une nouvelle partie. Choisissez le nombre de joueurs et la carte.

Les commandes du jeu sont accessibles en appuyant sur F3 et en choissant "Commandes".

But du jeu du mode DeathMatch : anéantir le plus possible son ou ses adversaire(s) au moyen des diverses armes qui se trouvent sur l'arène;. Le jeu ne s'arrête pas (il faut appuyer sur F4, ou relancer une partie avec F2).
But du jeu du mode Invasion : les joueurs alliés doivent anéantir les sphères qui viennent par vague de plus en plus nombreuses.
Le score de chaque joueur est marqué en face du signe . La vie est marquée en face de .

Chaque joueur ne peut pas se faire mal avec ses propres projectiles, mais peut se faire mal avec l'impact créé par ces projectiles.
Un conseil : désactivez l'option écrasement quand vous êtes en mode Invasion.


2 ) Description des armes :

Le MachineGun
Tire des projectiles qui se déplacent lentement mais qui font mal.

Le ReboundGun
Tire des projectiles nombreux qui rebondissent sur les murs.

Le RadioControlGun
Tire des projectiles télécommandés qui se dirigent directement vers un de vos adversaires.

Le RocketLaucher
Peu de munitions mais tire un projectile qui provoque une énorme explosion.

III ) Modifier le jeu :

1 ) Droits de modification et de distribution du jeu :

Vous pouvez modifier tout ou partie du code ou des graphismes et les utiliser pour autre chose. Vous pouvez les envoyer à n'importe qui et les diffuser comme vous le voudrez, mais à deux conditions :
- Vous ne pouvez pas vendre tout ou partie de ce que j'ai fait.
- Vous devez citer mon url (phrounz.chez.tiscali.fr) et mon surnom (phrounz) clairement.

2 ) Modifier les graphismes :

Ce jeu est simple à modifier : pour modifier un graphisme, il suffit de changer l'image correspondant dans le dossier data\, qui contient toutes les images du jeu.

3 ) Créer une nouvelle map (arène) :

Pour créer une nouvelle map, il faut :
- Créer un nouveau dossier dans maps\ avec le nom que vous voulez donner à votre nouvelle map.
- Créer un fichier bitmap de 1024 sur 768 pixels, avec une résolution d'affichage de 8, 16 ou 24 Bits par pixels (profondeur de couleur), et nommer ce fichier "back.bmp". Mettez ce fichier dans votre nouveau dossier. Ce fichier représentera votre image de fond de l'arène.
- Créer un fichier bitmap de 1024 sur 768 pixels, avec une résolution d'affichage de 1 Bit par pixel (monochrome), et nommer ce fichier "collision.bmp". Mettez ce fichier dans votre nouveau dossier. Ce fichier représentera en noir tous les endroits où le joueur ne peut pas aller, et en blanc les endroits où il pourra aller. N'oubliez pas que le joueur quand il meurt apparait toujours en haut à gauche.
- Créer un fichier texte "bonus.txt". Mettez ce fichier dans votre nouveau dossier. ce fichier contiendra des indications pour savoir où se trouvent les bonus sur la map, de la manière suivante :
Le premier chiffre indique le numéro de type du bonus. Si vous n'en avez pas rajouté dans le code source, cela va de 1 à 5. Ensuite il y a un retour à la ligne et un second numero, indiquant la position x en pixels du bonus. Ensuite il y a un retour à la ligne et un troisième numero, indiquant la position y en pixels du bonus. Ensuite il y a un retour à la ligne et un quatrième numero, indiquant le temps qu'il faut attendre avec régéneration totale du bonus (on pourra mettre par exemple 200). Ensuite on passe au bonus suivant. Attention, le fichier doit finir par une ligne vide : le nombre de lignes est donc 4 x NombreDeBonus + 1. Pour commencer, inspirez-vous de ce qu'il y a déjà pour les autres maps. Attention à ne pas mettre plus de 30 bonus.

4 ) Modifier le code source :

Si vous voulez modifier le code source (bonne chance !), il vous faudra Microsoft Visual Studio 6.0 ou supérieur et le SDK DirectX9. Il y a deux manières de modifier le jeu : modifier juste des constantes, ou bien modifier le code source en entier. Un conseil, ne modifiez pas trop tout ce qui est dans needs_sources et needs_headers, ce sont les fonctions de bas niveau.

Pour rajouter une arme, il vous faudra :
- Modifier les constantes au début de proj.cpp (n'oubliez pas d'incrémenter de 2 la constante NB_WEAPON_TYPES). Pour chaque arme, il faut deux types d'objet Proj : le projectile lui-même et l'explosion qu'il engendre en touchant son objectif.
- Modifier la constante WEAPON_TIME_BEFORE_SHOOT dans Proj.h (temps de recharge de l'arme).
- Rajouter l'image du projectile et de l'explosion dans data\projs\
- Créer un bonus permettant d'avoir cette arme, c'est à dire rajouter l'image du bonus dans data\bonus\, et modifier les constantes de bonus.cpp.
- Rajouter dans data\players\ammobar\ l'image du signe indiquant au joueur qu'il a l'arme en question.
- Modifier le fichier bonus.txt d'une map, ou créer une nouvelle map, pour faire apparaître le bonus de la nouvelle arme dans une map.
- J'espère n'avoir rien oublié ...


III ) Réalisation du jeu :

Ce jeu a été fait avec Microsoft Visual Studio 6.0 et le SDK DirectX 9. Quelques fonctions ont été récupérées sur le net (par exemple la fonction Texte écrite pour Game Efrei) mais je pense avoir fait moi-même au moins 80 % du code.
Ont étés employés pour les graphismes :
Paint 5.1, Adobe PhotoShop 7.0, l'éditeur de dessin de The Games Factory, Corel PhotoPaint 5.0.
L'image de la texture de l'arène "Catacombes" est extrait de la bibliothèque de surfaces de Corel PhotoPaint. Le reste a été intégralement dessiné par moi (les lapins y compris).

IV ) Historique des versions et bugs :

Version 1.0 : finie le 30 juin 2004.

Version 1.1, finie le 14 juillet 2004. Améliorations :
- Le jeu ne plante plus quand un personnage tue un autre en se tuant lui-même.
- Moins de bug de collision, quelque soit la vitesse du jeu et de l'ordinateur.

Version 1.2, finie le 27 juillet 2004. Améliorations :
- L'explosion du lance-roquettes a été améliorée.
- Plus la peine de modifier list.txt, le programme s'en charge à chaque lancement.

Version 1.3, finie le 26 septembre 2004. Améliorations :
- Mode Invasion dans lequel les joueurs sont alliés contre des méchants !
- Option écrasement (désactivable dans les options) permettant d'écraser ses adversaires !
- Nombreux changements au niveau du code source.

Version 1.3.1, finie le 26 septembre 2004. Améliorations :
- Mode Invasion dans lequel les joueurs sont alliés contre des méchants !
- Option écrasement (désactivable dans les options) permettant d'écraser ses adversaires !
- Nombreux changements au niveau du code source.

Bugs actuels :
- C'est normal si vous entendez aucun son, il n'y en a pas. Peut-être dans une version ultérieure ...
- Encore quelques bugs de collision.
Aucun autre bug n'a été recensé. Si vous en trouvez, veuillez envoyer un message à l'adresse e-mail que vous trouverez sur le site web cité au début de ce fichier.
Si le jeu bloque et que Ctrl+Alt+Suppr ne marche pas, faire : Bouton demarrer, touche "O", puis Entrée.