FlappyPappyPopHipHappyPopFlippette
Sommaire
JEU VIDEO FLAPPY PAPY(titre incomplet)
contexte
Création d'un jeu vidéo dans le cadre du thème du printemps de Bourges.
principe
inspiration du jeu ballon ou Flappy bird, contrôlé par une pompe à vélo.
le but est de progresser dans une "cave" au scrolling horizontal automatique, sans toucher les bords de la cave.
la physique de l’avatar du joueur correspond à un ballon qui se gonfle en actionnant la pompe, et qui se dégonfle tout seul; entraînant la montée et la descente de l'avatar.
Storyline ( non definitif)
Allégorie de la bulle financière et des problèmes de l'informatisation de la spéculation hyper fréquence.
la bulle financière, contrôlée par le joueur ( Golden Boy) , ne doit pas s'approcher des seuils des achat des ventes( limites inferieures/supérieures) sans risquer le krak boursier.
Principe de Fonctionnement
Contrôleur
tachymètre fait maison :
- Un ventilateur de pc à 3 fils
- Une résistance ~10k
- Un arduino
- Une pompe à vélo
principe
le ventilateur de pc contient 2 fils d'alimentation et 1 fil d'information de vitesse ( rpm),
ce 3 ieme fil envois un 'tic' d'un capteur à effet halls lors du passage d'une bobine du moteur du ventilateur. le but et de foutre assez de jus pour que le capteur soit alimenté, et que les bobines génèrent une force magnétique détectable, mais pas trop de jus pour que le ventilateur ne tourne pas de lui même.
fonctionne avec le 3.3V délivré par l'arduino uno.
schéma de fou :
on envois le résultat du nombre de tic/unités de temps fixe, via le port série.
code coté arduino
après avoir galérer sur les tuto de tachy , de compte tour a effet hall.. le plus simple : pas d’interruption !
on considère que la loop principal fais office de compteur, on compte le nombre de tic du capteur , et on l'envoie par le port série que si il n'est pas nul.
le résultat envoyé est proportionnel à la vitesse du ventilateur, masi ne permet pa de faire des calcul de force du vent.
long i =0; long tic=0; const int pin=2; // pin de lecture du signal ( digital n°2) void setup() { Serial.begin(9600); //Serial.println("plop"); pinMode(pin,INPUT); } void loop() { i++; tic += digitalRead(2); if (i>66666){ // nb de tour de boucle arbitraire if (tic<66665){ // envoie des données que si le tachy tourne // Serial.print(millis()); // affiche time stamp ( durrée 70 jours max) // Serial .print(" : "); Serial.println(map(tic,66667,10000,0,1024)); // mapage 0-1024 ... a ajuster } tic=0; i=0; } }
Jeu
version de base trouvée sur le net :https://www.openprocessing.org/sketch/136753
fork bjorn/gaziel : https://www.openprocessing.org/sketch/534119
fork final by Simon : File:FlappyPapy_Final.pde
conseil d'utilisation :
int largeur_ecran = 1600; int hauteur_ecran = 900;
static final int NUMPIPES = 1600;
À mettre aux dimensions de ton moniteur