Forums Développement Multimédia

Aller au contenu

Un jeu pour apprendre Python !

DETENTE

18 réponses à ce sujet

#1 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 08 November 2012 - 17:12 PM

C'est drolement bien pense !

http://www.checkio.org/welcome/

Cela me rappelle un peu l'idee des battle sur le forum, peut-etre pourrions nous nous en inspirer ?

#2 dcz.switcher

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 2530 messages

Posté 08 November 2012 - 20:23 PM

Excellente idée, utiliser le jeu pour apprendre est une bonne approche.

Est-ce que tu as une idée sur le concept qu'on pourrait développer ?

J'imagine bien quelque chose comme le jeu de la vie où on commence par gérer des cellules, très limitées en possibilités puis des êtres plus évolués qui peuvent se déplacer voir même interagir.

On aborde ainsi les notions très progressivement.
"Ce que l'on conçoit bien s'énonce clairement et les mots pour le dire arrivent aisément"

embryon de site

#3 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 08 November 2012 - 20:46 PM

Ha oui j'aime bien cette idee, et du coup, plus tu prend de l'experience en As3, plus ta cellule est evoluee. Mais il faudrait se mettre une difficulte de depart, est-ce que le jeu est accessible a des personnes n'ayant aucune notion de code, ou faut il avoir un certain niveau pour pouvoir jouer ...

L'ideal serait que se soit accessible a chacun, mais dur a realiser ...

#4 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 08 November 2012 - 22:51 PM

Yop,

Citation

le jeu de la vie où on commence par gérer des cellules, très limitées en possibilités puis des êtres plus évolués qui peuvent se déplacer voir même interagir.

Spore .... ;-)


Citation

utiliser le jeu pour apprendre est une bonne approche.

En fait d'après ce que j'ai compris, ça va beaucoup plus loin que ça.
J'étais dubitatif alors je me suis inscrit pour voir, j'ai commencé à jouer, c'est à peu près ce que je pensai.
C'est un "réseau social" monté sous forme de "jeu" à énigmes, les énigmes c'est du code à résoudre.

Il y a la partie "solo" où tu doit résoudre des problématiques simples pour ton apprentissage, et la partie "open world" où tu peux créer tes propres défis et les soumettre aux autres "joueurs/codeurs" (appelons-les, les "joudeurs".....). Tu peux suivre la progression des énigmes et les propositions de résolution, ou en proposer de nouvelles. Les énigmes sont montées sous la forme de "cahier de vacances", un visuel, un petit texte pour scénariser un peu et un bloc de code.

On ne parle donc pas vraiment de "jeu", mais de communauté (ou alors j'ai raté un gros truc).
L'environnement est juste habillé "jeu" pour que ça passe mieux mais en fait il n'est pas question de "jeu vidéo" ;-)
C'est une suite de défis de code, du plus simple au plus complexe.

Citation

L'ideal serait que se soit accessible a chacun, mais dur a realiser ...

Bah du coup non, pas vraiment ;-)
Le "jeu" solo c'est juste une série d'exercices que tu dois réussir à résoudre pour débloquer les niveaux suivants.
Plus tu avance, plus c'est complexe, et quand tu as fini tout le "jeu" solo tu poste tes propres énigmes...
Et du coup tu bascule dans le jeu "open world" où tu lance des défis aux autres joueurs qui ont fini l'apprentissage.
La difficulté c'est plus de monter le réseau social en fait ;-)


Du coup ........

Citation

Est-ce que tu as une idée sur le concept qu'on pourrait développer ?

Je propose :

Citation

utiliser le jeu pour apprendre

:mrgreen:


Donc monter un vrai jeu vidéo (moteur 3D ou 2D) avec une quête principale (la phase apprentissage) puis un "open world" où tu peux créer des choses pour faire évoluer le jeu ou défier les autres joueurs.

Spore est un très bon terrain de jeu pour ça, on part de la phase "cellule", on passe par plusieurs phases et on fini en mode "espace" où on a sa planète au sein d'une galaxie.

