sujets-libres.fr

Informatique, logiciels libres, internet, humeurs et jonglerie, humeurs, et… ben… le reste !

Solveur de cube -> ça marche !!!!

without comments

L’idée générale est dans le titre : le résolveur fonctionne enfin !!!
La partie mécanique est bien optimisée. Le soft (recherche de la solution optimale) pourrait par contre encore être bien amélioré mais ça va demander un peu de boulot supplémentaire.

J’ai encore quelques détails à régler mais je mettrai les sources à disposition sous peu.

[edit]

Les sources sont disponibles à l’adresse suivante : http://dev.sujets-libres.fr
Comme pour l’ensemble des projets perso sur lesquels je travaille, l’ensemble des sources dont je suis l’auteur sont placées sous licence libre, à savoir GPLv3.

[/edit]

Written by -Fred-

avril 5th, 2014 at 6:45

Projets en ce mois d’octobre 2013

without comments

Mes efforts se concentrent actuellement sur mon projet d’actionRPG :

Je suis en ce moment dans une phase de (re)factorisation de mon code. Ce que j’ai produit jusqu’à ce jour fonctionne mais le code en lui même mérite parfois d’être réorganisé ou scindé en fonctions plus « digestes ». J’élimine aussi progressivement les petites choses pas forcement très propres qui traînent encore ici et là.

A première vue, cette phase peut sembler rébarbative car on gèle l’ajout de nouvelles fonctions pour se concentrer sur le remaniement de l’existant. Ceci dit, je pense que cela est utile, même si ce projet reste un projet amateur. D’une part, cette phase prépare le terrain pour la suite. Ce temps perdu aujourd’hui sera largement regagné par la suite. D’autre part, je souhaite que le code source soit le plus facile possible à lire si d’aventure un autre développeur vient à le consulter.

Pour ce qui est de mon autre projet en cours (le résolveur de cube), il est actuellement en pause. J’applique la règle de « pas plus d’un projet perso à la fois ». J’y reviendrait ultérieurement, lorsque la partie mécanique sera prête (je reparlera de ça plus tard aussi). Bref, je n’ai pas fini d’en parler ici.

Dernier(s) point(s), je suis en train de préparer ma demande de diplôme de licence informatique CNAM (ensemble des UE validées + stage validé par mon entreprise). Cette année, je tente de valider une seule UE (ELE108). Il ne me manque que celle là pour pouvoir valider aussi la licence électronique CNAM (reste des UE déjà validées entre 2001 et 2004). Pour ma suite au CNAM, je pense avancer tranquillement à raison d’une UE par semestre, toujours en informatique ou électronique.

Written by -Fred-

octobre 9th, 2013 at 10:54

Posted in Divers

Tagged with , , , ,

Action RPG -> nouvelle vidéo

without comments

Pas grand chose à ajouter. Voici une nouvelle vidéo du jeu :

La source a quand à elle été mise à jour à l’adresse suivante : http://dev.sujets-libres.fr

Written by -Fred-

septembre 7th, 2013 at 9:14

Bug ICC #2

without comments

Dans la série « ça plante parfois sans raisons apparentes… » :

Contexte :

Dans le jeu d’Action RPG que je développe, le perso peut collecter différents objets récoltable (cœurs, bombes, etc…).
Ces objets récoltables sont soit directement « posés » sur la carte, soit contenus dans d’autres objet (coffres, jarres, etc…). Certains objets peuvent très bien ne contenir aucun objet récoltable.

Ouvrir un coffre (pour prendre ce cas de contenant) permet au joueur de collecter son contenu et un coffre ouvert doit le rester pour le reste de la partie.
En simplifiant, cela implique que :
- La sauvegarde du joueur (fichier .txt à part) doit permettre à l’application de savoir si le coffre a été ouvert ou non.
- La sauvegarde du joueur (toujours le fichier .txt à part) doit être actualisée lorsqu’un coffre passe de l’état fermé à ouvert.
- L’application doit, en cas de modification, recharger les objets présents sur la carte où se trouve le joueur (les objets présents sur la carte sont stockés dans une list pnjObj et c’est le contenu de cette liste qui est rechargé au besoin)

Symptômes :

Sans raisons apparentes, l’application plantait parfois lorsque je tentais d’ouvrir un coffre fermé (me renvoyant au passage un sympathique « Segmentation fault »).

Origine du problème :

C’était assez simple finalement (même si je n’ai pas trouvé directement).
Grossièrement, pour que le joueur puisse ouvrir un coffre, il faut deux conditions :
- Le joueur doit être au contact du coffre.
- Le joueur doit appuyer sur la touche « espace ».

La première condition est testée tour à tour sur l’ensemble des objets présents sur la carte (list pnjObj).
S’il y a contact, alors l’appui sur espace permet :
- D’affecter le contenu du coffre au joueur.
- De mettre à jour la sauvegarde du joueur.
- De recharger les objets présents sur la carte (list pnjObj).

En clair, je modifiais une liste alors que j’étais en train de la parcourir.

Solution :

Résolu simplement en rechargeant la liste une fois son parcours terminé.

Written by -Fred-

septembre 1st, 2013 at 11:08

Mes projets en cours en cette fin août 2013

without comments

Mon projet de résolveur de cube n’a pas bougé ou presque depuis le début des vacances. Nous arrivons dans la phase où pour avancer, il faut se réunir plus souvent (mon coéquipier et moi). Bref, la rentrée arrive et rien ne presse de toute manière.

J’en ai donc profité pour reprendre mon projet de clone de Zelda 3. Je n’avais pas touché à ce projet depuis début janvier 2013, soit une pause d’environ 6 mois. Preuve que ce n’est pas trop le bordel dedans, j’ai réussi à m’y replonger sans problème. Je n’aurais pas dit cela de ma première version de ce projet. Comme j’ai un peu avancé durant le mois d’Août, je viens de mettre à jour l’archive que je propose au téléchargement sur ma page dédiée. N’hésitez pas à me faire vos remarques dessus.

Written by -Fred-

août 21st, 2013 at 10:39

Migration ADSL OVH (de « no!box » à « adsl pro ») et auto-hébergement

with one comment

Ce blog est hébergé sur mon serveur, lui même derrière ma ligne ADSL, et ce depuis quelques années. Je n’ai pas toujours eu le même fournisseur d’accès internet mais j’ai toujours conservé jusqu’à présent un abonnement téléphonique France Telecom et je n’ai jamais utilisé la téléphonie inclue dans mes diverses offres ADSL (j’ai toujours eu quelques réticences à confier le téléphone et l’accès internet au même opérateur. de plus, je téléphone très peu).

Note importante : j’utilise le même modem/routeur depuis quelques années et il me convient très bien même si sur le papier, il commence à dater (Netgear DG834G).

Malgré tout, j’ai récemment décidé de faire une demande de dégroupage total afin de m’affranchir du très onéreux abonnement chez France Telecom. Pour cela, j’ai fait évoluer mon offre afin d’en avoir une chez OVH incluant la téléphonie (d’où l’offre ADSL pro du titre).
Read the rest of this entry »

Written by -Fred-

juillet 26th, 2013 at 2:43

Téléchargement de mes applications

without comments

Si mes applications vous intéressent, je viens de les regrouper à l’adresse suivante : http://dev.sujets-libres.fr/. Elles sont librement accessibles.
J’étofferai la page au fur et à mesure.

Written by -Fred-

juillet 20th, 2013 at 9:08

Bug ICC #1

without comments

ICC, pour ceux qui se posent la question, est l’acronyme de « interface chaise clavier ». Cette interface peut faire l’objet de bugs divers et variés. C’est d’ailleurs la plus importante source d’erreur dans le monde informatique. Il m’a donc semblé naturel d’écrire sur ce sujet de temps en temps. Les bugs ICC dont je parlerai sont majoritairement les miens. Les écrire me permettra je l’espère de ne pas les reproduire trop vite…

Pour commencer, voici ce qui m’est arrivé aujourd’hui :
L’application sur laquelle je travaille en ce moment (résolveur de cube) est codée en partie en C++. Ceci dit, dans l’une de mes classes, j’utilise 3 petits tableaux. La solution fera certainement hurler les puristes mais elle fonctionne et répond parfaitement à mon besoin. Les voici avec leur interfaces privées (pour les deux dernier tableaux) :

[...]
private:
[...]
void setFacePince(int numPince, QString face);
QString getFacePince(int numPince);
void initReferenceRotationCube();
QString getReferenceRotationCube(int y, int x);
[...]
int modele[3][3][6]; // [x][y][RBLFUD] ; Modèle représentant le cube et utilisé de trouver l'algo de résolution
QString facePince[2]; // [0] -> pince A ; [1] -> pince B ; valeurs parmi [RBLFUD]
QString referenceRotationCube[6][6]; // Tableau deux dimensions à initialiser au début permettant de mémoriser la liste des faces accessible à une pince si rotation du cube par l'autre pince
[...]

Bon, rien de particulier à priori. L’une de mes fonctions utilise les valeurs du tableau referenceRotationCube une fois qu’il est initialisé.
C’est là que je me suis rendu compte que ça ne fonctionnait pas correctement du tout (sans rentrer dans les détails, je trouve des valeurs que je ne devrais théoriquement pas obtenir). J’ai donc passé la fonction en question au peigne fin pour comprendre ce qui se passait. Je suis arrivé à la conclusion que les valeurs de mon tableau referenceRotationCube n’étaient pas identiques à celles que j’avais prévu lors de l’init du tableau. En fait, seule la valeur referenceRotationCube[0][0] était modifiée. A aucun moment je ne viens modifier cette valeur précise dans l’application.

J’ai perdu trois bonnes heures sur ce problème avant de me rendre compte que mon problème venait en fait de ma fonction « void setFacePince(int numPince, QString face) ». Le résolveur de cube dispose de deux pinces que je nomme, par commodité, 1 et 2. Lorsque j’ai utilisé la fonction setFacePince, j’ai continué à repérer mes pinces par les numéros 1 et 2, alors que le tableau facePince[] n’accepte que les valeurs 0 et 1 pour accéder à ce tableau.

Résultat, setFacePince(2, « D ») avait pour effet d’écrire la valeur « D » ailleurs que dans le tableau, c’est à dire dans referenceRotationCube[0][0].

Promis, j’essayerai de ne pas le refaire :p .

Written by -Fred-

juillet 9th, 2013 at 10:32

Le spams vers mon blog se perfectionnent

with 3 comments

Ces derniers temps, et malgré la captcha, je vois tout de même passer de temps en temps des message indésirables.
Comme je valide « à priori » l’ensemble des commentaires qui y sont postés, cela ne pose pas de problème pour garder le blog propre.

Jusqu’à présent, je modérais de temps en temps des spams facilement identifiables. Depuis quelque temps, ces spams ont évolué. Ils restent en quantité raisonnable mais leur contenu ne contient plus un ensemble de liens qui n’ont rien à voir avec le sujet original. A la place, un message qui à première vue colle avec le sujet de départ. Les premiers spams sous cette forme restaient quand même relativement facilement détectables mais dernièrement, il m’a fallu 5 minutes pour être certain que j’avais bel et bien affaire à un spam.

Il me semble que pour arriver à ses fins, le « spammeur » fait d’abord une recherche de mots clé sur le message à spammer. Avec ces mots clé, il effectue ensuite certainement une recherche sur le web afin de trouver une réponse à peu près cohérente à répondre au message cible. Les infos du posteur (nom, mail, site web) laissent quand à elles toujours le doute et aident donc à identifier le spam.

Comme ça marche dans les deux sens, avec une simple recherche, on peut très rapidement retrouver tout ou partie de la réponse du spammeur dans un blog ou sur un forum. Donc, ce n’est pas encore parfait mais quand même. Si le perfectionnement du spam continue à ce rythme, on pourra bientôt tenir une discussion (peut être même intéressante) avec un bot spammeur.

Written by -Fred-

juin 22nd, 2013 at 4:52

Linkeo menace Linuxfr

without comments

Je n’ai pas trop l’habitude de relayer des infos ici mais pour une fois, ça va être le cas.

La société linkeo.com, par le biais de son avocat, vient il y a peu d’adresser une mise en demeure à l’attention des responsables du site linuxfr. Ils (linkeo) n’auraient, semble-t-il, pas apprécié la réponse d’un anonyme à un de leurs message posté sur le forum de linuxfr et ils tentent donc de régler ce « problème » de manière brutale.

Je me suis donc permis de leur envoyer un petit mail (via le formulaire de contact de leur site) pour leur exprimer mes pensées sur le sujet.
En voici la copie :

Bonjour,

Je viens d’apprendre que votre société, par le biais de votre avocat, avait fait parvenir une lettre de mise en demeure à l’attention des responsables du site internet linuxfr.org.
Votre action semble motivée par la réponse d’un internaute à l’une de vos annonces sur le site de linuxfr.org.

Cette réponse qui semble tant vous déplaire était toutefois constructive sous plusieurs aspects.
Votre réaction me semble donc tout à fait inadaptée à la situation.
Elle est disproportionnée et risque bien, je le pense, de nuire à votre image (un effet Streisand semble se profiler et j’en suis désolé pour vous).

J’espère que vous reviendrez à la raison sur cette affaire.

Tant que j’y suis, j’aurais moi aussi une remarque toute bête au sujet du formulaire de contact de votre site web : vous devriez nettement agrandir le champ message de ce formulaire car en l’état, il n’est pas pratique du tout.

Cordialement,

Frédéric Micout

Je n’attend pas de réponse de leur part (mais si j’en ai une, j’éditerai ce message).

Written by -Fred-

mai 31st, 2013 at 9:15

Mes projets à début mai 2013

without comments

