Concours Python 2024-2025 - Championnat de codage jeu vidéo
30 posts
• Page 3 of 3 • 1, 2, 3
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Apparemment get_pixel serait responsable des lags sur N0110. Je l'ai testé que sur N0120 et quand j'ai testé sur N0110 j'ai eu un choc. Je vais donc virer les set_pixel et optimiser le temps d'exécution sur N0110 ..
Enseignant de mathématiques et d'informatique. Spécialité NSI : Des projets, des tutos, mais aussi de l'art
Calculatrice NumWorks : Des applications et des jeux, scripts, 📙 Découvrir la NumWorks
-
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)- Posts: 1058
- Images: 67
- Joined: 17 May 2012, 09:49
- Location: Avignon
- Gender:
- Calculator(s):→ MyCalcs profile
- Twitter: nsi_xyz
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Bonjour,
Après avoir fini mon jeu pour la Numworks, je me rends compte qu'il ne tourne que sur Upsilon, et non sur l'OS officiel Epsilon, à cause de l'erreur suivante:
Est-ce pénalisant pour le concours, ou est-ce que le fait de n'avoir qu'un OS compatible est acceptable
Après avoir fini mon jeu pour la Numworks, je me rends compte qu'il ne tourne que sur Upsilon, et non sur l'OS officiel Epsilon, à cause de l'erreur suivante:
- Code: Select all
MemoryError: memory allocation failed, allocating 149 bytes
Est-ce pénalisant pour le concours, ou est-ce que le fait de n'avoir qu'un OS compatible est acceptable
-
ayabusa
Niveau 0: MI (Membre Inactif)- Posts: 2
- Joined: 06 Feb 2024, 19:38
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: Terminale
- GitHub: ayabusa
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Bonjour @ayabusa.
Je te rassure, ce n'est pas bloquant.
Mais si tu peux avoir la compatibilité Epsilon, c'est mieux.
Pour te donner un point de repère :
Il y a pas mal d'astuces simples pour consommer moins de mémoire heap, rien que dans la façon d'écrire son code.
Et si le jeu est terminé et que plus aucun ajout n'est prévu, c'est une situation d'autant plus confortable pour passer à la phase d'optimisation.
N'hésite pas à le partager et à en parler autour de toi.
Je te rassure, ce n'est pas bloquant.
Mais si tu peux avoir la compatibilité Epsilon, c'est mieux.
Pour te donner un point de repère :
- Epsilon : 64K de mémoire heap
- Upsilon : 69K de mémoire heap
- Omega : 99K de mémoire heap
Il y a pas mal d'astuces simples pour consommer moins de mémoire heap, rien que dans la façon d'écrire son code.
Et si le jeu est terminé et que plus aucun ajout n'est prévu, c'est une situation d'autant plus confortable pour passer à la phase d'optimisation.
N'hésite pas à le partager et à en parler autour de toi.
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42044
- Images: 16236
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Ok merci pour ta réponse et tes précieuses indications, je vais essayer d'optimiser mon script le plus possible
-
ayabusa
Niveau 0: MI (Membre Inactif)- Posts: 2
- Joined: 06 Feb 2024, 19:38
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: Terminale
- GitHub: ayabusa
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Bonjour tout le monde !
Ce n'est pas vraiment en rapport mais je ne sais pas où le mettre. C'est à propos du code "pykaster3d" de 2022, je n'arrive pas à le faire tourner sur numworks, bien qu'ayant réussi à l 'installer sur Khi, et à mettre le heap MicroPython à 124 ko. Le script démmarre, puis affiche une memory error après avoir dessiné un zone d'à peu près 80 pixel, sur l'écran.
Ensuite je ne peux même plus écrire quelque chose comme "from time import *" sans avoir de MemoryError. Pourriez-vous m'aider ?
Sinon, à propos du concours, je pense participer mais là je suis à court d'idée. je pense faire un jeu en 3d style minecraft en utilisant une technique similaire au "voxel rendering", mais franchement ça risque d'être un difficile... Si vous avez des idées que vous n'utiliserez pas, elles seront acceptées volontiers.
Merci d'avance !
Ce n'est pas vraiment en rapport mais je ne sais pas où le mettre. C'est à propos du code "pykaster3d" de 2022, je n'arrive pas à le faire tourner sur numworks, bien qu'ayant réussi à l 'installer sur Khi, et à mettre le heap MicroPython à 124 ko. Le script démmarre, puis affiche une memory error après avoir dessiné un zone d'à peu près 80 pixel, sur l'écran.
Ensuite je ne peux même plus écrire quelque chose comme "from time import *" sans avoir de MemoryError. Pourriez-vous m'aider ?
Sinon, à propos du concours, je pense participer mais là je suis à court d'idée. je pense faire un jeu en 3d style minecraft en utilisant une technique similaire au "voxel rendering", mais franchement ça risque d'être un difficile... Si vous avez des idées que vous n'utiliserez pas, elles seront acceptées volontiers.
Merci d'avance !
Last edited by HenriHenry on 01 Jan 2025, 12:21, edited 1 time in total.
-
HenriHenry
Niveau 1: MD (Membre Débutant)- Posts: 4
- Joined: 28 Dec 2024, 04:36
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Bonjour @HenriHenry
Malheureusement, le script nécessite déjà quasiment 100K de heap dans sa version monochrome, et sensiblement plus en version couleur.
J'avais certes réussi à le faire tourner sur NumWorks il y a 2 ans, mais nous étions déjà à quelques octets près avec des erreurs en cours de partie selon le trajet emprunté, et donc avec les mises à jour effectuées depuis qui ont fait bouger des choses, je ne suis pas surpris que l'erreur puisse se déclencher plus tôt.
Justement, il faudrait savoir si le réglage à 124K est bien pris en compte. J'ai des souvenirs de réglages de valeurs trop élevées pour lesquels KhiCAS n'y arrivait pas mais restait totalement silencieux à ce sujet.
Peut-être tenter légèrement moins de 124K.
Autre piste comme ça, tu peux tenter de créer un projet en ligne sur Upsilon Workshop, d'y importer les scripts de Pykaster 3D, et dans les réglages du projet de changer l'environnement d'exécution de Upsilon à Upsilon CASworks.
HenriHenry wrote:Ce n'est pas vraiment en rapport mais je ne sais pas où le mettre. C'est à propos du code "pykaster3d" de 2022, je n'arrive pas à le faire tourner sur numworks, bien qu'ayant réussi à l 'installer sur Khi, et à mettre le heap MicroPython à 124 ko. Le script démmarre, puis affiche une memory error après avoir dessiné un zone d'à peu près 80 pixel, sur l'écran.
Ensuite je ne peux même plus écrire quelque chose comme "from time import *" sans avoir de MemoryError. Pourriez-vous m'aider ?
Malheureusement, le script nécessite déjà quasiment 100K de heap dans sa version monochrome, et sensiblement plus en version couleur.
J'avais certes réussi à le faire tourner sur NumWorks il y a 2 ans, mais nous étions déjà à quelques octets près avec des erreurs en cours de partie selon le trajet emprunté, et donc avec les mises à jour effectuées depuis qui ont fait bouger des choses, je ne suis pas surpris que l'erreur puisse se déclencher plus tôt.
Justement, il faudrait savoir si le réglage à 124K est bien pris en compte. J'ai des souvenirs de réglages de valeurs trop élevées pour lesquels KhiCAS n'y arrivait pas mais restait totalement silencieux à ce sujet.
Peut-être tenter légèrement moins de 124K.
Autre piste comme ça, tu peux tenter de créer un projet en ligne sur Upsilon Workshop, d'y importer les scripts de Pykaster 3D, et dans les réglages du projet de changer l'environnement d'exécution de Upsilon à Upsilon CASworks.
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42044
- Images: 16236
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Merci Beaucoup !
Pendant ce temps j'ai essayé de le faire tourner sur Upsilon (en réduisant le nombre de player à 5 pour l'instant), et je dois dire que vous avez fait un travail incroyable !
Je me demandais si un portage du script sur Epsilon, Upsilon, et Omega pourrait être accepté pour ce concours ?
Et sinon, Est-ce que un jeu de type "tower defense" sans thème aurait assez de rapport avec "la carte" (Après tout, dans un tower defense, on construit sa propre carte, non ? )?
Et si c'est possible, j'aimerais que vous m'expliquiez comment faire pour stocker des textures en bytes, comme pour Pykaster3d, et comment ensuite les interpréter et les redimensionner/orienter. (Si vous n'avez pas le temps, ce n'est pas très grave, je pense pouvoir m'en passer, mais je préfère être équipé au mieux pour ce concours et tout les suivants !)
Merci encore !
Pendant ce temps j'ai essayé de le faire tourner sur Upsilon (en réduisant le nombre de player à 5 pour l'instant), et je dois dire que vous avez fait un travail incroyable !
Je me demandais si un portage du script sur Epsilon, Upsilon, et Omega pourrait être accepté pour ce concours ?
Et sinon, Est-ce que un jeu de type "tower defense" sans thème aurait assez de rapport avec "la carte" (Après tout, dans un tower defense, on construit sa propre carte, non ? )?
Et si c'est possible, j'aimerais que vous m'expliquiez comment faire pour stocker des textures en bytes, comme pour Pykaster3d, et comment ensuite les interpréter et les redimensionner/orienter. (Si vous n'avez pas le temps, ce n'est pas très grave, je pense pouvoir m'en passer, mais je préfère être équipé au mieux pour ce concours et tout les suivants !)
Merci encore !
-
HenriHenry
Niveau 1: MD (Membre Débutant)- Posts: 4
- Joined: 28 Dec 2024, 04:36
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
HenriHenry wrote:Merci Beaucoup !
Pendant ce temps j'ai essayé de le faire tourner sur Upsilon (en réduisant le nombre de player à 5 pour l'instant), et je dois dire que vous avez fait un travail incroyable !
Merci
Si ça tourne sur calculatrice avec l'application Python du firmware Upsilon et pas avec l'application KhiCAS, c'est qu'il y avait effectivement un problème avec le réglage de la taille du heap, qui a posteriori ne fonctionnerait pas.
HenriHenry wrote:Je me demandais si un portage du script sur Epsilon, Upsilon, et Omega pourrait être accepté pour ce concours ?
De mon point de vue, ça ne rentre pas dans le cadre de la compatibilité avec un modèle différent.
HenriHenry wrote:Et sinon, Est-ce que un jeu de type "tower defense" sans thème aurait assez de rapport avec "la carte" (Après tout, dans un tower defense, on construit sa propre carte, non ? )?
Le thème pour cette année, se voulait volontairement très ouvert afin de ne bloquer personne.
Tout jeu avec un affichage d'un monde 2D en vue de dessus et donc assimilable à un affichage de carte devrait convenir, et c'est a priori le cas d'un tower defense.
HenriHenry wrote:Et si c'est possible, j'aimerais que vous m'expliquiez comment faire pour stocker des textures en bytes, comme pour Pykaster3d, et comment ensuite les interpréter et les redimensionner/orienter. (Si vous n'avez pas le temps, ce n'est pas très grave, je pense pouvoir m'en passer, mais je préfère être équipé au mieux pour ce concours et tout les suivants !)
Si la question est de savoir comment mettre une image dans un script Python, il y a plein de façons, et entre autres nous avons un convertisseur en ligne qui fournit même une fonction d'affichage optimisée :
img2calc.php
Dans le cas de Pykaster3D, le moteur d'affichage 3D est de type raycasting.
Les images sont découpées en bandes verticales, qui à l'affichage sont juxtaposées avec des grossissements différents, ce qui donne l'effet de profondeur.
Voir par exemple https://permadi.com/1996/05/ray-casting-tutorial-10/
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42044
- Images: 16236
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Bonne année à tous !
Merci beaucoup critor, pour ces réponses toujours rapide et pertinente
J'avais deux dernières (j'espère) questions :
Comment doit on présenter son message de participation, et depuis quel adresse mail faut-il l'envoyer ?
Je suppose que c'est depuis n'importe quel adress mail, du moment qu'on indique notre nom d'utilisateur TI-planet ?
Et peut-on écrire le texte des scripts en anglais, ou est-ce uniquement en francais/option francais et autres langues ?
Merci encore pour ce concours incroyable qui ne pourrait pas (ou difficilement) fonctionner sans vous, critor !!!
Merci beaucoup critor, pour ces réponses toujours rapide et pertinente
J'avais deux dernières (j'espère) questions :
Comment doit on présenter son message de participation, et depuis quel adresse mail faut-il l'envoyer ?
Je suppose que c'est depuis n'importe quel adress mail, du moment qu'on indique notre nom d'utilisateur TI-planet ?
Et peut-on écrire le texte des scripts en anglais, ou est-ce uniquement en francais/option francais et autres langues ?
Merci encore pour ce concours incroyable qui ne pourrait pas (ou difficilement) fonctionner sans vous, critor !!!
Last edited by HenriHenry on 02 Jan 2025, 01:15, edited 1 time in total.
-
HenriHenry
Niveau 1: MD (Membre Débutant)- Posts: 4
- Joined: 28 Dec 2024, 04:36
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Concours Python 2024-2025 - Championnat de codage jeu vi
Merci, très belle année 2025 à toi aussi.
Tu peux expédier ta participation depuis l'adresse courriel de ton choix.
Il n'est pas obligatoire de fournir un nom d'utilisateur TI-Planet, mais c'est mieux pour nous d'avoir davantage de moyens de vous contacter, au cas où l'adresse courriel ne soit pas régulièrement consultée, ou que nos envois soient catégorisés comme du spam.
Tu peux écrire l'interface et les commentaires aussi bien en Français qu'en Anglais, il n'y a aucune pénalité là-dessus. !=
Tu peux expédier ta participation depuis l'adresse courriel de ton choix.
Il n'est pas obligatoire de fournir un nom d'utilisateur TI-Planet, mais c'est mieux pour nous d'avoir davantage de moyens de vous contacter, au cas où l'adresse courriel ne soit pas régulièrement consultée, ou que nos envois soient catégorisés comme du spam.
Tu peux écrire l'interface et les commentaires aussi bien en Français qu'en Anglais, il n'y a aucune pénalité là-dessus. !=
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42044
- Images: 16236
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
30 posts
• Page 3 of 3 • 1, 2, 3
Who is online
Users browsing this forum: No registered users and 56 guests