Ce support s’adresse aux personnes intéressées par la programmation web, débutantes comme plus expérimentées, désireuses de connaître les techniques à mettre en oeuvre pour développer des jeux d’arcade fonctionnant sur un navigateur web avec le langage JavaScript.
Résolument tourné vers un apprentissage par la pratique, le support propose la réalisation complète de quatre projets de jeux, aux thèmes variés, tant dans leur domaine et leur jouabilité que dans la complexité de leur mise en...
Ce support s’adresse aux personnes intéressées par la programmation web, débutantes comme plus expérimentées, désireuses de connaître les techniques à mettre en oeuvre pour développer des jeux d’arcade fonctionnant sur un navigateur web avec le langage JavaScript.
Résolument tourné vers un apprentissage par la pratique, le support propose la réalisation complète de quatre projets de jeux, aux thèmes variés, tant dans leur domaine et leur jouabilité que dans la complexité de leur mise en oeuvre. À travers une démarche réaliste et très pragmatique, l’auteur décrit pas à pas la conception de ces jeux, en partant de l’élaboration du concept du jeu et de ses règles jusqu’à la réalisation finale, en passant par la création des graphismes, la recherche des bruitages et l’écriture du code JavaScript.
Le premier de ces projets est un jeu de tir dans lequel une petite mouche, prisonnière d’une toile d’araignée, doit se battre pour sa survie. Dans le deuxième projet, le joueur doit libérer les cases d’une grille dans laquelle se trouvent des pierres précieuses qu’il doit collecter par blocs. Le troisième projet est un jeu de lettres que le joueur doit poser sur un plateau pour former des mots appartenant au dictionnaire des noms communs de la langue française, en les croisant avec ceux déjà présents sur le plateau. Ce jeu a la particularité d’offrir la possibilité de jouer à plusieurs, à tour de rôle et de manière déconnectée, c’est-à-dire sans interactions en temps réel, sur un ou plusieurs ordinateurs, à distance. Enfin, le quatrième projet de ce support s’inspire librement d’un jeu d’arcade datant de la fin des années 1970, universellement connu, consistant à détruire avec un canon mobile des vaisseaux extraterrestres descendant du ciel.
Grâce à ces exemples, le lecteur sera ensuite à même d’organiser ses projets de programmation personnels et de préparer ce qu’il lui faut mettre en place pour réaliser ses propres jeux à destination du web, et ce quelle que soit leur complexité.
Tous les projets du support sont disponibles dans leur version finale et fonctionnelle en téléchargement sur le site www.editions-eni.fr.
Introduction
1. Ce que propose le livre
1.1 Petite histoire du jeu vidéo
1.2 Les grandes catégories de jeu vidéo
1.3 Théories techniques du jeu vidéo pour le Web
2. Prérequis pour réaliser les projets de ce livre
2.1 Connaissances préalables
2.2 Logiciels requis
3. Déroulement général des chapitres
3.1 Description du comportement attendu du jeu
3.2 Concevoir les interfaces graphiques générales
3.2.1 Les polices de caractères
3.3 Préparer les éléments graphiques des jeux
3.4 Préparer les éléments sonores des jeux
3.4.1 Un logiciel à la rescousse
3.4.2 Obtenir des sons et des bruitages
3.4.3 Obtenir de la musique
3.5 Développer le jeu
3.5.1 Organisation et structure des fichiers
3.5.2 Adoption des bonnes pratiques
Pris au piège
1. Description
1.1 Les règles du jeu
1.2 Les choix retenus
1.2.1 L'interface du jeu
1.2.2 Les commandes du jeu
1.2.3 Marquer des points
1.2.4 Mettre en œuvre des bonus malus
1.2.5 Gérer les niveaux de jeu
1.3 Le but du jeu
2. Le visuel général
2.1 L'écran d'accueil et le menu
2.1.1 Le logo
2.1.2 Les polices de caractères
2.2 Le choix des options
2.3 La progression dans le jeu
2.4 La fin du jeu
3. Le matériel du jeu
3.1 Les éléments graphiques
3.1.1 Le fond d'écran
3.1.2 La mouche
3.1.3 La toile d'araignée
3.1.4 Les ennemis
3.1.5 Les effets spéciaux
3.1.6 Les objets
3.2 Les sons et les bruitages
4. L’exécution
4.1 Installation de la structure de la page
4.2 Premières interactions
4.3 La gestion des ennemis
4.4 La gestion des impacts
4.5 La gestion du score
4.6 L'enchaînement des vagues d'ennemis
4.7 La gestion des vies
4.8 L'affichage des informations
4.9 La gestion des bonus et des malus
4.9.1 L'ajout de renforts
4.9.2 L'ajout d'une nouvelle vie
4.9.3 Le tir en éventail
4.9.4 Le tir enrayé
4.9.5 Le tir déréglé
4.9.6 Le tir à fragmentation
4.9.7 Le tir perforant
4.10 La gestion de la fin de partie
4.11 Proposer un menu d'accueil pour démarrer une partie
4.12 Compléter l'habillage de l'écran de jeu
4.13 Prendre en compte différents niveaux de difficulté
4.14 Parfaire l'affichage des informations
4.15 Ajouter une ambiance sonore
4.16 Modifier l'écran d'accueil
5. Pour aller plus loin
Le maître des mots
1. Description
1.1 Comment manier les mots ?
1.2 Ce que nous retenons pour le jeu
1.2.1 L'aspect visuel du jeu
1.2.2 Les commandes du jeu
1.2.3 La fin de partie
2. Le visuel du jeu
2.1 Le logo
2.2 Les polices de caractères
2.3 Le plateau de jeu
2.4 Les commandes de jeu
3. Les éléments du jeu
3.1 Les éléments graphiques
3.1.1 Le plateau de jeu
3.1.2 Les commandes de jeu
3.1.3 Bouton de validation
3.1.4 Bouton d'annulation du coup
3.1.5 Bouton de mélange
3.1.6 Bouton pour échanger les tuiles
3.1.7 Bouton pour passer son tour
3.1.8 Bouton pour abandonner la partie
3.1.9 Bouton pour mettre la partie en pause
3.2 Les éléments sonores et les bruitages
3.3 Autres éléments nécessaires au bon déroulement d'une partie
4. Le développement
4.1 Le plateau de jeu
4.2 Les tuiles de jeu
4.3 Interaction : placer les tuiles sur le plateau
4.4 Valider ou annuler une proposition
4.4.1 Petite réflexion
4.4.2 Vérifier l'alignement relatif des tuiles
4.4.3 Contrôler la longueur du premier mot de la partie
4.4.4 S'assurer du bon placement du premier mot de la partie
4.4.5 Empêcher le chevauchement des tuiles
4.4.6 Valider une proposition
4.4.7 Contrôler le placement après le premier coup
4.4.8 Contrôler la validité des mots proposés au sens littéraire
4.4.9 Calculer les points marqués par un coup joué
4.4.10 Validation finale
4.4.11 Annuler un coup
4.5 Implémenter les commandes restantes
4.5.1 Un peu de réorganisation
4.5.2 Mélanger les tuiles sur le chevalet
4.5.3 Demander à échanger les tuiles du chevalet contre de nouvelles tuiles
4.6 Lancer une partie
4.6.1 Afficher un écran d'accueil
4.6.2 Créer une nouvelle partie
4.6.3 Enregistrer une partie dans le navigateur
4.6.4 Charger une partie en vue de la continuer
4.6.5 Supprimer une partie enregistrée dans le navigateur
4.7 Finaliser le jeu
4.7.1 Gestion des tuiles joker
4.7.2 Révision du processus de changement de tuiles
4.7.3 Gestion de l'alternance des tours et de la fin de partie
4.7.4 Mettre une partie en suspens
4.7.5 Abandonner une partie
4.7.6 Afficher les scores de manière permanente
4.7.7 Ajouter des effets sonores
5. Pour aller plus loin
Pluie de pierres précieuses
1. Description
1.1 Le comportement attendu
1.2 Les solutions retenues
1.3 Déterminer comment gagner
2. Le rendu à l'écran
2.1 La page d'accueil
2.2 Les options
2.3 Les changements de niveau
2.4 La fin de partie
3. Les médias du jeu
3.1 Les polices de caractères
3.2 Les pierres précieuses
3.3 Les tuiles spéciales
3.3.1 Les fusées
3.3.2 Les bombes
3.3.3 L'arc-en-ciel
3.3.4 Le sablier
3.4 Les images diverses
3.5 Les options
3.6 Les musiques
3.7 Les bruitages
4. La mise en œuvre
4.1 L'aire de jeu
4.2 Les tuiles
4.3 La notion de blocs
4.4 Interagir avec les pierres
4.5 Les tuiles spéciales
4.5.1 Le sablier
4.5.2 La bombe
4.5.3 L'arc-en-ciel
4.5.4 La fusée
4.6 Libérer les cases
4.7 Les contrats et les points
4.8 Gestion du temps et fin de niveau
4.9 Accorder un bonus aux contrats réussis
4.10 Mise en musique
5. Continuer à faire évoluer le jeu
Combats dans la galaxie
1. Le jeu
1.1 Les règles du jeu
1.2 Les choix retenus
1.3 Le but du jeu
2. Décrire une partie
2.1 L'écran d'accueil
2.2 Aménagement de la page web
2.3 Les enchaînements
2.4 La fin de partie
3. Le matériel
3.1 Les polices de caractères
3.2 Les éléments graphiques
3.3 Les bruitages
4. Implémenter le comportement
4.1 Planter le décor
4.2 Afficher le canon
4.3 Afficher les boucliers
4.4 Afficher les ennemis
4.5 Premières interactions
4.6 Animer les vaisseaux ennemis
4.7 Tirer des projectiles avec le canon
4.8 Détecter les impacts
4.9 Des soucoupes volantes apparaissent
4.10 Gérer les tirs ennemis
4.11 Prendre en compte les impacts ennemis
4.12 Gestion des vies et de la fin de partie
4.13 Gérer le score du joueur
4.14 Intégrer un écran d'accueil
4.15 Ajouter une ambiance sonore
5. Pour aller plus loin
Index
Frédéric DELOBEL
Frédéric Delobel est développeur depuis plus de trente ans. Au cours de son parcours professionnel, il a travaillé avec de nombreuses entreprises de secteurs d'activités très variés, allant des communications aux industries pharmaceutiques et chimiques en passant par les banques et les assurances. Ses compétences de concepteur, d'architecte et de programmeur l'ont progressivement amené à dispenser, à de petits groupes de développeurs au sein de ces entreprises, des formations sur certaines techniques et langages de développement, dont PHP, CSS, JavaScript et jQuery. Dans ces livres, il fait profiter le lecteur de toute la pédagogie mise en œuvre au cours de ses formations pour lui apprendre la programmation web avec JavaScript et jQuery.