question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[BUG] Axmud is an unsupported client

See original GitHub issue

Describe the bug

Axmud can’t connect to Evennia servers.

To Reproduce

Steps to reproduce the behavior:

  1. Connect to the evdemo server
  2. Get forcibly disconnected by Twisted

Additional context

I spent about twelve hours on this today, and here’s what I found:

  • Axmud likes MSDP a lot. If it doesn’t get MSDP commands it likes, it sends IAC DONT MSDP
  • Twisted doesn’t like IAC DONT MSDP at all after the handshake has already been “negotiated” - following are two common errors I got depending on how deep I got into overloading inputfuncs and rewriting telnet_oob. Note that the first OptionRefused error is \x22 (IAC DO LINEMODE) and the second is \x45 (IAC DO MSDP) Failure: twisted.conch.telnet.OptionRefused: twisted.conch.telnet.OptionRefused:b'"' Failure: twisted.conch.telnet.OptionRefused: twisted.conch.telnet.OptionRefused:b'E'
  • Evennia seems to be receiving and decoding MSDP commands ok; functions are being called correctly; args are correct. This seems to be entirely centered around its handling of the handshake.
  • I was actually able to reproduce a version of this bug in tintin; Evennia did not respond as expected when I sent IAC DO MSDP. The handshake appeared not to happen, and #send {$IAC$DO$MSDP} as an event on IAC WILL MSDP didn’t seem to work either. But tintin maintained the connection without issue.
  • A raw dump of the telnet events looks perfect: TELNET_EVENT: p1[253] p2[34] p3[��"] (IAC DO LINEMODE) TELNET_EVENT: p1[251] p2[3] p3[��] (IAC DO ...) TELNET_EVENT: p1[253] p2[31] p3[��] (IAC DO ...) TELNET_EVENT: p1[253] p2[24] p3[��] (IAC DO ...) TELNET_EVENT: p1[251] p2[86] p3[��V] (IAC DO ...) TELNET_EVENT: p1[251] p2[70] p3[��F] (IAC DO MSSP) TELNET_EVENT: p1[251] p2[69] p3[��E] (IAC DO MSDP)
  • Bug verified on latest commit (1-29-20)
  • All other handshakes work beautifully on all clients. I’m stumped as to why Axmud falls on its sword when it’s supposedly one of the “more modern” clients available.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:13 (10 by maintainers)

github_iconTop GitHub Comments

2reactions
axcorecommented, Feb 1, 2020

If it’s helpful, Axmud can show the MSDP data it’s receiving.

Connect to any world, in online or offline mode Edit > Axmud preferences… > Settings > Page 9 Select Show debug messages while negotiating telnet options/MUD protocols Select Show short debug messages while negotiating telnet options/MUD protocols Click OK to close the window Type ;save Reconnect to Evennia

1reaction
Griatchcommented, Feb 1, 2020

@trhr Thanks for the help, but no need to spend more time - I have fixed this, just looking into some other cleanup now before committing a fix. And you are correct i that this is a py2->py3 issue.

Read more comments on GitHub >

github_iconTop Results From Across the Web

[SOLVED] Help with unsupported client version.
I am currently using 0.5.0-dev. I'm starting a singleplayer world and I get this error that I don't know how to fix: Access...
Read more >
View topic - CMUD Development Dead - Zugg Software
I've got 2 years of free updates. What I haven't got is anything saying there will be any updates so, even if nothing...
Read more >
Games::Axmud - MetaCPAN
NAME. Games::Axmud - Axmud, a modern Multi-User Dungeon (MUD) client written in Perl5 / Gtk3. SYNOPSIS. Axmud is known to work on MS...
Read more >
Axmud - A modern MUD client for MS Windows/Linux - Reddit
Can't wait to try out the automapper on hellmoo. I am unable to open the GUI Window on Windows, I get the following...
Read more >
MDS crash on unsupported metrics from Kernel Client
Doc Type: Bug Fix. Doc Text: .The MDS daemon no longer crashes when receiving unsupported metrics Previously, the MDS daemon could not handle...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found