Back to News
Advertisement
Advertisement

⚑ Community Insights

Discussion Sentiment

86% Positive

Analyzed from 3928 words in the discussion.

Trending Topics

#game#fun#https#play#com#restart#maybe#script#orbit#gravity

Discussion (152 Comments)Read Original on HackerNews

iceberger2001β€’4 days ago
Hey HN, I built STARFLING, a simple hyper-casual space game you can play right in your browser.

You orbit a star with a ball. Tap anywhere to release and sling it through space. Catch the next star to lock in orbit and keep going. Miss and it's game over.

The whole thing is just one HTML file with vanilla JS, Canvas, and Web Audio. No frameworks, no build step. Loads in under 2 seconds on phone or desktop.

There's a combo system if you release quick, a skip bonus for jumping over stars, and it gets harder the longer you last. When you die you get a cool trail art picture of your whole run that you can share.

Audio is all generated on the fly and it has haptics too. Pretty satisfying once you get the timing down.

Play it here: https://playstarfling.com?utm_source=hn&utm_medium=showhn

Would love your thoughts on the feel, difficulty, and whether the trail art is fun or not.

Thanks!

Cort3zβ€’1 day ago
I really like it. Here is my 2 cent:

- the gravity is weird in my opinion. There is basically a gravity going down the screen. I would have expected there to be some "pull" towards the planets. I get why though, you try to prevent mega-long straight shots upward. Perhaps experiment with some drag, where the ball slows down over time. Or perhaps have the walls be gravity points, pulling the ball towards them.

- i would add a long- press to restart immediately, so restarting is faster.

hdjrudniβ€’1 day ago
Maybe add blackholes to prevent cheesing too hard. I found the downwards gravity unexpected too.
hn_throwaway_99β€’2 days ago
I liked this game a lot!

One thing I noticed is that I found the game to be pretty hard if I just tried to tap based on where I thought was a good "launching point". But then I realized I could use the dashed lines in the orbit circle as basically "arrows" pointing to where the ship would go if launched at that point in the orbit, and I instantly got much better if my strategy was (a) pick the dash in the orbit circle that points to the next planet, and (b) just then only focus on tapping when the ship hits that dash in the circle.

I think a "hard mode" would be to get rid of the dashes in the orbit circle and just make it a solid line.

ryandrakeβ€’1 day ago
I still can't figure it out. It just seems to randomly curve away from where I want it to go. It gets boring to lose every time, so I just gave up. Could use a difficulty setting.
hapidjusβ€’2 days ago
I did something similar, tried to click when the ship was at an 90 degree angle to the line connecting the planet to the next.
porterdeβ€’2 days ago
This comment instantly made me 10x better player
bhollanβ€’2 days ago
I cannot express to you how much fun this simple little game is! I'm really enjoying it!

If I got to work on this game for 90 seconds, I would move the "bonus text" down to the bottom. It gets in the way of tviewing the literal most important thing SO MUCH!!!

jonwinstanleyβ€’2 days ago
Really like this game. A few bits of feedback:

- Can you add a keyboard key that also launches, rather than always have to be a click - Can you make it so it restarts without having to click the play again button? Maybe use the same keyboard button as above? - When fail, why does the ship fall to the floor? Maybe a gentle curve away would be more "realistic" - Why is the bg squares? Maybe it should be more of a subtle space bg

Thanks for making it!

gregsadetskyβ€’2 days ago
+1 on keyboard to launch and restart!!
metalrainβ€’2 days ago
I noticed that gameplay speed depends on the window size. I'm assuming that larger canvas takes longer to render. It seems too fast at small window sizes and maybe too slow at 4K, not sure what is the intended speed.
bspammerβ€’2 days ago
This is a really nice little game. My feedback is that on mobile at least, the text that pops up often blocks vision of the ball, which is quite frustrating. I would move it down a bit
cheschireβ€’2 days ago
The "better than X%" of players seems way off. If I get zero, somehow still better than 32% of players? and 25 planets is >99% of players?

The dotted line starting wide and slowly shrinking to the real orbit is a great touch. It makes the quick/fast/blazing/insane moves harder and more satisfying when they work. The angles encourage skips frequently enough to feel good.

