Page 1 of 1

Le jeu Orlog sur la Casio Graph 90+E

Unread postPosted: 03 Jun 2024, 21:02
by Afyu
Dans un précédent article, je te présentais mon adaptation du mini-jeu Orlog pour en faire un jeu compatible avec la NumWorks, sous la forme d'une version Epsilon et d'une version un peu améliorée qui ne fonctionne qu'avec Upsilon.
1999119997

Mais la légende raconte qu'un add-in permet de lancer des jeux Python pour NumWorks sur la Casio Graph 90+E.
Cet add-in est en fait PythonExtra. Nous le devons au travail remarquable de la communauté de Planète-Casio et en particulier de Lephe.

La Casio Graph 90+E a des capacités matérielles remarquables mais son implémentation de Python est malheureusement très incomplète. En particulier elle est dépourvue du module time ainsi que de la fonction getkey() qui permet de gérer en temps réel l'appui sur les touches de la calculatrice. Cette dernière fonction est pourtant bien pratique (et essentielle ?) pour créer des jeux interactifs et son absence complique cruellement la conception de jeux nécessitant une interaction avec le joueur sans quitter l'interface graphique. Sans getkey(), toute interaction implique de quitter l'interface graphique, de poser une question puis de traiter la réponse après validation (ou alors il faut ruser, comme le fait critor en interceptant l'instruction d'arrêt du script générée par l'appui sur la touche AC/ON, la seule touche qui est reconnue).

Il y a quelques semaines, notre cher et talentueux SlyVTT a entrepris de porter l'ensemble des modules et fonctions Python de la NumWorks dans la version 0.3.0 de cet add-in, qui permet maintenant de profiter de l'ensemble des scripts et jeux de la NumWorks directement sur la Graph 90+E. :D
20014
Mais il ne s'est pas contenté de porter l'ensemble des fonctions Python de la NumWorks, il a fait mieux que ça ! Il a ajouté une fonctionnalité qui permet, lorsqu'elle est activée, de profiter de la grande taille de l'écran de la Graph 90+E et d'utiliser l'ensemble des pixels de l'écran, permettant de passer d'une définition de 320 par 222 pixels à une définition de 396 par 224 pixels ! :#tritop#:

Il ne faut pas oublier que la Graph 90+E a également une bien plus grande mémoire de stockage ainsi qu'une bien plus grande mémoire de travail que la NumWorks. :D

Il est donc possible non seulement de profiter de cet écran plus large mais également de profiter de ce nouvel espace mémoire pour ajouter de belles décorations à ce jeu.

20009C'est maintenant chose faite, avec l'ajout des torsades de la version Upsilon dans les marges apparues de part et d'autre du plateau de jeu, ainsi qu'avec l'ajout d'une image pour chaque divinité, lors de la phase initiale de choix des divinités et lors de la phase de choix de la divinité pour la manche en cours. Ce sont également ces images qui agrémentent désormais l'écran d'accueil (qui permet de choisir le mode de jeu).
20004200052000620007

20008
Mais ce n'est pas tout ! Sur proposition de SlyVTT et avec son aide précieuse, il a été possible d'ajouter un vrai écran de titre, que l'on peut voir ci-contre.

La fin de la partie a également été améliorée, mais pour le découvrir, il faudra terminer une partie. :)

Et comment on joue ?
Pour jouer à cette version spécialement améliorée, il faut d'abord copier l'add-in PythonExtra sur la Graph 90+E puis copier le script Python du jeu. Ensuite, depuis la calculatrice, il faut lancer PythonExtra puis aller chercher le script Python dans l'arborescence et le lancer.
Pour jouer, on utilise les 4 flèches et la touche EXE, en suivant les mêmes règles que décrites dans l'article qui présente la version NumWorks.
2001020011200122001520013

En prime, notre cher SlyVTT nous offre cette magnifique vidéo qui illustre une partie de jeu !

Fun fact :
Si l'on n'active pas la fonctionnalité de PythonExtra qui permet d'utiliser toute la largeur de l'écran de la Graph 90+E et que l'on n'utilise que des fonctions du Python de la NumWorks, alors le script Python se contente de profiter des formidables capacités de mémoire de la Graph 90+E et demeure entièrement compatible en théorie, techniquement, avec la NumWorks puisque toutes les fonctions utilisées font appels aux modules Python de la NumWorks. Cependant, il faudrait pour cela que la NumWorks gagne fortement en mémoire de travail.

Pendant le début du développement du jeu, j'ai conservé en parallèle une version compatible Graph 90+E qui utilise toute la largeur de l'écran de la Graph 90+E et une version compatible Graph 90+E qui n'utilise que la largeur de l'écran de la NumWorks et qui pourrait fonctionner sur la NumWorks si un jour elle bénéficiait d'une amélioration suffisante de sa mémoire de travail pour ne pas déclencher d'erreur de mémoire pleine. Je vous joins cette version spéciale.


La rumeur dit qu'un nouveau modèle de calculatrice Casio vient de voir le jour, avec une grande mémoire de travail et une version de Python munie d'une fonction getkey(). Et si... ?

Edit du 15/06 : j'ai mis à jour le fichier de la v100 avec la correction d'un double bug dans le codage des divinités Frigg et Loki.

Téléchargements :

Re: Le jeu Orlog sur la Casio Graph90+E

Unread postPosted: 05 Jun 2024, 10:09
by SlyVTT
Bravo Mr Afyu,
c'est je pense le jeu AAA de PythonExtra.
A quand la création d'un studio Afyusoft ?

Re: Le jeu Orlog sur la Casio Graph90+E

Unread postPosted: 16 Jun 2024, 17:45
by Afyu
SlyVTT wrote:Bravo Mr Afyu,
c'est je pense le jeu AAA de PythonExtra.
A quand la création d'un studio Afyusoft ?

Merci Mr SlyVTT !!

Et surtout, merci pour ton aide précieuse sans laquelle cette version Graph 90+E n'aurait pas vu le jour. C'est vraiment grâce à ton portage des fonctions et modules Python de la NumWorks dans PythonExtra qu'une telle prouesse à été possible.
Et c'est grâce à ton soutien, tes idées et tes conseils que le jeu a une vraie allure graphique :)
Et encore une fois, c'est grâce à toi que nous avons une belle vidéo pour donner un aperçu de partie :D

Merci SlyVTT !! :favorite:

Pour la création du studio : un jour, peut-être. ^^