Season 21 started with a qualification league, 14 engines trying to win one of 8 spots that move on to the next stage. The participating engines are:
played in Season 20 league 4: Bagatur,
played in Season 20 qualification league: Koivisto, Cheese, Stash
returning after not playing for a few seasons: Nirvana, Booot
new: ClassicAra, Drofa, Berserk, Cheng, Amoeba, tomitankChess, Invictus, Francesca
Final standings
Koivisto, ClassicAra, Booot, Cheng, Stash, Nirvana, Amoeba and Drofa advance to league 4.
It was clear from early on that the top two engines were winning most of their games and the bottom 4 were losing theirs. The remaining 8 engines fought for 6 qualifying spots, the struggle for places 7-8 continued to the end with the last spot determined in the last game.
Koivisto won the league, it only crashed once. Recall that last season it crashed half of its games and won the other half. After fixing the crash problems its strength became apparent.
Booot and Nirvana returned to TCEC after not playing for a few seasons. Both advance to league 4, Booot more comfortably than Nirvana, despite crashing once (this crash gave Invictus a free point and it was very close to qualifying as a result). It remains to be seen if they can reach their previous ranking, Booot was 3rd in league 1 in season 18 for example.
League 4 is already being played. The 8 qualifiers will join 4 engines, making league 4 very similar to the qualification league, now with only 4 engines advancing. The additional engines are Monolith, Halogen, ChessFighter and MrBob, all played in league 4 in season 20.
Interesting games
game 7, Drofa - Nirvana: The engines shuffled for more than 140 moves in a Q vs RN imbalance. Drofa then sacrificed two pawns and exposed the black king, leading to a mating attack.
game 14, Bagatur - Koivisto: Bagatur allowed a black pawn queening for two minor pieces, Koivisto won in an unusual QBN vs QQ position.
game 17, Stash - Invictus: Stash ignored the danger to its king as Invictus opened the king side with its pawns. After Stash gave a rook for a bishop the attack on the white king gave Invictus enough material to win.
game 23, Cheng - Nirvana: Nirvana was better in a QN vs QB position, it captured two pawns and reduced to a winning queen ending.
game 24, Amoeba - Drofa: Amoeba pushed the black pieces back until Drofa could hardly move. Amoeba went two pawns up and cleared the black queen side pawns, the passers were enough to gain material and win.
game 26, Invictus - Booot: Booot had an advantage after the opening but it crashed.
game 34, Nirvana - Amoeba: Amoeba was better in a QR vs QBN position. After 20 moves it forced a R for N exchange, then it slowly captured pawns until it was a pawn up with an unstoppable passer.
game 39, Invictus - Drofa: Invictus reduced to a QB vs RR position, then used the exposed black king to capture all the black pawns. Invictus queened a pawn to win.
game 47, Nirvana - Invictus: Invictus had a better position after the opening, but Nirvana reduced to a RB vs RB position and equalized. Nirvana was better in the endgame, it captured a pawn, then gave the bishop to created connected passers and win.
game 49, Cheng - Amoeba: Amoeba was a pawn up and it ignored Cheng's king side attack until it was too late. Amoeba gave material to save its king, reducing to a QN vs Q position. Cheng captured all the black pawns and reached a tablebase win.
game 52, Invictus - Berserk: Berserk was up a pawn in a RN vs RN position, it took more than 30 moves to convert.
game 70, Booot - ClassicAra: Booot went up a pawn early, then captured another pawn and exposed the black king. ClassicAra had no effective counter and Booot mated on the back rank.
game 72, Drofa - Booot: Booot traded a pawn advantage for a strong attack with its major pieces on the queen side. Booot gave a rook for a knight to expose the white king, Drofa gave material but could only postpone the mate.
game 73, Nirvana - Stash: Nirvana was 3 pawns down in a RR vs RRB position. It took Stash more than 25 moves to force a rook exchange, then it used a pawn on the 2nd rank to mate on the back rank.
game 84, ClassicAra - Drofa: ClassicAra had a clear win in a knight ending, but it gave a pawn for no reason and lost the advantage. Drofa, out of shock perhaps, gave its knight two moves later and lost. Weird.
game 86, Nirvana - ClassicAra: ClassicAra missed a win in a 7-man rook ending.
game 89, Amoeba - Cheese: After more than 60 moves shuffling in a bishop ending, Amoeba gave its bishop and lost quickly.
Standings after RR1: Koivisto +9, ClassicAra +7, Stash Booot +4, Cheng +3, Nirvana Invictus +2, Amoeba Berserk +1, Drofa -1, Bagatur Cheese -6, tomitankChess Francesca -10. Koivisto and ClassicAra won most of their games so far and are on their way to qualify. Bagatur, Cheese, tomitankChess and Francesca lost most of their games and will surely be last. The remaining 8 engines are in the race for 6 qualifying spots, currently Amoeba and Berserk are in 8-9th place.
game 95, Amoeba - Stash: Stash may have missed a win in a BN vs BN position with one pawn up.
game 96, Cheng - Booot: Booot played better in a QRN vs QRN position. Cheng gave a rook for a knight and created connected passers, but Booot attacked the exposed white king, captured material and won.
game 98, Nirvana - Drofa: The engines shuffled in a RB vs RN position. The white king was active in the center, Nirvana went two pawns up and then reduced to a winning rook ending.
game 102, Booot - Amoeba: Amoeba thought it was safe, it was two pawns up while Booot attacked the king side. Booot gained material and chased the black king, mate was just a matter of time.
game 114, Nirvana - Cheng: An attack on the white king resulted in a passer on the king side for Cheng, and then a second passer on the 2nd rank. Nirvana gave material to get rid of the advanced passer, resulting in a RB vs RR ending and a tablebase win for Cheng.
game 115, Drofa - Amoeba: Drofa placed its queen on g6 with the black king in the corner. The king side attack resulted in a won king and pawns ending with Drofa 3 pawns up.
game 117, Booot - Invictus: Booot attacked through the center, it gained a lot of material and won quickly.
game 125, Amoeba - Nirvana: Evals increased without almost no exchanges, Nirvana's pieces had very little room to move. Nirvana gave a rook for a knight to open the position, Amoeba reduced to a winning RB vs BN position with a pawn up.
game 126, Cheng - Berserk: Cheng attacked the black king with its queen on h6. The pressure increased and Cheng captured a rook for a bishop. The material advantage increased and mate followed.
game 130, Drofa - Invictus: Drofa had a strong center with doubled rooks and a passer. Invictus got rid of the passer but Drofa reduced to a double rook ending two pawns up to win.
game 140, Amoeba - Cheng: Amoeba had a small advantage after the opening, but Cheng equalized. It gave a pawn and attacked the white king, eventually reducing to a QRR vs QRR position with two advanced passers and Amoeba's king trapped in the corner, enough to win.
Standings with 6 rounds to go: Koivisto +14, ClassicAra Booot +9, Cheng +6, Stash +5, Nirvana +3, Drofa +1, Invictus Berserk 0, Amoeba -2, Bagatur -9, Cheese -11, tomitankChess -12, Francesca -13. The last qualifying spots are still contested. Two engines out of Drofa, Invictus, Berserk and Amoeba will not qualify. Nirvana in 6th place is not safe but it has a 3 win margin.
game 151, Koivisto - Nirvana: Koivisto crashed in a drawn rook ending.
game 153, Invictus - Cheng: The position was equal for 40 moves, then Cheng went a pawn up with connected passers and with RNN vs RNN remaining. Invictus captured one passer for a knight, Cheng reduced to a knight vs pawns ending and kept one pawn to win.
game 156, Amoeba - Invictus: Amoeba increased the pressure on the black king, Invictus had a queen side passer but it was blocked. Amoeba gave a pawn and opened the king side, then reduced to a RR vs RN position with a passer on the 7th rank to win.
Standings with 3 rounds to go: Nirvana +6, Stash +5, Drofa Amoeba +1, Berserk 0, Invictus -2. NIrvana and Stash will qualify almost surely. Amoeba improved significantly with 3 wins, Invictus lost twice including a crucial loss to Amoeba. Drofa and Berserk drew 3 games.
In round 24 Drofa survived with a draw against Booot, while Amoeba, Berserk and Invictus won their games. Standings are Amoeba +2, Drofa Berserk +1, Invictus -1.
In round 25 Invictus won, Berserk and Amoeba drew against Stash and Koivisto, and Drofa lost to ClassicAra. Standings are Amoeba +2, Berserk +1, Drofa Invictus 0. Amoeba is safe, the last round will decide which engine is the last qualifier.
In the last round Drofa and Amoeba won and Berserk lost. In the very last game Invictus only managed a draw against Bagatur, missing a chance to reach joint 8th position. The final standings are Amoeba +3, Drofa +1, Berserk Invictus 0.