Forum Le CBNA

Le Forum du CBNA a pour but de vous aider dans l'utilisation de GameMaker. Premier forum Francophone sous GameMaker, vous trouverez des .gmd, .gm6, .gmk, scripts, logiciels et d'autres ressources sur Le CBNA.
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  ConnexionConnexion  
Poster un nouveau sujet   Répondre au sujet
 

IA Simple de déplacement

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: IA Simple de déplacement   Dim 20 Juil - 18:10

Bonjour,
voila pas mal de temps que j'ai commençais mon projet (en janvier 2008) et depuis le début je sais que l'IA va être la chose la plus dur à faire, en effet je vient que de débuter en programmation et ne connais que les bases. Maintenant je doit attaquer l'IA. cette IA est très simple a expliquer ^^
Je chercher à faire une IA de déplacement (c'est un jeu vu de haut), il y a beaucoup de mur et d'obstacle. des objets doivent se rendre a un objet bien déterminé (zombies rouge ) malheureusement la fonction
Code:
mp_potential_step
est un vrai désastre snif2 , j'ai regarder l'exemple d'une IA bien réussi "Fog-IA2" mais comme je ne fait que débuter en programmation je ne comprend pas bien ou est le bon code pour les mouvements, je sais que sa marche avec des paths qui se dessine aléatoirement.
Aider moi p_svp
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%


Dernière édition par dimitrou le Lun 21 Juil - 22:55, édité 1 fois
Revenir en haut Aller en bas
mikmacer
Utilisateur confirmé: Rang ***



Age : 20
Inscrit le : 24 Déc 2005
Messages : 778
Localisation : Québec
 : ────────── :
Projet Actuel : EscapeNgine
Avancement : 
50/10050/10050/10050/100 (50/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 18:24

Tu pourrais regarder au niveau de l'algorthme du A* qui est implémenté dans GM. Je crois que l'utilisation de cet algo par des fonctions de GM est décrit dans la même page du manuel que mp_potential_step.

Il te faudrat spécifier un cadrier et lui indiquer les cases solid, et ceux non solid de ta map, et à partir de ça, tout objet pourra trouver un chemin du point A au point B partout dans ta map.
Revenir en haut Aller en bas
master47
Utilisateur confirmé: Rang *****



Age : 16
Inscrit le : 16 Nov 2006
Messages : 1621
Localisation : Bruxelles, Belgique @ You Night Club
 : ────────── :
Projet Actuel : PacWars
Avancement : 
35/10035/10035/10035/100 (35/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 18:34

T'as mis cette fonction dans step ou non ( mp_potential_step )
Revenir en haut Aller en bas
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 18:37

c'est a dire que les objet solide il en a pas mal dans plein de map
j'ai bien mis la commande dans le step de l'objet
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%


Dernière édition par dimitrou le Lun 21 Juil - 22:55, édité 1 fois
Revenir en haut Aller en bas
master47
Utilisateur confirmé: Rang *****



Age : 16
Inscrit le : 16 Nov 2006
Messages : 1621
Localisation : Bruxelles, Belgique @ You Night Club
 : ────────── :
Projet Actuel : PacWars
Avancement : 
35/10035/10035/10035/100 (35/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 18:48

Alors comme MickMacer je pense qu'il faut drait que tu te tourne vers le A Star parce que la fonction mp_potential_step n'est pas assez personalisable à mon gout..
Revenir en haut Aller en bas
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 19:28

p_desole mais sé quoi la A star ? p_lol
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%


Dernière édition par dimitrou le Lun 21 Juil - 22:55, édité 1 fois
Revenir en haut Aller en bas
Rem_101
*Excellent utilisateur*



Age : 16
Inscrit le : 11 Jan 2006
Messages : 3396
Localisation : chez votre marchand de journaux
 : ────────── :
Avancement : 
0/1000/1000/100 (0/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 19:57

Warning Patté
Spoiler:
 

_________________
Revenir en haut Aller en bas
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 20:38

Je vais étudier sa de plus prêt happy1

ça a l'aire quand même compliquer
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%


Dernière édition par dimitrou le Lun 21 Juil - 22:56, édité 1 fois
Revenir en haut Aller en bas
master47
Utilisateur confirmé: Rang *****



Age : 16
Inscrit le : 16 Nov 2006
Messages : 1621
Localisation : Bruxelles, Belgique @ You Night Club
 : ────────── :
Projet Actuel : PacWars
Avancement : 
35/10035/10035/10035/100 (35/100)

MessageSujet: Re: IA Simple de déplacement   Dim 20 Juil - 22:37

http://gmc.yoyogames.com/index.php?showtopic=286571
Revenir en haut Aller en bas
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: Re: IA Simple de déplacement   Lun 21 Juil - 0:39

énorme merci gnii je vais essayer de plus vous embêter et de faire avec
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%


Dernière édition par dimitrou le Lun 21 Juil - 22:54, édité 1 fois
Revenir en haut Aller en bas
Rem_101
*Excellent utilisateur*



Age : 16
Inscrit le : 11 Jan 2006
Messages : 3396
Localisation : chez votre marchand de journaux
 : ────────── :
Avancement : 
0/1000/1000/100 (0/100)

MessageSujet: Re: IA Simple de déplacement   Lun 21 Juil - 10:28

LoL master qui est plus claire que moi avec un seul lien que moi avec un texte :'(
_________________
Revenir en haut Aller en bas
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: Re: IA Simple de déplacement   Lun 21 Juil - 14:25

Je crois qu'il y a un petit problème dans cet exemple, je ne peut pas l'adapter dans mon jeu.

tous dabor j'ai mis les scripte dans mon jeu (rien de compliquer) j'ai reprogrammer mes objets pour que l'objet player sois le zombie et qu'il suive l'objet "perso" qui était avant la souris. rien de compliquer

mais quand je lance le jeux :


___________________________________________
ERROR in
action number 1
of Create Event
for object objObstacle:

In script AStar_setBlocked:
Error in code at line 1:
// Arguments:// 0 - x// 1 - y// 2 - 0...Free, 1...Blocked//// Returns: nothingwith (objPathFinder) { if (coordMode) ds_map_replace(cells[argument0,argument1],"blocked",argument2); else ds_map_replace(cells[floor((argument0-X_OFFSET)/CELL_WIDTH), floor((argument1-Y_OFFSET)/CELL_HEIGHT)], "blocked",argument2);}

at position 232: Unknown variable cells or array index out of bounds
-------------------------------------------------------------------------------------

sa me l'achiffe 3 foi (je fait ignorer)

mais aprés quand je sort de la zone du départ (je pensse)
____________________________________________________________
ERROR in
action number 1
of Mouse Event for Glob Left Pressed
for object objPlayer:

In script AStar_findPath:
Error in code at line 1:
// Arguments:// 0 - x1// 1 - y1// 2 - x2// 3 - y2// 4 - center (true/false)//// Returns:// path id if successful, -1 if unsuccessfulwith (objPathFinder) {var startNode,goalNode,openList,closedList,node,neighbors,i,neighborNode, isOpen,isClosed,costFromStart;if (coordMode) { startNode = cells[argument0,argument1]; goalNode = cells[argument2,argument3]; argument0 = argument0 * CELL_WIDTH + X_OFFSET; argument1 = argument1 * CELL_HEIGHT + Y_OFFSET;} else { startNode = cells[floor((argument0-X_OFFSET)/CELL_WIDTH), floor((argument1-Y_OFFSET)/CELL_HEIGHT)]; goalNode = cells[floor((argument2-X_OFFSET)/CELL_WIDTH), floor((argument3-Y_OFFSET)/CELL_HEIGHT)];}if (ds_map_find_value(goalNode,"blocked")) return -1;openList = ds_priority_create();closedList = ds_list_create();ds_map_replace(startNode,"costFromStart",0);ds_map_replace(startNode,"estimatedCostToGoal",AStar_getEstimatedCost(startNode,goalNode));ds_map_replace(startNode,"pathParent",-1);ds_priority_add(openList,startNode,ds_map_find_value(startNode,"costFromStart")+ds_map_find_value(startNode,"estimatedCostToGoal"));while (!ds_priority_empty(openList)) { node = ds_priority_delete_min(openList); if (node == goalNode) { ds_priority_destroy(openList); ds_list_destroy(closedList); return AStar_constructPath(goalNode,argument0,argument1,argument4); } neighbors = AStar_getNeighbors(node); for (i=0; i<ds_list_size(neighbors); i+=1) { neighborNode = ds_list_find_value(neighbors,i); if (ds_priority_find_priority(openList,neighborNode) > 0) isOpen = 1; else isOpen = 0; if (ds_list_find_index(closedList,neighborNode) > -1) isClosed = 1; else isClosed = 0; costFromStart = ds_map_find_value(node,"costFromStart") + AStar_getCost(node,neighborNode); if ((!isOpen && !isClosed) || (costFromStart < ds_map_find_value(neighborNode,"costFromStart"))) { ds_map_replace(neighborNode,"pathParent",node); ds_map_replace(neighborNode,"costFromStart",costFromStart); ds_map_replace(neighborNode,"estimatedCostToGoal", AStar_getEstimatedCost(neighborNode,goalNode)); if (isClosed) ds_list_delete(closedList,ds_list_find_index(closedList,neighborNode)); if (!isOpen) { ds_priority_add(openList,neighborNode,ds_map_find_value(neighborNode,"costFromStart") +ds_map_find_value(neighborNode,"estimatedCostToGoal")); } } } ds_list_destroy(neighbors); ds_list_add(closedList,node);}ds_priority_destroy(openList);ds_list_destroy(closedList);return -1;}

at position 628: Unknown variable cells or array index out of bounds
------------------------------------------------------------------------------------

de plus mes objets qui était parent du mur on disparu
voila
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%


Dernière édition par dimitrou le Lun 21 Juil - 22:54, édité 1 fois
Revenir en haut Aller en bas
edi9999
Utilisateur confirmé: Rang *****



Age : 16
Inscrit le : 27 Jan 2006
Messages : 2219
Localisation : partout et nulle part
 : ────────── :
Projet Actuel : un mario rigolo et theatre flashy
Avancement : 
25/10025/10025/10025/100 (25/100)

MessageSujet: Re: IA Simple de déplacement   Lun 21 Juil - 16:05

tu as surement oublie d'initialiser un des scripts.
_________________
I am an in the GM Quiz!

tuto gamemaker integral disponible sur mon site:
http://gameplay.c.la
Utilisez des hebergeurs gratuits, illimites et sans temps d'attente:
http://upload.404home.com/index.html
et pour les fichiers de plus de 8 mo: http://mihd.net/
Revenir en haut Aller en bas
nicoulas
Utilisateur confirmé: Rang *****



Age : 15
Inscrit le : 16 Juin 2007
Messages : 2944
Localisation : Aquitaine -> Dordogne
 : ────────── :
Projet Actuel : croustaface
Avancement : 
100/100100/100100/100 (100/100)

MessageSujet: Re: IA Simple de déplacement   Lun 21 Juil - 16:07

cette erreur survient soit quand une variable est manquante, soit quand il y a un problème avec une valeur trop basse ou trop élevée dans les ds_list
_________________
Revenir en haut Aller en bas
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: Re: IA Simple de déplacement   Lun 21 Juil - 19:42

c'est bisar j'ai bien remis tous se qu'il y avait
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%
Revenir en haut Aller en bas
nicoulas
Utilisateur confirmé: Rang *****



Age : 15
Inscrit le : 16 Juin 2007
Messages : 2944
Localisation : Aquitaine -> Dordogne
 : ────────── :
Projet Actuel : croustaface
Avancement : 
100/100100/100100/100 (100/100)

MessageSujet: Re: IA Simple de déplacement   Lun 21 Juil - 23:59

je sais pas, peut être que trop d'objets sont pris en compte (plus que dans l'exemple peut être ?)
_________________
Revenir en haut Aller en bas
dimitrou
Très bonne participation



Age : 15
Inscrit le : 05 Jan 2008
Messages : 120
Localisation : 34 (Montpellier, Hérault)
 : ────────── :
Projet Actuel : Zombad
Avancement : 
40/10040/10040/10040/100 (40/100)

MessageSujet: Re: IA Simple de déplacement   Mar 22 Juil - 11:11

non j'ai mis le même nombre d'objet
_________________
Mon Projet "zombad"



http://cbna.forumactif.com/vos-projets-f11/zombad-t7975.htm

40%
Revenir en haut Aller en bas

IA Simple de déplacement

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous pouvez répondre aux sujets dans ce forum
Forum Le CBNA :: Programmation :: Aide débutants-
Poster un nouveau sujet   Répondre au sujet