![]() |
| Astrocruiser needs some refactoring |
Sunday, September 18, 2016
Testing & Refactoring
Wednesday, May 16, 2012
Where You See is Where It Is
- 3 mars: fusion du code expérimental pour les nouveaux sprites composites dans le moteur de jeu. Il faudra quand-même pas mal chipoter pour pouvoir éditer la school zone dans LEDS
- 18 mars, le fichier de commande pour dumblador est écrit. C'est lui qui servira de démonstration des nouvelles capacités du moteur de jeu, mais rien à l'écran ne trahit encore la présence de dumblador :P
- 24 mars, release source du moteur de jeu et de ses outils.
- 26 mars, "reality check": pour pouvoir positionner Dumblador dans un niveau, he dois faire une révision d'AnimEDS pour qu'il enregistre la miniature à afficher;
- 25 avril, je peux ajouter des dumbladors qui font quelques pas (sur-place) mais il me manque des outils pour définir quelle portion de l'espace ils occupent dans le jeu.
- 7 mai, comme d'habitude, j'ai zappé la case 'feedback à l'utilisateur' et mes outils sont à la limite de l'utilisable.
- 15 mai; ok. Je peux enfin positionner de manière fiable un dumblador dans mon niveau
Là, j'ai AnimEDS, LEDS et le moteur de jeu qui sont d'accord sur la manière d'interpréter la position d'un personnage composite dans un niveau. Ça n'aura pas été sans mal.

J'ai même le début de la définition des déplacement, quoi que ce soit encore très "courbes elliptiques en espace discret toroïdal", si vous voyez ce que Bouli veut dire ... non ? bon, bin Dumblador reste sur place pendant presque toute l'animation, puis arrive d'un coup à une position improbable qui n'a pas grand-chose en commun avec le déplacement qui était prévu, donc:
- faire en sorte d'avoir en mode émulateur (sur toutes mes machines) une animation de déplacement, histoire d'éviter de re-faire l'animation à chaque test;
- éliminer les effets du type "la position de la tête n'est remise à jour que si la tête est déplacée (relativement) dans l'animation.
- garantir que l'info du type "verouillé sur le membre #3" est maintenue à jour quand on se déplace le long de la timeline.
- trouver le bug.
- Faire en sorte que les repères de positions dans LEDS restent corrects quand on se déplace dans le niveau ^^"
Tags: animeds, bouli, coding, CompoundGob, dumblador, english, level editor, milestone, sketch
Thursday, January 12, 2012
Pendant ce temps, dans le code ...
Oh, pas de soucis: je n'oublie pas Bilou, malgré tout cet intérêt renouvelé pour mon perso Ubisoft favori... Mais comme les études de Rayman et de Shantae ont pour objectif de construire le synopsys lointain, comprenez que je garde ça "en réserve" pour plus tard... Il faut quand-même bien que vous ayez le plaisir de la découverte quand je vous proposerai 4 écrans par monde dans nuts'n'bolts, hein :)
Don't worry: I keep working on Bilou, even though it's sort of top-secret sketching of distant scenario ideas for whatever will happen beyond the green & school zones you already know. I'll start working on the integration of animations edited with AnimEDS into the game engine. Please allow me to keep my todo-list in French only and focus back to my soup now :P
Entre-temps, il va falloir que je voie à intégrer les animations complexes générées par AnimEDS dans le moteur de jeu, sinon, c'est moins rigolo :P
- le
GameScriptpourra se servir des informations deanim[i]pour décider de créer un SimpleGob ou un CompoundGob (j'ai déjà une super-classe, ici) - pas de bloc
"anim%u %x { ... }"pour les animations composée, donc pas d'appel àparse(). Je pourrais soit détourner"state%u :anim%u { ... }"avec"state%u :spr%.anim%", soit pré-déclarer les animations"anim%u = spr%.%"-- l'idée étant d'autoriser des "pages d'animations" et d'avoir de préférence une page par fichier de commande. - j'ai des commandes générales et des commandes "d'affichage" dans les anims. Est-ce que ça vaut la peine d'essayer de ne conserver qu'une seule copie des commandes générales ?
- Dès que je vais vouloir utiliser des déplacements automatiques, il me faudra de l'état par composant, ce qui rend moins attirant l'inclusion du code qui gère case
ANIM_SET_SPRau sein de GobAnim ...
Tags: bouli, CompoundGob, planning, sketch
Sunday, January 23, 2011
La (old-)school zone
Après "Apple Assault", il y a de très fortes chances que le prochain "mini-jeu" de Bilou soit basé dans la School zone, ce curieux temple de la connaissance imaginé par Pierrick H. J'en ai déjà présenté pas mal d'éléments aux débuts de ce blog, vu que c'est dans la school zone que se plaçait le mini-récit qui m'a propulsé dans la blogosphère en 2006.
Précédent le premier Rayman de quelques mois, la school zone doit sans doute une bonne part de son inspiration à Zool, où elle n'aurait certainement pas fait tache entre le monde musical et le monde des outils.
Le crayon, tout d'abord, a été promu pendat, milicien du désordre imposé par le boss. A noter que celà ne s'applique qu'aux crayons noirs, à mine dure. Les crayons de couleurs, à mine plus tendre, semblent tout à fait sympathique, bien que ne parlant pas.Les gommes sauteuses sont restées, bien qu'ayant tendance aussi à faire de longues siestes ... un peu inspirées de certains blorks de Kid Paddle. Elles ne sont du camp de personne, et les pendats ont bien compris qu'il vallait mieux les éviter.
Quant aux encriers (maintenant 'inkjet'), s'ils sont si irritable, c'est simplement que ceux que l'on rencontre à l'extérieur tu Temple de l'Encre en sont les gardiens. Ils ne sont pas là pour rigoler, contrairement aux jeunes novices, qui eux, sont plutôt facétieux. Ils ont aussi acquis la faculté de flotter dans les airs (et donc utiles comme plate-forme mobiles) et peuvent projeter ce qui boucherait leur orifice au loin par la seule pression de leur encre. C'est de loin le personnage dont j'ai le plus ajusté le comportement.
L'éponge elle aussi a vu son comportement sérieusement remanié pour devenir ""Bop l'éponge". Pendue à son fil comme une araignée, pouvant flotter sur l'encre, elle joue à la fois le rôle de paratroopa et de plate-forme temporaire. Clairement, je veux construire un moteur de jeu riche en interactions là où les mouvements prévus pour par Pierrick étaient destinés à du BASIC en VGA.Dumblador -- le taille crayon -- perd la faculté de se déplacer dans les airs: il sera plus utile comme projectile "vivant" (cf. les ShyGuy de Yoshi's Island) pour se débarasser de certains pendats trop encombrants. Une "clé organique", dirait Kirby Kid.
Le gros-livre-écraseur est toujours là, et son rictus lui vaut le surnom de "SquareRoot". Il serait un des professeurs de cet étrange école dont le caractère s'est empiré au point qu'il veuille dominer le monde. D'autres livres de ses collègues (notamment le Pr. Harraps) semblent heureusement avoir échappé à ce sort.Enfin, la "school zone" s'est aussi enrichie de PnJ tels que les tampons-encreurs, BangBash (totalement lié à une tentative de passer le jeu en 3D), et on y voit parfois de curieux Pr. Brush ou Pr. Atlas.
Tags: adventure, artwork, bilou, boss, bouli, dumblador, english, evolution, history, inkjet, keys and locks, monster design, pendat, rectoverso, school zone, sketch, spongebop, y94
Monday, August 02, 2010
Le vieux Synopsis.
Petite scéance d'archivage: voici en comparaison ce qui tenait lieu de "Synopsis" à Bilou après la scéance de "brainstorming" pour le concours de 1994: tout juste un nombre de niveaux, l'ordre dans lequel il est possible de les parcourir (notamment via les téléporteurs triangulaires) et les pouvoirs gagnés après le combat contre les boss.
C'est bien sûr ma version "synthétique" de travail, mon frère m'ayant confectionné quelque chose de plus graphique avec une grosse tortue et une île volcanique ...
Bo - Look. This is an ancient map of the planet we've landed on.
Bi - Yep, it's curious that they had technology to build teleporters, but still named their lands along some primary elements such as "Fire", "Water", "Green"
Bo - I wonder what these "pyramid" and "turtle" places could look like.
Bi - Feel like doing some exploration, at last ?
Bo - Don't be stupid ! Archeological curiousity has nothing to do with your "exploration" stuff!
PS: eh oui, finies les "vacances 2010". Fini les coups de rouleaux sur le plafond, les tuyaux qui fuient et les tiroirs à monter ... ma cuisine est à nouveau prête à l'emploi (peu s'en faut), ce qui signifie que je peux à nouveau déployer un laptop dans mon salon :P
Wednesday, April 07, 2010
It's getting operational.
It's not quite progress that can be "shown off", but it's progress nonetheless! The "monsters" area of the integrated debugger -- the so-called "InspectorWidget" can now be used to set traps "on new monsters encounters". It also displays state and GOB numbers, coordinates and indicates how many active and passive collision area the GOB has. When clicking one of the letters representing an area, its world coordinates are displayed, allowing for comparison against hero's areas. Now, the only missing feature is a graphical rendering of the situation ...
Avec le code de "support" mis en place hier, le débuggeur interne de mon moteur de jeu -- j'ai nommé InspectorWidget -- avance bien. En quelques clics, je peux forcer le jeu à s'interrompre chaque fois qu'un nouveau monstre s'approche de Bilou, continuer le jeu pas à pas ou en continu, programmer des points d'arrêts sur les transitions d'état de Bilou, et demander les coordonnées des zones de collisions de tous les intervenants. Fonctionnellement, c'est quasiment complet. Je n'ai plus qu'à coder l'affichage, histoire que les zones de collisions et les sprites apparaissent comme dans la "version papier" ... parce que les chiffres dans tous les sens, ça n'est pas très sexy, et ça n'accélère que moyennement l'analyse.
Tags: bouli, english, InspectorWidget
Thursday, February 11, 2010
Berrybats!
Bion, ça ne va pas être un post extraordinaire parce que j'ai la crève. Et ce n'est pas une évolution extraordinaire non plus, en fait. C'est juste qu'à additionner 2 et 2, on finit par avoir 4. Et en l'occurence, ici, 4, c'est une baie sauvage volante non-identifiée qui colle Bilou au train dans les bois. Voyez plutôt. Ou jetez un coup d'oeil aux sources de la démo, c'est selon.
Bien qu'ayant changé de nom à plusieurs reprises, les BerryBats restent l'ennemi le plus ancien de Bilou (bon, okay, il ne fallait pas trop se forcer pour y penser au départ). J'avais prévu un long post de rétrospective mais je vais plutôt finir de boire mon ciment et retourner me coucher. Je vous invite à retourner voir l'ensemble des posts marqués "berrybat" pour vous faire une idée de ce que j'aurais causé.
I'm sick. So don't expect some very fancy stuff around. I just put the last bits together that were needed to have a berry bat flying around and tracking Bilou in the woods. It's mostly harmless at the moment. It's not even "turning back" nor does it sits sleeping until Bilou gets close. But it is the eldest of Bilou's ennemies and I had kept its pixels secret for too long. Enjoy. I'm gonna have my medecine and get some sleep. Enjoy the previous posts tagged "berrybats", that should tell it all.
Oh, au passage, faites donc un tour sur Pixelation, j'y avais fortement fait évoluer le "look" des chauves-souris entre leur version "pomme" et leur version "baie".
Sunday, January 24, 2010
Get ready for the flood!
Flood-fill in a painting program is usually the thing that makes users happy and coders unhappy. It's not a trivial task comparable to e.g. filled block rendering. It's more like exploring a dungeon: when you face a room with three doors and you select the one on your left, you also need to mentally keep track that you should come back and visit the door on the right and that one in the middle afterwards. A computer can do this "mental track" with a data structure that looks like a todo list. It's manageable (unless you're in an odd language like the QuickBasic I used for my early sprite editors), but in evil-designed "dungeons", it may require you large amount of RAM, and with a sufficiently large-and-evil dungeons (pictures, should I say), you might very well run out of memory when "painting". It used to happen from times to times with Deluxe Paint II.
"Vous êtes dans la salle principale du donjon. Trois portes se présentent devant vous: une sur la gauche, une sur la droite, et une au centre... Laquelle allez-vous ouvrir". Bien connu des rôlistes, c'est aussi le genre de dilemme que doit résoudre votre programme de dessin chaque fois que l'artiste utilisera l'outil "remplissage".
Ce qui explique en partie qu'il n'y avait aucun outil de ce genre jusqu'ici dans SEDS: pour le réaliser, il faut maintenir une sorte de "todo list" des salles (pixels) à re-visiter plus tard et des directions qui y restent à explorer. C'est pénible, et on ne sait jamais trop bien quelle quantité de mémoire ça va demander. Deluxe Paint II me gueulait régulièrement dessus pour cette raison. Bon, avec 4Mo de RAM et une image en 32x32, ça ne devrait pas être la fin du monde, mais ce n'est pas marrant pour autant.
Mais j'ai trouvé une astuce pour contourner la difficulté: la DS fait la moitié du travail: remplir horizontalement uniquement, en s'arrètant sur les bords, et l'artiste fait l'autre moitié : balayer verticalement de son stylet la zone à remplir. Eh oui, c'est comme ça: les programmeurs sont des feignasses. Il faudra vous y faire. On verra à l'usage si ça suffit.
I figured out a few days ago that there was an "easy way out" for that situation. Rather than having the CPU doing all the job, I can safely share the job between the user and the CPU: The user will point out regions that needs to be filled, and the CPU fills them one scanline at a time. That is, to flood-fill a rectangle as the one depicted, you'll have to swipe it bottom-up (or top-down ;-) with the "bucket fill" tool (L+B). Pick another color and swipe it "not quite up to the corners", and you'll obtain something like the picture shown.
When there are "holes" in the border, the fill just "evades" horizontally, rahter than flooding the whole outer area as you'll usually see in painting programs.
Tags: bouli, download, english, sprite editor, user interface
Thursday, August 13, 2009
bilou.cmd
Ca y est. Une petite classe abstraite "InputReader", deux sous-classes BufferReader et FileReader et un peu de bricolage, et je peux ranger tous les éléments relatifs à un personnage dans un fichier séparé, inclus depuis le "script-maître" du niveau.
Ca fait plus propre ... je suis prêt à rajouter des niveaux dans tous les sens.
Mais j'ai aussi pas mal de fonctionnalités à béta-tester:
- [done] composition de contrôleurs
- [now][done] gobs dynamiques (tirs, étoiles-bobo, etc) et état "nil" pour les détruire, qui utiliseraient de nouveau un mécanisme de liste auto-itérée pour leur gestion
- [done] utilisation d'actions externes dans les expressions de la machine d'état
Am i going to do a release right now ?
Or am i going to toy a bit with chained controllers (useful for the appleman), dynamic Game OBjects (useful for shots and the like) and external actions invoked from the state machines (useful for sound effects) ?
Tags: bouli, coding, done, english, flower-power, gobscript, level2, milestone, state machine
Sunday, July 26, 2009
avant Bilou ...
Avant même Calimero, se basant sur Rick Dangerous, mon frère me sort un niveau pour un jeu de plate-forme mono-écran qu'il baptise "Logic Labyrinth", rempli d'interrupteurs et de pièges en tout genres. Le concept me plait et je relancerai l'idée plusieurs fois (chaque fois que je découvre un nouvel environnement de programmation, en fait). Logic labyrinth manquait d'un personnage, par contre. Il devait s'agir d'un "char de l'espace", ce qui ne passait pas trop mal du temps de LOCO 64, mais plus difficilement après avoir découvert Giana Sisters. Je vous laisse donc découvrir cette petite illustration millimétrée de deux protagonistes destinés à s'attaquer au fameux labyrinthe, qui doit précéder la rencontre avec Piek de deux ans au moins.
Une balle aux cheveux hirsutes et une asperge à casquette ... Eh oui. On reconnait déjà le tandem "Bilou et Bouli" même si le style n'a encore rien à voir. A noter que Bouli étant arrivé sur le tard, son 'look' a souvent changé au fil du temps. Il était de bon ton, à l'époque, de prévoir un deuxième perso pour le joueur qui prendrait la manette 2 (ah, époque bénie ou une manette de console ne coûtait rien ;)
Over the years (I was roughly 10 at the initial attempt on Logic Labyrinth), I reviewed the concept several times, being somehow a fan of puzzle platformers. Drawing inspiration from Misadventure of Flink or Pushover, the game has been renamed "Mo, the sorcerer apprentice" or "Nono in the Maya Zone", but it never grew bigger than a dozen of lines of code.
première tentative, Bouli en "négatif couleur" de Bilou, mais tout aussi rond que lui, qui apparaît parmi les ennemis d'une "technical zone" très largement inspirée de la "Chemical Zone" de Sonic 2 (découvert début '93).
C'est peut-être un peu trop "cheap". C'était bon du temps de Mario Bros. ou de Chip & Dales sur la NES, mais plus à l'époque de Sonic & Tails où même Mario et Luigi commencent à ressembler à Laurel & Hardie.
Second essai à peine plus ancien: Bouli en tant que "Superlapin", sans doute inspiré de Mr. Nutz. Mon frère n'aime pas. On oublie. A noter qu'à l'époque, Bilou porte des gants et a encore des bras.
C'est à Sparenduin, notre "pépinière de jeux vidéos" que naîtront les habitants de la "Pipe Zone". Il ne manque plus qu'un sourire au Pipe Meccano pour se transformer en Bouli tel que nous le connaissons.
Et pour revenir au jeu Logic Labyrinth, il aura été "revu" à plusieurs passages successifs à Sparenduin, une fois en "Nono in the Maya Zone" (en avril '96, influence probable de Push Over) puis en "Mo, l'apprenti sorcier" (influencé par Misadventure of Flink"), mais je n'en ai encore jamais commencé une tentative de programmation "sérieuse".
Still on the 'historical' side, can show you the very first spritesheet of Bilou (still named 'Boudy the Bubble' when drawn, though the name 'Bilou' appeared that very day) that Piek brought us on September the 25th, while i was working on a "maze race" game. Just above, you can see a collection of "alternative designs" for Bouli, first as "color opposite" of Bilou (plus hat), then as "über bunny". None of them were kept (hopefully ^_^) and i'd be tempted to say that de "pipemans" designed to be baddies in the 'Pipe Zone' might be announciating the current design.
Quant au nom "Bilou", c'est au moment de sauver les premiers essais de course dans les labyrinthes (précurseurs de "Bilou RPG") sur diskette qu'il apparaît. Piek m'avait affublé de ce sobriquet tout au long de l'après-midi, il deviendra officiellement le nom du personnage quelques heures plus tard.
Dernière pièce de musée, donc, cette "planche de sprites" dessinée et apportée ce jour-là par Piek, où Bilou s'appelle encore "Boudy" ou "Bubule".
PS: Oui, désolé, je suis dans un trip nostalgico-historique cette semaine-ci. Je promets le retour du développement sur DS prochainement ...
edit Découvrez M.G.T, la source d'inspiration de Logic Labyrinth, dans Pix'n'Love #13.
Wednesday, June 17, 2009
gun.shoot(this)
Tout comme les contrôleurs, les "générateurs-d'objets-en-cours-de-jeu" (baptisés iGun, pour faire simple) sont des classes C++ paramétrées par le script et associées à certains états ou transitions pour ajuster le comportement du jeu.
Pour les contrôleurs, je les avais associé à l'état courant. Facile (presque trop). Pour les "guns", j'hésite. Le script ? une transition ? un objet graphique ? Qui aura accès directement à la classe, et qui n'y accède qu'à travers les méthodes d'un autre ? C'est le genre d'indécision que je déteste en POO, typiquement parce qu'en programmation impérative, le problème ne se pose pas.
- C'est au niveau des transitions que les guns sont utilisés. Je peux éventuellement capturer ce qui m'intéresse lors du parsing.
- Je n'ai droit qu'à 16 guns dans une 'palette' d'effets
- Je veux éviter de devoir ré-instancier des guns identiques (contrairement à ce qui se passe pour l'instant avec les contrôleurs où je dois avoir autant de GravityController que d'états affectés par la gravité).
I'm undecided. I'll have to leave it for further code refactoring.
Bref. Je devrai revoir cette partie-là un autre jour: mon temps de midi touche à sa fin...
Friday, June 05, 2009
Sésame, Ouvre-Toi !
Bion. Eh bien les choses n'avancent pas trop mal. En bricolant un peu la gestion des collisions sprite-monde et à l'aide d'un système de contexte pour les GobExpression utilisées dans les collisions, je me rapproche de mon objectif intermédiaire "un jeu où il faut juste ramasser les bonus pour finir le niveau".
En particulier, j'ai maintenant la possibilité de créer des blocs solides qui s'effaceront ou non au contact de Bilou en fonction du résultat d'un prédicat évalué lors du contact. Oh, j'ai bien dû tricher un peu, notamment en forçant le bloc en question à détecter la présence de Bilou sur une zone qui le dépasse, pour compenser le fait que la "zone active de Bilou" est, elle plus petite que son image. Cerise sur le gateau, certains sprites (en l'occurence un petit panneau) peuvent aussi être sensible à ce genre de "compteur de pommes", et peut passer de "retourne chercher des pomme" à "par ici la sortie" lorsque le compte est bon. Il ne me reste donc plus qu'à faire en sorte de pouvoir déclencher la lecture d'un autre niveau une fois la fin du niveau en cours atteinte, et on sera bon pour une "petite démo vraiment jouable".
Piet, j'attends tes p'tits sons ...
I like how the Game engine is doing great progress lately. With some tweaking in GobExpressions and in world-to-sprite collision processing, i managed to have "doors" unlocked when Bilou retrieves a sufficient number of apples in the level. This gets me yet a bit closer from the Qwak-like "grab-the-stuff-and-reach-the-exit" simple kind of game which should be my next release.
I also had the opportunity to check blocks can have "test area" larger than their size, which here was mandatory to compensate the fact that the "collision area" of Bilou was narrower than his "cando" area.
Monday, May 18, 2009
Demo coming soon
Encore un peu de patience. Le plus gros du boulot est fait, j'ai juste à "packager" les éléments de ma plate-forme de développement SEDS/LEDS/runme en un petit .nds autonome. Et éventuellement rajouter une animation pour que Bilou puisse se faire écraser par les champignons.
Après ça, release d'une petite démo jouable que j'espère plus convaincante que celle de juin 2008. Comptabiliser l'énergie de Bilou ne devrait pas être trop difficile à ajouter, par contre je ne sais pas encore comment m'y prendre pour redémarrer le niveau s'il meurt, etc. Il est possible que je garde ça pour plus tard.
Just a few more days ... Apples works, collisions works, all i need is packaging of code and media files into a single, standalone ".nds" file that you can download and try on your homebrew-ready DS. Hopefully, i'll also add an extra animation so that funghis can stomp Bilou and you'll get a playable demo of what i've been up to since June 2008.
Stay tuned.
Monday, February 23, 2009
You can't be successful at every experiment...
Something funny occured while i was working on a new map and testing my new tileset for the green zone, last week ... all of sudden, everything got mixed up in the game engine. I got Bilou's head instead of tree parts, Bilou turned into a funny jumping bush/rock and WoodWorms transmogrified into rolling bilous...
Alors que je testais ma nouvelle map et les nouveaux pixels pour la GreenZone, tout s'est retrouvé mélangé dans le moteur de jeu. Au lieu de feuilles, les arbres avaient des têtes de Bilou au bout de leur branches et Bilou était changé en buisson marcheur... J'ai flashé alors sur le petit dessin où j'expliquais, il y a quelque jours, comment Bouli avait bricolé le transmat de secours de l'AstroCruiser pour qu'il puisse ramener Bilou en lieu sûr grâce au fruits que Bilou récoltait (bio-fuel) pour proposer cette interprétation très "philadelphia experimental / la mouche" du bug.
Since this all occured just a few days after i posted a drawing explaining how Bouli modified the AstroCruiser's emergency teletransmatter to ensure Bilou avoid dying when encountering hazards, i came up with this little "the fly / philadelphia experimental" gag where the bug in the game engine was actually a wrong setting of the transmatter during an early experiment ...
Tuesday, July 15, 2008
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 ;)
Tags: adventure, appleman, bilou, bouli, english, funky funghi, history, monster design, sonic, storyline, superpowers, throwable, y94
Sunday, September 23, 2007
Je jette l'éponge.
Un peu de rangements dans le living, ce week-end. Je suis retombé sur deux petits croquis préliminaires de "Bop L'éponge" qui doivent dater plus ou moins du déménagement. Du coup, je les ai rajouté au post initial du 21 février. L'occasion de se faire une rétrospective de la section level(/game/monster) design ?
Ce qui est sûr, c'est que ce sera plus fun que le coup des messages d'horreur ou du débugging de mikmod :P
was busy tidying up the living-room this last week-end (new fairy's desktop is here, shelves had to move to give it more room. And while moving stacks of sheets, i located a couple of preliminary drawings for "sponge bop". I'd say they're likely to date back from march when i was moving in our new house.
Well, anyway, i just added them to the 21th february's last post. Maybe it could be a good reason for reviewing the "level/game/monster design" section of the blog ? Well, i guess it will be funnier than those last post about C++ Horror Messages or deep-debugging of the libmikmod.
Tags: bouli, level design, school zone, sketch, spongebop



Vote for your favourite post
