Bonjour,
Dans le cadre de mes travaux de thèse, j'ai développé deux jeux sérieux pour l'apprentissage des fondamentaux de la programmation. Le principe consiste à permettre aux étudiants d'interagir avec les entités d'un jeu de stratégie temps réel par l'intermédiaire de programmes informatiques. Les deux jeux sérieux que j'ai conçu sont basés sur le jeu "Kernel Panic" (un jeu existant : http://springrts.com/wiki/Kernel_Panic) et la bibliothèque Prog&Play (j'ai développé plusieurs interfaces dont en C, Java, Ada, OCaml et Scratch).
En ce qui concerne Scratch, j'ai conçu un patch pour la version 1.4 qui ajoute une nouvelle catégorie et les blocs associés de manière à pouvoir programmer les entités du jeu.
Peut être que mon travail intéressera la communauté francophone de Scratch et si c'est le cas, vous trouverez plus d'informations à l'adresse suivante : http://www.irit.fr/ProgAndPlay
Last edited by Mitmat (2011-10-17 06:35:22)
Offline
Bonjour Mitmat
Je me suis connecté sur tes pages web , cela dépasse largement mes compétences.
Je t'envoie un courriel.
Je vais essayer de trouver un moyen de mettre en évidence ton travail.
Merci encore
Offline
Bonjour Mitmat
Merci d'avoir mis ces informations en ligne.
J'avoue que j'ignorai l'existence de ces jeux (dans un univers inspiré de Tron) très intéressants pédagogiquement pour les apprentis programmeurs. J'ai suivi le guide d'installation et testé l'interface Scratch. Pour un scratcheur la présence de toutes ces nouvelles briques rouges est un peu déroutante : l'action ne se situant plus dans la petite fenétre propre à Scrath mais dans une autre fenétre. Mais pas de problèmes, en modifiant l'exemple j'ai réalisé quelques tests, maintenant pour aller plus loin il me faut connaitre avec précision les règles des jeux. De longues heures d'études en perspective ...
J'ai parcouru aussi votre thèse et lu avec attention certains chapitres. J'ai été étonné par la baisse du nombre d'étudiants en informatique, j'en été resté aux années 80
(cf Interview Bac )
Le nombre d'abandon en cours de formation est aussi préoccupant. Cela justifie votre recherche de nouveaux moyens de présentation des notions afin de jouer sur le levier motivation.
Pour les étudiants qui voudraient utiliser Scratch il faut conseiller BYOB 3.0 de Jens
BYOB qui ajoute des fonctionnalités à Scratch (récursivité, créations de blocs etc...). Des étudiants ont utilisé BYOB pour créer Panther qui est une extension de Scratch.
A noter, les programmes de l'enseignant italien s_federici programmés avec BYOB : miniC++v2.0 et miniLogov1.0 miniC++ .
Comme icecool44, je pense que votre travail devrait apparaitre par exemple dans Scratch Educ ou bien dans le forum Anglais ( et beaucoup de chapitres de votre thèse seraient lu avec profit par les enseignants utilisant Scratch ).
Je fais confiance à icecool44 pour cela.
Merci encore.
Offline
mathjp wrote:
Bonjour Mitmat
Comme icecool44, je pense que votre travail devrait apparaitre par exemple dans Scratch Educ ou bien dans le forum Anglais ( et beaucoup de chapitres de votre thèse seraient lu avec profit par les enseignants utilisant Scratch ).
Je fais confiance à icecool44 pour cela.
Merci encore.
Hummm
Mes compétencesdans le domaine de la traduction sont tout de même limitée.
C'est vrai que le ScratchED serait une bonne solution, mais c'est sur le forum anglais que Mitmat aurait plus de chance d'attirer l'attention des concepteurs de Scratch.
Bon courage
Offline
Bonjour icecool44
Je pense qu'il n'est pas envisageable de faire une traduction de la thèse.
Le plus simple est de mettre un post identique en anglais dans le forum anglais sous la rubrique Advenced Topics (les pages web de Mitmat sont lisibles en Anglais). Je pense que Mitmat peut le faire. Cette rubrique est fréquentée par les jeunes Scratcheurs qui ont travaillé sur Panther et qui connaissent bien le langage Squeak, ils comprendront la portée de ce travail immédiatement.
J'ai averti déjà Jens, sa réponse "Wow ! This does look interesting..."
Pour Scratch Ed, il faudrait signaler en Français l'existence de ce travail et surtout de la thèse. La première partie "Etat de l'Art" est très intéressante.
Je suis très content de découvrir de nouvelles idées dans le forum français. Comme toi, j'étais désolé de trouver des informations qui ne concernaient pas la pratique de Scratch.
Last edited by mathjp (2011-04-18 11:08:52)
Offline
Bonjour,
Je suis ravi que mon travail vous intéresse.
mathjp wrote:
Le plus simple est de mettre un post identique en anglais dans le forum anglais sous la rubrique Advenced Topics (les pages web de Mitmat sont lisibles en Anglais). Je pense que Mitmat peut le faire.
J'ai déjà créé un post dans le forum anglais dans la rubrique "Advenced Topics" : http://scratch.mit.edu/forums/viewtopic.php?id=60910, il faut d'ailleurs que je réponde à la question qui m'a été posé.
mathjp wrote:
Pour Scratch Ed, il faudrait signaler en Français l'existence de ce travail et surtout de la thèse. La première partie "L'état des lieux" est très intéressante.
Bonne idée, je vais le faire
mathjp wrote:
en modifiant l'exemple j'ai réalisé quelques tests, maintenant pour aller plus loin il me faut connaitre avec précision les règles des jeux. De longues heures d'études en perspective ...
Quelques éléments de réponse. En fait la bibliothèque logicielle que j'ai conçu s'appelle Prog&Play. Elle fournit un certain nombre de fonctions pour interagir avec un jeu de stratégie temps réel (ou STR). J'ai développé plusieurs interfaces à cette bibliothèque dont celle en Scratch (A noter que je n'ai pas encore mené d'expérimentations en contexte réel d'apprentissage avec cette interface).
Donc pour résumer avec Scratch et l'interface Prog&Play, il est possible de programmer les unités d'un jeu de STR compatible avec Prog&Play. Quelques exemples de jeux de STR connus : Dune 2, Age Of Empire, Warcraft... Pour ceux qui ne connaissent pas les jeux de STR, je les présentent dans le deuxième chapitre de ma thèse (ftp://ftp.irit.fr/IRIT/VORTEX/Muratet_these.pdf)
J'ai donc rendu compatible avec Prog&Play un moteur de jeu de STR particulier : Spring (http://springrts.com/). Par conséquent, tous les jeux fonctionnant sur ce moteur sont également compatibles. Pour mes expérimentations j'ai utilisé le jeu "Kernel Panic" (http://springrts.com/wiki/Kernel_Panic). Sur la base de ce jeu, j'ai conçu deux jeux sérieux : "Kernel Panic Campaign" et "Byte Battle".
Le premier (Kernel Panic Campaign) tente de motiver l'étudiant par l'intermédiaire d'un scenario décomposé en missions. Chaque mission propose de réaliser un objectif dans le contexte du jeu (exemple : déplacer une unité, déplacer un groupe d'unités, attaquer une position adverse...). Pour atteindre chaque objectif, le joueur doit réaliser des programmes informatiques. L'idée est que chaque mission incite le joueur à mobiliser des compétences supplémentaires (exemple : utilisation d'une structure de contrôle conditionnelle à la mission 2, d'une structure de contrôle itérative à la mission 3, ...).
Le deuxième (Byte Battle) mise sur la compétition pour inciter les étudiants à concevoir et implémenter leur stratégie de jeu sous la forme de programmes. Ce jeu se joue à deux joueurs en réseau local (un joueur peut être incarné par l'ordinateur où trois niveaux de difficulté existent). Dans ce jeu, chaque joueur contrôle le même nombre d'unités, l'objectif est de détruire toutes les unités de l'adversaire. L'issue du combat dépend donc seulement de la manière dont les unités sont programmées.
Donc pour tenter de finir la campagne de "Kernel Panic Campaign" ou de battre les trois niveaux de difficulté de "Byte Battle" le joueur doit utiliser une des interfaces de Prog&Play et pourquoi pas celle en Scratch Mais quelque soit l'interface le principe est le même, à l'aide des fonctions (ou blocks) le joueur peut :
1 - accéder aux données du jeu comme la largeur de la carte de jeu, la position d'une unité, son capital santé, ...
2 - donner des ordres à ses unités comme se déplacer à une position particulière, attaquer une unité adverse, construire un bâtiment, ...
Last edited by Mitmat (2011-10-17 06:36:54)
Offline