[homebrew] Sudoku


Messages recommandés

Posté(e)

Bonjour,

je suis en train de préparer une version du jeu sudoku ( http://fr.wikipedia.org/wiki/Sudoku ) pour PSP.

Je le programme en Java. D'une part pour vérifier que algorithmiquement tout va bien, d'autre part je n'ai pas encore de PSP.

Normalement, un portage en C ne devrait pas poser de problème, les structures de données sont plutot simples ( tab[][] ).

L'interface est pour l'instant assez moche , ca donne ceci :

psp_sudoku.PNG

et la version est non jouable.

J'ai encore un problème à gérer. Quelques fois mon algorithme ne trouve pas de solution à la grille, qui pourtant, est valide. C'est un cas tout à fait probable et connu par les joueurs de sudoku.

Je vous tiens au courant :)

Posté(e)

resalut :)

jvois que ca interesse des gens :)

InThePocket => le javacript ... c'est mon horreur ( j'aime pas trop le javascript ... tout du moins quand je suis obligé d'en faire pour le web )

kyu => ouais je veux un peu t'aide notamment sur mon problème de résolution du sudoku. Je n'arrive pas à générer une grille remplie à 100%

Il y a trois niveaux de difficultés.

On va dire, que

pour le niveau facile : la grille est remplie à 30% au départ

niveau moyen : 20%

niveau diabolique : 10%

pour tester la résolution, je veux donc que la grille soit remplie à 100%

En gros l'algorithme de remplissage est le suivant :

- on prend une case au hasard

- on prend un chiffre entre 1 et 9

on vérifie qu'on peut placer le chiffre dans cette case ( la verification est composée de 3 vérifications : valide dans la ligne, valide dans la colonne, valide dans le carré)

Malheureusement, il arrive qu'une case ne puisse être remplie ... il faudrait donc revenir en arrière et faire un autre choix ...

Je n'ai pas encore implémenter le fait qu'on garde en mémoire les "choix"

Voila :)

Posté(e) (modifié)
resalut :)

jvois que ca interesse des gens :)

InThePocket => le javacript ... c'est mon horreur ( j'aime pas trop le javascript ... tout du moins quand je suis obligé d'en faire pour le web )

kyu => ouais je veux un peu t'aide notamment sur mon problème de résolution du sudoku. Je n'arrive pas à générer une grille remplie à 100%

Il y a trois niveaux de difficultés.

On va dire, que

pour le niveau facile : la grille est remplie à 30% au départ

niveau moyen : 20%

niveau diabolique : 10%

pour tester la résolution, je veux donc que la grille soit remplie à 100%

En gros l'algorithme de remplissage est le suivant :

- on prend une case au hasard

- on prend un chiffre entre 1 et 9

on vérifie qu'on peut placer le chiffre dans cette case ( la verification est composée de 3 vérifications : valide dans la ligne, valide dans la colonne, valide dans le carré)

Malheureusement, il arrive qu'une case ne puisse être remplie ... il faudrait donc revenir en arrière et faire un autre choix ...

Je n'ai pas encore implémenter le fait qu'on garde en mémoire les "choix"

Voila :)

514948[/snapback]

A l'epoque, j'avais aussi regardai les algos de résolution, des que j'ai le temps, je m'y mets (par contre dans un 1er temps ça sera surement dans un langage que je connais vraiment bien, comme le perl :) ).

Et je te proposerai bien de bosser sur les graphismes meme si ils sont pas exploiter dans l'immédiat :)

Modifié par kyu
Posté(e) (modifié)

Bon, j'ai fait le portage java --> C/ANSI (compilé sans warning sous VS.NET2003 & Ubuntu )

dimanche j'aurais ma PSP ... jpourrais tester la compilation avec PSPide et voir comment ca s'affiche :)

Restera à tester les contrôles et le coté graphique

Si mon projet vaut le coups, il sera sous licence GPL et tout le monde pourra y jeter un coup d'oeil.

Modifié par n3k
Posté(e)
Bon, j'ai fait le portage java --> C/ANSI (compilé sans warning sous VS.NET2003 & Ubuntu )

dimanche j'aurais ma PSP ... jpourrais tester la compilation avec PSPide et voir comment ca s'affiche :)

Restera à tester les contrôles et le coté graphique

Si mon projet vaut le coups, il sera sous licence GPL et tout le monde pourra y jeter un coup d'oeil.

522509[/snapback]

Vais devoir m'y mettre rapidement si je veux participer au moins un peu a ton projet ;)

Posté(e)

Ce qui serait sympa, c'est de faire un truc pas trop moche ....

j'ai pas encore regardé comme est foutu la lib graphique de la PSP. Mais ce qu'il faudrait c'est faire une maquette pas trop moche, définir une charte graphique du sudoku ... ( type boisé ? high tech ? épuré ? )

Trouver les différents tiles et en faire une maquette ... sous gimp ou photoshop

Ensuite il resterait plus qu'a :

- assembler le tout

- constuire l'interface graphique

- lier les actions aux boutons de la PSP

et roule ma poule

  • 3 semaines après...
Posté(e)

Bon, voici un ptit screen , la ou on en est :

sudoku2.jpg

Ce qui marche :

- affiche des images avec SDL_image

- controle du curseur de selection avec la croix et le stick analogique

- moteur du jeu ( remplissage de grille, vérification de la validité)

Prochainement, affichage des numéros dans les cases :-)

see you soon

Posté(e)

Helllo pour le moment je dis d'un point de vue artistique je trouve votre sodoku assez beau mais je trouve qu'il faudrai améliorer quelques points :

- j'ai remarquer que dans les grilles de sodoku elle sont par carrée de 9 mais la on arrive moyenement a distinguer c'est espaces.

- le skin est beau mais dans la version finale y aura t-il plusieur skin genres Lumines ?

bonne continuation

Posté(e)
Helllo pour le moment je dis d'un point de vue artistique je trouve votre sodoku assez beau mais je trouve qu'il faudrai améliorer quelques points :

- j'ai remarquer que dans les grilles de sodoku elle sont par carrée de 9 mais la on arrive moyenement a distinguer c'est espaces.

- le skin est beau mais dans la version finale y aura t-il plusieur skin genres Lumines ?

bonne continuation

544956[/snapback]

salut et merci pour les compliments

pr les carrés de 9 cases, c'est vrai qu'on devrait peut etre agrandir l'espace pour qu'il soit plus visible que maintenant, ( espaceCarré = 2 x espaceCase )

Les skins ca sera dans une version2 si un jour on la fait.

Posté(e)

