====== JEU VIDEO FLAPPY PAPY (titre incomplet) ====== ===== Contexte ===== Création d'un jeu vidéo sur la spéculation financière, la cryptomonnaie, les retraites par répartition ===== 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. **inspiration visuelle** {{ ::500px-flapypapy_inspiration.jpg |}} ===== Cartel ===== {{ ::cartel_flappy_papy.odt |}} {{ :cartel_flappy_papy.pdf |}} ===== Résultat ===== {{ ::flappypapy.png |}} ===== 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 : ==== {{ ::drawing.jpeg |}} 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 : {{ ::flappypapy_final.pde |}} autre version sur ordi de benjamin : {{ ::flappypapy_finalb.pde |}} ==== conseil d'utilisation : ==== int largeur_ecran = 1600; int hauteur_ecran = 900; static final int NUMPIPES = 1600; À mettre aux dimensions de ton moniteur {{ ::990px-flappypapygif.gif.gif |}}