Youbeat
+ +2022
++ A while ago, I wanted to adapt arcade game Jubeat for home play, + using a device called a launchpad. So I bought one. It looks + like this: +
+ +
+
+ + Jubeat is a rhythm arcade game by Konami in their Bemani line. + It looks like this: +
+ +
+
+ + The grid of buttons are each separate note inputs, and the + screen above it actually extends below the buttons. The notes + for the beatmaps are shown beneath each button you need to + press. it looks pretty cool, but naturally it's hard to play at + home (ignoring that it's 'illegal' to play at home because + piracy, but like, who gives a fuck on that front). +
++ Now, with a bit of RGB magic, you can kinda get an approximation + of the inputs for Jubeat on a launchpad. So... why not do that? +
++ Thing is, it ended up pretty involved. Like projects tend to do. + First port of call was talking to the launchpad from my language + of choice, C#. The launchpad is controlled over MIDI, with + regular input messages used when you hit a button, and output + used to tell the launchpad what colours to light up. There's + also a few sysex messages for stuff like changing mode, how + quickly the LEDs pulse, etc. +
++ As I always do, I checked Nuget and found - well, nothing. So + then I searched github and found a perfect[ish] package + called launchpad-dot-net, from a user called iUltimateLP. + Unfortunately, it didn't support my model of launchpad, only + earlier ones, so before I could write the game, I had to rewrite + the library to support my launchpad. That's right, baby! It's a + project within a project! +
+
+