Ressources Magic Makers

 

Site en maintenance

 
Nous sommes actuellement entrain de mettre à jour les ressources de ce site.
Pendant la mise à jour vous pouvez retrouver tous les nouveaux contenus sur le site
 

https://lp-magicmakers.fr/

 
 

Donjon Les Bases (Mini Arène)

Un jeu d’exploration de Donjon en 2D est un jeu en vue du dessus où le joueur incarne un aventurier et doit explorer un donjon, trouver des trésors et tuer des ennemis sur son passage ! Comme les “Zelda”, un grand classique du jeu vidéo ! 

Ces dernières années, les jeux ont largement évolué. Mais on peut toujours retrouver les fondements de la formule, basé sur l’exploration et l’affrontement de Monstres. Comme “The Binding of Isaac”

Sur Construct on peut Jouer au Démonoire, il s’agit d’un “Beat’em all” à savoir : On doit tuer tous les Monstres d’une salle pour avoir le droit de passer à la suivante, jusqu’à arriver au Boss final.

Introduction

  1. On va réaliser un jeu vu de dessus en 2D dans un donjon. Dans un premier temps créer les fonctionnalités principales du jeu.
  2. Puis dans un deuxième temps, on va créer le Design du Level, et agencer les différents éléments.

>  Jouer au Mini Donjon  <

Création du Héro

On crée un nouveau Projet Construct, en pensant bien à cocher la case “Optimiser pour le Pixel Art”, puis télécharger les Assets ci-dessus.

Créer un sprite. Tu peux dessiner un Personnage très simple, tu pourras prendre le temps d’en dessiner un autre sur Construct, Krita ou Piskel plus tard, pas de panique !

Pense bien à orienter le regard du héros vers la droite.

Renomme le “Héros” et ajoutes lui les comportements “8 direction” et “Défiler vers”.

L’Arme du Héro

Créer l’Arme

Création d’un autre sprite qui servira d’Arme épée/ hache/ bâton.

Puis dupliques l’arme et fais la pivoter vers la droite

Clique sur :

Et modifie le point d’image, pour le positionner sur le manche des 2 épées. Cela permettra que l’arme soit saisie par le manche et non par la lame….Aie !

Ajout comportement “épingle” sur l’épée:

Place l’arme sur la scène, mais en dehors de la page blanche, comme au-dessus par exemple.

Ajout d’un point image supplémentaire sur le joueur,

A gauche de l’écran, Faire un Clic droit en dessous de Origine “Ajouter un point d’image”. On fera apparaître l’arme au niveau de ce nouveau “Point d’image”.

Activer l’Arme

Pour utiliser l’arme du joueur, il faut définir sur quoi le joueur va appuyer quand il veut attaquer. Ça peut être au clic de la souris ou en utilisant une touche du clavier. Dans un cas ou dans l’autre ajouter au projet l’objet qui vous intéresse.

Dans cette exemple, c’est la touche Espace du clavier qui activera l’Arme du Héros : 

Dans l’ordre : 

  1. Lorsque la touche espace est pressé Alors : 
    • Héros fait apparaître l’Epee.(au point image 1)
    • l’Epée est Epinglé au Heros
    • l’Epée affiche les deux images de l’épée (pour créer du mouvement)

2. Lorsque l’Epée à afficher ses deux images elle n’est plus active.

Point de Vie du Héro

Variable Globale pour le PV

On va faire ça avec des variables  (pas avec des variables d’Instance mais avec une Variable Globale). Pour permettre au Héro de conserver la valeur de ses PV d’une scène à une autre. Une scène = une salle du donjon.  

Créer une variable Globale, lui donner un nom, et une valeur initiale.

exemple : 3 (ça donnera 3 PV au Héros).

 

Afficher les PV à l’écran de manière Basique

On va faire au plus rapide et simple pour commencer : 

    1. Créer un Texte, positionnes-le en haut à gauche de la feuille blanche de la scène.
    2. Ajoute lui le comportement Ancre.
    3. Puis dans le code :

Faire perdre un PV au Héro

Créer un Piège ou un Ennemi, places le sur le chemin du Héros puis :

Puis lors de la collision du Héros avec le Piège > Retirer 1 à la variable Globale

Mort du Héro 

Il faut redémarrer la scène si les PV du Héros tombent à 0. Penses également à réinitialiser la valeur initiale.

exemple :  3. Pour redonner de la vie au Héro.

Les Ennemis

PV de l’Ennemi

D’abord créer un Sprite pour l’Ennemi. 

Puis, on va donner vie à notre ennemi en lui donnant des points de vie. Et cette fois avec une simple variable d’instance attachée à cet ennemi.

On va lui faire perdre des PV lorsqu’il rentre en contact avec l’Arme du Héro.

Plutôt que de détruire l’Ennemi on peut aussi laisser son cadavre sur place et ce même en changeant de scène. 

Ajoute le comportement Persister à l’ennemi.

Puis dupliqué l’animation, renomme la deuxième en Mort

Dans le code Supprimer ou Désactive (clic droit > Basculer) la destruction de l’ennemi.

Puis rajoute le lancement de l’animation de Mort, lorsque l’ennemi n’a plus de PV.

Attaques Ennemis (Distance ou Mêlée)

Ennemi qui tire sur le Héro

En suivant ce lien tu peux trouver une vidéo pour créer une tourelle ennemi.

https://ressources.magicmakers.fr/ressources-decouvre-construct-general/ 

