Planète Casio - Tout le forum - Flux RSS http://www.planet-casio.com Programmes Casio, Jeux, Cours pour Calculatrices Casio fr-FR https://www.planet-casio.com/images/logo.gif Planète Casio - Tout le forum - Flux RSS http://www.planet-casio.com 55 50 Programmes Casio, Jeux, Cours pour Calculatrices Casio. Sat, 24 Sep 2022 17:16:06 GMT Sat, 24 Sep 2022 17:16:06 GMT contact@planet-casio.com (Planet Casio) contact@planet-casio.com (Planet Casio) 5 Getkey et Getpen en même temps (fxcp400). https://www.planet-casio.com/Fr/forums/topic17168--.html Bonjour programmeurs, j'ai une petite question à propos de l'exécution en même temps de la fonction GetKey et GetPen. Pour ceux qui se demandent ce qu'est la fonction GetPen, c'est la fonction qui permet de détecter la position d'appui du stylet sur l'écran tactile,elle renvoie deux scalaires x et y. Seulement j'aimerais que l'utilisateur puisse choisir entre appuyer sur le clavier ou appuyer sur l'écran, et pour ce faire il faut que les deux fonctions GetKey et GetPen soient actives en même temps. Je suppose que la programmation parallèle n'est pas possible avec le basic casio, je n'ai rien trouvé d'intéressant dans le manuel. Je fais donc appel à vous pour savoir si vous auriez une astuce à ce propos. Merci ! :) Fri, 23 Sep 2022 13:35:22 +0200 [Topique d'entraide] V601's H.Q. https://www.planet-casio.com/Fr/forums/topic17167--.html Bienvenue au quartier général de l'unité V601. Le but ce topique est de servir au partage des information sur le concours de rentrée 2022: "Maîtriser Pykaster 3D", et accessoirement de propagande pour mon groupe. Donc partager et j'essayerais d'organiser tout ça ^^. Description Pour faire court, cette année vous vous balader dans un labyrinthe pour attraper des souris et ainsi gagner des points et des niveaux, tandis que les mouvements et la capture de souris trop haut niveaux vous en coute. Descriptif du programe Voici l'utilité des divers fichiers: - `myrandom;py` : génération de l'aléatoire. - `pyka3dc.py` : routine de compression et décompression des textures. - `pyka3dmc.py`, `pyka3dmr.py`: données de la map. - `pyka3dsr.py`, `pyka3dtr.py`, `pyka3dsc.py`, `pyka31dtc.py` : Textures et sprites pour les divers systèmes. - `polycal5.py`, `polycalc_sdl2` : routines pour dessiner à l'écran des divers système (gg Critor) - `tools.py` : diverses fonction qui sont appelés souvent dans le reste du code (calculs de distance, etc) - `polyfont.py` : définition de la police d'écriture. - `pyka3dlb.py` : moteur du jeu et raycasteur (la partie qui nous intéresse) - `interval.py` : routines de gestion des intervalles (ça ça l'air de merge des listes trié, faudrait que je jette un coup d'œil mais ça à pas l'air urgent) - `pyka3d.py` : le code à soumettre où vous devez écrire vos mouvements Score Précédemment on a pu établir qu'il fallait regarder du côté de `pyka3dlb.py` pour le calcul du score Les règles sont les suivantes: - On commence avec 1000 points - Avancer et reculer coute 0.01 * distance (absolue) + 0.001 * distance (arrondie à l'entier sup) - tourner coute 0.0001 peu importe l'angle - les pas de côté utilisent la même formule que pour avancer et reculer (0.01 * abs(dist) + 0.001 * ceil(dist)) - sauter coute 0.0001 * hauteur de saut (à l'entier supp) + hauteur de saut - attendre coute 0.0001 * durée d'atente (à l'entier supp) - attraper une souris jaune rapporte 100 / (1+ difference de niveau) - se faire attaquer par une souris rouge coute autant de point que votre difference de niveau L'on peut voir qu'en dehors des sauts, les mouvements ne sont pas si couteux, leurs optimisations peut-être remisent à plus tard, mais aussi qu'il faut éviter les souris rouges. Niveau Intéressons-nous à la mécanique de niveau Joueur: - Vous commencez au niveau 3 - capturer une souris jaune vous fais gagner un niveau Souris : - Les souris commencent à un niveau entre 1 et 5 (répartition uniforme) - si deux souris fusionnent, la plus haut niveau gagne un niveau, l'autre disparait - Les plaques montent toutes les souris d'un niveau Notez que si le plafond est trop bas, vous ne monterez pas de niveau. Recrutement https://www.planet-casio.com/storage/forums/logoV601_medium-17167.png Volunteer wanted for hazardous challenge No wages Long weeks of gloomy maze Constant danger Safe return doubtful Sticker and recognition in case of success Fri, 23 Sep 2022 12:19:30 +0200 Les jeux sur calculatrice de nos jours https://www.planet-casio.com/Fr/forums/topic17166--.html Bonjour bonjour,aujourd'hui ma question est ; peut ont réellement parlé de jeux "électroniques" sur les calculatrice récente avec un un vrai écran,pour moi,c'est plus du jeux mobile,non ? :oops: Thu, 22 Sep 2022 10:57:23 +0200 [Bug?] Mes Messages: À column is empty https://www.planet-casio.com/Fr/forums/topic17165--.html I noticed that the À column isn't populated for messages I've sent. I thought it would list the usernames of those I've sent messages to. Is this a bug? https://i.imgur.com/QF4gHtM.png EDIT: It seems to be the same when viewing the sent message, so maybe it's just not available. No big deal: https://i.imgur.com/dlniXcV.png Thu, 22 Sep 2022 08:05:35 +0200 Concours de rentrée 2022 : Maîtrisez Pykaster3D ! https://www.planet-casio.com/Fr/forums/topic17164--.html Mettez-vous à l'aise et branchez vos neurones, c'est de nouveau cette époque de l'année. Le concours de rentrée de TI-Planet et Planète Casio est de retour pour la 6ème année consécutive, avec un nouveau défi calculo-ludique et de nouveaux prix à décrocher ! :D Le concours de rentrée est ouvert jusqu'au Dimanche 13 Novembre 23h59. concours-rentree-2022-banner-full.jpg Les captures d'écran ne mentent pas : Critor nous a bel et bien programmé un moteur 3D mi-Wolfenstein mi-DOOM en Python, dans lequel vous explorerez une grande arène fortifiée. Comme tu vas le voir, il tourne d'ailleurs sur la Graph 90+E et Graph 35+E II ! ... lentement, mais il tourne. :P Article associé sur TI-Planet : Concours Python 2022 - Pykaster3D «attrape-les toutes» ! Principe et règles du jeu L'unique défi de cette année nous ramène dans le royaume d'Alrys que vous avez libéré l'an dernier. À l'époque, le donjon du Cirque des Monts Pleureurs avait déjà fait parler de lui. Les nouvelles sont arrivées il y a quelques jours d'une infestation inquiétante dans le donjon de la presqu'île de Farfalie. Il semblerait que des souris électriques d'une espèce complètement inconnue se sont emparées des lieux. Le donjon est composé de trois sections concentriques. D'abord, les catacombes, qui cachent une entrée secrète et furent le principal obstacle à franchir durant la reconquête d'Alrys : https://i.imgur.com/Y2Y7uHc.png https://i.imgur.com/cfmfmZ3.png Une fois le hall passé, se trouve un labyrinthe réparti sur 3 niveaux : https://i.imgur.com/YgSImsR.png https://i.imgur.com/xeMX9sm.png Et enfin une passerelle suspendue mène au coeur du donjon, où se sont installées les locataires indûs. https://i.imgur.com/QR6td6b.png https://i.imgur.com/aI6LSyX.png Le but du jeu est de traquer les souris et de les attraper toutes... au bon moment. D'après les rapports du terrain, le qualificatif «électrique» n'est vraiment pas là pour décorer, et certaines souris décochent de sacrées décharges. :O Comme les années précédentes, le jeu peut se jouer de deux façons différentes : au clavier (pour tester), et en préprogrammant une série d'actions dans le script (pour la soumission finale). Les contrôles au clavier sont les suivants : Avancer (#0, touche `[↑]`) et reculer (#2, touche `[↓]`) Tourner à gauche (#5, touche `[←]`) ou à droite (#6, touche `[→]`) Se décaler sur la droite (#1, touche `[6]`) ou sur la gauche (#3, touche `[4]`) Ne rien faire (#4, touche `[5]`) Sauter (#7, touche Entrée) Le numéro correspondant à chaque peut être utilisé pour effectuer cette action dans le script. Note que dans le script les actions prennent des paramètres, ce qui les rend beaucoup plus polyvalentes que le clavier. Par exemple, le script préchargé dans pyka3d.py effectue les actions suivantes : liste_actions = [ # Attendre 5 tours 4, 5, # Tourner 5 fois à droite de π/8 radians (22.5°) 6, 0.39269908169872414, 6, 0.39269908169872414, 6, 0.39269908169872414, 6, 0.39269908169872414, 6, 0.39269908169872414, # Tourner 6 fois à gauche de π/8 radians (22.5°) 5, 0.39269908169872414, 5, 0.39269908169872414, 5, 0.39269908169872414, 5, 0.39269908169872414, 5, 0.39269908169872414, 5, 0.39269908169872414, # Avancer 77 fois de 1 pas 0, 77, # Tourner à gauche de π/8 radians (22.5°) 5, 0.39269908169872414, # Avancer 121 fois de 1 pas 0, 121, ] C'est une transcription directe d'une saisie au clavier, mais en ajustant les angles quand on tourne et les pas quand on se déplace il serait possible d'atteindre la même position beaucoup plus efficacement. ;) De façon générale, pyka3d.py fonctionne de la façon suivante : Il exécute toutes les actions données dans `liste_actions`. Ensuite il te donne la main pour continuer à jouer sur le clavier. Une fois la partie finie, il affiche une liste correspondant aux actions jouées au clavier, qui peut donc être copiée/collée et ajoutée à la fin de `liste_actions`. Tout ceci se produit par l'appel `jouer_selon(liste_actions,1)`. Pour éviter que l'affichage 3D (qui prend la majorité du temps) ne soit trop répétitif, tu peux appeler `jouer_selon(liste_actions,0)` à la place, qui ne démarre l'affichage que quand le contrôle est donné au clavier (après l'exécution de `liste_actions`). Précisons les contrôles disponibles dans le script : Les actions pour avancer, reculer, et se décaler acceptent comme paramètre des distances entre -1 et 1, valeurs décimales comprises (au lieu de juste 1 au clavier) ; Les actions pour tourner acceptent n'importe quelle angle, y compris des tours complets (au lieu de juste 22.5° au clavier) ; L'action de saut accepte une hauteur de saut entre 0 et 1 (au lieu de juste 1 au clavier). Le but du jeu est donc d'utiliser ces contrôles pour attraper les souris. Le joueur comme les souris ont un niveau, qui décide des interactions : Les souris de niveau inférieur à celui du joueur sont affichées petites et jaunes ; il suffit de les toucher pour les attraper, ce qui augmente un peu le score et augmente le niveau du joueur. Les souris de niveau supérieur à celui du joueur sont affichées grandes et rouges ; touchez-les à vos risques et périls. Les décharges réduisent le score ! Le niveau du joueur influence également sa vitesse de déplacement et ses prouesses physiques... et donc sa capacité à atteindre différentes zones du donjon. ;) https://giant.gfycat.com/CrispLimitedDesertpupfish.webm https://giant.gfycat.com/WelltodoShamefulImpala.webm Les souris ont tendance à fusionner quand elles se recontrent... ou quand le joueur active une des 5 dalles cachées dans le donjon ; étant difficiles à trouver ces dalles n'ont pas été désamorcées durant le raid de l'an dernier. Réfléchissons donc à la stratégie. Il te faut attraper un maximum de souris, vite de préférence, mais il faut aussi les attraper quand elles sont d'un niveau élevé (cela augmente plus le score) sans pour autant perdre le contrôle de la population, sous peine d'être choqué·e par le résultat. Dors bien en pensant à ce problème... :3 Prenons un instant pour apprécier l'exploit technique des scripts, qui avec environ 80-100 ko de stockage et 100 ko de mémoire de travail parviennent à simuler un environnement riche en couleurs et parfois même en textures, sur une map grande de 64x29 cases avec des effets graphiques à faire rougir la compétition. :p Aperçu des lots de l'année Les lots de cette année sont bénévolement offerts par Calcuso, Casio, TI, cent20, avec des goodies de Parisse, TI-Planet et Planète Casio. Les prix sont très fournis surtout côté goodies ; je vous fais un résumé ici, pour les détails voyez l'annonce sur TI-Planet. :) :here: 6 lots Graph 90+E : Calculatrice Graph 90+E + packs de goodies Casio, Xcas, et TIP/PC :here: 4 lots Casio : Clé USB d'émulation Casio + 1 coque collector Casio + packs de goodies Casio, Xcas, et TIP/PC :here: 2 lots N0120EX : Calculatrice Numworks N0120EX + packs de goodies Numworks, Xcas et TIP/PC :here: 7 lots Numworks : Coque collector Numworks + Autocollant Numworks + packs de goodies Numworks, Xcas et TIP/PC :here: 6 lots CX2CAS : Calculatrice TI-Nspire CX II-T CAS avec licence logicielle + packs de goodies TI, Xcas, et TIP/PC :here: 2 lots Calculso : Calculatrice TI-83 Premium CE Édition Python garantie 6 ans avec gravure de texte laser + émulateur TI-SmartView CE + chargeur mural + housse et film de protection Wyngs + livret de prise en main et cahier d'activités + packs de goodies TI et TIP/PC :here: 2 lots 83PCE : Calculatrice TI-83 Premier CE Édition Python + émulateur TI-SmartView CE + film de protection Wyngs + livret de prise en main et cahier d'activités + 2 cahiers d'activités TI + packs de goodies TI et TIP/PC Soit un total de 29 lots pour récompenser les meilleurs scores à la chasse aux souris. Avec ça n'allez pas dire que vous n'aspirez pas à être le meilleur dress- euh, chasseur. Chasseur. :) Comme les années précédentes, les lots seront choisis par les participants par ordre décroissant de score. Un lot est également réservé au meilleur groupe (voir ci-dessous pour les règles des groupes) ; ce lot sera sélectionné par le premier membre du groupe à choisir. Comment jouer à Pykaster3D Grâce à la dernière version de la bibliothèque polycal5.py, Pykaster3D fonctionne sur 12 environnements Python : Graph 35+E II, fx-9750G III, fx-9860G III Graph 90+E, 90+E avec KhiCAS, fx-CG 50, fx-CG 50 avec KhiCAS HP Prime Numworks avec Khi et KhiCAS TI-Nspire CX II, CS II avec Ndless et KhiCAS, et CX avec Ndless et KhiCAS Je liste ici les instructions pour les plateformes couramment utilisées par la communauté Planète Casio ; pour la liste complète, vois l'article de TIP. :arrow: Ordinateur avec SDL2 Extrais l'archive zip dans un dossier de ton choix puis lance pyka3d.py. Il te faudra la bibliothèque SDL2, que tu peux installer avec la commande "`pip install PySDL2`" sur toutes les plateformes. Téléchargement des scripts g90+e Graph 90+E avec l'application Python Transfère les programmes sur la calculatrice et lance `pyka3d.py` dans l'application PYTHON pour jouer. Il n'y a pas de saisie clavier sur la Graph 90+E, donc en mode manuel les 8 actions défilent en bas de l'écran et il te faut appuyer sur `AC/ON` pour sélectionner celle que tu veux quand elle passe. L'exécution est lente ; il est important de mettre le deuxième paramètre de `jouer_selon()` à 0 pour éviter les affichages inutiles. Je conseille également d'utiliser l'émulateur ou d'overclock pour gagner du temps. Téléchargement des scripts Tutoriel de transfert de fichiers Tutoriel d'overclock avec Ptune Émulateur pour Windows et sa version pour Mac g90+e Graph 90+E avec KhiCAS Transfère les scripts dans le dossier racine de la mémoire de stockage. Lance KhiCAS en mode MicroPython (à sélectionner via le menu F6 puis ouvrir, et exécuter `pyka3d.py`. Le mode manuel utilise les touches normalement ; `EXIT` pour quitter. Les mêmes remarques que la Graph 90+E s'appliquent pour les performances. Téléchargement des scripts Vidéo de démonstration g35+e2 Graph 35+E II Transfère les programmes sur la calculatrice et lance `pyka3d.py` dans l'application PYTHON pour jouer. Il n'y a pas de saisie clavier sur la Graph 35+E II, donc en mode manuel les 8 actions défilent en bas de l'écran et il faut appuyer sur `AC/ON` pour sélectionner celle qu'on veut quand elle passe. L'exécution est lente ; il est important de mettre le deuxième paramètre de `jouer_selon()` à 0 pour éviter les affichages inutiles. Je conseille également d'utiliser l'émulateur ou d'overclock pour gagner du temps. Téléchargement des scripts Tutoriel de transfert de fichiers Tutoriel d'overclock avec Ftune Émulateur pour Windows Règles de soumission et gestion des groupes Envoie ton script pyka3d.py modifié par mail à `info@tiplanet.org` avant le 13 Novembre 23h59, avec : En objet, Pykaster3D ; Un moyen de contact que tu surveilles fréquemment (email, SMS, Discord, etc) ; En option, ton pseudonyme Planète Casio et/ou TI-Planet ; Pour recevoir les lots, ton adresse postale complète avec nom/prénom et un numéro de téléphone (pour suivre les envois). Ces informations peuvent être envoyées plus tard, mais on gagne du temps à les communiquer tout de suite. Les informations personnelles ne seront partagées à aucun tiers et détruites sur demande. En soumettant tu peux également demander une clé USB d'émulation Casio, que nous fournirons dans la limite de nos stocks (18 clés). Le but est de permettre de tester sur des machines réactives si jamais tu n'en as pas sous la main. ^^ Pour créer un groupe, indique ton pseudonyme Planète Casio ou TI-Planet et joins un logo (carré) pour le groupe. Une signature Python te sera fournie, et toute personne accompagnant sa soumission de ta signature sera considérée comme un membre du groupe. (Chaque participant ne peut faire partie que d'un groupe.) Le score de chaque groupe sera calculé à partir des scores des membres par une moyenne pondérée. Le meilleur groupe remportera un lot dédié à se partager. Conclusion Cette année, un seul sujet mais quel sujet ! Bon courage pour optimiser celui-là. Ce n'est même pas la peine de prononcer le mot «combinatoire» tant les options sont vastes (plus quelques pièges comme le fait que modifier une action dans le passé impacte toute la suite du script). Je pense que les chances sont bien plus côté exploration que bruteforce. ^^ Bon courage pour ce défi, faites honneur à la communauté Planète Casio ! :D Et n'hésitez pas si besoin à aller consulter le topic d'entraide. Thu, 22 Sep 2022 00:56:53 +0200 [Feature Request] Show the "Description en anglais" field, if it's used https://www.planet-casio.com/Fr/forums/topic17163--.html I've quickly come to realize my attempts at French translations are hopeless :lol: I went full English mode in the S-SHT Tic-Tac-Toe game description. Obviously that's not OK, so I appreciate your overlooking it so far, but it's been bothering me. As I understand it, the "Description en anglais" field was for an English version of the site that has been discontinued. However, the field still exists in the database, so I was wondering if we could make use of it. When a program or game is viewed, is there an easy way to make the "Description en anglais" field visible to all, if the field has something in it? That would allow me to write a native English version and paste a translated version into the "Description en français" field, offering the English context in the likely event of a poor French translation. As a workaround, I tried putting both languages into the "Description en français" field and that was a mess. Thanks in advance for considering my request! p.s. It doesn't necessarily need to be English-only. If the field were intended for any native language, that could be even better. There'd be no extra programming for that, just a name change of the field. Even if it still has some reference to anglais in the database table name, nobody would see that when using the site. Mon, 19 Sep 2022 20:51:40 +0200 Transfert programme Graph 35 ou Graph 100 vers Graph 35+E https://www.planet-casio.com/Fr/forums/topic17162--.html Bonjour, Est-il possible de transférer un programme d'une Graph 35 ou Graph 100 vers une Graph 90+E? Ces calculatrices sont-elles compatibles, programmes, affichage ? Merci de votre réponse Mon, 19 Sep 2022 12:30:51 +0200 casio graph 90+e II ou 75+e ? https://www.planet-casio.com/Fr/forums/topic17161--.html Bonjour tout le monde :) j'aimerais acheter une nouvelle callculatrice. (parce que ma graph 35+ a fait son temps : Ma callculatrice est morte :E) et je sais pas laquelle est la meilleure.(juste pour les jeux) j'avais déjà posé la qustion a quelqu'un et il m'avait répondu:"je pense que les graph 75+e et graph 90+e II sont pas mal" de toute facon...c'est juste pour les jeux que je veux m'en acheter une autre. voila...j'aimerais savoir quel est la meilleur callculatrice pour mettre les meilleurs add-ins (et je me fiche du budget) Sun, 18 Sep 2022 20:18:07 +0200 Réécriture d'une référence/documentation BASIC CASIO ? - Débat https://www.planet-casio.com/Fr/forums/topic17160--.html Bonjour à tous ! Ça fait un moment que je n'en ai pas parlé (ni d'ailleurs avancé dessus) - si jamais qqn s'en rappelle :mmm: - , mais j'avais envie de réécrire une référence et documentation BASIC CASIO complète. J'écris simplement ce message-ci, car après déjà quelques heures passées à écrire cette documentation, je m'en suis (un peu) lassé... J'aimerais donc savoir si ce projet intéresserait du monde, et si d'autres personnes pourraient aider (comme par ex les instructions BASIC Casio de Graph 90+E). Il faudrait peut-être aussi un relecteur, un "UI designer" (je suis une grosse sauce pour ça :lol: ), ajouter des liens vers des tutos (comme Super Drawstat), bref toute aide est la bienvenue. Donc si des gens arrivent à me motiver, je peux très bien continuer mais je ne le ferai pas si ça n'intéresse que 3~4 badauds malheureusement. Pourquoi refaire la documentation ? Tout simplement : elle est pauvre ! Il y a peut-être bien un manuel officiel, mais il manque énormément d'informations. Voici quelques notes que j'ai pu relever au fur et à mesure de mes "tests": - seulement 3 fonctions gèrent les Erreurs Maths : Graph (plot), SolveN(), et les fonctions récursives. - Min() Max() Mean(),... peuvent prendre 1 OU 2 arguments, chacun étant soit réel soit complexe - Fill(nbr, listmat) : listmat peut être "List 1", "Mat A", ou simplement "1" ! - ... J'en passe, bien évidemment, mais beaucoup ont les mêmes possibilités que Fill(). Le problème c'est que (quasi) personne ne le sait, alors que ça permet d'optimiser et réduire le code ! Il y a aussi d'autres fonctions dont la documentation est simplement trop pauvre, comme les fonctions de récurrence. Bref, il y a matière à faire (et à apprendre), mais aussi d'innombrables lignes à écrire, voilà donc pourquoi j'aimerais avoir des retours avant de me lancer concrètement dans ce projet pharaonique (à mon sens). Sat, 17 Sep 2022 13:34:45 +0200 PicoBASIC - Un interprétateur qui charge le code par tronçons. https://www.planet-casio.com/Fr/forums/topic17159--.html PicoBASIC (Mon projet secret, mais qui ne l'est plus :lol: ) @rdp Les commits sur mon gitea (au début j'avais gitlab) perso : https://www.planet-casio.com/storage/forums/Capture%20d%E2%80%99%C3%A9cran%20du%202022-09-17%2011-35-29-17159.png Un code exemple : msg@="bigger than zero" 8bit@=0 if 8bit==0 msg@="is zero" ifend :here: :here: :here: PicoBASIC est un language de programmation qui permettra aux graphs monochromes d'éxecuter des gros programmes codés on-calc avec une vitesse comfortable. Comment le code est décodé : msg:0, @=:4, "bigger than zero":3, 8bit:0, @=:4, 0:1, if:0, 8bit:0, ==:4, 0:1, msg:0, @=:4, "is zero":3, ifend:0, Chaque ligne correspond à une instruction. Le tronçon est exécuté caractère par caractère. Dans le log que j'ai mis plus haut les morceaux sont séparés par des virgules. Les morceaux sont écrits morceau:type Les types : * 0 : mot * 1 : int * 2 : float * 3 : string * 4 : opérateur Sat, 17 Sep 2022 11:38:11 +0200