I think the only improvement I would make to the look is perhaps the background. I still think the cyberwave aesthetic works and isn't played out quite yet, especially on mobile. But maybe instead of a boring flat grid, some very faint parallax points moving across the background might work better to give the game a bit more depth.

The pause->restart flow is way faster than clicking the restart button at the bottom of the screen. If your intent is to capture the end of every game to advertise the upcoming mobile game, then you might want to capture that method of restart as well.

Great game, thanks!

Sharlinβ€’1 day ago
> and 25 planets is >99% of players?

That doesn't sound so strange because the presumably the majority of visitors are going to try once or twice and then carry on, and it's actually pretty difficult to get even 25 points in this game.

tuyiownβ€’2 days ago
It’s great but the animations when catching a new orbit (sparks and combo announcements) is making hard to follow the ball, I realized I missed many shots due to this after some games.
bjackmanβ€’2 days ago
Nice work! Really low frame rate on Firefox on Android (pixel 10), might be something worth checking.
nmstokerβ€’2 days ago
On a Pixel 10 Pro with Firefox it's not too bad but it's definitely a touch less responsive than on Chrome also on that same phone
aditoβ€’2 days ago
Thanks for making this, fun game, but the contrast is too low for my old eyes. I can't see the orbit most of the time. Maybe add options to make the orbit more visible?
circadianβ€’1 day ago
Lush, perfect to take my mind off existing for a few minutes. Always a strong sign of a winning concept. Kudos :)
oleleleβ€’1 day ago
Love this. Hit me up if you want a chill soundtrack for it, I can make something for free.
lossyrobβ€’1 day ago
This game is so fun, great job.
jonwinstanleyβ€’2 days ago
Oh, and it’s completely different on mobile. Game is slower and much easier to score well.

My feedback above was on desktop.

cushβ€’2 days ago
Love it! Thanks for sharing!
flkiwiβ€’1 day ago
There was an old flash game called, I think, curveball that was kind of like 3d perspective, 2d plane Pong. I could play that gave for so, so long and not get tired of it. This might end up being a replacement.

EDIT: Uh oh. I found it again. I'm screwed.

0x3fβ€’2 days ago
I would make restarting much much faster than it is now. That's the most annoying part and it breaks the satisfying chain completely for me. I miss and then have to watch it slowly fall, or struggle to find the reset button. And even if I hit the reset, I have to go through the menu.

At the very least, put the reset and play again buttons in the same spot, so I can just keep tapping/clicking there.

Super Meat Boy is how all games like this should be.

cachiusβ€’2 days ago
I nearly stopped playing because of this, before reaching 11. Just leave out the interstitial when clicking restart at the bottom.
akaBruceβ€’1 day ago
I'm not sure if it was added after your comment, but there's a restart button at the bottom center of the screen that you can hit while the ball is falling.
igraviousβ€’2 days ago
Tampermokey userscript -- <space> to launch and restart <esc> to give up

```javascript

   // ==UserScript==
   // @name         StarFling Spacebar
   // @namespace    https://playstarfling.com/
   // @version      2026-04-11
   // @description  Spacebar to launch and restart StarFling
   // @author       Claude Code
   // @match        https://playstarfling.com/*
   // @icon         https://www.google.com/s2/favicons?sz=64&domain=playstarfling.com
   // @grant        none
   // @run-at       document-idle
   // ==/UserScript==

   (function () {
     'use strict';

     document.addEventListener('keydown', function (e) {
       if (e.code === 'Escape') {
         e.preventDefault();
         // During play, click give-up to trigger the death/restart screen
         const giveup = document.getElementById('giveup-btn');
         if (giveup) giveup.click();
         return;
       }

       if (e.code !== 'Space') return;
       e.preventDefault();

       // If the game-over screen is visible, click retry
       const gameOver = document.getElementById('game-over');
       if (gameOver && !gameOver.classList.contains('hidden')) {
         const retry = document.getElementById('retry-btn');
         if (retry) retry.click();
         return;
       }

       // Otherwise simulate a tap on the canvas (start from menu / release orb)
       const canvas = document.getElementById('c');
       if (canvas) {
         canvas.dispatchEvent(new PointerEvent('pointerdown', {
           bubbles: true,
           clientX: window.innerWidth / 2,
           clientY: window.innerHeight / 2,
         }));
       }
     });
   })();
```
hirako2000β€’1 day ago
I got so annoyed I fixed the annoyances.

