MGG / Actualités jeux vidéo / Star Citizen /

Star Citizen: Table ronde sur l'IA

Star Citizen: Table ronde sur l'IA
0

Ce vendredi, l'émission star Citizen Live de Jared Huckaby accueille cinq développeurs de l'équipe en charge de l'intelligence artificielle. Ils répondent aux questions des joueurs dans leur domaine.

Star Citizen: Table ronde sur l'IA

Chaque semaine, l'émission Star Citizen Live accueille un ou plusieurs développeurs, afin que ceux-ci parlent de leurs travaux en cours en direct. Ce vendredi, l'équipe IA est à l'honneur avec pas moins de cinq développeurs sur le plateau. Le travail sur l'IA est en avance sur les autres équipes, dans le sens ou la plupart des technologies sont déjà présentes et doivent simplement être adaptées à un gameplay en particulier, ou encore inclure certaines animations spécifiques. Il reste cependant du travail et des paliers à franchir. Voici ce que nous avons retenu.

Assignations

L'IA des PNJs de Star Citizen fonctionne par assignations. Une entité (le serveur, le joueur, etc) définit le travail à accomplir avant que l'IA ne s'exécute. Il existe des situations dans lesquelles l'IA entrera dans un boucle infinie d'assignations sur un même conteneur (objet, panneau, mural, etc. Il s'agit ici d'un conteneur d'entités d'interaction comme un panneau électrique contenant un fusible). Cette boucle a pour vocation de peupler l'univers et de le rendre vivant, l'IA a alors accès à toutes les actions disponibles sur ce panneau et les exécutera une à une pour éviter trop de redondance. L'IA pourra interagir avec chacun des fusibles par exemple. De plus, l'IA a conscience du matériel qu'elle transporte, elle pourra alors faire usage d'une lampe torche, d'une tablette, ou tout objet qui a une utilité dans la situation donnée.

Fonctionnement de l'équipage PNJ

Le recrutement en lui même est une question de gameplay donc non-adaptée à cette équipe. Les développeurs parlent en revanche du fonctionnement interne des équipages IA :

  • L'IA transformera un dialogue en assignation
  • Les tâches données pourront être extrêmement précises, ou bien au contraire, être génériques selon le métier.
  • Lors de l'assignation, le joueur devra respecter le métier de l'IA sous peine de malus. Un pilote pourra éventuellement réparer un vaisseau mais avec moins d'efficacité qu'un ingénieur. Si l'on affecte un ingénieur au ménage, son moral pourra être touché, etc.

Comme cité en introduction, la technologie est prête. L'utilisation de la base de données du jeu est donc triviale pour les développeur IA, mais si le gameplay est absent pour le joueur, il l'est également pour les PNJs. Les problèmes à dépasser se situent au niveau des missions ou animations à utiliser en cas d'erreur, il faut que la chaîne de "fallback" soit précise et fonctionnelle.

L'IA est dépendante de l'environnement: l'animation doit constamment être adaptée à la métrique, elle doit pouvoir cibler et utiliser les outils disponibles à portée, ou bien savoir où les trouver. Les animations sont donc variées et nombreuses, ce qui prend du temps à enregistrer et implémenter.

Plans de navigation (Navmesh) dynamiques pour les planètes

L'équipe a fini de développer les navmeshes dynamiques pour les planètes. Cela signifie que les chemins possibles sont calculés en permanence autour des PNJs, et que l'on pourra donc à l'avenir, en trouver beaucoup plus à l'extérieur des avant-postes par exemple. Il sera donc techniquement possible de transporter un PNJ d'un endroit à un autre dans son vaisseau, sans que celui-ci ne s'égare complètement, ou ne reste figé.

Les navmeshes dynamiques ont déjà été passées aux équipes de designers pour que celles-ci commencent à travailler avec.

Renforts IA

Avec l'arrivée des liens de navigation et des navmeshes dynamiques, il va également devenir probable de voir atterrir des vaisseaux de renforts IA sur les avant-postes. Pour l'instant il s'agit juste des personnages, mais ils travaillent sur les renforts de véhicules débarqués depuis un vaisseau. Les liens de navigation ne concernent pas les échelles ni les ascenseurs pour l'instant, uniquement les rampes d'accès.

Lorsqu'une IA hostile arrive sur place, elle est déjà en mode combat, il n'y aura pas de phase d'attente ou de recherche de l'ennemi. Elle sera également consciente de la situation (le PNJ, n'essaiera pas de descendre un vaisseau avec un pistolet), mais aura des réactions différentes selon la "personnalité" du PNJ dans une même situation (certains seront très agressifs, d'autres complètement débutants et non rompus aux maniement d'une arme, etc).

Soin par des IA

Ils travaillent sur la capacité des IA à soigner des unités alliées (joueur ou PNJ). Le soin concerne également le réveil d'un personnage inconscient, ou la libération d'un prisonnier.

Loot par des IA

L'IA est actuellement omnisciente. Elle est donc en capacité de fouiller un corps pour plus de munitions. Le système de gestion des ressources par les IA est déjà présent, donc il ne s'agit pas d'un palier à franchir, ce comportement est lié au reste du système. Cependant, les développeurs veulent créer l'illusion de recherche de matériel par les IA.

Performance

Dans l'univers persistant, l'IA est complètement liée au serveur, et il n'est donc pas rare de voir leurs performances chuter. Si le server-meshing apportera un gain non négligeable à ce niveau, ils doivent quand même réfléchir à des solutions pour améliorer les performances parmi :

  • Une réduction de la densité d'entités selon les lieux (plus il y a d'entités IA à un endroit, plus les performances sont mauvaises)
  • Des animations sociales contextuelles de secours en cas d'un temps de réponse trop long du serveur.
  • Limiter le nombre de calculs (raycast, requêtes, etc) par image.

Divers

  • Ils veulent rendre l'univers vivant, les PNJs auront donc des humeurs. On pourra par exemple voir un PNJ exprimer sa frustration d'avoir raté son métro.
  • Ils travaillent sur des animaux IA.
  • Les Blades fonctionnent, mais le gameplay n'est pas prêt.
0
LM D
CrimsonFreak  - Rédacteur

Joueur invétéré et créateur du dimanche.

L'actu

En Continu

17:20 Inside Star Citizen : Doing Time
20:00 Star Citizen : Début du Ship Showdown 2022
20:15 Inside Star Citizen : Sprint Showdown
07:00 Star Citizen Monthly Report : rapport mensuel de juillet 2022
07:00 Inside Star Citizen: Star Karting
13:00 Star Citizen : Roadmap Roundup 03/08/2022
19:00 Star Citizen : Siege of Orison, les hostilités arrivent avec le patch live !
13:00 Inside Star Citizen: Un Centurion parmi nous
07:00 Star Citizen : Patch imminent 3.17.2 avec la limite à 100 joueurs ?
07:00 Star Citizen : Mise à jour Galactapedia de Juillet 2022

Articles

recommandés

Star Citizen : Letter from the Chairman – mai 2022
Star Citizen : Patch alpha 3.17
L'équipage Millenium Star Citizen a besoin de vous !

Guides

à découvrir

Star Citizen : Achat et location de vaisseaux
Star Citizen : Guide des commandes
Quel pack choisir sur Star Citizen ?