Étiquette : NumApps

NumApps

Le jeu 2048, sur ta NumWorks !

2048 est un jeu vidéo de type puzzle conçu en mars 2014 par le développeur indépendant italien Gabriele Cirulli et publié en ligne sous licence libre. La version présenté ici est le portage du jeu, réalisé par Eric Schrafstetter et légèrement modifiée par nos soins pour un rendu sublimé sur la NumWorks.

Portage du jeu, en python, sur NumWorks

Eric Schrafstetter est le premier a voir porté ce jeu sur la calculatrice NumWorks, ce jeu nécessite une version Epsilon 13 ou supérieur installé sur la calculatrice. En effet, la version 13 de l’OS de cette calculatrice à permis le développement de jeux car il était désormais possible de récupérer les touches du clavier saisies.

Publié le premier avril 2020, la première version de ce programme a été suivie par une version améliorée proposée le 30 juillet 2021. Nous avons découvert ce jeu fin décembre 2021, et avons décidé de l’améliorer afin de proposer une expérience joueur améliorée.

La version 2 de Eric Schrafstetter

La version modifié par nos soins

Modifications réalisées par nos soins

  1. La grille a été centrée et la bordure épaisse réduite, on conserve l’effet « ombre » sans écraser la grille.
  2. Le score a été déplacé, il est moins visible pendant la partie, l’interface présente une symétrie visuelle et la modification du score n’attire pas l’œil.
  3. Les micros-lags ont été supprimés. Dans la version d’origine, la grille était entièrement effacée puis reconstruite ce qui générait un affichage haché avec un effet de rafraichissement pas agréable. Le jeu est du coup plus fluide, plus agréable à utiliser.
  4. Une détection de la fin de partie a été implémentée, si la grille est remplie et que 4 touches sont pressées sans que rien ne se passe, on signale au joueur que la partie est terminée.

Une vidéo de présentation du codage

Si le codage de ce jeu vous intéresse, la vidéo de son auteur est incontournable. 😍

Commandes

Le jeu se joue simplement avec les touches fléchées de la calculatrice.

Télécharger

Des liens vers les version 1 et 2 du jeu, celle de Eric Schrafstetter sont au début de cet article. Nous vous proposons de tester la version modifiée par nos soins :

NumApps

Pong en Python, Numworks

Pong est un jeu que l’on n’a plus besoin de présenter. Autrefois présent sur des bornes d’arcades lors de la genèse du jeu vidéo au début des années 70, le concept a évolué mais reste toujours aussi fun ! Découvrir la programmation d’un jeu en python sur ce jeu est passionnant, et si le code de 12ko de la première version offrait de grandes possibilités, la version 2 présentée ici est à découvrir sans tarder.

Captures d’écran du jeux

Une version 2 optimisée

La première version de ce jeu, conçu en deux semaines et quelques insomnies, a plutôt bien marché mais paradoxalement c’était mon premier jeu, et donc il n’était vraiment pas optimisé. Six mois plus tard, j’ai décidé de m’y remettre. J’ai donc pris mon courage à deux mains et je l’ai entièrement réécrit. De cette manière, la nouvelle version est plus petite mais bien meilleure.

Des menus, des graphisme et un gameplay revisité

Le jeu offre tout premièrement des menus interactifs, programmés grâce à une bibliothèque personnelle, menulib. Ce dernier vous permet de tout (ou presque) paramétrer, des points maximums à la vitesse de la balle, la difficulté, mais aussi les graphismes. En effet, grosse nouveauté, le jeu supporte désormais des thèmes et des particules ont étés ajoutées quand on active les détails de la balle.

Le jeu est jouable en plusieurs modes :

  • Solo : on contrôle les deux pads et on doit faire le plus grand nombre de rebonds
  • 2 players : on a la possibilité de jouer avec un ami en duel
  • Contre l’ordinateur : on joue contre la calculatrice. Attention ! La difficulté se règle dans les paramètres de jeu.

