AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le deal à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

 

 [résolu] Problème de gestion IA

Aller en bas 
5 participants
AuteurMessage
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 14:56

Salut,

j'ai commencer un petit "tower defence" en reprenant la base d'un ancien de mes projets... Pour moi, mon script a l'air bon, mais en jeu, mon IA fait un peu comme bon lui semble.

Elle est censé : si un ennemi est dans la zone X alors aller vers lui, dès que l’ennemi est trop loin, revenir a ça position initial.

Le soucis, donc, c'est que des moment elle y va, des moment non, des moments elle reviens a ça place et des moments non... C'est assez gavant sachant surtout que je n'ai pas la moindre idée d'où viens le problème... Donc si quelqu'un aurais la gentillesse de me dire comment faire où au moin de localisé le problème...

Merci.

//////////////////////////////////////////////////////////////////////////
//////////////////////// MOUVEMENTS /////////////////////////////////////
////////////////////////////////////////////////////////////////////////
if bouge = 1
{
if (direction >= 0 && direction <= 22.5)
{
sprite_index = spr_fighterM_droite
}
if (direction >= 22.5 && direction <= 67.5)
{
sprite_index = spr_fighterM_hautdroite
}
if (direction >= 67.5 && direction <= 112.5)
{
sprite_index = spr_fighterM_haut
}
if (direction >= 112.5 && direction <= 157.5)
{
sprite_index = spr_fighterM_hautgauche
}
if (direction >= 157.5 && direction <= 207.5)
{
sprite_index = spr_fighterM_gauche
}
if (direction >= 207.5 && direction <= 257.5)
{
sprite_index = spr_fighterM_basgauche
}
if (direction >= 257.5 && direction <= 307.5)
{
sprite_index = spr_fighterM_bas
}
if (direction >= 307.5 && direction <= 357.5)
{
sprite_index = spr_fighterM_basdroite
}
if (direction >= 357.5 && direction <= 0)
{
sprite_index = spr_fighterM_droite
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////// mouvement //////////////////////////////////////
////////////////////////////////////////////////////////////////////////
if (distance_to_object(obj_applekid) = 60)
{
bouge = 1
move_towards_point(positionX,positionY,3)
}
if (distance_to_object(obj_applekid) <= 50)
{
bouge = 1
move_towards_point(obj_applekid.x,obj_applekid.y,3)
}
///////////////////////////retour//////////////////////////////////
if (position_meeting(positionX,positionY,self) && bouge = 1)
{
bouge = 0
speed = 0
sprite_index = spr_fighterM_bas
}
////////////////////////attaque//////////////////////////////////
if (distance_to_object(obj_applekid) < 5 && blocage = 0)
{
if (direction >= 0 && direction <= 22.5)
blocage = 1
alarm[0] = 5
{
sprite_index = spr_fighterM_atkdroite
blocage = 1
alarm[0] = 5
}
if (direction >= 22.5 && direction <= 67.5)
{
sprite_index = spr_fighterM_atkhautdroite
blocage = 1
alarm[0] = 10
}
if (direction >= 67.5 && direction <= 112.5)
{
sprite_index = spr_fighterM_atkhaut
blocage = 1
alarm[0] = 10
}
if (direction >= 112.5 && direction <= 157.5)
{
sprite_index = spr_fighterM_atkhautgauche
blocage = 1
alarm[0] = 10
}
if (direction >= 157.5 && direction <= 207.5)
{
sprite_index = spr_fighterM_atkgauche
blocage = 1
alarm[0] = 10
}
if (direction >= 207.5 && direction <= 257.5)
{
sprite_index = spr_fighterM_atkbasgauche
blocage = 1
alarm[0] = 10
}
if (direction >= 257.5 && direction <= 307.5)
{
sprite_index = spr_fighterM_atkbas
blocage = 1
alarm[0] = 10
}
if (direction >= 307.5 && direction <= 357.5)
{
sprite_index = spr_fighterM_atkbasdroite
blocage = 1
alarm[0] = 10
}
if (direction >= 357.5 && direction <= 0)
{
sprite_index = spr_fighterM_atkdroite
blocage = 1
alarm[0] = 10
}
}



(je ne l'ai pas mit un "code" pour ne pas couper le scripte et ainsi le voire en entier.


Dernière édition par kujaff le Mer 5 Juin 2013 - 11:23, édité 1 fois
Revenir en haut Aller en bas
hofmeister
Bavard



Messages : 109

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 15:15

Bonjour, peut-être que dans "mouvements" pour le test vérifiant que la distance est égale à 60, il faudrait mettre >=? Parce que là, ce n'est pris en compte que pour une distance précise. D'autre part il y a une marge, entre 50 et 60, où rien ne se passe, c'est normal? (Je sais pas si je suis clair).
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 15:55

Ouai, je mettrai les supérieur ou égal... en te lisant, ça m'a fait réagir a un truc...

Il faut que je mette

si la distance est inférieur ou égale a 50 alors
sur la distance est supérieur ou égale a 50 alors...

j'ai donc mit

if (distance_to_object(obj_applekid) >= 50)
{
bouge = 1
move_towards_point(positionX,positionY,3)
}
if (distance_to_object(obj_applekid) <= 50)
{
bouge = 1
move_towards_point(obj_applekid.x,obj_applekid.y,3)
}

c'est un peu mieux, mais ça peut arriver de "planter" avec le mec qui ne fait rien, et une fois a l'heure place ils sont tout affolés et leurs animation "bouge" dans tout les sens et n'est donc pas "fixe".
Revenir en haut Aller en bas
hofmeister
Bavard



Messages : 109

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 16:03

Je pense qu'il faut mettre une des conditions >= et l'autre <, sinon l'objet veut faire les deux à la fois quand la distance est exactement de 50.
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 16:36

Pas faux, mais ça ne résous pas mon problème, on va dire qu'il bouge qu'une fois et s'il arrive a leur place d'origine des moments ils ne bougent plus :s
Revenir en haut Aller en bas
hofmeister
Bavard



Messages : 109

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 17:08

Je ne comprends pas très bien... L'objet se déplace une fois vers l'ennemi, revient à sa place puis ne réagit plus, c'est ça?
Sinon les scripts mouvement et retour sont dans quel event?
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 17:54

Oui, c'est ça. Et des moment ils ne bougent carrément pas, c'est étrange...

Tout est dans mon Objet dans Step. Dans obj_fighterM, qui est celui qui est censé ce déplacer.
Revenir en haut Aller en bas
hofmeister
Bavard



Messages : 109

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 4 Mar 2013 - 18:52

Pour les conditions du retour, essaie de rajouter "si la distance est supérieure à 50"
Edit: non, c'est pas terrible, tu devrais plutôt régler une deuxième variable à vrai dans la condition <50, puis la tester ==false dans
les conditions du retour, et bien sur la regler sur false au debut du step
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyMer 6 Mar 2013 - 11:18

Je dois t'avoué que j'ai pas tout suivi, je poste au cas ou mon projet GM8 si tu arrive ou qqun d'autre a le faire marcher correctement ^^'

http://www.mediafire.com/?5oz35fs6xis1az9
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 11:20

Salut, je continue se topic car j'ai un soucis equivalent sur un de mes projets...

Une fois l'objet a ça place, il n'arrete pas de "trembler" et c'est assez embettant...

Voici mon code :/

if direction > 315 && direction < 45
{
sprite_index = spr_fighter_right
}
if direction > 45 && direction < 135
{
sprite_index = spr_fighter_up
}
if direction > 135 && direction < 225
{
sprite_index = spr_fighter_left
}
if direction > 225 && direction < 315
{
sprite_index = spr_fighter_down
}
///////////////////////////////////////////
if distance_to_object(obj_enemy) < 40
{
move_towards_point(obj_enemy.x,obj_enemy.y,3)
}
////////////////////////////////////////////////
if distance_to_object(obj_enemy) > 40
{
move_towards_point(position_x,position_y,3)
}
//////////////////////////////////////////////
Revenir en haut Aller en bas
Mobi
Utilisateur confirmé: Rang ****
Mobi


Messages : 1256
Localisation : Dijon

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 11:45

Faut utiliser les réseaux neuronaux awesome

_________________
[résolu] Problème de gestion IA Penguin
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 11:47

ça m'aide enormement lol ! I joke...
Revenir en haut Aller en bas
marty
Utilisateur confirmé: Rang ***
marty


Messages : 697
Projet Actuel : laby-ereinte !

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 16:35

ajoute un événement ou le perso est au repos avec un speed à zéro!
car les fonction move to ,speed ect donne (j'avance dans une direction ,j'avance dans une autre direction mais jamais, là je peux m’arrêter)
il faut donc indiquer à quel moment il s’arrête.

_________________
Code:
rnd=>insight=>play

http://gamemaker.info/fr/manual



Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 18:22

GM utilise des doubles pour toutes ses variables, donc suffit de caster : dans step :
x=round(x);
y=round(y);

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 18:57

térence ta solution marche pour l'animation avant que le perso bouge.

Enfaite, le soucis c'est que le perso ne reviens pas EXACTEMENT a ça place :/
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 19:02

A combien de pixels près ?
Essaie d'arrondir aussi xstart et ystart (si c'est pas en lecture seule).

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyVen 31 Mai 2013 - 19:34

je dirais a peut pret 5 ou 6 pixel...

je ne sais pas utilisé le xstart et ystart ^^' premiere fois que j'en attend parler
Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 3 Juin 2013 - 17:25

Up Wink

Personne pour m'aider ? :/ je suis bloqué. Je sais d'ou viens le soucis mais aucune idée de comment y remedier...

En faite, mon perso ne reviens pas exactement a ça place initial ce qui ne permet pas de remplir les bonne condition pour l'animation... Je peux eventuelement passé mon .gmk.

Merci d'avance.
Revenir en haut Aller en bas
marty
Utilisateur confirmé: Rang ***
marty


Messages : 697
Projet Actuel : laby-ereinte !

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyLun 3 Juin 2013 - 21:16

bah, envoie ton gmk (sur quel version GM travaille tu?)
sur cette adresse:
http://www.simpleupload.fr/
pit'être qu'on pourra t'aider.

_________________
Code:
rnd=>insight=>play

http://gamemaker.info/fr/manual



Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyMar 4 Juin 2013 - 11:32

Voila merci : http://simpleupload.fr/?c=A0s4q6l!LS2mcxUI je suis sous GM 8.o pro
Revenir en haut Aller en bas
marty
Utilisateur confirmé: Rang ***
marty


Messages : 697
Projet Actuel : laby-ereinte !

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyMar 4 Juin 2013 - 21:57

je t'ai juste changer un truc pour que cela fonctionne

bouge 2 état
instance_nearest transformé en distance to point

http://simpleupload.fr/?c=A0CW2Oi!fJG7Zv54

bonne continuation

_________________
Code:
rnd=>insight=>play

http://gamemaker.info/fr/manual



Revenir en haut Aller en bas
kujaff
Très bonne participation
kujaff


Messages : 127
Localisation : Dans mon Atelier
Projet Actuel : Puzzle/Reflexion

[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA EmptyMer 5 Juin 2013 - 11:22

Merci Man Wink
Revenir en haut Aller en bas
Contenu sponsorisé





[résolu] Problème de gestion IA Empty
MessageSujet: Re: [résolu] Problème de gestion IA   [résolu] Problème de gestion IA Empty

Revenir en haut Aller en bas
 
[résolu] Problème de gestion IA
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Problème de gestion de souris/boutons
» Gestion des Variables [Résolu]
» Problème de gestion du temps d'animation
» [Résolu]Gestion de la souris question.
» problème background_replace_alpha [Résolu]

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: