Darkwind

Connection Banner:

Welcome to DarkWind! (3 of 100 connections, 120 maximum) By what name do you wish to be known? Invalid entry. Please try again. By what name do you wish to be known?

Server URLs

Server Info

  • Codebase: LDMud 3.3.495

  • Genre: Fantasy

  • Gameplay: Hack and Slash

  • Players online: 4 [1]

  • Uptime: 1 days

  • Created: 1992

  • Status: Live

  • Server Location: 🇺🇸 United States (MSSP)

  • Language: English

Protocol Support

MUD-specific protocols detected via MSSP flags or Telnet negotiation.

  • MSSP: Yes (MSSP)

  • GMCP: Yes (MSSP)

  • MSDP: No

  • MCCP: No

  • MCCP2: No

  • MXP: No

  • MSP: No

  • MCP: No

  • ZMP: No

Telnet Fingerprint

f9092aef0ae576de

This fingerprint is shared by 1 other server.

Options offered by server: GMCP, MSSP

The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.

Show JSON
{
  "server-probe": {
    "fingerprint": "f9092aef0ae576de",
    "fingerprint-data": {
      "offered-options": [
        "GMCP",
        "MSSP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "ECHO",
        "EOR",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MXP",
        "SGA",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "Invalid entry. Please try again.\r\nBy what name do you wish to be known? ",
      "banner_before_return": "\r\nWelcome to DarkWind! (3 of 100 connections, 120 maximum)\r\n\r\nBy what name do you wish to be known?\r\n",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "ascii",
      "mssp": {
        "ANSI": "1",
        "AREAS": "130",
        "CLASSES": "15",
        "CODEBASE": "LDMud 3.3.495",
        "CONTACT": "admins@darkwind.org",
        "CREATED": "1992",
        "FAMILY": "LPMud",
        "GAMEPLAY": "Hack and Slash",
        "GAMESYSTEM": "Custom",
        "GENRE": "Fantasy",
        "GMCP": "1",
        "HELPFILES": "1",
        "HIRING BUILDERS": "0",
        "HIRING CODERS": "0",
        "HOSTNAME": "darkwind.org",
        "ICON": "https://imgur.com/a/eSryqER",
        "INTERMUD": "0",
        "IP": "157.230.139.143",
        "LANGUAGE": "English",
        "LEVELS": "90",
        "LOCATION": "United States",
        "MCCP": "0",
        "MCP": "0",
        "MINIMUM AGE": "13",
        "MOBILES": "0",
        "MSDP": "0",
        "MSP": "0",
        "MXP": "0",
        "NAME": "Darkwind",
        "OBJECTS": "1000",
        "PAY FOR PERKS": "0",
        "PAY TO PLAY": "0",
        "PLAYERS": "4",
        "PORT": "3000",
        "PUEBLO": "0",
        "RACES": "22",
        "ROOMS": "20000",
        "SKILLS": "200",
        "SSL": "0",
        "STATUS": "Live",
        "SUBGENRE": "Medieval Fantasy",
        "UPTIME": "1775420022",
        "UTF-8": "0",
        "VT100": "1",
        "WEBSITE": "https://www.darkwind.org",
        "XTERM 256 COLORS": "0"
      },
      "option_states": {
        "server_offered": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": true,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": true,
          "MXP": false,
          "ZMP": false
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MXP": false,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.5050549507141113,
        "total": 11.016366481781006
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-03-07T03:58:03.409435+00:00",
      "host": "darkwind.org",
      "ip": "157.230.139.143",
      "port": 3000
    },
    {
      "connected": "2026-04-07T06:59:15.108799+00:00",
      "host": "darkwind.org",
      "ip": "157.230.139.143",
      "port": 3000
    }
  ]
}

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 darkwind.org 3000
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=darkwind.org port=3000
INFO client_base.py:190 Connected to <Peer 157.230.139.143 3000>
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:773 recv IAC WILL GMCP
DEBUG stream_writer.py:2045 handle_will(GMCP)
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[GMCP] = True
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1072 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:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSSP
DEBUG stream_writer.py:2045 handle_will(MSSP)
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:773 recv IAC DONT MXP
DEBUG stream_writer.py:2010 handle_dont(MXP)
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:3384 local_option[MXP] = False
DEBUG stream_writer.py:773 recv IAC DONT ATCP
DEBUG stream_writer.py:2010 handle_dont(ATCP)
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3384 local_option[ATCP] = False
DEBUG stream_writer.py:773 recv IAC DONT MSP
DEBUG stream_writer.py:2010 handle_dont(MSP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:3384 local_option[MSP] = False
DEBUG stream_writer.py:773 recv IAC DONT MSDP
DEBUG stream_writer.py:2010 handle_dont(MSDP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3384 local_option[MSDP] = False
DEBUG stream_writer.py:773 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:2010 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3384 local_option[AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC WONT MXP
DEBUG stream_writer.py:2199 handle_wont(MXP)
DEBUG stream_writer.py:3384 remote_option[MXP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:773 recv IAC WONT ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MCCP2_COMPRESS
DEBUG stream_writer.py:754 sub-negotiation cmd MCCP2_COMPRESS SE completion byte
DEBUG stream_writer.py:2238 [SB + MCCP2_COMPRESS] unsolicited
DEBUG stream_writer.py:3232 MCCP2 activated
DEBUG client_base.py:483 MCCP2 decompression started (server→client)
DEBUG stream_writer.py:773 recv IAC WONT MSP
DEBUG stream_writer.py:2199 handle_wont(MSP)
DEBUG stream_writer.py:3384 remote_option[MSP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'SUBGENRE': 'Medieval Fantasy', 'GENRE': 'Fantasy', 'RACES': '22', 'IP': '157.230.139.143',
    'STATUS': 'Live', 'CONTACT': 'admins@darkwind.org', 'CODEBASE': 'LDMud 3.3.495', 'UTF-8': '0', 'ROOMS': '20000', 'WEBSITE':
    'https://www.darkwind.org', 'VT100': '1', 'LEVELS': '90', 'AREAS': '130', 'INTERMUD': '0', 'FAMILY': 'LPMud', 'MINIMUM AGE':
    '13', 'PUEBLO': '0', 'MSDP': '0', 'GMCP': '1', 'HIRING BUILDERS': '0', 'ANSI': '1', 'SKILLS': '200', 'LANGUAGE': 'English',
    'PAY TO PLAY': '0', 'HOSTNAME': 'darkwind.org', 'MSP': '0', 'MCP': '0', 'MCCP': '0', 'CLASSES': '15', 'GAMESYSTEM': 'Custom',
    'HELPFILES': '1', 'PORT': '3000', 'MXP': '0', 'CREATED': '1992', 'UPTIME': '1775420022', 'SSL': '0', 'XTERM 256 COLORS': '0',
    'GAMEPLAY': 'Hack and Slash', 'MOBILES': '0', 'LOCATION': 'United States', 'ICON': 'https://imgur.com/a/eSryqER', 'NAME':
    'Darkwind', 'HIRING CODERS': '0', 'PAY FOR PERKS': '0', 'OBJECTS': '1000', 'PLAYERS': '4'}
DEBUG stream_writer.py:773 recv IAC WONT MSDP
DEBUG stream_writer.py:2199 handle_wont(MSDP)
DEBUG stream_writer.py:3384 remote_option[MSDP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2199 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT ZMP
DEBUG stream_writer.py:2199 handle_wont(ZMP)
DEBUG stream_writer.py:3384 remote_option[ZMP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'WILL GMCP, WILL MCCP2_COMPRESS, WILL MSSP, DO MCCP2_COMPRESS'
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1024 send IAC DO BINARY
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:1024 send IAC DO ECHO
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1024 send IAC DO STATUS
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC DO CHARSET
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1024 send IAC DO EOR
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1024 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:773 recv IAC WONT SGA
DEBUG stream_writer.py:2199 handle_wont(SGA)
DEBUG stream_writer.py:3384 remote_option[SGA] = False
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = False
DEBUG stream_writer.py:773 recv IAC WONT ECHO
DEBUG stream_writer.py:2199 handle_wont(ECHO)
DEBUG stream_writer.py:3384 remote_option[ECHO] = False
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = False
DEBUG fingerprinting.py:849 connection for server fingerprint f9092aef0ae576de
INFO client_base.py:122 Connection closed to <Peer 157.230.139.143 3000>