Unfortunately many older mud servers (diku? Rom?) started with the wrong \\n\\r and codebases spawned from them just continued.
Very few send the proper \\r\\n
A server (or client) should send `IAC WILL <option>` to announce that it has a capability, and the other party will confirm/reject with DO or DONT.
But some servers will send `IAC DO <option>` even though they are announcing a capability (like server-to-client compression).
Telnet is fun and I like how simple it is. Kinda sad it's basically dead except for what feels like servers that nobody remembered to unplug.