π
<-

News 2025
March (3)

News 2024
August (1)
July (2)
June (2)
May (1)
April (1)
March (1)

News 2023
August (4)
July (2)
June (3)
May (2)
April (4)
March (2)

News 2022
August (2)
July (8)
June (4)
May (7)
April (9)
March (10)

News 2021
August (7)
July (8)
June (2)
May (6)
April (11)
March (10)

News 2020
August (4)
July (11)
June (6)
May (4)
April (8)
March (3)

News 2019
August (1)
July (3)
June (3)
May (5)
April (1)
March (2)

News 2018
August (4)
July (1)
June (5)
May (9)
April (13)
March (5)

News 2017
August (4)

Find The Rune pour NumWorks, concours Python 2024-2025

New postby critor » 17 Mar 2025, 21:57

Voici la présentation de Find The Rune, le jeu que nous a conçu Kaïs M. dans le cadre de notre concours de programmation Python 2024-2025.

Kaïs est élève de Vincent Robert alias cent20 au Lycée Louis Pasteur en Avignon, où il suit les enseignements de spécialités NSI et Mathématiques depuis la rentrée 2023.

Kaïs a choisi de concourir individuellement dans la catégorie NumWorks.

2201022030Son jeu s'articule autour de la carte d'un monde dans lequel tu te déplaces intuitivement en 2 dimensions à l'aide des touches fléchées. Un monde très varié t'invitant à parcourir des plaines, franchir des océans et explorer des grottes !

La carte était initialement organisée en une grille de 18×11=198 cases, avant de passer en 36×22=792 cases sur la dernière version que nous avons reçue. Ces cases peuvent en effet être de différents types indiqués par leurs couleurs :
  • franchissables :
    • prairies herbeuses (vert)
    • étendues d'eau (bleu)
    • sol dans la grotte (marron clair)
  • infranchissables :
    • rochers (gris)
    • parois de la grotte (marron foncé)
  • mortelles (noir)

Tu pilotes donc le carré blanc, et ton objectif est de collecter 5 cartes runiques réparties sur la carte et indiquées par des couleurs vives ressortant de l'ensemble (jaune, rouge, cyan, magenta).

22022Pour te mettre au défi, le jeu ne t'octroie qu'un nombre limité de pas avant épuisement, 160, ce qui est peu relativement à la taille du monde. Selon Kaïs l'itinéraire optimal passe par 150 cases, si bien que tu as seulement 11 pas de marge. Attention donc, tout égarement risque de t'être fatal !

L'interface visuelle du jeu se compose donc :
  • de la carte affichée en pleine largeur
  • et d'une barre d'état en bas d'écran, t'indiquant le nombre de pas restants ainsi que les différentes runes collectées

Ajoutons à cela un écran d'instructions claires au lancement. Il partage avec d'autres écrans texte (échec et victoire) un fond constitué d'une grille présentant des variations aléatoires de la brillance d'une teinte propre à chaque écran :
220112201222013
Précisions que le jeu n'inclut qu'une seule et unique carte du monde que tu ne pourras donc que rejouer à l'identique, ce qui après une première victoire sera donc lassant.

Le jeu a été testé sur NumWorks N0120.

Les graphismes sont soignés ; le jeu y étant réactif avec des mises à jour d'affichage parfaitement propres !

Liens projet :
Référence : https://nsi.xyz/numapps/runes-python-game-numworks/

The Map pour NumWorks + TI-Nspire, concours Python 2024-2025

New postby critor » 18 Mar 2025, 09:34

Voici la présentation de The Map, une participation en équipe à notre concours de programmation Python 2024-2025 :
  • le jeu a initialement été conçu pour NumWorks par Vivien G-R. alias Azre, élève de Vincent Robert alias cent20 au Lycée Louis Pasteur en Avignon, où il suit l'enseignement de spécialité NSI depuis la rentrée 2024
  • puis porté pour TI-Nspire CX II par Pierre B. alias Exyodeff, autre élève de Vincent

22027Le jeu original de Vivien exploite la bibliothèque graphique kandinsky. Il s'articule autour de la carte d'un donjon dans lequel tu contrôles une silhouette noire à l'aide des touches fléchées, initialement en haut à gauche.

Vivien nous a fourni 3 versions :
  • Dans une première version, il s'agissait d'un jeu où les donjons, générés aléatoirement, commençaient avec 3×3=9 cases pour s'étendre au fur et à mesure des passages des étages. Les choix d'itinéraires étaient donc initialement très limités et la carte générée se devait d'en garantir au moins un comme gagnant pour ne pas rendre le jeu impossible
  • Une deuxième version améliorait significativement l'interface en regroupant les informations à afficher sur une barre d'état sous la carte, et les rendant plus intuitives en accompagnant les points d'icônes de couleur.
  • Enfin la troisième version démarre directement avec 8×4=32 cases, offrant ainsi bien plus de possibilités d'itinéraires, le choix de ce dernier devenant un véritable enjeu. Beaucoup moins monotone au départ !
