Wednesday, November 30, 2011

release_name="svn SEDS r" REVISION ;

Once again, I ended up fighting on my DS with a tool (AnimEDS) that has a bug (timeline edition) I'm pretty sure I've addressed weeks ago. Question is: is the DS running the latest version or not ? well, except if I manage to re-create various versions of the software and compare their MD5 with the one on the DS ... hmmm ... unlikely to work with DLDI patching :-/

So I just acted at the source: modified the makefiles so that they extract the revision number from svn info and turn that into a C string I can display from the welcome screen. I won't pretend it's clever: there are sure tons of way to achieve that, 90% of them being largely proof-tested and documented. I just needed one version that works for my own development, so I won't even look at automake or $CVS or whatsoever. A grep|head|sed> oneliner just makes it.


Avec un peu de chance, je ne perdrai plus mon temps, dans la suite du projet sur DS, à tenter de deviner si j'ai bien la dernière version d'un de mes outils sur ma DS quand je repère un bug. Je viens de remodifier les sources de LEDS, SEDS et AnimEDS pour qu'ils annoncent automatiquement la "version svn" qui a servi à les compiler (bon, ça marchera surtout si je fais un commit avant de faire le "make all install" ;). Pas particulièrement propre, sûrement pas original, et même pas repompé d'un truc préexistant. Bricolé en 1/2 heure. Mais je sens que ça va être drôlement utile.

Allez, ciao. Je vous en montre plus dès que j'ai réussi à faire passer mon commit à travers ce firewall à 2 balles.

edit: there's a danger that remains: when I re-build one of the projects, I may miss to re-build libgeds or runme first on that platform, which could lead to some features not to work properly. That just happened with "wfcWindow::restore()" that wasn't called for some odd vtable-linking messy reason.

Tuesday, November 29, 2011

Lake District.

Infolab216h du mat... si j'ai dormi 4 heures sur la nuit, c'est beaucoup. Le lit est une vraie planche, et si mes voisins de paliers ne sont pas franchement bruyants, l'accoustique du bâtiment ne permet pas d'apprécier leurs tentatives de discrétion à leur juste valeur. Je suis en visite dans le district des lacs pour la semaine ... et je sens que ça va être un longue, très longue semaine.
Avec du café et des bananes.
Mais bon, faisons un peu le point. Début de l'année, je me fixais pour objectif de faire une première release publique de l'éditeur de niveau et de passer mes autres outils sous le "nouveau" devkitpro. C'est fait. Je me suis autorisé à faire de nouveaux graphismes pour la School zone, étant donné "qu'un premier jeu a été réalisé avec les graphismes de la green zone". Ils ne sont pas encore au complet (il me manque un décor potable, par exemple, peut-être en transformant la bibliothèque en un vrai campus), mais ils prennent forme. Le prochain jeu d'arcade de Bilou se fera dans la school zone. Ce sera sans doute "deep ink pit", mais il y aura une ou deux "gedsdemo" avant ça, pour tester le comportement des monstres... et m'amuser un peu ^_^
Ce serait peut-êtr bien le moment, tiens, de mettre le couvert avec les monsstrrrres. Un bien grand mot pour Bop, Dumblador et les encriers que ma petite puce nomme maintenant avec excitation. "Tu vas dessiner Bilou, toi?" me demande-t'elle à chaque allumage de ma DS(i) ... et ces derniers jours la réponse était plutôt "non, ma puce, Papa essaie le jeu de quelqu'un d'autre" (Shantae. On en reparlera). Voyons...

  • Bop, l'éponge, pendue à son fil. Ça demande un contrôleur nouveau, capable de gérer ses oscillations. Je me suis déjà amusé à voir comment faire ça avec de "simples" accélérations autour d'un point... sur le papier, ça tient la route, mais il faudra le coder pour voir.
  • "inkjet", l'encrier. Lui, il attendra sans doute que j'ai une version qui compile du nouveau moteur de collision: il est le candidat idéal pour les alignements de Gobs qui rende possible les poussées, transports et autres plate-formes mobiles.
  • Dumblador. Je devrais probablement commencer par là. En plus, c'est le candidat idéal pour faire quelques tests d'animations modulaire, vu que je ne lui ai pas dessiné de pieds. J'aimerais reprendre les pieds de Bilou, mais en rouge. Solution de facilité ? les recoloriser. Solution idéale ? activer enfin le support multi-palettes, puisque la DS supporte en réalité 32 palettes de 256 couleurs (16 pour les tiles et 16 pour les sprites).