La partie "évolution" (qui va de "cellule" à début de "espace") pourrait proposer différentes possibilités pour résoudre des énigmes (corriger un code, en compléter un, en créer un spécifique, résoudre un problème de math, etc...), selon les méthodes choisies son "espèce" va suivre tel ou tel alignement. Ce qui en résulte à la fin de la partie "évolution" détermine les caractéristiques de l'espèce qu'on représente.

Puis on entre en partie "espace" où chaque joueur à sa propre planète au sein d'une galaxie, reste à imaginer un moyen pour qu'ils se lancent des défis, sans doute en leur permettant de coloniser d'autres planètes comme dans Spore, mais à coup d’énigmes (je te pose un défi, si tu le résout pas en un certain délais raisonnable je prend possession de ta planète et si il s'agit de la dernière planète de ton empire tu retourne en mode "évolution" ailleurs).

Il y a tout un tas de règles qui peuvent être mises en place, le centre de la galaxie pourrait contenir "la grande bibliothèque galactique", l'endroit où tous les joueurs peuvent demander de l'aide et chercher de l'info, des tutos, voir les derniers ajouts, ect... (la partie réseau social).

On peu aussi laisser la possibilité aux joueurs de coder ce qu'ils veulent sur leur planète pour la faire évoluer, je veux dire "in game", c'est à dire agir directement sur le jeu via le code, mais uniquement sur sa planète mère (sa zone test)... Lorsqu'un joueur veut faire sortir une de ses "inventions" de sa planète, il la propose à la "bibliothèque galactique", si elle est viable elle est mise à dispo des autres joueurs, et ainsi chacun peut faire évoluer le jeu.

Bref une galaxie ça laisse de la place à l'imagination. ;-)

:jesors:

#5 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 09 November 2012 - 04:38 AM

Moi j'aime bien l'idée, ça rejoins ce qui avait commencé a être fait sur les mini défis mais en y regroupant le coté tutoriel, je vois aussi beaucoup de débutant passer sur le forum, qui cherchent un moyen d'apprendre comment programmer, cela pourrait franchement les aider a débuter !

#6 Kosic

    Ceinture Noire

  • Community Manager
  • PipPipPipPipPipPipPip
  • 390 messages

Posté 09 November 2012 - 06:36 AM

Je ferai une petite rectif. Plutôt que prendre une planète à un autre joueur les joueurs pourraient créer une planète nouvelle et mettre en défi sa colonisation. Ainsi la propagation se ferait plus rapidement et le côté participatif en serait enrichi.
Genre :

"Découvert nouvelle planète inexplorée. Coordonnées xx/nn. Type AAA* Qui la colonisera ?"
"La beauté est dans dans l'œil comme le doigt du sage qui montre la lune de l'idiot qui regarde."
J'me comprends…

Illustrator and I

#7 Nataly

    Community Jane

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 5783 messages

Posté 09 November 2012 - 11:04 AM

:oops: :oops: :oops: j'comprends rin :oops: :oops: :oops:

…mais j'ai vu deux mots qui me plaisent bien : tuto et jeu ;) alors quand ça prendra une forme plus tangible, n'hésitez pas à me faire signe. Peut-être qu'en m'expliquant lentement… :roll:
Le savoir est le seul bien qui s'accroit quand on le partage
une tartine de tutos

#8 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 09 November 2012 - 13:51 PM

Pour Nath, résumé de l'épisode précédent :

Ce que Draad montre est un réseau social monté sous la forme d'un jeu d'énigmes.
L'idée serait non pas de monter un réseau social de la sorte mais de se servir du concept "apprendre tout en jouant" sous la forme d'un vrai jeu vidéo.

Ce jeu vidéo aurait une interface classique de jeu vidéo (moteur 3D).
A la différence des autres jeux pour progresser il ne faut pas se "battre" à coup de laser ect... mais résoudre des problématiques.
Ces problématiques seraient présentées sous forme d'exercices à résoudre par l’intermédiaire du code.

Le jeu comporterai deux phases.