Plus que quelques semaines avant mes examens au CNAM (NFP121 et RCP101, soit mes deux dernières valeurs pour espérer obtenir ma licence en informatique). Ce semestre, ces cours m’auront pas mal occupé, au point de ne plus me laisser de temps pour le reste. J’ai donc décidé que l’année prochaine, je lèverais le pied et que je ne prendrais pas plus d’une unité d’enseignement (UE) par semestre. L’année prochaine d’ailleurs, il me restera un TP à valider pour obtenir ma licence CNAM en électronique cette fois.

Côté projets perso :

- Le Fablab/Hackerspace que Mathieu et moi même désirons mettre en place autour de Quimper semble intéresser d’autres personnes. Nous continuons à regarder comment mettre ça en place. Ça reste toujours à l’état de projet mais on espère que ça se concrétisera.

- Le résolveur de cube avance (mais tranquillement de mon côté à cause des cours que je prends au CNAM). La pilotage des 4 moteurs par l’IHM de l’application est presque fonctionnel. En fait, il fonctionne déjà pour 2 moteurs et je suis en train d’adapter le logiciel et l’électronique pour piloter les 4 moteurs. Une fois que cela sera fait, il me restera à transformer l’algo générique trouvé par le programme en algo applicable à la configuration des pince. Il me faudra aussi implémenter la fonction pour détecter que l’on se trouve à la fin d’un mouvement et que l’on peut passer au suivant.

- Le clone de Zelda est toujours en pause mais j’en parle quand même car je compte bien terminer ce projet un jour ou l’autre.

- A propos de l’auto-hébergement, on m’a gracieusement donné une vieille machine (celeron 1,6 GHz; 256 Mo de Ram; 40 Go de disque dur). Je ne compte pas la mettre en fonction de suite mais je compte la préparer afin qu’elle puisse remplacer mon serveur actuel en cas de panne de ce dernier. J’en reparlerai peut être plus tard si je peux en dire quelque chose d’un peu intéressant.

- Toujours au sujet de mon auto-hébergement, j’ai demandé à passer en dégroupage total chez OVH (j’y étais déjà mais non dégroupé) et cela va probablement entraîner une coupure d’internet à mon domicile. Je vais donc placer mon serveur temporairement ailleurs afin qu’il reste accessible depuis internet. C’est con parce qu’au moment où j’écris ces ligne, mon uptime est à 247 jours et hormis 3 plantage d’apache sur cette période, la machine est restée parfaitement stable. Les dernières coupures de la machine ont à chaque fois été causées par des éléments extérieurs (déménagement, coupure de l’électricité dans le quartier durant plusieurs heures et enfin artisan qui a coupé le courant dans la maison pour travailler en sécurité).

Written by -Fred-

mai 4th, 2013 at 8:02

Mes projets à fin mars 2013

without comments

Mon action RPG est toujours en pause car je m’amuse toujours avec ma partie sur le projet de résolveur de Rubik’s cube.

Je me suis en fait attaqué ce mois ci à l’utilisation de la liaison USB entre l’application C++/Qt et l’arduino. C’est plus simple que je pensais car il s’agit en fait d’une liaison série entre deux appareils. Partant de là :
- Côté C++/Qt, j’ai utilisé la lib qextserialport. Les exemples d’utilisation foisonnent donc pas trop de soucis à implémenter.
- Côté Arduino, c’est encore plus simple. Il suffit de paramétrer la vitesse de la liaison et d’envoyer des données ou d’attendre qu’elle arrivent.

J’ai ensuite dû régler un problème que j’avais jusqu’alors sous estimé. Mon IHM se figeait lorsque j’en étais à la phase d’acquisition du cube et durant les calculs. Je contournais jusqu’alors le problème en affichant une boite de dialogue une fois la face acquise. Cela avait pour effet de mettre en pause le traitement d’acquisition et donc de « libérer » l’IHM. Par contre, je devais placer correctement le cube face à la webcam (avec la nouvelle face à traiter) avant de fermer la boite de dialogue pour poursuivre le traitement de la face suivante (et ainsi de suite). Pour une application se voulant automatisée, ce n’était donc pas terrible.
Le blocage durant la phase d’acquisition était en fait assez problématique car je me retrouvais dans une situation d’interblocage.
Sans rentrer dans les détails, l’application attendait un message de l’arduino, qui devait indiquer que la face suivante du cube était visible, pour avancer dans la découverte du cube. Dans le même temps, le message de l’arduino n’était pas pris en compte tant que l’application n’avait pas complètement terminé sont traitement (traitement terminé lorsque les 6 faces étaient acquises). J’ai donc affecté tout les traitements (acquisition du cube et recherche de solution) à un thread à part. Le thread principal (qui gère l’IHM et la liaison série) n’est donc plus bloqué à cause de cela mon problème a été résolu.

Ayant reçu il y a peu une plaque à essai de taille correcte (720 points), j’ai pu m’attaquer à la partie entre l’arduino et les moteurs. C’est d’ailleurs mon premier projet utilisant de l’arduino.
Rappelons les besoins :
- 4 moteurs à piloter (rotation horaire, anti-horaire, arrêt).
- gérer l’asservissement de ces moteurs.

Pour un moteur à courant continu, deux relais sont nécessaires et un ou plusieurs capteurs de fin de course (admettons qu’il y en ai deux). Cela fait donc, pour quatre moteurs à piloter, 16 broches d’E/S. Cela nous place quasiment déjà aux limites de l’arduino et nous interdit toute amélioration nécessitant l’ajout d’un moteur.
J’ai donc opté pour deux solutions afin de limiter l’usage des E/S du micro-contrôleur :
- Tout d’abord, j’ai préféré utiliser un système basé sur un registre à décalage (avec des bascules D) pour le pilotage des moteurs. Seulement trois broches sont maintenant nécessaires (que je pilote 4 ou 8 moteurs, ça ne change rien).
- Pour ce qui est du traitement des fins de course, comme un seul moteur est actif en même temps et que je sais dire quel moteur est en train de tourner, le message dont j’ai besoin n’est pas « Quel est la position de chaque moteur vis à vis des fins de course ? » mais, « Est-ce que le mouvement en cours est terminé ? ». Donc, un simple enchevêtrement de portes logiques peut fournir l’info à l’arduino.

Je n’ai pas encore testé la gestion des fins de course mais le système de registre à décalage fonctionne très bien pour deux moteurs (4 relais donc).

Note : comme pour mes précédents projets, je ne livre pas les sources de suite, bien que je compte publier ma partie sous licence GPLv3 dès que jugerai qu’elle sera fonctionnelle. Pour l’explication complète de ma démarche, voir là -> « Mon travail, libre ou open sources ? » . Bien entendu, je peux livrer l’intégralité des sources actuelles de ma partie du projet si on m’en fait la demande.

A suivre donc…

Written by -Fred-

mars 30th, 2013 at 11:03

Abus dans le business du retro gaming -> exemple 1

without comments

J’écrivais dans un précédent billet que le business du retro gaming pouvait donner lieu à des abus. En voilà un premier :

Il concerne le jeu des Flinstones sur master system. Aux plus jeunes, les Flinstones ne diront rien mais pour les autres, ça rappelera d’abord la série de dessin animé des années 60 de Hanna-Barbera.

Le jeu en lui même n’est pas très connu, et pour cause, ce n’est pas ce qu’on pourrait appeler un bon jeu. Je l’avais acheté sur master system pour la modique somme de 400 Francs environ (le prix normal des jeux à l’époque). Comme nous étions au tout début des années 90 et que j’étais assez jeune, j’ai acheté le jeu en toute innocence et sans savoir à quoi j’avais à faire. Oui, parce qu’internet n’était pas encore arrivé au grand public en France et que la seule source d’information à l’époque se trouvait soit dans les magazines, soit dans quelques émissions de télé.

Bref, arrivée à la maison, déballage du jeu, première partie, et… Je n’ai jamais autant regretté un achat. Avant d’aller plus loin, voilà la vidéo d’une partie complète de ce jeu trouvée sur Youtube :

Même pour la master system (qui je le rappel n’est pas un foudre de guerre), on peut faire mieux. Ce jeu là est divisé en 4 mini jeux tous aussi pénibles (ce qui fait donc 100 Frs le mini jeu). Bon, je ne vais pas en faire un test détaillé, vous avez tout ce qu’il faut pour vous en faire une idée…

Je me suis donc dit, ce jeu est une daube, c’est indéniable, mais il m’a marqué (à sa manière). Je serais donc curieux d’y rejouer en vrai.
Petite recherche sur Ebay et là, horreur et stupéfaction ! Ce jeu (complet : jeu + boite + notice) se retrouve à 15€ sans les frais de port ! Il ne faut vraiment pas avoir honte pour proposer un truc pareil à ce prix. Si ça c’est c’est pas du foutage de gueule ! A titre de comparaison, je viens d’acheter le jeu « La légende de Thor » sur Megadrive pour un peu moins de 15€ (ce jeu là n’est pas beaucoup moins rare et, même s’il est dur de comparer un jeu 8 bits avec un jeu 16 bits, là c’est déjà plus cohérent).

Written by -Fred-

mars 2nd, 2013 at 11:20

Posted in Retro gaming

Tagged with , , ,

Mes projets à fin février 2013

without comments

Le mois de février touche presque à sa fin et le projet de résolveur de cube avance toujours. J’ai terminé il y a quelques jours l’implémentation de la fonction de découverte de l’algo de résolution du cube 3*3*3.

Il est amusant de constater que les séquences de résolution des première étapes du cube (celles qui sont encore intuitives) sont simples mais en contre partie, le nombre de cas à gérer est important. A titre d’exemple, il y a 92 cas à traiter rien que pour la première croix. Cela est surtout dû au nombre de cas de départ possible qui est important pour chaque arrête à placer. Mécaniquement, plus on avance dans la résolution du cube, plus le nombre de cas de départ diminue mais en contre partie, les séquences sont de plus en plus complexes pour chaque étape.
Au final, le logiciel trouve une séquence de résolution de longueur moyenne comprise entre 100 et 110 rotations de faces. Cette fourchette de nombre de coups est cohérente vu la méthode utilisée (celle pour débutant et que j’utilise pour le moment). A titre indicatif, les bons cubeurs peuvent résoudre le cube en presque deux fois moins de mouvements.

Maintenant, j’attaque la partie de pilotage des moteurs.

Note : mon emploi du temps consacré à mes activités sera partagé dans les prochaines semaines entre ce projet et mes cours du CNAM (je passe mes deux dernières valeurs de licence informatique ce semestre). Plus de nouvelles prochainement…

Written by -Fred-

février 26th, 2013 at 11:28

Le business du retrogaming

without comments

Ma jeunesse a été rythmée (entre autre) par la sortie des consoles et des jeux sur plates-formes 8 bits (NES, Master system, Game boy, Game gear) et 16 bits (Megadrive et SNES). Je n’avais d’argent ni pour fréquenter les salles d’arcade, ni pour acheter un PC. Cette période est allée, en ce qui me concerne, de la fin des années 80 et jusqu’à environ le milieu des années 90. Entre temps, les consoles support CD sont arrivée et comme beaucoup, nous avons (car je n’étais pas tout seul à la maison) réussi à nous faire offrir une playstation, première du nom. A mesure que les années passaient, nos premières consoles et les jeux qui allaient avec ont été revendues.

A une époque, n’importe laquelle de ces consoles 8 et 16 bits, qui devenaient has-been et ne valaient presque plus rien, était aisée à retrouver pour une dizaine d’euros. Les jeux non plus ne valaient plus grand chose. Plus personne n’en voulait non plus.

Or, les ados des années 90 sont les trentenaires d’aujourd’hui et nous sommes nombreux à vouloir retrouver le plaisir de jouer à des jeux auxquels nous jouions quinze à vingt ans auparavant. La demande est là et il n’en faut pas plus pour créer un marché. Plusieurs alternatives existent en fait :
- Jouer à ces jeux anciens sur une console récente. Pourquoi pas, ça permet à nintendo, sony, sega et les autres de se faire un peu d’argent sans trop investir.
- Jouer sur une copie de machine d’époque. Ma seule expérience avec cette solution a été désastreuse.
- Jouer sur ordinateur grâce à un émulateur et les roms qui vont bien. Ça fonctionne bien mais ce n’est légal que si vous possédez les originaux des roms :p .
- Jouer exactement comme à l’époque avec une console et des jeux originaux. C’est encore le meilleur moyen pour retrouver des sensations de jeu identiques.

C’est cette dernière approche que j’ai retenu et j’ai ainsi pu me procurer une super nintendo puis une megadrive et un peu plus d’une trentaine de jeux en un peu moins de deux ans. En l’espace de deux ans, j’ai réussi à le faire sans trop me ruiner en allant en vide grenier ou sur ebay.
- Premier constat, dans les deux cas, ce sont presque tout le temps des professionnels qui vendent. J’ai dû voir une fois un particulier en vide grenier avec des jeux snes d’occasion. Ça veut dire qu’il n’y a quasiment plus de vraies bonnes affaires (sauf à arpenter les vides greniers très tôt le matin et avant les professionnels). Je n’ai rien contre les professionnels qui au final ne font que leur métier et sont généralement des passionnés eux aussi.
- Second constat, les prix montent et deviennent parfois abusifs. Il n’est pas rare maintenant de trouver des jeux vraiment moyens pour plus de 10€ et le prix des bons jeux s’envolent parfois au delà de 30€. Certains jeux sont bons, c’est vrai, mais ils ont été vendus à la pelle (quand ils n’étaient pas directement vendus avec la console), ne l’oublions pas. Pour mémoire, un jeu comme Zelda « A Link To The Past » s’est vendu à près d’un million d’exemplaires en europe. Il n’était je crois même pas vendu en pack avec la snes.
- Troisième constat, je trouve étonnant de retrouver sans trop de peine des jeux à succès encore sous blister ou dans un état parfaitement neuf (notice et emballage compris). Je pense que le business du retrogaming poussent certains à faire passer des cartouches modifiées pour ce qu’elles ne sont pas (une fois la cartouche chargée avec un jeu ayant plus de valeur, il n’est plus très compliqué de refaire une notice et un emballage adéquat). Notez qu’à titre personnel, je n’ai rien contre le fait de modifier le contenu d’une cartouche si c’est annoncé clairement (je ne travaille pas pour nintendo en même temps). C’est d’ailleurs certainement techniquement intéressant je pense.

Bref, et sans même parler de machines réellement rares (type Neo geo), ça commence à devenir un luxe d’aimer les jeux retro tels qu’on les a connu à l’époque.

Pour ma part, à part quelques trucs que je recherche particulièrement, il est maintenant certain que je vais lever le pied dans cette voie et aujourd’hui. Il est d’ailleurs peu probable que j’aurais les moyens de commencer une collection de jeux anciens aujourd’hui (ou alors, je reverrais mes ambitions à la baisse).

Written by -Fred-

février 9th, 2013 at 7:13

Mes projets en ce début février 2013

without comments

Peu de nouvelles depuis quelques semaines sur ce blog. Cela ne veut pas dire que je ne fasse plus rien. Au contraire en fait :

J’ai eu quelques retours suite à mon appel à contribution sur mon clone de Zelda. Ces retours m’ont permis d’apporter quelques modifications/corrections au programme.
Mais, comme il est parfois bon de prendre un peu de recul sur ces propres projets, je fais maintenant une petite pause dessus durant encore un ou deux mois.

Je met à profit le temps que ça me dégage pour travailler sur un autre projet. C’est un projet réalisé en binôme avec Mathieu (slimseig).
L’objet de ce projet est la réalisation d’une machine capable de résoudre un rubik’s cube 3*3*3 (avec pas ou peu d’action humaine). Je m’occupe du logiciel (C++/Qt + prog arduino) et Mathieu de la mécanique. Nous nous occuperons tout deux de l’électronique. De mon côté, le logiciel est déjà en mesure de capter les couleurs sur chaque face afin de modéliser le cube à résoudre et je commence à travailler sur les algos de résolution. Du côté de Mathieu, les pinces semblent prometteuses.
De plus, nous nous sommes fixé comme contrainte d’utiliser au maximum du matériel/logiciel libre ou open source et sinon, le plus possible de matériel de récup.

A suivre…

Written by -Fred-

février 1st, 2013 at 4:54

GNU Diabolo Simulator – suite et fin

without comments

Il m’arrive de faire des choses que je sais inutiles pour les autres mais il m’arrive aussi de faire des choses en pensant que ça pourra intéresser d’autres personnes.

Mon projet GNU diabolo simulator est de ceux là. J’ai donc imaginé que ce projet pourrait être utile.
Dans sa forme actuelle, il n’apporte rien de nouveau, hormis que c’est un logiciel de simulation de diabolo sous licence libre (ce qui est déjà beaucoup). Ceci dit, il est parfaitement fonctionnel.

J’ai donc proposé ce logiciel au téléchargement en avril dernier. Pour ce faire, j’ai ouvert quelques sujets sur divers forums pour en faire l’annonce et obtenir des retours d’utilisateurs. J’en avait aussi profité pour évoquer une version suivante capable de gérer du passing.

Après quelques mois, je dois me rendre à l’évidence : j’ai bien eu quelques rares retours mais pas un seul de jongleur. J’en déduis donc que ce projet dans son ensemble n’a pas d’utilité. Le projet est donc stoppé pour moi. C’est vraiment dommage mais c’est comme ça…

Written by -Fred-

décembre 22nd, 2012 at 6:56

Appel à contributions pour tester mon moteur de jeu

with 3 comments

Pour ceux que ça intéresse, je suis à la recherche de personnes désireuses de tester mon moteur de jeu.

Je souhaite particulièrement connaître :
- la configuration matérielle de la machine sur laquelle vous faites les tests (processeur, RAM, autre).
- la consommation de ressources du jeu sur votre machine. Lorsque le jeu est lancé, ouvrez un terminal et tapez la commande « top ». Les valeurs des colonnes %CPU et %MEM de la ligne ActionRPG m’intéressent.
- vos commentaires sur le système de gestion des collisions et sur les déplacements en général.
- vos commentaires autres.

Notes :
1° c’est tout sauf un jeu fini.
2° le jeu est compilé pour GNU/Linux uniquement (un makefile est disponible). Les sources sont disponibles mais je ne peux pas assurer en cas de problèmes pour le compiler ailleurs.
3° le jeu est codé en C++ et nécessite pour le moment les libs SDL, SDL image et SDL gfx.

Commandes :
Entrer -> menu du jeu
P -> pause
espace -> parler
A -> épée
Q -> courrir
Z -> arme secondaire
echap -> menu fin de partie

Lien : zelda.sujets-libres.fr
L’accès est ouvert en lecture à tout le monde mais je serais quand même heureux de connaître les personnes que ça intéresse (blog at sujets-libres point fr).

Je mettrai l’archive que je propose au téléchargement à jour aussi régulièrement que possible.

Merci

[edit du 21/12/2012]
Je viens d’ajouter une petit vidéo pour motiver les curieux :

Written by -Fred-

décembre 20th, 2012 at 7:56

Avancement de mes activités à mi-novembre 2012

without comments

Bonjour,

Voilà un petit moment que je n’ai pas écris ici à propos de mes projets en cours. Le projet d’action RPG avance toujours. Contrairement à ce que j’annonçais dans un billet précédent, je vais finalement utiliser les ressources du jeu Zelda 3 , A Link To The Past, dans mon projet. Je ne suis pas convaincu pas mes « talents » de graphiste et comme c’est un poste à part entière qui demande, tout comme le codage, beaucoup de temps, j’ai préféré faire l’impasse dessus.

Le projet avance toujours de manière plus ordonnée que dans la première version.
Pour donner un ordre de grandeur, à ce jour le projet contient une vingtaine de classes, regroupant plus de 300 fonctions et il tient sur quelque chose comme 11000 lignes.

A moyen terme, j’aurai besoin de l’aide de testeurs afin de tester et d’éprouver le moteur du jeu. Les personnes intéressées peuvent déjà me contacter à l’adresse blog at sujets-libres.fr .
Note : comme je n’ai pour le moment compilé le jeu que pour GNU/Linux, il sera plus simple que les personnes intéressées disposent elles aussi de ce système pour les tests.

En marge de mes projets personnels, je poursuis mes cours au CNAM et je dois finaliser ma licence d’informatique cette année.

Written by -Fred-

novembre 11th, 2012 at 10:34

Gestion des collisions dans un jeu 2D / vue de dessus

without comments

Introduction :

Il y a peu, j’ai lu à propos de mon système de gestion des collisions qu’il semblait compliqué et qu’il serait judicieux de le revoir. N’en ayant alors pas réellement fait la description, j’ai donc voulu le détailler.

Lorsque j’ai débuté la création de mon clone de Zelda, il a fallu à un moment que je développe un système de gestion des collisions entre les éléments se déplaçant sur la carte et les éléments constituant cette même carte. Ce système ayant pour contrainte d’être le plus fidèle possible par rapport au jeu que clone. A priori, lorsqu’on ne s’est jamais penché sur le sujet, rien de bien compliqué. Pas si sûr en fait car une fois que l’on commence à y réfléchir et à le développer, de multiples problèmes apparaissent. Voilà pourquoi j’ai voulu partager ma modeste expérience sur ce sujet en expliquant comment j’ai procédé pour arriver à un résultat fonctionnel (histoire aussi que le temps que j’y ai passé et perdu (parfois) puisse profiter à d’autres). Read the rest of this entry »

Written by -Fred-

août 1st, 2012 at 11:32

Action RPG -> ajout d’une vidéo

without comments

Finalement, depuis mon dernier billet, je n’ai pas plus de choses à dire au sujet du scénario (pour le moment, mais rien ne presse).
Ceci dit, voici une petite vidéo du projet (prise aujourd’hui), histoire d’en donner des nouvelles…

Ma casquette de graphiste m’a pas mal occupé ces derniers temps mais du coup, j’ai bien avancé sur un premier tileset d’extérieur (au début de la vidéo).

Written by -Fred-

juillet 9th, 2012 at 10:05

Mes projets en cours à fin juin 2012

without comments

Mon clone de Zelda 3 avance toujours (tranquillement et régulièrement) mais évolue et s’en éloigne.
J’ai en effet renoncé pour le moment à utiliser les sprites de BrowserQuest. Les quelques essais que j’ai pu mener m’ont en tout cas montré que je devrais réussir à créer mes propres sprites.

Voilà ce que ça donne (la capture date un peu) :

CaptureActionRPG-2012-06-03.png

Contrairement à ce que je pensais au départ de mon projet, je m’essaye au poste de scénariste. Après quelques recherches, une idée générale ressort et je suis en train de la mettre en forme. Difficile d’en dire d’avantage pour le moment car rien n’est vraiment figé mais ça viendra en même temps que les première vidéos de présentation. Je suis en train de me documenter pour que les graphismes collent au mieux.

Finalement, de Zelda 3, j’essaye de juste conserver le même esprit dans la construction des sprites. La jouabilité devrait elle rester très proche.

Written by -Fred-

juin 24th, 2012 at 9:31

Mon travail : libre ou open source ?

with 3 comments

A première vue, c’est du pareil au même. Pourtant, je ne peux raisonnablement définir ce que je fait en tant que développeur amateur que par un seul de ces deux termes. Je ne vois pas d’opposition entre le libre et l’open sources mais je note des nuances qui, après coup, m’amènent à ce constat.

Pour être précis, j’ai jusqu’à présent considéré que je développais avant tout de petits logiciels libres. L’un de mes buts est de protéger mes logiciels (et non moi) des abus dont ils pourraient faire l’objet (abus peu probables, je le concède). L’autre but que je me suis fixé est de distribuer des logiciels, mêmes modestes, en gardant en tête de préserver la liberté de l’utilisateur qui les utilisent. J’en suis resté là un moment.

Il y a peu, j’ai lu « La cathédrale et le bazar » d’Eric S Raymond (livre que je recommande si vous voulez comprendre le fonctionnement d’un projet en open source) et, si cet ouvrage est très intéressant, il m’a appris une chose sur ce que je fais : contrairement à ce qu’il pourrait sembler, je ne rentre pas à proprement parler dans une démarche d’open source. En effet, cela consisterait à créer ou rejoindre une communauté dont le but principal serait la création d’un logiciel de la meilleure qualité possible (et si possible, de meilleure qualité que les logiciels privateurs comparables). Cette démarche demande à la fois de l’énergie, du temps, une disponibilité constante, des qualités relationnelles et une certaine expérience déjà.

De mon côté, l’énergie fluctue, de même que ma disponibilité et le temps que je pourrais accorder à un projet collaboratif. De plus, je n’ai pas souvent travaillé en groupe mais l’une des rares expérience que j’ai eu me fait dire que je suis plus à l’aise, et de loin, en travaillant seul et dans un modèle de « bâtisseur de cathédrales ». L’ouverture des sources de logiciels que je crée doit servir avant tout l’utilisateur (s’il voulait exercer ses libertés d’utilisateur de logiciels libres). Ainsi, sauf si on me les demandent, ces sources ne sont par défaut fournies que lorsque je distribue les versions que je juge fonctionnelles de mes programmes.

Donc, mon travail -> libre (CQFD :p )

Written by -Fred-

juin 1st, 2012 at 1:29

Megadrive H&B

without comments

Il y a quelque temps, on m’a offert une réédition de la megadrive (megadrive H&B SM-3000). Cette console semble vraiment sympa puisque qu’elle comprend 15 jeux sega et 25 autres jeux (interactifs ou arcade). Le coffret comprend, outre la connectique, deux manettes infra rouge sur lesquelles il est possible de monter divers éléments esthétiques pour coller à certains jeux interactifs (raquette de ping pong, club de golf et batte de base ball). En outre, on peut y glisser des cartouches originales pour y jouer (pal et ntsc semble-t-il). Le tout est vendu une quarantaine d’euros.

megadriveHB-SM-3000

N’ayant plus de megadrive depuis quelques années, cette machine me convenait parfaitement, sur le papier tout du moins. En effet, je suis allé de déception en déception avec cette appareil. Ce petit article s’adresse à ceux qui seraient intéressés par l’achat d’une telle console.

Le premier gros truc qui ne va pas, c’est que tout les jeux sega tournent plus lentement que les originaux. Le son lui même n’est pas restitué correctement. C’est flagrant et ça casse tout. Les Sonics en deviennent poussifs. Sur la première réédition de megadrive par H&B, il me semble l’on peut basculer la console en 60Hz au lieu de 50Hz, ce qui corrigerait un peu le problème. Là visiblement, ce n’est pas possible.

L’autre gros problème, ce sont ces manettes infra rouge. Si pour une raison ou une autre la manette n’est plus en face de la console, on perd le contrôle. Bon, on peut m’objecter qu’il est possible de brancher des manettes originales mais ce n’est pas le but. Ces manettes sont d’autant plus impraticable lorsqu’on veut jouer aux jeux interactifs. En effet, les diodes infra rouge (quatre par manette) se trouvent sur ce qui devient par exemple le manche de rackette. Je sais que j’ai de grandes mains mais quand même. Neuf fois sur dix, mes gestes ne sont pas pris en compte.

Je pourrais aussi parler des jeux intégrés. C’est sans doute un peu subjectif mais il n’y a pas beaucoup de gros hits intégrés à cette réplique (hormis sonic 1 et 2 + sonic spinball). Je ne dis pas que le reste est pourris mais bon, tant qu’à mettre quinze jeux, autant mettre le paquet. Ce n’est pas bien grave, on puisqu’on peut y mettre ses cartouches (je reparle plus loin).

Le seul point positif est que l’on peut accéder directement à à peu près tout les niveaux de chaque jeu (mais comme les jeux intégrés de la console sont globalement injouables…).

Cette console étant tout sauf une bonne affaire, je me suis racheté d’occasion une megadrive II et quelques jeux. Là au moins, pas de mauvaises surprises et on s’amuse bien.

A tout hasard, j’ai voulu vérifier si les jeux en cartouche avaient les mêmes problèmes de lenteur que le jeux intégré lorsqu’ils étaient branchés sur la console H&B. Nouvelle déception car j’ai bien essayé une dizaine de jeux mais pas un seul n’a démarré (je précise que ces jeux fonctionnent bien). Bref, à ceux qui seraient tentés, fuyez, tout simplement…

Written by -Fred-

mai 5th, 2012 at 2:33

Mes projets en cours à fin avril 2012

with 3 comments

Un seul projet m’occupe réellement en ce moment : mon clone de Zelda 3 -> Action RPG.

Comme je le disais dans un article plus ancien, ce projet était en pause pour plusieurs raisons. J’ai recommencé depuis quelques jours à travailler exclusivement dessus.
Cette fois ci, j’entends le faire proprement en tenant compte de mes précédentes erreurs. Ainsi, je reprend le projet du début et je prend actuellement le temps de bien modéliser le programme, quitte à y passer du temps (ce qui est l’occasion de découvrir l’UML).
Les 8 mois passés au premier développement n’auront pas été inutiles, bien au contraire, car ça m’aura permis de défricher plusieurs choses et de mieux voir où je vais aujourd’hui. Parmis ce que j’ai déjà codé, pas mal de choses seront directement réutilisables (je pense à la partie de gestion des collisions notamment).
Concernant les ressources non libres (sprites du jeu original essentiellement), je m’en contente aujourd’hui mais j’espère pouvoir à terme m’en détacher afin de réaliser un Action RPG totalement libre. Je me pencherai sur ce point lorsque j’aurai bien avancé sur le développement C++ du jeu.

Le projet GNU Diabolo Simulator est en pause actuellement mais est fonctionnel dans la version proposée au téléchargement. Quelques améliorations sont déjà prévues pour la suite (essentiellement l’ajout d’une fonction passing).

Written by -Fred-

avril 25th, 2012 at 10:02

Posted in Informatique - Web

Tagged with , , , ,

Suis-je partiellement déréférencé par Google ?

with 10 comments

Jusqu’au 5 mars dernier, ce blog recevait 4 à 5 visiteurs par jour (avec parfois des pointes à 7 ou 8). En moyenne, 2 visiteurs atterrissaient sur ce blog suite à une recherche sur Google.

note 1 : pour connaître ces chiffres, j’utilise l’outil StatPress dans mon moteur de blog WordPress. J’élimine périodiquement et à posteriori les logs de bots car eux ne m’intéressent pas. Cela veut dire que je ne leur interdit pas l’accès et le référencement de mon blog. Parmi ce que j’élimine à posteriori de la base de donnée figure certaines adresses IP (moins d’une dizaine à ce jour), les « visiteurs » pour qui je n’ai pas l’info à la fois du pays, du navigateur et de l’OS utilisé, et enfin certaines nations improbables (je suis étonné de trouver du .ru). Ce filtre n’est sans doute pas parfait et il y a peut être des faux positifs mais globalement, il ne me semble pas déconnant. Notons enfin que j’utilise Statpress depuis début janvier.

Depuis le 6 mars 2012, en à peut près un mois donc, j’ai reçu en tout et pour tout 5 visiteurs en provenance de Google. Je ne m’explique pas cette chute brutale car du coup, j’ai aujourd’hui 2 à 3 visiteurs par jour qui arrivent soit directement en tapant l’URL, soit en cliquant sur un lien renvoyant à mon blog (essentiellement sur des forums où j’ai mes habitudes).

Pour en revenir à Google, j’ai moi même essayé de trouver mon blog, sans réel succès. En tapant par exemple explicitement « sujets libres », le premier (et seul) lien faisant réellement référence à mon domaine arrive en page 1 mais n’est pas un lien cliquable. Pour tout dire, il n’y a pas d’autres références à mon domaine dans les 10 premières pages de résultats avec cette recherche. En comparaison et avec la même recherche, Yahoo! et Bind renvoient chacun 4 liens rien que sur la première page.

« sujets-libres.fr » cette fois marche parfaitement avec Google mais à ce stade, il n’y a plus besoin de moteur de recherche pour trouver mon blog (au passage, site:blog.sujets-libres.fr qui montre les pages référencées par Google de mon blog montre que Google le connaît). Une recherche de mon prénom/nom (Frédéric Micout, qui figure déjà dans la page auteur de ce blog) ne renvoi pas non plus vers mon blog. Je n’ai pas trouvé d’autres recherches sur Google pour retrouver mon blog ou mes autres sous domaines, y compris en utilisant celles qui avait déjà mené plusieurs fois à mon blog avant le 6 mars.

note 2 : je n’ai pas du tout ajouté de mots clés dans les balises meta de mon blog (meta keywords), ni avant, ni après ce brusque changement de traitement de la part de Google. J’exclus donc que leur absence puisse expliquer ce qui se passe aujourd’hui.

J’en suis arrivé à la conclusion que mon domaine était, pour une raison que j’ignore encore, presque totalement déréférencé par Google et très certainement placé dans la « sandbox ». Il n’y a pas de sites commerciaux lié à l’un de mes sous domaines et très franchement, le nombre de visiteur n’est pas ma préoccupation majeure. Le plus important est que ce que je publie reste accessible et ce n’est pas un acteur comme Google qui va empêcher cela.

Ceci dit, cette situation illustre quand même un problème de fond. Le moteur de recherche Google est massivement utilisé par les internautes et dispose de fait d’un pouvoir énorme vis à vis des sites qu’il indexe (ou non). Il n’y a pas vraiment de devoir qui accompagne ce pouvoir. Je ne crois pas qu’il y ai d’obligation de transparence de leur part et vu de ma fenêtre, cela semble en tout cas assez opaque…

GNU Diabolo Simulator

with one comment

  • nom : GNU Diabolo Simulator
  • version : 1.0
  • langue : français
  • description : simulateur de jonglerie siteswap au diabolo.
  • fonctionnalités : simule des siteswaps de 1 à 9 objets pour un seul jongleur. Possibilité de modifier les paramètres de l’animation.
  • compatibilité : GNU/Linux mais à priori, rien de spécifique à cet environnement.
  • nécessite : Qt
  • téléchargement : gnu-ds-v1.0.tar.gz
  • licence : GPLv3
  • langage : C++/Qt
  • sources : oui (inclues dans l’archive à télécharger)
  • à venir : simulation siteswap à plusieurs jongleurs (passing) ; générateur de séquences siteswap valides.