https://orbitup.surge.sh/

- FPS tweak to fix variable speed - Can bounce - Life points instead of sudden death - Levels - A few effects - Better adjusted difficulty

beAbUβ€’1 day ago
No attribution to the original game?
rustyhancockβ€’1 day ago
This thread is a perfect showcase of "You NEED a moat".
arczaβ€’1 day ago
Nice! Some ideas: Please can you remove the text that hides the main game view. This is the biggest annoyance on both games and slows you down a lot. Also the gravity / physics feels off. Orbit is too slow.
CyanLite2β€’1 day ago
you removed the "spacebar" functionality
Cort3zβ€’1 day ago
I would add long-press to restart
cpcallenβ€’2 days ago
I am completely confused about the orbital mechanics in this game. They seem completely broken; at any rate they do not work remotely like any other simulation I've played with (e.g. Gravitation or Kerbal Space Program). The bodies other than the first body appear to actively deflect the spacecraft away!
andaiβ€’2 days ago
You have elucidated a real gap in the marketplace: physically accurate mindless tapping orbital mechanics sandbox.
oeziβ€’2 days ago
19:50 Put codex and claude (thinking high) to work in parallel to see who could come up with the better physically accurate mindless tapping orbital mechanics sandbox.

20:10 Both codex and claude finish pretty much at the same time, but my kids say claude's version is more fun.

20:50 Claude runs out of its 5h session limit while finetuning some things, while Codex has 80% left (!).

https://coezbek.github.io/orbital-tap/

RobotToasterβ€’2 days ago
Unfortunately it doesn't let you skip planets.
progvalβ€’2 days ago
It's still pretty far physically accurate because there is infinite acceleration the moment a ship reaches the target orbit.
throwthrowuknowβ€’2 days ago
I like this version of the game more, keep at it!
47282847β€’1 day ago
Nice! For my taste you could remove the TAP OR PRESS bar after some time, maybe after score 3 or so including restarts.
love2readβ€’2 days ago
This version is better than OP’s
TeMPOraLβ€’2 days ago
It's a gap, but not due to lack of trying.

I made https://github.com/TeMPOraL/cloze-call a little over 16 years ago, and this itself was inspired by something then at least that much old.

Screenshot: https://jacek.zlydach.pl/old-blog/download/projects/ClozeCal...

Wonder if I can turn this into browser-playable version with just LLMs.

EDIT: Put Claude Code on the task (reason for choice: Claude Desktop lets me just throw it at a folder with unzipped bundle of sources and assets I found laying around my blog archive).

EDIT2: Holy shit it worked. Will upload it somewhere soon.

EDIT3: Here it is, in its full 800x600, 30 FPS cap glory: https://temporal.github.io/ClozeCall-Web/

The process I used was, have CC run over the original sources and create this document:

https://github.com/TeMPOraL/ClozeCall-Web/blob/main/design.m...

Then after verifying it matches what I remembered and clarifying some decisions (section 4 and 5), just told it to make a static client-side no-build-step no-webshit-frameworks game deployable to github.io, and it did it in a single shot (+ a second small request to add a fix to transparency of some assets). Personally, I'm impressed at how well it went, what a nice highlight of the weekend for me.

TeMPOraLβ€’2 days ago
Past my edit window, so - a modernized port true to the spirit, but with some QoL updates, more performant and works half-decently on mobile:

https://temporal.github.io/ClozeCall-Web/index-ng.html

ddejohnβ€’1 day ago
when I first read "orbital slingshot" in the title I thought it was a game about doing gravity assists, which I think would be much more interesting and fun
FranchuFranchuβ€’2 days ago
There's a 2014 game that is just that. Lim Rocket: slingshot around planets while also avoiding crashing.

https://dan-ball.jp/en/m/pc_lim/

wafflemakerβ€’2 days ago
Not really. Flight of Nova fills that gap, and I think I know how I'm going to spend this afternoon now.
wolframhempelβ€’2 days ago
I don't think it has any expectation of being an astrophysics simulation. I mean, if the "spaceship" misses, it falls towards the "floor"...
Applejinxβ€’2 days ago
Yup. I figured it out and went from zero to five immediately when I figured out it wasn't in the least orbital, but rather it was Undertale: you had to click when it was exactly tangent to the target, and then hitting anywhere within the target area was a win.

That's also when I lost all interest, which isn't quite fair in that it's still a slingshot game, just not in the least orbital. It's just a slingshot. No stars required.

onion2kβ€’2 days ago
I gave Codex 5.4 Playwright MCP access to the site and a prompt of "Use Playwright CLI Skill to open https://playstarfling.com/ and load the game. Work out how to play it, and devise a strategy to win." After a about half a dozen attempts it had figured the game out. Then I prompted it to "Score as much as you can." It wrote itself an auto-play script that just keeps going.

I stopped it running at 10866. That's currently the high score. I appreciate that this is pointless and proves nothing, but I've been experimenting with automating testing games (I work at a gaming company at the moment) so it felt like an opportunity to try an experiment.

jstummbilligβ€’1 day ago
Do tell? How did it play the game, did you watch? Just took forever with every shot, or how did that play out with the LLM induced latency?
onion2kβ€’1 day ago
It didn't exactly play it using the LLM, but it used Playwright to execute code in the browser to work out how it works and then wrote a script to inject into the page to play it. It was basically perfect AI getting skip * 2 on every shot even after a hundred planets. I didn't expect it to do quite so well with only 2 prompts.
dalmo3β€’1 day ago
Are you sure the script is actually testing the gameplay? Given it can see the entire source code of the game.
onion2kβ€’1 day ago
It started out using browser.click events and then switched to using browser.evaluate script injection. That's entirely valid for my use case.
mutiβ€’2 days ago
Fun. Not sure if this applies on desktop, but on mobile the quick/fast/blazing/skip text often blocks vision of the ball making it harder than it should be to make combos
tux3β€’2 days ago
Very much applies on desktop. The restart button is also strange on desktop, it plays animations instead of restarting. I recommend pressing pause and restarting from the pause menu, which is instant.
disillusionedβ€’2 days ago
This precisely.
high_priestβ€’2 days ago
Major problem
yuppiepuppieβ€’2 days ago
This is good fun! I’ve added it to the HN Arcade :) https://hnarcade.com/games/games/starfling
Twirrimβ€’2 days ago
Fun, but dark grey text on a dark background? Bit hard to read a bunch of the text.

It also seems like there's gravity coming from off screen assets (or maybe it's the bottom of the screen?) causing the projectile to curve in unexpected ways, and not be captured as strongly by the gravity of the visible objects as I'd expect.

hdjrudniβ€’1 day ago
It's cool but the marketing is deceptive and through me off at first.

You're describing this as "orbital" and "starfling" but there seems to be constant downwards gravity. That's not at all how space works. I was expecting every 'star' to have its own gravity that would suck it in.

ericskiffβ€’2 days ago
Fun, but the way they fly doesn't quite match my intuition. Why would an object curve when I send it out on the tangent? Wouldn't that be a straight line unless it's affected by a different gravity well?
lemagedurageβ€’2 days ago
Yes, you have to imagine a much bigger star beneath the viewport.
kaffekakaβ€’2 days ago
I imagine it as slingshotting my way up a tree.
haarlemistβ€’2 days ago
Looks and plays quite nicely. I don't know how well it represents the real slingshot physics, but it's quite fun.

I've made a similar little web game based on Lunar Lander, check it out!

https://landed.theelderscripts.com/

robryanβ€’1 day ago
Nice, too much stability though compare to Lunar Lander.
russellbeattieβ€’2 days ago
The use of the Web Vibration API Navigator.vibrate() is well done! I haven't seen it used much, but it really adds to the game.