Contrôles

Flèches haut/basBouton supprimer (backspace)Boutons multiplication/addition
Pad 1 (gauche)PausePad 2 (droite) (en mode 2 joueurs)

Téléchargement

NumApps

JetPack Bird en Python, Numworks

Sortie en 2013, Flappy Bird fut un énorme succès sur les plateforme Android et iOs. Le jeu proposé ici est une fusion de deux jeux, Flappy Bird, jeu ou l’on fait voler un oiseau en tapotant l’écran, et JetPack joyride, dans lequel le personnage Barry utilise un jetpack pour se promener à sa guise entre des rayons lazers.

Capture d’écran du jeux

La jouabilité

Pour ce jeu, j’ai voulu donner plus de jouabilité au personnage, pour qu’il soit adapté au « grand publique ». Au départ pensé comme un simple clone de Flappy Bird, je me suis tourné vers un déplacement plus fluide tel que celui d’un JetPack, fonctionnant avec une accélération et non par à-coup. Une seule touche est utile, la touche [OK].

Optimisation et graphismes

Comme je l’ai déjà dit, je voulais un jeu adapté à tout le monde. Donc, par soucis de place, j’ai opté d’enlever tout menu. Pour rendre le jeu tout de même beau, j’ai ajouté une fonction qui trace un contour autour de chaque rectangle tracé. Malheureusement, pour avoir un jeu rapide, il est plus facile de tracer un grand rectangle noir qui sert de cadre puis de tracer à l’intérieur un rectangle de la couleur désirée, mais (combiné à l’écran lui même qui a quelques défauts) cela produit des effets de rafraichissement pas très agréables… Rassurez vous tout de même, cela reste largement jouable ! Notez que le meilleur score est enregistré avec Oméga (et Os dérivées). Bon jeu !

Téléchargement

Nous vous proposons 2 liens distincts, le premier est le lien vers la source du créateur de l’application, le deuxième est un lien alternatif en cas de problème. Seul le premier lien garanti de disposer de la dernière version de l’application ainsi que la documentation écrite directement dans le workshop.

NumApps

Des simulateurs web pour la NumWorks

Le logiciel de la NumWorks est sous licence Creative Commons, ce qui autorise la modification du code de la calculatrice et sa redistribution en respectant quelques règles.

Le simulateur officiel de la NumWorks

Un simulateur web construit sur du HTML, CSS et Javascript est proposé en ligne, gratuitement sur le site officiel de la calculatrice, il est présenté comme un outil idéal pour les démonstrations en classe et c’est une réalité.

  • Il est gratuit,
  • Il est accessible en ligne et hors ligne (téléchargeable gratuitement),
  • Il gère le mode plein écran pour un usage au vidéoprojecteur,
  • il est responsive et s’adapte à la taille de votre écran,
  • il gère l’enregistrement de la session et le partage de celle-ci par lien
    (cette dernière fonctionnalités n’est pas encore parfaitement stable à la date du 27 avril 2021)

En ligne : https://www.numworks.com/fr/simulateur/

Les simulateurs modifiés de la NumWorks

Nous vous proposons 3 simulateurs web légèrement modifiés de la NumWorks.

Pour un usage en ligne, nous les avons hébergé sur des sous domaines de ce site web.

Epsilon simulateurOmega simulateurPsi simulateur
epsilon.nsi.xyzomega.nsi.xyzpsi.nsi.xyz
Image modifiée par nos soins
Patché par Joachim Le Fournis
Simulateur officiel de Omega
https://getomega.dev/releases
Dérivé du projet NSIos
Gabin P. et Raphaël C.

Et parce que vous souhaitez peut-être changer d’ambiance un menu de navigation vous permet de passer de l’un des simulateurs à l’autre.

Patchs sur le simulateur epsilon

