Mécanismes d'infiltration et AI

Répondre
Partager Rechercher
Bonjour, je suis en train de développer mon premier jeu:

un petit chien doit retrouver et délivrer son maitre kidnappe par une milice dans une citée futuriste
le jeux est en 2D,
mécanisme d'infiltration
le chien et assiste par un AI dans son collier
décors en plusieurs couche on peut sauter entre elles( on avance un QTE apparait on clic et se retrouve derrière une vitre ou dans un bouche d'aération) permet d'échapper au ennemies

Je suis en ce moment entrain de réfléchir a une AI pour les ennemies qui soit assez modulable pour donner des situations différentes et réalistes

Citation :
Alert level: du level 1 a 5, l'indice changera le comportement des ennemies par rapport au chien.

-level1: see dog[no attack](Weapon: use stun baton but no electric animation just to push out the dog)
-level2:see dog[will attack if dog come too close](Weapon: use stun baton with electric animation)
-level3:see dog[ attack after few seconds](Weapon: use stun baton with electric animation)
-level4:see dog[attack on sight](Weapon: use Blaster)
-level5:see dog[Attack on sight](Weapon: use Blaster and deploy seeker droid)

Citation :
Behaviors: (depending on guard alert level)

(0)guard: guard is static on his position, play idle animation for level 1,2,3, and cover idle animation for 4,5.
(1)patrol: each patrol have 3 parameters: [x axis value][time to wait before next Waypoint][animation name to play when waypoint is reached], if there is no WP directly go to guard state.
(2)seek dog: only for level 3,4,5, level 1 and 2 guard will switch to patrol state
(3)attack dog: for level 1,2 guard walk, for level 3,4,5 guard run
quand le chien entre dans une "hide zone" (sous une table, dans une boite..) l'ennemies passe de "combat" a "rechercher chien" si la distance >300 ou il y a un obstacle.
quand le chien use "Sneak" les ennemies ne l'entendent pas, le chien peut approcher et arriver au contact, uniquement de dos.
quand le chien utilise "ramper" les garde n'entendent pas et ne le voient pas même de face si hors combat et d'une distance>350.
quand le chien utilise "aboyer" les enemies en niveau d'alert 3,4 et 5 se déplacent pour localiser la source.

je cherche des idées pour améliorer tout ça, je suis entrain de tout apprendre sur le tas, je dessine les decors, crée les animations. mais la partie AI des ennemies me parait assez complique vu mon niveau tres faible en script.
Miniatures attachées
Cliquez sur l'image pour la voir en taille réelle

Nom : dog1.png
Taille : 778x579
Poids : 590,8 Ko
ID : 182302   Cliquez sur l'image pour la voir en taille réelle

Nom : dog2.png
Taille : 766x578
Poids : 447,9 Ko
ID : 182303  
J'ai du mal à saisir sur quoi exactement tu veux de l'aide. Tu n'arrive pas transformer tes idées en code? (d'ailleurs quel outil/langage utilise tu?). Tu veux un avis sur les comportements tels que tu les décris?

Au passage si c'est bien toi qui a fait les graphismes qu'on voit dans les screens, bravo c'est fort joli
Pour faire ton AI il te faudrait faire une state machine et je ne saurai trop te conseiller des plugins comme playmaker ou uscript.
Même si la majorité de ton jeu reste codé en C#, avoir l'AI visible comme un Diagramme Etat-Transition facilitera enormement ton developpement et ton debug.

Une fois que c'est fait il te suffit de l'ajouter à ton prefab d'ennemi et ca sera bon pour chaque ennemi.

uScript est dispo gratuitement sur le site de l'auteur pour essai, mais perso je préfère playmaker même si lui n'existe qu'en payant.
merci pour les conseils, pour le moment j'essai de finir les controles et l'interface de l'AI dans le collier du chien.


j'utilise des boites pour des tests, la premiere fait des degats, la seconde un heal.
pour ce genre de question technique à ta place je serais allé sur unity3d france
d'ailleurs c'est la dessus que j'ai trouvé unity .gems récemment, j'y ai appris énormément de truc, notamment sur certains détail du C# (implémentation de "yield", closure, ...) et pour toi, y'a un article sur les IA: http://unitygems.com/basic-ai-character/, et un article sur l'implémentation de state machine dispo (y'a même le framework complet à la fin si tu pige rien). mais hésite pas à le parcourir y'a plein de truc, par contre tout les articles n'ont pas été traduit en français.

avec Playmaker, t'arrive à interfacer facilement et dans les 2 sens ton code C# avec le diagramme-magique ? déjà que c'est la merde dés qu'on a des bout d'unityScript avec des bouts de C#...
Oui ca s'interface très facilement puisque les statemachine ajouté aux gameobject sont juste des components classique.
On peut donc les récupérer facilement en C# (je ne sais pas pour le javascript mais ca devrait le faire aussi).
C'est moins facile de créer soit même ses nodes s'ils n'existent pas et qu'on ne developpe pas plus que ca.


Perso je suis un developpeur donc je ne m'étais jamais interessé à Playmaker et uscript; Avant je me fesais mes propres statemachine mais après avoir essayé c'est vraiment dur de repartir dans du code pur pour l'ia,ca apporte beaucoup de clareté dans le fonctionnement du comportement.


Merci pour unitygem je ne connaissais pas!
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés