Bots 4.0: A Fresh Start

April 30, 2026
TL;DR

Bots 4.0 is a full rebuild on a new neural foundation (Maia2). The bots are more stable, less prone to weird inhuman moves, support every time control all the way down to hyper-bullet, and the rating ladder now stretches from genuine beginner level to well above 3000.

Written by

Jonatan Pettersson
Jonatan PetterssonCo-Founder

Ex-Spotify software engineer with an avid chess interest and FIDE 1908 rating. Experienced chess engine programmer and author of what once was the strongest Java chess engine in the world.

Bots 4.0 announcement

Bots 4.0 are built on a new foundation, and they are more stable, more human, and a much wider rating range.


What is bots 4.0, and why so soon after 3.1?

Fair question. In the 3.1 article we explicitly said 4.0 wasn't around the corner and we meant it, at the time.

The first was that we kept running into positions our setup struggled with, endgames in particular. Every fix patched one gap and exposed another. It became a bit of whack-a-mole, and while we got it into a nice place eventually, it was at the cost of a lot of complexity. We were genuinely worried that the technical debt we'd built up would slow future development to a crawl.

The second was stability. Our old setup filtered bot moves through server-side Stockfish instances, and Stockfish was unstable and unreliable on our infrastructure. We tried a lot of things to fix it. Bigger servers, more memory, fleets of smaller servers, queueing systems, but at best it mitigated the issue rather than fixed it. On top of that, the per-move processing had grown slow enough that bullet was no longer feasible, and we couldn't see a path to fixing that without re-evaluating every other fix we'd built on top.

We did try to make the old foundation work. We just couldn't, not fully. So we started investigating alternatives, and Maia2 fit so well in our early tests that we simply doubled down on it and decided to go for bots 4.0. Now about month later, with way too little sleep, I'm very confident we made the right choice.

So why Maia2 and why didn't we use it before?

When I started writing the first bots for Chessiverse, 2.5 years ago, I wanted them to feel truly unique. I wanted to use my chess programming knowledge to create something excellent, something that felt truly human and different. I discarded most shortcuts and went head-on with reinventing the wheel.

What this gave us was a lot of flexibility and control over how the bots played. Something for example a dumbed down Stockfish wouldn't. We could steer the bots in certain directions, and we could do things like the playstyles from bots 3.0, or the Christmas bots that had completely unique playstyles (like Santa gifting a piece in the beginning of every game).

But it also gave us a problem. The core of the bots were unreliable. They suggested some truly horrendous moves that no human would ever play. So we built filters to remove those moves and keep the good ones (or rather, the human ones, strength is not as interesting). After (and before) bots 3.0, we spent weeks patching holes, which is not a fun feeling. Not for us, and certainly not for our users. We eventually got the bots into a good place, but as mentioned, at the cost of a lot of complexity.

Faced with all of this, I realized that the systems we built to make the bots feel unique. Their playstyles, their opening books, strengths and weaknesses, were actually not part of the core of the bots. The core of the bots were simple dumb nerual nets, that suggested quite poor moves from time to time. They were not specialized in avoiding non-human blunders, they were made to create a variety of interesting moves. Something we then had to fight to get rid of again with our filters.

So why not just fix that problem with a known excellent core in the Maia2 nets. We still have our playstyles and everything we built over the last 2.5 years. The only thing we replace is the engine for generating candidate moves, and we're simply upgrading that to a better one. Thinking about it, it's an obvious step with no downsides.

Did you finally manage to add much weaker bots now?

Yes, finally. This has been an ongoing struggle, and I feel it's been finally resolved.

The issue we had was that while we could of course just let bot play random moves to make them weak, we still have "human rules" to abide by. Losing a queen is fine, but losing it in the wrong way can be very jarring, even for a weak bot.

With our old wider neural nets, we couldn't confidently allow any moves to enter the candidate pool, as they could be really really poor (as in non-human), and our filters had to work overtime to clean them up when we did. So while we tried pushing the bots to be as weak as we could make them, we couldn't really let go fully beginner mode without making it feel like a random mess.

Maia2 completely solves this issue for us. We can selectively let the bots choose from a vetted pool of candidate moves, that can be super weak, but at the same time humanly likely. An essential combination to make a good weak bot. I'm very happy how our move selection coupled with Maia2's candidate pool worked out, the weak bots feel weak, not random.

And so much stronger?

The top of the ladder now goes well past 3000. Most users will never beat those bots. That's fine.

Our goal is for Chessiverse to feel like any chess platform, like chess.com or Lichess, except that on Chessiverse you play bots instead of humans. Coverage of the full rating range is part of that feeling, even if you personally only ever use a slice of it. Knowing the ladder is there matters.

What does it actually feel like to play?

I've played a lot of games on the new bots, and I'm very happy with how they play. Is it a huge jump up in humanlike moves? Well, I feel the 3.0 bots were eventually in a pretty good place, so there was a huge room to improve, but as mentioned we had issues with occasional jarring moves, especially in endgames, and those are more or less completely gone. At least to the point where when they show up, it feels like an expected anomaly that humans also make.

Our previous setup allowed a fairly wide range of moves on purpose, to give the bots variety and personality. The trade-off was that too many weird moves got through, and we kept building filter on top of filter to catch them. With 4.0, the variety comes from a substrate that's already human-shaped, so the weirdness ceiling is lower without flattening the personality.

Stability is the other big one. With Stockfish out of the move-filtering loop, the move-time variability that used to plague us is gone. Bots respond reliably, even at fast time controls. 4.0 is what makes hyper-bullet a realistic prospect, there's still some time-control work for us to finish on the broader system before bullet is fully working again, but the bots themselves now support every time control, and that work is happening soon.

What about my favourite bot?

We've tried hard to keep the strength and playstyle of every bot intact through the migration, but this is genuinely new infrastructure underneath, so what's carried over is an approximation rather than a transplant. Your favourite 1500 bot should still be in the ballpark same rating and it should have the ballpark same playstyle, but exactly how they squeeze out a position might feel a bit different.

Honestly, the best mindset is to treat 4.0 as a fresh start. Don't anchor too hard to how a particular bot used to feel. Play around, see who you click with now. Some old favourites will feel familiar; some will surprise you.

So is 5.0 around the corner?

No. (We mean it this time too.) We have a foundation we like a lot now, and the next chapter is about building on top of it rather than tearing things up again. More refinement of the playstyles, finishing the time-control work so bullet and hyper-bullet are fully unlocked, more bots, more personalities, and more of the things Maia2 specifically unlocks for us.

Going forward

We're really excited about where the bots are now. Give them a go. And if you find something that feels off, or just want to talk chess, we're always eager to hear from you at support@chessiverse.com, or even better come and chat with us directly on our Discord. A lot of the changes we've made over the last year have come straight from conversations there.

Back to Articles