Too Many Cubes

Too Many Cubes est un puzzle game développé par Alain Shakour ; développeur à Strasbourg. Afin de m'apporter plus de précision, il n'a pas hésité à entrer dans les détails de son jeu et de son parcours. Voici son interview ainsi que mon test de Too Many Cubes.

Bonjour Alain !

  • Que fais-tu dans la vie et quelles sont tes motivations?
Je développe des jeux parce que le jeu vidéo est ma passion depuis des années. Tout simplement. J'ai dû jouer à au moins un millier de jeu dans ma vie. Ces dernières années, j'ai passé plus de temps à étudier leur histoire et à en développer qu'à jouer en fait. Là je lis "The Untold History of Japanese Game Developer" qui est plutôt intéressant. Je conseille vivement les livres "Gunpei Yokoi : Vie & Philosophie du Dieu des jouets Nintendo" et "Masters of Doom" au passage. 

Ah oui, développer, c'est aussi mon métier que j'exerce depuis 5 ans en tant qu'ingénieur dans la banque, le médical, l'ERP et maintenant à l'université dans une équipe de Data Mining en tant qu'ingénieur. En parallèle, j'ai aussi enseigné l'informatique à des étudiants d'IUT (informatique). Du coup, j'ai aucun soucis sur la partie code.
  • Quels jeux as-tu déjà créé?
Too Many Cubes est le troisième jeu sur lequel j'ai vraiment passé du temps à développer. Le premier jeu était un shoot sur des partitions musicales réalisé en flash que j'ai montré à personne. Le second était un mix entre un MGS et un Pacman, en 3d, dans une forêt, avec des courses poursuites. Ce jeu devait être un proto pour un projet de Resident Evil généré de manière procédurale. C'était trop ambitieux et les réactions étaient mitigées de la part de mes proches.
  • Comment s'est passé le développement de Too Many Cubes?
Avec Too Many Cubes, je voulais faire un jeu simple que je puisse améliorer au fur et à mesure et finir de développer en 3 mois. Too Many Cubes a été développé de février à avril. Le premier prototype jouable a été fait en 1 semaine. Dès la deuxième semaine, j'ai montré le jeu autour de moi. Ensuite quotidiennement j'ai affiné le jeu et rajouter/modifier des niveaux. Le désavantage de cette approche est qu'à force, les gens autour de moi connaissaient le jeu par coeur et il était difficile du coup de tester l'accessibilité, l'interface graphique et la courbe de difficulté des niveaux. Trois défauts toujours présents dans le jeu. Par contre, avoir du feedback quotidien, c'était sacrément intéressant et motivant. En effet, si au début je le montrais à un collègue de bureau entre midi et 14h, très vite, j'ai eu une dizaine de collègues qui me demandaient d'essayer les nouveaux niveaux à chaque pause café.

Lors du développement de Too Many Cubes, le jeu s'appelait "Cubi". Le nom étant trop générique, il a été changé par "Too Many Cubes" afin d'illustrer le fait qu'il faille se débarrasser de cubes. Les cubes ont été choisis pour bien montrer les mouvements et collisions possibles. La 3d a été choisie pour pouvoir faire des animations entre les niveaux facilement. Une autre idée d'animation était de faire apparaître le niveau suivant sur le dernier cube que le joueur a mis dans une arrivée mais cela demandait un mouvement de caméra rapide que le joueur n'aurait pas forcément apprécié.

Le jeu a été conçu comme un cahier de mots croisés qu'on achète en gare avant de partir en vacances pour ne pas s'ennuyer dans les transports. En effet, je voulais un jeu qui puisse se jouer dans le métro ou le train, sans connexion internet et sans avoir besoin de fixer l'écran sans arrêt (pour éviter les maux de tête en transport). L'idée était également de pouvoir "feuilleter" le jeu, c'est à dire de pouvoir changer de niveau comme on le souhaite sans se soucier d'une progression, d'où le menu de sélection de niveau accessible à tout moment. J'ai ajouté puis verrouillé le dernier niveau et le dernier mode de jeu suite aux feedbacks demandant "un but à atteindre".

Test #5 - Too Many Cubes - Alain Shakour


  • Quelle a été ta principale inspiration?
Quand j'étais plus jeune, je jouais à Goof Troop (la bande à dingo) sur Super Nintendo. C'était une production Capcom de Shinji Mikami. Le jeu était un Zelda:ALTTP-like avec une composante coopération. Outre les phases d'affrontements d'ennemis et collecte d'objets, le jeu incluait quelques puzzles. La grande majorité des puzzles consistait à pousser des cubes (en 2d isométrique) à l'aide des 2 personnages.

Depuis ce jeu, je n'ai jamais retrouvé un concept similaire niveau puzzle. Je ne cherchais pas en tant que développeur mais en tant que joueur. Les plus proches que j'ai trouvé sont Kickle Cubicle, Pengo et Don't Pull mais dans tous ces jeux, on se sert des cubes pour tuer des ennemis, pas pour résoudre un puzzle. Il y a aussi plein de puzzles où on bouge des cubes de case en case (des Sokoban-like) mais c'est bien différent.
  • Avec cette inspiration, comment as-tu voulu adapter ton jeu? 
Vu que je voulais un jeu rapide à faire, je me suis amusé à créer une version "portable" du jeu. J'ai enlevé l'aspect "personnage pousse des blocs" pour simplifier les contrôles pour android. Cela a eu pour effet de changer le gameplay de base. Dans les jeux que j'ai cité, on incarne toujours un personnage. Pour pousser un cube, il faut être du côté opposé à la direction où on veut que le cube aille. Un cube dans un coin est donc condamné. Cependant, si on n'a pas de personnage, il n'y a pas de justification qui ferait qu'on ne puisse pas sortir un cube d'un coin.
Cela peut paraitre être un détail, mais:
1) Tous les niveaux de Too Many Cubes et Goof Troop sont du coup incompatibles à la base, ce qui rend TMC unique.  
2) On peut sans arrêt se déplacer dans TMC. Le piège principal est donc quand on se retrouve dans une boucle infinie.
  • Quels sont les concepts de Too Many Cubes?
Les concepts de base sont:
Structure:
- Le jeu possède 40 niveaux.
- 39 niveaux sont débloqués dès le début, le 40e est débloqué quand on finit les 39 autres.
- Un mode supplémentaire est déblocable quand les 40 niveaux ont été finis. Dans ce mode, les blocs deviennent invisibles au bout de quelques secondes.
Jeu:
- Les cubes de couleurs différentes s'alternent (seul concept repris de Goof troop où tous les mouvements s'alternent).
- Le niveau fini quand toutes les arrivées ont été remplies.
- Les cubes de couleurs identiques bougent simultanément.
- Une arrivée avec un compteur demande un nombre N de cubes.
- Un cube avec un compteur a une limite N de mouvements.
J'ai souhaité rester simple sur les concepts afin de les exploiter correctement. Il est simple de se laisser emporter et de rendre le jeu confus pour le joueur (et c'est aussi trop long à développer).
  • Parle-moi un peu de la conception des niveaux
Les deux principes de bases étaient:
- Ne pas demander au joueur de faire des mouvements juste pour faire des mouvements. Par ex: sortir un cube d'un endroit en faisant des zig zag.

- Le nombre de coups nécessaires doit être réduit afin de pouvoir visualiser la solution. C'est une règle à laquelle j'ai dérogé dans les derniers niveaux que j'ai conçu (23, 26, 34 et 40) pour apporter un peu de variété.

Tous les niveaux à l'exception du niveau 4 ont été faits dans un éditeur de niveaux que j'ai crée pour l'occasion. J'ai conçu mon premier niveau (le 4) en entrant des coordonnées au hasard dans mon jeu pour tester le chargement de niveaux. Le niveau m'a bien plu, je l'ai gardé. J'ai conçu 37 niveaux, ma femme en a fait 3 (7,13,27). Après le niveau 4, j'ai conçu les niveaux 5,12,16,21 et 37 en partant de niveaux de Goof Troop et en les adaptant à mon gameplay pour tester le moteur du jeu. Puis je suis soit:
- Parti d'une forme géométrique (comme un coeur niveau 29).
- Parti d'un cas que je trouvais difficile à traiter dans un algorithme de résolution de niveaux
En effet, un fil rouge durant le développement a été de trouver comment faire un algorithme de résolution des puzzles. C'est loin d'être évident.
  • Y aura t'il une suite à Too Many Cubes?
Je développe depuis 3 semaines une suite à Too Many Cubes. Le but de cette version est:
- Passer en 2D intégrale. La 3D n'apportait pas grand chose.
- Avoir des niveaux de tailles variables.
- Inclure au moins tous les niveaux de TMC
- Introduire de nouvelles mécaniques: bloc pouvant être poussé par les cubes, flèche au sol forçant le changement de direction de cubes/blocs, téléporteurs etc. (aucune n'est définitive là)
- Créer une sélection de niveaux par monde. Avoir un thème et une mécanique de gameplay propre par monde afin de rajouter de la personnalité au jeu.
- Permettre à tout le monde de créer des niveaux et défier leurs amis à la pause café.
- Faire du marketing sur ce jeu. Contrairement à TMC qui était plus pour tester le concept et apprendre Unity3D, TMC2 vise un public large.
Les 3 premiers objectifs sont remplis. Je fais des tests de nouveaux mécanismes là.
  • Au delà de tes projets personnels, qu'as-tu aidé à développer ?
Pour les autres projets que j'ai fait récemment, j'ai enchaîné:
- BBQ Game Jam (Septembre) (24h d'affilée)
- Fantastic Game Jam (Septembre) (48h)
- Hacking Industry Camp (Octobre) (50h)
- Startup Weekend (Novembre) (50h)

Pour la BBQ Game Jam à Metz, le thème était "Saucisse" (original je sais). J'ai mené une équipe composée d'anciens collègues pour faire un jeu en 3D multijoueur où chacun incarne une saucisse qui doit éjecter les autres pour être la dernière sur le BBQ. On peut prendre des objets (bouteille de ketchup, piment, pilule) pour avoir des capacités temporaires supplémentaires (tirer des projectiles, courir plus vite, grandir). Il y a parfois une fourchette qu'il faut éviter qui passe. Le jeu était rigolo à jouer à 4 et a bien plu aux autres jammeurs mais comme il est impossible de jouer sans 4 manettes, je n'en parle pas trop. Il est dispo sur itch.io et le lien est sur mon site (www.alainshakour.com).

La Fantastic Game Jam, j'y suis allé seul. C'était 2 semaines après le BBQ Game Jam donc aucun membre de mon équipe voulait enchaîner directement. Mes autres contacts n'étaient pas intéressés. J'y suis allé quand même. Là j'ai rencontré un autre "Alain" qui était venu comme spectateur et qui nous a soutenu tout le week-end. Puis des étudiants d'Epitech super sympa que j'ai revu aux autres évènements et enfin Antoine Schmoll (et toi). D'autres personnes sont venus se rajouter et on a fini à 9. C'était cool comme expérience. Travailler avec un pro comme Antoine et intégrer son travail me changeait de développer des "cubes". La plus grande satisfaction du projet, hormis toutes les rencontres, c'était le let's play inattendu par l'australien BonusTank. Cela fait plaisir de voir quelqu'un à l'autre bout du monde qui s'intéresse à un jeu auquel j'ai participé.

Ensuite j'ai enchainé sur le HIS où j'ai travaillé sur un serious game "Chasse O Gaspi" avec les équipes de Method in The Madness, Gilles de Almédia, Séverino qui avait participé à Nightmer dans la Fantastic GJ et un étudiant, Bryan. Pareil, c'était très intéressant de voir comment ils travaillent ; et discuter avec eux. Ils ont continué le projet en signant avec Es Energies. Perso, je n'ai pas continué, ma situation étant trop compliquée dans l'immédiat.

Site d'Alain Shakour


Goof Troop - Resolvendo Todos os Puzzles