J'aime beaucoup l'idée des notes de musiques qui s’accordent bien avec la musique derrière franchement chapeau ! Le concept est un classique mais bien exécuté.
Play game
The Noon Invasion's itch.io pageResults
Criteria | Rank | Score* | Raw Score |
Respect du thème | #39 | 4.391 | 4.391 |
Overall | #62 | 3.833 | 3.833 |
Direction artistique | #74 | 3.783 | 3.783 |
Gameplay | #90 | 3.326 | 3.326 |
Ranked from 46 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.
Comments
C'est très joli ! J'aime beaucoup le fait d'avoir intégré un tir horizontal "en cas d'urgence" ha ha !
Bravo pour ton jeu !
Ce petit coté jazzy trop bien ! J'aime bien tout, de la musique a la DA. Aussi bonne idée les balles horizontal ;)
Très propre, la gestion du son est un gros plus et ça fait plaisir de voir quelque chose qui se concentre là dessus au milieu des autres jeux de jam! Y'a probablement quelque chose à faire en développant le concept un peu plus loin en le transformant en jeu de rythme.
Très cool, bravo!
J'ai essayé à plusieurs reprises d'introduire des mécaniques liées au rythme, mais au final aucune ne s'est avéré vraiment plaisante. Du coup même si le jeu se construit autour de sa musique, celle-ci n'est finalement pas au service des mécaniques. Elle existe pour elle-même on va dire. Merci du retour !
Moi qui me croyais malin avec mes 3 pauvres FX qui font un arpège de ré mineur ascendant descendant, je doit avouer que je suis bluffé par la richesse de tes FX ainsi que de leurs harmonie avec la track. Je me suis même surpris a concevoir ton jeu comme un instrument pour finalement dézinguer les aliens dans le tempo.
Excellent
Les balles du joueur sont beaucoup trop fines, elles arrêtent pas de passer entre les ennemis. Le jeu est un peu trop simple et répétitif mais la DA est vraiment sympa !
Déjà que le jeu est super facile, si en plus il fallait que les tirs dégagent tout sur leur passage ! :P
Ouais, je suis pas parvenu à équilibrer convenablement le game-design. J'ai quelques idées en tête, mais elles viendront dans une update bien plus tard (faut déjà que je termine ce que j'ai sur la planche). Je suis au moins content que la DA fasse mouche !
Itooh après toutes les Jam faites avec toi je t'admire ! La gestion du son est toujours ultra présente dans tes productions et ce jeu s'articule parfaitement autour de ça c'est impressionnant. Le jeu est chiadé et on a l'impression de se balader sur un piano d'une certaine manière. Vraiment un grand bravo c'est un super jeu !
Très sympathique !! J'ai beaucoup aimé ce que ce jeu apportait au niveau du son par rapport aux autres du même genre !
Bravo ! :D
Excellent !
On est dans le thème, c'est très bien executé, les tirs horizontaux sont plus durs à faire mais ça reste accessibles. La DA est style space invaders, c'est réussi.
Mention spécial pour la musique et l'effet musical en destruction de monstre, ça rend super bien :) Si tu passes par ici, je veux bien un p'tit commentaire sur comment ça se met en place (si c'est galère / simple à faire ) et si t'as un tuto sur le sujet qui te semble bien.
Merci encore et Bravo pour ce joli jeu, félicitations !
Très content que tu me poses la question !^^ Ce genre de système n'est pas si dur à implémenter, pour peu qu'on ait les bons outils.
Ce jeu a été réalisé en JS (enfin, en Typescript, mais c'est du web quoi) avec Phaser. J'utilise les outils suivants pour gérer la musique dynamiquement :
- tonal, une librairie de théorie musicale. En soi elle n'est pas indispensable : c'est simplement un raccourci pour ne pas avoir à lister les notes manuellement. Par exemple j'ai juste à faire un Scale("C dorian") pour obtenir ['C', 'D', 'Eb', 'F', 'G', 'A', 'Bb']. Un utilitaire pratique donc, mais facilement faisable à la main sinon.
- ToneJS, une riche série d'outils pour manipuler le son et la musique en JS. Plus spécifiquement, j'utilise dans ce jeu son Sampler, qui permet à partir de quelques fichiers sonores de jouer n'importe quel note, en configurant l'attack et la release. Par exemple pour le son des vaisseaux, je n'ai que cinq fichiers qui correspondent à C3, F3, C4, F4 et C5. Le Sampler de ToneJS est capable de calculer les notes entre en choisissant le fichier le plus proche et en modifiant correctement son pitch.
- OrchestreJS enfin, une librairie créée par moi-même, qui permet de synchroniser plusieurs pistes musicales. Je l'utilise à la fois pour jouer les deux boucles sonores en rythme (basse et batterie), et à la fois pour actionner tous les événements sur le rythme, et ainsi déterminer dans quelle mesure on se trouve (pour savoir sur quels accords jouer).
Ces outils se manient assez bien. Leur doc est plutôt clair (en tout cas pour OrchestreJS, j'ai fait de mon mieux pour que ce soit simple), et il y a pas mal d'exemples. Il faut finalement pas beaucoup de mathématique pour jouer des notes sur un mode (genre do majeur), et activer ou désactiver plusieurs couches musicales. Et faire des animations sur le tempo, une fois qu'on a de quoi le faire y a moyen de faire des trucs stylés !
Je donne ici les outils pour le web, mais il y en a aussi pour d'autres moteurs de jeu. Pour Godot, j'ai créé un plugin Simple Sampler qui permet de faire ce que j'ai décrit pour le Sampler de ToneJS (créer un synthé virtuel à partir de quelques fichiers sonores), et j'utilise parfois le plugin Mixing Desk pour gérer des boucles sonores dynamiquement (même s'il est un peu bancal imho). Unity je m'y connais moins bien, mais je crois qu'il existe aussi des extensions qui font ces jobs (je conseille de chercher avec les mots clés "Sampler" et "Dynamic Music").
Pour coder ces outils à la main, c'est un peu plus compliqué, mais ça se fait aussi ! OrchestreJS et Simple Sampler sont tous les deux open-source. C'est un peu de lecture, mais ce ne sont pas des projets trop gros, donc il y a moyen d'apprendre dessus. Mais d'une manière générale, voici les formules mathématiques clés que j'utilise :
// Pour calculer la durée d'un temps (beat) en seconde : beat_length = 60 / BPM // Cela permet, sur un update à la frame, de vérifier à quel temps on en est dans la piste sonore. if (t >= last_beat + beat_length): // do something last_beat = last_beat + beat_length
// Pour calculer le pitch à appliquer sur un fichier sonore afin d'obtenir la note voulue, en ayant // n_from : note du fichier musical, exprimée en entier (ex 0 pour C4, 1 pour C#4, etc) // n_target: note que l'on veut jouer pitch = 2^((note_target - n_from) / 12)
Et en ressources complémentaires, il y a ce long article sur la création de musique générative avec la Web Audio API (mais qui parle aussi beaucoup de théorie musicale, de mathématique, minimalisme, etc).
Voilà, j'espère que tout ça aidera ! ^^' Merci beaucoup pour ce feedback. Je suis très content que la musique procédurale du jeu plaise !
Sympa comme jeu, c'est propre et bien réalisé.
Je ne sais pas si c'est que chez moi mais les tirs sur les côtés demandent un petit délai, ça les rend difficile à timer. Mais ça offre un X2 donc c'est probablement voulu.
Bravo beau travail !
Petit jeu musical vraiment très sympa, c'est vraiment agréable à jouer et à l'oreille (j'aime vraiment beaucoup cette ligne de basse)!
Sous Mozilla j'ai eu des problèmes de crash, où le jeu plantait et me forçait à reload la page, j'ai test le jeu sous chrome et j'ai pas eu le problème par contre.
Mais ça m'aura pas empêché de passer un bon moment globalement à test le jeu, c'était vraiment très chouette :)
Haha, j'avais écrit cette ligne de basse un peu à l'arrache en tout début de jam, en comptant la remplacer à la fin. Finalement j'ai jamais eu le temps. :P Mais faut croire qu'elle se défend pas si mal au final.
Bon, le jeu arrive à tourner sur un navigateur, c'est ça de gagné ! C'est toujours le risque avec les jeux web… Merci pour ton retour en tout cas !
Très simpa. Je sais pas si vous allez continuer le jeu par la suite mais avec différent ennemie et des bonus en plus le jeu peu vite devenir méga fun
J'y réfléchis oui ! Il y aura déjà une update sur le son que je vais faire après la jam (pour ajuster certains SFX et corriger quelques couacs). Après ça je compte faire une amélioration de game-design, avec des mécaniques pour mieux équilibrer (actuellement c'est un peu pété en vrai, on peux survivre à l'infini sans problème), et quelques nouveaux ennemis, peut-être même un boss et niveaux de difficulté ! Mais avant ça je vais finir mon projet en cours, qui est quasi terminé. Donc ce sera probablement pour début 2022. Cool que tu ais aimé en tout cas !
Wow c'est impressionnant la generation de musique procédural, il y a des moments où ça rend un peu bizarre mais dans l'ensemble ça sonne bien.
C'est très plaisant à jouer et à écouter, bien joué !
Leave a comment
Log in with itch.io to leave a comment.