Community Rules

  1. The community, its servers and playerbase should be established:

    1. Servers should have been online continuously for at least 30 days.
    2. Servers should have at least 30 concurrent players in the last 30 days.
    3. Communities should have at least 2 public servers (listed in the server browser and not password-protected).
    4. Communities should not be unions of different sub-communities.
  2. Servers must adhere to the masterserver rules at all times.

  3. Servers and staff must maintain a friendly and SFW atmosphere:

    1. DDNet has an age rating of 6 years (fantasy violence) on Steam, which must also apply to every official community.
    2. Any monetary reward systems are prohibited. Accepting donations is allowed, as long as there are no differences in gameplay between donors and non-donors. Listing donors on a website as well as giving them Discord roles that have no additional permissions (style-only) is allowed.
    3. This applies to all game servers as well as any other official presences of the community (Discord servers, social media accounts etc.).
  4. Servers must be actively administered:

    1. Community staff members must not be banned on

      1. DDNet servers globally for major rule violations,
      2. the DDNet Discord server, or
      3. the masterserver.

      We will notify the community administration before taking action based on this rule.

    2. Administration must communicate in English and respond to contact within reasonable time.

    3. Designate one or more administrators as community contacts, that we can readily contact for administrative reasons if we have to.

  5. There should be a clear way to contact administration and a reporting system in place:

    1. Include contact information, like a link to your website or Discord server, in the server’s MOTD (sv_motd).
    2. Provide a list of rules and explain how to report rule breaking behavior, for example with a chat command /rules that explains the rules on the server and how to report rule breaking behavior, and/or by adding this information to the server’s MOTD.

This list is not exhaustive. Additional rules may be applied retroactively at our discretion, including removing communities that violate the spirit of fair play or good conduct. Please contact us as described below, if you have any questions about the rules.

Community names

  • The community name shown in the client is restricted to at most 63 bytes in UTF-8 encoding.
  • If your community name is not written in latin characters, then also provide a latin transliteration or abbreviation in parenthesis.
  • Consider the length of the community name being shown in the server browser filter.
  • Communities have an internal ID, which must be a unique string consisting of at most 31 lower case latin letters and underscores.
  • We will determine at our discretion whether community names are acceptable.

Community icons

  • The community icon must be a 128x64 pixel RGBA PNG image (max. 50 KiB), which the client should be able to load successfully without error or warning.
  • You can test your icon by temporarily replacing the file data/communityicons/none.png with your icon. Check the console for errors and warnings after starting the client.
  • Test how your icon looks in the client. Avoid details and colors that would not be visible in the client.
  • Try to make your icon representative of your community or its name. Avoid too much similarity with icons of other communities.
  • Use an artstyle similar to the rest of the game.
  • We will determine at our discretion whether community icons are acceptable.

Community server countries and types

  • Servers can be filtered in the server browser by countries/regions and types.
  • Set the country/region flag for each individual server in its server info, by setting the attribute "flag" to an integer representing the country code in ISO 3166-1 numeric format. On DDNet-based servers, the flag can be set with the sv_flag setting in the server configuration. A list of all available flags in ISO 3166-1 numeric can be found in the file data/countryflags/index.txt.
  • Note that the community type filter may be revised or removed in a future version of the DDNet client. Community types are therefore automatically chosen based on the gametype of each individual server as backwards compatibility. Use a descriptive gametype name for each server so that filtering by gametype works.

Community Administration

Open an Admin-Mail ticket on our Discord server for any issues regarding community servers:

  • to request creating a community for your servers (please read the above rules carefully and ensure that you satisfy them),
  • to update your own community’s information or icon (please also contact us in advance if you plan to shutdown your community),
  • to report community servers that break the above rules (please provide the server IP address and describe which rule was broken), and
  • for any further questions and concerns about the community rules and administration.

List of Communities

Technical information for community administrators

  • After we have determined that your community satisfies the criteria, you have to generate two tokens (community token and verification token) in order to identify your community with the masterserver:

    • Run the script scripts/generate_community_token.py (with Python 3) to generate both tokens locally.
    • The community token (prefix ddtc) must be stored safely and secretly.

      • When registering your servers with the masterserver over HTTPS, set the Community-Token header to the community token, in order to associate the server with your community. When hosting DDNet-based servers, this is accomplished with the sv_register_community_token setting in the server configuration.
      • To register older servers with the masterserver, that do not support registering over HTTPS, you can build and then preload httphook-ldpreload with your server according to the linked instructions.
    • The verification token (prefix ddvc) should be sent to us in an Admin-Mail ticket when creating your community. We will store the verification token in order to verify the community token sent by your servers.

    • You may generate multiple, separate token pairs for different server locations, to reduce the impact of an individual community token being compromised. Either way, send all your verification tokens to us and keep all your community tokens secret.

  • If you have reason to believe that your community token has been compromised, report this immediately by opening an Admin-Mail ticket on our Discord server. Generate a new pair of tokens and send us the verification token.