Hacker News Re-Imagined

Show HN: Looptap – A minimal game to waste your time

  • 1236 points
  • 7 days ago

  • @vasanthv
  • Created a post

Show HN: Looptap – A minimal game to waste your time


@butz 7 days

Replying to @vasanthv 🎙

Feature request: show where the ball was on game over screen, because now it quickly resets to start position. Maybe show its "ghost" in different color or just outline.

Reply


@mxmilkiib 7 days

Replying to @vasanthv 🎙

https://i.imgur.com/liFqyj3.png felt like i might have clicked too early, but it's showing in on game over

Reply


@danbolt 7 days

Replying to @vasanthv 🎙

I feel like the variation in placement and length helps. Or, it pushes towards the "randomness" that makes some skinner boxes more sticky than others.

Reply


@TomGullen 7 days

Replying to @vasanthv 🎙

Right click resets it, otherwise good game!

Reply


@rayrag 7 days

Replying to @vasanthv 🎙

Request: add info about how many loops game had. less loops should add bonus points or more loops should have penalty points.

Otherwise fun game :)

Reply


@deeviant 7 days

Replying to @vasanthv 🎙

Some sort of measurement or score for more hits per unit time would be cool. Overall, fun little game, nice job.

Reply


@michaelhoffman 7 days

Replying to @vasanthv 🎙

Without a "share" button that creates an emoji summary of your results, this will never get as viral as Wordle

Reply


@laumars 7 days

Replying to @vasanthv 🎙

Good game though there seems to be a bug where if you tap twice quickly, not even a doubt tap but just relatively quickly, it doesn’t register the second tap.

Safari, iOS (whatever the latest update is)

Reply


@thom 7 days

Replying to @vasanthv 🎙

It seems possible to click when the circle intersects the shape, but still lose. I guess it's based on the centre of the circle, but feels a little frustrating to me.

Reply


@djfdat 7 days

Replying to @vasanthv 🎙

This is a great little time waster!

Couple of recommendations, in no particular order:

1. Keep the ball moving even after you die. Instead of pressing start, the user will just click when the ball is back inside the colored area. 2. You can click anywhere to restart, but you have to click the play button to restart. You should allow the user to just click anywhere to restart. 3. When you fail, show where the ball was. 4. As for collision detection, I think you should err on being lenient and count success if the bounds of the circle overlap, rather than the center or entirely. I think this is also due to the rounded linecaps for the arc potentially not counting as part of the valid area. 5. Show where the next arc will be. This is more of a game design thing. If you do this, quick fade out of the old and fade in on the new would look nice.

I understand that this was probably a small little one off project, and that there's always more you can iterate on, so I just want to say nice job in putting out a fun little time waster!

Reply


@mesozoic 7 days

Replying to @vasanthv 🎙

I think the score should go down when the ball makes a full revolution. Encourage more same revolution taping

Reply


@Shadonototra 7 days

Replying to @vasanthv 🎙

it's basically a clone of what is already playable in the link they provide

literally the same

what is the point other than pure 100% identical copy

no shame?

https://coogyloop.com/

Reply


@AtNightWeCode 7 days

Replying to @vasanthv 🎙

When you come to the white beans it becomes sooo difficult.

Reply


@papa2034 7 days

Replying to @vasanthv 🎙

Nice game!

Reply


@jason_slack 4 days

Replying to @vasanthv 🎙

This was really stimulating for my ADHD. Hyperfocusing my high score was 1300.

Make this an iOS game!

Does anyone have any interesting iOS recommendations for ADHD stmming?

Reply


@ericblues 5 days

Replying to @vasanthv 🎙

Cool! Reminds me of defusing mines in a game I used to play. Can't remember the name.

Reply


@tyingq 7 days

Replying to @vasanthv 🎙

For autoplay, paste this into the console and click the play button.

  setInterval(function() {loopTapApp.arc=[0,359];loopTapApp.tap(document.createEvent('Event'))},5);

Reply


@IAmNotAFix 7 days

Replying to @vasanthv 🎙

The ryhtm should accelerate each N clicks so that the game eventually ends. Otherwise no matter how many points you get by clicking fast it's possible to accumulate the same amount by playing it safe.

Reply


@robbiejs 7 days

Replying to @vasanthv 🎙

Cool game, works nicely on my android phone.

One thing that you could improve is add user-select:none to the page. Quickly tapping the document did select the counter text and opened a google mini popup, distracting from the game.

Well done!

Reply


@leetrout 7 days

Replying to @vasanthv 🎙

Feature request:

Start the game by pressing "space" as well.

Reply


@dheera 7 days

Replying to @vasanthv 🎙

``` loopTapApp.startPlay(); setInterval(() => { if(loopTapApp.getBallAngle() > loopTapApp.arc[0] && loopTapApp.getBallAngle() < loopTapApp.arc[1]) { loopTapApp.tap({preventDefault: ()=>{}, stopPropagation: ()=>{}}); } }, 50); ```

Reply


@throwawayHN378 5 days

Replying to @vasanthv 🎙

Cool. I haven’t read the comments but I did find a possible bug. If I successfully click in the painted area the generation of the next painted area may land on top of my current “cursor”. I wasn’t quick enough to click it and the game didn’t fail me ( it let the cursor go around the perimeter again at which time I clicked when the cursor was over the painted area and was awarded a point ). Might not necessarily be a bug but it adds unnecessary ambiguity to the game.

Reply


@dcow 7 days

Replying to @vasanthv 🎙

There might be a bug. I “died” but the ball appears in the live zone https://i.imgur.com/XJdKgDL.png. Happened to my partner too.

Reply


@franze 7 days

Replying to @vasanthv 🎙

just repaired http://lalo.li/ddd/ as prevent default changed behaviour on event listeners some time ago (from default active to passive, needed to set them to passive)

Reply


@murtio 7 days

Replying to @vasanthv 🎙

Nice minimal game!

Reply


@nathas 7 days

Replying to @vasanthv 🎙

One of my favorite things to do with these neat little games is to build something that plays them for me by just pasting stuff into the browser JS console.

https://pastebin.com/aTYuaNVS

At a score of 1,619 the ball is moving so fast it no longer works! I switched to a new tab (hoping that the event loop would be sent to the background/context switch/whatever) and ta-da - it misclicked. High score of 1,637.

Reply


@analog31 7 days

Replying to @vasanthv 🎙

Ouch, eyestrain. Not really a complaint, but a limitation of my own physiology.

Reply


@philosopher1234 7 days

Replying to @vasanthv 🎙

Hypnotic

Reply


@VishwaGauravIn 7 days

Replying to @vasanthv 🎙

Nice one

Reply


@skurtcastle 7 days

Replying to @vasanthv 🎙

Not a bad time waster. Simple. Could be used for office fun as well.

"Martha. If you beat my score on 1st attempt, I'll do those TPS reports." lol.

Reply


@DaveSapien 7 days

Replying to @vasanthv 🎙

This is brilliant!!

I made a game quite similar that took me years to complete. And I feel this is much more immediately engaging, could just be me being hyper critical of my own work...but its always amazing to see how other designers approach similar ideas.

Either way I love it!!!!

Reply


@bap 7 days

Replying to @vasanthv 🎙

Fantastic.

Feature Request: I'd love to see the ratio of successful points to number of times the ball traverses the circle. I think others have already said things about scoring mechanisms for faster taps, I wonder if there could be one around a sweet spot on the line (earlier is better? Later?!)

Well done, you've made me late for a meeting!

Reply


@tinyprojects 7 days

Replying to @vasanthv 🎙

This is great! You've got something here

Reply


@avierax 4 days

Replying to @vasanthv 🎙

Great, free dopamine for my ADHD!

Reply


@ChemiSpan 7 days

Replying to @vasanthv 🎙

WOW FANTASTIC GAME HOW DID YOU MAKE IT

Reply


@popfastful 7 days

Replying to @vasanthv 🎙

you can also try the minimal game to waste your time https://www.snapfeel.com/share/post/?id=116

Reply


@jckahn 7 days

Replying to @vasanthv 🎙

Awesome work! I strongly recommend monetizing this. If this was a native iOS/Android app, you could show an interstitial ad after each Game Over and offer a small in-app purchase to remove all ads. It worked for 2048, and I believe it would work here as well!

Addictive drop-dead simplicity is repeatable recipe for success in games. I'm working towards this same strategy in my own projects, but I think you've really nailed it here!

EDIT: Whoops, I just noticed that this was based off such an app. Still, great work on the implementation!

Reply


@cousin_it 7 days

Replying to @vasanthv 🎙

Great stuff, got 315 on third try. I made a game in the same vein sometime ago: https://vladimirslepnev.itch.io/zigzag

One thing to note about this kind of endless runner games is the scoring system. Everyone uses the system "get as much points as possible in one run, each run starts from zero". But that forces people to slog through the early parts each time, and also makes them more likely to stop playing after an especially good run. I thought about this for a while, and came up with the idea that a better system would dock points for mistakes. The run would continue, a misclick would just give you a short breather and set you back fifty points or so.

I made some prototypes like that and the effect was striking: you stick with one run for a long time, falling into a kind of meditative state, never wanting to stop. Eventually you find an equilibrium where wins and losses balance out, and keep playing there, at the best of your ability. If I ever release an endless runner again, it will use that system.

Reply


@jordiburgos 7 days

Replying to @vasanthv 🎙

This game is hooking!

Reply


@1-6 7 days

Replying to @vasanthv 🎙

Thanks, you've just wasted valuable engineering time of multiple people. The actual cost of this game is much more than what we realize.

Reply


@Aachen 7 days

Replying to @vasanthv 🎙

Nice! My grandma enjoys mobile games but is, uh, let's say she's not a pro just yet. This is something she can do! Let's see if she'll enjoy it :)

Reply


@marxdev3 7 days

Replying to @vasanthv 🎙

Cool game, but the collision detection needs to work better. Currently can lose if partially touching, does not seem intuitive.

Reply


@ericskiff 7 days

Replying to @vasanthv 🎙

Fun! 171 on my second round.

Reply


@xavhan 7 days

Replying to @vasanthv 🎙

it remind me of Super Hexagon :D

You could change the dot rotation direction on each success ...

Reply


@ms123 7 days

Replying to @vasanthv 🎙



@nashashmi 7 days

Replying to @vasanthv 🎙

Keep this one advancing. Great job with maintaining simplicity. Lots of forks will come your way

Reply


@unobatbayar 7 days

Replying to @vasanthv 🎙

How do you come up with this stuff? I need answers.

Reply


@jugg1es 7 days

Replying to @vasanthv 🎙

A cool variation would be to show the bar that's up next in a faint outline.

Reply


@everyone 7 days

Replying to @vasanthv 🎙

There should be a score multiplier that builds up by getting points in quick succession. That would add a risk/reward element to it.

Reply


@marcos100 7 days

Replying to @vasanthv 🎙

Played twice. Immediately knew that I should stop.

Great game!

Reply


@MrOrelliOReilly 7 days

Replying to @vasanthv 🎙

It'd be more fun if you somehow got "bonus points" for reducing the time between clicks. I kept playing it safe trying to time the ball but it kind of felt like cheating!

Reply


@edoceo 7 days

Replying to @vasanthv 🎙

Sometimes it increases the hit counter by one, others by two - why?

Reply


@codevandal 7 days

Replying to @vasanthv 🎙

Nice! Reminds me of the Cyclone / "stop the light" arcade games. If anyone wants to play a similar game on iOS, I made one about 7 years ago called hyper•loop https://apps.apple.com/us/app/hyper-loop/id944029806

Reply


@hamasho 7 days

Replying to @vasanthv 🎙

Fantastic!

I feel really superior when I succeed in clicking immediately after the previous click. I clicked on the target arc and was relieved. But I immediately realize the next arc is right there, or I'm even on the arc now! Then adrenaline kicks in, and I click again immediately! Don't think, feel! And it continues because I haven't missed it.

Like I was a top F1 driver...

Reply


@snihalani 7 days

Replying to @vasanthv 🎙

so good

Reply


@misterbwong 7 days

Replying to @vasanthv 🎙

Cool game! I know you're trying to keep it simple but a couple suggestions that might help and won't increase game complexity too much:

  1. Add a share button to share your score
  2. Add a timer component (can be hidden).  It will add urgency.
  3. Speed up the ball as time goes on (maybe i haven't gotten far enough for this to happen...?)
  4. If you're adding more points for "same rotation hit", make it clear that it's doing that and don't just add more points to the score (shake the number, throw some fireworks, or something).  Your focus is on the ball not the score so you won't even notice the number went up a little bit more than usual until you lose.

Reply


@johnmorrison 7 days

Replying to @vasanthv 🎙

I love it, accurate description

Reply


@ZeroOne_010101 7 days

Replying to @vasanthv 🎙

maybe rotate the colors?

Reply


@andy_ppp 7 days

Replying to @vasanthv 🎙

Should get marginally faster every 10 clicks...

Reply


@hnburnsy 7 days

Replying to @vasanthv 🎙

Great game! Suggestion, penalize each rotation that does not have a click.

Reply


@xbar 7 days

Replying to @vasanthv 🎙

Best: 1

Reply


@ZeroOne_010101 7 days

Replying to @vasanthv 🎙

Great lil game! The color is just gray after 550 taps, maybe rotate the colors?

Reply


@johncs 7 days

Replying to @vasanthv 🎙

Oh hey, it’s one of Fable’s mini games! Very cool to see

Reply


@mattfrommars 7 days

Replying to @vasanthv 🎙

Reminds me a hamster game from back in the gay - the hamster would go in a loop.

Reply


@mcnichol 7 days

Replying to @vasanthv 🎙

So well done.

I love these styles of development where it can be thrown together quickly but complete the full spectrum of ux, creativity, and hitting that sweet spot that felt satisfying to play.

Seriously well done!

Reply


@typon 7 days

Replying to @vasanthv 🎙

This is very similar to the popular game "Pop the lock"

Reply


@RankingMember 7 days

Replying to @vasanthv 🎙

Simple addictive games like this always remind me of that ball-in-a-cup game that everyone got addicted to in that "The Game" episode of "Star Trek: The Next Generation".

Reply


@alex_smart 7 days

Replying to @vasanthv 🎙

Because it had to be done:

    let robot = function () {
        const ballAngle = loopTapApp.getBallAngle();
        const arc = loopTapApp.arc;
        if (ballAngle + 6 > arc[0] && ballAngle - 6 < arc[1]) {
            window.dispatchEvent(new Event('mousedown'));
        }
    }

    var timer = setInterval(robot, 10);

Reply


@GrifMD 7 days

Replying to @vasanthv 🎙

This was delightful, and now I will get no work done today.

Reply


@bentcorner 7 days

Replying to @vasanthv 🎙

Love the mechanic where the more quickly you click the next one the more points you get.

There should be a timed mode to encourage rapid clicking (i.e., score the most points within 30s or 1min).

Reply


@wnolens 7 days

Replying to @vasanthv 🎙

I love this. Added to my home screen.

Reply


@zanethomas 7 days

Replying to @vasanthv 🎙

Couldn't add my score because twitter doesn't like what I have to say.

Reply


@nope96 7 days

Replying to @vasanthv 🎙

This reminds me of this cat toy - the circle with a ball in it (or at least it made me feel like a cat for a minute)

https://m.media-amazon.com/images/I/617M1m5N-aL._AC_SS450_.j...

Reply


@scrozier 7 days

Replying to @vasanthv 🎙

"Thanks."

Reply


@catskul2 7 days

Replying to @vasanthv 🎙

Missed opportunity to name it "ball tap".

Reply


@charleshan 7 days

Replying to @vasanthv 🎙

This is well made! Easy to understand, challenging, and a hint of variable reward.

Reply


@atum47 7 days

Replying to @vasanthv 🎙

Simple yet addictive

Reply


@kpmcc 7 days

Replying to @vasanthv 🎙

Good game, clever concept, appreciate the simplicity.

Reply


About Us

site design / logo © 2022 Box Piper