2204922050220242202522026


Tu disposes de points de vie, d'attaque et de défense, et ton objectif est de parvenir vivant à la case de sortie marquée d'une croix.

Les cases sont souvent associées à 1 événement se déclenchant lorsque tu la franchis pour la première fois. Ces événements peuvent être de différents types, clairement identifiables par une forme monochromatique :
  • bonus :
    • ajoute des points de vie (cœur rose)
    • ajoute des points d'attaque (épée verte)
    • ajoute des points de défense (bouclier vert)
  • dangers :
    • retire des points de vie (pic rouge)
    • monstre à occire pour passer (épée rouge)
    • autres :
      • la sortie déjà évoquée (croix jaune)
      • gemme pouvant être ramassée (losange bleu sur fond jaune)
    22028Les monstres de différentes espèces ont chacun leurs points forts et points faibles, disposant eux aussi de différents niveaux de points de vie, attaque et défense. Au bestiaire nous avons droit aux araignées, blobs, gobelins, hydres, ombres, squelettes et zombies.

    Pour pimenter la chose, les événements de certaines cases peuvent nous être cachés, étant alors marqués de points d'interrogation qui peuvent eux aussi nous soumettre à différents niveaux d'incertitude :
    • le point d'interrogation vert indique un des types de bonus précédents mais on ignore lequel
    • le point d'interrogation rouge indique un des dangers précédentes
    • et enfin le point d'interrogation noir ne donne aucune indication, pouvant cacher aussi bien un bonus qu'un danger, une gemme ou même la sortie
    Dans la version initiale du jeu les événements de ces cases inconnues se révélaient lorsque l'on visitait une case voisine, mais ce n'est plus le cas désormais.

    L'interface visuelle du jeu se compose donc :
    • de la carte[/i]
    • d'une barre d'état inférieure t'indiquant sur 2 lignes tes points de vie, attaque et défense, ainsi que les informations dans le cas où ton arrivée sur une case vient de déclencher un événement (type et nombre de points gagnés ou perdus, points du monstre, etc)
    • enfin, d'une barre de titre inférieure
Le jeu a été testé sur NumWorks N0120.

Le jeu est réactif. Petit détail, on peut juste regretter l'absence d'élément visuel faisant clairement comprendre qu'un combat est en cours et que le joueur ne peut donc plus être déplacé jusqu'à son résultat, contrairement à tous les autres événements qui permettent immédiatement un nouveau déplacement.

Les graphismes sont soignés mais l'affichage n'est pas toujours optimisé, certaines zones étant inutilement effacées pour être redessinées au complet, notamment les icônes des points pendant le déroulement des combats, générant des clignotements peu esthétiques.

Le caractère aléatoire par contre donne une rejouabilité excellente !

22029Pierre nous signe donc une version de The Map pour calculatrices Texas Instruments. Il utilise pour cela la bibliothèque graphique ti_draw, commune aux modèles TI-Nspire CX II, TI-83 Premium CE et TI-84 Plus CE.

Toutefois, les besoins en mémoire de tas (heap) font que le code ne fonctionne que sur TI-Nspire CX II.
Ce ne sera absolument pas pénalisant mais c'est dommage de ne pas avoir optimisé pour les autres modèles. En effet, à survoler le code relativement modeste sans définition d'énormes variables, nous pensons que ce jeu aurait dû pouvoir y tourner sans exploser la mémoire.

Attention, le code n'est hélas pas basé sur la dernière version du jeu NumWorks. Le donjon démarre donc en 3×3=9. C'est même basé sur la toute première version du jeu reçue, la barre d'état en bas d'écran n'y étant pas encore présente. Le code n'a malheureusement pas fait l'objet de mises à jour par la suite.

Il semble s'agir ici d'un portage peut-être un peu trop rapide. Nous pouvons lui reprocher diverses choses, de l'anecdotique au plus problématique :
  • Pour les détails, non adaptation du texte d'introduction disant de taper
    OK
    , cette inscription de touche n'existant pas sur TI-Nspire CX II
  • Des affichages beaucoup moins optimisés que dans les versions plus récentes, davantage de zones de l'écran non affectées par divers événements étant systématiquement effacées pour être redessinées, et ce de façon totalement inutile, générant autant de clignotements peu esthétiques. Il est certes vrai que la TI-Nspire CX II n'est pas particulièrement rapide pour les graphismes Python, mais il y avait un moyen très simple de masquer ce problème en faisant appel au double buffering offert par la bibliothèque ti_draw. Il suffisait pour cela d'appeler une fois ti_draw.use_buffer() au lancement du script, puis ti_draw.draw_buffer() après chaque série de modifications de l'affichage suivant chaque déplacement et/ou événement, pour afficher d'un seul coup tous les derniers changements effectués. Simplissime et enfantin, avec cela même du code graphique mal écrit et optimisé se serait affiché comme celui d'un pro, c'est bien dommage d'avoir raté cette remarquable possibilité, surtout lorsqu'elle n'aurait nécessité que l'ajout de 2 lignes.
  • Et malheureusement il y a quelque chose qui ne va pas du tout dans le code, les touches fléchées devant souvent être laissées enfoncées pendant plus d'une demi-seconde pour être prises en compte, une latence qui pour ne rien arranger semble variable, rendant hélas l'expérience de jeu assez désagréable, un problème qui se produit aussi bien sur calculatrice que sur logiciel et qui n'aurait donc normalement pas pu être raté. Cela ressemble au blocage des déplacements déjà évoqué pendant le déroulement d'un combat, sauf que l'on parle bien ici de cases ne comportant pas de monstres, et dont la visite n'affiche pas d'état de combat. Ce problème ne semblait pas présent dans la version NumWorks équivalente.
En plus de ne pas avoir la même qualité que l'original, en l'état The Map sur TI-Nspire CX II nous semble défectueux, au point de risquer de décourager la plupart des joueurs tombant dessus.

Toutefois, ceci constituant la première participation en équipe avec portage pour calculatrice Texas Instruments, nous réservons pour le moment notre jugement sur le caractère réussi ou pas du défi de porter son jeu pour différentes calculatrices, et donnant droit par ordre de classement au choix d'un lot correspondant à la catégorie du portage, en plus de l'éventuel lot correspondant au jeu initial (si suffisamment bien classé).

Liens projet :
Référence : https://nsi.xyz/numapps/the-map-un-jeu- ... -numworks/

Memory_Countries pour NumWorks, concours Python 2024-2025

New postby critor » 20 Mar 2025, 08:58

Voici la présentation de Memory_Countries, le jeu que nous a conçu Hugo C. dans le cadre de notre concours de programmation Python 2024-2025.

Hugo est élève de Vincent Robert alias cent20 au Lycée Louis Pasteur en Avignon, où il suit les enseignements de spécialités NSI et Mathématiques depuis la rentrée 2023.

Hugo a créé une interface graphique s'appuyant sur la bibliothèque kandinsky et a donc de fait choisi de concourir dans la catégorie NumWorks.

22031Son script est une adaptation libre du célèbre jeu des paires, un jeu de cartes également très connu sous le nom de Memory.

Tu disposes donc de 24 cartes organisées en 6×4, toutes face cachée. L'objectif est de retourner toutes les cartes en un minimum de coups.

Pour cela à chaque coup, tu dois choisir 2 cartes à retourner à l'aide des touches fléchées et de validation. Si ces 2 cartes constituent une bonne paire, elle restent face visible. Sinon, elles sont à nouveau retournées face cachée à ta prochaine pression de touche. D'où le nom du jeu, il te faut mémoriser au fur et à mesure les emplacements des différentes cartes consultées, afin de pouvoir reconstituer les bonnes paires au plus vite.

Variante ici, contrairement à l'original les bonnes paires ne sont pas constituées de cartes identiques, il s'agit à la place d'associer 12 pays européens à leurs capitales.

2203222033Les cartes peuvent ainsi être de 2 types :
  • pays, avec le drapeau associé
  • capitale, avec les 3 premières lettres de son nom
Toutefois si jamais tu avais une hésitation, les noms complets des cartes que tu retournes son indiqués en bas d'écran.

Enfin, notons l'écran de victoire reproduisant le drapeau de l'Union Européenne.

Le jeu a été testé dans les conditions aussi optimales que possibles, sur NumWorks N0120.

Il peut donner l'impression que les touches manquent de réactivité, car les événements ne sont curieusement pas déclenchés dès la pression d'une touche, mais uniquement après son relâchement, ce qui est un peu dérangeant. Sur ce genre de jeu, et pour limiter le nombre de pressions de touches dans le cadre du point précédent, il aurait peut-être été intéressant de rendre la grille raccordable (par exemple, qu'aller à droite lorsque l'on atteint la droite de l'écran nous ramène à gauche).

En dehors des drapeaux qui bénéficient de graphismes travaillés, ces derniers n'ont rien de complexe, ce qui n'est absolument pas un reproche. Par contre dans ce cadre, on regrettera justement que l'intégralité de l'écran soit redessinée à chaque petit changement à afficher, d'une façon générant des scintillements peu esthétiques. Redessiner seulement 1 à 2 cartes à chaque événement (soit la carte sélectionné et l'éventuelle 2e carte retournée) aurait suffit pour donner un affichage totalement propre.

Les cartes sont réparties de façon aléatoire, ce qui donne une bonne rejouabilité du jeu.

Liens projet :
Référence : https://nsi.xyz/numapps/memory-countrie ... -numworks/

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
903 utilisateurs:
>860 invités
>33 membres
>10 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)