Se connecter

Informatique

Création de Jeux

Sujet : J'aide les personne dans Game maker
mat19861987
Niveau 1
20 février 2015 à 01:17:22

Bonjour,
Je suis tout débutant en Game Maker, et je souhaiterais mettre un boss dans une salle et que ce boss ait des phases de gameplay différentes en fonction de l'évolution de sa barre de vie... J'ai donc essayé en D&D avec des "test health" et aussi en GML avec des fonctions "if".
Mon problème est double :
- je n'arrive pas à arrêter la phase précédente. Je souhaiterais 3 phases, j'ai donc codé la première avec un événement "if health>68" et la dernière avec "if health<33. Mais pour celle du milieu, je suis bloqué, si je la code "if health<68", elle continue jusqu'à la fin et si je la code "if health>33", elle commence dès le début!! N'y a t il pas un moyen de définir 2 bornes?

- lors de la dernière phase, je souhaite que le boss se rende à une position aléatoire et fasse pop 3 ennemis sauf qu'il en fait pop tellement qu'il sature le jeu. Comment faire que cette action s'arrête quand les ennemis ont pop?

J'espère que je suis assez clair... Le jeu que je créer est un pac-man like, où le joueur doit ramasser des pièces pour passer à la salle suivante. C'est mon premier projet fait à l'aide d'un tuto pour découvrir GM mais je lai déjà bien custom (mon perso tire, j'ai plusieurs sortes d'ennemis...)

Merci pour votre aide

mat19861987
Niveau 1
20 février 2015 à 11:36:28

Bonjour,
Je débute dans game maker et je me retrouve face à un problème en voulant créer un boss.
En effet, je souhaite que celui ci change ses actions en fonction de sa santé. J'ai donc utilisé des "if health" mais le problème c'est que je n'arrive pas à faire stopper l'action précédente. Est-il possible de définir 2 bornes à une action (du genre "if 100>health>66")?

Deuxième difficulté, arrivé dans une tranche de vie, je souhaite qu'il se déplace à une position random et qu'il créer 3 monstres. Ce qu'il fait mais en boucle et il sature donc le jeu... Comment arrêter une action sans pour autant quitter la boucle (en effet, ce ne serait pas l'action finale, il faut donc déclencher la dernière partie du boss)

Je précise que le jeu est un jeu en 2D où un personnage doit ramasser des pièces pour sortir de la salle. C'est mon premier contact avec GM créer avec un tutoriel, mais qui me sert un peu de "labo/test".
Merci

Pseudo supprimé
Niveau 8
07 mars 2015 à 16:45:29

Salut,

Voila j'ai un petit probleme dans game maker avec les alarm.
Je suis en train de faire un pong, je voudrais que lorsque la balle sort du terrain le jeu attende 2 secondes avant de la replacer au centre.

Voila le code que j'ai pour le moment :

Dans mon objet obj_ball j'ai un event outside room avec le code suivant :

instance_destroy();
alarm[0] = 60

Et toujours dans le meme objet j'ai un event alarm [0] avec le code suivant :

instance_create (250,250,obj_ball);

Le tuc c'est que quand la ball sort du terrain elle ne reaparait pas....

Pseudo supprimé
Niveau 8
07 mars 2015 à 16:48:20

Salut, j'ai un petit problem avec game maker et les alarms.
je suis en train de faire un pong et je vourais que lorsque la ball sort du terrain le jeu attende 2 secondes avant de la replacer au centre.

Mon code dans mon objet obj_ball dans un event outside room :

instance_destroy();
alarm[0] = 60

Et toujours dans le meme objet mon code dans l'event alarm[0] :

instance_create (250,250,obj_ball);

mais le jeu ne cree pas la balle quand elle resort du terrain....des suggestions?

Pseudo supprimé
Niveau 10
01 avril 2015 à 16:30:19

bonjour,
https://www.youtube.com/watch?v=AstKLoU5BoU
comment on fait pour selectionner et controler les persos comme ca?
merci

_-PowerUp-_
Niveau 10
01 avril 2015 à 19:11:42

