Discworld
Connection Banner:
Server URLs
- Telnet: telnet://discworld.starturtle.net:4242
- Play in Browser: LociTerm
- Website: http://discworld.starturtle.net
Server Info
Codebase: Discworld lib (current)
Genre: Fantasy
Gameplay: Roleplaying, Player versus Player, Hack and Slash, Adventure
Players online: 43 [1]
Uptime: 89 days
Created: 1991
Status: Live
Server Location: 🇬🇧 United Kingdom (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: Negotiated
MSDP: No
MCCP: Yes (MSSP)
MCCP2: Negotiated
MXP: Yes (MSSP)
MSP: No
MCP: No
ZMP: Negotiated
Telnet Fingerprint
This fingerprint is shared by 7 other servers.
Options offered by server: GMCP, MCCP2, MSSP, ZMP
Options requested from client: MXP, NAWS, NEW_ENVIRON, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "21b109f81d69ce7e",
"fingerprint-data": {
"offered-options": [
"GMCP",
"MCCP2",
"MSSP",
"ZMP"
],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"BINARY",
"CHARSET",
"COM_PORT",
"ECHO",
"EOR",
"MCCP3",
"MSDP",
"MSP",
"MXP",
"SGA",
"STATUS"
],
"requested-options": [
"MXP",
"NAWS",
"NEW_ENVIRON",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "There is no player by the name .\r\n\r\nPress enter to continue Welcome to Discworld: the stuff of which dreams are made.\r\n\r\nSilently, slowly and surely, Great A'Tuin paddles through space, its\r\ngreat eyes surveying the dark, empty wastes before and behind it.\r\nStanding on A'Tuin's great back are four enormous elephants, straining\r\nunder the colossal weight of the Discworld itself. It sparkles with\r\nmagic, reflects the light of the stars and generally fails to be as\r\nunobtrusive as possible.\r\n\r\nA large, floppy, black hat recedes into the distance, somehow looking\r\nsatisfied at what it has left behind.\r\n\r\nQ - Quit\r\nM - Print this menu again\r\nD - Delete your character\r\nR - Request a temporary password\r\nU - Short list of who is on-line\r\nL - Short list of liaisons on-line\r\nP - Uptime\r\nF - Finger someone\r\nN - New character\r\nG - Guest character\r\n\r\nOr, enter your current character's name\r\n\r\nYour choice: There is no player by the name .\r\n\r\nPress enter to continue Welcome to Discworld: the stuff of which dreams are made.\r\n\r\nSilently, slowly and surely, Great A'Tuin paddles through space, its\r\ngreat eyes surveying the dark, empty wastes before and behind it.\r\nStanding on A'Tuin's great back are four enormous elephants, straining\r\nunder the colossal weight of the Discworld itself. It sparkles with\r\nmagic, reflects the light of the stars and generally fails to be as\r\nunobtrusive as possible.\r\n\r\nA large, floppy, black hat recedes into the distance, somehow looking\r\nsatisfied at what it has left behind.\r\n\r\nQ - Quit\r\nM - Print this menu again\r\nD - Delete your character\r\nR - Request a temporary password\r\nU - Short list of who is on-line\r\nL - Short list of liaisons on-line\r\nP - Uptime\r\nF - Finger someone\r\nN - New character\r\nG - Guest character\r\n\r\nOr, enter your current character's name\r\n\r\nYour choice: There is no player by the name .\r\n\r\nPress enter to continue ",
"banner_before_return": "LPmud version : DW OS v1.02 on port 4242.\r\nWelcome to Discworld: the stuff of which dreams are made.\r\n\r\nSilently, slowly and surely, Great A'Tuin paddles through space, its\r\ngreat eyes surveying the dark, empty wastes before and behind it.\r\nStanding on A'Tuin's great back are four enormous elephants, straining\r\nunder the colossal weight of the Discworld itself. It sparkles with\r\nmagic, reflects the light of the stars and generally fails to be as\r\nunobtrusive as possible.\r\n\r\nA large, floppy, black hat recedes into the distance, somehow looking\r\nsatisfied at what it has left behind.\r\n\r\nQ - Quit\r\nM - Print this menu again\r\nD - Delete your character\r\nR - Request a temporary password\r\nU - Short list of who is on-line\r\nL - Short list of liaisons on-line\r\nP - Uptime\r\nF - Finger someone\r\nN - New character\r\nG - Guest character\r\n\r\nOr, enter your current character's name\r\n\r\nYour choice: \u001b[1z<!-- Elements to support mxp. --><!EL RName '<FONT COLOR=Red><B>' FLAG=\"RoomName\"><!EL RDesc FLAG='RoomDesc'><!EL RExits '<FONT COLOR=Blue>' FLAG='RoomExit'><!EL RoomName FLAG=\"RoomName\"><!EL RoomDesc FLAG=\"RoomDesc\"><!EL RoomExits FLAG=\"RoomExit\"><!EL Exit '<SEND EXPIRE=\"Exits\">'><!EL fixed '<Font fixed>'><!EL proportional '<Font proportional>'><!EL Reset '<Font default>'><!EL Red '<C red>'><!EL Black '<C black>'><!EL White '<C white>'><!EL Yellow '<C yellow>'><!EL Cyan '<C cyan>'><!EL Blue '<C blue>'><!EL Magenta '<C magenta>'><!EL Orange '<C orange>'><!EL Green '<C green>'><!EL B_Red '<C back=red>'><!EL B_Black '<C back=black>'><!EL B_White '<C back=white>'><!EL B_Yellow '<C back=yellow>'><!EL B_Cyan '<C back=cyan>'><!EL B_Blue '<C back=blue>'><!EL B_Magenta '<C back=magenta>'><!EL B_Orange '<C back=orange>'><!EL B_Green '<C back=green>'><!EL Reverse '<C reverse>'><!EL url '<a href=&text;>'><!EL talker '<send href=\"&text; |talker history &text;\" prompt hint=\"Right click for menu\">'><!EL club '<send href=\"&club; talk |&club; emote |&club; history\" prompt hint=\"Right click for menu|&club; talk|&club; emote|&club; history\">'><!EL livingpopup '<send href=\"look &ob;|nod &ob; |smile &ob; |bing &ob; |finger &ob;|refer &ob;|consider &ob;|protect &ob;|pursue &ob;|follow &ob;|lose &ob;|defend &ob;|coverage on &ob;|kill &ob;|custom1 &ob;|custom2 &ob;\" hint=\"Right click for menu\">'><!EL floorobjectpopup '<send href=\"look &ob;|get &ob;|drag &ob;\" PROMPT hint=\"Right click for menu|look &ob;|get &ob;|drag &ob;\">'><!EL invobjectpopup '<send href=\"look &ob;|drop &ob;|weigh &ob;|give &ob; to |read &ob;|condition &ob;\" PROMPT hint=\"Right click for menu|look &ob;|drop &ob;|weigh &ob;|give &ob; to |read &ob;|condition &ob;\">'><!EL boardobjectpopup '<send href=\"look board|subjects|read\" hint=\"Right click for menu\">'><!EL boardnotenumpopup '<send href=\"read &text;|eat &text;|followup &text;|reply &text\" hint=\"Right click for menu\">'><!EL shopit '<send href=\"buy &text;|browse &text;\" hint=\"Right click for menu|buy &text;|browse &text;\">'><!EL shopcat '<send href=\"list &text;\">'><!-- Basic variables used for events --><!-- var prints to the screen!! --><!EN clubnames \"unknown\"><!EN channels \"newbie|newbiehelpers|groups\"><!EN groupcmds \"follow|chat|assist|status|history|report|shields|list|members|leave|join\"><!EN talkerchannels \"one|two\"><!EN informtype \"login|birthday\"><!EN quot '\"'><!-- Some stuff to get what the system supports back --><SUPPORT><!-- Status bar items --><!EN hp 0 publish><!EN maxhp 0 publish><!EN gp 0 publish><!EN maxgp 0 publish><!EN xp 0 publish><STAT hp max=maxhp caption=\"hp\"><STAT gp max=maxgp caption=\"gp\"><STAT sp max=maxsp caption=\"sp\"><STAT xp caption=\"xp\"><STAT burden caption=\"burden\"><!entity guilds \"Hublandish Barbarians|Duchess Saturday's Musketeers|Ankh-Morpork Palace Guard|Samurai|Hunters|Klatchian Foreign Legion|Lancre Highland Regiment|Weapon Masters' Court|Imperial Guard|Djelian Guard|Fools|Thieves|Witches|Priests|Conlegium Sicariorum|Hashishim|Mano Rossa|Ninja|Wizards\">\r\n",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "utf-8",
"mssp": {
"ANSI": "1",
"CODEBASE": "Discworld lib (current)",
"CREATED": "1991",
"FAMILY": "LPMud",
"GAMEPLAY": [
"Roleplaying",
"Player versus Player",
"Hack and Slash",
"Adventure"
],
"GENRE": "Fantasy",
"HOSTNAME": "discworld.starturtle.net",
"INTERMUD": [
"IMC2",
"I3"
],
"IP": "82.68.167.69",
"LANGUAGE": "English",
"LOCATION": "United Kingdom",
"MCCP": "1",
"MULTIPLAYING": "None",
"MXP": "1",
"NAME": "Discworld",
"PAY FOR PERKS": "0",
"PAY TO PLAY": "0",
"PLAYERKILLING": "Restricted",
"PLAYERS": "43",
"PORT": [
"23",
"4242"
],
"ROLEPLAYING": "Accepted",
"STATUS": "Live",
"SUBGENRE": "Discworld",
"TRAINING SYSTEM": "Both",
"UPTIME": "1765157464",
"VT100": "1",
"WEBSITE": "http://discworld.starturtle.net",
"WORLD ORIGINALITY": "All Original",
"WORLDS": "1"
},
"mxp": [
"activated"
],
"option_states": {
"environ_requested": [
{
"name": "*",
"type": "VAR"
},
{
"name": "*",
"type": "USERVAR"
}
],
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": true,
"MCCP2": true,
"MCCP3": false,
"MSDP": false,
"MSP": false,
"MSSP": true,
"MXP": false,
"ZMP": true
},
"server_requested": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": false,
"MCCP2": false,
"MCCP3": false,
"MSDP": false,
"MSP": false,
"MSSP": false,
"MXP": true,
"NAWS": true,
"NEW_ENVIRON": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.5068426132202148,
"total": 33.539165019989014
}
}
},
"sessions": [
{
"connected": "2026-03-07T03:59:12.618831+00:00",
"host": "discworld.starturtle.net",
"ip": "82.68.167.69",
"port": 4242
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug discworld.starturtle.net 4242
Show Logfile
DEBUG client.py:1193 Fingerprint client: host=discworld.starturtle.net port=4242
INFO client_base.py:186 Connected to <Peer 82.68.167.69 4242>
DEBUG stream_writer.py:3330 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1019 send IAC WILL MXP
DEBUG stream_writer.py:3330 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1019 send IAC WILL ATCP
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3330 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1019 send IAC WILL GMCP
DEBUG stream_writer.py:3330 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1019 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3330 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSP
DEBUG stream_writer.py:3330 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSDP
DEBUG stream_writer.py:3330 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSSP
DEBUG stream_writer.py:3330 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1019 send IAC WILL ZMP
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3330 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1019 send IAC DO MXP
DEBUG stream_writer.py:3330 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1019 send IAC DO ATCP
DEBUG stream_writer.py:3330 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3330 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1019 send IAC DO GMCP
DEBUG stream_writer.py:3330 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1019 send IAC DO AARDWOLF
DEBUG stream_writer.py:3330 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1019 send IAC DO MSP
DEBUG stream_writer.py:3330 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1019 send IAC DO MSDP
DEBUG stream_writer.py:3330 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1019 send IAC DO MSSP
DEBUG stream_writer.py:3330 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1019 send IAC DO ZMP
DEBUG stream_writer.py:3330 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:768 recv IAC DO TTYPE
DEBUG stream_writer.py:1836 handle_do(TTYPE)
DEBUG stream_writer.py:3330 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1019 send IAC WILL TTYPE
DEBUG stream_writer.py:3330 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3330 local_option[TTYPE] = True
DEBUG stream_writer.py:3330 pending_option[WILL + TTYPE] = False
DEBUG client_base.py:499 negotiation failed after 4.00s.
DEBUG client_base.py:505 failed-reply: 'WILL MXP, WILL ATCP, WILL MCCP3_COMPRESS, WILL GMCP, WILL AARDWOLF, WILL MSP, WILL MSDP,
WILL MSSP, WILL ZMP, WILL MCCP2_COMPRESS, DO MXP, DO ATCP, DO MCCP3_COMPRESS, DO GMCP, DO AARDWOLF, DO MSP, DO MSDP, DO MSSP,
DO ZMP, DO MCCP2_COMPRESS, SB TTYPE'
DEBUG stream_writer.py:768 recv IAC DO NAWS
DEBUG stream_writer.py:1836 handle_do(NAWS)
DEBUG stream_writer.py:3330 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:1019 send IAC WILL NAWS
DEBUG stream_writer.py:2453 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3330 local_option[NAWS] = True
DEBUG stream_writer.py:3330 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:768 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:1994 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:993 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3330 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3330 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC DO MXP
DEBUG stream_writer.py:1836 handle_do(MXP)
DEBUG stream_writer.py:993 skip WILL MXP; pending_option = True
DEBUG stream_writer.py:3330 local_option[MXP] = True
DEBUG stream_writer.py:3330 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:768 recv IAC WILL MSSP
DEBUG stream_writer.py:1994 handle_will(MSSP)
DEBUG stream_writer.py:993 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3330 remote_option[MSSP] = True
DEBUG stream_writer.py:3330 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:768 recv IAC WILL ZMP
DEBUG stream_writer.py:1994 handle_will(ZMP)
DEBUG stream_writer.py:993 skip DO ZMP; pending_option = True
DEBUG stream_writer.py:3330 remote_option[ZMP] = True
DEBUG stream_writer.py:3330 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:768 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1836 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3330 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1019 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3330 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3330 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3330 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:768 recv IAC WILL GMCP
DEBUG stream_writer.py:1994 handle_will(GMCP)
DEBUG stream_writer.py:993 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3330 remote_option[GMCP] = True
DEBUG stream_writer.py:1067 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1067 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3330 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:762 begin sub-negotiation SB MXP
DEBUG stream_writer.py:749 sub-negotiation cmd MXP SE completion byte
DEBUG stream_writer.py:2187 [SB + MXP] unsolicited
DEBUG stream_writer.py:1754 MXP: b''
DEBUG stream_writer.py:768 recv IAC DONT ATCP
DEBUG stream_writer.py:1959 handle_dont(ATCP)
DEBUG stream_writer.py:3330 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3330 local_option[ATCP] = False
DEBUG stream_writer.py:768 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:1959 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3330 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC DONT GMCP
DEBUG stream_writer.py:1959 handle_dont(GMCP)
DEBUG stream_writer.py:3330 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:3330 local_option[GMCP] = False
DEBUG stream_writer.py:768 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:1959 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3330 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3330 local_option[AARDWOLF] = False
DEBUG stream_writer.py:768 recv IAC DONT MSP
DEBUG stream_writer.py:1959 handle_dont(MSP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:3330 local_option[MSP] = False
DEBUG stream_writer.py:768 recv IAC DONT MSDP
DEBUG stream_writer.py:1959 handle_dont(MSDP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3330 local_option[MSDP] = False
DEBUG stream_writer.py:768 recv IAC DONT MSSP
DEBUG stream_writer.py:1959 handle_dont(MSSP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:3330 local_option[MSSP] = False
DEBUG stream_writer.py:768 recv IAC DONT ZMP
DEBUG stream_writer.py:1959 handle_dont(ZMP)
DEBUG stream_writer.py:3330 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3330 local_option[ZMP] = False
DEBUG stream_writer.py:768 recv IAC DONT MCCP2_COMPRESS
DEBUG stream_writer.py:1959 handle_dont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3330 local_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC WONT MXP
DEBUG stream_writer.py:2148 handle_wont(MXP)
DEBUG stream_writer.py:3330 remote_option[MXP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MXP] = False
DEBUG stream_writer.py:768 recv IAC WONT ATCP
DEBUG stream_writer.py:2148 handle_wont(ATCP)
DEBUG stream_writer.py:3330 remote_option[ATCP] = False
DEBUG stream_writer.py:3330 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:768 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2148 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3330 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3330 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2148 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3330 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3330 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:768 recv IAC WONT MSP
DEBUG stream_writer.py:2148 handle_wont(MSP)
DEBUG stream_writer.py:3330 remote_option[MSP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MSP] = False
DEBUG stream_writer.py:768 recv IAC WONT MSDP
DEBUG stream_writer.py:2148 handle_wont(MSDP)
DEBUG stream_writer.py:3330 remote_option[MSDP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:762 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:749 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2187 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1745 MSSP: {'NAME': 'Discworld', 'PLAYERS': '43', 'UPTIME': '1765157464', 'WORLDS': '1', 'FAMILY': 'LPMud',
'IP': '82.68.167.69', 'ROLEPLAYING': 'Accepted', 'CREATED': '1991', 'PAY TO PLAY': '0', 'PAY FOR PERKS': '0', 'PORT': ['23',
'4242'], 'WORLD ORIGINALITY': 'All Original', 'TRAINING SYSTEM': 'Both', 'LOCATION': 'United Kingdom', 'STATUS': 'Live',
'CODEBASE': 'Discworld lib (current)', 'MXP': '1', 'MULTIPLAYING': 'None', 'WEBSITE': 'http://discworld.starturtle.net',
'INTERMUD': ['IMC2', 'I3'], 'PLAYERKILLING': 'Restricted', 'HOSTNAME': 'discworld.starturtle.net', 'GENRE': 'Fantasy',
'GAMEPLAY': ['Roleplaying', 'Player versus Player', 'Hack and Slash', 'Adventure'], 'LANGUAGE': 'English', 'VT100': '1',
'MCCP': '1', 'ANSI': '1', 'SUBGENRE': 'Discworld'}
DEBUG stream_writer.py:762 begin sub-negotiation SB MCCP2_COMPRESS
DEBUG stream_writer.py:749 sub-negotiation cmd MCCP2_COMPRESS SE completion byte
DEBUG stream_writer.py:2187 [SB + MCCP2_COMPRESS] unsolicited
DEBUG stream_writer.py:3178 MCCP2 activated
DEBUG client_base.py:448 MCCP2 decompression started (server→client)
DEBUG stream_writer.py:762 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:749 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2353 recv TTYPE SEND: b''
DEBUG stream_writer.py:2365 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:762 begin sub-negotiation SB NEW_ENVIRON
DEBUG stream_writer.py:749 sub-negotiation cmd NEW_ENVIRON SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + NEW_ENVIRON] = False
DEBUG stream_writer.py:2398 recv NEW_ENVIRON SEND (all)
DEBUG stream_writer.py:2419 env send: LANG='C', TERM='xterm-256color', LINES=25, COLUMNS=80, COLORTERM=''
DEBUG stream_writer.py:1400 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1400 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1400 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1400 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1400 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3330 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1019 send IAC DO BINARY
DEBUG stream_writer.py:3330 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1019 send IAC DO SGA
DEBUG stream_writer.py:3330 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:1019 send IAC DO ECHO
DEBUG stream_writer.py:3330 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1019 send IAC DO STATUS
DEBUG stream_writer.py:3330 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1019 send IAC DO CHARSET
DEBUG stream_writer.py:3330 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1019 send IAC DO EOR
DEBUG stream_writer.py:3330 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1019 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:768 recv IAC WONT BINARY
DEBUG stream_writer.py:2148 handle_wont(BINARY)
DEBUG stream_writer.py:3330 remote_option[BINARY] = False
DEBUG stream_writer.py:3330 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:768 recv IAC WONT SGA
DEBUG stream_writer.py:2148 handle_wont(SGA)
DEBUG stream_writer.py:3330 remote_option[SGA] = False
DEBUG stream_writer.py:3330 pending_option[DO + SGA] = False
DEBUG stream_writer.py:768 recv IAC WONT STATUS
DEBUG stream_writer.py:2148 handle_wont(STATUS)
DEBUG stream_writer.py:3330 remote_option[STATUS] = False
DEBUG stream_writer.py:3330 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:768 recv IAC WONT CHARSET
DEBUG stream_writer.py:2148 handle_wont(CHARSET)
DEBUG stream_writer.py:3330 remote_option[CHARSET] = False
DEBUG stream_writer.py:3330 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:768 recv IAC WONT EOR
DEBUG stream_writer.py:2148 handle_wont(EOR)
DEBUG stream_writer.py:3330 remote_option[EOR] = False
DEBUG stream_writer.py:3330 pending_option[DO + EOR] = False
DEBUG stream_writer.py:768 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2148 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3330 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3330 pending_option[DO + COM_PORT_OPTION] = False
INFO fingerprinting.py:755 connection for server fingerprint 21b109f81d69ce7e
INFO client_base.py:118 Connection closed to <Peer 82.68.167.69 4242>