I. 1 Présentation▲
Pouvez-vous vous présenter en quelques mots ? Qui êtes-vous ?
Galliez Bruno, 36 ans, autodidacte et passionné par l'informatique.
Cascio Tommaso, 35 ans, passionné par tout ce qui touche à l’univers digital.
Comment avez-vous appris la programmation ?
Bruno : j'ai appris la programmation web sur Internet, le soir après mon travail en soudure, ces 10 dernières années. J'avais un manque flagrant lorsque je discutais avec d'autres développeurs sur Internet. J'ai donc choisi d'effectuer une reconversion ces 3 dernières années pour un BAC +3 en informatique & systèmes qui m’a permis de découvrir tout ce qu’il me manquait (réseau, Arduino, microcontrôleur, etc.).
Tom : par la force des choses, mes parents m’ont placé devant un commodore 64 à l’âge de 5 ans et au départ, ne sachant ni lire et écrire, je m’efforçais à recopier du code à partir de magazines. Plus grand, j’ai suivi la filière technique et ensuite informatique.
Comment êtes-vous arrivés dans le monde du jeu vidéo ?
Bruno : un ami dont le père était informaticien m’a présenté « The Secret of Monkey Island ». J’ai toujours voulu remettre les mains sur cette machine étrange. J’ai dû attendre mes 20 ans pour pouvoir acheter mon premier PC. Voulant recréer cette expérience, j’ai sombré dans l’univers du jeu vidéo. Mais le jeu ne me suffisait pas, je voulais savoir comment ils faisaient pour créer ces magnifiques jeux. Je ne pousse que rarement les jeux à fond. Les découvrir, suivre l’histoire et surtout imaginer comment ils l’ont développé est ce qui me passionne le plus. J’aime me renseigner sur les moteurs utilisés quand je trouve l’information. Et pour apprendre la programmation j’ai directement sauté le pas de créer un jeu web. Un jeu à la Ogame. J’en ai sorti 2 sur les 13 développés. J’avais fait un remake web du jeu « Colonization » mais pour des droits d’auteur, je n’ai pas pu le sortir. En Bref, j’ai découvert cet univers fabuleux et je n’en suis jamais sorti.
Tom : je ne recopiais pas des centaines de lignes de codes pour rien … ????. C’étaient principalement des démos ou des jeux sur commodore 64, le simple fait de pouvoir exprimer un art par la technologie m’a tout de suite ému. À mes 8 ans, j’ai reçu une Sega Mega Drive et je voulais savoir ce qu’il y avait dans les cartouches et pour finir, la période PC Jeux / Gen4 / Joystick et GameOne ont été révélatrices.
II. Carrière▲
Quel est votre parcours professionnel ?
Bruno : j’ai travaillé 13 ans dans la soudure et j’ai enchaîné sur ma reconversion. Depuis la fin de mes études, je travaille pour un Hôpital et je développe les applications internes.
Tom : mis à part quelques petites dérives, j’ai toujours travaillé atour du numérique, en tant qu’ingénieur son / Dj, technicien en informatique et application engineer ou formateur / enseignant.
Faites-vous toujours de la programmation dans votre travail ? Cela vous manque-t-il ?
Bruno : oui et oui. Nous ne sommes pas beaucoup et j’aurais aimé un cadre avec plus de développeurs passionnés qui veulent toujours pousser plus loin.
Tom : pour la première, non et parfois cela me manque, toujours est-il que ce qui me manque ce n’est pas de coder ou programmer, c’est de créer !
Comment avez-vous fait votre choix parmi les moteurs de jeux ? Qu'est-ce qui vous a décidé à prendre Unity ?
Ce fut tout un débat et des tonnes de recherches. Pas mal d’expérimentations sur les différents moteurs pour établir une liste des pour et des contre. Nous avons réalisé de tout petits projets pour nous faire un avis rapidement. Finalement c’est la facilité d’arriver à un résultat rapide de Unity qui l’a emporté. Mais ce n’est pas sans mal, car notre côté « bas level » où nous sommes habitués à tout gérer nous a causé bon nombre de soucis. Il faut apprendre à faire confiance au moteur que l’on utilise et c’est tout un apprentissage. Par la suite, en poussant plus loin, on s’aperçoit vite que Unity est beaucoup plus puissant qu’on ne l’espérait.
III. Le jeu▲
Pouvez-vous présenter « You Fix Their Phones »
Notre jeu s’appelle You Fix Their Phones, on a pris l’habitude de l’appeler YFTP. Prononcé à l’américaine ????
Dans notre jeu, tu es le gérant d'une échoppe de réparation de smartphones. Tu reçois des clients « virtuels » (c'est un jeu) qui te donnent des petites missions à faire et elles sont de plus en plus complexes.
L'idée c'est de se retrouver avec une interface style Android dans ton smartphone, ce qui permet de s’entraîner avec toutes ces interfaces sans faire de dégâts sur ton propre smartphone.
Et le jeu devient donc également une sorte de bac à sable.
Ce n'est pas un simulateur, ce n'est pas une plateforme d'apprentissage, c'est et ça restera un jeu, mais nous frôlons le « serious gaming » de si près qu'on peut constater cette petite pointe d’apprentissage.
Nous avons choisi de tourner autour de la caricature, tu pourras retrouver un Waterfox au lieu de Firefox, un Fazebook au lieu d'un Facebook, un Snoopchat, un Bellycrush etc.
Nous sommes restés un maximum grand public, pas de grosses vulgarités, pas de nudité.
Nous y avons mis un maximum de références autour de la Pop culture et de l'esprit geek, ce qui rend le jeu assez nostalgique, car sans faire dans le rétro, certaines mécaniques des mini jeux inclus dans You Fix Their Phones t’offrent des moments de nostalgie.
En quoi votre jeu se démarque-t-il des autres ?
Nous avons pas mal parcouru le Play Store et nous croyons réellement que notre jeu apporte une originalité. Une originalité qu’on a le plaisir de découvrir régulièrement dans les studios indépendants. Et comme on le dit si bien dans ce genre de situations : on vous invite à venir les découvrir ????.
Quand et comment avez-vous prévu la Release du jeu ?
Le jeu est prévu en Alpha-tests fermés. Pour y avoir accès, nous contactons aléatoirement des personnes dans notre mailing-list. C’est une façon simple pour nous de pouvoir trouver des testeurs tout en offrant la possibilité à ceux-ci d’obtenir une avant-première avant tous les autres.
Nous avons réalisé une bêta ouverte pour fin février avant de publier le jeu sur le Play Store.
Pouvez-vous nous raconter une anecdote sur la réalisation du jeu ?
Ha oui, j’en ai une belle !
Le jeu n’est pas du tout ce qu’il était prévu à l’origine ! Nous étions partis sur un jeu beaucoup plus orienté « Serious Game ». On s’amusait comme des petits fous à intégrer des fonctionnalités que l’on retrouve dans nos appareils. Nous avions même développé une version qui te permettait de jouer les missions dans différentes versions du téléphone. Imagine-toi te retrouver en Android 4 puis avec un Android 7 etc.
Puis, lors de nos premiers tests, nous nous étions demandé si nous voulions vraiment nous rapprocher de si près de la réalité. Nos testeurs étaient assez déboussolés par la ressemblance avec leur propre environnement. Après un bon débat, la réponse fut non. Alors nous l’avons sérieusement simplifié pour viser un public plus large. Et nous y avons intégré des mini jeux. Tu y retrouveras certains contenus plus réalistes et d’autres plus fun pour te détourner de ta mission.
IV. Projet▲
Comment vous organisez-vous ? Avez-vous mis en place des plates-formes pour la gestion du projet ?
Nous y avons pensé et nous en avons débattu. Et comme nous nous croisons presque tous les soirs sur le Discord, nous approchons la méthodologie Scrum. Une petite réunion rapide le soir et une grosse par semaine pour prévoir le sprint. Finalement, cette fréquence de rencontre a été très productive. Elle a néanmoins comme inconvénient de devoir se croiser très régulièrement sous peine d'être ralentis dans l'avancement du projet.
Utilisez-vous des outils de suivi de bogues, contrôle de version… ?
Nous voulions tester le « Collab » de Unity et nous l'avons fait. C'est vraiment sympathique et simple d'utilisation. Mais il a encore beaucoup à apprendre des autres systèmes de versionning et nous ne réitérerons plus l'expérience.
La perte de données a parfois été dérangeante bien que minime. Ils semblent avoir bien évolué de ce côté. Le manque de branches possibles est un réel problème.
D'un autre côté, les rollbacks sont extrêmement simplifiés et le passage d'un commit à un autre est rapide.
Pour le prochain projet, nous repartons sur Git et notre propre serveur.
Pour le suivi des bogues, nous le faisons via un Trello pour le moment. Nous n'avions pas encore étudié la question, mais nous allons y penser très prochainement.
Combien de temps passez-vous sur YFTP par semaine ?
C'est aléatoire et ça dépend des aléas de la vie. La femme, les enfants, les imprévus sont chronophages pour le projet. Mais le reste du temps, soit nous travaillons sur le projet, soit nous décidons de faire une soirée de repos en testant d'autres jeux qui nous intéressent. Nous aimons voir ce que les autres créent.
Hormis ces soirées spéciales, nous travaillons de 19H à 0h00 avec une pause d'environs 1h30 pour manger et nous détendre.
Ce qui nous fait une moyenne de 3h30 par soir fois 5 jours soit 17h30 par semaine en moyenne. Les week-ends compensent les semaines où nous n'avons pas beaucoup de temps, ou nous servent parfois à nous détendre.
Comment gérez-vous la distance géographique ?
Nous habitons à 15Km l’un de l’autre et pourtant nous ne nous voyons que quand nous en avons envie, ou que nous voulons sortir manger un morceau. Le plus clair de notre temps nous étions sur Discord. Depuis peu, nous sommes passés en vidéoconférence. On trouve cela beaucoup plus plaisant avec les expressions faciales.
Et de toute dernière minute, depuis ce soir (et depuis 1H déjà), nous avons décidé de nous exprimer uniquement en Anglais. Pour améliorer notre maîtrise de la langue. C'est une expérience extrêmement amusante, difficile au début, mais on est déjà à l'aise. On sait bien qu'on est totalement fous, mais quelques heures par soir, avec de l'aide d'Internet, devraient faire de nous de bien meilleurs bilingues. Faut penser à s'amuser dans la vie. Sans difficulté, c'est monotone !
Comment gérez-vous les pertes de motivation ? (En avez-vous eu ?)
Les pertes de motivation sont fréquentes quand on crée un jeu. On le savait avant et on le sait toujours autant aujourd'hui. Cependant, nous nous sommes mis d'accord dès le début. Nous travaillons quand nous en avons envie avant tout. C'est pourquoi certains jours un seul des deux a bien avancé tandis que l'autre était plus en mode détente et réflexion.
Mais toujours présent sur discord, c'est super important. Sur une simple question de l'autre concernant le jeu, la motivation à résoudre le problème vous relance systématiquement. Et sans vous en rendre compte, vous êtes passé au-dessus de ces périodes néfastes.
Constat amusant, plus on avance et plus ces passages se raréfient et s'écourtent.
Combien pensez-vous avoir investi dans le projet ?
C'est une question difficile, car nous ne l'avons pas prévu dès le départ et nous n'avons tout simplement pas compté. Pour une simple raison, c'est que nous sommes passionnés et si nous ne l'avions pas dépensé dans ce projet, nous l'aurions dépensé dans d'autres projets ou dans des jeux.
Si nous devions estimer le coût réel du projet, en comptant un maximum de choses nous serions certainement à quelques milliers d'euros (chauffage, temps, électricité, logiciels, serveurs, etc.).
Quels sont vos conseils aux membres de Developpez.com s'ils souhaitent se lancer dans un tel projet ?
Ne faites cela que si vous êtes cinglé, ou trouvez la bonne personne pour y arriver et vous soutenir quand la motivation s'en va. Car c'est le pire moment, celui où des tas de projets s'arrêtent pour des raisons parfois ridicules.
N'ayez pas peur de vous lancer dans des projets pour vous tester vous-mêmes et tester vos collaborateurs.
Bruno : j'ai entrepris bon nombre de projets avant de tomber sur le collaborateur avec qui tout devient possible !
Et maintenant que nous nous sommes trouvés, on ne va pas s'arrêter là.
V. La programmation▲
Quels sont vos langages préférés ?
Bruno : le C++, assez bas level sans non plus l’être de trop. Il permet d’atteindre vite un résultat tout en profitant des performances. La gestion de l’allocation mémoire et le polymorphisme est ce que je préfère. J’aime le C# pour sa facilité d’utilisation et ses nombreuses bibliothèques permettant une interaction rapide et aisée avec l’environnement Microsoft.
Pour le web, j’aime les langages interprétés comme le PHP pour sa facilité de mise en place et sa vitesse d’exécution lors des tests.
Tom : il n’existe pas encore ou du moins je ne crois pas… j’aimerais qu’un jour je puisse développer une idée à partir de l’idée et pas d’un schéma logique, je parle d’un niveau cérébral.
Sinon pour rester un peu plus terre à terre, je dirais que le C++ est certainement le langage qui me plaît le plus et certains langages assembleurs. Le C# n’est qu’un outil pour moi qui peut me simplifier la vie, quoique… c’est vite dit.
V-A. Unity▲
Utilisez-vous des modules/plugins/ressources trouvés sur le Store ?
Oui nous utilisons « Native Share for Android & Ios ».
Que pensez-vous des évolutions de Unity et les nouveaux outils intégrés au moteur ?
Unity c'est la vie, c'est merveilleux. Depuis la fin 2018, nous trouvons que leurs mises à jour s'améliorent autant au niveau de l'interface (la création de préfab en drag & drop) que des outils comme les Tilemap.
Nous savons qu'il nous reste encore énormément de choses à apprendre sur Unity, plus nous avançons et plus nous en découvrons. Tom a optimisé le temps de chargement de 20 sec à environ 4 secs après ses recherches, grâce à la documentation qui est juste époustouflante et toujours mise à jour à chaque patch. Et on sait qu'on peut encore faire mieux.
Mais dès le projet terminé, pendant qu'on corrige des bogues, nous prévoyons un petit temps de formation pour aller encore plus loin. Car Unity est un moteur très complexe qui offre énormément de possibilités qu'il faut maîtriser avec le temps.
Suivez-vous les montées de version ?
Nous avons fini par franchir le pas et nous tâchons de les suivre, mais cela engendre pas mal de travail parfois. Mais c'est toujours un bon moment pour s'apercevoir qu'on s'est trompés et qu'on doit améliorer notre façon de travailler.
C'est difficile « d'update » continuellement, mais oui nous continuerons pour profiter des avantages de l'update, des corrections de bugs, des nouvelles possibilités. Mais surtout pour garder l'esprit ouvert et devenir meilleur chaque jour.
VI. KickStarter▲
Comment le jeu est-il financé ?
Sur nos fonds propres. Nous avons fait appel au financement participatif via Kickstarter, mais celui-ci, sans doute à cause de nos lacunes en communication, se trouve dans une impasse. On voulait réellement tenter l’expérience de porter notre projet à travers les étapes modernes liées aux studios indés.
Bien que le Kickstarter soit mal parti, nous apprécions énormément tout ce que nous apprenons pendant la campagne. Et cet apprentissage nous servira pour les futurs jeux, car oui, d’autres sont déjà prévus. C’est un très long voyage que de démarrer son studio indépendant et malgré toutes les difficultés, c’est un voyage merveilleux ou l’on ne cesse d’être surpris et d’apprendre.
Quelle est la raison de l'échec du KickStarter ?
Nous allons être francs et honnêtes, on voulait juste tester. On savait d'avance que les jeux sur téléphone sont rarement financés. Nous avons vu beaucoup de projets non financés et ceux qui l'étaient n'ont parfois jamais été publiés. Nous n'avions certainement pas suffisamment de compétences pour mener à bien ce Kickstarter. Mais l'expérience nous intéressait et nous ne regrettons rien. C'est une expérience très enrichissante.
Que feriez-vous si c'était à refaire ?
Premièrement, nous commencerions par communiquer dès le début du jeu. Pour se faire connaître avec le temps et pour répartir la charge de travail sur le temps.
Le referiez-vous ?
Oui, ne serait-ce que pour l'expérience et tout ce que nous avons appris sur comment vendre notre projet. Nous ne le ferons plus pour un jeu Android c'est sûr. Mais nous serions beaucoup plus tentés de lancer la conception d'un jeu PC, de communiquer sur son évolution et de voir ensuite si des gens sont prêts à nous suivre.
VII. Developpez.com▲
Que pensez-vous de Developpez.com ?
C'est un site que nous fréquentons déjà depuis plusieurs années. Surtout en lecture quand on y pense. Baffror est parfois active sur le tchat quand il pense à s'y connecter. Ce que nous apprécions le plus est de pouvoir parler et échanger avec des gens expérimentés qui nous évitent souvent de nous lancer dans des concepts voués à l'échec.
Est-ce que le site vous a aidés dans la réalisation de votre jeu ?
Les tutoriels sur Unity sont une très bonne base de connaissances. Nous avons ensuite fait nos expériences pour choisir ce qui nous convenait le mieux et nous nous sommes lancés.
Bruno aime participer au week-end jeux vidéo organisé sur le site. Il a fait la 7e et 8e édition.
Bruno : je compte bien faire les suivantes, mes vacances sont toujours prêtes pour ce week-end. Le côté zen et sans déplacement, j'adore. On y apprend des tas de choses en suivant les créations des autres ! C'est toujours un super moment à partager. J'ai raté la fin de la 8e édition à cause d'imprévus (enfants malades). Mais je compte bien me rattraper sur la 9e édition !
À force de faire des petits jeux, j'ai décidé de sauter le pas d'un jeu complet avec sa promo, ce qui nous amène ici avec une belle expérience à raconter.
Quelles sont les choses à améliorer sur Developpez.com et notamment, dans les ressources de la rubrique 2D/3D/Jeux
Notre plus gros problème est que le site est juste énorme. C'est comme se retrouver face à une bibliothèque considérable et se sentir un peu perdu. S'il fallait améliorer un point, nous dirions sans hésiter le moteur de recherche. Mais est-ce vraiment nécessaire ? Car nous utilisons Google pour rechercher sur le site et les résultats répondent souvent à nos attentes.
Un petit coup de site:developpez.com Week-end Jeux vidéo et hop nous trouvons tout de suite ce que nous cherchons.