logoalt Hacker News

Hostile Volume – A game about adjusting volume with intentionally bad UI

70 pointsby Velocifyeryesterday at 6:39 PM52 commentsview on HN

Comments

susamyesterday at 11:50 PM

I often write small userscripts to neutralise hostile or annoying UI patterns. I played the 'Hostile Volume' game for a while. Nice game! After a while, I wondered: if this were a real hostile website, could I write a userscript to make each level happy? Here is the script:

  // ==UserScript==
  // @name  Hostile Volume Winner
  // @match https://hostilevolume.com/
  // ==/UserScript==
  (function () {
    const s = document.createElement('script')
    s.textContent = `
      (function () {
        function visible (id) {
          return !document.getElementById(id).classList.contains('hidden')
        }
        function win () {
          if (visible('victory-screen')) return
          if (visible('instructions-modal')) {
            document.getElementById('start-btn').click()
            setTimeout(win, 2000)
            return
          }
          setTimeout(function () {
            document.getElementById('l13-age-input').value = '01011970'
            window.cancelAnimationFrame(levels[currentLevelIndex].frame)
          }, 100)
          window.setVolume(25)
          setTimeout(win, 3500)
        }
        win()
      })()
    `
    document.body.appendChild(s)
  })()
If you don't have a userscript manager, you can just copy the script between the two backticks and paste it to the web browser's Developer Tools console.
jonathanlydallyesterday at 8:13 PM

My favourite bad volume control was in Real Player around 1997 where changing the volume in the application actually changed the global volume of Windows.

show 4 replies
graypeggyesterday at 7:43 PM

This is not an issue at all, but when ever I come across something like it, I like to poke at the frontend in dev tools a bit. You can pass most levels with `setVolume(25)` in the web console, since that function is just sitting in the document object. That feels like the ultimate volume UI puzzle heh.

show 1 reply
pimlottcyesterday at 10:21 PM

This works for almost all levels:

   for (i = 0; i < 50; i++) { document.querySelector("#l3-down").click(); }
apublicfrogyesterday at 10:42 PM

Great fun, well done to the horrible person who made it. Apparently my RSS reader leaves the browswr live in the background, as the audio is still playing. Horrible to do on a mobile device. Worst level by far was 17.

Retr0idyesterday at 7:11 PM

There are two types of volume slider I've encountered thus far, "too logarithmic", and "not logarithmic enough".

show 2 replies
xnxyesterday at 7:42 PM

The worst volume control UI in the world (2017): https://news.ycombinator.com/item?id=27819384

jupinyesterday at 7:06 PM

Laughed out loud but gave up at level 5

TheLNLyesterday at 7:40 PM

Finished the game. It was fun to play. I got stuck for a while on the opposite level where the display doesn't update, but was able to go through the rest just fine

show 1 reply
jimkleiberyesterday at 7:22 PM

Got an error on Level 17, just a heads up.

Love the game, btw.

show 3 replies
wild_pointeryesterday at 9:24 PM

Hilarious, some of them are easy with the keyboard

mdx97yesterday at 10:28 PM

Level 27 is not possible.

dsmason321yesterday at 7:14 PM

Level 17 is NOT bugged. The slider is backward and the volume nonresponsive. Its a planned feature.

show 1 reply
burgeroneyesterday at 10:22 PM

Prwtty neat. Unfortunately wasn't able to solve the UI desync one :/

show 1 reply
Findecanoryesterday at 7:03 PM

I have encountered the rate-limited spinner (#8) and the self-resizing slider (#5) in real desktop UIs.

#3 are almost like Google Maps' zooming buttons. They jump around more, making you click on the map itself or swap in/out.

Pipe94yesterday at 8:49 PM

somehow i'm amazed and annoyed at the same time

LoganDarkyesterday at 9:42 PM

These mostly seem to be variations of "takes a long time / is tedious" rather than "annoying/fiddly / takes skill / is creatively bad", which is a little disappointing.

DrSiemeryesterday at 7:50 PM

Plenty of annoyance in here for sure. Looks like 17 cannot be finished on mobile though. Switching to desktop view resets progress.

show 3 replies
danjlyesterday at 8:31 PM

...and, of course, there's really no need for a volume control in any app, since there's already a system volume...

show 1 reply
tobryesterday at 7:21 PM

Meanwhile, iPhone is still using this design https://xkcd.com/1884/

Daminoupyesterday at 7:28 PM

[dead]

anwar_nairiyesterday at 7:56 PM

[flagged]

show 1 reply