Quelques modifications ont été apportées au simulateur epsilon.nsi.xyz par rapport au simulateur officiel du constructeur de la calculatrice.

  1. L’image de la calculatrice a été modifiée pour avoir un rendu plus flat, pas parfait mais suffisant pour nous permettre de faire les captures d’écran que nous utilisons pour notre sélection NumApps.
  2. Le fond d’écran à été modifié pour la même raison.
  3. Les scripts natifs ont été effacés, il ne doivent donc pas être désactivés ou supprimés manuellement à chaque fois
  4. La taille des copiés / collés de scripts python externe à été porté à 16 ko contre environ 8 ko pour la version officielle.

Ces modifications codées par Jaochim Le Fournis nous permettent d’importer via un simple CTRL + V un script python rapidement et facilement, et ce sans se soucier des scripts python déjà présents, ni de la taille du script.

Design non flat / Design flat

NumApps

Sokoban en python, NumWorks

Le Sokoban est un jeu de puzzle et de réflexion japonais du début des années 80. L’expérience acquise dans le l’organisation des caisses d’un entrepôts te permettra, on l’espère, d’être plus efficace lorsque tu devras ranger ta chambre !

Capture d’écran du jeux

Commandes

Croix directionnelleClearEXE+ / –Retour arrière
Se déplacer sur la grille du jeuAnnulerRecommencerChoisir un niveauQuitter le jeu

Un peu de technique

Si vous souhaitez en savoir plus sur les aspects techniques de ce jeu, lisez les articles de présentation :
[tiplanet.org] Un Sokoban pour la NumWorks
[nsi.xyz] Un Sokoban pour la NumWorks

Télécharger la démo (5 niveaux)

Nous vous proposons 2 liens distincts, le premier est le lien vers la source du créateur de l’application, le deuxième est un lien alternatif en cas de problème. Seul le premier lien garanti de disposer de la dernière version de l’application ainsi que la documentation écrite directement dans le workshop.

Télécharger la jeu complet

Pour avoir plus que 5 niveaux, il vous faut lire attentivement la documentation : Un Sokoban pour la NumWorks car il va falloir ajouter plusieurs scripts à votre calculatrice.

NumApps

Doodle Man en python, NumWorks

Doodle Jump eu une énorme succès sur les smartphones modernes à la fin des années 2000. Il exploitait alors l’ accéléromètre pour offrir un gameplay enfantin et addictif. Cette version qui se contrôle avec la croix directionnelle va faire un carton !

Captures d’écran du jeux

Un peu de technique

Un gameplay simplifié pour tenir sur 8ko

Après avoir programmé un jeu pas très ambitieux avec Cyclope Snake, j’ai voulu recréer un classique des jeux mobile : Doodle Jump … avec les contraintes de la machine !

Les contraintes en question, et bien, ces sont principalement le manque de mémoire. Pour éviter de surcharger le stockage, j’ai été obligé de faire des concessions : le cube rouge aux yeux luisants (un mélange entre Super Meat Boy et Herobrine ?!) n’a pas d’ennemis à esquiver ou éliminer. Par conséquent, il ne tire pas de balles vers le haut.

Les plateformes sont de plusieurs types : mouvante, fantôme, éphémère, trampoline, etc …

Seul objectif : battre son meilleur score

Sans ennemis, la seul chose à faire est de grimper le plus haut possible ! Les plateformes et le personnage diminuent de taille au fur et à mesure. Par contre, les commande restent volontairement assez « amples » ! Le jeu est donc pensé pour être challengeant. Dernière chose : avec l’Os Omega, le jeu enregistré le meilleur score dans un fichier de sorte à le recharger d’une partie à l’autre !

Télécharger

Nous vous proposons 2 liens distincts, le premier est le lien vers la source du créateur de l’application, le deuxième est un lien alternatif en cas de problème. Seul le premier lien garanti de disposer de la dernière version de l’application ainsi que la documentation écrite directement dans le workshop.

NumApps

Cyclope Snake en python, NumWorks.

Parfois il suffit de rajouter un chrono dans un jeu et un comportement aléatoire pour tout changer. Ce Snake réinvente le gameplay, et reprend les codes graphiques des premiers jeux sur console. Un succès garanti !

Un Snake avec des graphismes évolués

Ce qui fait de cyclope Snake un jeu (un peu) différent, c’est que l’expérience de jeu a été améliorée avec des petits éléments de gameplay ou de graphisme comme par exemple l’interface style arcade, avec des contours et un tableau de score.

Commandes

Croix directionnelleOK
Se déplacerValider

Un peu de technique

Sur gameplay, le meilleur score est enregistré et rechargé à chaque lancement si vous utilisez Omega Os.
Par ailleurs, le serpent a une jauge de faim qui se réinitialise à chaque fois qu’il mange un fruit. Si cette jauge est remplie, il devient affamé et va aller dans le direction opposée de celle désirée, jusqu’à ce qu’il remange un fruit.

Les éléments du jeu possèdent une ombre (ça m’a été plutôt difficile à intégrer, je reviendrai là dessus dans un article futur, peut être), et le serpent a plusieurs détails.

Vous trouverez sur la page de téléchargement du jeu des instructions de personnalisation du jeu (couleurs, taille, difficulté, etc…)

Télécharger

Nous vous proposons 2 liens distincts, le premier est le lien vers la source du créateur de l’application, le deuxième est un lien alternatif en cas de problème. Seul le premier lien garanti de disposer de la dernière version de l’application, ainsi que la documentation écrite directement dans le workshop.

NumApps

Pac-Man en python, NumWorks

Au début des années 80 il y avait sur la console ATARI en jeu de labyrinthe qui connu en grand succès : Pac-Man. Manger des pac-gommes sans se faire manger soit même, tout un programme !

Capture d’écran du jeux

Commandes

FlèchesRetour arrière
Se déplacer sur la grille du jeuInterrompt le jeu,
sans possibilité de le reprendre

Un peu de technique

Si vous souhaitez en savoir plus sur les aspects techniques de ce jeu, lisez l’article de présentation :
Un Pac-Man sur ta Numworks, en python

Télécharger

Nous vous proposons 2 liens distincts, le premier est le lien vers la source du créateur de l’application, le deuxième est un lien alternatif en cas de problème. Seul le premier lien garanti de disposer de la dernière version de l’application.

A noter : Le jeu ne fonctionne correctement sur la calculatrice mais pas sur le workshop 😕

NumApps

Treasure en python, NumWorks

Un trésor a été caché. Déplace-toi et pars à sa recherche. Évite les rochers et les trous. Il te suffit d’appuyer sur OK pour creuser un trou. Un sonar peut t’aider, enfin uniquement si tu sais l’utiliser !

Captures d’écran du jeux

Commandes

FlèchesOK
Se déplacer sur la grille du jeuCreuser un trou pour trouver le trésor

Télécharger

Nous vous proposons 2 liens distincts, le premier est le lien vers la source du créateur de l’application, le deuxième est un lien alternatif en cas de problème. Seul le premier lien garanti de disposer de la dernière version de l’application.

NumApps

Tetris en python, NumWorks

Un incontournable de la Gameboy des années 90. Un jeu de puzzle dans lequel la patience fini par payer ou couter cher. Dans cette version, on peut commencer directement au niveau 42 !

Captures d’écran du jeux

Commandes

FlèchesClearOK
Déplacer les TetrominosRetournerLancer la partie

Un peu de technique

Si vous souhaitez en savoir plus sur les aspects techniques de ce jeu, lisez l’article de présentation :
Un Tetris en python pour la NumWorks

Télécharger

Nous vous proposons 2 liens distincts, le premier est le lien vers la source du créateur de l’application, le deuxième est un lien alternatif en cas de problème. Seul le premier lien garanti de disposer de la dernière version de l’application.