Quelques jeux
Les jeux d'aventure et de type pointer-et-cliquer (point&click)
Un exemple, la série Syberia conçu par le dessinateur belge Benoît Sokal
Scribblenauts pour faire marcher son imagination
Un type de jeu interactif et non-linéaire : le visual novel
Mais Que signifient "interactif" et "non-linéaire" ?
Un exemple de jeu créé en partie en Slovaquie : https://milankazarka.itch.io/invisible-apartment
en français : https://traumendes_madchen.itch.io/
en italien : https://wearemuesli.itch.io/
Essayez ce petit jeu ici : Petit jeu d'automne ou à télécharger : goo.gl/KrwQir
Les outils pour créer des Visual novels : Ren'py (le plus connu et gratuit) tyranobuilder (peut-être plus facile d'utilisation, mais payant)
-----------------------------------------------------------------------------------------------------------------------------------
Scratch, un outil pour apprendre la programmation en créant des jeux ou d'autres projets grâce à des "briques" de code : https://scratch.mit.edu/users/St2phane/
Sur le même modèle de présentation, utilisez le compte Ukfmedia et créez votre petite animation.
Twine, un outil pour écrire des histoires interactives non-linéaires. A télécharger ou à utiliser en ligne.
Les passages
Lorsque vous créez une histoire, vous créez de petits épisodes (description, action, changement de lieux...) appelés "passage".
Vous liez chaque passage entre eux en indiquant entre [[double crochets]] les mots significatifs qui mèneront à la suite de l'histoire en ouvrant un nouveau passage.
Dans un même passage, nous pouvons avoir plusieurs ouvertures sur de nouveaux passages.
"Le réveil sonne. [[Vous vous levez tout de suite]] - à moins que [[quelques minutes de plus]] au lit..."
Lorsque vous indiquez des double crochets, vous ouvrez automatiquement un nouveau passage qui prendra pour nom les mots que vous avez indiqués. Il peut être plus pratique de donner un nom particulier au passage qui va s'ouvrir et que vous allez pouvoir réutiliser par la suite. Pour cela, faites suivre les mots que vous voulez entourer d'une barre droite | et du nom du passage.
Attention de toujours bien écrire le nom de ce passage (majuscules, espaces...)
"Le réveil sonne. [[Vous vous levez tout de suite|La cuisine]] - à moins que [[quelques minutes de plus|En retard]] au lit..."
Les variables
Vous pouvez ramasser sur votre chemin plein d'objets qui peuvent vous être utiles suivant l'aventure, la quête que mène le personnage de votre histoire. Vous pouvez sinon développer des compétences auxquelles on peut attribuer une valeur ou savoir si elle existe.
Pour définir votre objet, compétence ou autre donnée, vous pouvez utiliser (déclarer) une variable qui contiendra l'information que vous souhaitez. Cette information pourra changer selon vos désirs au cours de l'histoire.
Une variable peut contenir une information en toutes lettres ("chaîne de caractère" ou "string" que l'on met entre guillemets)
Une valeur numérique
Un état positif ou négatif (présence/absence - true/false). C'est un booléen ou boolean.
Imaginons que votre personnage est dans la cuisine pour prendre son petit-déjeuner. Vous lui laissez le choix entre thé et café (ouvrir un autre passage), de manger un croissant, de sucrer ou non :
Déclarer (set: ) sa variable en lui donnant un nom précédé du signe $
(set: $dejeuner to "du café")
(set: $croissant to 1)
(set: $sucre to false)
Pour pouvoir utiliser votre variable, vous allez l'afficher en l'imprimant (print:)
par exemple:
(set: $dejeuner to "du café")
(set: $croissant to 1)
Ce matin, vous décidez de prendre (print: $dejeuner) et (print: $croissant) croissant.
Pour utiliser la variable de type vrai/faux (true/false), vous allez utiliser un autre élément essentiel en informatique: la condition.
Qu'est-ce qu'une condition ?
La condition
Sur Twine, à la façon d'autres langages informatiques, la condition est indiquée en anglais de cette manière (if:), (else:) et (elseif:)
avec la $variable à vérifier pour (if:), suivi [entre crochets] de l'information que nous voulons afficher sous telle ou telle condition.
(set: $sucre to false)
(if: $sucre is true)[vous mettez un sucre dans votre café]
(else:)[Vous préférez votre café bien fort.]
Le joueur ne verra pas le code, seulement le résultat de son choix !
Remarque: Si les lignes de codes n'apparaissent pas, des lignes blanches les remplacent. Comme ce n'est pas très esthétique, vous pouvez entourer vos conditions d'accolades {avant et après}
Vous pouvez aussi vérifier les autres types de caractéristique d'une variable.
pour la chaîne de caractère
(set: $dejeuner to "du café")
(if: $dejeuner is "du café)[vous restez réveillé]
(else:)[Au bout d'une heure de cours, vous ressentez une petite fatigue]
Pour la valeur numérique
(if: $croissant < 1)[A 10h, votre estomac gronde si fort que tout le monde dans la classe se retourne]
(else:)[Vous êtes pleine d'énergie toute la matinée.]
Où publier ses histoires pour les partager ? en hébergement sur son site, en s'envoyant les fichiers qui sont sous format .html (à ouvrir avec un navigateur web), sur Philome.la (avec un compte Twitter) par exemple @ukfmediafr
Petits exercices Twine : http://philome.la/StTardy
Si vous connaissez le html5 et le CSS, vous pouvez ajouter d'autres éléments au texte (images, sons, couleurs de texte...)
Par exemple pour les images, vous devez prévoir un dossier sur votre ordinateur à côté duquel vous allez exporter votre histoire. Par exemple, dans "mes documents" où j'exporte mon histoire, j'ai un dossier qui s'appelle "images" où je place une image. J'ajoute le code html pour indiquer dans Twine de quelle image il s'agit (balise image, source de l'image, texte alternatif, taille) : <img src="images/reveil.jpg" alt="reveil" width="360" height="460" />
Si l'image ne vous appartient pas, cela n'est pas conseillé, mais vous pouvez aussi indiquer l'adresse url (internet) d'une image : <img src=https://pixabay.com/static/uploads/photo/2013/07/13/10/11/battery-156718_960_720.png width="240" height="320" />
Vous pouvez aussi héberger vos images ici : https://postimages.org/
Il existe beaucoup d'autres éléments de code pour améliorer votre histoire sur Twine.
Par exemple l'élément (history:) qui permet, avec l'élément (count:), de suivre le nombre de fois que vous visitez un passage :
(if: (count: (history:), "La cuisine") is 0)[Vous entrez dans la cuisine](else:)[vous êtes déjà venu ici !]
(if: (count: (history:), "salon") is < 2)[...](else:)[c'est au moins la troisième fois que vous venez]
A utiliser avec (link-goto:) pour créer un lien permettant de retourner au passage visité précemment:
(link-goto: "Retourne à l'histoire", (history:)'s last)
Imposer un certain temps de réaction en seconde avec (live:) :
(live: 3s)[le message apparaît au bout de 3 secondes]
(live: 8s)[(goto: "La fin")] ouvre un passage nommé "La fin".
Un exemple :
Retrouvez le guide pour utiliser Twine ici : http://twinery.org/wiki/twine2:guide
Bitsy, un autre outil de création, avec du texte et des pixels : http://ledoux.io/bitsy/editor.html# (un exemple avec https://npckc.itch.io/you-should-eat-breakfast)
Documents d'accompagnement à télécharger : https://drive.google.com/drive/folders/1Pwny1yTxAIfcj36Am1sxkR22LoPdl5iL?usp=sharing