Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change animation speed #465

Closed
matt1432 opened this issue Oct 10, 2023 · 7 comments
Closed

Change animation speed #465

matt1432 opened this issue Oct 10, 2023 · 7 comments
Labels
enhancement New feature or request

Comments

@matt1432
Copy link

I really like this app. However, when I try to go fast the app does not follow along. I have to wait after each animation which can be painful.

I would like the option to disable animations or at least make them quicker, so that I can be as fast as possible.

@matt1432 matt1432 added the enhancement New feature or request label Oct 10, 2023
@lucasnlm
Copy link
Owner

@matt1432 Hi! Thanks for your feedback!
Can you give more details about which animation?
It has almost no animation. So I'm confuse.

@matt1432
Copy link
Author

I'm talking about the delay after revealing a square, the delay before a square is flagged after pressing a number, etc

@lucasnlm
Copy link
Owner

@matt1432 What device are you using? It shouldn't take any second to review the map. But, if you are using a big map with a slow device, it may take some time to process the map update.

@sin3point14
Copy link

I have been playing minesweeper for a few years now and am decently fast at it. I think I can relate to what this issues says.
I think there are 2 problems here:

  1. In antimine, when you press a tile, only a border is drawn around the tile, ie it is not processed immediately.

See this:
https://github.com/lucasnlm/antimine-android/assets/43549821/fcb9e455-b8e6-4e33-a879-3b8e75c07390
I held my finger down so antimine didn't register it as a "reveal tile" action, instead just ignored it.

There are some desktop minesweepers that do something like this: https://minesweeper.online/. You can hold your mouse button on a tile and it won't be revealed, but as soon as you lift it will be revealed. I think on desktop this kind of behavior is somewhat acceptable because mouse in general are faster then touch and provide good feedback to your hand and brain. But then there are implementations like https://mzrg.com/js/mine/torus.html which feel a lot better when you want to solve it fast. As soon as a tile is revealed a fast minesweeper player is already planning their next moves even though their touch/mouse action may still not be complete.

  1. There is something weird happening between my finger lifting and the tile being revealed

realtime:
https://github.com/lucasnlm/antimine-android/assets/43549821/d6919bc6-034a-44d2-b8d3-912dd07af930
I have slowed this down by 0.125x:
https://github.com/lucasnlm/antimine-android/assets/43549821/7d8e713f-6202-4e88-8f1f-713e09143c2f
The white circle denotes my touch action, and in real time it feels to me that it takes some amount of time for the tiles to be revealed. However In this slowed down video it doesn't! I think the culprit is the rounded box that appears on the box I pressed and fades out slowly. "Slowly" here is relative: It takes considerable amount of time to vanish compared to the time interval of my find lifting and the tiles being revealed. To my brain it feels like as long as there are changes happening in the board UI, the tiles are still being revealed. It is an illusion, but it works well in slowing my actions .

This feel jarring because the reveal timing doesn't match my pressing or lifting of finger from the screen and really breaks my rhythm

I think the solution would be to just process the "tile reveal" or "tap on number" as soon as the user's finger lands on the screen and move the gray box entirely or as soon as the times are revealed.
Or if that doesn't sound like good UX for the general audience, maybe an option can be added which "disables animation", though then there are 2 types of animation I talk about here, but that matter is just technicalities ¯\_(ツ)_/¯.

If I find some time, I'll try to create a PoC where I remove these 2 things.

@Clozent
Copy link

Clozent commented May 3, 2024

@lucasnlm I think they meant the fact that after pressing a tile (including numbers), the action doesn't happen immediately, having a "tap" animation before tiles are revealed / flagged.

The problem is that the tap animation plays after a tap, when it should play during a tap.

Tiles should be revealed immediately after raising the finger (unless the player has slid their finger past the tile, indicating that they did not mean to tap it), and any animation that plays after the player has done so should not obscure the tile.

@matt1432
Copy link
Author

Just tried this app again and this is not an issue anymore.

@sin3point14
Copy link

Just to confirm, did you run 17.7.0? I was looking at the changelog just to see what fixed the bug, but couldn't spot anything 🤔

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants