[Disponible] Helium Rain

Space opera pour PC, maintenant sur Steam !

Le problème exposé dans ce sujet a été résolu.

Et hop, une petite nouvelle : la tourelle Hades, conçue pour les destroyers. Petite, petite, pas tant que ça : les canon mesurent 14 mètres de long et acceptent des munitions de 400mm !

La tourelle Hades a son état naturel

Un Invader avec quatre tourelles

Petit bonus cette fois-ci : le modèle 3D de la tourelle est visible sur ArtStation. N'hésitez pas à y faire un tour !

C'est joli, mais j'ai l'impression que les moteurs obstruent une bonne partie de l'angle de tir des tourelles. Il faudrait faire un design en croix au niveau des tourelles, pour les faire passer au delà des moteurs sans bloquer la sortie de ceux si, mais je ne suis pas sur du côté esthétique de la chose.

Ça donne effectivement l'impression que les canons sont "tenus à bout de bras", si la jonction entre le socle et le canon était plus massive et enrobait la base du canon, je pense que ça donnerait plus une impression de solidité. En tout cas, magnifique boulot :)

C'est joli, mais j'ai l'impression que les moteurs obstruent une bonne partie de l'angle de tir des tourelles. Il faudrait faire un design en croix au niveau des tourelles, pour les faire passer au delà des moteurs sans bloquer la sortie de ceux si, mais je ne suis pas sur du côté esthétique de la chose.

Natalya

On dirait, mais après réflexion pas tant que ça je trouve.

Beau boulot en tout cas !

+0 -0

C'est joli, mais j'ai l'impression que les moteurs obstruent une bonne partie de l'angle de tir des tourelles. Il faudrait faire un design en croix au niveau des tourelles, pour les faire passer au delà des moteurs sans bloquer la sortie de ceux si, mais je ne suis pas sur du côté esthétique de la chose.

Natalya

Dans les faits, les tourelles sont positionnées de façon à minimiser le problème. En particulier, les deux tourelles verticales sont positionnées à l'extérieur des moteurs et peuvent tirer à l'horizontale. Les tourelles latérales, elles, peuvent tirer directement entre les moteurs et vers l'extérieur. Il y a des angles morts, mais ça reste très gérable.

Ça donne effectivement l'impression que les canons sont "tenus à bout de bras", si la jonction entre le socle et le canon était plus massive et enrobait la base du canon, je pense que ça donnerait plus une impression de solidité. En tout cas, magnifique boulot :)

Turambar

C'est plus ou moins voulu. On n'a pas les mêmes contraintes dans l'espace (le poids du canon n'est plus un phénomène important) et j'ai voulu dessiner quelque chose de massif et lourd, qui se bougera d'ailleurs à une vitesse réduite.

Je me demandais d'ailleurs, vu que dans l'espace y'a pas de frottement avec l'air, ça change pas un peu le design probable de la tourelle ? (Genre pas besoin de balles aérodynamiques, de canon aussi long etc.)

+1 -0

Je me demandais d'ailleurs, vu que dans l'espace y'a pas de frottement avec l'air, ça change pas un peu le design probable de la tourelle ? (Genre pas besoin de balles aérodynamiques, de canon aussi long etc.)

uriopass

La longueur du canon influence directement la précision des tirs, entre autres. La forme des projectiles est relativement fonctionnelle en orbite aussi : une large base pour servir d'appui aux gaz d'explosion, une pointe pour pénétrer la cible.

Petite mise à jour rapide…

Niavok a mis au point une IA redoutable pour affronter le joueur. Le pilote automatique est capable de naviguer dans un secteur, abattre des groupes d'ennemis, combattre en escadrille, éviter les collisions, se ravitailler à des stations…

La prochaine étape va être de rendre cette IA plus humaine, puisqu'il est pour l'instant absolument impossible de la vaincre en combat singulier. :-°

La prochaine étape va être de rendre cette IA plus humaine

Paradoxal. :D

Plus sérieusement, oui ce serait bien de ne pas la rendre (trop) invincible. J'aime vraiment bien les challenge cela dit. Une p'tite vidéo pour voir ça, siouplait ? :ange:

+8 -0

On n'a pas de résultat montrable pour l'instant, on n'aura pas de vidéo tout de suite, et la raison est aussi la réponse à ta question regz : actuellement, un combat symétrique entre deux IA est très aléatoire et extrêmement court, et donc insatisfaisant pour nous.

