- Blind mode tutorial
lichess.org
Donate

Android App + The CPU: difficulty insanely high

So I've been using the lichess app on and off for some time. I don't play chess all that often, but sometimes I like to try a bot game.

I'm not that great at the game, especially when I'm not spending 20 minutes per move, but I'm sure I used to be able to beat Stockfish lvl 1. It would do ridiculous moves every now and then and just lose pieces etc.

Recently though (noticed for quite a while) it's been easily beating me and I just couldn't figure out why. So I decided to analyse my moves as I played at first, and avoid any large blunders etc. Then I realised it was staying really even, so I literally just faced the bot up against the full analysis on my phone each and every move.

This is the game:

https://lichess.org/CMYTAitj

I specifically tried to make it a game that didn't start off with a lot of captures (generally harder for the engine with more pieces), yet it made only minor inaccuracies until move 36!

I know you can get games with low centipawn loss, but generally it's games involving a more aggressive playstyle than this. So a centipawn loss of 29 is really good given the blundered ending (which increases the number a lot). It means it's earlier play was near perfect. That feels a little overkill for Stockfish AI 1....


So is this just me? Or is something way off. I'm sure that Stockfish AI 1 is meant to be blundering non-stop.

I'm using an HTC 10. What even is Stockfish 1? If it's just time limited it could simply be that I have a more powerful phone etc.

So I've been using the lichess app on and off for some time. I don't play chess all that often, but sometimes I like to try a bot game. I'm not that great at the game, especially when I'm not spending 20 minutes per move, but I'm sure I used to be able to beat Stockfish lvl 1. It would do ridiculous moves every now and then and just lose pieces etc. Recently though (noticed for quite a while) it's been easily beating me and I just couldn't figure out why. So I decided to analyse my moves as I played at first, and avoid any large blunders etc. Then I realised it was staying really even, so I literally just faced the bot up against the full analysis on my phone each and every move. This is the game: https://lichess.org/CMYTAitj I specifically tried to make it a game that didn't start off with a lot of captures (generally harder for the engine with more pieces), yet it made only minor inaccuracies until move 36! I know you can get games with low centipawn loss, but generally it's games involving a more aggressive playstyle than this. So a centipawn loss of 29 is really good given the blundered ending (which increases the number a lot). It means it's earlier play was near perfect. That feels a little overkill for Stockfish AI 1.... --------- So is this just me? Or is something way off. I'm sure that Stockfish AI 1 is meant to be blundering non-stop. I'm using an HTC 10. What even is Stockfish 1? If it's just time limited it could simply be that I have a more powerful phone etc.

I received a PM with the following content:


Just wanted to comment on your Stockfish AI post, but it seems I'm unable to reply in your thread? Anyways, it's a problem I've been having as well. In the Android app, there's an enormous skill difference between stockfish lvl1 online (play vs the machine), which I can beat handily, and stockfish lvl1 offline (computer), which I get smashed by every time.

You're theory that the difficulty is dependent on device specs is a pretty good one, I think. I'm running it on a OnePlus 3 which has a powerful processor and tons of RAM.

Hopefully this gets some attention, I'm offline often and as it is now the AI is too powerful for me to get any good practice.


I've had a look at the source code, but I cannot spot a problem. It looks like it should correctly send a command signalling depth 1 for lvl 1.

That should be more than enough for it to make absolutely ridiculous errors. Yet it never seems to do so. So I can only assume that the limit isn't being respected, but why I have no idea as the code seems fine.

The only thing I can think of is that Stockfish on android is no longer respecting the depth limit when you also provide it which a movetime. But unless I start actually building the app (which is a pain when you're not set up for it, but I might try to do it) I can't actually debug it.

It would make sense though as the AI sometimes makes some odd, but not terrible, plays in the opening and it does eventually mess up, so it's not like it's running level 8.


I just really want to be able to play offline. I get no signal in the toilet at work and it's the perfect time to throw in a quick practice game :P

I really do hope someone can take a look at this.


After writing all this I find it's already been noticed on reddit:

https://www.reddit.com/r/chess/comments/6qljpp/is_the_offline_computer_way_stronger_than_the/

and there's an issue on github:

https://github.com/veloce/lichobile/issues/630

So instead this is a call for help:

If anyone knows when this started, please speak up. Because I really want to find the solutions to this!

I received a PM with the following content: -------------------------------------------------- Just wanted to comment on your Stockfish AI post, but it seems I'm unable to reply in your thread? Anyways, it's a problem I've been having as well. In the Android app, there's an enormous skill difference between stockfish lvl1 online (play vs the machine), which I can beat handily, and stockfish lvl1 offline (computer), which I get smashed by every time. You're theory that the difficulty is dependent on device specs is a pretty good one, I think. I'm running it on a OnePlus 3 which has a powerful processor and tons of RAM. Hopefully this gets some attention, I'm offline often and as it is now the AI is too powerful for me to get any good practice. ------------------------------------------------ I've had a look at the source code, but I cannot spot a problem. It looks like it should correctly send a command signalling depth 1 for lvl 1. That should be more than enough for it to make absolutely ridiculous errors. Yet it never seems to do so. So I can only assume that the limit isn't being respected, but why I have no idea as the code seems fine. The only thing I can think of is that Stockfish on android is no longer respecting the depth limit when you also provide it which a movetime. But unless I start actually building the app (which is a pain when you're not set up for it, but I might try to do it) I can't actually debug it. It would make sense though as the AI sometimes makes some odd, but not terrible, plays in the opening and it does eventually mess up, so it's not like it's running level 8. ------------------------------------------------ I just really want to be able to play offline. I get no signal in the toilet at work and it's the perfect time to throw in a quick practice game :P I really do hope someone can take a look at this. ---------------------------------------------- After writing all this I find it's already been noticed on reddit: https://www.reddit.com/r/chess/comments/6qljpp/is_the_offline_computer_way_stronger_than_the/ and there's an issue on github: https://github.com/veloce/lichobile/issues/630 So instead this is a call for help: If anyone knows when this started, please speak up. Because I really want to find the solutions to this!

At last! More people are finding this!
I am the poster on reddit and I opened the github issue because I am going insane having my ass kicked by lvl 1.

It is certainly a bug.

Please upvote the reddit post and the github issue!

At last! More people are finding this! I am the poster on reddit and I opened the github issue because I am going insane having my ass kicked by lvl 1. It is certainly a bug. Please upvote the reddit post and the github issue!

This topic has been archived and can no longer be replied to.