Welcome to the PtokaX Wiki!

This wiki is devoted to let users share information on the great hubsoft PtokaX. However, it is not limited to PtokaX, it is destined to share and discuss information on different parts of the LUA programming language, but the site is NOT intended to be a replacement for the primary LUA Board aka the PtokaX Portal, nor the secondary LUA Board or the PtokaX resources.

If you’re not familiar with wikis then in short: they are user-contributed sites: pages can be edited by (almost) anyone. As such, there is always kind of up-to-date and (hopefully) proper content. They are better than forums, since relevant pieces of information are on the same page. Do not hesitate to share your knowledge, and we all hope you can learn and teach a lot here! — bastya_elvtars


This is an old version of the DC protocol documentation I have found on my computer. As I was unable to find protocol documentation online, thought I would upload it here for all interested. the content is unaltered, feel free to update.

For the next 35 years (till the start of ADC domination :P) it will hopefully be usable. — bastya_elvtars

I have compiled this protocol documentation from various sources in hopes of creating a complete Direct Connect protocol reference.

    Version 1.4.1
    Last Update 11/29/03

The following users have contributed to this file.

  • Sid
  • aDe
  • Sedulus
  • David Marwood
  • Suxxx
  • Stefan Gorling
  • Sphinx
  • HaArD

The Direct Connect network is composed of Hubs, Clients, and the HubListServer. Hubs listen on TCP port 411 and allow many clients to connect and exchange commands such as searches and chat messages. Essentially, hubs are a naming service and communication facilitator for clients. Clients store files and respond to searches against those files. The HubListServer acts as a naming service for all the hubs. All hubs register with the HubListServer and clients discover hubs by asking the HubListServer. Clients are run by users, each of whom has a nick (aka username).

The TCP data is a series of commands, each in the form of,


The | indicates the end of a command and is not followed by a newline.

Certain users are designated as Ops by the hub and are able to issue certain commands not available to other users.

Introduction – Introduction

Client2Client_Handshake – Client to Client HandShake

Client2Server_Login – Client to Server Login

Server2RegServer_HubRegistration – Server to Hub Registration Server Communication

Command_Types_(client_to_client) – Command Types (client to client)

Command_Types_(client_to_server) – Command Types (client to server)

Command_Types_(server_to_server) – Command Types (server to server)

Command_Types_(experimental) – Command Types (experimental)

Appendix_A – Converting a Lock into a Key

Appendix_B – Creating a Lock

Protocol extensions (work in progress!)

Personal Tools