Un duel de vaisseaux identiques va faire se croiser les antagonistes, et au moins un des deux sera détruit dans les premières secondes de l'engagement parce que le pilote va viser les points mortels. Un joueur humain n'a strictement aucune chance puisque l'IA exploite à 100% les possibilités des vaisseaux, passe dynamiquement d'une cible à l'autre de façon opportuniste - si le vaisseau ciblé passe derrière un autre ennemi, cet autre ennemi va devenir la cible - et elle n'a aucun temps de réaction. La conclusion évidente de nos premiers essais, c'est que les pilotes humains sont terriblement inefficaces.

Le deuxième problème se montre dans des batailles symétriques en 10 contre 10 que nous utilisons comme test. L'aspect infaillible de l'IA fait que le premier vaisseau détruit dans un camp crée un déséquilibre exponentiel, les batailles se terminent donc fréquemment avec 9 vaisseaux quasi intacts dans le camp survivant par exemple, alors qu'on espérerait une victoire à la Pyrrhus.

Nos pistes de travail sur l'IA sont les suivantes :

  • rendre plus sûr le pilotage de combat pour ne jamais percuter un objet ;
  • introduire des temps de réaction, de l'imprécision, des erreurs et de l'aléatoire ;
  • rendre les vaisseaux plus résistants par rapport aux tirs ;
  • corriger les performances dans l'ensemble.

Super intéressant, comme souvent.

Juste en lisant ça :

introduire des temps de réaction, de l'imprécision, des erreurs et de l'aléatoire ;

Je me suis demandé par quelle distribution aléatoire ça serait le mieux modélisé. Aucune idée de la réponse mais quand vous plancherez sur le sujet je serai curieux de savoir comment vous avez modélisé ça.

Et à travers quels paramètres de la distribution le niveau de jeu (débutant, moyen, expert), s'ils existent est modélisé.

Bon courage pour la suite.

+4 -0

La conclusion évidente de nos premiers essais, c'est que les pilotes humains sont terriblement inefficaces.

Stranger

C'est pas nouveau comme info. :p

Plus sérieusement, l'IA s'occupera aussi de la gestion des ressources (entreprises) non ? Donc même en étant excellente en combat, on peut envisager qu'elle ne soit pas douée en économie et se ramène avec des vaisseaux pourris. ;)

+3 -0

Bonjour,

Premièrement, je viens de finir de lire les 23 pages de ce sujet, et je dois dire que je trouve ton projet et la façon que tu as de le mener vraiment très intéressant. De plus, la DA du jeu est plutôt originale et me plait beacoup. :)

Ensuite, j'ai une petite question : sur quel modèle pensez-vous (toi et/ou Niavok) vous baser pour créer une économie cohérente et assez complexe pour être ludique (je ne suis pas économiste, mais ça me semble très compliqué à mettre en place seulement avec une IA) ?

En tout cas ce qui a déjà été fait me parait de très bonne qualité et je te souhaite bonne chance pour la suite.

Jespar.

La majorité des échanges boursiers sont aujourd'hui faits par des ordinateurs, les modèles économiques ne doivent pas être vraiment inaccessibles aux ordinateurs. Et si le système a tendance à créer des pénuries et des surabondances, il n'en sera que plus réaliste ;)

PS: tout en créant de belles opportunités commerciales pour le joueur

+0 -0

La majorité des échanges boursiers sont aujourd'hui faits par des ordinateurs, les modèles économiques ne doivent pas être vraiment inaccessibles aux ordinateurs. Et si le système a tendance à créer des pénuries et des surabondances, il n'en sera que plus réaliste ;)

PS: tout en créant de belles opportunités commerciales pour le joueur

Natalya

En effet, ceci dit, les échanges sont tout de même faits pour servir des intérêts humains très divers et des réalités physiques imprévisibles rentrent souvent en compte… Pour prendre un exemple vidéo-ludique, il n'y a qu'à voire l'économie dans EVE Online… avec quelques dizaines de milliers de joueurs pour "gérer ça tout seul" ça a pris des années d'équilibrage à CCP pour rendre le tout viable… Alors seulement avec une IA… (Après, je le répète, je ne suis pas un expert…)

