<aside> <img src="/icons/circle-alternate_gray.svg" alt="/icons/circle-alternate_gray.svg" width="40px" /> Voilà, j’ai démarré la programmation et la direction artistique du projet 😄 Je code et dessine en parallèle, dans le carnet-storyboard que j’ai évoqué dans l’article précédent. Cela me permet de tester des idées d’interactions rapidement, basées sur mes schémas. Le projet rentre dans une phase d’itération qui va me permettre, je l’espère, de trouver les bon réglages pour mon jeu.

</aside>

THE DISCS

J’ai trouvé le nom du jeu, ✨THE DISCS✨, qui portera donc naturellement sur… des cercles 😉 Il s’agira d’une combinaison de passages narratifs et de puzzles basés sur des déplacements de cercles. Le jeu se compose en une suites d’écrans dans lesquels les interactions portent sur la résolution de déplacement des cercles (par exemple, faire tourner les cercles dans le bon sens). Une fois la combinaison trouvée, on passe à l’écran suivant, jusqu’à tomber sur des passages narratifs animés. Toutes ces mécaniques de jeu sont à faire avec la manivelle de la console, bien sûr.

Voici quelques recherches graphiques sur l’écran d’accueil du jeu. Celui-ci évoque dès le départ l’idée des cercles et leurs déplacements.

Untitled.gif

Untitled2.gif

Untitled4.gif

Du schéma au puzzle

Le carnet dans lequel je dessine mes schémas et les séquences de jeu est mon outil le plus important actuellement. Il me sert principalement à tester des idées rapidement, en schématisant des concepts d’animation, d’interaction, de séquence… Il est un guide aussi pour la programmation car j’y écris aussi des annotations en plus des schémas, afin de poser des objectifs qui ne sont parfois pas compréhensibles avec les schémas seuls.

Double cliquez sur les photos pour les agrandir.

Double cliquez sur les photos pour les agrandir.

Je vais poursuivre le dessin des schémas pendant encore un moment, afin d’avoir suffisamment de matière pour développer l’ensemble du jeu (je vais devoir éliminer des idées qui ne fonctionneront pas de toute façon à la fin).

IMG_2513.JPEG

IMG_2512.JPEG

IMG_2514.JPEG

De nouveaux challenges en programmation

Au niveau de la programmation du jeu, je vais garder certains éléments que j’avais codé pour Rooms, mais bien sûr de nouveaux challenges m’attendant pour THE DISCS. Déjà, je vais garder le même système d’architecture de gestion des écrans (écran titre, gameplay, infos…) intitulé Roomy Playdate. Il convient parfaitement ici aussi et je le connais bien.

Déjà, j’ai commencé à utiliser l’Animator du SDK de la Playdate. Celui-ci permet de déplacer et d’animer des sprites à l’écran. Il est possible de définir des courbes d’animation, le temps de l’animation, un delay et autres paramètres.

Au niveau du code, cela donne ceci pour l’écran titre du jeu :

--animator en ligne pour le cercle 1
  local ls = geo.lineSegment.new(0, 70, 400, 70)--(x1, y1, x2, y2)
  local lsAnim = Animator.new(1700, ls, playdate.easingFunctions.inOutCubic, 1000)
  lsAnim.repeatCount = 60
  lsAnim.reverses = true
cercle1:setAnimator(lsAnim, true, true)

La vidéo de SquidGod sur le sujet m’a beaucoup aidé pour démarrer :