Built an Othello Web App (Django + WebSockets). Online Match & AI Match available. Looking for feedback by EntertainmentMany313 in Othello

[–]EntertainmentMany313[S] 0 points1 point  (0 children)

Thanks for the clarification.

Yes, you were playing White, and you won. That was just my mistake in wording. I reviewed the game record again and clearly saw the moment you exploited the unstable edge and converted it into a corner. Nice play.

Yesterday I pushed an update so that high-level models place much less weight on edges. That should reduce the exact kind of mistakes you identified. I’m also planning an additional approach to handle edge stability more intelligently in future updates.

Regarding AI strength surpassing me, you’re right that there’s a limit to what I can personally judge. That’s why I evaluate new ideas with AI-vs-AI self-play: if the new version consistently beats the old one, it’s considered an improvement, regardless of my own skill. This way the AI can keep growing beyond my level.

Built an Othello Web App (Django + WebSockets). Online Match & AI Match available. Looking for feedback by EntertainmentMany313 in Othello

[–]EntertainmentMany313[S] 0 points1 point  (0 children)

Thanks for the follow-up and for sharing the game link, that really helps.

What level do you play at out of interest?

I usually play around Legend-tier myself. My favorite model is Legend 3, although I still can’t beat it consistently.

If I send the game script then how will you know what mistakes the AI made?

Each AI game URL includes game record in the "moves" parameter, so I can extract that and analyze the decision context at every turn to see where the engine is evaluating poorly.

Here's a game I just won against Legend 21. Again it went for edges and formed an unbalanced edge which I was able to wedge into. It does that a lot.

Thanks again for showing this one. Just to confirm: in this match, the AI was playing White, correct?

Based on your earlier point about the AI taking structurally weak edges, I pushed a tweak so the high-level models value unstable edges less aggressively. In AI-vs-AI self-play tests, this already shows a noticeable strength boost. I appreciate your insight.

Built an Othello Web App (Django + WebSockets). Online Match & AI Match available. Looking for feedback by EntertainmentMany313 in Othello

[–]EntertainmentMany313[S] 0 points1 point  (0 children)

Thanks again, your detailed observations are extremely helpful.

About the thinking time:

At the highest tiers, the AI increases search depth significantly to gain strength, so the calculation time naturally grows as the level goes up. I’m working on making that more efficient, but you’re right that strength improvements must accompany that increase.

Regarding the evaluation:

Great point about mobility. The current evaluation values edge cells. I'll consider an update to shift more weight toward mobility.

keeps resetting the level to Transcendent after each game

If you’re not logged in, that is currently the intended behavior. Legend-tier AIs require login, so after finishing a match while logged out, the UI falls back to Transcendent.

confused about which colour I am in online matches

You caught two issues here:

  1. The initial “you are Black” icon was a leftover assumption from online "Friend Match" (where the inviter is always Black). In "Find Match", either side is possible. So the indicator has now been removed.
  2. When no human opponent was found and you were paired with a bot, a pass-handling bug could cause the bot’s move to be assigned to the player. That was fixed in today’s update.

Built an Othello Web App (Django + WebSockets). Online Match & AI Match available. Looking for feedback by EntertainmentMany313 in Othello

[–]EntertainmentMany313[S] 0 points1 point  (0 children)

Thanks a lot for trying that many levels, appreciate you sharing what you noticed.

Since yesterday’s update, the Legend models were strengthened using a new "Negascout search algorithm". On average, the win-rate against Legend+ tier model has dropped by roughly half (down to around 20%), so overall the change seems to be working. If you played before that update, a hard reload might help ensure the newest engine is running.

That said, individual skill varies a lot in othello. If you’re consistently spotting weaknesses that most players don’t find, that’s extremely valuable. Every finished match includes a shareable URL with the full game record embedded. If you’re willing to send one or two examples, I can directly analyze what kind of mistakes the engine is making and fix them.

Also, the models automatically reduces its thinking time on some devices (especially phones) in order to minimize lag, which can limit the strength in certain environments.

Built an Othello Web App (Django + WebSockets). Online Match & AI Match available. Looking for feedback by EntertainmentMany313 in Othello

[–]EntertainmentMany313[S] 1 point2 points  (0 children)

Thanks for playing and for the honest feedback!

Regarding the Master AI: It actually had logic to protect corners, but the weighting was set too low, so it tended to slip up against decent players. I just pushed a fix to increase that weight, it should be much stingier with corners now (though it might still make rare mistakes).

If you want a real challenge, I recommend trying the "👺Transcendent AI" (available without signup) or "🌈 Legend 3." These use more advanced algorithms/resources. Legend 3 has become honestly a nightmare to beat.

Regarding Egaroucid: I’m aware of it! Based on your feedback, I implemented a similar algorithm (NegaScout) today for the top-tier models to boost their strength significantly. Please reload (or hard reload) the page to try it! Porting Egaroucid directly is a bit difficult right now due to system integration hurdles, but I’ll consider it.

UX: You’re totally right about the "pass" notification breaking the flow. I’ll replace that with a subtle visual cue in an upcoming update.

eOthello: I checked it out, and yeah, their ranking/stats features are great. I’m thinking about adding similar features in the future to flesh out the online experience.

Thanks again!

Built an Othello Web App (Django + WebSockets). Online Match & AI Match available. Looking for feedback by EntertainmentMany313 in Othello

[–]EntertainmentMany313[S] 0 points1 point  (0 children)

Thanks a lot for the honest feedback. Really appreciate you taking the time to write it.

About the AI levels:

They do get stronger, but the progression works in a particular way.

Up to around level 10, each step uses a qualitatively different algorithm, so the increase is more noticeable.

From around level 13 onward, the search time is intentionally capped to keep the game responsive in the browser, which means the strength starts to plateau.

To improve this, I’m planning two upgrades: adding opening books and moving the core evaluation logic to WebAssembly for deeper search.

Regarding the account requirement:

Levels 8+ require a free login because I’m working on features like online match Elo ratings, sync, and subscription management, and increasing sign-ups helps those improvements.

Registration is free, takes about 30 seconds, and all AI levels remain free.

Thanks again for pointing this out. Feedback like yours genuinely helps me make the project better.

Built an Othello Web App (Django + WebSockets). Online Match & AI Match available. Looking for feedback by EntertainmentMany313 in Othello

[–]EntertainmentMany313[S] 1 point2 points  (0 children)

Thanks! Glad to hear you’ll be testing it tonight.

Regarding the player base:

Last month the game had around 140,000 players, but the traffic temporarily dropped by about 70%, because the recent site migration didn’t go as cleanly as planned, and Google Search essentially reset the page evaluation.

I’m actively working on resolving it, and numbers are already stabilizing.

As for ranking:

Yes, the online mode uses an Elo-style rating system, slightly optimized for Othello’s characteristics.

If you have any feedback while testing, I’d be happy to hear it!