Pour ce qui est des pénuries et des surabondances, ce n'est pas simplement "mieux", c'est une nécessité (sinon c'est que le système est mauvais :D). En fait c'est ce que j'entendais par "un modèle cohérent" : un modèle réaliste. :)

Jespar.

avec quelques dizaines de milliers de joueurs pour "gérer ça tout seul" ça a pris des années d'équilibrage à CCP pour rendre le tout viable…

Jespar

C'est justement parce que ce sont des joueurs qu'il faut équilibrer le système. Il faut un système juste pour que tous les joueurs puissent s'en sortir. Si ce sont des IA, le taux de faillites n'est pas important, tant qu'il y a un mécanisme de création d'argent (une banque centrale) pour financer de nouveaux acteurs, le marché se portera bien. Ce qu'il y a de bien, c'est qu'on a même les mécanismes dans la réalité pour contrôler l'inflation (qui peut nuire au joueur). la limite, ça va être la puissance CPU disponible pour simuler l'univers.

Il faut voir qu'il y a plusieurs choses très différentes qui peuvent s'appeler IA dans Flare :

  • L'autopilote est une IA simple mais précise qui représente le pilotage automatique des vaisseaux. L'autopilote est bête et s'occupe de sous traiter des taches simples mais précises comme le docking. C'est dans le jeu une IA qui représente un IA dans l'univers du jeu. Il y a un ordinateur de bord par vaisseau.
  • Le pilote est une IA compliqué qui représente le cerveau d'un pilote humain au commande d'un vaisseau. Il y a un pilote par vaisseau et chaque pilote est indépendant (même si un jour il y aura peut-être des formations, chaque pilote garde les commandes de son vaisseau). Le but est que cette IA ait le même rôle que le joueur lorsque celui-ci pilote un vaisseau pour combattre, pour tous les vaisseaux que le joueur ne pilote pas. Comme cette IA représente un "humain", il se doit d'être faillible et limité, mais imprévisible. C'est de cette IA dont parle Stranger, et qu'il faut rend plus "humaine".
  • Il y a aura une 3ème IA qui représente le manager des compagnies adverses. Elle s'occupe que de la partie gestion et pas du tout de la partie combat. Cette IA peut représenter un comité de direction ou toute forme de management et n'a pas à paraître "humaine" mais comme elle agit à un niveau stratégique il va être déjà assez difficile de la rendre compétitive avec un joueur humain sans la faire tricher. Cette IA n'existe pas encore et n'est pas prête d'exister car l'implémentation de la partie économie n'a pas encore commencé.

Pour réduire l'infaillibilité on essaye de comprendre pourquoi un humain est "mauvais" et reproduire les erreurs. Par exemple actuellement, quand un vaisseau est en rotation l'IA sait exactement à quelle moment se mettre à freiner pour que le viseur s’arrête exactement sur la cible, sans s’arrêter avant et perdre du temps, et sans le dépasser. Quand ont a les paramètres de vol du vaisseau et de l'adversaire, c'est relativement facile à calculer. Un humain a plus ou moins accès à ses informations mais n'est pas capable de calculer en temps réel et précisement le timing du freinage et même s'il va faire, avec l'expérience une bonne approximation, il aura toujours besoin de plusieurs recalage pour arriver au bon endroit (exactement comme quand on déplace le curseur de sa souris sur un petit bouton: il y a plusieurs corrections de plus en plus fines). Quand le pilot IA fait une estimation de distance, vitesse, temps avant freinage, il doit pouvoir se planter. La difficulté est que dans le "cerveau" du pilote cette erreur doit rester la même et ne pas changer à chaque instant, mais au bout d'un moment, le pilote doit se rendre compte de son erreur, se remettre en cause et corriger cette erreur en en faisant une nouvelle, mais moins grande.

Concernant le temps de réaction, actuellement le pilote IA est capable de remettre en cause ses choix, comme changer de cible, tirer ou lancer une manœuvre toutes les 20 ms environ. Le cerveau humain a un temps de réaction minimal de 200 ms et pour mettre les IA sur un pied d'égalité il faut empêcher aux pilotes IA de changer d'idée en moins de 200 ms.

Pour ce qui est du niveau de jeux (débutant, moyen, expert), il suffira de faire varier les paramètres entre le pilot "inhumain" et le pilot un peu trop humain. Il n'y a pas de super modèle pour tout prévoir à l'avance, comme souvent ça sera de nombreux cycles de tests/réglages pour trouver les bonnes valeurs.

+10 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte