Étiquette : Cursor

  • BLOMIX

    BLOMIX

    Je viens de terminer la « migration » du petit jeu BLOX que j’avais prototypé avec Grok il y a un peu plus d’un an. Vous pouvez le télécharger (si vous êtes sur iOS) sur l’Apple Store, en cherchant BLOMIX (il est gratuit bien sûr).

    Règles

    L’univers de BLOMIX c’est celui du Tetris, des Columns et autres CandyCrush : un jeu de match-5, où il s’agit, dans une grille de jeu, de former des chaînes de 5 « blox » (blocks) de couleurs pour les faire disparaître. Tous les 10 blox lancés, une ligne de blox aléatoires vient perturber vos efforts pour bien ranger les choses par couleur. Et vous avez, en plus, une chance sur 8 de vous récupérer une « brix » (bricks) qui est une sorte de caillasse avec un numéro dessus et qui est plus dure à faire disparaître. Quand la grille est pleine de blox et de brix, vous avez perdu. Le score dépend bien sûr du nombre de chaînes que vous avez pu réaliser, de leur taille, des enchaînements, du nombre de fois où vous avez pu revider des colonnes, etc.

    Modes de jeu

    Il y a deux modes pour ce jeu, avec deux classements différents :

    • un mode solo, plutôt zen, où on a le temps que l’on veut pour placer le prochain blox. Le classement pour ce mode de jeu est simplement le classement des meilleurs scores
    • une mode « Player vs Player » où, tous les 50 points marqués, on envoie une ligne de blox à l’autre joueur, un peu à l’instar des parties de Tetris PvsP sur GameBoy (c’était l’inspiration). Le classement pour ce mode est une sorte de système Elo, comme aux échecs, qui ajuste votre classement de départ (800) au fur et à mesure des matchs. Plus l’écart de points entre les joueurs est important, plus la variation de points sera forte.

    Design d’expérience : paramètres

    J’ai eu à coeur de créer un jeu avec une ambiance très immersive malgré sa simplicité, et j’ai donc pris du temps pour chercher des sons sympas. Vous verrez que chaque évènement du jeu est associé à un son particulier. Par ailleurs, j’avais conçu une palette de couleur que je trouvais agréable et lisible. Les premiers retours des utilisateurs étaient formels : les couleurs manquaient de lisibilité (ce qui est assez logique, car personne ne perçoit les couleurs de la même manière). J’ai donc ajouté plusieurs palettes de couleur et la possibilité de créer, dans le jeu, la sienne propre. De même, on peut équilibrer les sons entre eux, et choisir parmi 4 polices différentes en termes de style & lisibilité. Cela permet de facilement créer une ambiance visuelle à son goût.

    Process

    Je ne peux pas parler de ce petit jeu sans donner un éclairage sur le processus de création. Grâce à Max, j’ai découvert la puissance de Cursor.com (que j’ai fait travaillé avec Grok à certains moments pour ne pas bouffer tous mes tokens trop rapidement). C’est un outil qui utilise des LLM pour écrire du code, et pour mon projet dans la suite de dev d’Apple (Xcode), il sait aller travailler tout seul dans les fichiers, modifier / ajouter / supprimer du code, créer des fichiers, tester la logique, etc. Du coup l’expérience est vraiment agréable pour un non-codeur : on se concentre sur les fonctionnalités voulues dans l’app, et Cursor se démerde (en gros). Il ne reste plus qu’à compiler et à tester. Les outils d’iA sont vraiment en train de révolutionner beaucoup de choses, et c’est particulièrement vrai dans le domaine du code. J’avais une grande frustration lors de nos premiers jeux avec Max : je ne pouvais pas l’aider pour le code, qu’il maîtrise, et pas moi. C’est désormais une époque révolue, puisqu’un « novice » comme moi peut créer de toutes pièces une application déployée sur l’App Store. On ne réalise pas bien toutes les conséquences, à mon avis.

    Ressources

    Comme souvent, je me suis servi des incroyables ressources mises à disposition sur le web. J’espère n’oublier personne dans cette section de remerciements, car c’est vraiment un bonheur d’avoir autant de choses disponibles, utilisables et de qualité. Donc, dans le désordre, un très grand merci à toutes ces personnes et entreprises qui ont mis des ressources (payantes ou gratuites) à disposition des utilisateurs.

    • Code : Grok.com & Cursor.com, Github.com, et un grand merci à Max pour son aide pour la mise en place du projet et décoinçages ponctuels
    • Polices : sur le remarquable Google Fonts. Merci à :
      • Petr van Blokland pour Bitcount Grid Single
      • Google pour Google Sans
      • Toshi Omagari, Jennifer Daniel pour DynaPuff
      • JM Solé pour Alfa Slab One
    • Sons : Freesound.org, vocalremover.org/pitch, pitchchanger.io. Sur Freesound.org un grand merci pour leurs sons à HelloIJustWantSomeSounds, Cat-Fox_alex, NoiseCollector, rhodesmas, Anomaex, HenryRichard, Moutain_Man, Rvgerxini, Squirrel_404, collwyn, ConManVD, cherrysylv
    • Musique d’ambiance : « Puzzle Game 2 » par Eric Matyas Soundimage.org
    • Palette de couleur : Coolors.com — Tropical Sunset Vibes légèrement augmentée
    • beta-testing: merci à Gontman, flyingbearcub, stephies, paul_cglt, Napoleon1212, PilotePépère106, Lapluben

    Pour finir, un petit aperçu du jeu en action.