La première serait la phase "évolution", un jeu "solo" où on part d'une amibe pour se développer jusqu'à la colonisation de sa planète et l'accession à l'espace. Le principe dans cette phase serait de proposer des séries d'exercices que l'on doit résoudre pour progresser, ces exercices prennent la forme de programmes à créer, corriger ou améliorer.

La phase "évolution" peut être découpée en 4 parties :
- Cellule : faire évoluer sa cellule vers une forme de vie viable (la cellule doit survivre)
- Animal : on sort de l'eau pour aller sur la terre ferme, il faut réussir à faire survivre un groupe d'individus (construire un nid)
- Tribu : il faut faire évoluer et survivre une tribu d'individus en structurant leur mode de vie social (construire un village)
- Colonie : la tribu est évolué et doit accéder à une technologie suffisante pour atteindre l'espace (construire une fusée)

La phase "espace" est accessible lorsque le "joueur" à résolu toutes les énigmes et atteint un niveau suffisant en programmation.
Dans cette phase, le joueur dispose de sa propre planète (qu'il vient de coloniser) au sein d'une galaxie.
Il peut alors rencontrer d'autres joueurs et leur lancer des défis, créer des alliances, etc....
Les défis se présentent sous la forme de code (programme) à corriger, nettoyer, résoudre, etc...
Dans cette phase il existe également un point central de ralliement, le centre de la galaxie où se trouve "la grande bibliothèque", l'endroit où on peut trouver les tutos, solutions, infos, évolutions diverses etc....

Pour que le jeu ne reste pas stagnant, on peu proposer aux joueurs d'intervenir directement sur le jeu (client ouvert à la programmation), afin de développer de nouvelles choses (véhicules, bâtiments, armes, effets, outils de terraformation, ....... tout ce qu'on peut imaginer), et limiter ce type de "tests" à leur propre planète (afin que les modifications au programme ne puissent impacter les autres joueurs). Si un joueur souhaite propager son "invention" aux autres joueurs, il peut le proposer à la "grande bibliothèque", si celle-ci valide l’innovation elle la rend disponible aux autres joueurs. Ceci permet donc de laisser la liberté aux joueurs de développer des parties du jeu ou de les faire évoluer.

Le but de la phase "évolution" est d'aider les développeurs débutants à prendre en main le code, il est drivé, guidé, et doit agir dans un cadre défini (énigmes prédéterminées).

La but de la phase "espace" est de laisser la liberté aux développeurs plus évolués de créer leurs propres énigmes et accessoires, cela peut aller d'un appel à l'aide pour résoudre un problème (en arrière salle cela veut dire : "merde je sais pas résoudre ça, je vais faire appel à la communauté, je propose mon problème à la bibliothèque pour voir si d'autres peuvent le résoudre"), jusqu'à la création de modules directement intégrés au jeu général (en arrière salle : "j'ai envie de créer des animaux en libertés sur ma planète, je modifie le programme du jeu pour ajouter le code de mes animaux et le tester sur ma planète, si ça marche je le propose à la bibliothèque pour mettre cet ajout à dispo de tout le monde"). Un système de vote ou de suivit peut être mis en place à la bibliothèque pour que les autres joueurs notent, corrigent, améliorent, les évolutions des uns et des autres, voter pour leurs évolutions préférées, suivre un programmeur qui fait plein de choses intéressantes, etc....

Voilà globalement l'idée, c'est très inspiré du jeu "Spore" sorti en 2008 (faire une recherche sur Youtube pour voir des démos du jeu), mais le système d'évolution est lié directement à la résolution de problèmes, à la conception de code et modification du client du jeu.

Bon après c'est juste une idée comme ça, mais ça permettrait de monter un réseau sous forme d'un vrai jeu, avec une phase où les débutants apprennent à prendre en main un programme, ils sont tranquille et on ne vient pas les embêter sur leur planète, et une phase où ils sont considérés comme suffisamment avancés pour rencontrer les autres joueurs et leur proposer des défis de programmation ou participer à l'élaboration générale du jeu.

