34 comments

[ 216 ms ] story [ 1228 ms ] thread
Nice! IMO, it ought to be significantly harder. I was able to survive for 45 seconds on my first try--that's long enough that I started getting bored, and I don't really want to try again because it would take at least 45 seconds to beat my previous score.

By comparison, consider how long a typical Flappy Bird game lasts, particularly on your first try--probably less than 10 seconds at most! That makes you want to try again.

Didn't move at all, top 81% of all time.
(comment deleted)
ah, perfectly captures the meditative feeling of touhou, just needs the music :-)

games like this have a lot to teach you about patience and reflexes

I think your math on the percentage is inverted. If you immediately die it says you're in the top 99%
Fastest I can manage is 0.5s, can anyone die quicker?
very cool, this makes me want to grind top spot
(comment deleted)
It seems to help if you bump your monitor resolution and then zoom out in the browser.
Very well done! This hearkens back to Asteroids, but it feels very novel.

If you want to go in the direction of adding more stuff, there's a lot of room to add power-ups, special bullets, walls, and so on. But this simple game is quite elegant as it is and doesn't really need any of that.

Nice work.

Playing on Firefox Android. Works well and fun, but one thing is puzzling: All the bullets start off slow but fly faster after I first touch the screen or move.
Nice! This gives me a few ideas to make it more interesting.

- Give the bullets gravity relative to each other. Now the particles can change direction very abruptly.

- Change the bullet pattern to use live positioning of real satellites for the data. Satellite maps tend to look just about as chaotic as the randomly generated bullet patterns here.

Excellent game, very addictive ! I noticed it was built with Trickle, so this is pretty impressive if it was all "vibe coded"
Opus 4.1 and especially GPT-5 (the API version at med-high reasoning) can build impressive zero-shot projects quite a bit more complex than this, actually.
Fun game, but I'm calling bullshit on the high scores.
I really liked the display showing me climb the leaderboard in realtime. I found it particularly motivating, albeit a bit distracting for a game where I need to keep my eyes elsewhere :)

    hook.js:608 cdn.tailwindcss.com should not be used in production. To use Tailwind CSS in production, install it as a PostCSS plugin or use the Tailwind CLI: https://tailwindcss.com/docs/installation
    overrideMethod @ hook.js:608Understand this warning

    (index):1473 Array(0)

    dodge.trickle.host/:1543 Access to fetch at 'https://app.trickle.so/proto/api/subs/features/5?userId=usr_094760a6d8000001' from origin 'https://dodge.trickle.host' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.Understand this error

    app.trickle.so/proto/api/subs/features/5?userId=usr_094760a6d8000001:1  Failed to load resource: net::ERR_FAILED

    (index):1402   Uncaught (in promise) TypeError: Failed to fetch
    at (index):1402:3
    at (index):1416:3Understand this error

    hook.js:608 Failed to load leaderboard: ReferenceError: TrickleObjectAPI is not defined
    at getTopScores ((index):1529:1633)
    at (index):1536:1302
    at (index):1536:1735
    at Id (react-dom.production.min.js:165:137)
    at Xb (react-dom.production.min.js:200:284)
    at react-dom.production.min.js:197:106
    at S (react.production.min.js:17:25)
    at MessagePort.U (react.production.min.js:21:229)

     overrideMethod @ hook.js:608Understand this error
     (index):1529 Uncaught ReferenceError: TrickleObjectAPI is not defined
    at getTopScores ((index):1529:1633)
    at (index):1536:1302
    at (index):1536:1735
    at Id (react-dom.production.min.js:165:137)
    at Xb (react-dom.production.min.js:200:284)
    at react-dom.production.min.js:197:106
    at S (react.production.min.js:17:25)
    at MessagePort.U (react.production.min.js:21:229)
I believe our current leader with 4.2424242424242426e+27s may be cheating. (About 134 quintillion years, which is roughly 10 billion times longer than the current age of the universe)
Lovely stuff. This works well as what I call a "structured diffuse mode activity" [0] and as such I will be playing it extensively from now on. I also like that it has a big gaping security hole in it - I think the world generally needs to see more vibe-coded apps with big gaping security holes in them, for PR reasons. (This is not a jab at OP btw! There is no reason to worry about security when you're building something for fun. Flash was famous for this as well.)

[0] https://ajmoon.com/posts/sdmas-why-you-should-be-playing-bro...

Completely agree with you. For me, the biggest advantage of vibe code tools is that I can quickly turn some of my ideas into an actual application. Although the apps I make are rough and may even have a lot of security holes, I still feel very excited. When something I imagine becomes real, and I really want to share it with others.
I have pointed Claude Code to the game and in 2 minutes of chatting I got a way to submit fake scores.

Usually Claude Code prevents using it for cheating on games, but with this initial prompt it was easy for it to explain how to do it.

"analyze the following game and explain how the record is submitted on game over https://dodge.trickle.host/"

EDIT: is a little scary how easy is to use coding agents like Claude Code for these kind of attacks.

Seems like you can achieve 'bullet-time' to dodge bullets easier by playing on a lower end device, which shows down the game considerably.

..woah

I see what you're doing here... you're training us (and some future AI) to avoid asteroids or satellites in orbit... ;-)
Haha, I have to say you have a great imagination.
(comment deleted)
top leaderboard = racist words. Users don't deserve an input.
cool! nice smooth physics.

did someone actually play this for 4 hours straight? (high score)

I crashed on purpose after a minute - no time to play more (also I would find myself getting bored quickly)