Friday, July 25, 2008

Encore une victoire de Canard !

Yes! j'ai trouvé le moyen de produire une animation Gif à partir d'une de mes planches de sprites. C'est encore fastidieux, et il faudra scripter ça, mais au moins ça marche (enfin, sous FF en tout cas). Accrochez vous à vos baskets, voilà ce que ça donne :
# convert .spr file into a tileset image (64xn*16)
perl DS/SEDS/spr2png.pl biloucoin.spr bcoin.png
# extract the 64x48 region where we have our coin
convert bcoin.png -crop 64x48+0+656 -repage +0+0 coinb.png
# extract individual frames for the animation
convert coinb.png -crop 16x16+16+0 -repage +0+0 coin1.png
convert coinb.png -crop 16x16+32+0 -repage +0+0 coin2.png
convert coinb.png -crop 16x16+48+0 -repage +0+0 coin3.png
convert coinb.png -crop 16x16+0+16 -repage +0+0 coin4.png
convert coinb.png -crop 16x16+16+16 -repage +0+0 coin5.png
# etc.
# produce the animation using the sequence 1-2-3-4-5-a 1-a-8-b-8-9
convert -loop 0 -dispose 2 -background darkgrey -delay 10 coin1.png 
  coin2.png coin3.png coin4.png coin5.png coina.png coin1.png coina.png 
  coin8.png coinc.png coin8.png coin9.png -loop 0 -delay 10 mycoin.gif
# here we are...
Howdy! I managed to produce an animated .gif out of my sprites. That's the first step towards an "beam out animation" feature in SEDS ;)

Tuesday, July 22, 2008

Tileset Headaches ...

I'm getting into the business of letting SEDS (and friends) deal with +64K of data in a tileset. Among other things, i want to be able to "flag" certain data as being part of "an extra tileset", desipte they belong to the same file. This is handy e.g. for animations. And i also need block-erasing features, which asks for more "memory management" than i had so far (barely watermarking :P) Yet, i need to be able to edit levels, too, which means i'm not totally free to "rearrange" the tilesets (at least, not the "master" one that will be loaded in VRAM).

Related todo-items :

Which in turns introduces :
  • [done] a new class for managing some memory
  • [done] a new section in .SPR files to indicate which blocks are free for reuse in an editor

(btw, it's quite frightening to see how many posts i have with "dangling todo items" :P)

Thursday, July 17, 2008

Morukutsu's Machine

Plutôt rare de voir des homebrew de cette ambition et de cette qualité. Morukutsu, à qui on doit déjà Pocket Pixie, un des plus sérieux concurrents de SEDS, nous propose la démo jouable d'un petit jeu de plate-formes sympa: Inside the Machine.

Oui, oui, un vrai jeu de plateforme, avec bonus, ennemis (deux types plus un boss), des pentes, etc. Côté technique, je dois dire que c'est du bon boulot (scrolling parallaxe, alpha-blending, etc) même si le côté "moteur physique" peut encore être améliorer pour donner un gameplay plus intéressant.
Homebrew game of that quality (and complexity) are rare enough to be mentioned. Inside the Machine -- a homebrew platformer by Morukutsu, the former author of Pocket Pixie, has now a playable demo available. A truly "complete" platformer with ennemies, bonus, sloped ground and a boss.
Technically speaking, this is a fairly good job (featuring parallax scrolling and alpha-blending), even though the physical engine could be improved to provide better gameplay (especially regarding gravity).

Et au passage, je dois dire que j'ai bien apprécié la petite discussion sur les tiles pentus que j'ai pu avoir avec Morukutsu... Genre "j'ai essayé ton histoire de vy=-1/TILESIZE, ça n'a pas marché" et "je double les tests pour la détection des pentes, ce n'est vraiment pas un problème". C'est un aspect que je dois régler dans Bilou, mais je suis hésitant sur la voie à suivre. Difficile de mettre ça en place sans orienter définitivement le moteur de jeu vers des jeux de plate-forme (alors que pour l'instant, il pourrait tout aussi bien gérer un shoot'm'up :)

fuuuusiooonn

hop. Je profite de mes p'tites vacances pour démarrer la branches "avec effets" du projet libntxm de 0xtob. Et à jouer avec les diff de GoogleCode, je me rends compte que j'ai changé bien plus de choses que je ne m'en souvenais. Je crois que je vais avoir droit à reprendre les fichiers un par un, passer les diff en revue pour voir ce que je dois garder et ce que je dois changer pour avoir une version "avec effets" qui soit la plus proche possible du code de base de 0xtob...

Since it's now holidays time, i start a branch in the libntxm's svn tree to bring in effects support ... Hm. And it seems i'll have full evening of diff'ing and patch'ing to keep my changes while remaining close to 0xtob's update (yeah, he did changes over what i used as a base too, now let's merge those changes ;)

Tuesday, July 15, 2008

Bon anniversaire, Bilou

Eh oui, ça fait maintenant deux ans que je bricole sur ma DS. Et figurez-vous que en voulant retracer l'historique, ma mémoire m'a fait défaut. Elle n'a apparemment retenu que les évènement "vie réelle" (achat de maison, mariage, conférences, changement de voiture, etc) et éventuellement greffé les bouts de développement DS qui s'y rapportaient.

For some reason, /dev/brain only stored memories of real-life events since I started homebrew development. Let's recap.

juillet 2006 - octobre 2006 : Balbutiements
Les débuts de SEDS, qui commence sur émulateur uniquement, puis reçoit la libfat pour stocker les fichiers sur la carte SD. Et en deux ans, je n'ai toujours pas fait sauter la "limite" de 4 fichiers, même si la quantité de données autorisée sur un fichier, elle, a considérablement progressé.

July 2006: Baby steps. I get started with a sprite editor attempt just on emulator, then I got true hardware and add libfat support so I could save my work on the SD card. I take shortcuts such as '4 files will be enough for everybody' which is still true as of today. By October'06, I have a first snowy tileset and a santa character converted from a .PCX file. I'd like to bring in a pinguin baddie I had drawn in an unifinished PC game project and make a Rick Dangerous clone out of it.

Fin octobre, j'ai mon premier petit "tileset" hivernal et Mr Noël récupéré du PC, de sorte que je peux envisager un Rick Dangerous like avec mon papa noël de 2000. Faute d'avoir retrouvé le pingouin de Badman III, le projet n'ira jamais plus loin que ce petit "mockup".
Novembre 2006 - Mars 2007 : Rumbling
Entre la thèse et le déménagement, j'avais apparemment trouvé le temps pour coder un petit "whack a rat" nommé "apple rumble", partant des sources de Tetris Attack. C'est aussi pendant cette période que mon lecteur de carte SD m'a laché, et que je me suis rendu compte de l'ampleur des lacunes du Desmume (l'émulateur DS) de l'époque. D'où le démarrage du projet "runme" permettant des transfers "over wifi"

November'06 to March'07 was a busy time. Writing my PhD, moving to a new home and the like. But still a dug enough time to convert a Tetris Attack clone into a whack-a-mole: Apple Rumble. A definitive failure of my SD card reader will trigger development of runME, my custom WiFi transfer tool. I still rely on emulator snapshots to show my pixels to the world.

Et si les tiles de la "bibliothèque" de Bilou sortent dans leur première version, c'est toujours à coups de SEDS émulé que je les convertis en "mockup". En revanche, beaucoup de fêtes en famille, donc beaucoup de level design pendant cette période-là ^_^
Avril 2007 - Juillet 2007 : Rédaction

Calme plat ... il fallait s'y attendre :P

Aout 2007 - Octobre 2007 : L'odysée du Wifi

C'est la grande reprise de "runme", qui jusque-là pouvait télécharger des fichiers par wifi, voire en afficher certains (.pcx, .spr, .it ...) mais c'est tout. Deux petites lib' releasées au bon moment (l'attente de ma thèse relue) vont permettre la pierre d'angle de mon développement DS : l'auto-update par wifi, ou comment un programme va récupérer une nouvelle version de lui-même et la démarrer sans autre intervention qu'un clic de l'utilisateur.

August'07. The thesis is submitted. I push WiFi support further: all the dsgametools will now support hot-update over WiFi. runME becomes the 'hub' from which SEDS can be invoked, and to which it can return once user tries to 'quit' it.

Suivra une ré-écriture de SEDS pour qu'il puisse gérer plus de sprites (multi-page) et "sortir" vers runme (qui sera aussi en mesure de lancer SEDS), qui sera annoncé sur les forums (à partir de Player Advance) vers la mi-octobre.

Novembre 2007 - Février 2008 : Objectif LEDS
Quelques scripts bien placés et je m'attaque maintenant au débuts de mon moteur de jeux de plate-formes: le scrolling. Théorique d'abord, puis pratique via une petite modification de runme (qui me sert une fois encore d'homme à tout faire) Ensuite, je m'attaque a un éditeur de niveau "autonome", ce qui amène son lot de nouveaux "widgets" et à la création d'une bibliothèque de fonctions utilisées par les trois programmes, j'ai nommé "libgeds" (pour Game Edition on DS).

November'07: it is time I start with the core of my future platforming game engine: scrolling. Once again, runME will be the host (and the fits-all-purpose tool) for testing things. Then comes the time to scroll not only things converted by scripts on a PC, but maps drawn on the NDS itself. That's how libgeds appeared by collecting "widgets" and functions shared by the three programs I have so far.

Février 2008 - Mars 2008 : NTXM
libmikmod ne me convient plus. Trop lourd, trop buggué. Je m'attaque à une intégration du player XM que Oxtob vient de publier. J'attaque aussi la gestion des effets ... un des côtés les plus obscurs des modplayers qui avait fini par avoir raison de mes efforts sous DOS/Assembler en 2000.

February'08: I drop libmikmod. Too heavy. Too buggy. 0xtob has just released an XM tracker and player. Let's integrate that. It lacks effects support, but I can do that. Unlike back in 1997, I now have the power of Internet to explain those things to me

Avril 2008 - Juillet 2008 : GedsDemo
Après cette petite pause musicale, je reprends le développement de mon moteur de jeu. Collisions, animations, déplacements ... Tout ça prend peu à peu place. La première animation postée sur le forum pixelation va aussi être à la base d'une révision quasi-complète du look de Bilou et de sa forêt, ce qui ne se fera pas sans pas mal de bricolage autour de SEDS (de nouveau) notamment pour la gestion et l'import/export des palettes.

April'08. Enough for the musical break. Let's get back to game engine development. Hitboxes, animations, motions, scrolling. Things are getting in place slowly. First 'movie' is posted on pixelation and will trigger an almost complete relooking of Bilou and the green zone, which will require another iteration on SEDS to improve palettes management. And it's also time to extend compatibility to other (DLDI-capable) linkers...

Le tout sur fond de "R4volution", afin d'améliorer la compatibilité de mes programmes avec d'autres linkers que mon Super Card...

Bilou : première mise en page



Quelques images de "la farde Bilou" ... un document estampillé "P.P.P. Software '94", dans lequel pour la première fois le projet du jeu de plate-formes mettant en scène Bilou et Bouli est décrit avec un peu de cohérence. Jusque là, c'étaient essentiellement quelques croquis de Piet qui tenait lieu de scénario.

Dans les grandes lignes, le scénario est simple: Bilou et Bouli se baladent tranquillement dans l'espace quand un incident quelconque (c'est allé du rayon tracteur à la collision d'astéroïde selon les périodes) provoque un crash de leur "astro-cruiser".

A noter aussi qu'au départ, Bilou et Bouli sont supposé être des humains transformés par un rayon émis depuis cette planète (en cause, 7 pierres magiques qu'il va falloir rassembler pendant le jeu). J'ai laissé tomber cette partie du scénario quand je l'ai repris pour ma petite BD en 2000. Plus question "d'alien des plus étranges" donc.

This was not exactly "the very beginning", but that's the closest we have preserved from that beginning. Somewhere at the end of 1994, there was a video-game design contest where the first prize was to have your game realised by a professional team. It definitely motivated my brother and myself to get some real "design documents" written. This is how the first ever storyline for "Bilou's Adventure" was written. Funny enough, by that time, Bilou and Bouli were initially humans that got lost in space. They're unfortunately approaching a mysterious planet and get hit by a "beam" that both attracts their ship and crash it on the surface, but also turn them into "strange aliens" : a blue ball and a yellow stick.

This is where the 7 "magic stone" initially appeared (influenced by Sonic's chaos emerald ? who knows ?) : they're the key to get back to your old self again, as you probably don't want to stay a blue ball for the rest of your days. I totally droped that part when writing down the comic in 2000. Bilou and Bouli *are* aliens, they don't find themselves "strange" and they are happy to be a ball and a "stick".
Piet était super-motivé par ce fameux concours "décrivez votre jeu vidéo et on le réalise pour vous", puisque non seulement il avait doublé le nombre de niveaux de la Green Zone (apparition du "puit de la clairière", notamment), mais il avait même pris le temps de détailler le "gameplay": "Jumper Mushroom invincible à vos armes" (tiens, ça fait un peu Keen 4, ça, non?), levier pour "dépolluer" le puits avant de tomber dedans, respiration dans l'eau limitée à 5 secondes, avec un pouvoir magique (Blue Stone) pour le prolonger, etc.

De mon côté, il fallait illustrer l'utilisation de tous ces pouvoirs magiques imaginés par Piet qui --jusque là-- se limitaient à un ou deux mots : "invincible", "voler", etc.
Evidemment, au fil du temps, c'est cet ensemble de "pouvoirs" qui a le plus souvent été remis en question. Ainsi, dans la version BASIC, Bilou ne lance pas de gameboy mais a un poing téléscopique et peut s'aggriper au plafond (toute ressemblance avec Rayman est absolument fortuite, puisque celui-ci fait son apparition sous DOS et PSX uniquement l'année après, en 1995).

This has led my brother to start sketching levels for the Green Zone -- and not only sketching them, but also describing them, giving hints on the ennemies movement patterns, gameplay etc. It was full of fun (but impractical for me) ideas such as "stop the pollut-o-matic so that you can enter the river safely", floating, walking and flying bumpers, etc. On my side, i of course had to bring flesh to the bones, and visuals to all of those funny "special powers" that my brother had in mind. "flying", "diving", ... have seen a couple of animations sketched.

Somehow, after the School Zone (which was deeply influenced by Pierrick's sketches), it seemed that my brother had his focus moving away. He just recycled levels of our very first video game "Calimero Against the Black Empire" that i hadn't completed : pyramid zone, water zone, computer/techno zone and the "pipe zone" full of warp pipes and pirhana plants ... hum.
Certains pouvoirs (voler et nager, entre-autres) et la présence d'une "zone des pyramides" n'est pas sans rappeler notre tout premier jeu vidéo "Calimero against the Black Empire", et bien qu'il n'y ait jamais eu de niveau dessinés pour la Fire Zone ou la Water Zone de Bilou, je soupçonne fort mon frère d'avoir penser s'en tirer en repompant les niveaux que je n'avais pas su complètement exploiter dans ce jeu (dont seule la première zone avait été réalisée à grand coups de Gotos ;)

De mon côté, ces illustrations on pratiquement vidé mon microfin de l'époque et ma collection de marqueurs destinés à souligner les titres de mon cours de Français, mais qu'importe. C'était les tout premiers éléments ou je pouvais amener un peu de personnalité à ces deux bonshommes -- Bouli ayant été tout fraichement dessiné (avant ça, il était dessiné comme un "SuperLapin") pour être le dual parfait de Bilou, tant dans les couleurs que dans la version "Laurel & Hardy". Probablement une influence des frères "Jack & Elwood" des Blues Brothers auxquels on jouait tant ... Quoi que j'aie retrouvé en prenant ces photos une première esquisse pour le jeu "Logic Labyrinth", un puzzle-platformer inspiré de Rick Dangerous où mon frère n'avait pas prévu de personnage, et où je pensais bien introduire une balle avec des cheveux punk qui courait très vite et une espèce de saucisse faisant plutôt des sauts en hauteur (un début de Lost Vikings ?). Celui-là n'était pas daté, mais j'aurais tendance à le placer aux alentours de 1990, vu que je me limitais toujours à la palette CGA ;)

It's fun to think that this era is where i initially introduced Bouli in the game. Bilou was there for a long time ago, starring Pierrick's games as "a blue ball named Bubble". I somehow tried to make him look "opposite" to Bilou, unconciously using warm colours where Bilou was all of cold colours, being long and slim (mimmick'ing memorable duos such as Laurel&Hardy or Jack&Elwood) while Bilou was all round. Even his "mood" was different. Bilou started being fast and a bit "impetuous" while Bouli has that kind of "Zen Attitude" that suits the engineer of a revolutional spaceship -- Bilou being instead a talentuous pilot. Think about it: if things had not turned out that way, you might have seen Bouli dubbed "Superabbit" and Bilou might have been blue and magenta with some punk hair...

Voilà. Je vous laisse visionner les archives et je retourne faire mes p'tits trous dans les murs de la cave pour installer des étagères ;)

Friday, July 11, 2008

Pyramid of the Forbidden ...

Bienvenue dans la pyramide interdite, le secret le mieux gardé du jeu "Commander Keen 4". Pensez, alors qu'on a chevauché Nessie et trouvé Korath III avec nos voisins pogoteurs, impossible de trouver un chemin jusqu'à cette fichue pyramide arborant une main, bien en évidence, mais définitivement inaccessible.

Seul indice donné par la princesse Lindsey "le chemin se trouve au fond de la pyramide de la Lune. Alors moi, tout ce qe j'ai trouvé au fond de la pyramide de la Lune, à l'époque, c'est un passage secret ultra-kill vers le sommet de cette pyramide (totalement inutile) et un tas de petits vers jaunes dont je n'ai jamais compris l'utilité.

Qu'importe. Je ne vais pas lever le secret, puisqu'à l'heure des wiki, vous n'avez qu'à chercher pour trouver. Non, je me suis contenté d'un "/tedlevel 14" pour démarrer directement au niveau voulu.

There are number of secret levels or worlds in videogame history, but few are teasing you as much as
the Pyramid of the Forbidden in Keen Commander 4. It this there, in plain sight. There seems to be a path to it, yet you cannot walk that path. And you know it *must* be a level of some kind because there is a put-your-flag-here hole next to the graphics of the level. You cannot imagine how many new games of KEEN4E.EXE we played just with the excuse that 'maybe we'll find the path to the hands pyramid, this time'.

There's an in-game hint telling you that the path for that pyramid is burried deep in the Pyramid of the Moons. All I've found there was an insanely hard secret passage to the top of the pyramid. Almost useless. So I won't spoil what's really to do to unlock the true path, and will just use /tedlevel 14 command line argument to hop to the level I want to test.

Forget all you know about welcoming players in a level. You're barely there and two flame-throwing blobs jump at you. And there you go, climbing a sort of giant staircase of poison slugs while more blue flame-throwers make sure you're under constant pressure.

Does that sound 'impossible mission' enough for you ? well, the 'free' 1-UP flask waiting for you at the top of the stairs can only mean one thing: the real deal is only about to begin.

Et quel accueil. A peine arrivé, deux licks viennent chaleureusement (hum) me saluer. C'est parti pour la première épreuve: escalader tout un escalier truffé de vers jaunes chieurs (litéralement) qui nous oblige de marquer des temps d'attente tandis que les licks cracheurs de feu sautent dans tous les sens, ce qui demande des réflexes d'aciers et des nerfs à toutes épreuves.

Ca paraissait déjà un peu "mission impossible", mais arrivé en haut vous apercevez une fiole "1-UP" qui est à votre portée, même pas sous le feu d'un tir de fléchettes, rien.

Ca, en langage de level-design, ça ne peut vouloir dire qu'une seule chose : "tu n'as encore rien vu. On va tellement t'en faire baver que tu vas regretté d'avoir eu un PC, alors fais demi-tour tant qu'il en est encore temps, tu n'auras rien perdu".

Et effectivement. Après la classique chute en aveugle qui donne sur des picots, on débarque pour ramasser (et utiliser) la première gemme sous un feu nourri. Tout tient dans le rythme : baisse toi, deux pas, un tir sur le slug, baisse toi, deux pas, baisse toi, saute pour attraper la clé, etc. Et une fois la porte ouverte, on remet ça avec trois tirs croisés et un slug à dégommer à l'arrivée.

Fin de la première "salle"

And how could the real deal begin better than a blind jump into a spiky pit where you have to evade to the side just before getting killed ? Once this is done, get ready for grabbing a key-gem (and use it) under constant darts fire. Commander Keen has now turned into a rythm game. Duck. step. shoot the slug. duck. step. step. duck. jump for the key. duck. etc. Once the door is open, we'll now have to deal with 3 crossed dart fires and a slug to shoot before landing. That was the first 'room'.

The start of the second room seems to offer a sort of pause. Sure things are still tricky, but none of it looks impossible until you reach the skypest's nest. They are by far the ennemy I "fear" the most in the game. Protected against our shots, the only way to get rid of them is with the pogo-stick, which is quite a nice monster design trait, but the pogo makes it almost impossible to fine-tune our movements. And they are (like any monsters) instant-kill enemies. So putting 8 of them in such a confined space is pure designer evil. If you're lucky enough, 3 or 4 of them will come close to you, you'll pogo-splat them and then close your eyes and run for the door. At this point, I'll just forget my self-imposed 'no save state' rule.

On continue apparemment en douceur. La deuxième salle est bien un peu corsée, mais rien d'infaisable avant d'atteindre le nid de skypests. Je n'aime déjà pas bien ces bestioles, invincibles à moins de les pogoter au repos, mais huit d'un coup dans un si petit espace, c'est vraiment du vice de programmeur à l'état brut. Seule technique, en attendre trois ou quatre avant de se lancer, puis y aller d'une traite et rentrer dans la porte.

Et là, ça relève tellement de la chance de passer que sorry, mais je sauve un coup.

On arrive ainsi dans les bas-fonds de la pyramide, près de la nappe de goudron bouillonnant qui semble s'étendre sous l'entièreté de Shadowland.
Si se laisser tomber sur une plate-forme mobile pour aller dégommer des slugs n'est pas bien difficile, c'est une tout autre histoire quand les murs sont truffés de lances. Heureusement, il y a juste la place, le tout résidera donc dans le timing.

And so we reach the bottom of the pyramid, close to that boiling-tar-sea that seems to be omnious in Shadowlands undergrounds. Getting down a floating platform and stun slugs souldn't be a big deal, but with spears hidden in every wall and ceiling, that's a different story. Hopefully, the space isn't too tight so it is mostly a wait-and-do timing challenge.

The second underground room is much more deathly. Nothing but tar and a few floating platforms that will let you down in no time. Oh, and a couple of skypests having fun in that open space. At the top of the room, a good deal of slugs wait for us, watching the door out with their puddle of acid ... thing.


La deuxième salle du fond est bien plus dangereuse. Rien qu'une mare de goudron et quelques plate-formes (tombantes de préférences) avec quand-même deux skypest se baladant dans tout celà pour notre plus grand bonheur (?) Et en haut à droite, une flopée de slugs (de nouveau) qui vous attendent sur une de ces passerelles étroites dont Commander Keen a le secret.

Bref, c'est parti pour la remontée. La dernière ligne droite, en somme. Un labyrinthe pénible, qui demande une bonne concentration au moment de dégommer les slugs et autres licks, parce qu'ici la marge de manoeuvre est quasimment inexistante. On se faufile sous le mad mushroom. Allez, courage, il y aura une glace à l'arrivée.

Et tout ça pour un faux-mage qui nous fait preuve de l'excellent humour de l'équipe ^_^

Alors quoi? A quand un Keen sur DS (un vrai, je veux dire. Pas un navet façon "Commander Keen GBC) ? La politique de Nintendo est-elle compatible avec ce type de difficulté ? d'humour glacial et racé ? Et ID software, après s'être vu refuser le boulot de porter SMB3 sur PC et n'avoir pu concrétiser Invasion of the Vorticon sur NES seront-ils encore ouverts à ce genre d'expérience pour un personnage que plus personne à part les croulants de mon époque ne connaît ?

We're almost done. All that's left is climbing up that side of the pyramid, through some tedious labyrinth full of slugs and licks. You'd better keep focused because there's virtually no headroom. Now sneak below the mad mushroom for the ice-cream reward. And the fake mage. Yes, of course: since the level was completely optional, we're rewarded with some totally useless humour.

Would that be publishable as of today ? will we ever see a true Commander Keen episode on Nintendo DS ? (not some sad clone like we got on GBC, I mean) Would Nintendo's Seal of Quality allow that level of game difficulty ? and humour ? Would ID software be willing to do it after they've been denied the porting of SMB3 on IBM-PC and failed to offer Invasion of the Vorticon on NES ?

Could we dream of seeing it run as a homebrew ? well, we've got pictures, levels and tunes. That's a good start.There are even tool to mess with the levels. "All" that's left is a reliable game engine to play it. I won't offer direct help here, I'm afraid, but there's one thing you can take for granted: once the game engine for Bilou's Adventure is ready, it will also be possible to rebuild Commander Keen's logic with it.

Et en homebrew ? Oh, bah on a les sprites, les décors et les musiques. C'est un bon début. Il y a même des outils pour bidouiller les niveaux. Reste à reproduire le moteur de jeu suffisamment fidèlement. Ne comptez pas sur moi, pour m'y atteler, mais soyez certains que le moteur de jeu de Bilou sera tout à fait capable de faire bouger Commander Keen et toute sa clique de sale bestioles pour peu qu'on le programme pour ça. A bon entendeur ...