Mais en voici le résumé :

    1. Créer un Sprite pour l’objet à lancer par l’ennemi.
    2. Ajouter à cet Objet le comportement Projectile.
    3. Ajouter le comportement Tourelle à l’ennemi.
    4. Puis dans le code :

Ne pas hésiter à modifier la cadence de tir de la tourelle ennemi (pour que l’ennemi utilise son arme plus ou moins souvent).

Il faut bien penser à soustraire 1 PV au Héro lorsqu’il rentre en collision avec l’objet lancé par l’ennemi. On peut également en profiter pour détruire l’Objet à l’impact.

Ennemi qui se dirige vers le Héro

Ajouter le Comportement Ligne de Mire et Déplacer Vers,

Puis : 

Tu peux faire quelques réglages des comportements de l’ennemi : regarde la portée dans la Ligne de mire & Déplacer Vers. 

Il faut bien penser à soustraire un PV au Héros lorsqu’il rentre en collision avec cet Ennemi.  

Et à désactiver les collisions de l’ennemi, après sa mort, pour ne pas blesser le Joueur si il touche son corps inerte.

Les Trésors

Animation d’ouverture

Dessiner le Coffre Fermé et Ouvert, dans deux animations différentes.

Apparition du coffre

Tu peux faire apparaître le coffre, dans cet exemple c’est à la mort de l’ennemi.

Tu peux également effectuer un petit décalage en changeant le point d’image du coffre.

Et voilà le resultat  

Le contenu du Coffre : Une potion

On commence par créer créer en premier l’objet du Loot

Apparition Stylé de la Potion !

Puis on créer une Particule

Paramètres de la Particule :

On met le taux à 1, on met en one shot (essentiel car ainsi elle se détruira après avoir fini son animation), on lui indique qu’elle reprend l’apparence d’un autre objet du projet.

Pour rendre ça juicy : le coffre joue une animation d’ouverture, puis faire apparaître une particule qui utilise l’apparence de la potion. 

  1. Lorsqu’on frappe le coffre, l’animation d’ouverture se lance. 
  2. Puis à la fin de l’animation, la Particule apparaît. 
  3. Et lorsque la Particule disparaît après une seconde elle fait apparaître la Potion.

Quand la particule se détruit, on utilise le système pour faire apparaître le loot à + X de là où était la particule.

Pourquoi utiliser le système ?

Les particules ne peuvent pas faire spawn d’objet. Donc on compense.

Note : par défaut dans Construct les objets regardent vers la droite. C’est aussi le cas des particules. 

Importer les Assets

Voici des liens de téléchargement de plusieurs Assets avec une prévisualisation de leur contenu. A vous de choisir votre préféré. Une fois le fichier téléchargé sur votre ordinateur.

Effectuer un clic droit sur le dossier compressé et sélectionner “Extract Here

Pour garder une cohérence graphique, je vous invite à ne pas mélanger les assets, mais d’utiliser les personnages, objets et décors d’un seul package.

kenney_tinydungeon.zip pack de tuilage utilisé dans les projets de tests/démos.

dungeon_crawler.zip un package avec : 

    • il y a plusieurs dossiers pour les Personnages et Objets
    • “full tilemap” pour dessiner les décors, on verra ça plus tard ensemble 

Dungeon_Tile.zip un autre package, il y a peu de décor mais une grande diversité de Personnages / Ennemies

Shikashi.zip pack pour avoir des Armes & Objets

Tilemap

C’est quoi une tilemap ?

Une tilemap (littéralement une « carte de tuile ») est une grille que l’on utilise pour “peindre” le décor d’un jeu. Elle permet de facilement poser des éléments et des murs, en utilisant des tuiles réutilisables. Ces dernières sont aussi moins lourdes que les sprites et on peut donc faire des niveaux bien plus grands vu qu’on met techniquement moins d’éléments dedans!

Enigmes

En premier lieu on va créer les objets qui serviront pour l’énigme. Dans cet exemple, on va créer 3 leviers (3 sprites différents) et il faudra les activés dans un sens précis pour réussir l’Énigme.

On va créer une variable Global, qui permettra de savoir où  en est l’avancé dans l’énigme.

Toucher les Leviers : 

On va définir le chiffre de l’énigme en fonction de l’ordre dans lequel on souhaite qu’il soit touché.  

La variable augmente quand on progresse dans l’énigme. 

Pour éviter de pouvoir toucher les leviers dans un mauvais ordre, on va rajouter des sous condition. 

On s’assure qu’on a atteint la bonne étape pour valider la suite.

On va maintenant envoyer un feedBack (information) au joueur pour lui signifier qu’il a bien touché le bon levier.

Fin de l’énigme :  

On fait apparaître la récompense.

Ici je mets la variable à 4 afin qu’on ne génère qu’un loot sinon on a une boucle infinie.

Si le joueur se trompe : 

On s’occupe de tous les cas où on se trompe d’ordre dans lequel on active les leviers.

On utilise notre variable d’énigme et dans ce cas on compare si la condition de départ n’est pas respectée

exemple : pour toucher le levier vert on doit avoir valider le bleu et donc être à 1).

Mais on vérifie aussi que la condition de réussite de cette étape n’est pas validée (ici quand on avait bien touché le bleu et qu’on touche le vert on passe à 2, il faut donc aussi s’assurer qu’on est pas sur 2 sinon on pourrait invalider toute l’énigme).

Réinitialiser les Leviers :