lichess.org
Donate

Yet another site: Customize your bot opponent

Because the world is in such desperate need of another chess website...

https://buildabotchess.com/ is a hobby project that turned in to a major time sink, but I've had fun using it. It allows me to customize a bot based on Maia-3 that plays in a more human and interesting fashion. The basic idea is that it takes the Maia move distribution for a given turn, then ranks those moves according to 30+ adjustable parameters (maximize attacks, simplify when winning, prioritize pawn structure, favor development during the opening). Personality strength is adjustable: set to 50 cp it will only consider moves that are evaluated within 50 cp of Maia's most probable move, set to 300 cp it could sacrifice a minor piece in order to select its favorite move.

You can designate its opening repertoire and/or set it to follow Lichess database (or master database) and then revert to the engine once off book.

The bot's "thinking time" is adjustable as well, and it can be set so that the ELO drops and temperature rises as thinking time shortens. You can set it so it will play quickly (and less precisely) if you are in time trouble and it thinks it can flag you. It can pre-move if it thinks the move is forced (you can set the premove threshold low to practice premove exploits, or just turn it off if you find it annoying).

To use Maia-3, you need to select and download it to local storage, but you can use a Stockfish-based ELO-adjusted bot (Flounder) without downloading. You can use all of the personality controls with Flounder, but even with personality settings it still feels like playing an engine.

If you download Maia-3, you can also play Maia on your phone without an internet connection.

It's open source at https://github.com/bhale22/Blundermindwithbots, and I've reached out to Lichess, the MaiaChess/CSS lab, and IM professor Regan to try and make sure I'm not infringing on anyone's IP. But if anyone thinks I need to make any changes, I'd appreciate knowing sooner rather than later.

Screenshot 2026-10-05 180230.png

The original project was to build a site to help me with board visualization (highlighting hung pieces, showing potential forks & skewers...), and that is also up and running if anyone is interested at https://blundermindchess.com/ (it's really just the same site and uses the same GitHub repository- and you can switch back and forth between the visualization set up and the regular set up.

proboard.png

blundermind phone.png

If anyone checks out the site and enjoys it, please let me know.
Thanks to all of the Stockfish, CSS Lab, and Lichess gurus for making projects like this possible.
Ben

Because the world is in such desperate need of another chess website... https://buildabotchess.com/ is a hobby project that turned in to a major time sink, but I've had fun using it. It allows me to customize a bot based on Maia-3 that plays in a more human and interesting fashion. The basic idea is that it takes the Maia move distribution for a given turn, then ranks those moves according to 30+ adjustable parameters (maximize attacks, simplify when winning, prioritize pawn structure, favor development during the opening). Personality strength is adjustable: set to 50 cp it will only consider moves that are evaluated within 50 cp of Maia's most probable move, set to 300 cp it could sacrifice a minor piece in order to select its favorite move. You can designate its opening repertoire and/or set it to follow Lichess database (or master database) and then revert to the engine once off book. The bot's "thinking time" is adjustable as well, and it can be set so that the ELO drops and temperature rises as thinking time shortens. You can set it so it will play quickly (and less precisely) if you are in time trouble and it thinks it can flag you. It can pre-move if it thinks the move is forced (you can set the premove threshold low to practice premove exploits, or just turn it off if you find it annoying). To use Maia-3, you need to select and download it to local storage, but you can use a Stockfish-based ELO-adjusted bot (Flounder) without downloading. You can use all of the personality controls with Flounder, but even with personality settings it still feels like playing an engine. If you download Maia-3, you can also play Maia on your phone without an internet connection. It's open source at https://github.com/bhale22/Blundermindwithbots, and I've reached out to Lichess, the MaiaChess/CSS lab, and IM professor Regan to try and make sure I'm not infringing on anyone's IP. But if anyone thinks I need to make any changes, I'd appreciate knowing sooner rather than later. ![Screenshot 2026-10-05 180230.png](https://image.lichess1.org/display?fmt=png&h=0&op=resize&path=-NVrcoPV6HI_.png&w=413&sig=bbeb1c81dbe2730d427d25022bd4a7ee01483d9e) The original project was to build a site to help me with board visualization (highlighting hung pieces, showing potential forks & skewers...), and that is also up and running if anyone is interested at https://blundermindchess.com/ (it's really just the same site and uses the same GitHub repository- and you can switch back and forth between the visualization set up and the regular set up. ![proboard.png](https://image.lichess1.org/display?fmt=png&h=0&op=resize&path=6FV2KzwCvCXG.png&w=456&sig=bad0997b7fd54fdfcf589d5b70f21991fd77272b) ![blundermind phone.png](https://image.lichess1.org/display?fmt=png&h=0&op=resize&path=G1qfTaXeqNhu.png&w=216&sig=5c6239e2e190a6ad828e43e550d46e79e2503a05) If anyone checks out the site and enjoys it, please let me know. Thanks to all of the Stockfish, CSS Lab, and Lichess gurus for making projects like this possible. Ben

Why not create a number of playing levels and put them on lichess similar to these bots:

https://lichess.org/forum/general-chess-discussion/the-forgotten-maia-stockfish-hybrid-bots

If you ever do it, just remember to disallow bot challenges, lol

Why not create a number of playing levels and put them on lichess similar to these bots: https://lichess.org/forum/general-chess-discussion/the-forgotten-maia-stockfish-hybrid-bots If you ever do it, just remember to disallow bot challenges, lol

That would be fun- maybe I'll do that as my next project. I like making "Drunken Master" bots where 2/3 of the calls are to Maia at 2400 and 1/3 at 800 (so I never know if a move is an advanced move that I don't understand or just a stupid move), and overly-aggressive ones that use a base of 2600 but may lose up to 300 cp per move in order to choose an attacking or capture move. I haven't looked to see if bots like this already exist in the Lichess ecosystem, but if they don't, maybe I'll try and figure out how to set it up.
Thanks.

That would be fun- maybe I'll do that as my next project. I like making "Drunken Master" bots where 2/3 of the calls are to Maia at 2400 and 1/3 at 800 (so I never know if a move is an advanced move that I don't understand or just a stupid move), and overly-aggressive ones that use a base of 2600 but may lose up to 300 cp per move in order to choose an attacking or capture move. I haven't looked to see if bots like this already exist in the Lichess ecosystem, but if they don't, maybe I'll try and figure out how to set it up. Thanks.

Yeah with so many tunables (rather daunting to ordinary players) you'd be the one best suited for creating interesting personalities.

The added fun of getting such bots human ratings might be an additional incentive to try them out. Thx for a nice project indeed.

Yeah with so many tunables (rather daunting to ordinary players) you'd be the one best suited for creating interesting personalities. The added fun of getting such bots human ratings might be an additional incentive to try them out. Thx for a nice project indeed.

This is awesome and something I was planning to look into as well. It'll be nice to see bots that play more human moves, and with all the parameters this is one step closer. Well done!

This is awesome and something I was planning to look into as well. It'll be nice to see bots that play more human moves, and with all the parameters this is one step closer. Well done!

Thanks! And thanks for the feedback. I've been playing with the site for so long I don't think I realized how confusing it can be on the first visit. I wanted to make something where I could customize each aspect of play, but it definitely comes at a cost of a bit of a learning curve. I updated the quick-start bar some someone can just chose among some of the more interesting personalities, engine, ELO, and time control to start a game without opening up any of the more complex controls.

I'm setting it up to have a couple of bots to play against on Lichess, but also to let people customize their own bot on the site and save it locally on their browser so they can register and play their own bot on Lichess.

Thanks again,
Ben

Screenshot 2026-10-26 181200.png

Thanks! And thanks for the feedback. I've been playing with the site for so long I don't think I realized how confusing it can be on the first visit. I wanted to make something where I could customize each aspect of play, but it definitely comes at a cost of a bit of a learning curve. I updated the quick-start bar some someone can just chose among some of the more interesting personalities, engine, ELO, and time control to start a game without opening up any of the more complex controls. I'm setting it up to have a couple of bots to play against on Lichess, but also to let people customize their own bot on the site and save it locally on their browser so they can register and play their own bot on Lichess. Thanks again, Ben ![Screenshot 2026-10-26 181200.png](https://image.lichess1.org/display?fmt=png&h=0&op=resize&path=IQKBMJcJg9-N.png&w=864&sig=bc6887f682bb0417fe4e675e841d8bfdddf68fc5)

Nice, when is it launching? (the lichess part I meant)

Nice, when is it launching? (the lichess part I meant)

Thank you for showing the main limitation of today bots, the personalization are currently :

  • play an opening repertoire
  • modify the "mood" but more limited with modern engine or just impossible
  • layer on top to choose among the candidate move.

Why having a layer that choose among the candidate move not so good ?
Because each candidate move is not calculate in isolation but inside a sequence, so a move is ranked as "good" assuming you are going to continue the line, trouble is that when you choose inside a layer you are mostly not going to continue said sequence. So your evaluation of the quality of the move is off.
Of course if you take move A, the next move in the line will most likely be on top of the next suggested move ( depending on what the opponent play ) but the value would be limited . Like choose a defensive move : A is chosen because it looks defensive but the continuation is not .

Something like the compte d'anterroche

Video remove just imagine it :-)

Could not be done with a normal engine because after the first two pieces left hanging all the move would be a "take ", here the engine calculate inside the limitation like a human would do. I have to wait for the opponent to take first, let's create a structure that allow me to take back.

The compte is an extreme example but the same apply for rule like : don't castle, castle only on this side, attack from the side, favor the black square etc.
Very easy to do with a conditional engine, very easy to do for a human, will feel broken with a normal engine.

I remind that the use of the Camille Engine is free for lichess if they want to use it :-) .

Thank you for showing the main limitation of today bots, the personalization are currently : - play an opening repertoire - modify the "mood" but more limited with modern engine or just impossible - layer on top to choose among the candidate move. Why having a layer that choose among the candidate move not so good ? Because each candidate move is not calculate in isolation but inside a sequence, so a move is ranked as "good" assuming you are going to continue the line, trouble is that when you choose inside a layer you are mostly not going to continue said sequence. So your evaluation of the quality of the move is off. Of course if you take move A, the next move in the line will most likely be on top of the next suggested move ( depending on what the opponent play ) but the value would be limited . Like choose a defensive move : A is chosen because it looks defensive but the continuation is not . Something like the compte d'anterroche Video remove just imagine it :-) Could not be done with a normal engine because after the first two pieces left hanging all the move would be a "take ", here the engine calculate inside the limitation like a human would do. I have to wait for the opponent to take first, let's create a structure that allow me to take back. The compte is an extreme example but the same apply for rule like : don't castle, castle only on this side, attack from the side, favor the black square etc. Very easy to do with a conditional engine, very easy to do for a human, will feel broken with a normal engine. I remind that the use of the Camille Engine is free for lichess if they want to use it :-) .

@CamilleQueenOfTheBot I think you're trying to make an unsolicited sales pitch for your own engine in this thread.

Can't be sure though, it didn't read like English...

@CamilleQueenOfTheBot I think you're trying to make an unsolicited sales pitch for your own engine in this thread. Can't be sure though, it didn't read like English...

And I would like to remind that the use of the Camille chess engine for Lichess is free if they want to integrate it to the website @dundeel67 said ^

@CamilleQueenOfTheBot I think you're trying to make an unsolicited sales pitch for your own engine in this thread.

Or it just happen that I have some experience in making bot which is the subject of the thread, and it is hard to do so without mentioning the different type of engine .
There is currently only one conditional chess engine so hard to answer without naming it, but nothing prevent you or somebody else to develop one, that would be good for the chess world in general :-) .

I removed the video but I cannot redo it without a mention of the software because that take time, so just imagine a game where the bot left the opponent have 6 piece hanging at the same time and don't start to take before you take something first.

And I would like to remind that the use of the Camille chess engine for Lichess is free if they want to integrate it to the website @dundeel67 said [^](/forum/redirect/post/VXhOgR53) > @CamilleQueenOfTheBot I think you're trying to make an unsolicited sales pitch for your own engine in this thread. Or it just happen that I have some experience in making bot which is the subject of the thread, and it is hard to do so without mentioning the different type of engine . There is currently only one conditional chess engine so hard to answer without naming it, but nothing prevent you or somebody else to develop one, that would be good for the chess world in general :-) . I removed the video but I cannot redo it without a mention of the software because that take time, so just imagine a game where the bot left the opponent have 6 piece hanging at the same time and don't start to take before you take something first.