y a po deja un jeu de sudoku sur psp? (cest une question qui nappelle po de réponse car je lai sur ma psp lol). A part ça il est très beau graphiquement (d'apres le screen que vous avez mis au dessus) mais j'aimerai faire une suggestion : Celui que j'ai sur ma psp est programmé pour que l'on puisse choisir que des numéros valides, c'est à dire que si sur la ligne, on a deja un 1, et ben on ne pourra vraiment pas mettre de 1 dans une case qui fai parti de cette ligne. Donc les numéros proposé exclueront tous les chiffres qui sont deja sur la ligne, sur la colonne ou dans le carré. Ainsi, le jeu est beaucoup plus facile. Donc le truc ca serait d'enlever ça et de pouvoir mettre nimporte quel chiffre meme si il est interdit ou faire un systeme de level (facile : comme lhomebrew que j'ai, difficile : pouvoir mettre des valeurs interdites..) . J'en demande pitetre trop mais c'est ce qui me géné dans lautre homebrew.

Vouali ben c'est keu meme du beau boulot et bonne continuation!

Posté(e)
y a po deja un jeu de sudoku sur psp? (cest une question qui nappelle po de réponse car je lai sur ma psp lol). A part ça il est très beau graphiquement (d'apres le screen que vous avez mis au dessus) mais j'aimerai faire une suggestion : Celui que j'ai sur ma psp est programmé pour que l'on puisse choisir que des numéros valides, c'est à  dire que si sur la ligne, on a deja un 1, et ben on ne pourra vraiment pas mettre de 1 dans une case qui fai parti de cette ligne. Donc les numéros proposé exclueront tous les chiffres qui sont deja sur la ligne, sur la colonne ou dans le carré. Ainsi, le jeu est beaucoup plus facile. Donc le truc ca serait d'enlever ça et de pouvoir mettre nimporte quel chiffre meme si il est interdit ou faire un systeme de level (facile : comme lhomebrew que j'ai, difficile : pouvoir mettre des valeurs interdites..) . J'en demande pitetre trop mais c'est ce qui me géné dans lautre homebrew.

Vouali ben c'est keu meme du beau boulot et bonne continuation!

545067[/snapback]

Oui il existe déja un sudoku, il existe tellement de chose sur la psp... L'important c'est de se faire plaisir et d'inover. Cela prend du temps et nous en avons peu

oui, nous trouvons aussi que ca rend le jeu trop facile, nous avons pensé à quelque chose d'autre :

la possibilité de créer une liste de chiffres possibles ou de chiffres à exclure

nous ne savons pas encore si visuellement l'ecran de la psp nous permettra d'afficher les chiffres de la manière suivante :

Exemple, tu sais que pour la case C les chiffres 2,3 sont envisageables, mais pas les chiffre 7,8 qui sont deja présent dans une ligne ou une colonne. Nous aimerais donc afficher dans la case C les chiffres 2,3 en vert et les chiffres 7,8 en rouge. A voir sur la prochaine maquette.

Posté(e)

C'est bizarre, je viens de decouvrir ca cette semaine lol

J'ai tjs rien compris au principe du jeu mais ouè c'est interessant !!!

Il est très classe pour le moment.

Bonne chance et bonne continuation.

Posté(e)

Ca serait bien effectivement de pas avoir trop d'aide au niveau de la résolution du sudoku... J'ai DL un petit freeware PC, qui optionne tout seul, ya plus rien faire apres... :(

Sinon, sur votre derniere proposition, je pense pas qu'il faille privilégier le côté 'automatique', sinon ca reviendrait au même que l'autre homebrew de sudoku, a savoir qu'on aurait que les chiffres valides

Ce qui serait bien, c'est que l'utilisateur puisse lui meme inscrire ces chiffres ('optionner' en langage sudoku)...

Posté(e)

Salut, superbe initiative !

J'ai découvert ce jeu par un potes qui à des 10aine de livrée de ce truc !!

Et depuis je suis acro au sudoku.

J'ai commencer a en faire un sur TI (ma platforme native, jamais je l'abandonnerais :wub: ) pour avoir une aproche technique.

Et je me pose deux trois question :

-les grilles (au debut de la partie) sont gérérée automatiquement ? ou préprogammée par une liste?

-si elle sont automatiquement générée, c'est super -> une infinité de niveau (sous reserve de bug) mais l'algo doit être cho !!

-sinon par tableau préenregistré, ce qui améliore la vitesse de jeu(demarage)0, mais reduit la durée de vie du soft.

Je sais pas si je termine le mien sur TI puis sur Lua, où si vou voulez de moi pour bosser dessus.

Par contre le java connais pas :wacko: je riquerait de vous ralentir!

Mais C et un petin peu Lua :D

Posté(e)
Salut, superbe initiative !

J'ai découvert ce jeu par un potes qui à des 10aine de livrée de ce truc !!

Et depuis je suis acro au sudoku.

J'ai commencer a en faire un sur TI (ma platforme native, jamais je l'abandonnerais  :wub: ) pour avoir une aproche technique.

Et je me pose deux trois question :

-les grilles (au debut de la partie) sont gérérée automatiquement ? ou préprogammée par une liste?

-si elle sont automatiquement générée, c'est super -> une infinité de niveau (sous reserve de bug) mais l'algo doit être cho !!

-sinon par tableau préenregistré, ce qui améliore la vitesse de jeu(demarage)0, mais reduit la durée de vie du soft.

Je sais pas si je termine le mien sur TI puis sur Lua, où si vou voulez de moi pour bosser dessus.

Par contre le java connais pas  :wacko: je riquerait de vous ralentir!

Mais C et un petin peu Lua  :D

550562[/snapback]

Yop,

pour les grilles j'ai changé d'algo ... Au départ je partais d'une grille vide que je remplissais avec N cases aléatoirement, mais la génération complète bloque à 60% ( cas de blocage ). Donc je pense plutot partir d'une grille totalement remplie et valide et enlever N aléatoirement.

Le programme est maintenant en C, compatible PSP (compilé avec la SDL sous linux). Ton aide est bien sur la bienvenue.

Posté(e)

Très bonne idée !!

Mais faudrait pas oublié d'enlever n case aléatoirement dans chaque carré pas dans tout le tableau paske y pouré y avoir d caré (3*3) entierement vide ou tout rempli. Et faut toujours un case de départ -> évidente à remplir, sinon les probabilitéés sont trop élevée!

Mais je pense que c la meilleur methode

  • 2 semaines après...

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant