Pico-Tamagotchi-Intro

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche

Préambule

C'est en voyant la vidéo Make a Pico 2 powered Virtual Pet - Picotamachibi 2 de Kevin McAleer que je me suis intéressé à ce sujet.

Un projet réalisé à partir d'un Pico 2, d'un écran Oled 128 x 64px et de 3 boutons poussoir, ce qui le rend vraiment facile à mettre en oeuvre.

Pico-Tamagotchi-Intro-01.png Pico-Tamagotchi-Intro-00.png

J'ai eu l'occasion m'attarder sur ce projet dans l'article "PicoTamachibi : créer un animal virtuel/Tamagotchi avec Raspberry-Pico 2" paru sur le blog de MCHobby.

Je me suis néanmoins interrogé sur les paramètres interne du fonctionnement de cet "animal" virtuel.

Eléments du système

Le Tamagotchi est un système régit par les éléments décrit ci-dessous

Elément Description
Niveaux internes niveaux entre 0 et 100 de différents paramètres comme: la santé (health), le bonheur (happyness) ou l'énergie (energy) pour citer les 3 principaux.
Quand la santé tombe a 0 alors le Tamagotchi est mort.
J'y ai ajouté quelques règles de régulation automatique parce que cela me paraît faire sens.
Actions utilisateurs Les actions de base sont au nombre de 4!
Jouer (play), nourrir (feed), dormir (sleep), Nettoyer (clean).
Ces actions ont un impact sur les niveaux internes.
Actions Tamagotchi Tamagotchi peu aussi produire des actions spontanément (créer des déchets, demander de l'attention, papoter, ...).
Ces actions ont aussi un impact sur les différents niveaux internes.

Dynamique de fonctionnement:

Tel que décrit dans ce document d'EduGym;

Les actions de l'utilisateur ont une influence sur les variables internes du Tamagotchi. Chaque action a un impact positif (+30) sur le niveau interne correspondant et un petit impact négatif (-5) sur les autre niveaux. Lorsque l'action n'est pas idéal selon le Tamagotchi, tous les niveaux (y compris celui qui vient d'être augmenté) sont impactés négativement (-10).

Une fois les niveaux modifiés le Tamagotchi décide quelle action devrait être prise ensuite (en fonction des poids et importances des différents niveaux internes) et génère une élocution d'une longueur correspondant. Ces élocutions peuvent être très informatifs ou du bruit.

Notes:

  • les élocutions sont produites sur un élément Piezo et sont donc des séquences de notes audibles.
  • Une variable (tau) permet d'influencer le rendu des élocutions (paramètre de type de "température"). Pour Tau --> 0, les élocutions sont une parfaite représentation des niveaux internes. Pour tau --> infini alors les élocutions se transforment en pure bruit.

Niveaux Internes

En compulsant quelques documentations, j'ai repéré trois niveaux principaux (en violet, partagés avec l'utilisateur) et quelques niveaux secondaires (invisible pour l'utilisateur).

Tous les niveaux évoluent entre 0 et 100.

Level (anglais) Niveau (français) Description
health Niveau de santé Représente le niveau de santé du Tamagotchi. A 0 le Tamagotchi est mort
Happyness Niveau de bonheur Le niveau de bonheur tel que présenté à l'utilisateur.
Suivant lecture, ce niveau est le résultat d'un calcul des trois autres niveaux: joy, energy, food.
energy Niveau d'énergie L'énergie du Tamagotchi qui lui permet de se maintenir en activité (un peu comme l'énergie humaine qui permet de marcher et travailler).
De 0 à 100, une valeur proche de 0 provoque l’apathie et une valeur proche de 100 un état de fébrilité/excitation.
Joy Niveau de joie De 0 à 100. Représente le niveau de joie du Tamagotchi.
Food Niveau de nourriture Représente le niveau d'alimentation du Tamagotchi entre 0..100 (la nourriture fournie). La nourriture est transformée en énergie et en déchets. Proche de 0, il n'y a plus d'énergie produite et la joie chute (la faim provoquant de la mauvaise humeur)
Hunger Niveau de faim Représente le niveau d'alimentation du Tamagotchi (la nourriture fournie).
Waste Niveau de déchets La nourriture produit de l'énergie et se transforme en déchets (des déjections). Les jeux produisent aussi des déchets (transpiration).
Une importante proportion de déchets provoque une diminution de la joie mais aussi de l'état de santé.



Impact sur les niveaux

Comme nous le verrons, certaines actions ont plus d'impact sur certains niveaux que sur d'autres.

Pour l'instant ce sont des valeurs discrètes (dans la gamme de valeur de 0 à 100) mais il n'est pas exclus qu'a l'avenir l'impact soit calculé à partir de graphes.

Symbole Impact sur le niveau Valeur discrète
Augmentation modéré +10
↗↗ Augmentation importante +30
↗↗↗ Augmentation critique +50
Aucune modification +0
Diminution modéré -10
↘↘ Diminution importante -30
↘↘↘ Diminution critique -50

Régulation automatique

Il paraît évident qu'il existe des règles de régulation qui modifient les niveaux de "round en round".

Celle-cis entre en jeu lorsque lorsque des seuils critiques sont atteints. A noter:

  • Plusieurs règles peuvent s'appliquer par round
  • Cependant une seule sélection par catégorie (Pas regul_food_0 + regul_food_1)
Nom Règle de seuil Conséquences Actions Remarques
regul_food_0 40 <= Food < 80 ⭬ Health, ⭬ energy, ⭬ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste Poop
regul_food_1 80 <= Food ↘ Health, ↘↘ energy, ↘ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste Poop, Sleep Trop manger provoque la somnolence.
regul_hunger_0 60 <= hunger < 90 ⭬ Health, ↘↘ energy, ↘ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste Call
regul_hunger_1 90 <= hunger ↘ Health, ⭬ energy, ⭬ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste Sleep
regul_waste_0 50 <= Waste < 70 ↘ Health, ⭬ energy, ↘↘ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste Call
regul_waste_1 70 <= Waste ↘↘ Health, ⭬ energy, ↘ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste Panic Il faut réagir
regul_health_0 30 <= Health ⭬ Health, ⭬ energy, ↘↘ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste Panic Il faut réagir

Actions Utilisateurs

Les actions historiques possibles sur un Tamagotchi sont: Jouer, Nourrir, Dormir, Nettoyer.

Sur l'interface du Picomachibi, il y a également une icône FirstAid (soigner) qui ne fait pas partie des actions historiques.

Action (anglais) Action (français) Description
Play Jouer ↗ Health, ↘↘ energy, ↗↗ Joy, ⭬ food, ↗↗ Hunger, ↗ Waste
Feed Nourrir ⭬ Health, ⭬ energy, ↗ Joy, ↗ food, ↘ Hunger, ⭬ Waste
Sleep Dormir ↗ Health, ↗ energy, ↗ Joy, ⭬ food, ↗ Hunger, ↗ Waste
Clean Nettoyer ↗ Health, ⭬ energy, ↗↗ Joy, ⭬ food, ⭬ Hunger, ↘ Waste
FirstAid Premiers soins ↗↗ Health, ↗ energy, ⭬ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste

Actions Tamagotchi

Voici quelques actions que peut prendre un Tamagotchi (information déduite).

La prochaine action du tamagotchi est prise en fonction de l'état actuel.

Action (anglais) Action (français) Description
Poop Faire ses besoins ⭬ Health, ⭬ energy, ⭬ Joy, ↘↘ food, ⭬ Hunger, ↗↗ Waste
Call Appeler (réclamer de l'attention) ⭬ Health, ↘ energy, ⭬ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste
Panic Afficher message alerte (Tête de mort) ⭬ Health, ⭬ energy, ⭬ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste
Sleep Dormir ⭬ Health, ↗ energy, ↗ Joy, ⭬ food, ↗ Hunger, ↗ Waste
Bored S'ennuyer ↘ Health, ↘ energy, ↘↘ Joy, ⭬ food, ⭬ Hunger, ⭬ Waste

Ressources