dimanche 17 février 2008

Sudokuuuuuuuuuu


Un de mes amis, qui aime bien codé aussi (je lui ai donné le virus) a codé un jour en mIRC un résolveur de grille de sudoku. Chapeau.

J'ai décidé de faire la même chose, en C++. Je ne suis pas un expert en sudoku, j'ai cherché les techniques de résolutions manuelles. L'ordinateur est bien plus apte a stocker des grands tableaux de quelques int. D'ailleurs la grille est résolue en quelques millisecondes, quand elle est résolue.
En utilisant quelques technique de base pour le moment (mais je n'ai plus envie de continuer), les grilles facile et moyenne sont résolues.

Echecs


Après un certain absence dans la mise à jour de ce blog, voici un nouvel article. Non je n'ai pas glandé, j'ai approfondi mes connaissances en MFC.

J'ai décidé, sur un coup de tête, de coder une petite application pour jouer aux échecs, en vérifiant les déplacements des pièces etc. Pas d'intelligence artificielle, c'est un jeu à deux joueurs. Le but était de bien gérer le concept orienté objet, à savoir le polymorphisme.
Certes le damier n'est pas colorié, mais j'ai déjà eu assez de mal à mettre des icônes sur les boutons...

samedi 29 décembre 2007

Un peu de détente...

Détente car là je n'invente rien, je ne code rien, je voulais juste vous parler. Nouveauté Dailymotion.com invente le "videowall". C'est un rectangle contenant des vidéos mignatures, que l'on peut voir facilement, switch ect. J'ai créé ce wall à partir de mes vidéos favories chez dailymotion.

Blagues ?

J'étais d'humeur aujourd'hui. J'ai développé en une après-midi un site web en PHP, MySQL, AJAX. Ce site est une copie de bashfr, mais ne se limitant pas aux seuls quotes IRC, mais prend également les blagues diverses, les proverbes et les citations célèbres. Je me suis pas appliqué sur le graphisme, comme toujours, mais la simplicité et les fonctionnalités sont au rendez-vous, tout comme la sécurité. J'ai utilisé pour la première fois captcha (très facile d'utilisation), et j'ai créé un système complet de login (login, création de compte, envoie d'e-mail, activation de compte). Les blagues envoyées peuvent être modérées avec un lien prévu, ce qui donne 4 choix à l'utilisateur : demander une suppression (insulte, diffamatoire...), proposer un reclassement (changement de catégorie), proposer une correction orthographique ou indiquer un doublon. Je déteste les doublons.
Puis dernière chose, le classement : une blague possède un classement, calculé par le nombre de vote positif et le nombre de vote total. Ceci se fait en AJAX et une même personne ne peut voter qu'une seule fois par blague.

http://www.beaudier.fr/lol

Gagner quelques minutes sur les heures que je perds



