Interview de Mollusk

  Interview Jean-Francois Liesenborgh.. | Page d'accueil | Interview de Sébastien Carceles.. 

: Ajouté le 24/8/2008 à 18:22
Univers-game : Bonjour, peux tu te présenter aux lecteurs si te plait?

Mollusk : Je me présente donc, Gregory Potdevin, alias Mollusk, J'ai 25 ans, j'habite dans les Yvelines (plus pépère que sur Paris même :P).

Je suis étudiant en licence d'info, et je travail en ce moment dans le dev DS.
Mes hobbies... la programmation, le cinéma, ma chérie, les mangas, les jeux vidéos, le tennis, le ping-pong.

Univers-game : Très bien, comment es tu arrivé à la programmation?

Mollusk : J'ai découvert ça (très brièvement) au lycée avec des petits programmes vite fait (mal faits) sur calculette (Casio je sais plus quoi, puis TI 89), puis petit temps mort le temps de faire mes études, et il y a quelques années j'ai voulu en refaire pour voir si ça me plaisait toujours autant du coup j'ai cherché un truc sympa à faire pour apprendre, je suis tombé sur Ham qui permettait en 1 click d'installer tout ce qu'il faut pour faire du développement facilement et sans prise de tête sur GBA.

Mollusk : Donc j'ai fait mes gammes en C sur GBA, et de là j'ai continué.
Sur GBA j'ai pas fait grand chose de particulier, la Nintendo DS est sortie peu de temps après que j'aie commencé à apprendre. En fait, juste avant la sortie de la DS j'avais commencé à faire une librairie pour GBA.

Mollusk : Elle était dans le même genre que Ham, mais m'a permis de comprendre un peu mieux comment fonctionne la GBA, les trucs à faire ou à éviter (c'est une console avec énormément de possibilités, mais à 16Mhz on peut pas faire tout et n'importe quoi non plus !).



Mollusk : Quand la DS est sortie, j'ai voulu adapter ma librairie sur cette nouvelle console plus attrayante (écran tactile, plus de puissance), sachant que pour la partie 2D on peut utiliser en gros le même code que sur GBA (avec des petits plus). C'est ainsi que j'en suis arrivé à créer PAlib (PA pour PlayerAdvance.org, le site sur lequel je passais mon temps à l'époque, lib pour... ben pour lib ^^).

Mollusk : Qui est devenu rapidement mon projet 'phare', dans le sens où il m'a pris pas mal de temps et a été utilisé par pas mal. Au début j'étais assez fier de cette lib, mais rétrospectivement je me rends compte de pas mal de choses qui ne vont pas, des défauts, etc... En même temps quand je l'ai démarrée j'étais encore débutant, donc forcément je ne pouvais pas tout faire du premier coup.

Mollusk : A part ça, j'ai eu pas mal de projets que je n'ai jamais sorti.
En fait, comme j'ai depuis le début une grande soif de découverte, alors j'ai touché à un peu tout, du SHMUP au puzzle games en passant (vite fait) par le jeu de plateforme.

Mollusk Mais en général je commence le jeu, je fais la base, je vois les difficultés, comment les contourner et faire avec, et quand en gros j'en arrive à avoir un truc utilisable et qu'il reste tout ce qui est graphisme/level design, je lâche l'affaire parce que j'ai vu tout ce qui m'intéressait.

Mollusk : C'est comme ça qu'aucun de mes 2 shoots sur NDS n'a vu le jour ^^

Univers-game : Je comprend, vous avez donc crée de nombreux projets et une lib. Quels sont les projets les plus importants que vous ayiez sorti? Je crois savoir que vous avez ouvert un site où vous vendez vos jeux?

Mollusk : En fait, sur Nintendo DS j'ai sorti surtout des petits projets, et j'ai fini par avoir de l'aide d'un vrai graphiste (Daydream) pour les rendre plus attrayants. Mais je n'ai pas eu de vrai gros projets sur cette plateforme.


Mollusk : Et puis l'année dernière avec un ami (Pitt) on a décidé de tenter un peu le développement sur PocketPC : c'est une plateforme relativement puissante (400mhz en général pour le CPU), avec un écran tactile (j'adore) de bonne résolution, qui offre donc pas mal de possibilités.

 Mollusk : Comme on aime se prendre la tête, au lieu d'utiliser une solution existante on a décidé de faire une librairie (XFlib) et de se dé*****r avec ça.
On est alors parti sur la base de PAlib (d'un point de vue fonctions/nomenclature) pour créer nos outils, qui m'ont permis de faire pas mal de jeux (certains nouveaux, certains sont des portages de mes jeux NDS).

Mollusk : Et là j'ai pu en fait mettre en vente 2 de mes jeux 'phares' : Skinz Sudoku et TangledBugs




Univers-game : Pouvez vous nous expliquer un peu leur concept?

Mollusk : Tous les jeux (la plupart gratuits) sont dispos sur http://www.xflib.net/. Comme je suis avant tout pour le freeware, même les jeux payants sont disponibles en version gratuite, avec juste quelques fonctionnalités en moins (genre pour Skinz Sudoku, le solveur, les awards, et les conseils ne sont pas disponibles dans la version freeware).

Mollusk : Skinz Sudoku est parti d'un constat simple : sur PocketPC on a énormément de Sudoku commerciaux, souvent pas super bien foutus, et les rares sudokus gratuits que j'ai essayé étaient moches et/ou pas pratiques.

Mollusk : Du coup j'ai eu envie, avec l'aide de Daydream, de faire un Sudoku gratuit qui puisse 'rivaliser' avec les commerciaux. Et puis comme on a eu pas mal de succès, on a décidé d'aller plus loin et d'ajouter des fonctionnalités annexes en mettant le tout en vente ^^ Mais la base (à savoir, 4 niveaux de difficulté et génération aléatoire des puzzles) reste freeware.

Mollusk : Quant à TangledBugs, c'est un remake d'un jeu que j'ai vu plusieurs fois sur le net : Untangle (il doit avoir un autre nom mais j'ai oublié). En fait, j'ai jamais trop aimé le jeu à la base, je voulais le faire parce que ça me paraissait court à faire, adapté à l'écran tactile, et que je voulais m'essayer à faire un code pour détecter les croisements de lignes. Bon, au final ça a été super chiant à faire, mais à force de tester le jeu je suis tombé amoureux du concept et j'ai ajouté au fur et à mesure des modes de jeu ^^.
Maintenant je suis complètement accro (et ma copine aussi d'ailleurs, depuis peu)

Mollusk : J'ai fait essentiellement des jeux de puzzle, pour plusieurs raison.
1 C'est en général simple/rapide à faire, et demande peu de graphismes
2. Ca fait partie des rares type de jeu où l'on peut passer plus de temps à y jouer que le temps qu'il a fallu pour les faire !.

Mollusk : Du coup je préfère faire 3-4 puzzle games que de faire 1 seul énorme jeu qui aura une durée de vie 5 fois inférieure :P.

Mollusk : Après, j'ai aussi fait des trucs plus 'conceptuels', comme Perpetual, sur Nintendo DS puis repris et largement amélioré sur PocketPC (et PC mais il est pas top celui-là :S). J'ai mis une vidéo en ligne :

http://www.palib.info/blog/flvplayer.swf?file=http://www.xflib.net/Games/Perpetual/Perpetual.flv

Mollusk : En gros, sur le net on trouve pas mal d'images sympas/insolites, et je voulais un moyen original et amusant de les visualiser. Sur DS c'était aussi le défi technique qui m'intéressait (il fallait pas mal de place pour stocker toutes les images et faire les zooms dessus), et sur PocketPC avec le surplus de puissance j'ai pu me faire plaisir :P.

Mollusk : En gros, on zoom sur une image en cliquant où on veut, et au fur et à mesure que ça zoom, les pixels de l'image se transforment en nouvelles images sur lesquelles cliquer, etc...
Mollusk : C'est complètement inutile mais j'adore ^^.

univers-Game :  Bravo pour tous vos projets !, Avec cela vous devez avoir une solide expérience, quels outils et méthodes de travail utilisez vous?

Mollusk : A noter aussi que certains sont sortis sur PC, mais un peu à la va-vite : j'ai adapté la librairie pour pouvoir recompiler pour Windows (mais comme c'est fait avec SDL ça marche sous linux en utilisant Wine). C'est pas super adapté car ça reprend la résolution du PocketPC, mais ça peut permettre de tester ^^.

Mollusk : Pour les jeux sur Nintendo DS et PocketPC j'ai utilisé 95% du temps Visual Ham comme IDE. C'est peu connu, peu utilisé, et probablement pas la meilleure IDE au monde, mais c'est avec celle-là que j'ai commencé et je m'y suis fait ^^.

Mollusk : Et puis comme c'est super léger, ça permet de se passer de Visual Studio (ou autre) sur des PC qui n'ont pas forcément les ressources pour.

 
Mollusk : Sinon, j'utilise aussi (pour la partie code) Programmer's Notepad, et plus récemment Code::Blocks.

Mollusk : Devkitpro et libnds permettent, sur NDS, de compiler et d'avoir une base pour utiliser le hardware.

Mollusk : Quant au PPC, c'est CeGCC qui permet la compilation. En fait, pour cette plateforme on aurait pu se simplifier la vie à mort en utilisant les outils de Microsoft, bien plus poussés a priori, mais Pitt est sous linux et il fallait donc une solution multi-plateforme... Donc on est allé sur CeGCC, un projet Open Source pour compiler pour PocketPC.
Ça a été un peu difficile au début mais maintenant ça tourne bien :P.

Mollusk : Les méthodes de travail, elles, sont plus particulières : je code ce qui me tente quand ça me tente, donc en gros j'ai tout le temps 5 à 10 projets en cours, et puis je vais bosser un jour sur l'un, le lendemain sur l'autre, etc...
Du coup, un jeu peu être fini dans la semaine si je suis motivé et que j'ai un peu de temps, ou alors peu s'étaler sur des mois si j'ai la flemme de bosser dessus et que je passe à autre chose :S.



Univers-game : D'accord, pouvez nous expliquer les fonctionnalités de votre lib pour un programmeur?.

Mollusk : En fait c'est orienté à 100% sur les jeux vidéos, donc ça permet de créer/afficher des sprites, de fonds, et de leur appliquer les effets de base (scrolling, rotation, zoom).

Mollusk : Il y a aussi quelques fonctionnalités additionnelles comme la reconnaissance de forme, le support stylet/touches (histoire de pouvoir jouer, sinon ça limite ^^)

L'idée était de pouvoir développer sur PocketPC comme on le fait sur console, avec un framerate fix et de bonnes performances.
Héritage de la GBA/NDS, et comme c'est le même type de processeur (ARM), on a pas mal de petites choses, de base, mais toujours utiles pour ceux qui ne s'y connaissent pas trop, comme les tables pour Cos/Sin en virgule fixe, etc...

Mollusk : On a banni les floats de la librairie pour des questions de performance ^^

univers-game : Très bien, votre lib est disponible en téléchargement?

Mollusk : Oui, avec les sources , sur PAlib.info pour PAlib, et XFlib.net pour Xflib.

Mollusk : Mais bon, comme j'ai fait tout ça à l'arrache au fur et à mesure des besoins, ce n'est pas forcément très bien codé, il y a quelques incohérences d'un point de vue nomenclature, etc... 
En fait, au-delà de l'aspect performance de mes librairies, elles ont surtout étaient faites dans l'optique de permettre à n'importe quel débutant de commencer à développer des jeux vidéos.

Mollusk : C'est comme ça que j'ai débuté, je ne suis pas du tout passé par le développement sur PC avant comme on voit dans tous les tutos :P.

Mollusk : En fait, j'ai voulu au tout début passer par les voies 'classiques', et j'ai trouvé ça barbant. Quand on commence à programmer en utilisant un truc pour faire des jeux, l'avantage est qu'on ne va pas commencer par vous faire apprendre 40 000 trucs chiants dont on saisi mal l'intérêt, on va tout de suite commencer par faire afficher un fond, des sprites, les bouger, etc... Du coup, c'est beaucoup plus motivant et ça donne envie d'aller plus loin.

univers-game : Absolument, donc en plus de vous servir pour créer vos jeux, la lib permet également à des programmeurs de se concentrer directement sur le développement de jeu vidéo.

Mollusk : C'est surtout pour avoir une première approche au développement, oui.

univers-game : Si un jeune programmeur souhaite se lancer dans le développement de jeux vidéo qu'est ce que vous lui conseilleriez ?.

Mollusk : Vaste débat ^^ Je pense qu'il y a pas mal de façon de commencer, ça dépend aussi de ce qu'il veut faire : 2D ou 3D, la plateforme, etc... Mais au final le plus important c'est de commencer par quelque chose de simple.

Mollusk : En règle générale, reprendre des vieux concepts connus (Pong, etc...) c'est bien pour commencer car c'est facile à comprendre, facile à réaliser, et ça permet d'apprendre les bases.

Mollusk : J'ai vu trop de jeunes arriver en disant qu'ils apprennent à développer et qu'ils vont réaliser un RPG de la mort, ou refaire windows mais pour NDS, ou encore créer un super SHMUP tout en 3D sur GBA, etc...

Mollusk : C'est une erreur de s'attaquer à de tels projets car au final ils n'avancent pas (souvent ils commencent par le menu, alors qu'en général c'est plutôt par là que je termine...), et ils arrêtent de développer avant même d'avoir commencer.

Mollusk : D'ailleurs on trouve énormément de petits jeux bien sympas en flash, dans le style "Carré Rouge", et c'est le genre de projet parfait pour commencer ^^.
Je dirais que la programmation est quelque chose qui n'est pas difficile en soit. Ça demande un peu de rigueur, beaucoup de logique, et pas mal de temps au début (encore qu'on peut apprendre en pratiquant un peu de temps en temps, mais autant se plonger dedans un bon coup), et une fois les bases acquises on peut faire tout et n'importe quoi.

Mollusk : Il y a juste un premier cap à franchir où on risque d'être 'rebuté' parce que c'est au final assez différent de ce qu'on a l'habitude de faire, je trouve. Mais bon, le plaisir de la création, du jeu, tout ça, c'est dommage de passer à côté ^^.

univers-game : Je suis tout à fait d'accord avec vous.

Mollusk : D'ailleurs, à propos de l'histoire 'faire un méga RPG' versus 'faire un petit jeu', il faut se poser les bonnes questions. Si je devais lister les jeux sur lesquels j'ai passé le plus d'heure dans ma vie, il y aurait par exemple Tetris, certains Tower Défense, et probablement TangledBugs.

Mollusk : Au final, Dans le top 10 des jeux sur lesquels j'ai passé le plus de temps, je dirais qu'on ne trouve aucune 'grosse production'. Quand je fini un Zelda (ou autre), bah je passe à autre chose, alors que des petits jeux avec un concept simple, style puzzle game ou un côté arcade très prenant, ça peut durer plusieurs dizaines d'heures ^^.



Mollusk : Donc je ne trouve pas ça dégradant, bien au contraire :P Si ça se trouve c'est même plus difficile de trouver le petit concept qui parait "évident", qui tient en haleine des heures durant, et auquel personne n'avait pensé jusqu'à maintenant, par rapport à faire un énorme jeu qui va prendre 2 ans à réaliser (ou à abandonner).

Mollusk : Le truc un peu moche à dire, c'est que globalement il vaut mieux avoir (pour des jeux amateurs, j'entends) un petit jeu sur lequel on bosse seul de façon régulière qu'un gros jeu à plusieurs. Pratiquement tous les projets d'équipe en amateur que j'ai pu voir (ou même où j'ai pu participer) sont pratiquement morts-nés. Sur Nintendo DS la plupart des jeux amateurs ont été faits par des gars seuls, ou alors 1 programmeur et 1 graphiste. Dès que l'équipe devient trop grosse ça entraîne des contraintes et le jeu ne fini jamais ^^.

Mollusk : Et puis l'autre truc c'est d'avoir des bases de maths 'solides'. Pas forcément besoin de beaucoup, mais disons que le niveau 1ère/terminale est un plus ^^ Ne serait-ce que pour tout ce qui est trajectoire, il faut savoir à quoi correspondent les fonctions Cosinus/Sinus, etc... Après, même plus jeune, on peut facilement apprendre si on est motivé.

Mollusk : Ca m'est déjà arriver d'expliquer à un jeune sur MSN comment s'en servir, et il n'a eu aucun problème par la suite J.

univers-game : D'accord, je vous remercie d'avoir donné des conseils aux lecteurs !.

Mollusk : Pas de quoi ^^.

univers-game : Pouvez vous nous dire quels ont été les jeux que vous avez développé qui vous ont le plus marqué, expliquez nous également un peu leurs concepts et leurs développements.

Mollusk : pas facile :P.

Mollusk : Il y a eu War of the Weeds sur Nintendo DS, un jeu avec plusieurs modes de jeu, dont 2 jeux se jouent contre une IA, 2 jeux de plateaux dont Othello/Reversi et un autre du même genre.

Mollusk : Je n'avais encore jamais fait de jeu avec la DS qui joue contre nous, c'était une grande première ^^, Du coup j'ai fait au plus simple : la DS calcule tous les coups possibles qu'elle peut jouer, et prend au hasard un des coups qui lui rapporte le plus de points. C'est classique, basique, mais ça marchait pas mal

Mollusk :. En fait, c'était marrant parce qu'on avait l'impression de jouer contre quelqu'un de très agressif puisque chaque coup était destiné à bouffer le plus de pièces.

Mollusk : Mais du coup c'était trop facile de lui tendre des pièges, du coup j'ai amené la détection 1 cran plus loin, en cherchant non seulement les coups les plus forts, mais en regardant les réponses possibles du joueur derrière pour voir quels coups sont toujours les meilleurs.
Et là, c'était marrant parce que du coup l'IA était un peu plus forte (normal), mais surtout avait un 'comportement' très différent : hyper défensive, à éviter le 'contact'.

Mollusk : Assez surprenant, ça laissait le joueur attaquait pour ensuite le bouffer, alors qu'avec le même code mais qui 'voyait' un cran moins loin, ça faisait un comportement à l'opposé.

Mollusk : Et je me suis arrêté à lire 1 niveau de plus, ça faisait une IA suffisamment forte pour me battre à chaque fois (je suis pas très bon non plus) alors j'ai pas eu besoin d'aller plus loin ^^ (ça c'était pour l'autre jeu de plateau, pas la partie Othello).

Mollusk :  Un autre jeu qui m'a marqué ça a été Skinz Sudoku, pour plusieurs raisons. Déjà parce que j'ai eu énormément de retours, ce qui m'a motivé à pousser le jeu toujours plus loin, aussi parce que c'est celui qui a demandé le plus de travail, du coup, C'est probablement un de mes seuls projets que j'ai développé pendant aussi longtemps,
(il est sorti rapidement mais je n'ai cessé de le mettre à jour depuis).

Mollusk : Le fait qu'il soit sorti sur des portails de vente m'a aussi pousser à la peaufiner plus que je ne le faisais d'habitude, et je dirais que ça a pu marquer les jeux que j'ai fait par la suite : ça m'a un peu donné le coup du travail bien fait ^^ Avant je voulais avoir un jeu fonctionnel et basta, maintenant je cherche à avoir un jeu fonctionnel et de qualité (au niveau des fonctionnalités, des graphismes, etc...).

Mollusk : Un autre qui m'a marqué c'est Perpetual. En fait j'ai été obligé de faire un outil PC pour limiter le temps de calcul à faire sur NDS/PPC, et ça a été assez intéressant de faire une application qui ne soit pas un jeu et qui soit juste sympa à regarder ^^.

univers-game : Très bien, quels sont vos projets futurs? et deuxième question : Avez vous une raison particuliere de développer principalement sur des portables ( NDS, GBA, PPC etc) ?.

Mollusk : Oulah, vaste débat ^^ J'ai énormément de trucs en cours, dont pas mal de puzzle games.
Comme je bosse à plein temps cet été ça n'avance pas trop, mais en gros je refais une librairie (pour Windows, Linux, et PocketPC, voire pour NDS plus tard), et une fois terminée je vais pouvoir reprendre mes projets en cours : une version améliorée de Pipes, probablement des versions PC des jeux que j'ai fait, avec une résolution adaptée), j'ai quelques nouveaux jeux en cours de développement (d'ailleurs j'ai une compilation de puzzle games avec tetris/columns/lumines que je n'ai jamais sorti ^^), un clone de Zoo Keeper, un jeu à la lemmings, un jeu de management assez original, etc... Plein de choses :P.



Mollusk : J'envisage aussi de faire des applications mais pour l'instant ce n'est pas ma priorité, parce que je m'éclate bien plus sur les jeux :P.

Mollusk : J'ai fait 2-3 applications sur NDS, mais la seule partie qui m'intéresse dedans c'est la GUI ^^.

Mollusk : Sinon, pourquoi le développement sur portable, pour une raison simple. Sur GBA c'était pour le trip au début, pour le fait que paradoxalement c'était très facile de commencer dessus, et voilà :P Pour la DS, c'était pour l'écran tactile qui permet de faire des jeux très simples, super funs, et à la prise en main instantanée, donc je trouve ça bien plus fun à réaliser que des jeux au pad ou à la souris.

Mollusk : Pour le PocketPC, c'était dans la continuité de la DS : écran tactile, sauf que je l'ai toujours avec moi dans la poche ^^ Et le fait de faire tout l'affichage en software permet de faire pas mal de choses qu'on ne peut pas (ou mal) faire sur DS, comme des sprites avec des niveaux d'alphas pour avoir de bords bien beaux, etc...

Mollusk : Au final, je joue très peu quand je suis chez moi (ou alors à la wii), donc les seuls moments où je peux jouer à mes jeux c'est dans les transports, et j'ai rarement mon PC avec moi (quoi qu'avec l'EEE PC ça change un peu la donne, D'ailleurs j'envisage, du coup, de sortir des jeux pour EEE, adaptés à la résolution).


univers-game : C'était une interview très intéressante !.

univers-game :  Et bien voila, c’est fini! Je vous remercie d'avoir répondu à mes questions, bonne continuation et à bientôt.

Mollusk ; Merci a toi !.

Un grand merci a Mollusk d'avoir accepté cette interview.

Voici les liens vers ses sites web :

http://www.xflib.net/ Le site où sont en vente ses jeux ainsi qu'en téléchargement libre : sa library Xflib.

http://palib.info/ Et le site officiel de Palib une des lib de Mollusk .













  Interview Jean-Francois Liesenborgh.. | Page d'accueil | Interview de Sébastien Carceles.. 

» Catégorie News
Poster un commentaire

23/12/2008 - Commentaire sans titre

Posté par Yus
Wow ! PAlib ne viendrait pas de "Programmer's Arsenal" ^^ mais cela n'explique pas d'où vient le nom "XFlib". :D
Lien Permanent

10/9/2008 - Commentaire sans titre

Posté par minishlink
Belle interview, un peu longue mais intérréssance :)
Lien Permanent

A propos du blogueur

Liens

• Accueil
• Voir mon profile
• Archives
• Email
• Blog RSS

Catégories

News

Amis

0

Liens

• univers game
• univers-game le forum
• Mangetonpad.com
• NintendoMax.com

Services

•

Sondage

| Contact author |