edgeofmidnight.org
==================
.. raw:: html
Connecting to The Edge of Midnight...
_ WELCOME TRAVELLER TO:
_/+\_
\+++/ TTTTT H H EEEEE EEEEE DDD GGGGG EEEEE
|-| T H H E E D D G E
/ZZZ\ 88 88888 T HHHHH EEEEE EEEEE D D G GG EEEEE
ZZZZZ 88 8OO8O888 T H H E E D D G G E
OOOOO 8888O8OO8 T H H EEEEE EEEEE DDD GGGG EEEEE
ZZZZZ 8888O888 88
OOOOO \/_8888888 OOOOO FFFFF ---------------------------
ZZZZZ / O O F |With thanks to the coders|
8-------ZZZ-------8 O O FFFF |of DikuMUD, MERC 2.1, |
\I-------Z-------I/ O O F |Rom 2.4, Oblivion 2.0 |
\ III I/> / OOOOO F -------and Coffee Mud------
III I
III I M M I DDD N N I GGGGG H H TTTTT
III I MM MM I D D NN N I G H H T
/III I M M M I D D N N N I G GG HHHHH T
\III I M M I D D N NN I G G H H T
\II I M M I DDD N N I GGGG H H T v4.25
I\I I
II\ I Pyros / Adamantium - Owners / Founders
III\I Vella - Director, Head Archon on site
III \ Suki - Coder
III I\
III I \ E-mail: Pyros: greyarchive@greyarchive.info
III I
III I Web: http://edgeofmidnight.org
III Discord: discord.gg/Gppu8ZP
III
I
When entering the realm you may choose to enter the characters name followed
optionally by 'with colour' or 'without colour'.
Name:
'' is not recognized.
.. raw:: html
edgeofmidnight.org:8010
⎘
🔒
Server Info
-----------
- **Codebase**: CoffeeMUD, EoM 4.25.1
- **Family**: CoffeeMUD
- **Genre**: Adult
- **Gameplay**: Hack and Slash, Roleplaying
- **Players online**: 3 [#scan]_
- **Uptime**: 20479 days
- **Created**: 1993
- **Status**: Live
- **Website**: `https://edgeofmidnight.org `_
- **Discord**: `https://discord.gg/Gppu8ZP `_
- **Location**: United Kingdom
- **Language**: English
- **TLS/SSL**: Port 8011
Protocol Support
----------------
MUD-specific protocols detected via MSSP flags or
Telnet negotiation.
- **MSSP**: :proto-yes:`Yes` (MSSP)
- **GMCP**: :proto-negotiated:`Negotiated`
- **MSDP**: :proto-negotiated:`Negotiated`
- **MCCP**: :proto-no:`No`
- **MCCP2**: :proto-no:`No`
- **MXP**: :proto-yes:`Yes` (MSSP)
- **MSP**: :proto-yes:`Yes` (MSSP)
- **MCP**: :proto-no:`No`
- **ZMP**: :proto-no:`No`
Telnet Fingerprint
------------------
:ref:`4651f15de56d904d... `
*This fingerprint is shared by 1 other server.*
**Options offered by server**: ``BINARY``, ``ECHO``
**Options requested from client**: ``TTYPE``
**Data source**: `4651f15de56d904d/dc89520ec7e8aa82.json `_
The complete JSON record collected during the scan,
including Telnet negotiation results and any
MSSP metadata.
.. code-block:: json
{
"server-probe": {
"fingerprint": "4651f15de56d904d",
"fingerprint-data": {
"offered-options": [
"BINARY",
"ECHO"
],
"probed-protocol": "server",
"refused-options": [
"CHARSET",
"COM_PORT",
"EOR",
"SGA",
"STATUS"
],
"requested-options": [
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "'' is not recognized.\r\n",
"banner_before_return": "\n\rConnecting to The Edge of Midnight...\n\r _ WELCOME TRAVELLER TO:\n _/+\\_ \n \\+++/ TTTTT H H EEEEE EEEEE DDD GGGGG EEEEE \n |-| T H H E E D D G E\n /ZZZ\\ 88 88888 T HHHHH EEEEE EEEEE D D G GG EEEEE\n ZZZZZ 88 8OO8O888 T H H E E D D G G E\n OOOOO 8888O8OO8 T H H EEEEE EEEEE DDD GGGG EEEEE\n ZZZZZ 8888O888 88\n OOOOO \\/_8888888 OOOOO FFFFF ---------------------------\n ZZZZZ / O O F |With thanks to the coders|\n8-------ZZZ-------8 O O FFFF |of DikuMUD, MERC 2.1, |\n\\I-------Z-------I/ O O F |Rom 2.4, Oblivion 2.0 |\n \\ III I/> / OOOOO F -------and Coffee Mud------\n III I \n III I M M I DDD N N I GGGGG H H TTTTT\n III I MM MM I D D NN N I G H H T\n /III I M M M I D D N N N I G GG HHHHH T\n \\III I M M I D D N NN I G G H H T\n \\II I M M I DDD N N I GGGG H H T v4.25\n I\\I I\n II\\ I Pyros / Adamantium - Owners / Founders\n III\\I Vella - Director, Head Archon on site\n III \\ Suki - Coder\n III I\\ \n III I \\ E-mail: Pyros: greyarchive@greyarchive.info \n III I \n III I Web: http://edgeofmidnight.org\n III Discord: discord.gg/Gppu8ZP\n III \n I \nWhen entering the realm you may choose to enter the characters name followed\n\roptionally by 'with colour' or 'without colour'.\r\n\r\nName:",
"encoding": "ascii",
"mssp": {
"ANSI": "1",
"AREAS": "297",
"CLASSES": "61",
"CODEBASE": [
"CoffeeMUD",
"EoM 4.25.1"
],
"CREATED": "1993",
"DISCORD": "https://discord.gg/Gppu8ZP",
"EMAIL": "",
"FAMILY": "CoffeeMUD",
"GAMEPLAY": [
"Hack and Slash",
"Roleplaying"
],
"GAMESYSTEM": "Custom",
"GENRE": "Adult",
"HELPFILES": "3698",
"HOST": "edgeofmidnight.org",
"LANGUAGE": "English",
"LOCATION": "United Kingdom",
"MCCP": "0",
"MINIMUM AGE": "18",
"MSP": "1",
"MXP": "1",
"PLAYERS": "3",
"PORT": "8010",
"RACES": "33",
"ROOMS": "26773",
"SKILLS": "1467",
"STATUS": "Live",
"TLS": "8011",
"UPTIME": "1134374",
"WEBSITE": "https://edgeofmidnight.org",
"XTERM 256 COLORS": "1"
},
"option_states": {
"server_offered": {
"0x5a": false,
"GMCP": true,
"MSDP": true,
"MSSP": true,
"NAWS": false
},
"server_requested": {
"TTYPE": true
}
},
"scan_type": "quick",
"timing": {
"probe": 0.35281872749328613,
"total": 4.778663873672485
}
}
},
"sessions": [
{
"connected": "2026-02-08T17:11:50.107074+00:00",
"host": "edgeofmidnight.org",
"ip": "217.155.36.23",
"port": 8010
}
]
}
Connection Log
--------------
Debug-level log of the Telnet negotiation session,
showing each IAC (Interpret As Command) exchange
between client and server.
.. code-block:: text
DEBUG client.py:770 Fingerprint client: host=edgeofmidnight.org port=8010
INFO client_base.py:174 Connected to
DEBUG client_base.py:460 negotiation complete after 2.00s.
DEBUG stream_writer.py:697 recv IAC DO TTYPE
DEBUG stream_writer.py:1739 handle_do(TTYPE)
DEBUG stream_writer.py:3036 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:938 send IAC WILL TTYPE
DEBUG stream_writer.py:3036 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3036 local_option[TTYPE] = True
DEBUG stream_writer.py:3036 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:689 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:676 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3036 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2203 recv TTYPE SEND: b''
DEBUG stream_writer.py:2214 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:697 recv IAC WILL GMCP
DEBUG stream_writer.py:713 WILL GMCP unsolicited
DEBUG stream_writer.py:1869 handle_will(GMCP)
DEBUG stream_writer.py:3036 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:938 send IAC DO GMCP
DEBUG stream_writer.py:3036 remote_option[GMCP] = True
DEBUG stream_writer.py:3036 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:697 recv IAC WILL MSP
DEBUG stream_writer.py:713 WILL MSP unsolicited
DEBUG stream_writer.py:1869 handle_will(MSP)
DEBUG stream_writer.py:3036 pending_option[DO + MSP] = True
DEBUG stream_writer.py:938 send IAC DO MSP
DEBUG stream_writer.py:3036 remote_option[MSP] = True
DEBUG stream_writer.py:3036 pending_option[DO + MSP] = False
DEBUG stream_writer.py:697 recv IAC WILL MSDP
DEBUG stream_writer.py:713 WILL MSDP unsolicited
DEBUG stream_writer.py:1869 handle_will(MSDP)
DEBUG stream_writer.py:3036 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:938 send IAC DO MSDP
DEBUG stream_writer.py:3036 remote_option[MSDP] = True
DEBUG stream_writer.py:3036 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:697 recv IAC WILL MSSP
DEBUG stream_writer.py:713 WILL MSSP unsolicited
DEBUG stream_writer.py:1869 handle_will(MSSP)
DEBUG stream_writer.py:3036 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:938 send IAC DO MSSP
DEBUG stream_writer.py:3036 remote_option[MSSP] = True
DEBUG stream_writer.py:3036 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:697 recv IAC WILL NAWS
DEBUG stream_writer.py:713 WILL NAWS unsolicited
DEBUG stream_writer.py:1869 handle_will(NAWS)
DEBUG stream_writer.py:1891 recv WILL NAWS on client end, refusing.
DEBUG stream_writer.py:3036 remote_option[NAWS] = False
DEBUG stream_writer.py:938 send IAC DONT NAWS
DEBUG stream_writer.py:689 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:676 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2031 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1642 MSSP: {'PLAYERS': '9', 'STATUS': 'Live', 'HOST': 'edgeofmidnight.org', 'PORT': '8010', 'UPTIME':
'1151646', 'LANGUAGE': 'English', 'LOCATION': 'United Kingdom', 'FAMILY': 'CoffeeMUD', 'EMAIL': '', 'CODEBASE': ['CoffeeMUD',
'EoM 4.25.1'], 'CREATED': '1993', 'MINIMUM AGE': '18', 'WEBSITE': 'https://edgeofmidnight.org', 'DISCORD':
'https://discord.gg/Gppu8ZP', 'GAMESYSTEM': 'Custom', 'GAMEPLAY': ['Hack and Slash', 'Roleplaying'], 'GENRE': 'Adult',
'AREAS': '297', 'ROOMS': '26800', 'CLASSES': '61', 'RACES': '33', 'SKILLS': '1467', 'HELPFILES': '3698', 'ANSI': '1', 'XTERM
256 COLORS': '1', 'MCCP': '0', 'MSP': '1', 'MXP': '1', 'TLS': '8011'}
DEBUG stream_writer.py:697 recv IAC WONT NAWS
DEBUG stream_writer.py:1991 handle_wont(NAWS)
DEBUG stream_writer.py:3036 pending_option[DO + NAWS] = False
DEBUG stream_writer.py:1292 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1292 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3036 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:938 send IAC DO BINARY
DEBUG stream_writer.py:3036 pending_option[DO + SGA] = True
DEBUG stream_writer.py:938 send IAC DO SGA
DEBUG stream_writer.py:3036 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:938 send IAC DO ECHO
DEBUG stream_writer.py:3036 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:938 send IAC DO STATUS
DEBUG stream_writer.py:3036 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:938 send IAC DO CHARSET
DEBUG stream_writer.py:3036 pending_option[DO + EOR] = True
DEBUG stream_writer.py:938 send IAC DO EOR
DEBUG stream_writer.py:3036 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:938 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:3036 pending_option[DO + MXP] = True
DEBUG stream_writer.py:938 send IAC DO MXP
DEBUG stream_writer.py:3036 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:938 send IAC DO ZMP
DEBUG stream_writer.py:3036 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:938 send IAC DO AARDWOLF
DEBUG stream_writer.py:3036 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:938 send IAC DO ATCP
DEBUG stream_writer.py:697 recv IAC WILL BINARY
DEBUG stream_writer.py:1869 handle_will(BINARY)
DEBUG stream_writer.py:912 skip DO BINARY; pending_option = True
DEBUG stream_writer.py:3036 remote_option[BINARY] = True
DEBUG stream_writer.py:3036 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:697 recv IAC WONT SGA
DEBUG stream_writer.py:1991 handle_wont(SGA)
DEBUG stream_writer.py:3036 remote_option[SGA] = False
DEBUG stream_writer.py:3036 pending_option[DO + SGA] = False
DEBUG stream_writer.py:697 recv IAC WILL ECHO
DEBUG stream_writer.py:1869 handle_will(ECHO)
DEBUG stream_writer.py:912 skip DO ECHO; pending_option = True
DEBUG stream_writer.py:3036 remote_option[ECHO] = True
DEBUG stream_writer.py:3036 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:697 recv IAC WONT STATUS
DEBUG stream_writer.py:1991 handle_wont(STATUS)
DEBUG stream_writer.py:3036 remote_option[STATUS] = False
DEBUG stream_writer.py:3036 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:697 recv IAC WONT CHARSET
DEBUG stream_writer.py:1991 handle_wont(CHARSET)
DEBUG stream_writer.py:3036 remote_option[CHARSET] = False
DEBUG stream_writer.py:3036 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:697 recv IAC WONT EOR
DEBUG stream_writer.py:1991 handle_wont(EOR)
DEBUG stream_writer.py:3036 remote_option[EOR] = False
DEBUG stream_writer.py:3036 pending_option[DO + EOR] = False
DEBUG stream_writer.py:697 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:1991 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3036 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3036 pending_option[DO + COM_PORT_OPTION] = False
DEBUG stream_writer.py:697 recv IAC WILL MXP
DEBUG stream_writer.py:1869 handle_will(MXP)
DEBUG stream_writer.py:912 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3036 remote_option[MXP] = True
DEBUG stream_writer.py:3036 pending_option[SB + MXP] = True
DEBUG stream_writer.py:3036 pending_option[DO + MXP] = False
DEBUG stream_writer.py:697 recv IAC WONT ZMP
DEBUG stream_writer.py:1991 handle_wont(ZMP)
DEBUG stream_writer.py:3036 remote_option[ZMP] = False
DEBUG stream_writer.py:3036 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:697 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:1991 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3036 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3036 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:697 recv IAC WONT ATCP
DEBUG stream_writer.py:1991 handle_wont(ATCP)
DEBUG stream_writer.py:3036 remote_option[ATCP] = False
DEBUG stream_writer.py:3036 pending_option[DO + ATCP] = False
INFO fingerprinting.py:737 new server fingerprint 2f05817e88202785
INFO client_base.py:105 Connection closed to
*Generated by* `telnetlib3-fingerprint `_
.. code-block:: shell
telnetlib3-fingerprint --loglevel=debug edgeofmidnight.org 8010
.. [#scan] measured 2026-02-08 at 17:11 UTC