| Problème de IA pour un jeu platforme | |
|
|
Auteur | Message |
---|
fredy385 Débutant
Messages : 14
| Sujet: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 20:14 | |
| :p_hello: Depuis peu que j'ai commencé un projet de jeu platforme et j'ai déjà un problème. Il y a un robot qui devrait tirer seulement lorsque que je suis proche. Hors, je m'approche à un pixel de lui et il ne tire même pas! Comment résoudre ce problème? Je vous fournit le GMK ce qui vous permettera de comprendre le mécanisme du jeu. http://www.mediafire.com/download.php?zzwnvzoo3eg |
|
| |
Linky439 Utilisateur confirmé: Rang *****
Messages : 2643 Localisation : Sur le forum du CBNA...ou pas Projet Actuel : La Galaxie Scellée
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 20:21 | |
| C'est le robot_gunner qui ne tire pas ? Sinon, attention aux collisions et on est un peu trop rapproché du perso |
|
| |
fredy385 Débutant
Messages : 14
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 20:35 | |
| Oui c'est le robot_gunner qui ne tire pas et qui est sensé de tirer. EDIT: Pour les bugs, j'arrangerai cela plus tard mais là on parle de quelque chose de majeure. |
|
| |
Linky439 Utilisateur confirmé: Rang *****
Messages : 2643 Localisation : Sur le forum du CBNA...ou pas Projet Actuel : La Galaxie Scellée
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 20:41 | |
| Je m'y retrouve plus avec le D&D, désolé Je pense que ça vient de ton expression, mais j'en sais rien |
|
| |
fredy385 Débutant
Messages : 14
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 20:54 | |
| Au pire, ça doit être fesable en GML, non? |
|
| |
Bast Administrateur
Messages : 20024 Localisation : Alsace
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 21:19 | |
| La fonction point_distance(x1,y1,x2,y2) pourrait t'aider, mais c'est du GML. Elle permet de connaitre la distance entre un point de coordonnées x1,y1 et un second point de coordonnées x2,y2.
Je vais voir s'il y a quelque chose à faire avec ton gmk. |
|
| |
fredy385 Débutant
Messages : 14
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 21:23 | |
| J'AI RÉUSSI À RÉSOUDRE MOn PROBLÈME! Le problème est qu'il ne pouvait pas tirer plus d'une balle parce que j'ai oublié de mettre l'alarme. L'alarme sert à remettre la variable qui permet de tirer à true. C'est pour cela qu'il ne tirait pas. Mais Bast, si tu fais un meilleur AI, je serai heureux de l'utiliser. EDIT: A part ce problème, touvez-vous mes graphiques beaux? EDIT: Comment fonctionne la distance?
Dernière édition par fredy385 le Lun 29 Juin 2009 - 22:01, édité 1 fois |
|
| |
Bast Administrateur
Messages : 20024 Localisation : Alsace
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 21:31 | |
| Le style graphique est pas mal du tout. Mais le fait de changer la résolution de l'écran pour une résolution de room aussi petite est assez gênant, en particulier avec un grand écran comme celui que j'utilise, dont la résolution native est de 1680x1050. Autant le laisser en fenêtré et laisser le choix du plein écran, ou bien agrandir la fenêtre. |
|
| |
fredy385 Débutant
Messages : 14
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 22:11 | |
| Suite à un autre bug, j'ai laché mon ancien AI et je veux utiliser le point_distance(x1,y1,x2,y2). Comment l'utiliser? Merci d'avance! |
|
| |
Bast Administrateur
Messages : 20024 Localisation : Alsace
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 22:19 | |
| Voici globalement la structure de la fonction: - Code:
-
if point_distance(obj_hero.x,obj_hero.y,obj_enemy.x,obj_enemy.y)<300 { action; action; } 300 étant ici la distance en pixels séparant les deux objets. Dans ce cas, si la distance est inférieure à 300 pixels, les actions situées entre les accolades sont exécutées. |
|
| |
fredy385 Débutant
Messages : 14
| Sujet: Re: Problème de IA pour un jeu platforme Lun 29 Juin 2009 - 22:47 | |
| Ah ok... J'ai compris. Merci!
EDIT: J'ai réussi à le faire sans GML. Il ne suffit que de mettre point_distance(...)<300 dans la fonction D&D If a expression is true. Mais au moins, je sais comment utiliser cette fonction :fier: . |
|
| |
Contenu sponsorisé
| Sujet: Re: Problème de IA pour un jeu platforme | |
| |
|
| |
| Problème de IA pour un jeu platforme | |
|