Magazine High tech

Créer des musiques pour la Nintendo NES

Publié le 22 janvier 2018 par Pierre Martin @cyborgjeff

Fin de l’année dernière, j’avais repris contact avec Lazycow, créateur de jeux-vidéo indépendants avec lequel j’ai travaillé ces dernières années au projet Powerglove sur Commodore 64 et Amiga 500. Il se lançait dans un nouveau défi, la réalisation d’un jeu destiné à la console NES de Nintendo. Une mission plus complexe puisque jusqu’ici je maitrisais assez bien les caractérises sonores des machines de Commodore, là où je devais un peu plus apprendre de ce que la première console à renommé mondiale de Big N était capable. Cette dernière dispose de 5 canaux sonores contre 3 pour le Commodore 64.

FamiTracker - Cyborg Jeff - Wolfing ZeroFamiTracker – Cyborg Jeff – Wolfing Zero

Cependant là où il est possible de définir à chaque fréquence ce que l’on veut utiliser comme modulateur d’ondes sur le Commodore, la NES fonctionne avec des générateurs fixes. 2 ondes de type ‘Pulse’ qui produisent des sons “Chiptunes” très spécifiques, un générateur d’ondes Triangle efficaces pour des séquences de basses et enfin un générateur de bruits plutôt orienté à la création des percussions ou effets spéciaux. Un 5° canal dit DPCM permet par exemple d’utiliser des samples, mais dans notre projet je n’y avais pas accès. Je pense que ce dernier pouvait être utilisé via des compétences plus poussées des cartouches. Bref, de nos jours pour composer des musiques pour la NES, l’outil le mieux adapté est donc FamiTracker un outil dans l’esprit des SoundTrackers que j’ai l’habitude d’utiliser depuis près de 25 ans.

Mon premier essai était plutôt concluant avec une séquence à l’ambiance “dans les tuyaux” un peu groovy. Cependant j’allais vite être confronté à une série de limitation technique à prendre en compte que l’outil FamiTracker, lui ne s’impose pas. Des limitations propres aux outils de développement sur NES.

Se limiter aux 4 premiers canaux (2 PULSE, 1 TRIANGLE, 1 NOISE)
– Les notes doivent être comprises entre C-1 et D-6 mais je peux utiliser le Note Cut – Seules les enveloppes de Volume, Arpeggio, and Pitch sequences ont supportés – Tous les instruments doivent avoir une enveloppe de volume assignée – Je peux créer un loop dans ma séquence, mais pas une fin de loop. – 64 instruments max – La colonne de Volume n’est pas supportée (Ce qui implique au besoin de créer des instruments à l’enveloppe de volume différente) – Le Tempo est initialisé par la variable globale, mais on pourrait le faire varier avec la commande Fxx (1..21) – On ne peut pas utiliser la commande Bxx pour faire un LOOP sans intro, la commande n’accepte pas de cibler un pattern suivant – D00 peut être utiliser pour couper un patterns prématurément – Seul les effets listés peuvent être utilisé – On peut créer jusqu’à 17 SubTune qui partagent les mêmes instruments et données.

Créer des musiques pour la Nintendo NES
Créer des musiques pour la Nintendo NES
Sur base de ces restrictions supplémentaires, j’allais devoir un peu jongler, notamment en dupliquant certains instruments avec une enveloppe de volume différente, me permettant alors au besoin de créer un echo ou delay. Il est intéressant de noter également qu’un instrument peut-être assigné à l’un des trois générateurs d’onde, créant alors un son différent.

Pendant que la programmation du gameplay avance du coté de Matt, moi au bout de quelques heures d’analyse et de maitrise je commencais alors à avoir une idée de ce que je devrais pouvoir arriver à faire avec FamiTracker… puis au hasard de ma playliste dans la voiture, je retombe sur un morceau de guitare ‘Nightmare’ composé par mon frère Pype en 2004. Assez rapidement, je me dis qu’il y a une bonne base là dedans pour en faire un morceau sur NES…. Le résultat se décline assez bien avec un petit coté épique Game of Thrones … et qui peut même se mouler à la sauce Kirby.

Créer des musiques pour la Nintendo NES
Création d’instrument sous FamiTracker

Bref, avec ce thème j’ai de quoi mettre en place une identité pour le futur Wolfing Zero avec son petit personnage féminin qui a la capacité de se transformer en loup. Graphiquement, cela semble se diriger dans un graphisme à la Castlevania, titre de Konami bien connu de la NES. Mais j’ai encore quelques mélodies à ajouter à mon projet. Sans vouloir trop être influencé en allant écouter à nouveaux des musiques de jeux sur NES, j’ai tout de même des références de comment les choses devraient sonner : Castlevania ‘Vampire Killer’  , Tortue Ninja ‘Overworld’ , Final Fantasy ‘Battle Theme’ , Legend of Zelda ‘Overworld’ , Contra/Probotector ‘Jungle’ ,…

Créer des musiques pour la Nintendo NES
2018 débutant, j’avais encore un peu avancé lorsque me vint assis dans ma voiture, une mélodie géniale en tête… Vite mon smartphone, j’enregistre et je la travaille le soir dans FamiTracker… Ah oui, ça donne vraiment bien ! Je suis resté un moment à me demander si cela ressemblait à quelque chose de connus… Ma fois, ce sont les 2 premières notes de Chip’n Dale : p… Tant mieux, j’ai mon thème épique ! Rendez-vous dans quelques temps pour la finalisation du jeu !

Wolfing Zero - Boss
Wolfing Zero – Boss

Et sinon pour les bruitages du jeu ?

Le concept est similaires, un deuxième fichier FamiTracker qui sera décomposé en “Subtune” pour chaque effet. A l’inverse des restrictions imposées pour créer les musiques, on peut ici utiliser la palette d’effet spéciaux de FamiTracker. Il faudra cependant couper toutes les canaux et insérer un C00 à la fin de chaque SubTune. Pensez cependant à utiliser des instruments à un volume élevé pour bien se démarquer des musiques en cours de jeu.

Tags : Commodore 64, Cyborg Jeff, Legend of Zelda, Lazycow, développement, Final Fantasy, NES, Powerglove

Retour à La Une de Logo Paperblog

A propos de l’auteur


Pierre Martin 1696 partages Voir son profil
Voir son blog

Magazines