Antigraviton
Let’s Build a Bot Together! Step 1: Pick a Name

OTFER WOULD BE FIREEEEEEEEEEE
WE GOT TO 200k WEVE EARNED THIS
We broke the site!

What if the NPC could be yourself? And could vary based on your rating (Which would be of course, your exact rating and not just rounded up or down by 100 ELO.)
Adding on to my previous comment:
Known Opening and Midgame Lines (Beginner, AKA 100-800 ELO):
"We both know I’m just hoping you blunder first."
"I know this opening… but only like the first 5 moves."
"I think that was a fork?"
"Oh, a sacrifice? No… wait… that was just a blunder." (Special Line that can play when the opposing bot blunders, of course, that could be complicated to input in, so it could just play at random.")
"I learned the rules yesterday and forgot them today."
I can add some more tomorrow, but alas, it is not a guaranteed.
Known Opening and Midgame lines: (Intermediate, AKA, 800-1400.)
"At [rating], we don’t fall for Scholar’s Mate. Anymore, well at least, I don't."
"That move felt right, didn’t it? Shame about the bishop it lost."
"Both you and I calculated three moves ahead, and missed the first one."
"We both saw that mate in one… two moves too late."
"Honestly? We fought well. If we ignore the first 30 moves."
"You saw the fork… after you made the move. Progress!"
Again, I can add more tomorrow.

OTFER WOULD BE FIREEEEEEEEEEE
WE GOT TO 200k WEVE EARNED THIS
We broke the site!
We should have a Basix bot.

Rick Astley https://youtu.be/dQw4w9WgXcQ?si=R0O7q6_5b_RFLZ2p
Sabaton