IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Intelligence artificielle Discussion :

Cherche avis sur une idée d'IA pour un rpg...


Sujet :

Intelligence artificielle

  1. #1
    Membre régulier Avatar de Neolander
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 88
    Points : 87
    Points
    87
    Par défaut Cherche avis sur une idée d'IA pour un rpg...
    Voilà : je réfléchis depuis quelques temps à la mise au point d'un rpg 2d (avec un tant soit peu de profondeur, pas un hack n slash à la diablo quoi...). Un des points sur lesquels je voudrais innover ce faisant (bah oui, je veux pas coder ça pour le plaisir de faire un truc pareil que les autres mais avec mon nom dessus...), c'est l'intelligence artificielle des persos, que je trouve encore trop limitée dans les jeux actuels par rapport à ce qu'on sait faire actuellement.

    Par exemple : je n'ai trouvé aucun rpg dans lequel les personnages ne soient pas ancrés dans leurs habitudes fermement, au point que c'en soit parfois drôle (dans oblivion, par exemple, les personnages font tous les jours EXACTEMENT la même chose en prenant toujours EXACTEMENT le même chemin, sauf cas de force majeure auquel cas ils cessent toute forme d'activité et réessayent un peu plus tard. Ainsi, si vous êtes sur le chemin d'un personnage qui sort de chez lui, il vous marchera dessus pendant un moment avant de se résigner à l'idée de vous dire... "bonjour !" ).

    Pourtant, les sims (c'est le meilleur exemple d'IA "humanisée" que je connaisse dans un jeu) ont montré que c'est possible de varier le comportement des personnages, en faisant que leurs décisions soient aléatoires MAIS influencées par une série de facteurs, tels leurs goûts (à priori statiques) et leurs envies (variant en fonction du temps), ou l'opinion qu'ils ont d'une personne dans le cas des interactions. Et même si on est toujours très loin de passer le test de Turing (surtout quand les sims s'enflamment en utilisant un barbecue), ce modèle du comportement humain donne une illusion de vie déjà nettement plus convaincante.

    Mon idée serait donc de créer une IA basée sur les idées des sims, mais adaptée à un rpg donc un style de jeu où le joueur contrôle un personnage qui est donc potentiellement capable de faire n'importe quoi dans la limite des actions disponibles. Par exemple, l'humeur d'un pnj (personnage non joueur, donc contrôlé par l'AI), son tempérament, et son opinion au sujet du pj (personnage joueur, contrôlé par le joueur) influencera sa réaction quand il le trouvera faisant le blocus de sa porte, de "demander aimablement qu'il se pousse" à "coller un pain au perso, le pousser violemment sur le côté, et passer quand même".

    Bien sûr, scriptage il y aurait quand même, mais pour les actions (comme aller d'un point à l'autre). L'innovation se situe dans le fait que les personnages fassent des CHOIX, et pas toujours les même actes avec stupidité et correction d'erreur minimale, telles des mécaniques à clé...

    Mais à priori, si ça n'a pas été déjà fait, il doit y avoir une raison, et je suppose que c'est la gourmandise en calculs : déterminer à chaque instant les décisions de tous les personnages du monde, intuitivement, ça semble assez mauvais pour la fluidité. C'est sans doute pour ça que les sims vivent dans un univers aussi fermé qu'une maison d'ailleurs.

    D'où une idée de varier la précision des calculs d'IA en fonction de la distance.
    Je m'explique : plus une personne est éloignée du joueur, moins souvent on met à jour les données la concernant, par exemple moins souvent on fait un test pour voir si elle va changer d'activité. On pourrait ainsi aller jusqu'à ne considérer que les pnj qu'à une certaine distance du joueur, mettant les autres en "sommeil" pour les "ranimer" quand le joueur s'en rapproche.

    Voilà, c'est une idée qui me paraissait intéressante (surtout sur le fait qu'avec une IA de ce type bien faite, on pourrait avoir un monde en mouvement au cours du temps, où on donne comme base à la machine la situation initiale et quelques scripts, et elle se débrouille, comme quand on fait des automates cellulaires... D'où un système qui devient imprévisible dans les limites de la cohérence si on le laisse tourner pendant... disons... un jour, et ça c'est classe). Mais comme je n'ai strictement JAMAIS programmé la moindre intelligence artificielle, je me dis que c'est possible que je me dirige droit vers un mur, et comme c'est assez ambitieux comme projet il vaut mieux que je le sache de suite, sinon je pense que ça va m'énerver ^^.

    Donc voilà, je vous demande, à vous programmeurs plus expérimentés en la matière qui connaissez déjà ce qu'il ne faut pas faire dans une certaine mesure : ça a l'air viable comme concept ou pas ?

    [Excusez moi si je me suis planté de forum, j'étais pas sûr entre celui là et "conception"...]

  2. #2
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 861
    Points
    11 861
    Par défaut
    Tu ne t'es pas planté de forum. Il s'agit bien d'intelligence artificielle.

    Ton idée n'est pas mauvaise. Ni irréalisable. Seulement, il faudra que tu fasse pas mal de tests.
    Je m'explique : tu ne pourras bien évidemment pas déterminer les choix de 1000 unités à chaque instant. Seulement, il y a plusieurs pistes à explorer.
    • Ne calculer les choix des unites qui se situent uniquement a moins de XXX metres.
    • Ecrire les choix sous forme de suites d actions dont la profondeur (le nombre d'actions de cette suite d'actions) dependra de la capacite de calcul.


    Ce ne sont que des idées.

    Il y a plusieurs techniques d'intelligence artificielle qui te permettraient de faire ça, dont certaines sont plutôt dites "instinctives", c'est à dire que tu te mets à la place de l'unité PNJ et tu essayes de te comporter comme il faudrait.
    D'autres techniques consistent à enseigner à ton IA comment se comporter.

    Il faudrait que tu commences à te renseigner sur les différentes techniques pour mieux concevoir ton IA.

  3. #3
    Membre régulier Avatar de Neolander
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 88
    Points : 87
    Points
    87
    Par défaut
    Citation Envoyé par Alp Voir le message
    • Ne calculer les choix des unites qui se situent uniquement a moins de XXX metres.
    Ca, j'y ai déjà pensé (surtout que ça va de pair avec le fait de tronçonner mon monde en carrés ou en hexagones et à n'en charger qu'une partie à la fois pour que la pauvre machine n'ait pas à se garder l'intégralité de l'univers du rpg en mémoire, ce qui se passe de façon plutôt bien gérée dans morrowind/oblivion au prix de quelques ralentissements )

    Citation Envoyé par Alp Voir le message
    • Ecrire les choix sous forme de suites d actions dont la profondeur (le nombre d'actions de cette suite d'actions) dependra de la capacite de calcul.
    En gros, je représente mes choix comme un arbre du style

    Actions
    => [se reposer, manger, boire, se distraire, discuter]
    => [[dormir, s'allonger, s'asseoir], [manger chez soi, manger ailleurs], [boire de l'eau, boire quelque chose de sucré, boire quelque chose d'alcoolisé], [faire un tour, lire, jouer avec quelque chose, jouer avec quelqu'un ou un animal], [<liste des personnes avec qui discuter>]]

    et ainsi de suite...
    Et plus la personne est éloignée, moins je vais profond dans l'arbre et plus je prend un choix par défaut. C'est ça ?

    Deuxième question : la capacité de calcul dépend de la machine sur laquelle on lance le jeu. Cela signifie-t'il laisser le joueur choisir son niveau de détail comme on fait pour les détails graphiques d'habitude, tester rapidement les performances de la machine sur un petit automate cellulaire ou je ne sais quoi pour évaluer directement le réglage le plus adapté, ou les deux ?

    Citation Envoyé par Alp Voir le message
    Il y a plusieurs techniques d'intelligence artificielle qui te permettraient de faire ça, dont certaines sont plutôt dites "instinctives", c'est à dire que tu te mets à la place de l'unité PNJ et tu essayes de te comporter comme il faudrait.
    D'autres techniques consistent à enseigner à ton IA comment se comporter.

    Il faudrait que tu commences à te renseigner sur les différentes techniques pour mieux concevoir ton IA.
    C'est vrai. Je commence donc dès maintenant : quelqu'un peut, s'il lui plaît, me faire un petit résumé (pas forcément exhaustif, j'imagine bien qu'il y en aurait des pages et des pages...) des techniques existantes avec une description rapide de chaque ?

  4. #4
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 861
    Points
    11 861
    Par défaut
    Citation Envoyé par Neolander Voir le message
    Ca, j'y ai déjà pensé (surtout que ça va de pair avec le fait de tronçonner mon monde en carrés ou en hexagones et à n'en charger qu'une partie à la fois pour que la pauvre machine n'ait pas à se garder l'intégralité de l'univers du rpg en mémoire, ce qui se passe de façon plutôt bien gérée dans morrowind/oblivion au prix de quelques ralentissements )
    Oui, ç'a l'air cohérent dans ta situation.


    Citation Envoyé par Neolander Voir le message
    En gros, je représente mes choix comme un arbre du style

    Actions
    => [se reposer, manger, boire, se distraire, discuter]
    => [[dormir, s'allonger, s'asseoir], [manger chez soi, manger ailleurs], [boire de l'eau, boire quelque chose de sucré, boire quelque chose d'alcoolisé], [faire un tour, lire, jouer avec quelque chose, jouer avec quelqu'un ou un animal], [<liste des personnes avec qui discuter>]]

    et ainsi de suite...
    Et plus la personne est éloignée, moins je vais profond dans l'arbre et plus je prend un choix par défaut. C'est ça ?
    C'est comme ça que j'envisageais les choses. Si les persos sont loin, tu remplis moins l'arbre et tu diminues sa profondeur par exemple.
    Ce que tu peux faire c'est, selon la puissance de l'ordi qui fait tourner le rpg, augmenter ou diminuer la profondeur "par défaut". En gros, ça consiste pour un ordi puissant à rajouter tant ou tant de profondeur à tous les arbres (ceux des persos qui sont près comme ceux des persos qui sont loin).

    Citation Envoyé par Neolander Voir le message
    Deuxième question : la capacité de calcul dépend de la machine sur laquelle on lance le jeu. Cela signifie-t'il laisser le joueur choisir son niveau de détail comme on fait pour les détails graphiques d'habitude, tester rapidement les performances de la machine sur un petit automate cellulaire ou je ne sais quoi pour évaluer directement le réglage le plus adapté, ou les deux ?
    Je dirais les deux. Tu proposes une option du genre "Trouver le meilleur choix pour ma machine", par exemple. Non ?


    Citation Envoyé par Neolander Voir le message
    C'est vrai. Je commence donc dès maintenant : quelqu'un peut me faire un petit résumé (pas forcément exhaustif) des techniques existantes ? ^^'
    Je vais essayer de te préparer ça, je le poste à la suite toute à l'heure.

  5. #5
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 861
    Points
    11 861
    Par défaut
    Tu peux commencer par explorer les réseaux bayésiens et l'algorithme MCMC (Markov Chain Monte-Carlo), la théorie de Dempster-Shafer, la logique floue.
    En fait, il y a beaucoup de proba derrière ce que tu cherches à faire. Il s'agit de la théorie de la décision. Si tu veux vraiment approfondir les choses, fais des recherches sur les chaînes de Markov, les filtres de Kalman, par exemple.

    Pour les prises de décisions dites "simples", tu peux regarder du côté des arbres/réseaux de décision, ainsi que du côté des systèmes experts s'appuyant sur la théorie de la décision.

    Pour les prises de décisions dites "complexes", les choses se compliquent pas mal et dans ce cas il faut vraiment que tu approfondisse un peu ce que tu auras appris sur la théorie de la décision.

    Ce que je te conseille, si ça t'intéresse vraiment, c'est un bouquin.
    Tu peux aller te renseigner sur les bouquins suivants :
    Réseaux Bayésiens
    Intelligence Artificielle (celui que je possède, vraiment génial mais cher )
    (peut-être même celui là que je n'avais pas vu jusqu'à aujourd'hui)

  6. #6
    Membre régulier Avatar de Neolander
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 88
    Points : 87
    Points
    87
    Par défaut
    Déjà, je vais rattrapper un oubli malencontrueux dans mon message précédent :


    Ensuite... Eh bien effectivement, je vais peut-être m'économiser un budget lecture, parce qu'après avoir essayé l'apprentissage du python via pdf (si bien fait que soit le pdf du Maître Swinnen), je crois que pour un sujet qui s'annonce nettement plus complexe, un ouvrage avec des vraies pages ne sera pas de trop...

    Ce qui me fait peur aussi c'est le "Il faut tout de même avoir de bonnes notions d'algorithmie" dans la critique d'"Intelligence artificielle".
    Ca veut dire de quel niveau ? Est-ce que quelques années d'expérience "instinctive" qui permettent de résoudre la plupart des exos d'algo et de programmation maple qu'on donne en prépa PCSI les doigt dans le nez ça suffit ou est-ce qu'il faudra que je pique ses polys à mon frangin en école d'info pour espérer comprendre quoi que ce soit ?

  7. #7
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 861
    Points
    11 861
    Par défaut
    Il faut savoir ce qu'est un arbre et toutes les choses qui vont avec, avoir des notions de mathématiques (il y a des passages qui réclament des notions "avancées" de maths mais ce n'est pas indispensable pour comprendre ce dont il retourne), ce genre de choses. Rien de démesuré.

    Par exemple, les Réseaux Bayésiens sont "simplement" de la proba présentée sous une forme permettant la résolution de problèmes de prise de décisions.

    Ne sois pas trop effrayé non plus. En cas, tu peux aller feuilleter le livre avant de l'acheter, plutôt que de le commander par Internet.

  8. #8
    Membre régulier Avatar de Neolander
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 88
    Points : 87
    Points
    87
    Par défaut
    Bah en ce qui me concerne ma librairie pourtant bien fournie sur beaucoup de sujets l'a pas en stock, et ça fait près de 7€ et deux heures l'aller-retour pour le quartier latin où j'aurais plein de librairies plus "pro" où le trouver, donc pour feuilleter un bouquin ça me paraît un peu abusé quand même

    Donc bon bah tant pis, commande à l'aveuglette, de toutes façons le droit français me donne 15 jours pour me faire rembourser en cas de pépin... nan ?

  9. #9
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 375
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 375
    Points : 20 436
    Points
    20 436
    Par défaut
    Citation Envoyé par Neolander Voir le message
    Voilà : je réfléchis depuis quelques temps à la mise au point d'un rpg 2d (avec un tant soit peu de profondeur, pas un hack n slash à la diablo quoi...
    Mon idée serait donc de créer une IA basée sur les idées des sims, mais adaptée à un rpg donc un style de jeu où le joueur contrôle un personnage qui est donc potentiellement capable de faire n'importe quoi dans la limite des actions disponibles.
    Neolander faut voir si c'est possible techniquement et je demeure assez sceptique.
    Avant de te lancer dans un tel projet et faire des animations et graphismes complexes , fais-un simple projet en Php ou un outil de dev simple..
    Par exemple tu peux jetter un coup d'oeil sur cette problèmatique :
    http://www.developpez.net/forums/sho...d.php?t=510193
    Sinon je pense que dans le futur oui les jeux auront des entités plus intelligentes et moins bornées que ce qu'il ya à l'heure actuelle..

  10. #10
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 861
    Points
    11 861
    Par défaut
    Techniquement c'est possible, mais ça sera moins puissant. Plus on pourra faire de calculs et plus les unités seront intelligentes et le nombre d'unités augmentera aussi (même les unités très loin agiront intelligemment, bien qu'elles ne soient pas immédiatement concernées).

  11. #11
    Membre régulier Avatar de Neolander
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 88
    Points : 87
    Points
    87
    Par défaut
    On peut effectivement penser que dans le futur les jeux auront des IA plus finaudes. Mais comment l'utilisera-t'on ?

    Ce que je vois comme IA "perfectionnées" actuelles, c'est dans les FPS et jeu de stratégie. Mais je n'ai vu que très peu d'IA créées à des buts plus "intellectuels". Par exemple, celle des Civilization est assez risible quand on sort du domaine militaire. Le seul exemple intéressant dans le monde moderne que je connaisse, c'est les sims et maintenant Spore, et ils sont centré sur un genre "gestion" que j'apprécie hélas modérément (pour ne pas dire que ça m'ennuie).

    C'est une question de priorité : les industries du jeu vidéo semblent penser qu'il faut des genres bien découpés. Mais c'est comme si on cherchait à étudier la mécanique des fluides en éprouvant une profonde répugnance vis-à-vis des mathématiques et de la chimie : c'est limiter sa pensée à des domaines réduits d'un milieu homogène !

    Au contraire, ce qui fait avancer les choses, c'est de mélanger les genres... Il n'y a qu'à voir comment le mélange stratégie/shoot de Team Fortress (ou Tremulous dans le monde libre) connaît un succès certain, avec comme autre exemple, toujours chez valve, le mélange réflexion/action de Portal. Mais j'ai l'impression que, de même que les chercheurs en recherche fondamentale sont mal payés, on n'aime apparemment pas cette catégorie d'originaux chez les créateurs vidéoludiques... Probablement parce que ce qui est nouveau est d'un succès incertain, et que la conception d'un jeu vidéo est loin d'être gratuite.

    Voilà pourquoi je demeure sceptique quand à l'hypothèse d'une évolution spontanée dans le bon sens du RPG dans les années à venir
    C'est comme supposer que le fait de bien écrire revienne à la mode, quand on voit le style d'orthographe et de grammaire pseudo-française qui a une fâcheuse tendance à pulluler sur internet et sur les copies de ma mère au collège, qui se désole régulièrement du fait que plus ça va, moins ses élèves sont préoccupés par les majuscules en début de phrase, les virgules au milieu, et les fins de mots...

    J'essaye donc de faire un peu avancer le schmilblick à ma façon...

    Et j'ai testé des outils de dev simple, si si...

    J'ai commencé en delphi, mais delphi est mort, et lazarus, avouons-le, n'est pas à la hauteur avec son débuggage aproximatif et ses fichiers de 6 Mo (!). De plus, GDI et autres GTK ont leurs limites en termes de programmation de jeu, et delphi s'interface mal avec la SDL.
    J'ai essayé rpg maker, je l'ai trouvé trop limité et trop fermé sur le genre ff-like.
    J'ai essayé un langage plus "spécialisé" dans les jeux tout en restant newbisant, dark basic, je l'ai trouvé lourd, buggé, et contre-intuitif.
    Pour ce qui est de php et flash, flash linux m'a dégoûté de l'actionscript à vie, et mon hébergeur ne gère pas le php. De plus je n'aime pas l'idée du développement web, je préfère un jeu vidéo qu'on peut trimballer avec soi sur un cd, dvd, blu-ray, ou une clé usb, et fonctionnant indépendamment de la connexion internet.
    Ceci explique pourquoi je n'ai jeté au javascript, HTML, et autres CSS dont le fonctionnement dépend du navigateur web utilisé, qu'un rapide coup d'oeil...
    J'ai essayé le C++... hum... j'ai oublié l'idée. Les livres que j'ai trouvé étaient soit trop simplistes soit trop théoriques, ce qu'il me faudrait ce serait un prof et je préférerais faire des études de physique plus tard... Ce langage est beaucoup trop complexe pour moi, même si il est certainement très puissant une fois qu'on le maîtrise.
    Ma dernière trouvaille c'est le python, pour l'instant je le trouve à la fois relativement simple et puissant, même si c'est sûr que niveau IDE c'est un peu la misère...

    Donc mes petits projets je les fais en python désormais. C'est ma définition d'un outil de dev pas forcément simple (à cause du manque de libs disponibles) mais vraiment très équilibré. Voilà.
    Et du reste, au risque de me répéter par rapport à un autre topic, je dirais que si je ne me lançais pas sérieusement dans un projet nettement au-dessus de mon niveau de temps en temps, j'en serais toujours à coder des hello world, ou dans d'autres domaines...
    -Je jouerais la gamme de do majeur merveilleusement, à l'exclusion de toute autre mélodie.
    -Je ne serais pas en prépa.
    -Je n'aurais jamais essayé de marcher donc je serais toujours à quatre pattes voire en train de ramper en grenouillère.
    -Je continuerais à contempler un logo windows à chaque démarrage de mon ordinateur et à pester contre l'impossibilité de mettre deux plugins de pitch shifting simultanément dans cubase SX sans tuer mon processeur (tout en me demandant pourquoi je suis en train d'utiliser ce logiciel).
    -J'aurais 15 kilos de trop parce que j'irais au bahut en bus et pas en vélo...

    Donc bon, même si des fois ça rate (genre quand un prof vous claque la porte au nez le matin parce qu'on a déraillé), oser quelque chose de gonflé de temps en temps, ça a du bon...

  12. #12
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 861
    Points
    11 861
    Par défaut
    Je ne pense pas que tu ais à te justifier. Il ne faut pas se baser sur l'âge ou quoi pour savoir ce dont on est capable. Ce qu'ont voulu te dire les gens, c'est qu'un projet tel que tu l'as décrit au début prend des années à des grosses équipes de dev, alors à une personne toute seule qui ne fait pas ça à longueur de journée...

    Par contre, tu peux commencer par la 2D, chercher à se faire comporter correctement des images de persos figées, ...
    Au fur et à mesure, tu pourras compliquer

    Enfin à toi de voir... Je pense que je t'ai donné des pistes assez vastes pour que tu ais de quoi faire.

  13. #13
    Membre régulier Avatar de Neolander
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 88
    Points : 87
    Points
    87
    Par défaut
    Je sais bien que j'en ai pour très longtemps. ^^
    Le petit travail de conception que j'ai déjà fait me l'aurait montré si je l'ignorais : pour concevoir une ébauche de trois pauvres classes, en me contentant d'une explication rapide du fonctionnement de chaque fonction, et du rôle de chaque propriété, à chaque fois, il m'a fallu... ça doit bien faire deux semaines que je bosse sur ce jeu je crois, non ? ^^"

    En tous cas je suis très heureux d'avoir, pour une fois, commencé à étudier mon programme sur papier avant de me lancer dans le code : si j'avais dû faire subir à celui-ci le nombre de révisions que mes plans ont subi depuis que j'ai commencé...

    Pour la 2d, je compte même en faire d'un bout à l'autre, alors...
    La 2d...
    -Est (bien) plus facile à gérer
    -Se démode moins facilement (j'ai rejoué à ocarina of times et a link to the past récemment... la différence est flagrante !)
    -Permet de gagner une importante puissance de calcul qui saura ensuite être utilisée pour des choses plus utiles que la cosmétique, comme... l'IA par exemple
    -Est relativement plus simple à dessiner : essayez de faire du velours avec des peluches qui dépassent quand on regarde de près en 3d, je vous souhaite bien du plaisir

    Sinon j'ai lu les deux premiers chapitres du livre ce week-end... et j'y ai découvert une idée intéressante à suivre : ne pas implémenter tous les objets dans la "mémoire" de mes pnj, juste ceux qu'ils connaissent bien : ça fera illusion vis-à-vis du joueur, et il y aurait toujours moyen de leur faire "apprendre" le rôle des nouveaux objets rencontrés sur leur route plus tard de façon empirique (en rajoutant un facteur "curiosité" influençant leurs décisions, et en leur faisant retenir à moyen terme ce qui s'est passé la dernière fois qu'ils ont essayé de tripoter cette chaudière allumée)...
    Ca m'éviterait de prévoir la réaction de l'IA à tous les types d'objets au monde lors de la conception de celui-ci, ce qui n'est pas plus mal (surtout que la fonction d'évaluation finirait par faire des pages et des pages, ce qui est probablement la chose au monde la plus proche d'un cauchemard de débuggeur ). Ca m'éviterait également de concevoir basiquement une IA différente par personnage, en en créant une qui s'adapte au personnage considéré, et juste une situation initiale par personnage...

    De toutes façons, à priori, la conception de la classe "Personnage" sera mon prochain gros travail, ensuite on verra pour l'IA quand j'aurais avancé dans la lecture de ce livre, parce que plus j'en lis plus je me rends compte que je ne sais rien

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/12/2014, 11h18
  2. Réponses: 0
    Dernier message: 26/05/2014, 17h47
  3. Réponses: 13
    Dernier message: 27/07/2011, 13h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo