Skip to content

Introduction

This documentation describes the Protocol used at TeeFrame. It's based on the Teeworlds Protocol 0.6 + DDNet Extensions. Here, you will learn how all network-level communication is encoded and exchanged.

The Protocol

The Teeworlds 0.6 protocol is a set of rules for the Teeworlds game to exchange data between the client and server over UDP. DDNet is the maintained fork of Teeworlds 0.6 and extends this protocol for extra features, such as extended GUI, extended server data and player listing, and others.

What to Expect

All content written here aims to describe and exemplify how all communication works in a simplified and practical way. This documentation avoids technical terminology terms as much as possible.

It skips deprecated features and notes about past changes to the protocol. Also, if DDNet has implemented an enhanced way to send some data, the documentation will describe the enhanced one as the only way.

Although this documentation is based on an existing protocol and maintains its compatibility, the naming of values are based on TeeFrame and may differ from the original Teeworlds 0.6 or DDNet.

INFO

You can track the naming differences on Naming Changes page.

Debugging

If you are developing and testing an implementation with this documentation, it is recommended that you use a debugging tool to understand the flow and data of the packets more easily. Below are recommendations for tools that can help you:

Credits

This documentation was created by Miguilim. The content is based on ChillerDragon Teeworlds Protocol, libtw2 docs, Teeworlds 0.6 Source, and DDNet Source.