and has 0 comments

  When I was a child, several decades ago, A.E. van Vogt was one of my favorite writers, on the same podium with Clarke, Asimov, Bradbury. Later, I was intrigued of how people never seemed to remember him, while praising loudly the others. So I got hold of whatever I could find written by him and started reminiscing.

  The Voyage of the Space Beagle is more of a short stories collection than a novel, even if it has the same characters spacing out on the same ship. It contains four stories:

  • Black Destroyer - a large cat-like alien tries to get the better of the crew
  • War of Nerves - an alien civilization makes contact telepathically, with unexpected results 
  • Discord in Scarlet - a red alien tries to get the better of the crew
  • M33 in Andromeda - a galactic sized alien tries to get the better of the crew
  • there are also some connective tissue paragraphs detailing a power struggle in the crew itself

  I know why I liked him when I was a kid. The people are all science and knowledge and decisiveness. They are impressive and sure minded and solve every dire situation with their power of their cunning. They also casually discuss and sometimes enact acts of genocide "on principle alone" because some aliens are too ugly, dangerous or of a different morality. It's an all male crew, chemically castrated like in the military, with not the slightest thought women could contribute in any way. They fly between galaxies with the strong sense of their own intellectual and (if proven wrong) moral superiority. The author puts out there the idea that the universe is several million years old and it cyclically explodes to create another one. The distance between stars and galaxies, as well as their number are ridiculously underestimated. Other knowledge we now take for granted is absent completely from the book.

  So it's a strange combination of strong people and ideas that look and feel ridiculous, insensitive, uneducated and even psychotic. The main reason is that the stories were not written at time of publication, but much earlier, sometimes in the '30s and then the author was constantly fixing them and mashing them together in fix-up novels. The scientific and social change in these 100 years is shocking. Hell, I was gleefully enjoying this 40 years ago! It has the effect of making me see our modern behavior through different eyes. We are as sure now as we were then that we are in the right and that we are a pinnacle of something and everything other is weird and to be changed or avoided. What will we think of present selves a century from now? How pathetic are the five minute dramas that occupy our awareness today.

  Think of this book as a precursor of Star Trek: valiant humans exploring the universe. Only they are as far from Kirk as he was from Picard. Quite intriguing an experience which I recommend.

  Van Vogt died in 2000, but his last short story was written in 1976. He was never considered a great writer even in his own time, despite my own childish preferences, yet he made an impact. I probably am going to read something by him again, maybe not immediately. 

and has 0 comments

  At the end of Children of Ruin I was bemoaning the fact that Adrian Tchaikovsky moved things too far, too fast, and I was happy to see things go down a notch in the beginning of Children of Memory. Alas, it was all a scam, like those Star Trek episodes when nothing makes sense for the entire show only to get explained by a Deus ex Machina and a bunch of McGuffins at the end, but most of it happens in today's Earth or on some farm or Western setting.

  Where could the author have gone from a multi species confederation of faster than light travelers, capable of eternally sleeping during voyages anyway and, barring that, construct any body and transferring any kind of knowledge back and forth? Just like Stargate (most notably) which started with stranded humans at the mercy of all powerful aliens and ended up defeating gods and travelling between galaxies, the only way was back or some kind of lateral jump, like making episodic books that need not connect except through a common literary universe. I really hoped that would be the case.

  And I feel even worse because, while I hated most of the book, with its Memento-ish rehashings of the same events and with the author himself explaining obvious things over and over again, at the end of Children of Memory was a glimpse of the philosophical underpinnings of the story, and I liked those. Unfortunately those are just at the very end, making the rest of the book mostly pointless.

  Bottom line: I couldn't wait for the book to end fast enough, just to get to understand what was going on, because even if I had an inkling of that, I needed confirmation. And the ending was both philosophically satisfying and invalidating the entire beginning and middle of the the story. So to me it feels like a bad elevator episode of the series, like Tchaikovsky had one more book to write to make this a trilogy and, like me, couldn't wait to get it over with already. 

and has 0 comments

  Children of Time was split into two stories, one rich with characterization, focused on individual people, and another that felt a little bit like a nature documentary, but was pretty good, too. The science was stretched a bit, but in the end you get a subtle exploration of humanity via another species. Children of Ruin is the equivalent of explosion porn for action movies, though: more, bigger, louder, thus drowning out the parts that came close to what I liked in the first book.

  Adrian Tchaikovsky starts with another pair of obsessive scientists, but there is less focus on their actual personalities and struggles. They become the cause and catalyst of what he really wanted to write about: a civilization of octopuses and a complete new alien species - which of course also reaches sentience. Strangely enough, these take a lot of the book without - to me - providing any insight into our own species or telling me anything really interesting and new about cephalopods or making me feel a lot about any of the characters. In a sentence: this book is less careful, larger but coarser, faster but less inspiring.

  This doesn't mean I didn't like it. The story captivated me and I wanted to know where it goes and how it ends, so I read it really fast. Yet the ending left me a bit disappointed, as I understood that the pyrotechnics ended and the story stands in ruin. Children of Memory seems to go back to the roots a little from the little I've read already, I hope it stays more true to the original concept.

and has 0 comments

Saturn's Children feels like a book that started as something and turned out to be something else in the middle of it. Charles Stross writes something that seems very fashionable this days: a novel from the point of view of a robot. And not just any robot, but a humanoid female sex robot in a world devoid of humans with which to have sex with. Add some solar system travel, spy thriller mechanics, the occasional sexy comedy, philosophical musings about the meaning of life and identity, even what some people might consider light horror and you get this story.

  Even if I enjoyed it, the book is a mess. The style changes, the metaphors change from something from this decade to something that would only make sense in the far future populated exclusively by robots and back again. The mood changes, the motivation of the characters change. You can't even tell who is who anymore because of the multiple "soul chip" identity swaps. It is all written as a letter, but you can't tell who the letter is addressed to, since it also explains to us stuff that should be obvious to a robot.

  I found the premise of humanity simply fading away into extinction, no war, no plague, no asteroid, just people too distracted to have sex with other people, quite satisfying. I know that Futurama did it too, but it makes so much sense as a solution to the Fermi paradox. The basic idea of the book (once it crystalized into one) was intriguing, but you have to read half a book before it turns that way. The writing was competent, but not really engaging or inspiring. The technical aspects were the same.

  Bottom line: more of a vacation book. You get it and you may even read it to the end if the vacation lasts long enough, but not memorable or interesting enough to care about what happens next.

and has 0 comments

  I have to admit I had no idea what this book was to be about. I hoped maybe Jennifer Egan is related to Greg Egan, maybe A Visit from the Goon Squad is science fiction or at least something humorous. But it was about random characters (New Yorkers, no less) and their private lives and introspections. The writing was good, even compelling, but I really wasn't in the mood for it.

  Maybe I will retry later on.

and has 0 comments

  I grew up with cyberpunk novels and I loved them! It made me feel thrilled, scared and hopeful about the future at the same time. So when I heard that William Gibson, father of cyberpunk, published this relatively recently, I thought I was going to see how cyberpunk evolves through the ages, post '90s, but before the true Internet age.

  I rejoiced at that heavy read-a-paragraph-three-times-to-understand style and with a name like Pattern Recognition I was ready for a feast! Only... the main character is a marketing consultant for company logos. The thing is fantastical, but not set in the future. In fact, it reads more like fashion-punk than cyber anything!

  It gets worse! The antagonists are weird and ineffectual, the tension a mere nuisance for the main character rather than a driving force, the end goal finding McGuffiny McGuffinFace, the details boring and not interesting to me. At all! And when things get tough, you have a Deus ex Machina person stepping in and solving the problem. And every character is a hipster! This book, the first of a trilogy, sucks!

  I felt personally betrayed when reading something so antithetical to my interests, yet written in the familiar Gibsonesque punk style. I had planned a deep dive in Gibson's work and now I am terrified that I am going to reread the books I loved as a child and find them just as pretentious and empty, with characters that believe themselves much cooler than they actually are. Was Henry Dorset Case just another self absorbed hipster and I failed to notice it because the cyberpunk was cool and I was a kid?

  Bottom line: I did not like it.

and has 0 comments

  Children of Time spans several thousand years from the points of view of three main actors: the people on an ark ship, the ambitious scientist who wants to create new life and that of the new life. Adrian Tchaikovsky writes adequately the story of the intersection of interests of these parties while reminding me of some of my favorite books like Accelerando and Blindsight, with a pinch of Xenogenesis, but the book is not nearly as good as either of them. Pretty damn good, though!

  It might have something to do with my very high expectations from people reading the book and praising the hell out of it. The book is good, but not THAT good. Then there are the technical aspects which sometimes were so wrong as to take me out of the story. These are minor points, though.

  The main issue with the story is that you have a very personal point of view for the humans and something akin to a David Attenborough documentary for the lifeforms. The contrast is jarring. The scope of the book, though, and the ideas explored are very interesting and the story is very science fictions, in the sense that it asks that essential "what if?" question and asks it well. The answer is just a little dry, that is all. Also, under that pretext, the book is actually taking a hard look at our own history, future prospects and examines the nature of humanity. Just the stuff I like.

  As proof that I did like the book, despite my usual old man grumbling, is that I have put the other two books in the series in my to read list.

and has 0 comments

  At 60% of reading The Ninth Metal, the work Miskatonic was slided into the story. Then some vague visions of interdimensional doors and huge eyes and tentacles solidified the intention to have this as a "Lovecraftian novel". And it may well be, perhaps the entire series will be more, but as it stands, simply hinting at cosmic horror is not Lovecraftian and having less than 5% of your story be anything than random hicks in Minnesota doing whatever they usually do almost doesn't make it sci-fi.

  Now, Benjamin Percy's writing isn't terrible and slow paced stories that evolve slowly to give characters room to grow are not bad. I just felt that this book was a story of hardship in a family defined by local metal exploitation that a comic book writer felt the need to make superheroey and then (why not) Lovecraftian for a better selling position.

  But there were other things that made me dislike reading the book. One of them is the endless back and forth between present and flashbacks. This sucks in movie form, in a book format it's even worse. You have to mentally switch context from whatever you were enjoying (or trying to) to something else while the author is answering questions that you never asked. Second thing is the characterization. Most people were terrible clichés, most notably Wade. Not only does he just randomly die, no one, including his loving wife, even mentions him again. The bad boy who grew a solitary and strong-silent sense of morality, the ambitious woman regretting not having children and finding one to save, the innocent requiring saving, the psychopathic villain, the angry henchman, the waiting woman (complete with a worthless and disposable male companion while doing so), the annoying story of a vague but global catastrophe but focusing solely on a small American town and so on.

  Bottom line: I kind of liked the idea of the story, but I would have seen it compacted in the first three to five chapters of a single book. While tired of the "coasty" types of stories we are inundated with from cinema and TV, I didn't really want to fall into the other terrible formula: the small American town, truckers, miners and waitresses doing cowboy politics.

and has 0 comments

  We all know Frank Herbert for his science fiction work, mainly Dune, but before he became famous by publishing that, he wrote may short stories and novels. This collection published in 2013 holds four of the pre-Dune novels he never got to publish. I found the stories very Herbert, kind of dated and, except the first one's premise, non-sci-fi. Yet they show how the ideas that went through Herbert's brain evolved in time.

  The novels in the collection are: High-Opp, Angel's Fall, A Game of Authors and A Thorn in the Bush.

  High-Opp

  It shows the irreverent cynicism that the author had towards governments and social systems, but with a yet unpolished writing style. The story shows how a brilliant man, stuck in the middle of the social hierarchy of a communist-like government is betrayed and then manipulated by various groups. As the strong '50s male archetype he manages to outsmart and outfight everybody.

  Angel's Fall

  This is an interesting story about a damaged air vehicle floating on a river while enemies are trying to catch and destroy it. It's not sci-fi, as the air vehicle in question is a floatplane and the enemies are Amazon native tribes. But if you thought I was talking about the jungle part of The Green Brain, I would understand, as it's basically the same story without the sci-fi elements!

  A Game of Authors

  A weird story about an American journalist travelling to Mexico for a story, while being manipulated and attacked by various interested parties. It felt really dated and not well thought through. The characters were a joke, particularly the female ones. It was supposed to be a "brave resourceful man" story, but it felt like a "clueless American still doesn't believe people would try to kill him" thing.

  A Thorn in the Bush

  This felt like the least Herbert story of them all, even if it did focus on the internal drive and motivation of people. It's the story of an old madame who, having moved to Mexico and become respectable, tries to boss everybody based on her own past traumas and present delusions. Strange to have a female main character in a Herbert novel. It was not bad, but it was the farthest from sci-fi you will ever read.


With this I have ended reading everything Herbert wrote and I could find. From them all, Dune is of course on top of it all, but also Destination: Void (not the series, but the original book), Hellstrom's Hive, The White Plague and perhaps surprisingly Soul Catcher. There are lot of other good stories, but I loved these ones. Phew! It's over! :) It was nice, but a little tiring.

and has 0 comments

I am here to show you how to install whatever UCI compatible external engine you want and run it directly into the lichess.org web site. The feature is still in alpha state (that means they guarantee nothing and have a lot more work on it), but it works pretty well.

The main advantage of the Lichess design for external engines is that you configure one machine with the engines and the application running them, but you can access them from any device logged in to Lichess with the same account.

Long story short

Here are the steps you have to follow:

  • Go to fitztrev's lichess-tauri (Lichess Local Engine) GitHub project, to Releases
  • Download the newest version of the app (at the moment of writing version 0.0.8) for your operating system
  • Run the installer and run the application
  • Log in to Lichess
  • DO NOT click on the Install Stockfish 16 button
  • Download the version of Stockfish (or any other UCI-compatible engine) that works best on your machine
  • Only then click on the Or add your own engine → button
  • Choose a descriptive title for the engine
  • Click on the Select button in the Binary section
  • Select the binary file for your preferred engine
  • Now you can go to lichess.org and select whatever engine you configured in the Analysis/Study hamburger menu on the right side (bottom)

Short story long

Here are the steps you have to follow, with pretty pictures and extra information. Also a video at the end.

Go to the Releases of the Lichess Local Engine GitHub project

Go to this link: Releases.

Click on the title of the latest version (which should be on top).

Download the newest version of the app for your operating system

For this example, if you are on Windows, you should select the Lichess.Local.Engine_0.0.5_x64-setup.exe. 

Run the installer and run the application

Next, next, next:

Login to Lichess

In order for this to work, the application needs access to the Lichess API, which functions with OAuth2 to authorize you. All you have to do is click on Log in with Lichess and follow the instructions.

DO NOT click on the Install Stockfish 16 button

Now you should be in the Add a chess engine section. While you can just click on Install Stockfish 16 and not care about things, choosing the engine that works best for your machine will save you a lot of time and resources. Besides, if you are reading this and installing Lichess External Engine, then you probably already have some chess GUI and some engines that you've installed before.

That is why I recommend you just add those or download them and then add them.

Download the version of Stockfish (or any other UCI-compatible engine) that works best on your machine

For example, the Stockfish engine download site shows this:

For me, the best verison is the AVX2 version while the one embedded with Lichess External Engine is probably the most compatible one. Note that there are specific binaries for particular CPU architectures. Just choose the best one for you.

Click on the Or add your own engine → button and set up your engine

The only important part for now is the title, so choose one that is telling you exactly what you've got. For example Stockfish 16 AVX2, because as new engine versions come up, you will perhaps have more versions of the same brand. The architecture is also relevant, as you may forget in a year or so which one was best for your machine.

Now click on Select and choose the binary file for your preferred engine.

Go to Lichess

You can use this external engine in the Analysis page or in a Study, where the same analysis control is being used, but I recommend you use it in Study because whenever you change the analysis engine the page refreshes, which in Analysis is deleting the moves you've made so far. BTW, shameless plug: if you had installed the LiChess Tools browser extension, then the PGN of the moves remains stored in the textarea under the board in the Analysis page and you can just reload it, no harm done.

The choice for engine is in the options menu of the Analysis, which can be opened with the hamburger menu button on the bottom of the move list.

  

So under the ENGINE MANAGER section you can select which engine you prefer.

Possible issues

You are now ready to do analysis with the new engines. However, since it is in alpha, there are some issues that have not been resolved and you might find them annoying.

  1. the engine doesn't know when to stop for some engines
    • this works fine with Stockfish, but not with Rybka 4.1, for example. 
    • let say you open an analysis page, import a game, start analysing, then stop. You would expect the engine to stop, too, but it doesn't. Closing the window doesn't help, because it's the Lichess External Engine application that runs it and it doesn't yet have a Cancel Analysis button.
    • the same applies to selecting other moves in the Lichess move list. The engine keeps analysing the previous move and it fails to connect to refresh the current move.
    • the solution is to close and restart Lichess External Engine, then enable analysis.
  2. the page gets refreshed whenever you change the engine
    • I am sure they are going to change this in the future, but at the moment this means it's better to use Studies, as they persist the moves in the list. Or LiChess Tools, of course, which has a feature to remember the last PGN in the import box.
  3. there are some people complaining that only the main moves (moves in the mainline) are getting analysed, otherwise the engine freezes
    • this was not my experience. Yet, in some cases, when the position had a cloud cache, I had to press the + sign (that runs the local analysis anyway) twice. It may be my setup, since I am also running LiChess Tools, but it wasn't that annoying. Just press multiple times if you see it doesn't work.
  4. when going deeper on cloud evaluations, there is no visible feedback
    • this affects me directly, because the engine is running, the page shows nothing and LiChess Tools is trying to go deeper all the time. But the engine is working in the background, doing who knows what.
  5. the server is sometimes unavailable
    • 503 errors from the server. I am sure they are working on features and it will happen a lot. However the client code doesn't handle that very gracefully.
    • LiChess Tools has an option for that, ignoring the 503 and trying to reconnect the engine. However, use it sparingly, as you normally should not need it and more likely you have not started Local Lichess Engine.
  6. Lichess gets the evaluation for common positions from the cloud, not from your engine
    • you can fix this in LiChess Tools in several ways, but the recommended one is to use Ignore cloud data for evaluation

Conclusion

I am sure that all of these issues will be resolved in time. I am so happy to see this feature, as the normal JavaScript Stockfish engine is extremely slow compared to the version run natively on my machine. Of course, there might still be the case that you want to continue the analysis on dedicated tools, but so far I am so in love with Lichess that I want to do everything there and share stuff with others.

