Page 1 of 1

I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Wed Dec 28, 2022 12:40 am
by acidiclight
Hey y'all. I realize that title is really strange but I'll explain.

Sonic Riders has an Air mechanic in it. Essentially you can only ride your extreme gear if you have air in the tank. Run out of air and you're stuck on foot and at a major speed disadvantage. Performing tricks, collecting air from power-ups, riding turbulence, all of that gives you more air. Dashing, drifting, and just riding your gear decreases air. When you're about to run out of air, the game repeatedly plays a sound to warn you.

I was a bit bored and decided to essentially turn this mechanic into a programming tool, and I made it open-source at https://github.com/acidiclight/Airflow.

It's based on an existing Visual Studio Code extension called Codeflow, which controls your system volume based on how you type. I used to use that extension but I no longer use VS Code and can therefore no longer use Codeflow.

Both Codeflow and Airflow work essentially the same. They monitor your keypresses, and if you type a lot of letters really quickly, it assumes you're in a flow state and turns up the volume for you. If you stop typing or start DELETING text, it assumes you've screwed up and punishes you by turning the music down.

The main differences with Airflow are:
  • It controls a single program's audio (I let it control Spotify), and not your main system volume. That way, I can still use screen readersand things like that which is important given I'm blind.
  • Airflow has a much smoother volume adjustment routine, Codeflow was really jarring if you set the volume range really high.
  • Airflow monitors keypresses system-wide, so you can use it for anything - not just writing code. Banging out emails, writing forum posts like this one, chatting on Discord, writing a school essay, whatever. It'll work.
  • Airflow turns up the music when you reach 100% air, and only turns it down when you run out.
It's very early and I don't expect anyone else to actually use this, I just thought it was really cool to program. It even plays Sonic Riders sounds when setting it up, and also plays the same in-game sound for when you're running out of air. Thanks to the Extreme Gear Labs Discord server for helping me get the sound effects, by the way.

I kinda wonder what ways I could improve it, and I wonder if it'd be possible to port it to Linux and macOS. It's a .NET application but it relies on Windows/Win32 APIs to work, so it won't run on other OSes even under Wine (my friend tested it, it crashes).

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Wed Dec 28, 2022 12:53 am
by MattKC
Moved to Software (I think it's too interesting to be in offtopic haha)

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Wed Dec 28, 2022 12:54 am
by acidiclight
Welp... that's an achievement... having my favorite YouTuber think my thrown-together C# app is interesting :)

Gives me more of a reason to maintain it.

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Wed Dec 28, 2022 12:55 am
by MattKC
I've never heard of music volume being adjusted by typing speed, but I can see the appeal. I can imagine it makes you feel like you're in a movie, with the soundtrack responding to the action?

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Wed Dec 28, 2022 1:00 am
by acidiclight
Sort of. Programming is an art form to me, as pretentious as this may sound... I love the feeling of flow I get when I'm just that right amount of focused. Often times I like to put on 3-hour-long Monstercat mixes and actually try to type to the rhythm of the music.

I also like watching those Knife Party live sets with the continuous music mixed with a lightshow. Always wanted to fill my room up with lots of audio-reactive RGB lighting and have an entire lightshow around me as I write code. Most people would find that distracting but for me it makes the more mundane parts of programming a lot more fun. That's a bit too expensive though, so having my audio react to how I type is the next best thing. Plus the Sonic Riders sound helps snap me out of those fits of analysis paralysis you get into when you spend so much time thinking about how to write something and never end up getting anything done, it's like a subtle alarm that says "hey buddy, start programming, you're wasting your time, if ya don't start coding now I'm just gonna turn down your music"

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Thu Dec 29, 2022 7:08 pm
by acidiclight
Update: I may or may not have added Jet the Hawk voice clips that play when you either gain 100% air or lose all of it.

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Fri Dec 30, 2022 3:53 pm
by Mikmoomamimocki
Y’know what’d be awesome but also annoying to do? Making an adaptive music track thingy or whatever. Untitled Goose Game has a really great system where the music actually changes to fit what’s happening.

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Fri Dec 30, 2022 4:19 pm
by acidiclight
Mikmoomamimocki wrote: Fri Dec 30, 2022 3:53 pm Y’know what’d be awesome but also annoying to do? Making an adaptive music track thingy or whatever. Untitled Goose Game has a really great system where the music actually changes to fit what’s happening.
The challenge there is adaptive music needs to be specifically designed. Separate instrument tracks for example. Won't work here since the type of music I wanna listen to changes day by day.

Re: I turned Sonic Riders' air mechanic into a productivity tool...

Posted: Sun Jan 08, 2023 3:54 am
by Loomeh
If you wanna hear that breakcore you gotta EARN it, maggot!