(Apparently iOS still doesn't support it [1]? It's been in Chrome for the past 12 years. Maybe someday.)

1. https://developer.mozilla.org/en-US/docs/Web/API/Vibration_A...

Advertisement
rkagererβ€’2 days ago
Neat, and nice audio, but I wish it were a little more forgiving. Eg. Combos or surviving several jumps might collect "lives" that recover your last orbit if you screw up.

Might also be fun if you encountered powerups as you explore deeper into the map (eg. gravity attraction, project path, etc), or even got to pick between forks in the route. The trail art reminds me of Out There.

NooneAtAll3β€’2 days ago
I don't see the "orbital" part. Ship flies in straight lines

Doesn't seem that hard, just a boredom endurance

foresterreβ€’2 days ago
Fun :)

Small idea for improvement: the "fast" text is often over the same space as the ball, which makes it harder to see where the ball would be going.

OneMorePersonβ€’2 days ago
I like it! One complaint is that if you are going fast it starts to display a "Quick!" (or something like that) message on top of the middle of the screen. This makes me want to continue going quickly, but the message is blocking me from properly seeing the orbit, so I end up trying to keep the streak going and most often launch and miss cause I can't see. Maybe display it off to the side in empty space?
b3ornβ€’2 days ago
Reminds me a little of an old game called Slingshot[0], I think it implemented the idea much better as you actually had to slingshot and consider gravity. Someone should turn it into a browser game, would be much more fun than this.

[0] https://sourceforge.net/projects/slingshot-game/

b3ornβ€’2 days ago
I implemented a very rudimentary copy of it at https://fac3.org/slingshot.html

Drag on the red circle to set angle and velocity, let go to launch it, try to hit the green circle, avoid the blue circles (planets with gravity). To try again hit "r" or reload the page to create a new random set of planets. Doubt it works at all on mobile, only tested it in desktop firefox.

Jaxanβ€’2 days ago
I played that too!
RobotToasterβ€’2 days ago
>single html file

Looks at imports

>Google Tag Manager

-_-

autoexecβ€’1 day ago
lots of outgoing requests, including

<link rel="preconnect" href="https://fonts.googleapis.com">

<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>

<script src="https://www.gstatic.com/firebasejs/9.23.0/firebase-app-compat.js"></script>

<script src="https://www.gstatic.com/firebasejs/9.23.0/firebase-auth-compat.js"></script>

<script src="https://www.gstatic.com/firebasejs/9.23.0/firebase-database-compat.js"></script>

<script src="capacitor.js"></script>

<script src="capacitor-cordova.js"></script>

<script src="https://static.cloudflareinsights.com/beacon.min.js/

hirako2000β€’2 days ago
Firebase. Likely needed to keep scores.
florboβ€’1 day ago
Game is fun, sure the mechanics aren't like real transfers but this appears to be a quick reflex challenge, not a lesson in astrophysics. The only gripe I have is all the flashes and distractions if I go to fast. I don't want ANY extra visuals when I'm concentrating on rapid shots.
arczaβ€’1 day ago
Agreed. This totally ruins it for me and by the sound of it many other commenters. Nice game otherwise.
systemsweirdβ€’2 days ago
Seriously fun! A first it felt frustrating but it was interesting that at a certain point (after about 10 minutes) I suddenly got an intuitive feel for the ball’s trajectory and it became addictive at that point.

My only gripe is you render the bonus notification too near the ball and it distracts me and makes it harder to keep a combo going.

vunderbaβ€’4 days ago
Nice job. Consider allowing the use of a key (Z, spacebar, etc) in addition to the mouse.

Related but I played a similar orbital minigame a while back on Itch.io which has a bit of a 2D Mario Galaxy feel to it as well.

https://danceswithpixels.itch.io/orbital-slingshot

Uncorrelatedβ€’2 days ago
I got 54, allegedly better than 99% of players. But I also note that a score of zero is apparently better than 32% of players.

Very fun.

falcor84β€’2 days ago
I actually love the idea of opening the game and then not playing resulting in a negative score. To quote Garfunkel & Oates, "It's better to be a loser than a spectator."
Advertisement
client4β€’2 days ago
If I miss but land back in the old gravitational field, I'd like a retry
em-beeβ€’2 days ago
or even if i land in any gravitational field i'd like to continue from there
bhollanβ€’2 days ago
I've been looking for a game from the "flash era" that's incredibly similar to this one! It was "fling-this-wad-of-duct-tape-to-clog-the-black-hole" as a metaphor, but I forget the name. It had similar "orbit" dynamics, but the entire game was setting the initial angle/velocity and then the orbits just 'did their thing' from there. This looks really cool! I'm already up to 11 as my best!

If you like this, you will for sure love the game "12 Orbits"!

hamandcheeseβ€’2 days ago
Scoring 0, 1, 2, 3, or 4 all say better than 32% of players. Something isn't right.
swiftcoderβ€’2 days ago
You have to get up to about 8 or 10 before you really start climbing the ranks
imiricβ€’2 days ago
This is neat, but the tap to release controls are unintuitive for me. I much prefer the variant of this game that uses hold, drag and aim as input. This allows much greater control, is more engaging, and thus feels more rewarding and fun. Plus, there's no waiting period for the ball to circle back to where you want it to be.

Tangentially, this is also why I dislike the modern trend of auto-shooters and idlers. The twin-stick shooter is by far the superior control scheme for this type of game, yet for some reason people enjoy having less control and engagement. I never got the appeal.

mark124mjβ€’1 day ago
Fun game! One thing I'd love to see is difficulty modes. An easy mode with some kind of aim guide (maybe a trajectory preview on tap-and-hold?) could help new players get the feel for it, and a hard mode where you control launch speed or angle would add a nice skill ceiling for people chasing high scores.
ewatchβ€’2 days ago
Really nice and very fast becoming addicted :D. Feedback from my side:

- on desktop (tested in Brave Browser) the speed is faster than on mobile (is this supposed to be ?)

- on desktop would be nice to have a short cut to instantly start a new game (may be on mobile you could calculate early on if the balls curve would have a collision and show a button to directly restart)

hirako2000β€’2 days ago
I don't get the gameplay.

Ok on touch gravity of the orbiting takes off. And if I don't land the next I start again and get prompted for my email each time.

It reminds me of certain games on NES which could be played for hours, once you lose your 3rd life you start all the way from the beginning.

Here it's the same. With one life.

WhereIsTheTruthβ€’2 days ago
When you go fast, the text in the center ruins visibility, hurts gameplay

Good art style, terrible UX

You didn't play the game you created

oh_fiddlesticksβ€’2 days ago
Its a nice start, but there is a certain irritation in that the popup text is directly over the puck. I felt like I was losing more because I couldn't see the puck under the combo counter than anything in the game.
indigodaddyβ€’about 23 hours ago
Really slow on an iPhone 7. Should that be expected? I wouldn’t have thought so.
Advertisement
modinfoβ€’2 days ago
Cool game! I scored 7581 (120 stars) on STARFLING :P

https://pod.sekor.eu.org/@modinfo/statuses/01KNXT3ZQDTHZBDYF...

vavkamilβ€’2 days ago
rookie numbers, paste this to the browser JS console https://pastebin.com/rjGgyp4V
mixtureoftakesβ€’2 days ago
who are you.
nraweβ€’2 days ago
This is an excellent and distinctly frustrating game Echo comments on restart being faster; maybe having the % stats in the main ui somewhere. Will be recommending this to some friends.
pryelluwβ€’1 day ago
Fun game. Well done. The controls are nice.
rikschenninkβ€’2 days ago
Nice, enjoyable.

I did however expect the stars to attract my ship, that combined with the top down gravity vector made it less intuitive.

It also makes it feel like a game happening in earths atmosphere instead of space, it impacts the possible sense of scale.

Still fun :)

fathermarzβ€’2 days ago
I love this and it’s very clean. Only piece of feedback, put the play again button where the scores are as that is where the thumb sits on the phone to do the tapping. Mind numbingly groovy
peaβ€’1 day ago
Good fun! Spacebar should launch, r should reset, maybe I'm imagining it, but it's a lot slower and thus easier on my phone than my MBP.
airstrikeβ€’1 day ago
This is both pretty cool and pretty frustrating as the physics don't really match reasonable expectations.
throwthrowuknowβ€’2 days ago
The text that pops up in the middle obscures the current position making it hard to immediately launch again. Maybe it should be closer to the bottom of the screen?
JohnnyLarueβ€’2 days ago
I have never been worse at a game than I am at this one
thenthenthenβ€’2 days ago
Same! I suck at this! I noticed that clockwise slingshots seem harder to time for me than anti-clockwise ones… weird
thomasfullerβ€’1 day ago
Reminds me of One More Line, an older mobile game with very similar mechanics.
Advertisement
fifiluraβ€’2 days ago
Took a little bit of figuring out why I always exploded. The restart button was right where I tapped to launch.

I loved the simplicity, it was fun!

Kim_Bruningβ€’1 day ago
Hmm, you can't fall back to a previous orbit. Those don't detect your presence
aidenn0β€’1 day ago
My most planets is 14, but my highest score is 25 with 8 planets.
noisy_boyβ€’1 day ago
Spacebar should launch. I should be able to use arrow keys to speed it up.
panstromekβ€’2 days ago
The game is pretty fun. Page height is a bit wrong on mobile, you probably need some dvh height?
panstromekβ€’2 days ago
Also, the game is much faster on desktop, looks like it's maybe not framerate independent?
niklasdβ€’2 days ago
Very fun! If you play it on a big monitor, the games slows down for some reason.
rustyhancockβ€’2 days ago
Love it, but bro you got to make the process of staying playing in the first 2 minutes simpler.

Right now the first 5 or so times you miss. Probably the first 5 times you try.

You get an annoying process of having to shift you hand to press the play again button.

The solution is easy as checking what the game score and high score is, if it's 0 just restart.

I don't need or want to hear about how to sign up to your mailing list if I've just fallen flat on my face!

There's a reset button but it seems to do nothing and you end up at the play again screen.

estβ€’2 days ago
hmm, it isn't strictly gravitational projectile movement isn't it?
imglorpβ€’1 day ago
I love it.

But why make apps for it? The web page is perfect as is

weezingβ€’2 days ago
Lack of proper physics really bothers me in such game.
Advertisement
kortexβ€’2 days ago
Super fun! But the text does get in the way mid-combo.
lagniappeβ€’2 days ago
This thing is so fun. My best was 17, better than 94% :)
potatoproductβ€’2 days ago
Good fun, my highest was 30, it took a while!
karim79β€’2 days ago
Brilliant game. Thank you so much for this.
ofjcihenβ€’2 days ago
56 Stars Better than 100% of players

Git rekd nerds

zerobitflipβ€’2 days ago
This is pretty cool, Great stuff!
AFF87β€’1 day ago
Maybe having some saves?
dawieβ€’2 days ago
Super cool, super addictive :-)
kokopelliβ€’4 days ago
This is great. Very addicting.
oliver236β€’2 days ago
allow me to use space and not click!!!!
Advertisement
gverrillaβ€’1 day ago
I don't like the game. The sounds. The way movement flows. Also the game loop is slow after I lose or realize I'll lose.
deviationβ€’1 day ago
Paste this bad-boy into your console and watch the real expert play:

(function () { "use strict";

  // ── CONFIG ──────────────────────────────────────────────────
  const AUTO_RESTART = true;
  const RESTART_DELAY = 800;   // ms before auto-restart after death
  const MUTE_SOUND = true;     // silence during autoplay
  const SIM_FRAMES = 350;      // max frames to simulate per check
  // ────────────────────────────────────────────────────────────

  let running = true;
  let totalGames = 0;
  let botBest = 0;
  let scores = [];

  if (MUTE_SOUND && typeof snd !== "undefined") snd = false;

  function wouldHitTarget() {
    if (st !== 1 || !bl || !bl.orb) return false;

    var targets = [];
    for (var i = cWI + 1; i < Math.min(wl.length, cWI + 3); i++) {
      if (wl[i] && !wl[i].caught) targets.push(wl[i]);
    }
    if (targets.length === 0) return false;

    var ta = bl.angle + bl.dir * Math.PI / 2;
    var nw = wl[cWI + 1];
    var spd;
    if (nw) {
      var ddx = nw.x - bl.x, ddy = nw.y - bl.y;
      spd = Math.max(4.5, Math.min(7.5, Math.sqrt(ddx * ddx + ddy * ddy) * 0.038));
    } else {
      spd = 5.5;
    }

    var x = bl.x, y = bl.y;
    var vx = Math.cos(ta) * spd;
    var vy = Math.sin(ta) * spd;

    for (var f = 0; f < SIM_FRAMES; f++) {
      vy += 0.06;
      vx *= 0.995;
      vy *= 0.995;
      x += vx;
      y += vy;

      for (var t = 0; t < targets.length; t++) {
        var dx = x - targets[t].x, dy = y - targets[t].y;
        if (Math.sqrt(dx * dx + dy * dy) < targets[t].radius + 20) {
          return true;
        }
      }

      if (y > 2500 || x < -400 || x > W + 400) return false;
    }
    return false;
  }

  function autoRestart() {
    if (st !== 2) return;
    var go = document.getElementById("game-over");
    var rp = document.getElementById("revive-popup");
    if (go) go.classList.add("hidden");
    if (rp) rp.classList.add("hidden");
    document.getElementById("pause-btn").style.display = "flex";
    document.getElementById("sound-btn").style.display = "flex";
    st = 1;
    init();
  }

  function tick() {
    if (!running) return;

    if (st === 0) {
      handleTap();
    } else if (st === 2 && AUTO_RESTART) {
      totalGames++;
      scores.push(sc);
      if (sc > botBest) botBest = sc;
      console.log(
        "Game #" + totalGames +
        " | Score: " + sc +
        " | Jumps: " + jmp +
        " | Combo peak: " + cc +
        " | Bot best: " + botBest
      );
      setTimeout(autoRestart, RESTART_DELAY);
      setTimeout(function () { requestAnimationFrame(tick); }, RESTART_DELAY + 50);
      return;
    } else if (st === 1 && bl && bl.orb) {
      if (wouldHitTarget()) {
        release();
      }
    }

    requestAnimationFrame(tick);
  }

  window.stopBot = function () {
    running = false;
    console.log("Bot paused. Call startBot() to resume.");
  };

  window.startBot = function () {
    if (running) return;
    running = true;
    console.log("Bot resumed.");
    requestAnimationFrame(tick);
  };

  window.botStatus = function () {
    var avg = scores.length
      ? (scores.reduce(function (a, b) { return a + b; }, 0) / scores.length).toFixed(1)
      : 0;
    console.log(
      "Games: " + totalGames +
      " | Best: " + botBest +
      " | Avg: " + avg +
      " | Running: " + running
    );
  };

  console.log("=== STARFLING AUTO-PLAYER ===");
  console.log("Controls: stopBot() | startBot() | botStatus()");
  requestAnimationFrame(tick);
})();
abcde666777β€’2 days ago
Fun game, though a difficulty of playing it on a phone is your primed finger gets in the way of seeing the ball!
alfiedotwtfβ€’2 days ago
Love this! Only request is don't display Godlike etc where you are because I've found when it comes up, you can't see where you are and so miss the next first-chance
alfiedotwtfβ€’2 days ago
Ideas for hard mode:

    - when you land, the ring starts shrinking, and you die when the ring gets to r=0
    - stars move
tuo-leiβ€’2 days ago
The single HTML file as a distribution format is really underrated. No server, no CORS issues, no CDN β€” just open the file. It works offline, you can email it, and it'll still work in 10 years.

I ship self-contained HTML files for a different project and the sneakiest gotcha is </ sequences inside inline <script> tags β€” the browser sees </ and tries to close the script tag prematurely. You have to escape them as <\/. Curious if the author ran into that one.

Fun concept for the format too β€” games are the perfect use case.

cubefoxβ€’2 days ago
That's the silliest LLM comment I saw in a while.