#9 Nataly

    Community Jane

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 5783 messages

Posté 10 November 2012 - 11:22 AM

:oops: merci de la redite :oops:

ce que je n'imagine pas c'est le rapport entre colonisation de l'espace et exercices

Citation

on part d'une amibe pour se développer jusqu'à la colonisation de sa planète et l'accession à l'espace. Le principe dans cette phase serait de proposer des séries d'exercices que l'on doit résoudre pour progresser, ces exercices prennent la forme de programmes à créer, corriger ou améliorer.

genre je "résous" l'exercice 1 et hop ma cellule se dédouble, le deuxième hop j'en ai 4… 10 exos/enigmes plus tard j'ai une bestiole ?

le rapport entre scissiparité et enigmes/exos me reste étranger. Que d'un bout de code dépende l'organisation sociale ou structurelle du village de la ville voire de la mégapole, la génération d'une pioche ou de la cathédrale st Jacques, je vois pas bien.

C'est sans doute ce qu'il se passe dans le "jeu" proposé par Draad.
je n'ai vraiment pas dépassé le stade du survol vu que ces gens s'adressent entre eux à eux, j'entends les locuteurs anglophones.

mes recherches youTube m'ont vite lassée, mais j'imagine ce que vous imaginez du coup (graphiquement).

Ça me parait bien ambitieux, mais

… je suis prête à dépasser mes résistances à refaire ce qui a été inventé par d'autres, juste pour le plaisir de le faire en franÇais :twisted: et surtout, je sais déjà à quel poste je pourrai participer :P

Je m'inscris donc au nombre des bonnes volontés :rolleyes:
Le savoir est le seul bien qui s'accroit quand on le partage
une tartine de tutos

#10 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 10 November 2012 - 11:29 AM

Citation

genre je "résous" l'exercice 1 et hop ma cellule se dédouble, le deuxième hop j'en ai 4… 10 exos/enigmes plus tard j'ai une bestiole ?

Non je vois plus ça comme "résoudre les énigmes de la nature", chaque stade de l'évolution (dans le monde réel) correspond à une avancée technologique ou biologique qui peut être décrite en problèmes mathématiques, logiques ou techniques. Par exemple, "la cellule a besoin de se nourrir, il faut lui créer une bouche et lui apprendre à s'en servir pour qu'elle puisse passer un stade d'évolution, la nature (autrement dit les créateurs du jeu) a commencé à créer un code pour ça, à toi de le compléter correctement."

Chaque évolution correspondra dans le jeu à une modification du comportement de la phase en cours (les cellules grossissent, bougent plus vite, savent se procurer de la nouriture, etc...) le joueur n'ayant pas forcément la main sur une cellule précise, elles évoluent au sein du jeu sans lui, il est juste le "créateur" pour cette planète.

Du coup, à nous, les créateurs du jeu, de symboliser des stades évolutifs par un exercice à résoudre, bien sur le final, c'est à dire l'accession à l'espace, sera le plus complexe car il faudra créer une fusée capable de vaincre la gravité, etc.... et de créer des phases de jeu correspondantes "in game".

Autrement dit :

- phase cellule = exercices très simples pour faire survivre la cellule
- phase animal = exercices légèrement plus complexes pour le faire marcher etc...
- phase tribu = exercices complexes d'organisation sociale, gestion de groupes d'individus, etc...
- phase colonisation = exercices difficiles de création de technologies viables

- phase espace = créations libres dans le contexte du jeu

C'est certes très ambitieux, reste à savoir si il y a des bonnes volontés pour essayer de faire ça.


EDIT : pour la base de référence avec Spore, je vous recomamnde de voir ce que le jeu d'origine peut donner ici :


Suivez les différentes vidéos jusqu'à la phase Espace pour bien voir l'ampleur de la chose, c'est un peu long mais c'est pour montrer, le concept est bien entendu à simplifier à l’extrême, il n'est pas question de refaire le même jeu mais de s'en inspirer.
La différence c'est que dans Spore on dispose d'un avatar que l'on doit faire évoluer en jouant (manger des trucs, tuer des bestioles, etc...) là il s'agirait plus de laisser les avatars se débrouiller, mais agir sur le code pour qu'ils fassent des choses différentes.

