Turning Horrible Browser Controls Into A Game

With all of the various keyboards, mouses (mice?), and other human interface devices (HID) available for our computers, there’s no possible way for developers to anticipate every type of input for every piece of software they build. Most of the time everything will work fine as long as some basic standards are kept, both from the hardware and software sides, but that’s not always the case. [Losso] noticed a truly terrible volume control method when visiting certain websites while also using a USB volume knob, and used this quirk to build a Breakout game with it.

It turns out his volume control knob would interact simultaneously with certain video players’ built-in volume control and the system volume for the operating system, leading to a number of undesirable conditions. However, the fact that this control is built in to certain browsers in the first place led to this being the foundation for the Breakout clone [Losso] is calling KNOB-OUT. Unlike volume buttons on something like a multimedia keyboard, the USB volume control knob can be configured much more easily to account for acceleration, making it more faithful to the original arcade version of the game. The game itself is coded in JavaScript with the source code available right in the browser.

If you’d like to play [Losso]’s game here’s a direct link to it although sometimes small web-based projects like these tend to experience some slowdown when they first get posted here. And, if you’re looking for some other games to play in a browser like it’s the mid-00s again, we’re fans of this project which brings the unofficial Zelda game Zelda Classic to our screens.

7 thoughts on “Turning Horrible Browser Controls Into A Game

    1. Even worse is when the embedded maps frame will detect a scroll event when the mouse is over it, and instead of zooming it will pop up an overlay saying “hold CRTL+SCROLL to zoom in/out”.
      Sounds like a helpful fix, right? NOPE! The frame will still capture the scroll event and prevent the rest of the page from scrolling, only now instead of zooming the map it will just do nothing instead! It doesn’t solve the scroll hijacking problem, it just adds a new problem to the existing problem and removes any semblance of actual function!

    2. Hah! Those are all “nice” frustating user experiences, too! Might be an idea to do an endless scrolling maze game where you have to avoid scroll-event grabbing iframes with yor mouse, hmmm… :)

Leave a Reply

Your email address will not be published. Required fields are marked *

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.