CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[Python] Fini : Pyxmines

_Xaar
_Xaar
Niveau 10
14 janvier 2007 à 13:56:32

Bonjour,

Comme certains l´auront sûrement deviné au titre Pyxmines est un clône du démineur, un jeu qui ne paie pas de mine donc (hahaha :) ) mais sur lequel j´aurais mine de rien (hahaha bis, je suis trop comique :) ) pas mal bossé (plus d´explications plus loin).

Screenshot:
http://perso.orange.fr/pyxsoftware/images/pyxmines_01.png

Download de l´éxécutable windows :
http://perso.orange.fr/pyxsoftware/fichiers/pyxmines_v_1_0_windows.zip

Download source windows et linux, nécessite python (2.4.3) et pygame (1.7.1) pour marcher:
http://perso.orange.fr/pyxsoftware/fichiers/pyxmines_v_1_0_source.zip

Le code pour les curieux :
http://perso.orange.fr/pyxsoftware/fichiers/pyxmines_v_1_0.py

Je précise que la version source fonctionne sous Linux pour de vrai (pas comme les anciens codes que je supposais portables alors qu´en fait non).

Les touches:

Clic droit de la souris sur une case non découverte : pose/enlève un drapeau.
Clic gauche de la souris sur une case : découvre la case cliquée.
Clic quelconque sur la tête du python : relance une nouvelle partie.

Touche Echap : quitte le jeu.

Touche F1 : mode entrainement (10 rangées sur 10 colonnes).
Touche F2 : mode facile (20*10).
Touche F3 : mode moyen (20*15).
Touche F4 : mode difficile (20*20).

Touche F5 : quitte la partie en cours et affiche les meilleurs temps.
Touche S : sur l´écran des meilleurs temps remet ces derniers à 999s.

Touche Backspace : sur l´écran de saisie de nom efface la dernière lettre rentrée.
Touche Entrée : sur l´écran de saisie de nom valide le nom rentré.

[mode je raconte ma vie]

:d) Oh eh l´autre, un démineur c´est nul ! Pourquoi t´a fait un truc pareil ?

Et bien d´abord quand je faisais du basic MO6 étant gamin j´avais fait un démineur, sauf que j´étais pas assez débrouillard pour que plusieurs cases se découvrent à la fois et qu´il fallait cliquer sur les cases qui affichait zéro une par une. Au moins 15 ans plus tard je prends ma revanche :diable:

Et ensuite puisque je fais mumuse sous Linux en ce moment je n´allais pas commencer par un truc compliqué pour m´habituer à un nouvel environnement.

Mais j´ai dit au départ que j´avais pas mal bossé dessus : en fait il y a eu 3 versions différentes du jeu et ça doit bien faire 3 semaines/1 mois que je suis dessus.

Pour la première je me suis tourné de suite vers wxpython vu que c´est le gui que je connais le mieux, mais au final il me restait des petits bugs inexpliqués par rapport à une version windows tournant correctement avec le même code, bugs venant apparemment de gtk, et vu que je n´ai pas les compétences nécessaires pour trafiquer un truc pareil j´ai fini par me tourner ailleurs.

Pour la deuxième je me suis mit à pyfltk (port python de fltk) que je voulais essayer depuis un sacré moment, mais le support des images trop basique et un comportement parfois aléatoire du code a finit par me décourager, je n´ai jamais trouvé d´où venait le fait que parfois la dernière case cliquée n´était pas actualisée à l´écran. Pourtant au début c´était prometteur (comparé à du wxpython la position des éléments est carrée).

Pour la 3e je suis revenu à pygame et ça marche apparemment bien.

Pour les 3 versions j´ai essayé de faire des stands alones éxécutables linux en utilisant pyinstaller et cxfreeze (à la façon de ceux pour windows avec py2exe) et après avoir galèré comme un malade dessus je crois pouvoir dire que c´est impossible à faire de façon fiable, on retrouve trop de trucs différents d´une distribution à l´autre (ou même d´une version de distribution à une autre version de la même distribution) qui font que l´éxécutable va buguer pour une raison x ou y, et ça c´est en supposant que l´utilisateur garde les réglages de base et ne fasse pas de config ou d´update à sa sauce. Résultat des courses c´est 100 fois plus rapide de dire aux linuxiens d´installer python et pygame, comme quoi une trop grande diversité n´est pas forcément un avantage (sous windows avec py2exe votre premier éxécutable qui marche chez tout le monde il est torché en 5 minutes). De plus le poids de ce qu´il faut refiler est parfois assez hallucinant (quasiment 30 mégas décompressé du démineur wxpython si on veut bien faire les choses c´est pas top).

[/mode je raconte ma vie]

En conclusion je suis bien content d´avoir ramé comme un c** pour sortir un démineur, et quand je vois que pygame me renvoit un message d´erreur quand j´essaie d´ouvrir un fichier mp3 car c´est surement un format trop exotique pour le manchot linux je me dis que je vais bien me marrer pour faire un jeu avec du son... Mais que voulez vous, j´ai surement des tendances sado-maso quelque part :gni:

