Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Does Anyone Here Actually Know How To Make A Rhythm Game?

A topic by chantolove created Jul 15, 2021 Views: 366 Replies: 3
Viewing posts 1 to 4

I've been trying on and off to make a rhythm game of my own for ages, to no avail. I've looked everywhere on the internet, but it seems there's just no documentation for a good starting point. The furthest I got was a working prototype that could hit falling notes and track a combo, but progress ground to a halt when I couldn't figure out how to actually spawn the notes to the music. I even bought a plugin-sort-of-thing that was supposed to make timing things to music really easy, and it didn't work at all. (It was like two dollars so that's no big loss but still.)

Does anyone here have experience? Can y'all point me in the direction of a good starting point re: learning what I need to know? I'm planning to work in GMS2, but I'll pick up any free-to-use engine I have to tbh. I know pretty much exactly what I want to do for the jam, but I just can't put it together. Scouts honor I'll only read and practice before the jam starts, and won't actually work ahead.


if i cant figure it out im gonna say fuck it and submit some clone hero charts with custom video or whatever just so i can say i did something with my life this month

(+1)

I do have a way to make rhythm games in GMS2, it's hard to explain with all code, if you want I can send some example code if you'd like but if so just make sure it's not just stealing, maybe just examine the code and make it in your own way or just credit me.

The basic idea is to use linear interpolation with the place the song is at and where the place you want to either effect something at the beginning or end of that thing's lifetime (represented through variables for these three main values)

Jam Host (1 edit) (+1)

Like Spirit Lamp said linear interpolation is the best way to determine a notes position. I'm working on a rhythm game tutorial for Unity to be uploaded before the jam, so by the time its out you may be able to take some concepts and convert the code to GML. I do agree that explaining everything programmatically is difficult so here are some visuals.



For linear interpolation you would do something like

Note_Position_Y = Lerp(NoteSpawnY, noteTapY, timeSinceSpawned / noteTime);

I hope this helps

Jam Host

Here you go, the video is pretty lengthy but you can just sift through it since there's timestamps. The most important thing for your case would be the SongManager.cs class, Lane.cs class, and maybe Note.cs class. Hopefully you can take those concepts and put them in whatever engine you will be using for this jam :D