In order for the developers to solve these issues, feedback is VERY important, so don't be shy and leave comments of all the issues you encounter and all the features you want to see and all improvements you can think of.

I leave you with an older video from US Chess: John's How-To's: Using Engines on Lichess

[youtube:k4aXwk_VQVw]

and has 0 comments

Intro

The Grob Attack, named not after the word grob (coarse, rough. uncouth, rude, crude), but from Swiss IM Henri Grob, who analysed and played it his entire career, is defined by the opening move 1. g4?. That's not a question, that's the mistake sign for a move in PGN syntax. Lichess sets it automatically on any analysis as the computer evaluation goes to -1.5. The opening's Wikipedia page opens with a quote from IM John Watson who calls it "masochistic", a move that could only appeal to people who enjoy pain.

And yet, the statistics of this opening tell a different story altogether.

Stats

For the entirety of the games in the Lichess stats, the Grob opening loses more than it wins, but it's 47% wins vs 49% losses. And once you refine the search, things become more interesting. Let's remove the 400 rating player bracket. Suddenly it's 48-48. Let's remove the 1000,1200 and 1400 bracket: 49-47; it's winning! OK, maybe we should look at every bracket in isolation (and imagine Hans Rosling presenting):

  • 400: 40-54, a massive loss which influences the entire statistic, even if it can hardly be called chess at that rating.
  • 1000: 43-52, amateurs do not do well starting with such a move, obviously.
  • 1200: 46-50, at this level chess is real, but Grob still loses.
  • 1400: 47-49, same as the general statistic. What is going on?
  • 1600: 50-47, a massive jump!
  • 1800: 49-47, is this an opening that only works between 1600-1800?
  • 2000: 49-47, a rating I can only dream of for myself and Grob is still ahead!
  • 2200: 48-47, what?!
  • 2500: 47-47, at the highest level of chess, 2500+, people win as much as they lose with this opening.

From now on we will stick to all chess games over 1600 rating, for quality, and without Ultrabullet, which is not chess.

You will say: you can always start with the Grob and transpose into one of the more common openings. I mean, people probably don't play 1. g4 d5 - the Grob gambit, they don't follow with 2. Bxg4 c4 - the Fritz gambit, right? You would be wrong. That's the most played line and the line that Stockfish would go for. And guess what, the winning statistics change to 56-40 after this sequence of moves, even while the evaluation is -1.7!

But, you will say, you're probably not looking at the Masters database for a reason. I am sure there is a refutation for it! Well, yes, Stockfish seems to think so, yet at every level this opening seems to be slightly better for White. Even at 400-1000 rating level once it reaches this Fritz gambit position the win ratio is 56-42 while at 2500+ rating (2000 games) it's almost equal.

So why does it happen? Why is Grob so successful? I am going to tell you. It's because Black doesn't play c6 and doesn't protect the d5 pawn. Or they blunder a piece :) That's the prize in this opening. You either get d5 or pivot immediately to another plan as White, and you better defend it as Black. And most of the moves to maintain the advantage feel unnatural to humans.

Then why does White lose if this is so good? Usually because they lose tempi. This opening is like the movie Crank, you have to move or die. Nc3 is essential, d3 to free the bishop and if somehow Black blocks the h1-b8 diagonal, then Nf3 or Ne2 is again necessary. But will you have time to make three development moves after your queen did everything while Black developed? 

I will begin, unusually, in Grob style, with the Stockfish refutation. It's interesting, but hardly easy to "feel" it as a human being. I will then continue with the general plans. Then show you twelve different traps, the first being the main line!

Refutation

At the beginning of the game, right after 1. g4c6 is a completely dumb move as it loses all the Black advantage. It doesn't develop and blocks an important development square. What about after 2. Bg2? It still loses a point in evaluation because White can now protect the g4 pawn. But after 2...Bxg4 3. c4, the move 3...c6 is what Stockfish recommends while also being the most played move at 2500+ levels. It's such an ugly move, though. Who, having not been studying this opening, would move a pawn to block the natural development square of the knight, delaying king castling even more, moving another non central pawn?

  Well, one might argue that after the next best moves 4. cxd5 cxd5 the square is freed, so no biggie. But after 5. Qb3, Nc6 is still not available because b7 is hanging. Better defend it, right? Wrong! 5...Nf6 is the best move by far according to Stockfish, defending d5. So the continuation must be 6. Qxb7, right? Wrong again. 6. Nc3 for White, attacking d5, inviting d4. That move would be disastrous, leading to +4.5 eval since Black cannot save its rook. So what is the best move here? Nc6 is top 2, finally playable, but White will scoop that d5 pawn.

The second top 2 move is 6...e6. Another pawn move. The d5 pawn must be defended! Or rather, the diagonals to f7 and b7. The computer can't really decide on which of these moves is better, but more often than not it says e6 is superior to Nc6.

Can you reach this point and not consider this opening exciting?

Let's take a step back and check that b7 pawn. Can't we take it with 6. Qxb7? We push the knight to a more passive square which also blocks the Black queen's defense of d5, we gain a pawn, we block the rook since it has to guard a7, nothing can attack our queen. And indeed, it's the closest best move. However, the moves Nc3 and d3 are essential for White in most lines at some point or another. Let's be adventurous and kill the b7 pawn, followed by 6...Nd7 only move. The computer eval is still... -2. Stockfish is certain Black is better, because White has only developed a queen and fianchettoed a bishop, while Black has one center pawn, two knights and a bishop out and two open files for the rook.

7. Nc3 is the only move now. Develop as fast as possible. Black has the initiative, you have to take it back. If we take the d5 pawn now, with the bishop, we lose the bishop when the rook attacks the queen. Qc6 is met with Rc8 which either loses the queen or leads to mate.

So 7. Nc3 Rb8, attacking the queen and leaving the a7 pawn undefended. Should we play Qc6 like a computer or take the pawn? Not that much difference in eval, let's take the sucker! We are being greedy. 8. Qxa7 e5. Only move!

Why didn't e5 work a move before? Because our queen was attacking d5. Remember d5? Black has sacrificed the a7 pawn to protect d5 and we went for it!

But... d5 is still undefended. Both knight and bishop attack it, while the Black queen is blocked by the knight we force-moved there. Why not 8...e6, then? Wouldn't that free the bishop and also defend d5? Because Black's best play here is to try to coral the White queen. Black is still better with e6, but with less than a pawn. A move like e6 allows Qe3, escaping from the war zone into the safety of its troops. e5 on the other hand leads to a fork after Qe3, winning the knight. 

So we take another pawn! 9. Nxd5, so juicy! White is two pawns up, including d5, yet the eval is now -2.4 ?!

This line is not the Stockfish main line, but it's pretty damn close. All Black moves are computer generated while for White I've selected slightly (<0.2 eval difference) worst moves, but more greedy.

This position is amazing! Look at it! The Black queen side is devastated, White plays with just three pieces, both kings are in the center and with no prospect to castle any time soon, if ever, and the only centralized minor piece White has is about to get captured. It's, again, the only move to maintain the advantage, even if it exchanges a minor piece whilst two pawns down. Black cannot stand before two heroes on the board! So many unnatural looking moves just to keep that -2 advantage for Black. If you didn't read this post, you would never have made them, right? So, 9...Nxd5 10. Bxd5.

Black is now using its initiative to explode outwards. 10...Bc5, with tempo, attacking the White queen. The hunt begins! Qa4 and Qa6 are the only available moves, we use Qa4, best, for pinning a knight to the king and long-attacking the bishop. Rb4 is the best move, attacking the queen again and protecting the bishop in the process, yet the second best move is more positional: Bf5, taking the c2 square from a retreating queen. But we go with the best 11...Rb4. What is White to do?

The queen can retreat into a pin (Qa3), hide itself between Black pieces (Qc6) or stick itself right in, with Qa8, which is actually the best. All others are mistakes. This is the price of the hero queen: once cornered her skill and power does not matter, she will be hounded by minor pieces until she dies. The only solution, exchange itself for the enemy queen: 12. Qa8! There are tears in my eyes. I loved that queen! But the rook interferes again: 12...Rb8. Only move! Any other move brings the eval from -2.7 to 0 or better for White. The queen survives, as it retreats again at Qa4 and forces black to go with the positional move Bf5 instead or accept a draw by repetition.

14. Nf3 and White is finally getting out other pieces. Black's queen hunt failed, they castle short, bringing the king to safety. Yet our hero queen is not done. She follows the Black queen in a quest for mutually assured destruction: 15. Qh4. When having material advantage, exchange stuff. If the Black queen were to capture, the eval would go to +1 for White. So 15...Be7 16. Qh5 {attacking the bishop} Bg6 {attacking the queen} 16. Qh3 e4 {attacking the knight} 17. Bc6 {attacking another knight} Nc5 18. Ne5 Qd6 {attacking both knight and bishop if knight leaves} 19. Qg3 {defending the knight which defends the bishop} 

It's madness. After 20 moves the position looks like this: White has a queen and two minor pieces out. Every other pawn and piece on the board (including the king) have not moved at all. It's like White is playing blitz... krieg! Time is all that matters. If White loses tempi, they are lost. Black, on the other hand, is two pawns down, has all pieces out, the king castled, a pawn well advanced into White territory. Evaluation is now -3.5.

This is the "refutation" of the Grob Fritz gambit: a very positional computer-like play that no human would use or, if so, would actually enjoy playing.

The first chapter in the study below is the cinematic version of what I wrote above.

Plans

Every good opening has a plan. The Grob has some, but they are crude, coarse, uncouth, perhaps even rude. It counts on the fact that the opponent will either drop a piece, fumble their rook or trap their knight or even their queen. The goal of the opening is to equalize, winning the game is just the cherry on the cake. Here are some ideas for White:

  • invite the opponent to overextend pieces to places they are not so well suited for, then isolate or even trap them
  • harass the queen side, thus keeping the king side locked
  • prepare very long range attacks, from the fianchettoed bishop and the wayward queen, giving the opponent chances to hang pieces
  • always attack the rook in the corner, but the objective is not to actually take it, but to distract
  • once the light squared bishop is spent or neutralized, switch to attacks on the semi-open g-file
  • after the queen has stopped attacking by herself, the queen-side knight is essential to support her retreat or subsequent attacks
  • once material advantage has been secured, the position is probably bad, so exchange pieces as much as possible
  • this is NOT a king attacking opening, instead it is a royal killing spree attempting to get opponents out of preparation and into a bloody melee
  • there are two endgames with the Grob: the first phase, where we hope to distract and severely wound our opponent, then the actual end game, where we must convert the situation to a win

Check out the chapter Plans in the study above for examples of some of these ideas.

Traps and all kinds of fun

I've identified twelve traps, I am sure there are more, which stem from the Grob opening. There is a chapter for each of them in the study above, which is much better enjoyed on the Lichess website. There are some openings that really get one out of the Fritz gambit or even most ideas Grob, but I didn't see any reason why this opening would not be viable. Think of it as the Death Star: in order to refute it you must fly into a very tight canyon, defended by laser canons, and fire into an exhaust pipe, otherwise all is lost.

The master player who made use of this opening a lot, winning many games, is Michael Basman. Check out his games to see how a real pro does it.

Check out the Romford Countergambit chapters. It is a fun response to the Grob and a friend of mine has prepared a detailed video on it, which you can check out below, so expect a battle of openings!

[youtube:crRlcJNqk3s]

Hope you had fun!

and has 0 comments

Intro

  I developed an extension for Chromium based browsers that enhances and expands the functionality of the lichess.org web site. Called LiChess Tools, it has so many features that I am sure people are overwhelmed by them and don't know how to use them all. In this blog post I will explain what the Explorer Practice feature is and how it can help anyone master any opening. Let's dive in.

Long story short

  In order to do this you need:

  • a Chromium-based browser like Chrome, Brave, Kiwi and so on. (the latter also works on mobile devices while allowing browser extensions)
  • installing the LiChess Tools extension in it (don't worry, it's completely free, ad free, spam free, open source, MIT licensed)
  • go to the lichess.org website to the Analysis board or Study pages
  • open the Opening Explorer and click on the little button on the top left side to enable Explorer Practice

  Explorer Practice is exactly what it sounds like: it uses the information from the Explorer database to play the moves of the opposing side. This works for the Masters tab, for the Lichess tab (where you can select the type of game and player level range as well) and even for the Player tab, where you can train to play as or against a specific lichess player. You can even play against yourself! How cool is that?

  At the very end, when you reach a position not in the lichess database, a computer evaluation will reward you with a smiley for your efforts. This feature, like all other LiChess Tools features, are fully customizable on the Lichess Preferences page.

Short story long

  So let's go through a concrete example. As a total chess noob, I want to learn an opening that will take everyone by surprise. I will probably not find a lot of informational videos about it, since it's so rare no one knows about it. I will not find books or blog posts about it, either. All I have to go for is a name: Grob's Attack! It sounds so cool that I am ignoring its entry in Wikipedia that says:

International Master (IM) John Watson writes, "As far as I can tell, 1. g4 is competitive with 1. h4 for the honour of being White's worst first move. Against an informed or skilled opponent, it is simply masochistic."

  Let's follow the steps then. You obviously have a browser and you have installed LiChess Tools already. So let's open lichess.org:

  The simplest way to start is to go to the Tools menu -> Analysis board. Just clicking on the Tools menu gets us there. The same things work for a Study chapter, with the difference that the Study feature will preserve your moves (so you can create a repertoire as you play) and also it will show the Explorer moves. Using the Analysis board is considered more of a fun game, so the Explorer moves are hidden while Explorer Practice is enabled. Let's open Analysis:

  The Opening Explorer is a Lichess feature that tries to find the current position in the database and display the most common moves, winning statistics and recent notable games that reached it. You toggle it by clicking its button  or by the key shortcut E.

  Note the little tab-like button on the top-left corner of the explorer, the one with a target hit by an arrow (). It will toggle the Explorer Practice feature provided by LiChess Tools. You can also use the key shortcut shift-L, to align with the lichess L shortcut which toggles the computer evaluation.

  Before we enable Explorer Practice, though, we must choose our opponents. Since I am a noob I don't want to test my opening against grandmasters, only other amateur players, so I am going to have to select the range of players and type of game I am looking for. You do that by clicking on the small cog button on the top-right of the Explorer window (). This allows us to select, let's say, players up to 1400 rating and only in blitz games. You can, of course, leave all games on, but be warned, dedicated players often play bullet and ultrabullet to hone their skills and selecting those types of games will increase the level of difficulty, while also providing a lot more games to choose for.

  Now we are ready. Close the Explorer settings and click on the Explorer Practice button. As explained before, the list of move statistics disappears, but we can finally test our opening. Move 1. g4, which defines the Grob opening. There! Black moved automatically. And not some computer brilliancy, 20 moves deep and impenetrable even when they try to make a bad move. No, these are actual human moves.

  Once you finish the available moves, a smiley (sad or happy) will be your reward.

  Oh no! I am such a noob.

  Play again and again and again and learn how other people react to your moves. But sometimes you need some computer evaluation. Guess what? You can play the moves while the computer evaluation is running! It's not cheating, you are not actually playing, you are learning! Compare any move you make with the computer evaluation, learn what is best when you are not sure how to continue.

  In the end, remember that all feature of LiChess Tools are customizable in the Preferences page. You can turn them on, off or choose various parameters for them. For the Explorer Practice you can turn it on/off, but also can choose whether to show the smileys at the end of a run.

What then?

  If you trained the opening in a Study chapter, you now have a huge branching repertoire PGN chapter. You can start to analyse it for patterns. Use another cool LiChess Tools feature: auto evaluation. Just right click on any of the moves and select Evaluate terminating moves. The local browser engine will start analysing all of the last move of every branch and write a comment with the computer eval. Now you can see how successful you've been.

  Also, if take back the last move before you ran out, you usually get just one or a few games in that position. Looking at the rating of the players can give you an idea of your current chances against opponents of that level.

  Are you kicking ass? Maybe it's time to increase the level of your opponents! Or maybe it's time to select that friend of yours who always beats you at chess and train against his signature moves!

  Good luck and let me know how it went! I love to get feedback from people.

  If you got this far, I will gift you a warning and a bonus game from a practice session. The warning is that I've been playing around with Explorer Practice and it is very addictive! Be warned :) And now the game:

LiChess Tools is a Chromium-based browser extension (meaning Chrome, Brave, Edge, Kiwi - which also works on mobiles - and others, as long as they have a Chromium version equal or higher to 111) and recently also on Firefox and Firefox Android. The extension extends the functionalities of the lichess.org web site. This page is the user manual for the extension, cataloguing its current features and explaining how to use them.

All of the features below can be individually turned on or off from the LiChess Tools item in the user menu on the top right. Note that many of the options will be hidden until you toggle Advanced Preferences - these features will be marked with Advanced in the category section. Some preferences will only show up if logged in.

Get it for:

Preference values can be backed up as a downloaded file and restored from it. You can also reset preferences to default or turned them all off, then turn on the ones you are interested in. The blueish border around some preference values means they are part of the default configuration. A sepia coloring of a preference and a WIP added to the title means the feature is "Work in progress" and results are not guaranteed.

Note: the version number below is often the one if development, so there might be differences between what you have and what is listed here.

Here are the available features in LiChess Tools v2.4.24 in the order of decreasing approximate importance:

Crowdin translation

category: Languages
values: yes / no - defaults to yes

Crowdin is a community driven translation service that can help handle text translation. LiChess Tools has integrated translation from there (see https://crowdin.com/project/lichess-tools), but the only languages I can be sure of are English and Romanian. From the other supported languages, many of them are translated by machines, so they are probably really bad. If you have your Lichess in your language, but you can't stand the bad translation in the LiChess Tools strings, you have two options:

  • turn off Crowdin translation and the extension text will now be in English
  • go to Crowdin and help fix the translation

Obviously, I recommend the latter.

LiChess Tools team

category: Community
values: Hide forum entry / Forum entry last / No notifications - defaults to none
Needs log in

This will add a new forum entry in the forum list from where you can join the LiChess Tools users team or, once joined, you can participate in the extension community.

Note: you will be shown a notification to join the team. You can disable that just by visiting the team page, then it will not appear again on your device. The "No notifications" setting below does the same thing.

Options:

  • Hide forum entry - If set, this will remove the forum entry suggesting you join the LiChess Tools users team (or, if you joined already, link to it)
  • Forum entry last - If set, the forum entry will be placed last in the main list of forums (after Off-topic forum) 
  • No notifications - If set, this feature will never send notifications. If not set (the default value), it will add a notification to join the team. Just visiting the team page will also disable the notification, whether you join or not. This will also block any future team notifications I might choose to send into the future.

Being part of the team will be advertised on your public profile as well as on your friend's timelines. That is great for LiChess Tools, so if you want to support the extension, please consider joining.

I don't plan to spam anybody in the team, just use it to announce various changes to the extension. Which are a lot and happen all the time and might be construed as spam... OK, I will not spam you much. And also I would like to hear from you, maybe even (gasp!) form a community that will take this farther than my meager imagination could take it.

While in the team, feel free to talk to the other users, ask for features, complain, all the jazz. Use the team's forum as one would use the official Lichess Feedback forum. Only less divisive :). And don't worry, the team is called L1Chess Tools because Lichess forbids the text "lichess" in the team's name, not because I plan a L2Chess Tools team or whatever.

Although that is an idea...

Extended interactive lessons

category: Study
values: Play all variations / Show final score / Always show score Play again from where you entered Preview mode / Fast interaction / Give up button - defaults to Play all variations, Show final score

This feature may be the flagship of the extension, as it allows you to play an Interactive lesson chapter by going through all variations instead of just the mainline. The default lichess behavior is to only follow the mainline, considering all sidelines as bad. With the new behavior all moves in the PGN tree are good, while the ones that are not in the PGN are bad. You can mark the bad variations with glyphs (good move, mistake, blunder, etc.), for example, to indicate if a move is bad or good, but you can continue playing it to see why. 

There is a mechanism to choose what the computer will play next as your opponent. It uses the number of branches in 8 ply (4 chess moves for both players) to determine which is more probable. This value can be changed (see Next move probability depth feature) For example if you have something like 1. e4 (1. d4 d5 2. Nc3 (2. Nf3)) 1... e5 2. Nf3, the mechanism will see that there are two possible branches for d4 as opposed to one for e4, so it will choose d4 66% of the time. The probability can be changed manually by adding a comment in the move with the format prc:<number>, where the number is a percentage between 1 and 100. (ex: prc:90) Also, if set in the Transpositions behavior feature, the moves can be picked from moves following transposing positions. 

When hints are not provided by the study creator, one will be generated to show how many possible moves are available. The hint link will show a number of possible moves, if higher than 1.

There is also a system to compute accuracy when playing an interactive lesson by counting the good and the bad moves. This will be displayed as a percentage during or at the end of the lesson and can be turned configured by option.

The lichess UI remains the same, therefore the area in which to explain why any other move is wrong only appears on mainline moves. That is why this feature also adds context menu items (Explain why other moves are wrong and On-demand hint for the player) for nodes in interactive lessons to enable editing that information. For hints, you have to add them on the move before the move you need to make. And as usual, when a "bad" move is made (meaning a move not in the PGN), the explanation text to be displayed to the user will be taken from the first next move from the current position. Therefore in order to make this work you have to right-click that node and explain why bad moves are wrong. This might be a bit counterintuitive, as you may have several moves following the current position, but the explanation has to be set to the first next move.

This feature also adds a header like Extended Interactive Lesson over the edit controls specific to interactive lessons. They usually take a lot of space, so clicking on this header will hide/show them. This allows people to edit Interactive Lesson chapters just as comfortable as normal ones.

Options:

  • Play all variations - enables the Extended mode for interactive lessons, allowing you to play all variations with the computer picking random moves from the ones available in the PGN
  • Show final score - shows the score at the end of the lesson. One can disable this to reduce frustration or for other reasons. Mouse over the score to see number of good and bad (or asking for solution) moves.
  • Always show score - shows the score at every step of the lesson. This is disabled by default.
  • Play again from where you entered Preview mode - this feature is disabled by default. It remembers the position where you entered Preview mode for an Interactive Lesson and, when the lesson ends, the Play again button will take you back to that position instead of the first move in the chapter. Obviously, this only works for creators or contributors to studies.
    • warning, if you are playing for completion, like having a good score or using the lesson flow features, this will probably interfere with that.
  • Fast interaction - this will remove the delay between moves, making things faster. Also, the Good/Retry large tiles will be replaced by small symbols on the comment bubble: green checkbox for good move and red x for bad move.
  • Give up button - this will render a "Give up" button next to the hint in interactive lessons. Pressing it will be equivalent to making a bad move and going directly to the end menu of the interactive lesson.

Some of these options are also available in the action menu (hamburger button) of the Analysis board when in a study chapter that is of type Interactive Lesson. This allows to quickly enable/disable just these relevant settings.

Notes:

  • one can play all variations of an interactive lesson with multiple branches only with the LiChess Tools extension installed, so if you create such a lesson only people with the extension can enjoy it. It would be nice to let everybody know that in a comment if you share it.
  • asking to show the next move will show arrows of all possible next moves. Be warned that pressing the button is seen by the scoring system as a fail.

Extended interactive lesson flow

category: Study - Advanced
values: Sequential / Spaced Repetition - defaults to none

Work in progress! - this means use at own risk.

This feature allows you to play Extended Interactive Lessons variation by variation. When any of these options are enabled, the chapters that had variations played will have a small progress indicator in the chapter item in the chapters list. When all variations have been played a reset prompt will appear. You can also manually reset the played variations from the chapter edit dialog for the studies you can modify and from the reset button on the chapter item for the ones you can't.

Options:

  • Sequential - this will force playing extended interactive lessons variation by variation, in order
    • if you make any mistakes, you will start over
    • if you don't play from the very beginning of the variation, it will not count
  • Spaced Repetition - this will force playing extended interactive lessons variation by variation, randomly, based on success or failure
    • if you finish a variation successfully, the time until you can play it again will double
    • if you finish it with mistakes, the time until you can play it again will become two days
    • if you don't play from the very beginning of the variation, it will not count  
  • Both - this will behave as Spaced Repetition, but will take variations in order
    • the distinction is small, but it matters to some players to get the first variation that can be played

More options - only meaningful in the context of either or both Sequential or Spaced Repetition being enabled:

  • Avoid lines marked as mistakes - It makes sure that lines that contain moves of yours marked as dubious, mistake or blunder are not counted.
  • Hint excluded moves - In some lessons it's hard to understand which line has been picked as "right". You can use show solution first and then play it, but this will also help. When you have multiple options from your position, but only one is being trained, the hint will show the moves to avoid. So something like "Only one accepted move. Avoid b4, Nf3".

Notes

  • The default replay interval is one day.
  • This is a work in progress. It might not work exactly as you expect it. Please report any issues to me.
  • The currently selected Extended Interactive Lesson settings will be displayed when playing an Extended Interactive Lesson.

Ctrl-right to play random next move from list

category: Analysis, Study - Advanced
values: yes / no - defaults to yes

This feature will allow you to play a random move from the PGN by pressing Ctrl-right. There is a mechanism to choose what the computer will play next as your opponent. It uses the number of branches in 8 ply (4 chess moves for both players) to determine which is more probable. This value can be changed (see Next move probability depth feature) For example if you have something like 1. e4 (1. d4 d5 2. Nc3 (2. Nf3)) 1... e5 2. Nf3, the mechanism will see that there are two possible branches for d4 as opposed to one for e4, so it will choose d4 66% of the time. The probability can be changed manually by adding a comment in the move with the format prc:<number>, where the number is a percentage between 1 and 100 (ex: prc:90). Also, if set in the Transpositions behavior feature, the moves can be picked from moves following transposing positions. 

Ctrl-left works almost like the left key, going to the previous position, but in this case it will go to the position you came from, not from the previous position on the line you've jumped to.

Notes:

  • if set in Transpositions behavior, Ctrl-right may choose a move from another line, but made from the same position, which means that going "back" will go to the previous position in the current line, not the original one. Use Ctrl-Left to return to the position you jumped from. 
  • the keyboard shortcuts will be shown in the keyboard help popup if this feature is enabled (press Shift-? for the help popup - this is a native lichess feature)

Behavior of transpositions

category: Analysis/Study - Advanced
values: exclude if same line / don't add identical next moves / play moves from transpositions - defaults to none

This feature determines what a transposition is for other features that use transpositions. The options are:

  • exclude if same line - two identical positions in the same PGN will not be considered transpositions of one another if they are in the same line of moves (one came before the other) (see Highlight moves in analysis and Show next moves from transpositions)
  • don't add identical next moves - when showing next possible moves at the bottom of the move list, if adding them from transposing positions, don't add the same move twice (see Show next moves from transpositions)
  • play moves from transpositions - when picking a next move to play, use transposing positions as well (see Ctrl-right to play random next move from the list and Extended Interactive Lessons)
  • none - when none of the values above are selected, any two identical positions will be considered transpositions, the move list can show multiple identical moves if they are coming from different transpositions/lines and the extension will not pick next moves using transpositions.

Next move probability depth

category: Analysis (minor)/Study - Advanced
values: equal / one move / two moves / three moves / four moves / five moves - defaults to four moves (8 ply)

This configures the mechanism calculating the probability of a next move in the PGN (see Extended Interactive Lessons and Ctrl-right to play random next move from list). The default value goes 4 moves for each player to see how many branches follow. It will then weigh each next move in the list based on that. If you want to turn this off completely, just select equal, which means it will not look at following moves at all. 

Variation arrows from transpositions

category: Analysis (minor)/Study - Advanced
values: yes / no - defaults to yes

This feature is showing variation arrows for transpositions, as defined in the Transpositions behavior feature.

Next move behavior for variations

category: Analysis/Study - Advanced
values: Normal / Hybrid / Force choice- defaults to Normal

This feature will change how the next move arrow works when there are multiple variations to choose from:

  • Normal - normal behavior
  • Hybrid - this will highlight the variation list, asking you to make a choice. Trying again will just pick the selected choice in the list. On desktop you can cycle between choices with the Shift key or just click on the move you want. On mobile you can tap the choice you want.
  • Force choice - this will show a popup with the list of variations and transposition moves. (similar to the Chessbase behavior)
    • On desktop you can:
      • select the one you want with up/down arrows.
      • to execute a choice: Right-arrow key, Enter, the OK button or right-click or double-click or click on an already selected option
      • to close the popup: Left-arrow key, Esc, the close button or clicking outside the popup 
    • On mobile you can:
      • select the one you want with a tap
      • to execute a choice: tap a selected variation
      • to close the popup: tap the close button or outside the popup

Notes:

  • the variation list might be affected by the Transpositions behavior feature. You could get a list of transposition variations, but then the Shift key will not work to shuffle between them. This is (so far) by design, because transposition moves are not actually moves, they are jumps to other branches.
  • if you have enabled the Lichess game behavior Scroll on the board to replay moves, then that will ignore this feature, per design. So if you want to just quickly go up and down your move tree without having to enable/disable this feature, use the mousewheel or the equivalent touchpad moves.
    • note that this was enabled before with a separate feature that mirrored the native Lichess functionality. That tool has been removed in v2.3.136.

PGN Editor

category: Analysis
values: yes / no - defaults to yes

This feature adds a new entry in the Tools menu called PGN Editor. Clicking on it will open a text editor where PGNs can be pasted, manipulated and copied from. The PGN Editor is actually a popup over the page you are on. For technical reasons, for the Evaluate function to work you must be in an analysis/study page, therefore if you open PGN Editor in any other page it will jump to Analysis Board page and show the popup there.

On mobile devices, you first tap on a button to make it active, then tap again to execute the command.

Functionalities (short version):

  • Merge - combine all games into one (or few) PGNs
  • Normalize - transfer all moves after transpositions to the first instance of the position
  • Denormalize - clone all variations from transposing positions into all instances of those positions
  • Split - split all variations into their own one line games
  • Search - find games with particular characteristics
  • Result - remove all games that were not marked as found by Search
  • Cut - remove things
  • Evaluate - add evaluation comments to the final moves in every variation
  • Extract - extract custom information from existing PGN as a downloaded file
  • Count - display the number of games and how many moves in the PGN
  • Cancel - cancel currently running operation
  • Copy/Undo/Redo/Clear/Upload/Download - operations with the content of the PGN Editor

Functionalities (oh, boy!):

  • Merge - this button will take multiple games in PGN format and merge them into as little games as possible. For example, all games starting from the same position can be merged into one. Also, games that start from a position present in another game will be merged there. Games starting from positions not present in the others cannot be merged.
    Example: 
    Original PGN content:
    1.e4 e5
    
    1.e4 d5
    
    After merge:
    1. e4 e5 ( 1... d5 ) *
    ​
  • Normalize - this button will, for each game in the PGN, take all moves made from a particular board position in any variation and group them in the first occurrence of that position.
    Example:
    1. e4 (1. d4 e5 2. e4 a5) 1... e5 2. d4 h5 
    
    (After both paths e4 d5 d4 and d4 d5 e4 the same position is reached (a transposition). In the original PGN the first path move from the common position is 2...h5 and in the second path 2...a5.)
    
    Normalizing this will result in:
    
     1. e4 ( 1. d4 e5 2. e4 ) 1... e5 2. d4 h5 ( 2... a5 ) 
    
    (both a5 and h5 moves from the mainline position, while the d4 path will stop at the common position, with no following moves.)
  • Denormalize - this button will, for each game in the PGN, take all the moves made from a particular board position and add them as actual moves in the PGN. The purpose is to create all possible lines as actual moves.
    • This is the reverse of the Normalize function, but Denormalizing and Normalizing doesn't yield the original PGN.
    • Denormalization will increase the size of your PGN.
  • Split - this button will, for each game in the PGN, split each variation into their own games. Example: 1. e4 e5 ( 1... d5 ) will be split into 1. e4 e5 and 1. e4 d5
    • This is the reverse of the Merge functionality above.
  • Search - this button will prompt for a string, then search the games for it.
    • The string can be part of a FEN or a PGN (wildcards * for anything and ? for one character are supported)
      • when searching for a PGN, the original PGN is searched as well as with comments and annotations removed and then with move numbers removed, see Examples
    • Another option is to search for PGN tags, like this: Black=totalnoob69 or opening*=Gass.
      • *= means contains, the tag name is case insensitive
    • You can search by index like this: Index=3 (the third game in the list)
    • You can also search the invalid games like this: Invalid (this marks invalid games as found)
    • Yet another option is to search for ply (half-moves), like this: ply=10, ply<30, ply>15
    • Searching is possible on eval comments generated by Evaluate or exported in the comments (format [%eval...]), like this: eval=1, eval>0.4, eval<-1.5
    • You can search for games containing clock values (%clk or %emt) with Clock
    • You can search for games containing shapes (arrows or circles) (%cal or %cls) with Shapes
    • The games that match will have a new PGN tag added (called Found) in the text area. Searching will remove previous search Found PGN tags. Use Result to keep just the found results. Use Cut with "result" to remove the found results.
    • Do not use full FEN strings, only the first four elements (board, who's turn it is to play, castling and en passant square) are supported (no clock values)
    •  Examples:
      • searching for rnbqkbnr/pp2pppp/2p5/3p4/2PP4/5N2/PP2PPPP/RNBQKB1R b KQkq - 1 3 will fail (because it has half clock and ply - 1 3 - at the end)
      • searching for rnbqkbnr/pp2pppp/2p5/3p4/2PP4/5N2/PP2PPPP/RNBQKB1R b KQkq would work for the games that reach that position
      • same for:
        • rnbqkbnr/pp2pppp/2p5/3p4/2PP4/5N2/PP2PPPP/RNBQKB1R - FEN search
        • pp2pppp - FEN search
        • rnbqkbnr/*/2p5 - FEN search
        • 5?2 - FEN search
        • ECO=C40 - PGN tag search
        • c4 c6 - PGN search
        • ply=10 - search games with exactly 10 ply (5 moves for each side)
        • ply>30 - search games with more ply than 30
        • ply<20 - search games with less play than 20
        • eval>1.5 - search games where a final move has been evaluated to more than 1.5 eval
          • note that if you have several branches in the games, it will show as found if at least on branch terminates in a matching eval.
      • for a game that looks like this: 1. e4 {some comment} ...c5 2. c3 , all of the following PGN search patterns will find it:
        • 1. e4 c5 2. c3
        • e4 c5 c3
        • e4 * c3
  • Result - this button will remove all games that are not marked with a Found tag and remove the Found tag from those found. The flow is: you press Search, it finds some games and marks them with a Found tag, you press Result and only the found games remain in the text area.
    • Warning! If you have not searched for anything before (or if you press the button twice), it will clear the text area
  • Cut - this button will remove things based on the prompt you give it:
    • if it contains "tags" it will remove all tags from games
    • if it contains "comments" it will remove all comments from games
    • if it contains "annotations" it will remove all annotations from games
    • if it contains "result" it will remove all found games (the opposite of the Result functionality)
    • if it contains "ply <some value>" it will remove everything after the specified number of ply (half moves), on every branch, in every game
    • if it contains "eval<operator><some value>" it will remove branches that have that particular eval, on every branch, in every game (i.e. eval<3 will cut everything with evaluation less than 3)
      • operator can be < > or =
      • this works with the comments for evaluation from the Evaluate command! It does not evaluate the position itself. 
    • if it contains "eval" by itself it will remove evaluation markers from the PGN (in the format [%eval ...]
    • if it contains "junk" it will attempt to eliminate from the text what appears to not be a valid PGN game. Use it after copy pasting text from chess webpages when you want to clean up the result.
    • if it contains "clock" it will remove move time markers from the PGN (in the format [%clk ...] or [%emt ... ]
    • if it contains "shapes" it will remove move arrow and circle markers from the PGN (in the format [%csl ...] or [%cal ... ]
    • the above patterns can be combined
    • Example: tags, comments, annotations, ply 10
  • Evaluate - this button will evaluate the end positions of each game in the PGN, adding an eval: <value> comment
  • Extract - this button will extract various types of information based on your prompt
    • if it contains "fen" it will extract the FEN for each move in each game. Games will be defined by their index, followed by the list of unique FEN positions
  • Count - this button will count the number of games and total number of moves in them
    • This is done automatically after most operations.
  • Cancel - this button will cancel the current operation (for example when trying to merge tens of thousands of games, it may take a while)
  • Copy - this button copies the content of the text area in the clipboard
  • Upload - this button will ask for a file to upload to the text area (dragging files and dropping them directly to the text area works as well)
  • Download - this button will download the content of the text area as a pgnEditor_<currentTime>.pgn file
  • Undo - this button will undo the changes in text area (equivalent to pressing Ctrl-z)
  • Redo - this button will redo the changes in text area (equivalent to pressing Ctrl-y)
  • Clear - this button will clear the text area as well as the entire undo/redo history.

Notes:

  • Games with no moves and no tags will be removed. Games with moves and no tags (example: after Cut "tags") will have an Event tag with the value "exported by LiChess Tools". This is there so that various import software, including Lichess studies, process the list correctly, not an unnecessary blurb.
  • Normalize changes the flow of the moves. Don't expect the normalized PGN to have the same structure as the original. This functionality is particularly for grouping the moves from a particular position in one place.
  • Tag search will search the exact string in the tag, but will ignore whitespaces. Use the *= syntax to search for containing strings (i.e. opening*=Gass)
  • I am thinking of a meta-search option, where you can search for pins, sacrifices, pawn structures, etc., but I don't know how many people use that. Let me know if you are interested.

Enhanced PGN import

category: Analysis
values: yes / no - defaults to yes

Another important feature of LiChess Tools, this one makes changes to the import mechanism in the Analysis board page. You can now import multiple PGNs at the same time and they will get merged into a single one. It is great for creating repertoires, analyzing the games of a specific player or creating Extended Interactive Lessons. From the Analysis board you can go to options and turn it into a study. Note that the recommended way to perform PGN operations is now the PGN Editor.

As part of this you will also get the Escape key functionality for the FEN and PGN inputs, clearing the focus and allowing key shortcuts again.

Notes:

  • the import mechanism in Analysis board ignores comments from the PGNs. This is a lichess limitation and to get around it I would have to rewrite the entire thing. Use PGN Editor for work with commented PGNs.
  • the import in Analysis board is different from the one in Studies. The one in Analysis board is client based, while the one in Studies is on the server. That is why I can only alter the one in Analysis board.
  • there is no logical limit to how many PGNs to import, but the Analysis board has a limit of about 5000 moves. Also, the API to turn it into a study has a size limitation, so if you try to turn a huge analysis to a study and it fails, know that it is too big. Highlighting moves on huge PGNs also is slow. So use with care.
  • From v2.1.21 the merge mechanism will check if the PGNs start from different positions and only merge what starts from the same position. Previously the merge seemed to be working, but it made no sense from the standpoint of PGNs, resulting in an invalid PGN that cannot be loaded.

Options for PGN exports

category: Analysis/Study - Advanced
values: Export clock values / Export computer evaluation / Export PGN tags Export arrows and circles - defaults to all

This feature lets you control what kind of PGN you get from several LiChess Tools exports:

Friends box

category: Friends
values: Default / Menu / Open / Hidden - defaults to Menu
Needs log in

This has evolved a lot. Originally it was automatically opening the friends box, but then several requests came that complained about the placement of the friends box and how distracting it was. So the current version of the feature can either:

  • Default - the default behavior of the friends list: stays in the bottom-right corner, only updates when opened, which requires a user click.
  • Button- the friends box is removed and replaced with a friends button, similar to the Notifications one. It will update in real time with the number of friends online and will change color when any one of them is playing.
  • Menu - the friends box is removed and replaced with a friends menu. It will update in real time with the number of friends online and will change color when any one of them is playing. It will also show the number of playing friends in a small blue square.
  • Open - the default behavior of the friends list, but it will open automatically when loading the page
  • Hidden - the friends list will disappear completely

Notes:

  • clicking on the main menu item directly will open the friends page, but not on mobiles
  • when the width of the page goes under 972px, menus are grouped under a hamburger menu. The Friends menu will disappear and become a button in that case.
  • playing friends will have the time control icon on the left of their name in the friends menu.

Live friends page

category: Friends
values: yes / no - defaults to yes
Needs log in

The default lichess behavior is to load whatever list of friends you have and then leave it at that. With this LiChess Tools feature the friends list will be updated in real time, while also allowing filtering by who is online, who is playing, who is active (played in the last year) and (only if player voice alerts are enabled) which player is muted. 

Each player will have a TV icon as well and (only if player voice alerts are enabled) a mute/unmute button to include them in the alerts. (see Sound and voice alert with friends start playing). This functionality extends to blocked players and favorite opponents pages. 

This will also show the total number of friends as the title of the friends page.

A link to the players that follow you - a page that is only enabled by LiChess Tools - is also available in the live friends page.

Sound and voice alert when friends start playing

category: Friends
values: Ultrabullet / Bullet / Blitz / Rapid / Classical / Standard only- defaults to none
Needs log in

This feature will beep and spell out the player name and type of game they started. The type of the game can be chosen from the values. The definition of the game type comes from lichess, which assumes a typical game will be around 40 moves.

You can also choose which specific players to have the alert for, by going to the friends page and clicking the mute buttons. (see Live friends page)

If you select Standard only, then the alerts will only be sounded for the Standard variant of the game.

Notes:

  • Chromium (and other) browsers disallow sounds from page load until the user does something like click on the page. In case an alert is attempted and audio is not allowed a red icon will appear next to the top buttons, which will disappear once the audio is allowed again.
  • The audio icon is part of lichess, which will also display it once sound is attempted but not allowed. At this time, the lichess icon will NOT disappear unless you click on it, different from how LiChess Tools uses it for alerts.
  • If you are playing a game on another tab, the sounds will not be played if the Quiet mode on all tabs feature is enabled.

Practice against moves from Opening Explorer

category: Analysis/Study
values: yes / no - defaults to yes

This is another great feature that allows you to play against whatever is selected in the Opening Explorer. Select masters to play against the best players, select Lichess and select the range of player to train against and select specific users to test your strategies against their played games. The feature can be turned on/off not only from Preferences, but also from the Explorer config screen.

In order to use this feature you need to go to the Analysis board or a study, open the Explorer and click on the icon next to the Masters tab, the one that looks like an arrow hitting a target.

One extra feature of this tool is making a random Explorer move if clicking on the total row on the bottom. It effectively makes a move as if Explorer Practice is enabled and it's the computer to move.

The feature is unavailable in the Analysis screen of a running correspondence game.

Notes:

  • you can toggle Explorer Practice by clicking on the arrow in the target button, but also with shift-L, to make it easier to switch between computer evaluation and the practice mode
    • the keyboard help popup shows this shortcut if the feature is enabled
  • by default the moves in the explorer window will get hidden in Analysis board, but not in studies. The motivation being that one is more like a game, with no lasting effects, the other is research. See Explorer Practice options in order to change that.
  • if the Show emojis when out of moves feature is enabled in Explorer Practice options, then at the end of a run, when there are no more moves available in the Explorer for the feature to make, a quick computer analysis will be run to show you a smiley (happy or sad).
  • When Explorer Practice is running, the normal Practice button will be hidden, in order to avoid both confusion and pressing on it accidentally on mobiles when wanted to go back to start.

Explorer Practice options

Options for the Explorer Practice feature:

  • Show emojis when out of moves - set by default - will run a short computer analysis when out of moves in Explorer Practice, then show an happy/sad emoji based on the eval.
  • Click Explorer Σ to make a move - set by default - clicking on the Total row in Explorer will make a random move, weighted by the probabilities of the move (basically a one turn Practice move)
  • Show opponent name - disabled by default - this will show a name next to the move made by the computer, giving you a hint about who played the same move in the same position
  • Explorer data in Study - set by default - this will show explorer rows while doing Explorer Practice in a Study page
  • Explorer data in Analysis - disabled by default - this will show explorer rows while doing Explorer Practice in the Analysis board page

Highlight moves in analysis

category: Analysis/Study - Advanced
values: Last move in each variation / Not commented last moves / Transpositions to current move / Highlight board when out of main line / Highlight pieces when out of main line / Highlight variation depth - defaults to Last move in each variation, Not commented last moves, Transpositions to current move

This feature will highlight moves in the analysis move list. Each option highlights a specific thing:

  • Last move in each variation - for each branch, highlights the last move
    • the highlighting will be done using a superscript capital L. For the moves made by the opposing side to the orientation one, the L will be mirrored.
  • Not commented last moves - for each branch, highlights the last move that has no comment and is not a mate
    • the highlighting will be done with a red underline
  • Transpositions to current move - highlights positions that are identical to the current one in the same PGN (see Behavior of transpositions to change what the extension considers a transposition)
    • the highlighting will be done with a light green background for the transposing lines
  • Highlight board when out of main line - dims the board a little when moving out of main line (similar to chess.com)
  • Highlight pieces when out of main line - dims pieces that moved from the mainline position (similar to Chessmaster 10th edition)
  • Highlight variation depth - it will change the display of the moves so that they have different colors depending on the variation depth level.
    • this replaced the Move colorizer theme that existed until version 2.3.
    • Warning: this may have adverse performance effects on really large PGNs (1000+ moves)
  • Highlight checks to kings - highlights moves that place a king in check
    • the highlighting will be done by a dashed yellow underscore

Extra context menu options

category: Analysis/Study
values: Copy branch as PGN / Engine evaluation for last moves / Highlight all transpositions / Remove superfluous / Show context menu when no moves / Reorder variations / Position info - defaults to Copy branch as PGN, Engine evaluation for last moves, Remove superfluous, Show context menu when no moves, Reorder variations

This feature will add extra options to the Analysis board/Study move list context menu. The options are:

  • Copy branch as PGN - this works in Analysis board and Studies and turns all the previous moves of the line you are in, plus all the branches after the move, into a PGN in your clipboard.
    • If you press the Shift key when clicking on Copy branch as PGN the copied PGN will start from current position, not from the beginning of the original chapter.
    • If you press the Control key when clicking on Copy branch as PGN each variation branch will be copied as a separate PGN game.
    • If you press the Alt key when clicking on Copy branch as PGN then the PGN will get copied only to the current position.
    • You can use it to split large PGNs by copying variations into their own chapters, then maybe deleting them from the original one.
  • Engine evaluation for last moves - this works only for Studies, because it involves move comments. It will go through all of the uncommented last moves and create a comment in the form eval:<evaluation> using the local computer engine. The evaluation will stop at the engine depth selected in Preferences (see Custom analysis engine depth).
  • Highlight all transpositions - this works for both Analysis board and Studies and highlights all moves that have transpositions. You can configure what a transposition is in Preferences (see Behavior of transpositions)
  • Remove superfluous - for purposes of saving space, this removes the following entries from the context menu:
    • Annotate with glyphs - there is a button for this under the board
    • Comment on this move - there is a button for this under the board
    • Copy variation PGN - LiChess Tools already provides a better version
    • If Auto expand is set (thus disabling the Lichess collapse/expand functionality):
      • Expand variations
      • Collapse variations
  • Show context menu when no moves - this allows for showing the context menu when there are no moves in the tree. When the board starts from a FEN position, there is a little "..." element that you can right-click. When the board is completely empty, there is a row that highlights when you hover and you can right-click for the context menu.
  • Reorder variations - this will add "Bump up/down" context menu actions for analysis/study/game moves, when you can move a variation up and down in the list of its siblings. "Bump up" will not appear for the first child of a node and "Bump down" will not appear for the last child of a node. The Bump options will always be available on the starting node of the variation only.
    • example: 1. e4 e5 (1... d5 2. f4) (1... c5 2. f4) (1... b5 2. f4)
      • on 1.e4 there will be no bump options because it has no siblings (there is only one move from the previous position). Same applies to the 2. f4 moves, regardless of their branch, since they are the only moves from the previous position.
      • on 1...e5 there will be no Bump up, since it's the first variation already, but there will be a Bump down, which will swap it with 1...d5, which becomes the main line.
      • on 1...d5 there will be a Bump up which appears to do the same thing as Promote, but Promote also destroys the force variation of the first child. There will also be a Bump down.
      • on 1...c5 there will be both Bump up (which swaps it with 1...d5) and Bump down (swapping it with 1...b5)
      • on 1...b5 there will be a Bump up (against 1...c5), but no Bump down, since it's the last variation from the previous position already.
  • Position info - this will add a menu item that will give you some meta data related to the selected position, like how many moves to get to it, how many moves following, how many branches, etc.

Move assistant

category: Analysis/Study
values: yes / no - defaults to yes

This feature will add a little eye icon button () in the computer evaluation window, next to the settings. Clicking this button will enable the Move assistant, which will show, when selecting a piece, the evaluation on each possible destination square.

The colors represent the quality of the move. Green is good, Red is bad, Yellow is not recommended.

  • The small circle inside the destination square represents the evaluation relative to the worst and best possible move.
    • This means that if the best move achieves equality and the worst move loses 0.2 pawns, the first one will appear green and the other red.
    • This is the less important metric, so it's not that serious that you can't see it when the destination square is a capture. 
  • The border color of the destination square represents the inaccuracy/mistake/blunder metric.
    • While this is still a gradient, anything that will cause a 3 pawn loss from the best move will appear as red, 2 pawns will get you orange, 1 pawn will get you yellow and only under you will get green.
  • The bar inside the border represents the WDL (win-draw-loss) chances after making the move. Again, red is loss, green is win and yellow is draw.
    • Take these with a grain of salt, as the WDL values of Stockfish are not that relevant.

This is not meant to replace, but be complementary to the computer analysis. Move assistant enabled value is persistent on page reloads.

Once a piece is selected, the background engine will run using the configured thread count and hash - for 90 seconds and then stop. During that time the color of the squares will be updated as the evaluation changes. 90 seconds corresponds to a depth of about 20 on my older laptop in a middlegame position. Unselecting pieces will stop the processing.

Obviously, this consumes processor power, so if you are on a mobile device or a laptop it will consume battery. Running both local computer analysis and Move assistant will use CPU for both processes. Opening multiple analysis browser tabs will use resources for each tab in which a piece is selected.

Sometimes destination squares will not be colorized. For example, this is the case for mate threats, where moves that do not interfere with the mate will not be evaluated. 

Custom analysis engine depth

category: Analysis/Study - Advanced
values: a number representing the depth - defaults to empty

This feature will allow you to set a depth level for the computer engine. If the current move has a smaller depth level (let's say it was cached in the cloud with that level) it will start the local computer evaluation. Once it reaches the set depth, the engine will stop. You can restart the analysis by pressing the little + button next to the computer engine depth indication.

This value can also be changed from the analysis options in Analysis board or Study.

This feature is also used as the level at which to consider evaluation done for the Engine evaluation for last moves option (see Extra context menu options - Engine evaluation for last moves and PGN Editor - Evaluate)

This feature is also used in Practice, where it controls the level of play (See Custom analysis engine options)

Custom practice engine depth

category: Analysis/Study - Advanced
values: a number representing the depth - defaults to empty

Same as Custom analysis engine depth, but only applies to Practice mode. If not set, the level will be taken from Custom analysis engine depth. And, of course, if Custom analysis engine options Apply in Practice mode is not set, it will have no effect.

This value can also be changed from the analysis options in Analysis board or Study.

Custom analysis engine options

category: Analysis/Study - Advanced
values: Ignore cloud data for evaluation Ignore cloud data for external engines Infinite analysis for external engines / Apply in Practice mode / Fix external engine 503 errors - defaults to none

This feature controls the behavior of the analysis engine used in Analysis board and Studies.

Options:

  • Ignore cloud data for evaluation - Use this option to never show computer evaluations from the cloud. For example if you want to not see evaluations over a certain level or in practice mode. You can also toggle this on/off from the Analysis board hamburger menu.
  • Ignore cloud data for external engines - just like the one above, but only applies when you have configured an external engine. This makes sense, as the evaluation in the cloud is computed by Stockfish and you might have another engine altogether. The Analysis board hamburger menu will only show this feature when the current active engine is external.
  • Infinite analysis for external engines - remove the maximum depth cap for analysis when an external engine is used
  • Apply in Practice mode - Use this to apply both the custom engine depth (or custom practice engine depth - if set) and the no cloud option before in Practice mode. This means you can play against a computer of your own level and ignore cloud and table bases. You can also toggle this on/off from the Analysis board hamburger menu.
  • Fix external engine 503 errors - When you configure external engines, you sometimes get 503 errors, meaning that the API was not reachable. This might be because you haven't started your Lichess Local Engine utility, but more often it's just a timeout. This will disable the alert and just silently retry after 5 seconds.
    • You probably will never need this, as the reason it was created was to fix a bug that had a different solution. But it might still be helpful if you have unreasonable timeouts.

LiChess Tools analysis engine threads

category: Analysis (minor)/Study - Advanced
values: a number representing the number of threads - defaults to 1

LiChess Tools uses a local analysis Stockfish engine for various features, like Move Assistant or PGN Editor. This configures how many threads to use for that engine. Note that this value applies per open tab, so if you have Move Assistant enabled in Analysis board, for example, and select one piece in multiple tabs, the number of threads will multiply with the tab count.

LiChess Tools analysis engine hash

category: Analysis (minor)/Study - Advanced
values: a number representing the number of megabytes in the hash - defaults to 128

LiChess Tools uses a local analysis Stockfish engine for various features, like Move Assistant or PGN Editor. This configures how many MB or memory to use for that engine. Note that this value applies per open tab, so if you have Move Assistant enabled in Analysis board, for example, and select one piece in multiple tabs, the size of the hash will multiply with the tab count. 

Show next moves from transpositions

category: Analysis/Study - Advanced
values: yes / no - defaults to yes

When you get to a certain position in the PGN which has transpositions, the next moves from those transpositions will be displayed under the move list, just like for a fork into multiple variations. You can configure what a transposition is, as well as if you want multiple identical moves to be shown or not and if the moves in this list should be considered by Ctrl-right and Extended Interactive Lessons in Preferences (see Behavior of transpositions)

Remember local computer evaluation

category: Analysis (minor)/Study - Advanced
values: yes / no - defaults to no

Work in progress! - this means use at own risk.

This experimental feature will store in the browser database the local computer evaluation values and display them when found. When/if the storage gets past the allowed quota, the move database is cleared completely, so new moves can be added. This is created for people with strong engines who want to not lose the evaluations they've spent time computing.

Notes:

  • only values with depths larger than 20 will be stored. For lower values, you can just run the engine.

Extra key shortcuts

category: General - Advanced
values: yes / no - defaults to yes

This feature adds extra key shortcuts:

  • to the Analysis board/Studies: 
    • first it changes the functionality of the i, m and b keys to work in Analysis board as well as Studies and to use all variations, not just the main line as the original lichess behavior. The functionality of these keys is to jump to the next inaccuracy, mistake or blunder, respectively
    • it adds the same functionality to Alt-i, Alt-m and Alt-b, only for the opponent
    • g and Alt-g cycle through good/brilliant/interesting moves
    • if Explorer is shown:
      • shift-T will cycle between Masters and Lichess database
    • it adds the ability to select any of the moves in the available moves lists:
      • press . (dot) and then a digit and it will make to the nth next move available in the PGN (see Transpositions behavior if you want to select moves from transpositions, too)
      • press Ctrl-. and then a digit and it will make to the nth next move available in the computer evaluation list
      • press Shift-. and then a digit and it will make to the nth next move available in the opening explorer list
    • ` (the key before 1) and then f will freeze/unfreeze the board - this means you can still move pieces, but the board will appear as when it was frozen. Helps with visualization.
    • ` (the key before 1) and then r will activate the random chapter navigation button. You need to have that button enabled in order for it to work.
    • in correspondence games, in analysis mode, the Backspace key can be used to return to the current position
  • in the Board Editor screen:
    • 1-8 to select the buttons under the board (select, pawn, knight, bishop, rook, queen, king, erase)
    • Shift+1-8 to select the buttons above the board (same thing, different color)
    • c to clear the board
    • p for the starting position
  • everywhere:
    • ` (the key before 1) and then h will toggle the header of the site. It's a pretty niche feature, but it helps if you are distracted by the header, like when you're playing in 3D mode and the header overlaps the taller pieces.

Notes:

  • the keyboard help popup (Shift-?)  shows all of these shortcuts if the feature is enabled

Quick actions

category: General - Advanced
values: Flip game board / Request server analysis / Chat emojis / Toggle practice - defaults to Flip game board, Request server analysis, Chat emojis

This feature will add a popup menu when moving the mouse over the board hamburger menu. Clicking on the menu will still work as before. If Read move comments is enabled, a button to enable/disable the feature will also be available.

Options:

  • Flip game board - button to flip the board
  • Request server analysis - button to request server analysis (where available)
  • Chat emojis - shows emoji buttons in inbox chat
  • Toggle practice - toggle practice mode button
    • this also hides the practice button from the default analysis buttons 

Read move comments

category: Analysis (minor) - Advanced
values: Enabled / Ignore emojis / Read annotations - defaults to none

This will allow reading of comments in studies and games. When enabled, comments in the current move of analysis will be read aloud. There is a quick action to enable/disable the feature, as well as a button that appears in the comment box of a running interactive lesson.

Options:

  • Enabled - if this is off, the entire feature will be disabled (including the quick action)
  • Ignore emojis - if this is set, emojis in the comments will not be read
  • Read annotations - if this is set, the read text will also contain the annotations (good, mistake, etc)

Show total game duration

category: Analysis (minor) - Advanced
values: yes / no - defaults to yes

This will show the total duration time of a game on its Move times chart.

Additional glyphs

category: Analysis/Study - Advanced
values: Enabled / Mate / Book - defaults to all

This feature displays an extra  glyph on mate moves and a 🕮 glyph on moves Lichess or LiChess Tools recognize as openings (not very precise). Also it enlarges glyphs on mobile devices. If Enabled is not selected, the entire feature is off. Even if you do not want the Mate and Book glyphs, I recommend you leave Enabled on, as it affects glyphs in a general manner.

Notes:

  • The lichess UI allows for multiple glyphs on the same move. The one shown on board will just be the first one in the list.
  • Originally this feature was created to show annotations that lichess was not showing. From September 2023 lichess started natively showing all annotations, therefore eliminating the need for much of the functionality of the feature.

Extra analysis charting

category: Analysis/Study - Advanced
values: Material / Principled / Max tension / Max potential / Find interesting moves / ... more moves / Local eval / Accuracy / Sharpness / Chart smoothing / on Eval gauge / More info on Accuracy  - defaults to Material, Principled, Max tension, Find interesting moves, Accuracy, Chart smoothing, on Eval gauge, More info on Accuracy

When not logged in, Local eval, Find interesting Moves and ... move moves are enabled by default.

This feature is adding extra lines on the computer analysis chart. In the search for good/great/brilliant moves - as shown on chess.com and requested by a lot of players, the lines drawn over the normal computer eval chart are meant to give some indication of what is going on without asserting an exact significance of the values. The lines are purposefully left without explanation, in the hope that players recognize some aspects of the game in the numerical values charted and their intersection.

For example, many of the moves generally considered brilliant see a steep increase in evaluation, but a steep decrease in material and/or principled position, indicating a sacrifice or an unnatural seeming move that wins the game.

If Find interesting moves is enabled then an extra entry in the analysis summary shows the total of interesting/good/brilliant moves in the PGN. With ... move moves the extension will endeavor to show which moves are good, best and brilliant, but take it with a grain of salt.

Options:

  • Material - green dashed line shows a more classical material difference between the sides
  • Principled - blue dashed line shows how principled the position is. This means stuff like square control, freedom of movement, developed centralized pieces, etc, but excepting material value.
  • Max tension - red dotted vertical line shows the point of maximum tension in the game. Tension here is defined as the total material that can be captured by both sides in just one move.
  • Max potential - green dotted vertical line shows the point of maximum potential (similar to tension, but it superficially looks at capture chains)
  • Find interesting moves - if enabled, this will show good/brilliant/interesting moves in the analysis summary as a link that cycles through them. It will also automatically find some categories of interesting moves and mark them with !? glyphs (if not already annotated). The glyphs added by this algorithm will be temporary (not persisted on the server).
  • ... more moves - this will automatically calculate good/best/brilliant moves. It will also change the behavior of the good/brilliant/interesting moves link to only search brilliant and interesting moves. The G shortcut will work as before.
    • this uses both the server evaluation and the local computer eval. If you run the computer engine locally it will change the glyphs in real time.
    • every move that isn't bad is good, so you will get A LOT of good moves. 
    • as I don't know which is the best move, only the eval associated with it, a "best move" is a move as good as the previous evaluation. This means more moves could be "best" and depending on Fishnet, you will sometimes need to run local eval to get a "best" or to clear a false one.
  • Local eval - if this is set, the local evaluation will also generate a yellow line chart, with a semitransparent background under it. This will also add charting to the Analysis board, once the local engine has been started, and it also updates various other chart lines with local eval, if the depth is higher than the server one.
    • the yellow chart shows the evaluation of the current variation branch, not the mainline like all the other chart lines. Meaning that the chart line will appear and disappear depending on if the current branch has computer evaluations.
    • if the chart is local only (no server eval available or run yet) this will show inaccuracies, mistakes and blunders as well. The nice summary on the right side that you get with the server eval will NOT be there.
  • Accuracy - if this is set, the accuracy of the moves of the side the board is oriented from is charted with a magenta color. More on the actual formula here: Lichess Accuracy Metric
  • Sharpness - if this is set, the sharpness of the position is charted with pink.
    • note that this chart depends on Explorer values, so it will only show as far as there are records in the Lichess Explorer database and you have visited those positions with Explorer enabled.
  • Chart smoothing - if this is enabled, the chart will be smoothed, removing sharp spikes. 
  • on Eval gauge - if this is set, two lines (one green and one blue) will appear on the evaluation gauge when it is visible, changing with the values of material and principled values, respectively.
  • More info on Accuracy - if this is set, then hovering over the accuracy stats will show the percentages of moves that have a specific glyph associated with them, starting with brilliant, best, good, neutral, inaccuracy, mistake, blunder. It will also show the Accuracy chart line, if not already enabled.

Notes:

  • I called it "interesting moves" because there is no objective good/brilliant move algorithm. If you want those, enable ... more moves.
  • If you are not logged in, Local evalFind interesting moves and ... more moves will be enabled by default.

Study links options

category: Study - Advanced
values: Video popup / Open links to studies in same window / Ensure comment tab in studies- defaults to all

This feature handles links inside study comments. It enables Chessable/Chessmood kind of courses, where you can play the course or do the puzzles or research lines while the video is running on top.

Options:

  • Video popup - if the link is to a recognized video provider, clicking on the link will open a popup where the video runs. The popup can be resized, moved and the settings for this will be persisted for the current device.
    • only YouTube, Vimeo and Twitch videos are supported for now, because Lichess blocks anything else
    • start timestamps are supported for all three types of videos
    • for YouTube links an "e" parameter just like "t" can be use to end the video at that timestamp. Example: https://youtu.be/<someId>?t=300&e=400
    • this does not work in Firefox because they don't support credentialless iframes
  • Open links to studies in same window - this makes links from move list comments which lead to studies to open in the same window. The reason for this is that you want to continue a variation that is split into multiple chapters or that leads to another study in the same window, especially in Extended Interactive Lesson mode. Now you can utilize this with the Bookmarks option of the Move List Options feature to jump from move to move and chapter to chapter.
    • links to chapters in the same study will just change the chapter on click, rather than open the link.
  • Ensure comment tab in studies - ensures there is a read only comment tab under the board on non interactive study chapters that you don't contribute to.

Notes:

  • the video popup will snap to the margins of the screen, so if you place it in the bottom right corner and resize the window, it will keep a fixed position relative to the bottom and the right sides of the screen
  • if less than 50% of the video header is outside the screen, the popup will reset to original position: center of the screen with 640x480 size
  • the video link can have a start time parameter which should be respected by the video popup

Learn from your mistakes in Studies

category: Study - Advanced
values: yes / no - defaults to no
Needs log in

This feature will add a Learn from your mistakes button for study chapters that have a server computer analysis, just like for game analysis.

Change chapter names from PGN tags

category: Study - Advanced
values: yes / no - defaults to yes
Needs log in

This feature will give you the option to quickly change the name of a study chapter to either the content of its Event PGN tag or the White and Black PGN tags combined when editing the chapter. Sometimes people want to import a series of PGNs into a study, but with the default lichess behavior only the first chapter gets a proper naming from the PGN tags, the rest getting the default Chapter 2, Chapter 3... etc name. With LiChess Tools you can go to each of them, edit them by clicking the cog button next to their names, then choosing with one click the name the chapter should have.

A newer functionality of this feature is to suggest a name based on the mainline moves. It should help to structure studies with a variation per chapter.

Study chapter navigation controls

category: Study - Advanced
values: Navigation controls / Hide next chapter button / Subchapters - defaults to Navigation controls,Hide next chapter button

This feature will control study chapter navigation:

  • Navigation controls - this will add a set of buttons at the end of the chapter list in a study. The buttons navigate to the first chapter, previous chapter, random chapter, next chapter and last chapter respectively.
  • Hide next chapter button - given that you have the navigation control, or because it's just very annoying, you can hide the big blue "Next chapter" button appearing when you reach a position with no next moves.
  • Subchapters - enable chapters that are children to other chapters. Any chapter starting with any combination of | \ or - are considered subchapters to the one without such a name above. The parent node will be collapsible. Only one level of hierarchy is supported, so children cannot have children.

Notes

  • You can add in the title a rnd:N text, where N is a percentage number between 0 and 100. This will change the chance that a chapter will be selected by the random button.
    • If the mechanism above is used, the current chapter can be chosen (so basically remains the same) by pressing the random button
  • dragging a collapsed parent chapter will drag all of its children. If they are expanded, they can be moved anywhere independent of their children
  • example of a parent/child setup:
    • Parent chapter
    • |- child chapter
    • \  another child 

Sticky study Preview mode

category: Study, Interactive Lesson chapters - Advanced
values: yes / no - defaults to yes

This feature will keep you in Preview mode as you move from one Interactive lesson chapter to another. As one trains using interactive lessons, at the end of one they are presented with the option to move to the next chapter. The default lichess behavior is to show you the chapter in edit mode (assuming you are the owner or a contributor) which requires you to press the Preview button all the time to continue training, after also having seen the move list. Now you can press Preview once and play chapter after chapter with no hassle.

This is preserved also between page reloads, so you will have to manually unset Preview mode to edit a study Interactive Lesson.

No spoilers

category: Broadcasts - Advanced
values: Broadcast - defaults to none

This feature will hide the scores in the games in broadcasts. It will also add a "No spoilers" checkbox in broadcasts so you can set/unset it from there.

Update 29nd of January 2025: Lichess have implemented something similar (even better) called "Results". Uncheck the checkbox to hide indications of results. So this tool might was removed, as it has become obsolete.

Show game opening names

category: General
values: For large board / For minigames / In Explorer - defaults to all

This feature will load the lichess opening name for games and display it. When watching a game or analyzing it, the opening will be shown under the player names. For mini-games (the tiny ones that appear when hovering over a game link or put somewhere on the page) it will appear at the bottom. For Analysis board, if the wiki side is empty, it will show the opening there, assuming the position is in the local cache. For Explorer, if open and the option is set, the extension is going to attempt to add just the relevant information to the existing opening name.

Options:

  • For large board - this will enable showing the opening name for Analysis Board, Studies, Board Editor, TV games.
  • For minigames - this will enable showing the opening name for games shown when hovering over a player name, games shown in the Current Games or broadcasts and any other games shown in small board format.
  • In Explorer - this will enable showing extra opening information in the Explorer header, next to the normal opening name coming from Lichess, if applicable.

In the very rare cases where the same exact position is found with colors reversed, the name of the opening will appear with a little (R) at the end.

This should work for Analysis Board, Game analysis, Studies, TV games, Board Editor, Broadcasts, Swiss tournaments, etc.

Show pawn structures

category: General
values: Enabled / Only named structures / Fuzzy search - defaults to Only named structures, Fuzzy search 

This feature, similar to Show game opening names, shows the pawn structure of the current game position. Because it's all very local, with no API requirements, it also works for current game pages.

An entire blog post about it can be found here: The Pawn Structure feature in LiChess Tools

Options:

  • Enabled - enables or disables the feature - disabled by default.
  • Only named structures - show only structures with names. This is enabled by default, but of course will not work unless enabling the whole feature. If you disable this, you will see a very technical name for each and every move.
  • Fuzzy search - this will show named pawn structures within a certain proximity. It helps to determine the general structure, even if it might not be totally accurate.

Notes:

  • This feature has a lot of potential, as the pawn structure is something that informs medium to long term plans. Knowing these will help you grow a lot as a chess player.
  • If the pawn structure is named, it will show as a link which can be clicked to learn more.
  • If the structure is not found in the available list, it will be searched from the opponent's perspective, in which case it will be shown with a (R) at the end if found

Show player country flags

category: General
values: yes / no - defaults to yes

A very early feature of the extension, it has also evolved a lot. The latest version is much more efficient in terms of how it gets the data from the server and adds flags to almost every place where a user link is shown.

In order to not use too many resources, the flags for players are cached for 10 days. If you want to clear the cache, go to Preferences and turn it off and on again.

Show player score deviation

category: General - Advanced
values: yes / no - defaults to no

This feature will add the rating deviation to some of the ratings in the user popups (the one popping up when you mouse over player links). The deviation will be either red, normal or green based on the progression in the latest games. Red means loss of rating, green means increase in rating.

Player tooltip buttons

category: General - Advanced
values: Report and block - defaults to none

This feature will add more buttons to the tooltip appearing when you hover over a player's link.

Options:

  • Report and block - this feature will add a report button on the player. Clicking the button will open a new tab with the page where you can report a player for rule violations. This also adds a button "Report and Block" on this page which allows you to submit the report and block the user in one go.

Chat/forum options

category: Chat, forums, blogs
values: Paste image support / Large one emoji message / Refresh on new message - defaults to all

Needs log in

This feature applies to the inbox chat and writing forum posts. There is another type of chat (below) used in games, studies and team pages.

Options:

  • Paste image support - allows for pasting images directly in the chat or the forum. Here, by "directly", I mean that it uploads the image to Imgur, retrieves a URL for it and pastes the resulting link. From there, Lichess has support to display the image.
    • from 2.3.180 you can also paste images in the bio field when editing your profile
  • Large one emoji per line - in Inbox chat, when you have only one emoji message, like 👍, it will appear larger
  • Refresh on new message - when this is enabled, any message sent or received in the Inbox chat will refresh the chat list.
    • This helps showing people going online or offline, since by default the Inbox only populates this information at page load and when changing recipient.

Team/Study chat options

category: Chat, forums, blogs
values: Highlight URLs / No length limit / Image support / Team chat notifications - defaults to all
Needs log in

This feature adds some much needed functionality to the chat used in games, studies and team pages:

  • Highlight URLs will turn URLs in the chat text into links
  • Image support will show images instead of text in the highlighted URLs (assuming the URL is of an image) - requires Highlight URLs
  • No length limit will allow you to write as much as you want and then split the message in 140 characters slices - because that's what the lichess server allows
  • Team chat notifications will show you notifications when messages are added to the chat of a configured team. The teams list will now show a notification bell next to each team that will toggle notifications for that team. A maximum of three teams can be configured for notifications. By default, no team is configured for notifications.
    • If you stay on the team list page long enough, the notification bell button for enabled teams might show a number on it. That's the number of people active on the chat (which includes people who have enabled notifications for that team) if there are more than 1. Obviously, in order for this to work, you must be one of them.

Notes:

  • this is different than the team "Subscribe to team messages" toggle, which is a native lichess control for receiving mass team messages from the team admins.
  • visiting the page of a team will reset the notification for new messages (will mark all as read).

Better exported board image

category: Analysis/Study/Board editor - Advanced
values: yes / no - defaults to yes

This feature will override:

  • the default share Board button in studies
  • Screenshot current position in game analysis
  • SCREENSHOT button in the board editor

It will also add a SCREENSHOT button to the analysis board with the same functionality.

When clicked, the button will export not only the board position, but also the arrows and anything else drawn on the board in the current position. You retain the original behavior by right-clicking the button and opening in a new tab or window.

If you Shift-click, the board will be rendered without coordinates.

Link to current analysis

category: Analysis (minor) - Advanced
values: yes / no - defaults to yes

You ever wanted to send to a friend the state of the Analysis Board you've been working on for? Now you can. Under the PGN label of the text under the Analysis Board you get a small link icon that contains the link to the Analysis board with the same PGN, orientation and move number.

Notes:

  • the maximum allowed size for a browser URL is 2048 characters. If that size is exceeded, the link will not be available.

Autosave analysis for reload

category: Analysis - Advanced
values: yes / no - defaults to yes

This happened to me a lot of times: I am analyzing something and I accidentally swipe the touchpad or press some key that reloads the page. All my work is gone! This feature keeps track of the latest modifications of Analysis board PGN and reloads it on page load. It is your choice if you want to import it or not by going to the PGN text area and clicking the Import PGN button.

Notes:

  • The saved PGN as well as the Analysis board import text area content will be overwritten by whatever move you make, so if you fail to import the PGN and make a move, you lose the data. 

Opening explorer player features

category: Analysis/Study - Advanced
values: Me button to switch to your player - defaults to none
Needs log in

This feature controls the choice of the player in the Opening Explorer.

  • Me button to switch to your player - adds a tab next to Masters database, Lichess and Player named Me. If you click on it the choice of the player will toggle from your user to the last selected user.  The button can be shown/hidden from the Explorer config screen as well. 

Notes:

  • The Me button will appear only if you have any another players configured for the Player tab name list

Toggle snapshots of Explorer settings

category: Analysis/Study - Advanced
values: yes / no - defaults to yes

This feature will add a new button called Snap! in the Explorer settings of the Lichess database tab. This will allow to save the current Explorer settings under a name, then quickly toggle between the various sets saved by clicking on the same tab, which will now change text to reflect the name of the selected "snap". You can easily delete existing snaps and create others.

Resize Explorer

category: Analysis/Study - Advanced
values: yes / no - defaults to yes

This feature will allow you to resize the Explorer window height inside the analysis tools, therefore controlling how much space it takes when opened. Just drag the divider above or below the Explorer to change the size.

Notes:

  • The mechanism works very differently from desktop to mobile (to the point where I had to install a polyfill to enable drag and drop on mobile). On desktop the divider is on top, on mobile is on the bottom. Also, because lichess is not really particular about how the website looks on mobile, you will probably not be happy unless you also enable the Mobile theme. Tests with various devices show wildly different results. On my phone and the Chrome emulator it works smoothly, on a friend's Motorola the resize bar doesn't seem to work properly. So be warned, mobile support is (and will probably remain) sketchy.
  • Turning the feature off and on again will also reset the heights, if you get in some sort of trouble.

Sound Options

category: General - Advanced
values: No move sounds - defaults to none

This feature gives finer options for sound. At the moment it has just one setting, to disable piece movement sounds only. Note that if you have set the Silent sound schema or the volume to 0 you will not hear anything anyway. 

Sound volume (0-100)

category: General
values: Number between 0 - 100 - defaults to 70

Self explanatory. It sets the volume of the sounds generated by LiChess Tools.

Sound voice

category: General
values: The voices available on the system - defaults to the first one

It selects the voice used for reading text aloud

Time alert (minutes)

category: Play - Advanced
values: 0:30 / 1:00 / 1:30 / 2:00 / 3:00 / 5:00 / Sound alert- defaults to none

This feature allows you to choose additional time warnings during play. Every time an enabled threshold is reached, the bottom player name and clock section will glow red and, if so enabled, a low time sound will be emitted.

Various TV options

category: TV
values: Link for current TV game / Bookmark for current TV game / Streamers current games / Friends current games / Previous two games in player TV / Prevent screen lock with TV / Persistent TV category- defaults to all

This feature has been introduced in version 2.2.0 to merge four existing tools for TV with the same functionality. Make sure you review your Preferences.

Options:

  • Link for current TV game - adds a link to the currently played game in TV on the title, just like in Analysis mode
  • Bookmark for current TV game - adds the ability to bookmark a currently playing game by hovering the mouse next to the game title
  • Streamers current games - adds a Streamers tab in the Current Games page where you can see the games of all currently playing streamers
  • Friends current games - adds a Friends tab in the Current Games page where you can see the games of all currently playing players that you follow
  • Previous two games in player TV  - In category TV (when you are watching Blitz games for example) you get a list of two previous games in that category under the main playing board. For player TV, when you go to a specific player to watch their games, this is missing. This feature will add the two previously played games by the player you are watching.
  • Persistent TV category - will remember which "channel" you watched on (best, blitz, classical, etc.) and will select it again when you go to Watch -> Lichess TV.

Follow tournament top board

    category: TV - Advanced
    values: yes / no - defaults to yes
    Needs log in

    When watching a tournament and clicking the top board, the game will show as usual, but when it ends, the next featured game in that tournament will be shown automatically. Good for watching bullet tournaments without having to go back to the tournament and clicking the top board every 2 minutes.

    Previously viewed game menu item

    category: TV - Advanced
    values: yes / no - defaults to yes

    • This feature adds an extra menu item in the Watch menu that will take you to the previously seen chess game. Just opening any game will consider it as watched. If you go to the previously watched game, then clicking on the menu item again will take you to the game you watched before that, and so on. The total number of remembered games is 10.

    Pin broadcasts and studies to home page

    category: Appearance - Advanced
    values: yes / no - defaults to yes

    This feature will add a red pin to the studies and broadcasts tabs on the top left, right after the search icon. Click on this pin to pin/unpin the study or broadcast to the home page. All the things you pinned will be added to the spotlights area of the main page (top left corner)

    Bot list filters

    category: General - Advanced
    values: yes / no - defaults to yes

    This feature adds filters to the bots list page. You can specify which types of games you want the bot to play (time controls and/or variants) and the interval of rating and played games.

    Last visited study menu

    category: Study - Advanced
    values: yes / no - defaults to yes

    This feature adds an extra menu item in the Learn menu that will take you to the previously visited study.

    Hovering over the entry will show a maximum of 5 previously visited studies. This feature does not work for mobile devices.

    Just opening any study will consider it as visited.

    Notes:

    • the Broadcasts feature and some Puzzles use studies in the background, so this will show them as the last visited study

    Styling for study comments

    category: Study
    values: yes / no - defaults to yes
    Needs log in

    This feature adds the ability to style the comments in your PGNs. You can choose between a number of styles that you can place anywhere in a comment with cls:<styleName>. It also adds a new button next to the comment button in a study chapter (a quill in an inkwell ) that with cycle through all of the classes at the very beginning of the comment to the current move. The usable classes are: red, orange, yellow, green, lightgreen, cyan, lightblue, blue, violet, magenta, pink, underline, strikethrough, italic, bold, cursive and nothing or clear to clear existing class. (ex: cls:red will make the rest of line of the comment red)

    Notes:

    • the name of the class declares the intent, not the actual result of the styling. Given that there are dark and light themes on lichess, the styles have been updated to be readable in both situations, using shadows or slightly different colors.
    • the style of the comment will only be visible to you and people with LiChess Tools installed. All others will see cls:blue or whatever in the comment.
    • you can actually put anything as the class name and the comment will be put inside a span with the CSS class lichessTools-<your class name>, which allows you to customize your style even more with the addition of custom styles from other extensions like Stylus. In this case all people seeing the comment would also need the custom styling.
    • bonus: the same cls: notation can be used for chapter titles, where it will assign the same the class lichessTools-<your class name> to the chapter title 

    Improved editing for study comments

    category: Study
    values: yes / no - defaults to yes
    Needs log in

    This feature will add more functionality to study comments. For now it allows you to take a read only study comment in your own studies (the ones that you get when you import a PGN with comments) and add a button that makes it editable, by deleting it and copying its content into the editable comment.

    Show the order of arrows and circles

    category: Analysis (minor)/Study - Advanced
    values: yes / no - defaults to no

    This feature shows a number on each drawn shape, so that you can see their order. Sometimes in studies you want to convey the moves that could follow the current position using arrows and circles, but in certain situations the order of the moves is important. Set this to true in order to see which arrow comes first.

    Ctrl-Space for best computer move

    category: Analysis (minor)/Study - Advanced
    values: yes / no - defaults to yes

    The default functionality of the Space bar in analysis mode is to start the computer engine if not started or play the best move in the computer move list. Because I was often using lichess with YouTube in another tab, pressing Space accidentally was always an annoyance. This feature changes the shortcut to Ctrl-Space.

    Notes:

    • A previous version of the feature was using Shift-Space, but it would overlap with a lichess feature.

    Clear chapter artifacts

    category: Study - Advanced
    values: yes / no - defaults to yes

    This feature allows you to choose which artifacts to clear from the current study chapter only. To use it, click on the cog button next to the chapter name and, instead of the Clear annotations button now you get the choice of just comments, glyphs (good move, bad move, that kind of thing) and drawn shapes (circles and arrows) as well as all of the above. There is an extra option of clearing all PGN tags. This feature also adds individual delete buttons to all tags in the current study chapter.

    Notes:

    • this only works for the current chapter, as the site does not have access to the moves or tags in the PGNs of other chapters
      • the feature could be modified to work on all chapters, but it would have to first select the chapter, then alter it, which I think is not something that should be done automatically.
    • this works on the client, which means that instead of sending one command to the lichess site, it creates delete requests for each item. If the PGN is large, this can take a long time.

    Customize chat buttons

    category: Play
    values: yes / no - defaults to no
    Needs log in

    When playing the first few moves and after the game has ended, lichess gives you the option to click on some buttons for some standardized message like Hello, or Have fun! This feature will give you the ability to customize these buttons.

    The interface may not be the most intuitive. To edit buttons you click on the little cog button, to exit edit mode you click on the same. This allows altering, adding and deleting buttons. Click on the small X button to enter delete mode, after which you click on buttons to delete them. Delete them all and you get the default buttons back.

    In order to add or alter buttons you have to write in the chat text input something like <name>/<message>. Example: hi/Why, hello there, old chap!, which will create a button with the text HI which will send the chat text "Why, hello there, old chap!". In order to add the button, you click the + button. In order to alter an existing button, you click on that button.

    Notes:

    • the name of the button can be only 2,3 or 4 characters long.
    • if you attempt to add or edit a button without a recognizably correct input text, the input box will jiggle to let you know you are doing something wrong
    • to edit the end of game buttons you have to reach the end of a game. This may be inconvenient and I am thinking of solutions
    • I am considering expanding this feature with buttons for the duration of the game as well as for spectators. Let me know what you think!

    Player lag indicators

    category: Play
    values: none / bars / chart - defaults to none
    Needs log in

    This feature adds bars or a chart next to your and your opponent's name showing the lag and server latency. To limit use of server resources, the opponent lag indicator is updated only every 5 seconds, while yours every second or so.

    Player warning alert

    category: Play - Advanced
    values: yes / no - defaults to no
    Needs log in

    This feature will add a small warning icon next to the opponent's name if the percentage of disconnects for the current time control is higher than 3%. Other warning reasons may be added in the future. The purpose of this is to allow you to abort a game before wasting time on a malicious opponent.

    Note: this is just an informative alert, you do what you want with it. If you abort too many games, you might end up getting punished by lichess.

    Common teams

    category: Play/Analysis/ Study - Advanced
    values: yes / no - defaults to yes

    This feature will add a small icon in the player crosstable (the thing showing you how many times the players have played against each other and the results of the latest games) if the two players in the game share at least one team. Mouse over the icon to see which teams. Clicking on the link will open the first team page. 

    Play layout

    category: Play
    values: Normal / Hide left side / Hide chat - defaults to Normal

    This feature will control the layout of the page when playing.

    Options:

    • Normal - no changes
    • Hide Left side - will hide completely the left side of the screen (game information and chat) in large screen layouts (width 1260px or more)
    • Hide chat - will hide the chat and rotate the game information, gaining some space in large screen layouts (width 1260px or more)
      • in this mode, the game icon in the game information section will glow if there are unread chat messages. Clicking on it will toggle the chat being shown/hidden and mark existing chat messages as read.
    • Option to hide chat - same as Hide chat, but chat starts by being shown and you have the option to click on the game icon to toggle the chat.

    Timeline notifications

    category: General - Advanced
    values: Forum post / Blog post / Lichess announcement / Stream start / Simul create / Simul join / Team create / Team join / Tournament join / Following / Study like / Blog post like - defaults to Forum post, Blog post
    Needs log in

    This feature will add a notification when there are unread items in your Timeline. The default values include comments on forum or blog posts you follow, forum or blog posts from people you follow. Basically posts that you wouldn't normally be notified about. 

    Clicking on the notification will take you to the Timeline page. Opening it from here or anywhere else will consider the items read and so you will not see the notification until new ones turn up.

    Notes:

    • there will be no notification if quiet mode is on (meaning you are playing a game or you have quiet mode manually set)

    Mobile device features

    category: Mobile devices
    values: Evaluation gauge / Hide the octopus mascot / Analysis arrows / Random move button / ... only when variations / Scroll lock when playing / Extra buttons in interactive
       - defaults to Evaluation gauge, Random move button, ... only when variations 

    This feature alters some behavior specifically for mobile devices. There are Chromium-based mobile browsers, like Kiwi, which accept browser extensions. Enjoy LiChess Tools on mobile installing one and then the extension, then customize the experience with this feature.

    The options are:

    • Evaluation gauge - makes the evaluation gauge visible even on small screen widths (for mobile)
    • Hide the octopus mascot - hides the octopus mascot that takes a lot of space in Interactive Lessons
    • Analysis arrows - adds a button next to the Explorer and Practice ones that allows for drawing arrows and circles on mobile devices in Analysis board and Studies
    • Random move button - adds a button between the previous and next move buttons that will randomly play a move from the move list (same functionality as Ctrl-right to play random next move from list on desktop)
    • ... only when variations - this makes the Random move button above only appear when there are variations to choose from
    • Extra buttons in interactive - When playing interactive lessons you don't have buttons under the board. This will add some of them, mainly a flip board button and a draw shapes button.

    Notes:

    • Because both the shape drawing and random move buttons take up space, this feature also changes the style of the buttons so that they take two rows of space: the first for utility buttons (left) and the hamburger menu button (right) and the second row for PGN navigation buttons (first, previous, random, next, last move). If none of the two options mentioned are enabled, then the regular "one row for all buttons" style is used.
    • Screen locking when "playing" doesn't necessarily means when playing, but when lichess is in "playing mode". For example that also means when you haven't yet started the game or when you just ended the game or when you are doing puzzles.

    Mobile device game features

    category: Mobile devices - Advanced
    values: Game arrows / Standard  buttons / Swap user and clock / Tap bottom clock to flip board- defaults to none

    This feature alters some behavior specifically for mobile devices when in-game. This means playing, or solving puzzles or even watching running TV games. There are Chromium-based mobile browsers, like Kiwi, which accept browser extensions. Enjoy LiChess Tools on mobile installing one and then the extension, then customize the experience with this feature.

    The options are:

    • Game arrows - adds a button next to the button for Analysis that allows for drawing arrows and circles on mobile devices in games
    • Standard buttons - the default behavior of lichess.org is to hide the move navigation buttons for games on small screens, instead showing one line of PGN with previous and next move buttons on either side. Set this in order to see all buttons (including the Game arrows one above). For normal play this is not necessary, but in puzzles, TV and such screens this is the only way to access the drawing arrows button.
    • Swap user and clock - swaps the position of user and clock during play, to avoid hiding the clock with your dominant finger.
    • Tap bottom clock to flip board - flip the board when tapping on the bottom clock (when playing or watching TV)

    Colors for shapes on mobile

    category: Mobile devices - Advanced
    values: 1 / 2 / 3 / 4 - defaults to 1

    This is part of the Mobile Experience feature and it selects the count of colors you can use on mobile to draw arrows and circles. If you only want to turn the drawing mode on/off with a single tap, select 1.

    Screen lock

    category: Mobile devices - Advanced
    values: During play / During puzzles - defaults to none

    This will lock scrolling and zooming on mobiles when playing (or during puzzles). A lock icon will appear as a button on top of the screen that you can tap to temporarily lock/unlock the scrolling on that page. Whether the screen is locked or not will be persisted, so you have to tap it again to enable if you disabled it.

    Keep screen active

    category: Mobile devices - Advanced
    values: During puzzles / Watching TV - defaults to all

    This will prevent screen locking on mobiles or other such devices while you are on a TV page or playing puzzles.

    Show evaluation of explorer moves

    category: Analysis/Study - Advanced
    values: From computer eval / From ChessDb / From Lichess / From winning stats / Rows from eval / Bar precision / Stronger Player Outcome Average / Hidden - defaults to From computer eval, From ChessDb

    Options:

    • From computer eval - will show the evaluation from the computer engine
    • From ChessDb - will show the evaluation from the chessdb.cn database
    • From Lichess - will show the evaluation from the Lichess evaluation API
    • From winning stats - will compute an evaluation based on the win/draw/loss statistics
    • Rows from eval - will add extra rows with the move and the evaluation if the explorer doesn't contain a line for that move
    • Bar precision - will add a decimal digit of precision to the percentages in the move Explorer bars
    • Stronger Player Outcome Average - shows the outcome average for the stronger player (SPOA) in each game 
      • explanation: this works for both Top Games and Recent Games sections of the Explorer. For each game, the result (1, 1/2, 0) is taken for the stronger player by rating. The average of these results is the SPOA value, displayed as a percentage (all wins will show 100%, all losses will show 0%)
    • Hidden - hides any evaluation in explorer, but retains the settings if you want to show them again. This option can also be changed from the Explorer settings

    This feature will show the move evaluation for Explorer moves. This information is retrieved from three different sources that can be enabled or disabled: the local computer eval, chessDb.cn, the lichess evaluation API and the Explorer stats themselves. If Hidden is set, then the settings for evaluation will remain, but the column will not be shown. The feature can be hidden not only from Preferences, but also from the Explorer config screen.

    ChessDb.cn will be used first (if enabled) and then the Lichess eval API, so if you prefer the Lichess API, you should disable ChessDb. In case ChessDb fails for whatever reason, lichess eval API will be used instead. Just note that the Lichess API is limited in how much calls one can make and contains less data than ChessDb.cn.

    The statistics eval will only be shown if there are 100 or more games in the lichess database for that move and not all won by one side. Its faded coloring signifies that it's not a true eval, but if enabled can compare with the other values. 

    Computer evaluations will have a white color, stats evaluations will have a grey faded color and the cloud evaluations will be slightly blue. If using chessDb, the eval will show either red, green or bright green for bad, good and best moves.

    This feature also adds a warning icon on the right side of moves that have large differences between evaluation and winning stats, indicating a possible trap or gambit situation. It also calculates the sharpness of a move, as defined in Evaluating sharpness with Leela’s WDL and adds a blue warning icon on the right side of the move when it's higher than 100.

    The feature is unavailable in the Analysis screen of a running correspondence game.

    Notes:

    • The more lines you have configured on your computer analysis, the more items in the list will be evaluated. Explorer can show 12 moves, for example, while the computer analysis is configured with Multiple lines=2, this means a maximum of 2 items in the Explorer will have an evaluation. With 5, you get 5, assuming the computer moves are in the Explorer list.
    • There is an internal cache of these evaluations, so you can run the computer eval for some moves, then stop it, but when going to those moves you will still see the evaluations as done before at whatever depth was last computed.
    • Take care with stats evals in positions with few games. It might tell you that you are absolutely winning, but that's just because no one played a winning move from that position. That is why eval from winning stats is disabled by default.
    • The evaluations from cloud differ in depth based on how many moves you want to see. For example you could ask for just one move (the best in the position) and it might show you the eval with depth 55, but if you ask for two moves it will give you depth 44, for 20 moves you would get depth 13 or even nothing. To account for this, cloud eval combines the values from two calls: for 5 moves and for 10 moves. Since the cloud data comes from local evals, server evals and different versions of Stockfish and I am combining two different depth evals, take the evaluation as an estimation, not a given.
    • Changing the options for evaluation in Preferences will reset the local cache for each move.
    • Lichess' cloud eval API will return 404 when no data is available, resulting in ugly red network lines and error messages in the browser developer tools. Those are not errors, but there is no way to hide them in Chromium browsers from JavaScript. If it annoys you, you can turn them off from DevTools (see https://stackoverflow.com/questions/4500741/suppress-chrome-failed-to-load-resource-messages-in-console)
    • Depending on how much you do analysis and how overloaded the servers are, cloud eval might start returning 429 errors, meaning the servers report you are abusing them. A warning will appear every minute while that happens. The workaround is to disable From Lichess and use just computer eval (which, of course, will also use cloud eval :-P). The configuration on lichess' side, at least for the moment, is 3000 calls per IP address per day. That's a bit low, but it might be enough.
    • If computer evaluation is started and used as a data source, the cloud eval will not be accessed.

    Show explorer moves leading to gambits

    category: Analysis/Study - Advanced
    values: yes / no - defaults to no

    This feature adds a new column to the Explorer table showing the number of gambits reachable from the current position and for each move to play. The feature can be turned on/off not only from Preferences, but also from the Explorer config screen.

    The feature is unavailable in the Analysis screen of a running correspondence game.

    Options for puzzles

    category: Puzzles
    values: Prevent screen lock playing puzzles / Show completion time / Show session total - defaults to Prevent screen lock playing puzzles, Show session total

    This feature controls various options related to puzzles:

    • Prevent screen lock playing puzzles - this will prevent the screen from autolocking when playing puzzles (or thinking about how to solve them)
    • Show completion time - this will show how many seconds it took to finish a puzzle
    • Show session total - this will show the total points you won/loss in a puzzle session (the little green and red icons under the board when playing puzzles)

    Enhanced Puzzle Dashboard

    category: Puzzles - Advanced
    values: yes / no - defaults to yes
    Needs log in

    In the current iteration, it adds a table to the bottom of the Puzzle Dashboard, with a row for each puzzle tag you've played in the selected interval. It shows where you are better or worse and allows you to play only that or to replay the failed puzzles there.

    Above the table you also get a past performance chart for the period selected in the dashboard dropdown and - if you played puzzles or Puzzle Streak in the last 7 days - how many rating points you won and what's the maximum puzzle streak length.

    Notes:

    • this used to be called Puzzle performance chart in Profile, but that page was removed by Lichess and the functionality was added to the Puzzle Dashboard
    • the green background bars show the puzzles you completed, with a darker gradient towards the puzzles you completed on replay. Mouse over to see the actual values of wins + replay wins.
    • click on the theme name to play puzzles in that theme. click on the To replay numbers to replay the puzzles in that category.
    • Warning: based on which theme you choose, you might find that you lose a lot when you fail and win very little when you win, or vice versa. Truly, the idea of a general puzzle rating makes no sense and you should not consider it. Instead, look at the performance value for each theme. Do not let your chess progress get hampered by a meaningless numerical value in any case.

    Puzzle history

    category: Puzzles - Advanced
    values: yes / no - defaults to no
    Needs log in

    This feature will show the history of puzzles you started playing on the current device at the bottom of the Puzzle Dashboard.

    Lichess has a puzzle history page as well. It looks good, too. This feature will default to no, but you may want it, because it also logs the puzzles you started, but didn't complete.

    Find position in Lichess puzzles

    category: Puzzles/Analysis/Study - Advanced
    values: a NIF file

    Work in progress! - this means use at own risk.

    This feature requires a separate file to be downloaded on your computer. Once loaded, the Explorer will try to find puzzles similar to the current position. Since there are more than four million Lichess puzzles, the only way to create a small enough index on your local machine was to just keep the significant elements of the position FEN, meaning that the positions will not be exactly the same. In v2.3.172 I've added a CRC mechanism to dramatically reduce false positives. 

    Get the latest file here: puzzle.nif.zip (about 330MB) - download it and extract it somewhere, then pick the file in the Preferences.

    So it works like this: in analysis, if the current position is found in Lichess puzzles, a new section will be added to Explorer called Puzzles, with a list of puzzle links. When this happens, also a new tab is added to Explorer with a magnifying glass icon on it. You click it and Explorer will scroll down to the Puzzles section.

    Notes:

    • let me know if you have any issues with decompressing the zip file. I've used some extreme compression.

    Download PGN for puzzles

    category: Puzzles - Advanced
    values: yes / no - defaults to yes

    This feature will add a button next to the puzzle id (once the puzzle has been completed or abandoned) to download the puzzle PGN. A popup with the PGN will appear and you can copy whatever part of it you want. The PGN will start with a FEN position and the puzzle moves.

    Quiet mode on all tabs

    category: Play - Advanced
    values: yes / no - defaults to yes

    When a game starts, lichess sets a quietMode variable to true, instructing various notifications to not be displayed. Unfortunately, that only happens on the page that one plays on. This feature makes all open lichess pages get the value for quiet mode from the same place, so they don't behave inconsistently.

    There is also a button added to the lichess menu which can manually enable/disable quiet mode. Warning: once manually enabled, quiet mode will remain on until manually disabled! The normal game playing quiet mode will turn on and off automatically, as before, only it will affect all open lichess pages.

    Note:

    Insert new chapter after current one

    category: Study - Advanced
    values: yes / no - defaults to yes
    Needs log in

    This feature adds a button to the create study chapter form with the text Create after current. Using this button instead of the normal Create chapter will create the chapter immediately after the currently selected chapter.

    Note: the button will not appear if already on the last chapter in the study.

    Show PGN in studies

    category: Study - Advanced
    values: yes / no - defaults to yes

    This feature adds a textarea in the study Share tab called PGN. Similar to the one in Analysis board, it will show the PGN text of the current chapter. The PGN will be generated by the same code that generates the one from Extra context menu options and may differ from the one generated by the Copy PGN or Download PGN buttons.

    Persist study settings

    category: Study - Advanced
    values: New/edit chapter settings Position/move in the study - defaults to Position/move in the study
    Needs log in

    Options

    • New/edit chapter settings - will persist the settings for studies when you create or edit them. Then it will use the same values when creating new studies.
    • Position/move in the study - will remember the position (move in the list) in a study chapter and restore it on page refresh
      • Note that if lichess does not restore the chapter on refresh (it happens sometimes when the user get disconnected) then this will not work. This just restores the move in the current chapter, it does not change it.
      • Also note that this will not work in Interactive chapters while playing them 

    Move list options

    category: Analysis/Study - Advanced
    values: Indented variations / Bookmarks / Expanded move list / Hide left side / Open in new window / Eval button on the right - defaults to Bookmarks

    This feature will change the functionality or appearance of the move list in Analysis board. There are already such changes with the Highlight moves in analysis functionality.

    Options:

    • Indented variations - this will make even variations that follow inline (when they are less than three, they are displayed one after the other in parentheses, like in a PGN text) show as tree branches, increasing readability and preparing for new features that will use this.
    • Bookmarks - Study only - this will allow for bookmarks, which are very cool (read below). Let me know how they could be more of use to you.
    • Expanded move list - Only for desktop resolutions (1260px+), this feature is removing the left and right margins and expanding the move list to the edge of the screen and also downwards. It is meant to improve analysis on very complex PGNs.
    • Hide left side - Most of the time the left side of the analysis screen is useless: chat, notes, study participants and stuff like that. With this, you can hide that side to gain even more space for the move list. This is intended to be used together with Expanded move list, but you can use it separately as well. 
    • Open in new window - Study only - this adds a small button in the top-right corner of the page, just before the computer evaluation toggle. Clicking it opens a new window with just the analysis tools (move list, computer eval, explorer) that you can move to another monitor, for example, or resize and place wherever you want. Use the study SYNC button to keep the two windows synchronized. (the SYNC button only appears under the board when the study is set to Enable sync)
      • this is also useful for printing PGNs, as the new window is optimized for printing.
    • Eval button on the right - this will move the computer evaluation button to the right side of the eval header and also make it a little bit smaller.

    How bookmarks work:

    • right-click on a move in a study move list and select Add/Remove bookmark from the context menu
    • put any text in the textbox that appears (or remove it all to delete the bookmark)
    • this will create a bookmark, which serves several purposes:
      • it will show as a named label in the move list (good for naming variations or making the PGN more readable)
      • it will allow to expand/collapse the branch from that move on (which will also persist between reloads)
      • it will serve as an anchor for URLs to this exact variation
    • for any bookmarked move you can right-click it and get:
      • Collapse/Expand all bookmarks - collapse and expand all bookmarks in the tree
      • Get bookmark URL - will copy to clipboard a URL to that specific move in that specific chapter and study (the link will look like this: https://lichess.org/study/<studyId>/<chapterId>#<bookmark name>)
      • Split chapter here - only if the bookmarked node has children (following moves) - it will create a new chapter with the following moves, then add a comment with the URL to the new chapter. If you want to also delete the following moves, press Shift when you click on the menu item. The confirmation dialog should reflect that moves will be deleted.

    Notes:

    • Bookmarks are saved in the comments as bkm:<label>
    • Only you and people with the LiChess Tools extension (and bookmarks enabled) can see and use the bookmarks, the rest will just see the bkm:<label> in the comment
    • Splitting a chapter with Shift-click DELETES THE EXISTING FOLLOWING MOVES from the initial chapter. Don't tell me you weren't warned.
    • You cannot collapse a bookmark if the current selected move is under it
    • selecting or moving to a position under a collapsed bookmark will expand it

    Link to download all studies of a player

    category: Analysis/Study - Advanced
    values: yes / no - defaults to yes

    This feature will add a "Download all studies" link in the studies list section whenever a user is selected in the query. This happens in two situations: either you went to your studies or you selected the studies of another player. The necessary condition for the link to appear is that the study search query contains "owner:<user>" where <user> is any user id. The link will download one PGN with ALL studies of the selected user that you have access to. Naturally, your studies will all be downloaded. For other users, only the public studies will be downloaded.

    Study flairs

    category: Study - Advanced
    values: Author flair / Member flairs / Flairs from study topics - defaults to Flairs from study topics

    Important: Lichess has implemented the same feature for study and study owner flairs. If you want to stick with the native version, turn all options off here!

    This feature allows adding flairs to studies. The first two options add the flairs from the author and/or members of the study. The third one allows adding your own flairs to the study, using the study topics.

    Flairs will appear in this order:

    • study flair - as chosen by the native study flair (only if the topic flairs is on)
    • study topics - as chosen in the study topics (only if the topic flairs is on)
    • study owner (only if the author flair is on)
    • study members (only if the member flairs is on)

    Example: you want to add an alien flair to your study. The flair name is smileys.alien, so your topic needs to be flair.smileys.alien. Don't worry, all you have to do is go to your study, PGN tags, select Manage topics then type alien and the smiley will appear in the dropdown ready to select.

    An even simpler solution is to press the Flairs button on the left of the popup which gives you a normal flair picker to select with.

    The result is that, in the studies list, instead of the four chess squares icon for all studies you will get the first study flair icon, and the rest of the flairs will be listed on the bottom of the study. The flairs of the study come first, then the one of the author, then the one of the invited members (if the options are set to show them).

    The list of all possible flairs can be found at https://lichess1.org/assets/flair/index.html

    Notes:

    • user flairs will show the user powertip on mouse over
    • topic flairs will go to the topic search on right click. This is to avoid confusion for people who just want to open the study. On mobile this works with long click.
    • for people not having LiChess Tools installed, there will be no flairs in the study lists and when opening the study they will see the flair as text (ex: flair.smileys.alien)

    Mirror button in Board Editor

    category: Board Editor - Advanced
    values: yes / no - defaults to yes

    This will add a new button to the Board Editor () which will mirror the position you have currently. Unlike Flip board, it will create the exact same position for the other side, with the exact same valuation and move opportunities.

    Custom mini-game size

    category: General - Advanced
    values: a number - defaults to unset

    This feature sets a custom size to mini games, which are the boards that appear when you hover over a playing player link or in the Current Game or Broadcasts section, etc. The default is unset, which keeps the native lichess style. An equivalent numerical value for the default would be around 20. Change the number to increase or decrease the size of mini boards.

    Notes:

    • the minimum value that will be taken into account for mini-games is 17. Lower values will only affect the popup board in the computer eval window. That's because we have to take into account the ratings and username text in the user info popups.

    Remove chat link warning

    category: Chat, forums, blogs - Advanced
    values: yes / no - defaults to yes
    Needs log in

    An annoying "feature" in lichess is asking (randomly and inconsistently) if you want to leave the Lichess web site when clicking on a link in the inbox chat. This tool removes that warning.

    Lobby page elements

    category: Apperance - Advanced
    values: Side / Side:streams / Side:spotlights / Side:timeline / Play grid / Play buttons / Play:bullet / Play:blitz / Play:rapid / Play:classical / TV / Blog / Daily puzzle / Support / Feed / Tournaments / Leaderboard / Winners / About - defaults to all

    This feature selectively hides/shows elements in the lobby. Customize the main Lichess page to your heart's desire.

    If the Play grid is hidden, then the link to Play in the main menu will go to a page that shows just the play grid and buttons - this only happens in desktop mode, because on mobile there is just one link to the main page, not two.

    Notes:

    • At the moment the elements will just be hidden, the space they take remains there, unless an entire row of elements is hidden. Making every possible combination of elements arrange correctly is not trivial.
      • I have tried to partially fix issues in various configurations with common sense ideas. Let me know if you feel a specific configuration of elements looks better rearranged somehow. At this moment if you hide the side timeline, but you keep the feed, the feed will be moved instead of the timeline.
    • If you disable some subcomponent, like Side:streams, while showing its parent (Side), only it will be hidden. If you hide a component, all of its subcomponents will be hidden, regardless of how you set them.

    Daily quote

    category: General - Advanced
    values: no / On top / On the side - defaults to On top

    This feature will show a daily chess quote in your lobby on large enough screens. You can close it, which means you will not see it again that day.

    If you choose On the side, it will appear in the side section, which is on the left on large screens and you can see it even on smaller screens, on mobile phones for example. Another advantage is that it doesn't move the lobby layout down when the tool loads.

    The daily quote author can be clicked to get the list of all the quotes in the extension for that author.

    Timeline in Profile

    category: Appearance - Advanced
    values: yes / no - defaults to yes
    Needs log in

    This feature will add a new tab to your profile page with the timeline items. The same can be achieved by clicking on the "more" link at the end of the lobby timeline or if you enabled timeline notifications and you click on the notification. However, since the lobby feature can remove that part of the page and you may not want to enable notifications, here is a simple way to get to that page without any issues.

    Fix board coordinate position

    category: Appearance - Advanced
    values: Fix outside coordinates / Larger coordinate font / On each square - defaults to Fix outside coordinates

    This feature has two purposes. The first is to fix a Lichess bug that doesn't apply the preference for board coordinates on the outside in Analysis/Study. The second is to fix the CSS a little bit and also to enlarge the coordinates font.

    Since most people found the larger coordinate font ugly, you have to enable the larger font manually and is disabled by default.

    Also, a third option that doesn't exist natively on Lichess will put the coordinates On each square of the board. (Lichess also implemented this, so you get a choice on what to use)

    Profile slider options

    category: Appearance - Advanced
    values: Show dates / Add 1W filter / Fix small intervals - defaults to all

    On the profile of a user there are buttons to select the range of the chart on top of the page. There is also a slider that can select custom ranges and one can also drag the selection on the chart itself. This feature improves the way these elements work:

    • Show dates - will show the start/end date text in a label
    • Add 1W filter - will add a one week filter button
    • Fix small intervals - will update the slider minimum and maximum values in order to be able to be able to control small time intervals. When the start and/or end of the slider is unbounded (no left/right border) it means that there is more on that side which can become accessible if you increase the size of the interval or if you pan the slider in that direction. Having extra information to the left or right of the slider will change the text of the label to orange accordingly (start date, end date or both).

    Game list options

    category: General - Advanced
    values: Filters / Selection - defaults to all

    This feature handles options for list of chess games, like in Profile or Advanced Search. The options will be stored locally so they persist on page reloads

    Options:

    • Filter aborted - a filter to show/hide aborted games. Aborted games are considered games where one side has not moved.
      • Unfortunately that also includes currently playing games where no one has moved yet.
    • Filter analysed - a filter to show/hide games with a computer analysis
      • Warning: if you have a lot of games and very few with computer analysis, this will hide all of the games without analysis, leading to loading many pages of the game list really fast. Lichess might report a server overload.
    • Filter titled opponents - a filter to show/hide games against a titled opponent.
      • an opponent is considered a player that is not the one on who's profile you are on. If the page is not a profile page, like Advanced Search, then an opponent is a player that is not you.
      • Warning: if you have a lot of games and very few with titled opponents, this will hide all of the games without titled opponents, leading to loading many pages of the game list really fast. Lichess might report a server overload.
    • Color by players - will change the background color of each game based on the player names. The same two players, regardless of the side they play, should generate the same background color. This helps highlight matches.
    • Go direct to analysis - will make clicking on a game row take you directly to its analysis page, bypassing the game page.
    • Selection - this will add a checkbox to every game. Once at least one is selected, two copy buttons will appear at the top of the list which will copy all the selected games to the clipboard and download them in a file. The first button will copy them as PGN, the second as CSV.

    More decimals for computer evaluation

    category: Analysis (minor)/Study - Advanced
    values: yes / no - defaults to no

    If you enable this feature, the computer evaluation will show two decimals instead of one for computer evaluation values. This applies to the main evaluation value, the evaluation of each point of view as well as the evaluations of individual moves in the move list (if available).

    Active title icon

    category: Appearance - Advanced
    values: no / Pawn / Knight / King / Circle - defaults to no

    This feature will replace the default lichess tab icon in your browser with the lichess flair icon by default - which I believe is much nicer - and then change it depending on various conditions.

    If the tab contains a game (whether watching TV, a broadcast, a study or a game, playing or running puzzles) and the game is not ended, then the icon will change to a black or white icon, depending on whose turn it is.

    I added this tool is to easily see if someone moved in the game I was watching or if the game has ended or a new one started.

    Note: the pieces are mouse cursors, so maybe not the clearest image. White/Black circle are flairs, so they look better.

    Blog editing options

    category: Chat, Forums, Blogs - Advanced
    values: Auto save / Save button - defaults to Save button
    Needs log in

    Options:

    • Auto save will automatically save the blog you are editing every 30 seconds. This will only happen if the content of the blog has changed from last save and it is still in draft.
    • Save button will add a Save button 😁. This will allow you save the blog you are editing and continue working on it.

    Blog visit history

    category: Chat, Forums, Blogs - Advanced
    values: Show visited / Persistent blog view - defaults to Show visited,Persistent blog view

    This feature will make it easier to understand which blog posts you have read and liked. At this point all it does is record what you visited and then indicate that in blog post lists.

    Options:

    • Show visited - will show an eye icon on blog post cards if that blog post has been visited in the past. If you liked the post, it will show as a red heart instead.
      • this also will add a tooltip over the number of views in a blog showing the percentage of likes over views for blogs with over 100 views. As a principle, everything over 2% is good.
    • Persistent blog view - this will remember last blog view (community, friends, topic, sort) and set that as the Community/Blog link in the Lichess menu.

    Note: you must visit a blog post after this feature has been added for it to show as visited. Also, this is stored locally, so changing devices will show a different view.

    Computer evaluation line options

    category: Analysis (minor)/Study - Advanced
    values: Highlight same moves / ...only current orientation / More lines / Color evaluation / Depth chart - defaults to More lines

    Options:

    • Highlight same moves - this will colorize the moves if found several times in the computer eval lines. Each specific move will have a different color, so you can easily determine the difference between moves.
    • ...only current orientation - this will only colorize the moves of the side on the bottom of the table, provided Highlight same moves is enabled.
    • More lines - this will add a little button next to the slider for how many computer lines you want to see in the computer evaluation. Clicking it will toggle the maximum value of the slider from 5 to 10. So you can go to the computer engine settings, toggle to 10 maximum lines, then drag the slider to 9.
      • Note: for external engines, Lichess API limitations make this feature break with a 422 error message.
    • Color evaluation - this will add colors (best, good, mistake, blunder) to the evaluation values in the computer engine lines
    • Depth chart - this will overlay a small chart on the value of the computer evaluation, showing how it changed on different engine depths. Good for finding out positions difficult to evaluate. 

    Go to Analysis on game end

    category: Play - advanced
    values: loss / draw / win - defaults to none
    Needs log in

    This feature will automatically open the Analysis page when your game ends with the selected outcome. Note that draw means anything that is not a win or a loss, so even aborted games.

    Extra piece sets

    category: Appearance - Advanced
    values: chess.com - defaults to none

    This feature will add extra chess pieces to Lichess. For now the only options is chess.com, which adds the sets of 2D pieces from chess.com to the list.

    Note: the piece sets are loaded from chess.com itself, they are not bundled in the extension, so if you have any issues with chess.com, this feature will not work as expected.

    Themes

    category: Appearance - Advanced
    values: whatever themes are available - defaults to none

    This feature will enable/disable various CSS themes. If an external theme (made by someone other than me) it will show attribution in the Preferences page. It will also be the creator's responsibility to maintain it.

    Available themes:

    • Performance - performance CSS changes, mainly attempting to remove all animations, which cause slow rendering
    • Just Explorer - will hide the computer eval moves (but not the arrows, if enabled) and the move list when the Explorer is open. This will only be applied for mobile devices
    • Mobile - a lot of style improvements for mobile, especially aimed at studies and interactive lessons
    • Slim arrows - will make arrows less thick: color arrows, variation arrows and computer evaluation arrows.
    • ... slimmer - only with Slim arrows enabled, makes the arrows even slimmer
    • Fewer icons - will hide the header lichess and logged user icons
    • No sticky header - will make the page header scroll with the page
    • No study chat - eliminate the chat from studies and expand the chapter list for large screen layouts.
    • Toggle study chat - same as No study chat, but only when you toggle the chat button in a study. I recommend it over the No study chat one
    • Nicer piece drag - adds some sizing and borders to piece dragging, enhancing the experience
    • No Practice button - especially useful on mobile devices, it hides the Practice with computer button under the analysis tools, thus preventing you from starting analysis for no good reason by mistake
      • also check out the Quick Actions Toggle Practice option, which can move the Practice button in the quick actions menu
    • Flexible game move list - the move list in games (so when playing or watching games on Lichess TV) is pretty limited in space. This theme fixes that
    • Thick analysis gauge - the analysis gauge will be 50px thick
    • Larger analysis move font - the font size in the analysis move list will increase by 125%
    • Grid board squares - this will add dark lines around the board squares for 2D boards
      • this also forces the user selected board when using it in Prettier Lichess, rather than the forced white/blue theme
    • No game result popup - this will hide the popup with the result at the end of games on mobile
    • Fix third parties - various fixes for issues in other extensions or third parties that won't fix the issues themselves
      • this is for Prettier Lichess for now

    Notes:

    • Multiple themes can be applied at the same time, but beware of conflicts. 

    Wiki pages based on FEN

    category: Analysis (minor) - Advanced
    values: yes / no - defaults to yes

    This feature will show Wiki pages on openings even if the order of the moves changes. Basically, it looks for the Wikibooks Chess Opening page associated with the current position.

    OBS Integration

    category: Integration - Advanced
    values: yes / no - defaults to no

    This feature will add an OBS button to broadcasts. There you can set up mappings between broadcast boards/chapters and OBS scenes, so that changing the board selection will change the scene as well. Each broadcast has its own setup and mappings.

    Don't forget to enable the WebSocket server in OBS' WebSocket Server Settings

    The default OBS connection settings are localhost, port 4455, no password. If you want to use passwords or some other URL, you will have to open the OBS setup popup by pressing the button (you will get no scenes to map), then update the password and/or URL, save the settings, then reopen the OBS setup. Now, with the correct password, the OBS scenes should be available. But the simplest thing is to not use a password and run the server locally on the default port.

    By default, broadcasts will have OBS disabled and the OBS button for them will appear dimmed. Click on it to set up the mappings and connection properties and save to enable it. You can also enable/disable the OBS integration for the broadcast by right-clicking on the OBS button or by pressing O.

    There is a default scene mapping that, when set, will change the scene for all boards that don't have a specific mapping. This scene will also be used for the board list view of a broadcast (no big board displayed, just the list). If you don't want this functionality, set the default scene to empty.

    Unselect piece after specified seconds

    category: Play - Advanced
    values: numeric- defaults to empty

    If you select a piece while playing (games or puzzles) and wait for the number of seconds specified by this setting, the piece will get automatically unselected. This only works for the last move in the list, so for example this will stop working after you make a mistake in a puzzle and there is a wrong move after the current position.

    Easy access full screen button

    category: General - Advanced
    values: yes / no - defaults to no

    If enabled, this will hide the Lichess header in full screen mode and will add a top header button () that will enable a full screen mode when pressed. To return to normal press Esc, F11 or move the mouse to the top of the screen and click the hovering X button.

    Notes:

    • this only works in Desktop mode, not for mobile.
    • in Zen mode the full screen button will be visible. If the option is on, full screen in Zen mode will not show the Lichess logo and the button to exit Zen mode, therefore if you want to exit Zen mode you either use the Z key shortcut or exit full screen mode, then use the exit Zen mode button.

    One click move

    category: Analysis (minor)/Study - Advanced
    values: Analysis/Study / Only orientation side / Move from PGN - defaults to none

    This feature enables one click moves, when clicking on a square where only one piece can legally move will perform that move.

    Options:

    • Analysis/Study - this enables one click move in Analysis or Studies
    • Only orientation side - this forces the feature to only work for the side that the board is oriented for. So if you see the board from the White orientation, it will only work for when it's White's turn to move.
    • Move from PGN - this is only for the situation where the square you clicked on can accept multiple pieces moving there. In that situation, it will only work if you are not in Interactive mode or you can write to the study (owner or write access contributor). Then if the PGN (analysis or study) contains only one move that reaches the destination square, it will make that one.
      • this is mostly an accessibility feature to help easily do training without clicking and moving the mouse a lot.
      • when it's ambiguous what the player meant with a click, the pieces that can move to that square will flash briefly. This also will happen when there is only one move in the study you own and that move will be made.

    Notes:

    • this only works in Analysis/Study for now. Altering the way the game is played is against the Lichess Terms of Service, but I am working on convincing them to implement it natively.
    • to clarify the Move from PGN option, it will not apply in the following situations:
      • you are in interactive mode and you are not an owner or writing contributor - the idea here is that if you can always exit interactive/preview mode you can find out what the next move is, but if you cannot, you don't know what the next move should be
      • there are moves in the PGN that reach the clicked square, but there are multiple ones - LiChess Tools doesn't know which one to pick
      • obviously, if you have access to the PGN you can just look what the move is, so there is no conflict in non interactive mode or in the Analysis board
      • running correspondence games

    Mouse wheel during game play

    category: Play
    values: yes / no - defaults to no

    This feature will enable mouse wheel during play. Just like in Analysis, it will move to the previous/next move in the move list. This behavior is disabled by default in Lichess as to not interfere with game play, so that's why it's also not enabled by default in LiChess Tools.

    Expand all variations

    category: Analysis/Study - Advanced
    values: Show button / Auto expand - defaults to false

    Options:

    • Show button - adds a button looking like a magnifying glass with a plus sign in in () in front of the first move in the move list tree in case any of the variations in the tree are collapsed. Clicking on the button will expand all variations recursively and then hide the button. Any operation that will result in collapsed variation will show the button again.
    • Auto expand - auto expands all collapsed variations in a study chapter or analysis tree the first time they are loaded

    Commands

    The commands feature is actually a combination of tools that register themselves with the cliCommands tool. This enables you to type / and then a command and execute various functions, besides the standard ones. Since commands are executed manually, they have no visible Preference to disable them.

    Here is the list of available commands:

    • board - it will show/hide the board in Analysis mode (Analysis board and Studies). Use this with the Expanded move list and Hide left side options of the Move list options feature to have a move list filling the whole screen (good for presenting, for example).
    • trapvalue - provided the current move is in the Explorer database, this command will calculate the trap value of the current position. For more details on what that means, check out How To Calculate The Trappiest Chess Openings Using The Lichess API
    • copypgn ["fen"] ["separate"] ["tohere"] ["unicode"] - this will copy the moves in the analysis move list (Analysis board and Studies) to the clipboard as the moves reaching the current position and any branching moves from it.
      • if fen is specified, the PGNs will start from the current position with the FEN tag specified
        • same as Shift-click on the Copy PGN menu item 
      • if separate is specified, each variation will be saved as a separate linear PGN
        • same as Ctrl-click on the Copy PGN menu item
      • if tohere is specified, the PGN only copies moves to the current position
        • same as Alt-click on the Copy PGN menu item
      • if unicode is specified, the PGN will have unicode pieces instead of letters
        • note that results in a text that is meant for human readers, no longer a valid PGN
    • readgame [speed] [voice] [instrument] - this will read the game moves from the current position. It will follow only the first variation of every node, ignoring the others.
      • speed is an optional integer number, defaults to 100. Larger values makes the speech faster, lower makes it slower.
      • voice is an optional integer index number, defaults to 0. Changing it will change the voice which reads the moves, depending on your own browser setup.
      • instrument is an optional integer index number, defaults to 0. Changing it will enable a sound to be played in the background, based on the computer evaluation, if the game has been analyzed.
      • example: /readgame 80 2 1
      • this command also adds a feature to read a game in analysis if you add #readgame at the end of the URL (i.e. https://lichess.org/<game id>#readgame or https://lichess.org/<game id>/black#readgame or https://lichess.org/study/<study id>/<chapter id>#readgame etc.)
    • skipmove - this will generate 5 moves (if possible) to reach the same position, but with the other side to play.

    Commands options

    category: Commands - Advanced
    values: Disable mouse over - defaults to none

    This feature is about various options related to CLI commands functionality.

      Options:

      • Disable mouse over - this option will eliminate a behavior that annoyed some players, mainly that moving the mouse over the magnifying glass icon on top of the screen would work just like clicking on it, taking focus from other things.

      Also save options for browser private/incognito mode

      category: General - Advanced
      values: yes/no - defaults to no

      This was a user request to find a way to save the options outside the local browser cache, as he was playing the game from incognito/private browser mode. Since no other solution was better, this saves the options as notes in the first chess game you ever played on lichess. So be careful that this will alter those notes, although I am not aware of many people using the private notes feature.

      Notes:

      • be aware that it will alter the private notes of the very first game you played on lichess
      • the extension will use whatever options you have in the browser local cache. Only if they are not there it will take them from the notes. That means that you can do weird stuff like enabling the feature, saving options, disabling it, changing the options and now you will have different settings in normal and incognito mode. So use with care.

      Hide score tally crosstable

      category: Play - Advanced
      values: yes/no - defaults to no

      Another user request was to not see the crosstable, the thing that shows how many games you played with the same opponent and what the results and games were. It was intimidating. This feature will blur it out, but allow you to click on it to unblur it. It's a silly feature that may not survive long because there is also the Zen mode lichess option which overlaps this behavior, but it's here for the moment.

      and has 0 comments

        I read The Collected Stories of Frank Herbert on and off for two months. Some of the stories are brilliant, some of them are seeds to future books, while some are just mediocre. But the series is very revealing of Frank Herbert's mind and filled with intriguing and unique ideas. I liked it!

        There are thirty eight short stories in this huge book. Some of them made me think days after I've read them. Perhaps that's the best way to read this: story by story with pauses in between. Or other books.

        Honestly, I didn't feel like reading much these two months, either. From the great endeavor of reading everything Herbert, I only have one collection of four unpublished novels. Then I am free to read other stuff. Unfortunately it does feel that way, like something that needed effort to finish. Most of it was pleasant, but damn it took too long!

        Bottom line: I think if you liked Dune, for example, you might want to try a few of the other great novels he wrote, but before that try reading this collection, get a feel for the man and, of course, don't let the average experimental things be the last thing you read of Herbert.

      and has 0 comments

        So you've been watching someone on YouTube DESTROYING their opposition (note that my use of capitalization and over the top language is ironic here. All this post needed was me making an O face in a picture with a fire background) and you tried to do it, but you just failed miserably. You watch the videos again and again, vaguely remember some lines and it doesn't matter anyway because your opponents play something else than you had prepared for. What to do?

        Well, it's easy with the LiChess Tools browser extension, in 10 easy steps! (again, irony)

      Step 0: install the LiChess Tools extension on your Chrome/Brave/Edge/Kiwi/Any other chromium browser.

      Step 1: go to lichess.org and export the games of your idol

      • make sure you check the box for Opening, you will need it later

      Step 2: remove all the moves after a certain depth, since you want to learn theory

      • this can be done using regular expression search and replace in a decent text editor like Notepad++ (here is a pattern to select all moves after depth 20: 21\.\s+.*?$ which you can replace with nothing)
      • Note that regular expressions look daunting, but are very simple in what they do. The one above looks for 21, a dot, some spaces, then gets everything until the end of the string. If you remove this, you get with the first 20 moves, since lichess exports games as one line.

      Step 3: select all the games with required opening

      • again this can be done using regular expressions. Here is a pattern for "Elephant Gambit" games : (\[\w+\s+"[^"]*"\][\s]*)+(\[\w+\s+"Elephant Gambit*"\][\s]*)+(\[\w+\s+"[^"]*"\][\s]*)*\s*1\.\s+.*?$ 
      • Notepad++ has a nice feature of marking all matches and then copying them wholesale (Note that when you copy them, the matches will be separated by four dashes ---- which you will need to remove, just search and replace)
      • the reason I am using the PGN opening name to find what I am interested in is transpositions. Also it makes for easier regular expression patterns. However you can use any search pattern, for example the exact move order to get a position. Just remember that any brackets and dot are special characters in regular expressions, so you have to escape them with a backslash. Example: . (dot) means any character in regular expressions, but \. means an actual dot. 

      Step 4: go to lichess.org Analysis and copy paste the games there and import them

      • the enhanced import functionality that will merge multiple games will only work if you install LiChess Tools
      • there might be an error that there are too many PGN moves. In that case, try to import less games (less than 100 usually). This will generate a merged PGN which you then can merge with the other merged PGNs. Anyway, there will always be a maximum move limit imposed by the limitation of lichess
        • the limitation for number of PGNs has been removed in v1.7.4, although I just tried it with about 1000 PGNs (25000 moves!) and the site moves kind of slow. I suggest moderation :)

      Step 5: transform the analysis with all the moves into a study

      Step 6: examine moves and delete everything after obvious blunders (like hanging pieces)

      Step 7: examine moves and remove transpositions, if any

      • transpositions can only be detected after installing LiChess Tools: they will appear highlighted when one of them is the currently selected move

      Step 8: examine moves and add glyphs to them (good move, mistake, blunder, etc)

      Step 9: edit the chapter and set it to Interactive Lesson

      And you're done! All you have to do now is hit the Preview button and play as your favorite chess player. Note that the functionality to play all variations of a PGN is only available, you guessed it, if you install the LiChess Tools browser extension. The glyphs now come in handy, because you see when you are making a mistake or not or when the opponent does it.

      Play to the end of a variation, trying to guess what they would play in that position, then exit Preview, mark the ending move with a comment, perhaps an evaluation. Go back in the tree of moves until you get to the first branching and cite the game that was imported from the game explorer window. You do that by clicking the game and choosing the Cite option. Then play again. And again.

      Soon you will start to anticipate the style of your preferred chess master and play the same moves. When that happens, go back to the battle field and kick ass!

      As an example, you can check out my own study which imports all Jonathan Schrantz (zolpi) Elephant Gambit games: Zolpi's Elephant Gambit , a PGN with 3292 moves from 114 games. I've also added a chapter with only the wins, so you can learn the good moves only :)

      That's all! Let me know if you found this use case... well... useful.