Je crois que je vais choisir la facilité pour l'instant. Sinon, on risque fort d'en causer encore à Noël. Or, ce serait plus sympa de faire des essais dans gedsdemo-books, à Noël, non ?
Bon, là-dessus, il est enfin 7h ... je vais aller trainer mes baskets jusqu'au bâtiment où ils servent le petit déj.
Oh, well. Sorry, english-speaking folks. I was just "thinking out loud" to figure out where to move now. Since I'll have to speak english the whole week (travelling), please allow me not to provide a personnal translation this time :P
edit: While speaking out loud, I was wondering which of the School Zone ennemies I should implement first and how it would help to validate new game engine features

Sunday, November 27, 2011

Level Editor for DS : 0.1

Nous y voilà enfin: mon éditeur de niveaux disponible au téléchargement, avec les bugs corrigés, même si l'interface reste assez expérimentale. Avec en prime deux tilesets Creative Common pour vos petits tests: "generic.spr" par Surt (CC-BY-SA) et "frogatto-dirt.spr" (CC0) par Guido Bos. Amusez-vous bien, les tifous: la version française du tutoriel est en construction sur le fil "dev-fr". Huzzah! At last, you've got it. My long-delayed Level Editor for Nintendo DS (LEDS) is at last available for download with some sample tilesets to toy with ^_^. Thanks fly to Surt and Guido Bos for releasing their game art under creative-common license on OpenGameArt. The software is still a bit rough on the angles, so make sure you've got the tutorial page displayed on some screen when you'll use it for the first time(s)... and now ...

Go create!
Features that I still wish to see appearing in a future release (check back this post for UI mock-up):
  • [hint] provide a way to change "type of tile" when editing the meta-layer, without requiring on-map display. (we have the whole ABXY buttons disabled in that mode, right ?)
  • flipped tiles that also work in "copy" mode
  • area manipulation (overlays?)
  • map size edition (crop, extend)
  • map sketching (zoomed-out drawing)
  • map radar widget
  • multi-palette support on the BG layer (needs SEDS coordination)
  • [done] more robust monster edition mode.
  • wizard for .cmd file generation
  • use the ARGV protocol to quick-load a map from runMe *at a specific position*.

Sunday, November 20, 2011

LEDS & OpenGameArt ...

Si vous en connaissez pas encore opengameart, c'est bien dommage. Des dizaines de graphismes pour des jeux vidéos offerts à la réutilisation par leurs créateurs, voilà qui devrait éviter de passer par la case "voler les sprites de Mario" à bien des game-makers amateurs.

Comme je recommence à bosser sur mon éditeur de niveaux, la question se pose à nouveau "quels graphismes pour une version démo", histoire que vous puissiez essayer le soft même si le pixel art est totalement obscur pour vous. Eh bien, pourquoi pas ces anciens graphismes du jeu frogatto, justement ?

It looks like you won't get biokid-inspired tiles for the demo first release of LEDS. Neither will you get that 8-bit-restricted tileset for Apple Assault. Why would I push poor/old game art of mine where there's some ready-for-use tilesets on OpenGameArt, hmm ? These old frogatto tiles, for instance, dropped into public domain, would be perfectly fine. With some luck, annoying bugs should be gone by end of the week, and I'll be (at last) able to offer you a level-editor release 0.1 to toy with ^_^.

La question étant réglée, il me reste quand même

  1. à m'arranger pour que la partie du niveau à l'écran ne soit pas perdue quand on quitte le mode "édition des monstres" -> done
  2. à permettre de nommer la map au moment de la sauvegarde -> done
  3. à vider le lave-vaisselle.
  4. à permettre le "flipping" des graphismes dans l'éditeur de map. -> test
  5. à garantir la cohérence du "curseur" sur le tileset. -> done
  6. à empêcher le passage en mode "draw" depuis le "meta-layer" -> done.
edit: fichier converti avec les mêmes options que la "spritesheet" de Badman, l'automne dernier (déjà!).

Saturday, November 19, 2011

Biokid strikes again

Nouvelle journée passé à faire des recherches sur les attaques distribuées au boulot hier, nouvelle insomnie biokidienne cette nuit. Après un parcours ardu entre les fichiers log et les dll compressées, biokid parvient à abaisser les défenses d'un C5-C0 en l'assaillant de 'YAP' plus vites que ses buffers ne le supportent, évitant de justesse les bombes que ce lourdaut lui envoie en guise de défense

It looks like everytime I work on intrusion detection, I end up daydreaming of Biokid while I should be sleeping. No matter how hard I tried to sleep, the little blue dude kept jumping around, shooting at C5-C0 defense bots to stay unnoticed in the system he landed on. Then, in a flash, he broke into the bot's defense, scattering its internal logic and try to gather as many part of that logic as he can before the bot blow up. With all the pieces gathered, he'll be able to copy C5-C0's bombing ability.

Et tout d'un coup, juste avant que l'ennemi ne grille en un "core dump" définitif, un "dash" bien placé permet à Biokid de s'infiltrer au coeur même de ses défenses, éclatant sa logique interne dont il essaie de récupérer rapidement les morceaux ... Il faudra sans doute répéter l'opération sur un ou deux autres bots, mais quand les 16 fragments de C5-C0 auront été récupérés, Biokid pourra alors à son tour utiliser des bombes logiques ... et les C3-C0 actinalgiques n'auront qu'à bien se tenir...

Wednesday, November 16, 2011

Fire Zone

Tout au fond de la Planète Mystérieuse où Bilou et Bouli sont crashés, il y a la "Zone du Feu", alias le "Volcan Terrible", alias la Forge de Vulcain. Inspiré par les étranges stalactites du niveau "manger chez Joé" du premier Rayman, j'imagine une sorte de marmite de lave naturelle ou les dragons-fourchettes et autres chefs enflammés chercheraient à utiliser notre sympathique boule bleue comme épice exotique ...

I'd like to come with something more interesting than a plain "fire zone" for Bilou... something like a giant foundry or ... yeah. A lava-cooking area with pepper-dispenser-shaped stalacmits and fork-headed dragons. Yes, that'd definitely be original ... or maybe the fire level in Rayman Origin is very original, and I've seen it before, but only remember it unconciously and will have to scratch my head to find something else :P

Mais après avoir joué à la démo de Rayman Origins chez mon frère ... on dirait bien que je vais devoir trouver autre chose. Cette fois-ci, j'ai dû clairement subir une influence subliminale d'un screenshot ici où là.

Tuesday, November 15, 2011

You voted for ... both.

Here ends the poll on the school zone aesthetics. Thanks to the 8 readers who participated. I cannot say there is a "clear winner", but globally, the "newer" wood got slight preference as it is more "joyful". But that's for readers alone.

Simultaneously, I got feedback from two graphism artists (including one pixel artist) who didn't exactly "voted" to this poll, and they clearly stated that "the old wood was better, because it looks more like wood". That's something I cannot ignore, so I'm back at world 1-1 : *I* have to make the decision, or to come up with something that would combine the advantages of both. And the picture I just shoot at work might help.


Voilà. Cloture des votes sur un score plutôt mitigé. Si on peut dire qu'une majorité des lecteurs de ce blog ont préféré les nouvelles couleurs, plus vives et plus joyeuses, en revanche, les 2 graphistes qui ont jeté un oeil sont unanimes: l'ancienne version est nettement plus réussie, donnant plus un look "bois". pour ce bois-là, le fond clair est trop gris, et le fond sombre montre trop de contraste -- rien de difficile à ajuster.

Alors je reprends une petite photo du couloir, histoire de me faire un "vrai" raster de bois et de voir si je peux faire une version intermédiaire *aussi* pour le bloc de bois...