En voici un petit aperçu :
http://dev.sujets-libres.fr/projets/GNU-diabolo/images-v1.0/GNU-DS-2.png

Il m’a semblé qu’il y avait très peu de logiciels de simulation au diabolo. A ma connaissance, un seul en fait mais qui ne semble malheureusement plus être maintenu ou évoluer depuis plusieurs années. Étant moi même jongleur, j’ai donc décidé de me créer ce petit outil et de le partager. Le programme est déjà fonctionnel mais je suis preneur de retours si vous en avez.

Written by -Fred-

avril 7th, 2012 at 2:35

XFCE 4

without comments

Voilà plus d’un an que j’ai décidé de ne pas mettre à jour ma machine principale qui tourne sous Ubuntu 10.10. La raison de cette pause est assez simple : Unity.
Dans le même esprit, la prochaine version stable de Debian (j’ai nommé Wheezy) embarque par défaut Gnome 3, et donc Gnome shell. Wheezy n’est encore qu’en testing mais le jour où cette version passera en stable, je serai confronté là aussi à un choix du même ordre.

L’inconvénient de cette situation, c’est que progressivement je me passe des versions les plus récentes des paquets intégrés au distributions que j’utilise et que tôt ou tard, ces mêmes versions de distributions ne seront plus maintenues.

Comme il ne sert à rien d’attendre indéfiniment, j’ai à la fois mis à jour la Debian sur mon portable (passée en testing pour l’occasion) et mis à jour ma machine principale jusqu’à Ubuntu 11.10.

Pour tout dire, les deux n’ont pas tenu plus d’une semaine (enfin… , je n’ai pas tenu plus d’une semaine). Ce temps est bien entendu trop court pour que je me fasse une idée précise de Gnome Shell et de Unity mais dans les deux cas, les mêmes impressions se dégagent : je les trouvent à la fois beau mais dans le même temps, je les ai trouvés plus lourds à utiliser. C’est vraiment subjectif mais trop de choses changent en même temps à mon goût et je n’ai pas perçu de gain réel en les utilisant. J’imagine qu’en prenant sur moi et en cherchant à personnaliser ces environnements à ma sauce, j’arriverai à des résultats plus acceptables mais tout cela demande du temps et je ne suis pas certain du tout d’être plus à l’aise qu’avec Gnome 2 et son interface classique.

Conclusion : malgré leurs qualités, ni Gnome Shell, ni Unity ne sont fait pour moi.

J’en ai donc profité, et c’est ce qui motive ce petit article, pour passer à XFCE4 sur toutes mes machines de bureau/portables. Plus précisément, j’ai installé Xubuntu 11.10 sur ma machine de bureau et mon portable afin d’y avoir exactement la même config. Mon eeepc 701 étant un poil trop juste pour Xubuntu (espace disque insuffisant), j’y ai installé une Debian stable de base à laquelle j’ai ajouté un environnement XFCE 4.

Par le passé et faute d’avoir testé XFCE 4 plus de 10 minutes d’affilée, je n’en gardais que l’image d’un environnement plutôt destiné aux petites configurations et autres ordinosaures.
Aujourd’hui, je me rend compte que j’aurais mieux fait de m’y pencher avant. En tout cas, j’ai vraiment eu une agréable surprise : c’est à la fois léger et très configurable. Exactement ce que je recherche et qui me manquait sous Unity ou Gnome Shell.
A l’avenir, il n’y a pas de raison que j’en change et que je ne recommande pas.

[edit du 08/08/2012]
Mon eeepc est vendu et c’est mon portable qui est passé sous debian wheezy, toujours avec XFCE4. J’adore toujours autant cet environnement qui sait se faire oublier.

Written by -Fred-

avril 1st, 2012 at 3:43

Projets en cours et à venir

without comments

Voici un petit point sur mes projets en cours et/ou à venir :

Clone de Zelda 3 [C++/SDL]
Il y a quelques mois, je me suis lancé dans le développement d’un RPG type Zelda 3. Ce projet a par ailleurs aussi nécessité le codage d’un éditeur de carte.
Le jeu est loin d’être pleinement fonctionnel mais le perso peut déjà bien interagir avec son environnement (déplacements, gestion des collisions, interaction avec quelques personnages non joueurs et avec des éléments de décors…).
Aujourd’hui, le jeu est en pause pour plusieurs raisons.
La première est que mon code commence à être relativement lourd à maintenir et débugger, ce qui me fait dire que si je continue dans cette voie, je vais droit au mur. C’est clairement la raison principale de ma pause.
La seconde raison est que je souhaite produire ce jeu entièrement sous licence GPL et cela n’est pas possible si j’utilise les sprites et autres graphismes du jeu zelda 3 de la snes. Cette raison est moins importantes que la précédente mais elle n’est pas négligeable.
De fait, j’ai stoppé temporairement le développement de ce jeu, le temps de trouver comment réaliser un RPG sans réutiliser des contenus non libres.
Le projet sous sa nouvelle forme sera très certainement repris depuis le début (sachant qu’une partie de mon code actuel est directement ou indirectement réutilisable).

Voilà ce que ça donne actuellement :
vidéo clone Zelda C++/SDL

Tetris like [C++/SDL]
Je considère ce projet comme presque terminé. L’idée était avant tout de réaliser quelque chose et de le mener à terme. Je m’y repencherai à l’occasion mais ce n’est pas ma priorité.

Simulateur de diabolo [C++/Qt]
Je travaille sur ce projet depuis fin décembre 2011, bien que j’y pense depuis un moment. Mes objectifs sont multiples :
- réaliser un outil de simulation de jonglerie au diabolo (siteswap / passing). Cet outil devant être à la fois bon, utile, pratique et sous licence libre.
- apprendre à mieux développer en C++ (pour ensuite aussi pouvoir retravailler plus efficacement sur mon projet de RPG).
- apprendre à utiliser Qt (note : la doc en ligne est vraiment bien faite).
- mieux comprendre les siteswaps et le passing.
Le développement est relativement bien avancé et commence déjà à être utilisable pour visualiser des siteswaps à un seul jongleur (mais il reste tout de même, entre autre, les parties spécifiques au passing à développer).

Pour la suite, j’ai quelques autres thématiques en vue (et pas que du soft) mais rien de concret encore.
note : il faudra aussi que je prenne le temps de réunir les sources de mes projets sur une seule page…

Written by -Fred-

février 24th, 2012 at 10:38

Tetris Like perso

without comments

Voici un petit jeu de tétris que j’ai réalisé ces derniers jours : TetrisLike.tar.gz
Il est développé en C++ (c’est un bien grand mot) et nécessite l’installation préalable des libs suivantes : SDL, SDL_image et SDL_GFX.
Sans révolutionner le genre, ça reste amusant tant à développer qu’à jouer.

Ce programme est sous Licence GPLv3.

Written by -Fred-

décembre 27th, 2011 at 4:57

Posted in Informatique - Web

Tagged with ,