Upon Black Wings
================
**Connection Banner:**
.. image:: /_static/banners/banner_b98b76c0e041.png
:alt: Connected to Upon Black Wings, an LP mud running on Linux. The Dead Souls Object Library version 3 This software is copyrighted and it is not GPL. For more info: http://dead-souls.net Driver: FluffOS v2.23-ds03 Mudlib: Dead Souls 3.9 What name do you wish? You must enter a name in order to join! What name do you wish?
:class: ansi-banner
:width: 570px
:loading: lazy
Server URLs
-----------
.. raw:: html
Description
-----------
A fun mud!
Server Info
-----------
- **Codebase**: Dead Souls 3.9
- **Genre**: Adventure
- **Gameplay**: Adventure
- **Players online**: 0 [#scan]_
- **Uptime**: 10 days
- **Created**: 2026
- **Status**: Alpha
- **Server Location**: 🇺🇸 United States (MSSP)
- **Language**: English
Protocol Support
----------------
MUD-specific protocols detected via MSSP flags or
Telnet negotiation.
- **MSSP**: :proto-yes:`Yes` (MSSP)
- **GMCP**: :proto-negotiated:`Negotiated`
- **MSDP**: :proto-no:`No`
- **MCCP**: :proto-no:`No`
- **MCCP2**: :proto-no:`No`
- **MXP**: :proto-negotiated:`Negotiated`
- **MSP**: :proto-no:`No`
- **MCP**: :proto-no:`No`
- **ZMP**: :proto-negotiated:`Negotiated`
Telnet Fingerprint
------------------
:ref:`67bffa9d5cf57f36 `
*This fingerprint is shared by 10 other servers.*
**Options offered by server**: ``MSSP``, ``ZMP``
**Options requested from client**: ``GMCP``, ``MXP``, ``NAWS``, ``NEW_ENVIRON``, ``TTYPE``
The complete JSON record collected during the scan,
including Telnet negotiation results and any
MSSP metadata.
.. raw:: html
Show JSON
.. code-block:: json
{
"server-probe": {
"fingerprint": "67bffa9d5cf57f36",
"fingerprint-data": {
"offered-options": [
"MSSP",
"ZMP"
],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"BINARY",
"CHARSET",
"COM_PORT",
"ECHO",
"EOR",
"GMCP",
"MSDP",
"MSP",
"MXP",
"SGA",
"STATUS"
],
"requested-options": [
"GMCP",
"MXP",
"NAWS",
"NEW_ENVIRON",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "\r\nYou must enter a name in order to join!\r\n\r\nWhat name do you wish? ",
"banner_before_return": "Connected to Upon Black Wings, an LP mud running on Linux.\r\n\r\n The Dead Souls Object Library version 3\r\n\r\n This software is copyrighted and it is not GPL. \r\n\r\n For more info: http://dead-souls.net\r\n\r\n Driver: FluffOS v2.23-ds03 Mudlib: Dead Souls 3.9 \r\n\r\nWhat name do you wish? ",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ADULT MATERIAL": "0",
"ANSI": "1",
"AREAS": "7",
"CLASSES": "5",
"CODEBASE": "Dead Souls 3.9",
"CONTACT": "tarektavaria@gmail.com",
"CREATED": "2026",
"DBSIZE": "N/A",
"DESCRIPTION": "A fun mud!",
"EQUIPMENT SYSTEM": "N/A",
"EXITS": "N/A",
"EXTRA DESCRIPTIONS": "N/A",
"FAMILY": "LPMud",
"FAMILY-NOTES": "descendant of Nightmare",
"GAMEPLAY": "Adventure",
"GAMESYSTEM": "Custom",
"GENRE": "Adventure",
"HELPFILES": "N/A",
"HELPFILES-NOTES": "each command, and hundreds of other docs",
"HIRING BUILDERS": "1",
"HIRING CODERS": "1",
"HOSTNAME": "146.168.137.126",
"ICON": "http://146.168.137.126:6768/favicon.ico",
"INTERMUD": [
"i3",
"IMC2"
],
"IP": "146.168.137.126",
"LANGUAGE": "English",
"LEVELS": "300",
"LOCATION": "United States",
"MCCP": "0",
"MCP": "0",
"MINIMUM AGE": "13",
"MOBILES": "150",
"MOBILES-NOTES": "npc's can be cloned, so there can be thousands",
"MSP": "0",
"MUDPROGS": "N/A",
"MUDPROGS-NOTES": "doesn't apply, LPMud",
"MUDTRIGS": "N/A",
"MUDTRIGS-NOTES": "doesn't apply, LPMud",
"MULTICLASSING": "0",
"MULTIPLAYING": "Full",
"MXP": "0",
"NAME": "Upon Black Wings",
"OBJECTS": "300",
"OBJECTS-NOTES": "objects can be cloned, so there can be thousands",
"PAY FOR PERKS": "0",
"PAY TO PLAY": "0",
"PLAYER CITIES": "0",
"PLAYER CLANS": "0",
"PLAYER CRAFTING": "0",
"PLAYER GUILDS": "0",
"PLAYERKILLING": "Full",
"PLAYERS": "0",
"PORT": "6767",
"PUEBLO": "0",
"QUEST SYSTEM": [
"Automated",
"Integrated"
],
"RACES": "72",
"RACES-NOTES": "not all are playable",
"RESETS": "N/A",
"RESETS-NOTES": "doesn't apply, LPMud",
"ROLEPLAYING": "None",
"ROOMS": "300",
"ROOMS-NOTES": "areas have generated rooms, could be millions",
"SKILLS": "N/A",
"SKILLS-NOTES": "many, but not like Diku",
"SSL": "0",
"STATUS": "Alpha",
"SUBGENRE": "Adventure",
"TRAINING SYSTEM": "Skill",
"UPTIME": "1770187006",
"VT100": "0",
"WEBSITE": "http://146.168.137.126:6768",
"WHO": "",
"WORLD ORIGINALITY": "Mostly Original",
"XTERM 256 COLORS": "0"
},
"option_states": {
"environ_requested": [
{
"name": "*",
"type": "VAR"
},
{
"name": "*",
"type": "USERVAR"
}
],
"server_offered": {
"MSSP": true,
"ZMP": true
},
"server_requested": {
"GMCP": true,
"MXP": true,
"NAWS": true,
"NEW_ENVIRON": true,
"TTYPE": true
}
},
"scan_type": "quick",
"timing": {
"probe": 0.5144596099853516,
"total": 5.148472309112549
}
}
},
"sessions": [
{
"connected": "2026-02-14T17:13:07.867622+00:00",
"host": "146.168.137.126",
"ip": "146.168.137.126",
"port": 6767
}
]
}
.. raw:: html
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 `_
.. code-block:: shell
telnetlib3-fingerprint --loglevel=debug 146.168.137.126 6767
.. raw:: html
Show Logfile
.. code-block:: text
DEBUG client.py:965 Fingerprint client: host=146.168.137.126 port=6767
INFO client_base.py:175 Connected to
DEBUG client_base.py:492 negotiation complete after 0.00s.
DEBUG stream_writer.py:707 recv IAC DO TTYPE
DEBUG stream_writer.py:1770 handle_do(TTYPE)
DEBUG stream_writer.py:3174 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:950 send IAC WILL TTYPE
DEBUG stream_writer.py:3174 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3174 local_option[TTYPE] = True
DEBUG stream_writer.py:3174 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:707 recv IAC DO NAWS
DEBUG stream_writer.py:1770 handle_do(NAWS)
DEBUG stream_writer.py:3174 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:950 send IAC WILL NAWS
DEBUG stream_writer.py:2346 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3174 local_option[NAWS] = True
DEBUG stream_writer.py:3174 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:707 recv IAC DO MXP
DEBUG stream_writer.py:1770 handle_do(MXP)
DEBUG stream_writer.py:3174 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:950 send IAC WILL MXP
DEBUG stream_writer.py:3174 pending_option[SB + MXP] = True
DEBUG stream_writer.py:3174 local_option[MXP] = True
DEBUG stream_writer.py:3174 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:707 recv IAC WILL MSSP
DEBUG stream_writer.py:723 WILL MSSP unsolicited
DEBUG stream_writer.py:1900 handle_will(MSSP)
DEBUG stream_writer.py:3174 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:950 send IAC DO MSSP
DEBUG stream_writer.py:3174 remote_option[MSSP] = True
DEBUG stream_writer.py:3174 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:707 recv IAC WILL ZMP
DEBUG stream_writer.py:723 WILL ZMP unsolicited
DEBUG stream_writer.py:1900 handle_will(ZMP)
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:950 send IAC DO ZMP
DEBUG stream_writer.py:3174 remote_option[ZMP] = True
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:707 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1770 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3174 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:950 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3174 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3174 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3174 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:707 recv IAC DO GMCP
DEBUG stream_writer.py:1770 handle_do(GMCP)
DEBUG stream_writer.py:3174 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:950 send IAC WILL GMCP
DEBUG stream_writer.py:3174 local_option[GMCP] = True
DEBUG stream_writer.py:3174 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:699 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:686 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3174 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2241 recv TTYPE SEND: b''
DEBUG stream_writer.py:2254 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:699 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:686 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2065 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1673 MSSP: {'PLAYERS': '0', 'MUDPROGS-NOTES': "doesn't apply, LPMud", 'LEVELS': '300', 'HELPFILES-NOTES':
'each command, and hundreds of other docs', 'PLAYER CITIES': '0', 'PAY TO PLAY': '0', 'MULTICLASSING': '0', 'WHO': '', 'PORT':
'6767', 'LOCATION': 'United States', 'TRAINING SYSTEM': 'Skill', 'AREAS': '7', 'OBJECTS-NOTES': 'objects can be cloned, so
there can be thousands', 'OBJECTS': '300', 'RESETS-NOTES': "doesn't apply, LPMud", 'XTERM 256 COLORS': '0', 'SKILLS': 'N/A',
'RACES-NOTES': 'not all are playable', 'INTERMUD': ['i3', 'IMC2'], 'HELPFILES': 'N/A', 'HOSTNAME': '146.168.137.126',
'PLAYERKILLING': 'Full', 'SSL': '0', 'RACES': '72', 'GENRE': 'Adventure', 'LANGUAGE': 'English', 'GAMEPLAY': 'Adventure',
'DESCRIPTION': 'A fun mud!', 'CONTACT': 'tarektavaria@gmail.com', 'VT100': '0', 'PUEBLO': '0', 'QUEST SYSTEM': ['Automated',
'Integrated'], 'ROOMS-NOTES': 'areas have generated rooms, could be millions', 'HIRING CODERS': '1', 'MUDPROGS': 'N/A',
'FAMILY-NOTES': 'descendant of Nightmare', 'PLAYER CRAFTING': '0', 'FAMILY': 'LPMud', 'PLAYER CLANS': '0', 'IP':
'146.168.137.126', 'HIRING BUILDERS': '1', 'ROLEPLAYING': 'None', 'MOBILES-NOTES': "npc's can be cloned, so there can be
thousands", 'MUDTRIGS-NOTES': "doesn't apply, LPMud", 'CREATED': '2026', 'PAY FOR PERKS': '0', 'CLASSES': '5', 'NAME': 'Upon
Black Wings', 'MSP': '0', 'UPTIME': '1770187006', 'GAMESYSTEM': 'Custom', 'WORLD ORIGINALITY': 'Mostly Original', 'EXTRA
DESCRIPTIONS': 'N/A', 'ADULT MATERIAL': '0', 'STATUS': 'Alpha', 'ROOMS': '300', 'MOBILES': '150', 'MUDTRIGS': 'N/A',
'CODEBASE': 'Dead Souls 3.9', 'MXP': '0', 'SKILLS-NOTES': 'many, but not like Diku', 'WEBSITE': 'http://146.168.137.126:6768',
'MULTIPLAYING': 'Full', 'RESETS': 'N/A', 'ICON': 'http://146.168.137.126:6768/favicon.ico', 'DBSIZE': 'N/A', 'EQUIPMENT
SYSTEM': 'N/A', 'EXITS': 'N/A', 'MCP': '0', 'SUBGENRE': 'Adventure', 'ANSI': '1', 'MCCP': '0', 'MINIMUM AGE': '13', 'PLAYER
GUILDS': '0'}
DEBUG stream_writer.py:699 begin sub-negotiation SB NEW_ENVIRON
DEBUG stream_writer.py:686 sub-negotiation cmd NEW_ENVIRON SE completion byte
DEBUG stream_writer.py:3174 pending_option[SB + NEW_ENVIRON] = False
DEBUG stream_writer.py:2289 recv NEW_ENVIRON SEND (all)
DEBUG stream_writer.py:2312 env send: LANG='C', TERM='xterm-256color', LINES=25, COLUMNS=80, COLORTERM=''
DEBUG stream_writer.py:1323 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3174 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:950 send IAC DO BINARY
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = True
DEBUG stream_writer.py:950 send IAC DO SGA
DEBUG stream_writer.py:3174 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:950 send IAC DO ECHO
DEBUG stream_writer.py:3174 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:950 send IAC DO STATUS
DEBUG stream_writer.py:3174 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:950 send IAC DO CHARSET
DEBUG stream_writer.py:3174 pending_option[DO + EOR] = True
DEBUG stream_writer.py:950 send IAC DO EOR
DEBUG stream_writer.py:3174 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:950 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:950 send IAC DO GMCP
DEBUG stream_writer.py:3174 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:950 send IAC DO MSDP
DEBUG stream_writer.py:3174 pending_option[DO + MSP] = True
DEBUG stream_writer.py:950 send IAC DO MSP
DEBUG stream_writer.py:3174 pending_option[DO + MXP] = True
DEBUG stream_writer.py:950 send IAC DO MXP
DEBUG stream_writer.py:3174 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:950 send IAC DO AARDWOLF
DEBUG stream_writer.py:3174 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:950 send IAC DO ATCP
DEBUG stream_writer.py:707 recv IAC WONT BINARY
DEBUG stream_writer.py:2025 handle_wont(BINARY)
DEBUG stream_writer.py:3174 remote_option[BINARY] = False
DEBUG stream_writer.py:3174 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:707 recv IAC WONT SGA
DEBUG stream_writer.py:2025 handle_wont(SGA)
DEBUG stream_writer.py:3174 remote_option[SGA] = False
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = False
DEBUG stream_writer.py:707 recv IAC WONT STATUS
DEBUG stream_writer.py:2025 handle_wont(STATUS)
DEBUG stream_writer.py:3174 remote_option[STATUS] = False
DEBUG stream_writer.py:3174 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:707 recv IAC WONT CHARSET
DEBUG stream_writer.py:2025 handle_wont(CHARSET)
DEBUG stream_writer.py:3174 remote_option[CHARSET] = False
DEBUG stream_writer.py:3174 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:707 recv IAC WONT EOR
DEBUG stream_writer.py:2025 handle_wont(EOR)
DEBUG stream_writer.py:3174 remote_option[EOR] = False
DEBUG stream_writer.py:3174 pending_option[DO + EOR] = False
DEBUG stream_writer.py:707 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2025 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3174 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3174 pending_option[DO + COM_PORT_OPTION] = False
DEBUG stream_writer.py:707 recv IAC WONT GMCP
DEBUG stream_writer.py:2025 handle_wont(GMCP)
DEBUG stream_writer.py:3174 remote_option[GMCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSDP
DEBUG stream_writer.py:2025 handle_wont(MSDP)
DEBUG stream_writer.py:3174 remote_option[MSDP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSP
DEBUG stream_writer.py:2025 handle_wont(MSP)
DEBUG stream_writer.py:3174 remote_option[MSP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSP] = False
DEBUG stream_writer.py:707 recv IAC WONT MXP
DEBUG stream_writer.py:2025 handle_wont(MXP)
DEBUG stream_writer.py:3174 remote_option[MXP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MXP] = False
DEBUG stream_writer.py:707 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2025 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3174 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3174 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:707 recv IAC WONT ATCP
DEBUG stream_writer.py:2025 handle_wont(ATCP)
DEBUG stream_writer.py:3174 remote_option[ATCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ATCP] = False
INFO fingerprinting.py:746 connection for server fingerprint 67bffa9d5cf57f36
INFO client_base.py:106 Connection closed to
.. raw:: html
.. [#scan] measured 2026-02-14 at 17:13 UTC