Vous avez tout lu ? Bravo, vous êtes courageux :oui:

fil_razorback
fil_razorback
Niveau 10
14 janvier 2007 à 15:22:49

En voyant le titre du sujet j´ai cru que ce serait un clone de Pikmin moi >.<

ebene
ebene
Niveau 5
14 janvier 2007 à 17:54:21

Les gens qui se lancent dans des petit trucs avec l´intention de pouvoir les terminer ont toute ma sympathie. :) Bonne chance pour la suite !

elhuron
elhuron
Niveau 6
14 janvier 2007 à 18:18:54

Hehe, bon boulot!
Bonne continuation sur linux! :)

[ChaChat]
[ChaChat]
Niveau 6
15 janvier 2007 à 11:40:13

"En voyant le titre du sujet j´ai cru que ce serait un clone de Pikmin moi >.<"

Hahahaha.

J´admire toujours ton travail, parce que quand tu commences quelque chose, tu le termines. Et tu fais pas chier le monde. Bref, j´aime bien. En tout cas bravo pour ce petit demineur fort symapthique, et comme l´a dit ElHuron, bonne continuation sur Linux.

_Xaar
_Xaar
Niveau 10
24 avril 2007 à 02:38:28

Upidou.

En ce moment je fais mumuse sur des fonctions destinées à produire des menus qui fonctionnent comme dans n´importe quelle application normale que vous avez l´habitude de voir sauf que c´est du pygame, screenshot :

http://perso.orange.fr/pyxsoftware/images/pyxmines_02.png

Les couleurs de fond et de bordures sont customisables en changeant une ligne de code (là c´est gris et noir pour coller avec le reste des graphismes), les catégories et les sous menus sont changeables eux aussi en autant de sous menus+1 lignes.

Le but du jeu c´est de pouvoir utiliser des menus d´un jeu à l´autre juste en faisant un gros copié collé des fonctions menus_quelquechose() et en changeant le minimum de choses. L´intéret c´est de jouer uniquement à la souris sans se fatiguer à tendre l´autre main pour passer par des touches de raccourcis (bah oui, je suis un gros fainéant) et à long terme dans un domaine plus général de supprimer le recours à wxpython dans mes autres programmes pour tourner uniquement sur du pygame.

quand tu commences quelque chose, tu le termines<<<

Oui enfin bon, sauf Linkle (c´est pas interdit que je le reprenne un jour celui là) et le tuto pygame (celui là par contre c´est mal barré :o)) ).

bakaaa
bakaaa
Niveau 6
24 avril 2007 à 09:13:28

Xaar joli, j´avais depuis un moment cette idée de créer un module de GUI pour PyGame (vu mon manque de temps c´est pas évident).

Si il y aurais moyen que tu m´envoies ton code, ça m´aiderais grandement pour commencer (pendant ma formation lol)

Mon mail : BaKa@*nospam*live.be ;)

_Xaar
_Xaar
Niveau 10
24 avril 2007 à 18:30:24

Pas de problème, je t´envoie ça dès que je peux, il me faudra juste un peu de temps pour expliquer à l´écrit quelques trucs spécifiques à savoir sur le fonctionnement (même si j´ai mis plus de commentaires que d´habitude c´est pas encore tout à fait ça :) ).

_Xaar
_Xaar
Niveau 10
26 avril 2007 à 19:34:27

C´est envoyé, ça te passera le temps demain pendant la formation :gni:

Fenix[74]
Fenix[74]
Niveau 10
26 avril 2007 à 19:45:54

Beau boulot, et merci des posts, ça fait plaisir à lire :)

_Xaar
_Xaar
Niveau 10
29 avril 2007 à 00:03:36

Si tout les liens au-dessus sont morts c´est normal, j´ai tout changé pour la sortie de la version 1.1. Votez pour moi le 6 mai, mon programme est simple et ne comporte qu´un seul point : imposer les edits sur les forums de jv.com, une véritable priorité nationale :oui:

Liste des changements :
- le système de menus est terminé et permet maintenant de cocher/décocher des options (voir 2e screenshot çi-dessous) ;
- changement de la façon d´effacer les meilleurs scores (même système que Blobyrinthe et que je vais adopter pour tout les futurs jeux -> en effacant le fichiers des scores avant de lancer le jeu ça recrée un fichier par défaut) ;
- suppression des touches de raccourcis qui du coup ne servaient plus à rien.

Screenshots:

http://perso.orange.fr/pyxsoftware/images/pyxmines_03.png
http://perso.orange.fr/pyxsoftware/images/pyxmines_04.png
http://perso.orange.fr/pyxsoftware/images/pyxmines_05.png
http://perso.orange.fr/pyxsoftware/images/pyxmines_06.png

Version stand-alone Windows:
http://perso.orange.fr/pyxsoftware/fichiers/pyxmines_v_1_1_windows.zip

Version source Windows et Linux, nécessite Python et Pygame:
http://perso.orange.fr/pyxsoftware/fichiers/pyxmines_v_1_1_source.zip

Le code source à part :
http://perso.orange.fr/pyxsoftware/fichiers/pyxmines_v_1_1.py

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment