Voir la version complète : IA de FPS
Progi1984
13/04/2005, 11h36
Quels sont les caractéristiques que vous souhaiteriez voir dans une IA de FPS ?
Personnlaisation : Nom, taille, probabilité de tir
Fonction : fuite, guet apens, se cacher, kamikaze, alerte, patrouille
Sinon ?
tyrion42
13/04/2005, 11h41
Salut...
L'IA pour un FPS serait une IA comme FarCry mais un peu plus aggressive.
Je me souvient dans FarCry, dans le bunker, j'étais un tuyau d'aération et je canardais tranquillement quand je me suis fait shooter... par dernière, deux gus avaient contourné et emprunté le tuyau !
Sinon, ils restent trop statique quand on commence au snipe...
Mais bon, une bonne expérience d'une IA qui change du 'je vois, je tire'
le plus important ce serait que les persos aient pas de position fixe. Qd on regarde je pense a Doom 3 les ennemis sont fixe dans la piece jusqu'a ce que tu y entres ce qui rends les choses moins crédibles. Et diminue d'autant le facteur peur. Car okay tu te feras avoir une fois mais la fois suivante avant meme d'entrer devant la porte tu tires sur sa position dès le début.
J'ai jamais compris d'ailleurs que les ennemis passe pas les portes pour se "ballader."
Atréides
13/04/2005, 13h43
les nombres aléatoires
c'est énervant de voir les ennemis réagir de la même manière dans des situations similaires, le jeu devient trop prévisible...
... plusieurs actions pourraient être intéressantes, voici un petit exemple :
- il entend un impacte de balle
-- il se jette à terre
-- il regarde autours de lui
-- il va se mettre à couvers
-- il ne remarque rien
...
c'est long à programmer, mais d'après moi, cela rend le jeu de bien meilleur qualité
Lightness1024!
13/04/2005, 18h56
oui tout à fait, recharger une partie et attendre que l'ennemi fasse ce qu'on a vu au premier essai est trop facile :D
et puis je dirais aussi qqch que je ferais surement dans serhum, des classes d'adversité.
par exemple une classe X aurait un comportement neutre envers Y d'autre ennemi d'autres alliés etc..
avec un degré relativement "continu". de tres-tres-ami jusqu'a ennmi-juré-qui-peut-pas-se-sentir.
de plus deux personnes appartenant a des classes oposées ne s'entre turait pas forcément.
par exemple si toi joueur tu es ennemi de la police, ce n'est pas parce qu'un flic te vois qu'il te tire dessus tout de suite.
donc j'implémenterais des routines de détection du degré d'hostilité du joueur envers mes bots.
si il sort son arme ca devient dangereux etc.. (genre hitman)
Aussi en plein combat, même apres une hositlité clairement affichée, une action genre drapeau blanc, ou il apparait clairement que vous n'avez plus de munitions, les bots prennent une atitude d'appréhension (policière) plutot que d'assasinat. (en gros "you have been busted" plutot que "you died" loool)
ca revient au même c'est vrai.
voili voilou
Ben bon courage, parceque l'IA que vous imaginez est sacrément balèze.. :) je suis en train de terminer une mission pour un studio parisien qui développe justement un FPS avec une IA plus simple que celle que vous décrivez. Ils y ont quand même passé 8 mois à 3 pour réaliser une IA basée sur des stimulis (réaction au son et à la vision) et avec du hide & shoot (se cache, sort, tire et se re-cache) et divers actions (se cache, s'accroupi, vise, tire, te cherche, patrouille...). C'est encore loin d'être au point et il reste encore enoOOOormement de réglages et de trucs à rajouter pour les milliards de cas particuliers...
PS: ils utilisent RenderWare IA et n'ont donc pas eu à faire tte la partie destinée à générer et gérer les graphs d'IA.
C'est bien d'avoir du temps :)
Alexis.
Un studio parisien qui développe un FPS actuelement ? mmmhhh.... Kylotonn ?
On veut le nom ! On veut le nom ! On veut le nom !
Sinon pour revenir au topic, je suis entierement d'acc' avec Wedge. Quelle déception de voir que dans Doom 3 les ennemis attendent toujours le joueur à la même position et commencent à bouger quand ils détectent le joueur...
En tous cas bon courage, le codage d'une IA n'est pas une mince affaire.
LaurentUSA
13/04/2005, 20h55
Comme le dit Jny, ce n'est pas une mince affaire...
Mais c'est pour cela que Doom 3 est chiant, c'est pour cela que Splinter Cell est penible, que Enter The Matrix est une merde.
Par contre, c'est pour cela que l'on refait avec plaisir les missions dans Halo ( 1 et 2 ) et Far Cry.
Evidemment, dans chacun des cas, j'en oublie... Je ne cause que de ceux que j'ai achete.
Progi1984
13/04/2005, 22h09
D'aprés vos dires :
A ajouter
-Personnalisation : niveau d'alerte
-Fonctions: contourner,tirer, se baisser
Splinter Cell Chaos Theory je l'ai pas trouvé aussi statique que les précédents les personnages se déplacent certes selon un trajet prédéfini :p mais je les ai rarement vu exactement a la meme place après être revenu en arrière à un point de sauvegarde parceque j'ai foiré :p
Progi1984
14/04/2005, 07h58
D'aprés vos dires,
A ajouter
Fonctions : Position Aléatoire
Mais c'est pour cela que Doom 3 est chiant, c'est pour cela que Splinter Cell est penible, que Enter The Matrix est une merde.
Bon pour Doom3 je sais pas, mais dans Enter The Matrix je me suis vraiment amusé: le jeu est "simple", la musique est vraiment bien, bref tout ce qu'un fan de la série demanderait, après on aime ou aime pas.
Pour ce qui est de SplinterCell je pense surtout que j'aurai pas dû l'acheter sur Xboite...
Enfin bref, bonne chance :)
Il ne faut pas oublier que l'IA a un coût énorme. C'est difficile de miser dans le graphisme et "l'intelligence" du jeu. Généralement, c'est l'un ou l'autre qu'on choisit... on bien on panache les deux pour obtenir des résultats acceptables.
Bien informé Jny ;-)
C'est dur d'appliquer une IA sur un véritable jeu, car il ne laisse en général pas beaucoup de CPU pour cette tache. Il faut profiler sans cesse pour jouer serré en temps et tester l'IA dans chaques recoins; chaque endroit peut déclencher un cas particulier, ce qui amène à tweaker le code ou les paramètres de l'IA, modifier les niveaux du jeu et re-tester... ce qui prend beaucoup de temps.
Alexis.
Atréides
20/04/2005, 08h07
Franchement, moi je trouve que les graphismes ne sont pas ce qu'il y a de plus important dans un jeu. Il y a 3-4 mois, j'ai encore passé le jeu X-Com : UFO Defence. Il est très moche et comme mon ordi est trop rapide je ne voyais même pas les effets spéciaux (en fait, il n'y en a qu'un seul : les explosions et les tirs)... Mais j'ai adoré, parce que le jeu est génial :)
Franchement, à quoi sert d'avoir le jeu le plus beau du monde si la seule chose que ton IA fait correctement est de trouver un chemin entre les cadavres de ses compagnons que tu snipes depuis une position éloignée ?
Je dirais qu'on peut résumer ce que je pense par cette équation :
qualité = graphismes + n*reste, n>1
Les graphismes sont importants, mais beaucoup moins que le reste. Donc Progi, si tu hésites entre une bonne IA et de bons graphismes, je pense que l'IA serait le meilleur choix. Mais vu le succès de Doom3, on dirait que pas mal de personnes sont d'un autre avis ;)
Je suis un peu du même avis. Certes la beauté visuelle est ce qui attire le plus chez un joueur. Puis viens la qualité du scénario, et enfin l'IA.
Du coup, Doom 3 a un avantage. Il est beau...un très bon scénario, une bonne bande audio. Quand j'ai joué à ce jeu, je me suis éclaté du début jusqu'à la fin. Une certaine angoisse réside en nous tout au long du jeu.D'ailleurs, je conseille vivement d'y jouer la nuit chez soi : c'es encore plus réaliste ainsi.
Mais voila...une fois le jeu fini, j'ai voulu y rejouer...mais c'était plus pareil. Je connaissais déja le scénario, les moments de temps fort, et surtout...surtout... la réaction des ennemis : c'est là, le point faible de l'IA.
En gros pour moi, la qualité de l'IA doit etre un facteur clé ! Une IA complexe fera que la personne rejouera plusieurs fois au meme jeu. Sinon, le jeu servira 2-3 mois puis sera rangé au placard. Au prix où sont vendus les jeux...
Atréides
20/04/2005, 18h17
Certes la beauté visuelle est ce qui attire le plus chez un joueur. Puis viens la qualité du scénario, et enfin l'IA.
C'est juste que quand on voit un jeu dans un magasin, on ne voit que les screenshots, donc on prend l'habitude de juger par l'aspect...
... mais finalement, quand on veut voir quelque chose de magnifique, on passe sur scene.org et quand on veut jouer à un bon jeu, on joue à son jeu préféré :)
Je partagerai bien votre avis mais je pense qu'une IA poussée n'est pas forcement non plus une solution car le gameplay est proportionnellement plus dur à régler et à rendre fun si l'IA est complexe. Des graphismes pas trop dégueux, une IA qui rend les enemis pas trop mécaniques et beaucoup de bonnes idées en design font pour moi un coktail parfait (Sand of time ?).
Vu le nombre de nouveaux jeux qui sortent, un jeu qui donne envie de le finir entier (parlons même pas d'y rejouer) c'est déja pas mal. J'ai fini ni HL2 ni Doom3, tirer sur des trucs c'est plutot razoir à force...
Alexis.
Atréides
22/04/2005, 12h53
hmm.. je viens de penser à un truc qui pourrait grandement améliorer l'IA sans être trop difficile à faire :)
Imaginons un joueur qui arrive devant une porte, sauvegarde, entre, regarde partout pendant qu'il se fait massacrer, recharge la partie, entre à nouveau et sait exactement où sont les ennemis...
... ça serait peut-être marrant de placer les ennemis qui ne sont pas visibles lors du chargement de manière aléatoire autours de leur dernière position sauvegardée. Même en jouant exactement de la même manière, on aurait toujours des surprises :00000032:
Progi1984
24/04/2005, 22h39
@Atréides, en fait : je suis en train de créer un librairie d'IA donc cela me permet par vos dires de voir quelles fonctions créer !
Sinon ton idée est symbolisée par la fonction PositionAléatoire() !
Merci !
vBulletin® v.3.6.5, Copyright ©2000-2009, Jelsoft Enterprises Ltd. Tous droits réservés - Version française vbulletin-fr.org