Salut :)

Je suis en trains de faire un tower defense, pour cela je veux que lorsque je clique sur l'objet obj_emplacement un rectangle(menu pour acheter la tour) s'affiche a côté, mais a côté de instance de l'obj_emplacement sur le quel j'ai cliqué, hors là, il s'affiche a côté de la même instance ou sur toutes les instances de l'obj_emplacement

:merci: d'avance

Loustak
Niveau 7
03 mai 2015 à 19:07:20

Salut,
Je voudrais supprimer toutes les instances en collision avec mon objet "destructeur" à condition que ces instances et pour variable "typeOfObject" à 1.
J'ai actuellement fait ça mais ça ne fonctionne pas aucun objet en collision n'est supprimer :

            var inst = instance_place(x, y, all)
            if (inst != noone && inst.typeOfObject == 2)
            {
                with (inst)
                {
                     instance_destroy();
                }
                     show_message("");
            }

Merci de votre aide :)

Loustak
Niveau 7
03 mai 2015 à 20:38:30

Salut,
Je voudrais supprimer toutes les instances en collision avec mon objet "destructeur" à condition que ces instances et pour variable "typeOfObject" à 1.
J'ai actuellement fait ça mais ça ne fonctionne pas aucun objet en collision n'est supprimer :

            var inst = instance_place(x, y, all)
            if (inst != noone && inst.typeOfObject == 2)
            {
                with (inst)
                {
                     instance_destroy();
                }
                     show_message("");
            }

Merci de votre aide :)

Loustak
Niveau 7
03 mai 2015 à 20:38:44

Salut,
Je voudrais supprimer toutes les instances en collision avec mon objet "destructeur" à condition que ces instances et pour variable "typeOfObject" à 1.
J'ai actuellement fait ça mais ça ne fonctionne pas aucun objet en collision n'est supprimer :

            var inst = instance_place(x, y, all)
            if (inst != noone && inst.typeOfObject == 2)
            {
                with (inst)
                {
                     instance_destroy();
                }
                     show_message("");
            }

Merci de votre aide :)

Lapintade
Niveau 25
11 mai 2015 à 10:47:04

Hello à tous,

J'ai une option "réparer" pour les sujets qui pose problème (comme celui ci). N'hesitez pas à me tenir au courant si il y a un sujet qui a besoin d'un petit coup de clé à molette.

BeerDuff
Niveau 47
14 mai 2015 à 18:50:54

Bonsoir,

J'aimerais savoir comment supprimer un truc de la library car quand je veut ajouter le truc que j'ai dl sa me met sa http://puu.sh/hN8fv/5f7bc4f6ac.png

Merci :hap:

Soul-Caribou
Niveau 10
04 juin 2015 à 14:19:12

Salut à vous!

Je continue mon apprentissage sur GM, et je commence à pouvoir réaliser ce que je souhaite faire, c'est génial et très intéressant :)

J'ai un projet que je développe depuis quelques mois maintenant, et celui ci contiendra à terme beaucoup de textes et dialogues. J'ai farfouillé sur le net sans trouver de vraies réponses précises donc me voici!

Y a t'il plusieurs moyens de faire des traductions? Je compte au moins faire une version FR et EN pour pouvoir partager au plus grand nombre mon projet, et la question se pose donc de la manière d'apréhender cela. Je vois bien en solution de faire un tableau de variable avec la langue et les textes, mais je me demande s'il n'y aurait pas plus simple? (un fichier externe peut être...? :ange: )

chopsueys
Niveau 16
05 juin 2015 à 10:47:53

Salut je pense que un tableau c'est ce qu'il y'a de plus pratique.
Si ton jeu va contenir beaucoup de texte Il te suffit d'avoir une bonne organisation et de bien tout classer dans des scripts.
Voila comment je procèderais:
Tu crée un script par personnage ou par duo de personnage pour les dialogues exemple : scr_txt_perso_et_vielle_homme
Ce script contiendra tous les dialogues entre le perso et ce vielle homme.
Tu sépares tes textes par bloque de dialogues avec différents tableaux.
Tu te sers de // pour placer des annotations avant chaque nouveaux tableaux pour décrire la situation histoire que tu t'y retrouve facilement. exemple:

//le perso rencontre le vielle homme pour la 1er fois derrière l'église en ruine.
//français
global.txt_1(1,1)="blablabla!"
global.txt_1(2,1)="blabla"
global.txt_1(3,1)="blabla"
global.txt_1(4,1)="blablablabla"
//anglais
global.txt_1(1,2)="blablabla!"
global.txt_1(2,2)="blabla"
global.txt_1(3,2)="blabla"
global.txt_1(4,2)="blablablabla"

//le perso retourne voir le vielle homme pour lui rendre la clé.
//français
global.txt_2(1,1)="blablabla!"
global.txt_2(2,1)="blabla"
global.txt_2(3,1)="blabla"
global.txt_2(4,1)="blablablabla"
//anglais
global.txt_2(1,2)="blablabla!"
global.txt_2(2,2)="blabla"
global.txt_2(3,2)="blabla"
global.txt_2(4,2)="blablablabla"

Etc....
Il te suffit ensuite dans ton code d'invoquer le scripte correspondant au bon groupe de dialogue afin d'initialiser les bonnes variables.
Utilises une variable pour choisir la langue: langue=1 pour le français, langue=2 pour l'anglais

Soul-Caribou
Niveau 10
05 juin 2015 à 11:17:28

Merci chopsueys-sama :ok:

C'est un peu ce que j'avais prévu de faire, avec une organisation bien plus bordélique vu que je n'avais pas pensé aux scripts pour regrouper tout ça (pas encore le réflexe je viens tout juste de créer MON premier script vraiment fonctionnel :) ).

Tes conseils passés sur les tableaux de variables ont en tout cas porté leurs fruits car c'est quasiment ce que j'avais commencé à faire mis à part la langue dans la première colonne (détail qui tue) et surtout des "answ_1_1" "answ_1_2", en reprenant un peu ta nomenclature, pour désigner les choix de réponses multiples (qui deviendront des answ_1_1(1,1), etc... du coup).

J'avais vu ça sinon sur le Market YoYo Games mais je ne sais pas ce que ça vaut (ça à principalement l'air de tourner autour de traduction auto) : https://marketplace.yoyogames.com/assets/317/multilanguage-and-translate.
L'autre solution serait de traduire après coup le projet et de faire des versions téléchargeables séparées.

Mis à part ça, sans vouloir te passer du cirage gratuitement car c'est juste sincère, laisse moi dériver encore un chouilla pour en profiter pour te remercier pour toute l'aide et les précieuses leçons données ici : j'ai parcouru une bonne partie du topic par curiosité et pour voir quelques problèmes rencontrés (et résolus), et ta présence ici est juste une aubaine pour tous les rookies s'intéressant à la création de jeux et à GM, depuis plusieurs années.

chopsueys
Niveau 16
05 juin 2015 à 12:36:30

J'ai un page not found pour ton lien.

"L'autre solution serait de traduire après coup le projet et de faire des versions téléchargeables séparées."
Oui c'est une solution mais je ne pense pas que ce soit une bonne chose.

Merci ça me fais plaisir ce que tu me dis. J'aime bien aider les personnes comme toi qui savent se sortir les doigts des fesses, qui essayent de comprendre au lieu de juste recopier et qui savent dire merci ;)

Soul-Caribou
Niveau 10
05 juin 2015 à 15:26:24

Oups un point s'était glissé dans le lien : https://marketplace.yoyogames.com/assets/317/multilanguage-and-translate

J'ai pas encore regardé leur démo, je testerai à l'occasion ;)

Pseudo supprimé
Niveau 9
08 juin 2015 à 14:51:09

Salut!

Je voulais savoir si c'était possible de réaliser ce genre de jeu avec GameMaker :
http://www.jeuxmaths.fr/jeu-de-math-invasion-operations.html

Et quelles fonctions il faut utiliser pour associer le résultat des opérations avec le numéro des vaisseaux?

Ça serait vraiment sympa si je pouvais avoir la réponse rapidement, je regarde les différents logiciels de création de jeu 2D et je dois en choisir un pour ce soir pour commencer le travail. :p)

Soul-Caribou
Niveau 10
08 juin 2015 à 16:50:21

Tu peux parfaitement faire ça avec Game Maker.

J'avais commencé à expliquer un peu en détail comment j'aurai procédé, mais c'est assez complexe et long donc ne sachant pas trop ton niveau, je ne sais pas si ce serait spécialement pertinent ou utile pour toi. Dans les grandes lignes (et avec des noms à titre indicatif) :

:d) un obj_ennemi qui définit à sa création une variable "resultat"
:d) un obj_calcul qui affiche le calcul à résoudre, qui lui même est choisit parmi les résultats des ennemis en première ligne.
:d) un obj_player qui envoie des obj_bullet
:d) ces obj_bullet verifient en rentrant en contact avec un ennemi que leur résultat est égal au calcul à résoudre

En terme de fonctions ça dépend de comment tu veux le faire mais il peut y en avoir très peu, à base de irandom_range() pour les résultats, peut être un switch qui vérifie le résultat à trouver et répertorie les calculs à résoudre qui en découlent en les affichants de plusieurs manières.

Je pense qu'il vaut mieux que tu te lances, n'hésite pas si tu bloques on pourra alors plus rentrer dans le détail, mais il y a déjà pas mal à faire juste pour la base si tu commences ;)

juju53908
Niveau 1
08 juin 2015 à 18:59:59

Salut tout le monde donc voilà je commence sur game maker, en ce moment je développe un petit jeu dans lequel lorsqu'on clique sur un élément celui-ci rapporte des points (comme dans le jeu tuto) sauf qu'un fois que le joueur à cliqué dessus il se déplace à une position précise et j'aimerais qu'une fois téléporté à cette position il ne rapporte plus de point comment faire (l'objet aparait plusieur fois et le joueur doit cliquer sur tout ces objets donc décocher "relative" ne e suffit pas) merci d'avance! :-)

Soul-Caribou
Niveau 10
08 juin 2015 à 22:20:32

Il faut que tu utilises une variable qui fera office d'interrupteur, initialement à 0, cette variable permettra en cliquant de rapporter des points, et une fois que tu auras cliqué sur l'objet, la variable passera à 1 ce qui fait dans ce cas qu'aucun point n'est donné si tu cliques à nouveau.

Pour tout ça l'idéal serait d'utiliser le GML et les "Execute code" plutôt que le Drag&Drop, mais tu peux malgré tout le faire :

:d) Icone "Set Variable" à ajouter dans le Create Code de ton objet à cliquer, tu nommes la variable par exemple "clic" et tu lui donnes comme valeur 0.
- (en GML il t'aurait suffit de déclarer dans Create avec un Execute Code : clic = 0;)
:d) Ensuite, dans la partie de code concernant le clic sur l'objet, il faut que tu rajoutes une question, l'icone à côté de Set Variable : Test Variable.
:d) si ta variable clic est égale à 0 (stade initiale à la création de l'objet), en cliquant sur l'objet il sera envoyé autre part (ce que tu as déjà fait), le score sera ajouté (ce que tu as déjà fait aussi), ET la variable clic de l'instance passera à 1.
- (en GML : if clic == 0 {codepourteleporter;codepourajoutdescore; clic = 1;})
:d) si la variable clic est égale à 1 (une fois que tu auras cliqué dessus), l'objet se téléportera, mais rien d'autre.
- (en GML : if clic == 1 {codepourteleporter;})

Bref en Drag&Drop ça devrait ressembler à ça avec tes blocs de codes que tu as pour les clics + score à la place des petites lignes de texte :

https://www.noelshack.com/2015-24-1433794455-gm01.png

Et surtout rappelle toi que pour utiliser une variable, celle ci doit être déclarée au préalable dans le Create Event.

Sujet : J'aide les personne dans Game maker
   Retour haut de page
Consulter la version web de cette page