C'était le but de ce "gros" script codé en mIRC qui m'allégeait le travail de ce jeu pénible et prenant. Il avait un buffer de 2 Mo, et écoutait systématiquement le presse-papier. Dès que l'on copiait le contenu d'une page d'Ogame, le script bufférisait le contenu. Une fois que l'on a copié tout ce que l'on voulait, le script analysait le buffer ligne à ligne. C'était des rapports d'espionage. Le but était d'éliminer les rapports inutiles (la planète visée ne contient pas assez de ressources pour l'attaquer ou est trop bien gardée), et n'afficher que les rapports suceptible de m'intéresser. Une fois la liste effectuée, il me demandait pour chacun d'eux ce que je voulais envoyer (la consomation de carburant, la durée du trajet par rapport à la distance et une estimation des pertes en utilisant speedsim m'était indiquée). A la fin, j'avais ma liste des planètes a attaquer (avec la flotte que j'ai choisi d'y envoyer). Les planètes trop bien gardée était stocké pour les "EDLMer" plus tard. Celles sans défense étaient gardée pour les raider à la sonde. Ce script n'est pas illégal étant donné qu'il ne se connecte pas au serveur. Voici quelques screenshots.


Egalement, j'ai été l'une des cibles prioritaires de nos ennemis qui voulaient me missiler mes planètes. Pour anticiper leur approche dans les systèmes environnants le mien (ou le rachat de missile de joueurs neutre), j'ai réalisé un autre script, se servant toujours du presse-papier des rapports d'espionnage, pour réaliser une cartographie des missiles, silo à missile et des ennemis, neutre ou alliés. Celà m'a permis de raider les installations ennemis avant de leur permettre d'avoir assez de missiles.


J'ai également réalisé ce petit calculateur de vitesse en C++ (de la même manière que speedsim) sauf qu'il calculait également la durée planète-lune, ce que ne faisait pas speedsim.


Sous Excel (avec l'aide de mIRC) j'ai réalisé des cartographies de phalanges ennemies...



Utile dans le début, j'ai réalisé un petit script mIRC qui calculait la prodution de mes usines, et calculait a quelle heure (en incluant les changements de vitesse de production, le manque énergétique, le pourcentage de production et les arrivages de transports de ressources alliés) les ressources demandées seront disponible, et beeper le cas échéant.


mIRC (qui aspire le presse-papier, détectant le classement statistiques) génère une liste des 1500 premiers joueurs de l'univers. En se souvenant de la dernière liste, il établie alors un différentielle entre les deux listes, voyant la progression des uns et des autres. Ce script utile permet d'une pars :
- détecter ceux qui progressent vite (gros coup, HoF ?)
- détecter ceux qui progressent vite en cheatant (apport régulier de ressources)
- détecter ceux qui ont beaucoup baissé (s'est fait recyclé)
- détecter les inactifs qui ne progressent pas
Puis la page HTML ainsi générée était envoyée sur mon serveur par FTP.
J'ai par la suite réalisé un script PHP cette fois ci qui lisait le fichier "presse-papier" que mIRC envoyait par FTP. Et PHP triait dynamiquement selon un formulaire html, les informations (permettant d'avoir la différence entre 2 listes aux choix), ect..



Comme vous pouvez le constater, Ogame a été une grande source d'idée de développement :)

Move your body





Etait un petit concours organisé par l'IUT département SRC de Troyes en mars 2005. J'étais alors qu'en terminal, mais poussé par des amis, j'ai participé au concours, même si celui-ci ne correspondait pas du tout à mes connaissances et mes capacités de développement. Il nous a été demandé en 24h de dessiner un logo pour une compagnie de voyage, de réaliser une animation (flash par exemple) et un site complet. Je ne connaissais pas PHP à l'époque, très peu Flash et aucunement Photoshop. Mon équipe (composé de mon meilleur ami et ma meilleure amie qui n'étaient pas informaticien loin de là) m'on aidé comme ils ont pu... C'était plutot dans la bonne humeur, et nous sommes repartis avec tshirt, autocollant Antec, nappe IDE fluoresante et même des néon tuning USB^^. Nous sommes arrivés 7e sur 8 il est vrai; mais il faut reconnaître que se mesurer face a des SRC seconde année n'a pas été facile. Il parait même que mon site a été l'un des meilleurs !

Bêta testeur de DCX



En 2004, ClickHere, le créateur du site francophone www.scriptsdb.org, l'un des leader pour le Scripting mIRC m'avait confié la tâche de bêta-tester sa propre DLL : DCX (pour Dialog Conrtol eXtend). Cette DLL devait reprendre ce que faisait MDX à l'époque d'une manière "plus propre", d'être éventuellement open source s'il venait a abandonner le projet.
J'ai alors testé toutes les fonctionnalités, les unes sur les autres, et créé une petite boîte de dialogue de test, comme ci-contre.

Créer une banière rapidement


Ce petit programme en mIRC permet de créer très rapidement des bannières très personnalisable avec un rendu moyen (sans anti-aliasing). Tout se fait en deux étape : choix du fond (couleur unie, dégradée, image...) et choix du texte (police, taille, couleur, alignement, orientation, espacement...). J'étais jeune quand j'ai fais ceci^^ Je fouille mes antiquités voilà ce que je retrouve !