#11 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 10 November 2012 - 19:46 PM

Re,

Voici un exemple à l'arrache de ce que j'imagine.
Là c'est pour illustrer le tout début du jeu, l'exercice est mal choisi car trop complexe pour un début mais c'est pour donner une idée.
L'exemple est fonctionnel, vous devez répondre correctement pour animer la cellule.

Fichier(s) joint(s)



#12 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 11 November 2012 - 01:47 AM

Hihihi effectivement, bien trop compliqué pour commencer a mon avis. En tout cas, moi j'ai pas trouvé ... :oops:

Il faudrait vraiment prendre plus par la main, peut-être au début n'avoir que deux variables, déplacementX et déplacementY, et le joueur dois fournir ces variables pour que sa cellule, en passant dans un boucle de mouvement, aille d'un point A a un point B. Bref commencer aux bases des bases et n'augmenter la difficulté que petit a petit.

Mais sinon on voit bien l'idée grace a ton exemple, je pense que ça aidera Nataly a visualiser le tout !

#13 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 11 November 2012 - 11:35 AM

Citation

Hihihi effectivement, bien trop compliqué pour commencer a mon avis. En tout cas, moi j'ai pas trouvé ... :oops:
Oui c'est juste pour montrer ;-)
Par contre tu aurais du trouver :


delais = Math.random()*100
angle = Math.random()*Math.PI*2

x += Math.cos(angle)*4
y += Math.sin(angle)*4
 

Et sinon oui il faut commencer bien plus simple et évoluer assez rapidement, il faut aussi conserver l'aspect jeu et donc laisser le joueur chercher, si on le prend trop par la main il n'y a plus de "jeu", faut trouver un juste équilibre.

D'autre part, il faudrait séparer l'interface du jeu et celle de programmation, autrement dit il faut trouver un moyen d'ouvrir une fenêtre séparée qui permet de taper, gérer, mettre en forme le code (qui peut parfois être long), et que le code tapé s’intègre directement au client du jeu. Si au début on va guider avec de petits exercices simples , arrivé à un certain stade il faudra gérer des classes un peu plus complexes et on aura pas la place à mettre le jeu et le code dans la même fenêtre, il faut donc développer un client de programmation en AS intégré au jeu qui s'ouvre dans une fenêtre indépendante. Il faut également (surtout en phase "espace") pouvoir créer des classes sans avoir besoin de compiler le programme ou de le relancer, autrement dit trouver un système d'ajout de classes à la volée en cours de partie, idem pour les graphismes et les sons si on veut laisser la liberté au joueur de développer ses propres améliorations. Techniquement ce serait bien aussi d'avoir un petit navigateur intégré qui permettrait de voir et d'agir sur la structure du programme, avec l'arborescence des dossiers contenant le code etc..., bref il y a une très grosse partie technique à développer afin d'avoir une interface de programmation en temps réel.

#14 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 11 November 2012 - 21:05 PM

Hum, en effet le projet et peut-etre plus complexe que je ne l'avais imaginé ... il faudrait se concerter pour voir notre plan d'attaque !

#15 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 11 November 2012 - 21:44 PM

Sans réelles forces vives (j'entends par là la participation de développeurs chevronnés et motivés) c'est impossible, cela demanderai trop de temps et de moyens. L'idée est bonne (enfin je crois) mais elle demande énormément de travail pour parvenir à un résultat correct. Il y a des défis très intéressants à relever, mais ce n'est pas à deux ou trois qu'on y arrivera, donc pour moi avant de monter un plan d'attaque il nous faut des bonnes volontés prêtes à se lancer dans ce type d'aventure, et on en revient à ce qui a toujours bloqué les projets de ce type (dont certains en cours sur le forum), la constitution d'une équipe prête à aller au bout d'un projet.

Moi je veux bien m'inscrire en DA et/ou chef de projet, mais je n'aurai pas le temps ni les compétences nécessaires pour me charger de la partie développement, autrement dit, j'ai les idées et je vois comment les mettre en place mais je ne peux assumer leur réalisation ;-)

Il est également possible de fractionner la réalisation du jeu en deux parties, puisque la phase "évolution" est une partie "solo", il est possible de se concentrer uniquement sur elle, elle est plus simple à réaliser, puis de réfléchir à la phase "espace" ensuite, cependant c'est la phase "espace" qui apporte tout l'intérêt au jeu et sa pérennité.

#16 Nataly

    Community Jane

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 5783 messages

Posté 12 November 2012 - 12:43 PM

Oué ! Ayé ! J'imagine !

tu vois quand on lui explique longuement à la dame, elle finit par comprendre :mrgreen: (merci du temps dédié :Hola: )

C'est effectivement une idée enthousiasmante mais ô combien ambitieuse.
Il faut des compétences diverses et variées et c'est du job sur le long terme. Ecrire une série de tutos (même fleuve du genre de celles que je commets) c'est de la pipi de chat à côté :D

Il n'empêche… qu'en adaptant… je ne sais pas bien comment (mais je mets ds la machine à penser)…
Il n'empêche, que concevoir des exos spécifiques à ce type de "jeu" je postule sans plus attendre ;)
Il n'en reste pas moins que je rejoins Spi :

Voir le messageMonsieur Spi, le 11 November 2012 - 21:44 PM, dit :

Sans réelles forces vives c'est impossible […] Il y a des défis très intéressants à relever, mais ce n'est pas à deux ou trois qu'on y arrivera[…]

il est possible de se concentrer uniquement sur elle [partie solo], elle est plus simple à réaliser, puis de réfléchir à la phase "espace" ensuite.


En gros, l'idée est intéressante.
Il faut (drait ?) l'adapter en moins ambitieux (et plus réaliste)


[cogite] [cogite] [cogite] [cogite]
Le savoir est le seul bien qui s'accroit quand on le partage
une tartine de tutos

#17 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 12 November 2012 - 13:37 PM

Yop,

A mon avis, il faut conserver l'idée générale et la construire sur papier tranquillement en prenant son temps.
En attendant d'avoir cerné tous les tenants et aboutissants, il faut se monter un premier jet de test bien plus limité.
On peu imaginer commencer par la phase "cellule" uniquement, avec des tutos simples et lancer le mini jeu comme ça.
Si le jeu prend et que les gens sont en demande de plus de choses, on passe à la phase 2 : "animal" et on fait sortir les cellules de l'eau, etc... jusqu'à arriver à la phase "espace" et là on s'arrête et on vois pour monter une équipe le cas échéant. En gros ce sont les retours des gens à chaque phase de jeu qui vont déterminer l'existence de la phase suivante, ça marche on avance, ça marche pas on mets de côté et on fait autre chose le temps de trouver un concept qui tient la route.

Je vous propose donc de nous restreindre à la phase 1 pour le moment, et de réfléchir à une progression (tutos, exercices).

Le scénario :
"Une comète vient s'écraser dans les océans d'une planète vierge, elle contient les briques biologiques nécessaires à l'apparition de la vie. Peu après apparait la première cellule vivante, point de départ de votre nouvelle espèce, il va falloir survivre."

L'objectif :
Faire évoluer la cellule jusqu'à un organisme suffisamment complexe et adapté à son milieu pour survivre et sortir de l'eau (phase "animal").

Le gameplay :
Le joueur représente la nature, il doit agir sur le "code de la vie" pour faire évoluer la cellule (ou groupe de cellules) et l'adapter à la survie sur la planète. Il ne contrôle pas ce que fait la cellule, mais peut agir sur son développement (lui permettre de se déplacer, de se nourrir, de se reproduire, et globalement d'évoluer vers un groupe de cellules constituant les premiers animaux complexes dotés de sens (ouïe, vue, toucher, goût, odeur) et d'attributs biologiques (corps, yeux, oreilles, peau, bouche, armes défensives ou d'attaque, membres pour se déplacer, etc....). Le jeu est composé de deux phases, la phase "évolution" où le joueur doit résoudre un exercice, et la phase "animation" où il vois le résultat de ses modifications (point détaillé dans le paragraphe suivant).

Le concept :
Le but est de guider pas à pas le joueur dans la rédaction d'un code AS3 par l'intermédiaire d'exercices dont la difficulté est croissante.
La résolution (ou non) de chaque exercice à une influence directe sur le comportement de la cellule (ou individu) représenté dans le jeu.
Au fur et à mesure de la progression l'environnement s'adapte automatiquement, au départ il n'y a qu'une cellule qui doit apprendre les bases, passé cette série d'exercices simples l'environnement évolue (plusieurs cellules vivantes font leur apparition, il commence à y avoir une différenciation entre végétaux et animaux), afin que la cellule puisse avoir un nouveau terrain de jeu auquel s'adapter.

A aucun moment le joueur ne peut agir directement sur la cellule (ou individu) qui représente son espèce, les seules actions possibles sont au niveau du "code de la nature", c'est à dire apporter des évolutions génétiques à sa cellule à chaque nouvelle génération.

Le gameplay est découpé en deux parties, animation et code, le joueur influe sur le code à chaque nouvelle génération de la cellule pour lui ajouter des attributs, une fois le code créé il n'a plus la main et regarde le résultat de l'évolution qu'il a souhaité apporter, pendant quelques secondes la cellule évolue dans son environnement et doit réussir à survivre, si elle y parvient l'environnement se modifie et on passe à l'exercice suivant pour une nouvelle évolution liée à ce nouvel environnement. Prenons un exemple pour mieux comprendre :

1 - la cellule est seule au milieu de l'océan, elle se nourri par photosynthèse, pour survivre elle doit apprendre à se reproduire
1a - code : le joueur doit adapter, créer ou corriger un (ou une série de) code pour la reproduction (dupliquer un clip)
1b - animation : la cellule a appris à se reproduire, elle doit se diviser en un certain nombre de cellules en un temps défini pour gagner
1c - évolution : l'environnement se modifie, il a à présent plusieurs cellules qui vont se spécialiser (végétal ou animal)

2 - la cellule doit apprendre à se déplacer pour survivre et ne pas se faire écraser par les autres cellules
2a - code : le joueur doit adapter, créer ou corriger un (ou une série de) code pour le déplacement (déplacer un clip)
2b - animation : la cellule se déplace et doit réussir à atteindre un point précis en un délais défini pour gagner
1c - évolution : l'environnement se modifie, les cellules animales se déplacent, certaines se nourrissent à présent des autres

3 - la cellule doit apprendre à se nourrir pour survivre, il faut donc lui créer une bouche
etc.....

Il faut partir du plus simple et complexifier au fur et à mesure des évolutions.

#18 Monsieur Spi

  • Community Manager
  • PipPipPipPipPipPipPipPip
  • 6986 messages

Posté 17 December 2012 - 17:40 PM

Salut,

Bon notre "projet" semble mort né lol comme d'hab, cependant l'idée à fait son chemin puisque Code Hero est un jeu en cours de dev pour apprendre le Javascript sur Unity3D à partir d'un FPS, oui ça parrrait torturé dit comme ça mais voilà les infos, ce sera peut etre plus parlant :

http://www.kickstart...o-make-games-he

http://www.youtube.c...d&v=8Yd0OgFuR7k

#19 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 17 December 2012 - 21:56 PM

Coucou,

Mais non il est pas encore mort, mais tu as peut-etre fait peur a certains avec un si gros projet ^^. Moi en tout cas je trouve ca interressant comme projet, et j'aime bien le premier jet de cellules que tu as fait.

J'aimerais m'y engager mais ayant deja 1000 projets sur le feu ... je prefere ne pas m'engager si je pense ne pas pouvoir y bosser pour le moment.



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP