Most active commenters
  • bussyfumes(9)
  • 4ggr0(4)

←back to thread

1901 points l2silver | 13 comments | | HN request time: 1.306s | source | bottom

Maybe you've created your own AR program for wearables that shows the definition of a word when you highlight it IRL, or you've built a personal calendar app for your family to display on a monitor in the kitchen. Whatever it is, I'd love to hear it.
Show context
bussyfumes ◴[] No.35739461[source]
When I was a student there was this power-of-two game on my friend's iPhone that I was literally addicted to. I didn't have an iPhone and eventually the game even disappeared from the AppStore. I missed it very much and my friends jokingly mentioned building a copy just for me. They never got around to it but at some point I thought "maybe I should give it a try?". So I gave it a try with no game dev knowledge and the second iteration turned out just fine for my needs: https://kiryhas.github.io/memechain/

I've considered rewriting it to make the code better many times but every time I sit down to do that I think to myself "it works just fine, why touch it" and leave this idea for a while :)

BTW the idea of the game is to combine cubes with the same number and color until there are only 4 left.

replies(9): >>35742058 #>>35742459 #>>35748987 #>>35754934 #>>35757761 #>>35758930 #>>35760121 #>>35761191 #>>35774195 #
4ggr0 ◴[] No.35742058[source]
That's really addicting! :D

If this is mobile responsive I will probably use it a lot.

EDIT: Works flawlessly on my phone. Wonder if I can host it locally on my Android, so that I don't even need an internet connection...

replies(1): >>35742351 #
bussyfumes ◴[] No.35742351[source]
I've never had big hopes for the project but I feel incredibly happy that you like it!

The original I played on my friend's phone was just that -- a phone game, so making sure it works on my phone was a priority :)

I don't have an Android but last time I tested it was playable even though the cubes were bigger than I'd like them to be on some screens.

I've made an offline version for myself in the past to play while traveling by train. Copying the contents of the .js and .css file into the HTML file into <script> and <style> tags was enough. I wonder if I can make it easier for other people like you by storing it somewhere on git...

P.S. Here's the source if you want to create an offline-first version yourself: https://github.com/Kiryhas/memechain

replies(1): >>35742464 #
4ggr0 ◴[] No.35742464[source]
Yeah your game just scratches an itch I had for a long time. Mobile games are filled with ads and in-app purchases and I never found a simple game I could play and enjoy while waiting for public transport. Want to fully clear a seed now, haven't gotten that far yet ;)

Ahh, a single .html would probably work, too, sounds way easier!

I downloaded Termux, installed git and python3 and now your game is running locally on my phone with "python3 -m http.server --bind 127.0.0.1 9000" :)

replies(2): >>35742822 #>>35752375 #
bussyfumes ◴[] No.35742822[source]
Seeds are absolutely random and some of them can't be solved. I've had people complain about it but I consider it to be another aspect of the challenge of this game because there are cues you can notice that tell you if it's not possible to solve it.

Yeah, you went the extra mile spinning up a local server :)

If the trip you're taking is not a long one, you can just make sure to load the page while you still have reception. The game doesn't make any AJAX requests or load any resources after that and prevents the default 'pull-to-refresh' gesture so if you don't refresh the page accidentally, it'll stay available.

replies(1): >>35743163 #
4ggr0 ◴[] No.35743163[source]
It's a difficult challenge I must say. Played about a dozen games now, furthest I've gotten is 4280 points. Have you ever cleared a full seed?

Yeah I looked at the files to see if you make any external requests. I guess I just found it entertaining that there's a web-game running locally on my phone :)

replies(2): >>35743488 #>>35750052 #
1. bussyfumes ◴[] No.35743488[source]
Yeah, I've cleared it many times. Sometimes no matter how skilled you are luck is not on your side :)

Maybe the game could benefit from a mode that verifies if a seed is solvable but I haven't gotten past it being just an idea.

replies(3): >>35745804 #>>35748998 #>>35756567 #
2. hutzlibu ◴[] No.35745804[source]
It definitely would benefit from that, people like to have success. (And know who they can blame in case of failure)

The easiest solution is probably brute force, have it try all the potential moves and see if it solves the game and if it does, make it a valid seed. Can be pregenerated, but should be doable in real time, also from a smartphone.

Also, I think I was just blocked from my first clearing, because I could not access all blocks.

Rotating the view and angle would be quite nice, but depending on your implementation, not trivial.

Maybe I implement it with babylonjs or threejs these days, it is a fun game.

replies(1): >>35758004 #
3. lazamar ◴[] No.35748998[source]
Thanks. I’ve just wasted 2 hours.

Loved the game.

To make it generate winnable games just start from a solution and keep expanding it until you get to the initial game state.

replies(1): >>35757918 #
4. thrwawaygame236 ◴[] No.35756567[source]
Thank you for a good and very playable game.

It took me several tries with many different seeds, but I made it at last. 8000 points on seed 5706121. I like the simple but cool rotating cubes at the end.

I also like the non-minimized source code. It makes it instantly discoverable without having to find your repository (https://github.com/Kiryhas/memechain).

Looks like you did it without any external libraries which is cool! It looks clean and readable, and proves that developers don't need to download huge dependencies to create these types of games.

I have one minor suggestion. It would be great if you made the highlight a bit clearer when you are hovering over a matching cube. Sometimes it can ba a bit difficult to hit the correct spot. Maybe you could highlight the hovering cube as well in addition to the outline?

replies(1): >>35757898 #
5. bussyfumes ◴[] No.35757898[source]
Thank you for your feedback and kind words!

Your suggestion makes a lot of sense, I think I'll add 0.5 transparency to the cube the player is dragging when it can be combined with the cube under it. It's late so I'll do that tomorrow, stay tuned :)

replies(1): >>35765875 #
6. bussyfumes ◴[] No.35757918[source]
Glad you enjoyed!

Could you elaborate on 'start from a solution and keep expanding it'? I thought of it more like checking the field for certain patterns that tell if it can't be solved and generating fields until one passes that check.

replies(1): >>35855277 #
7. bussyfumes ◴[] No.35758004[source]
Thank you for your feedback!

Personally I am not sure if I like winning more than just combining the cubes together and moving onto the next seed if it can't solve the current one :)

Pre-generating seeds is a valid solution but since I don't want the game to make any network requests I don't think it would work for me. Brute forcing it makes me worried if it'd drain the battery.

I think I would rather add an opt-in (like a checkbox) option to make the game check fields for certain patterns that tell if a seed can't be solved and keep generating until there's a seed that passes that check. I think that way the game would still give you the occasional seed that can't be solved but statistically your chances would go up.

Regarding rotating the view, that would make it a different game and I'd like to keep it as it is. However, that sounds like it could be fun so please send me a link if you end up creating such a version! :)

replies(1): >>35760418 #
8. hutzlibu ◴[] No.35760418{3}[source]
Now I am interested to give it a try, because I really don't think brute forcing the solution would drain the battery. Likely it would be neglectible, compared to the power needed by the rendering.

Because there is a finite and small amount of legal steps, so it should not need too many iterations.

That is of course, if you only brute force the raw game logic. Simulating the steps with the UI would definitely drain the battery ;)

And yeah, if I get around to redo it in true 3D, I send you a link. I think if done right, it provides the same experience, just a bit more overview.

9. 4ggr0 ◴[] No.35765875{3}[source]
So it's been two days, I've played it a lot since then and cleared it twice. If feels soooo good to clear it because it's rare (for me).

Looking forward to the update ;D

replies(1): >>35879854 #
10. toddyamakawa ◴[] No.35855277{3}[source]
Start with 4 different color cubes, each with the value of 128.

Then just keep splitting them until you have a full the game. You'll need some intelligence in deciding which cubes to split and where to stack the split cube.

But if you reach a state where you can't split anymore you can must backtrack and try again.

replies(1): >>35878540 #
11. bussyfumes ◴[] No.35878540{4}[source]
Yeah, makes sense, I'll consider it, thank you!
12. bussyfumes ◴[] No.35879854{4}[source]
Sorry for the delay, I've been a bit busy recently.

I've just adjusted the highlighting of the cubes, give it a look. For feedback you can contact me here, by email or open an issue on GH. Hope you enjoy!

replies(1): >>35906039 #
13. thrwawaygame236 ◴[] No.35906039{5}[source]
Works great. Thanks