Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Actualités


Index du Forum » Actualités » [Annonce] Jam Python #1
Lephenixnoir En ligne Administrateur Points: 20317 Défis: 143 Message

[Annonce] Jam Python #1

Posté le 13/07/2021 22:53

Salut à tous ! Les vacances sont toutes fraîches, mais ce n'est pas une raison pour laisser filer les calculatrices. Au contraire, c'est le moment de lancer les jeux vidéo dessus !

La semaine prochaine aura lieu la toute première Game Jam Python de Planète Casio.


Le principe est aussi simple que possible : pour participer, publiez sur le site un jeu en Python, construit sur le thème qui sera annoncé Samedi 17 à 18 heures, avant Samedi 24 à 18 heures.

Les capacités du Python pour faire des jeux n'ont pas encore été explorées très en détail, donc pas d'inquiétudes, le thème sera large et se prêtera à tous les genres de jeux (ou presque) pour ne pas vous limiter.

Le meilleur programme recevra clé USB émulateurs CASIO permanente qui contient tous les émulateurs de CASIO utilisables sans limite de durée. Ils reçoivent même des mises à jour de temps en temps, comme des nouvelles applications. Ce lot est offert généreusement par CASIO Éducation.




Petite fiche de rappel :
  • Dates : du Samedi 17 (18 heures) au Samedi 24 (18 heures)
  • Langage : Python uniquement (n'importe quelle implémentation)
  • Thème : révélé Samedi 17 à 18 heures
  • Lot : une clé USB contenant tous les émulateurs CASIO (avec mises à jour)
  • Instructions de participation : il suffit d'avoir un compte et de poster le programme dans les dates. Il n'y a pas besoin de s'inscrire/déclarer à l'avance, mais ça m'aide si vous le faites.

Informations utiles

Voici les (principaux) modèles qui peuvent participer à cet événement :
  • Graph 35+E II (avec l'application PYTHON)
  • Graph 90+E (avec l'application PYTHON)
  • Graph 35+ USB/35+E (avec CasioPython)
  • Graph 75/75+/75+E (avec CasioPython)

Vous pouvez accéder au tutoriel de transfert pour chaque modèle à partir du comparateur de calculatrices.

Pour ceux qui ne sont pas tout à fait familiers avec les jeux en Python, voici un rappel de quelques astuces !

  • Interagir avec le clavier avec input() : vous pouvez interagir avec l'utilisateur en utilisant la fonction input() pour lire une entrée textuelle. Cependant, ça ne marche que sur le shell (l'écran texte).
  • Interagir avec AC/ON dans l'écran graphique : vous pouvez interagir avec la touche AC/ON à tout moment, même en mode graphique, parce que AC/ON produit une exception KeyboardInterrupt.

    try:
      while True:
        pass
    except KeyboardInterrupt:
      # AC/ON a été pressé !
  • Afficher des pixels à l'écran : les Graph 35+E II et Graph 90+E disposent du module casioplot qui permet de dessiner à l'écran. Il y a une présentation de casioplot dans cet article de l'an dernier et une description plus complète sur cette page de wiki.
  • Afficher des formes plus complexes : vous pouvez trouver des fonctions de dessin plus complexes comme des rectangles et des lignes dans turtle.py et matplotl.py, les codes des modules turtle et matplotl de CASIO (plus précisément les versions qui existaient avant que ces modules ne soient intégrés à l'OS).
  • Autres outils de dessin : vous pouvez utiliser GeoLib de Shadow15510 : (le topic ici et le programme ici), Sprito de KikooDX (le topic ici).
  • Autres sources d'inspiration : regardez par exemple le concours de démos graphiques de l'an dernier, l'usage de Sprito pour afficher du texte personnalisé ou encore le moteur de map de RPmaker.

Bon courage à tous, et amusez-vous bien en explorant les possibilités de ce langage encore nouveau et qui peut en faire plus que ce qu'on soupçonne !


Dark storm En ligne Labélisateur Points: 11501 Défis: 176 Message

Citer : Posté le 13/07/2021 23:06 | #


Ça me chauffe
À voir si je prends le temps de faire quelque chose de construit

Ça sera l'occasion de faire plus que PyCPaCPoC
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Shadow15510 Hors ligne Administrateur Points: 4851 Défis: 16 Message

Citer : Posté le 14/07/2021 09:52 | #


Euh, GeoLib c'est un peu buggé je crois xD ça fait longtemps que j'ai pas regardé le code en détail, en relisant le topic DS voulait faire une PR 'fin je met le code sur gitea ce sera plus simple

Tant qu'on est dans les astuces il reste quelques trucs intéressant (ou pas) à savoir :
- Sprito développé par KikooDX
et ensuite quelques applications :
- Affichage de texte avec une police custom
- RPmaker
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Lephenixnoir En ligne Administrateur Points: 20317 Défis: 143 Message

Citer : Posté le 14/07/2021 11:05 | #


Merci, j'ai ajouté Sprito. Je crois que tu t'es trompé pour les deux autres liens, ils mènent au même endroit.

Dark storm a écrit :
Ça me chauffe
À voir si je prends le temps de faire quelque chose de construit

Ça sera l'occasion de faire plus que PyCPaCPoC

Oui, lâche-toi ! Je participerai aussi (à titre de fun) avec une idée de mon cru normalement un peu nouvelle
Shadow15510 Hors ligne Administrateur Points: 4851 Défis: 16 Message

Citer : Posté le 14/07/2021 11:08 | #


Ah oui x) Merci

Du coup les bons liens xD :
- Affichage de texte avec une police custom
- RPmaker
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Ptitjoz Hors ligne Membre Points: 44 Défis: 0 Message

Citer : Posté le 21/07/2021 08:22 | #


Bonjour

vous avez des exemples concrets de l’utilisation de "AC/ON' qui produit une exception KeyboardInterrupt ? (Casio 90E+ )

Bien cordialement
Le savoir n'est rien si il n'est pas partagé.
Lephenixnoir En ligne Administrateur Points: 20317 Défis: 143 Message

Citer : Posté le 21/07/2021 08:54 | #


L'exemple du topic montre comment attendre une pression de AC/ON. Tu peux aussi faire un truc comme ça :

while True:
  try:
    # Code du jeu
    set_pixel(...)
    show_screen()
    do_physics(...)
  except KeyboardInterrupt:
    # AC/ON a été pressé

Attention, la pression de AC/ON interrompt le code du jeu en plein milieu donc on peut avoir des frames à moitié finis. On ne peut pas non plus utiliser de bloc finally parce que si l'interruption se produit pendant le finally elle n'est pas rattrapée donc le programme est interrompu pour de vrai.
Ptitjoz Hors ligne Membre Points: 44 Défis: 0 Message

Citer : Posté le 21/07/2021 08:58 | #


d'accord... donc rien de bien propre ni concluant avec cette méthode.
merci en tous cas d'avoir répondu.
Le savoir n'est rien si il n'est pas partagé.
Lephenixnoir En ligne Administrateur Points: 20317 Défis: 143 Message

Citer : Posté le 21/07/2021 09:00 | #


Ben tu peux avoir un jeu avec une action en mode graphique, sans passer par input(). C'est pas évident mais c'est parfois bien mieux que le shell !
Dark storm En ligne Labélisateur Points: 11501 Défis: 176 Message

Citer : Posté le 21/07/2021 16:22 | #


Un exemple de point & click basé sur cette technique : https://www.planet-casio.com/Fr/forums/topic16765-1-pycpacpoc-une-demo-de-jeu-python.html
Finir est souvent bien plus difficile que commencer. — Jack Beauregard

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2021 | Il y a 58 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd