Show HN: I made a web game using emojis and no JS framework
fastflood.dylancastillo.co
fastflood.dylancastillo.co
Quite fun! Nicely made.
My (hopefully constructive) feedback:
- Bug: I refreshed the page on my first try and it told me to “come back tomorrow.”
(I opened it in incognito to proceed.)
- Opinion: Failed three times. Felt terrible that I was limited to three goes. The “You’ve used up your tries” approach that Wordle takes only works because you get the satisfaction of learning what the word is.
- Opinion: Timer is stressful. Personally I’d prefer a relaxed game. Just time how long the person takes, don’t cut it off.
- Idea: Use subtle cross-hatching as well as colours to make the game far nicer to play. If you must stay with emojis, then use more creative square-shaped ones.
- Opinion/Idea: Don’t limit the moves. Just show a goal, and let the player exceed. So count tries, overall time (spent trying on any try) and lowest moves. That way people can share “Fast Flood No. 3 with 14 moves in 4 tries over 6 minutes and 10 seconds.”
- Idea: Draw a subtle border around the cells you control. Makes it easier to search for neighbouring cells, and makes it satisfying as the border eats away at the border.
- Idea: Simplify the explanation to “Make all the squares the same colour, in as few moves and as quickly as possible. There’s a new challenge every day.” The mechanics are simple enough that giving players the goal is enough. They’ll figure out the rest, and actually enjoy the process more than if was all laid out for them.
One thing I'd definitely like to see would be the ability to see your score and game state once you return to the page. I'm effectively locked out at this point so I can't share my score anymore.
I thought I might have had the system text size set high, but it's at the 2nd-lowest.
Update: I love the colorblind mode! I was already going to suggest a game mode with more visually interesting emojis and you picked some great ones :)
I actually find it much more fun and aesthetic than the default mode. (At least on iOS, the emojis are very nicely designed. Iirc each Android brand has their own emoji design.)
Put the instructions in a modal or something or make it clearer you're about to start the "once a day" mode.
edit: I guess I wasn't clear, I was trying to say to parent that it is not needed to clear all your browser cookies and opening in incognito is the easiest solution, especially on mobile.
Of course on desktop you can easily delete that single cookie from dev tools, but opening in incognito is still faster.
In Firefox, Right click > Inspect > Storage > Cookies
You can see that site's cookies and delete the ones you want manually. I hate clearing all of my browser cookies
When you do this you are opening dev tools, that's what I was saying. On firefox you can just hit F12 to open it and then go to storage.
I explicitly didn't use the word "clear" because that isn't what I did.
Regardless, absurd that it's even required for such a small game.
Seems a weird choice to only let people play once when it could be easily randomized or solved in multiple ways, unlike Wordle, which seems to have started the one-a-day fad.
I also did one try, then came back a bit later to try again, but I guess I don’t get to use my other tries because I left, which I didn’t like.
I may end up removing it, just thought it was interesting to get two axis to measure performance: moves and time.
I think the timer can help avoid people who will over-analyze colors, but it definitely also changes the way our brains allow us to play - maybe a compromise could be a "free-play" option with no timer, but keep the timer by default? Or the opposite with the timer as a "challenge" mode? I could see the interest in both- it would be neat to see how few moves I could complete a puzzle in if given infinite time!
Also replying to another comment, I do think it is the right choice to allow multiple plays (you may have changed that in the past 10 minutes since it seems I was able to play twice)
I actually made a similar "flood it" game last summer to practice Vue 3.
In my version there is no timer and I added some power-ups to add a little more complexity to my project.
Disclaimer: Not so mobile friendly :(
Can you add manifest.json [1] so it is more app like when added to home screen.
"display": "standalone" helps alot on phones.
It's good that you didn't use a JS framework, though given that the only changes to the page as the game progresses are updating the grid cells and a couple of bits of text, it would be pretty crazy if you did.
Also, I was amused that the example gif is over half the total page weight. You could do a mini demo/practice level instead in much less.
I think you could remove the UI options at the bottom entirely.
Instead have the user click on the adjacent squares directly. Basically if I click a red square on the board, that would be equivalent to selecting the red square in the UI options.
Then add have a hover state that indicates what is going to happen after they click. And make everything bigger such that so the user can't avoid mousing over the squares. If the hover state is good enough, it should teach the rules without the need for instruction.
Oh and make the color blind option the default / ditch the squares. The emojis look cooler.
I've found that any time I'm using emojis for something substantial, I end up using rendered images for them. Even when the emojis are all supported, they can differ across devices and look like something that wasn't what I was going for. Though kinda defeats the fun of using emojis.
My strategy was simple: Scan the boundaries of the area of cells stemming from the top-left corner cell which are of the same color, and attempt to determine which of the other colors has the highest number of unique cells which have at least one edge in common* with that region.
* There's room for optimization here.
Is there a better strategy?
Here's my score.
Fast Flood No.3 → ⌛ → 31 seconds ▶ → 17 moves → 2 tries
But then got timed out, so just tried to pick what felt like it would increase surface area the most.
Ie one red touching that is connected to a strip of red Ha s more value than flipping 2 red.
90% of the time you'll end up with 1 turn out of luck pretty much
I also made a flood implementation
Except it's not locked to one try per day
And clicking the items in the box triggers the action as well
This game is amazing!
I was a little confused by the game mechanics at first so it took the first two rounds just to figure out what's going on... maybe animate the active colored blocks with sth like a shake/highlight effect?
I was looking for logic games and found Flood in Simon Tatham's puzzles collection: https://www.chiark.greenend.org.uk/~sgtatham/puzzles/
> the original (which was apparently made 11 years ago)
I'm not sure what the true original is--I found a still-playable version[1] from 2006, from back in the brief heyday of Web Gadgets and personalized web portals[2].
[1] http://web.archive.org/web/20061112004207/http://www.labpixi...
Fast Flood No.4 → ⌛ → 30 seconds ▶ → 20 moves → 1 try
Nice concept!
- I had to considerately speed up my game after realising I was running out of time - The frenetic pace is not very enjoyable - I don't see any emojis - It doesn't feel like a puzzle because of the time constraint, I'd remove the timer and lower the max moves allowed, so that you have to think in advance instead of just scanning for max adjacents color and then iterating colors
I'd suggest adding a link to the shareable clipboard score.
at first I didn't understand what was going on with the mouse but then it worked out. Nicely done.
https://elemental-emojis.vercel.app/ https://ee-nojs.vercel.app/
I think color blind mode is way easier and maybe should just be the default or only option.
Here's minesweeper https://letter-press.netlify.app/scooper
So =(
Also - not a fan of the timer.
The game only shows brownish rectangles.
I know the phone is considered antique by today's standards, but still...
It seems like once I solve a puzzle if I don't copy my results I have no way of seeing them. I'm at a screen that says to come back tomorrow.
Super fun!!!!
pretty fun. love to see where this goes.
Second try, 17 moves: Interesting, lets try again.
Third try, 18 moves: Damn, not what I expected...
Not sure if that took me 19 seconds or 19 seconds remaining.
I enjoy this game very!
https://news.ycombinator.com/item?id=19482991
You could use diff flags and give it a stratego like appeal.
→
⌛ → 45 seconds
▶ → 16 moves
→ 3 tries
→
⌛ → 45 seconds
▶ → 16 moves
→ 1 try
… beautiful game! very well done.
Fast Flood No.3 → ⌛ → 29 seconds ▶ → 15 moves → 1 try
Fast Flood No.3
→
⌛ → 59 seconds
▶ → 18 moves
→ 1 try