Integration requirements

Note: The content on this page pertains to Clanforge. If you’re using Multiplay Hosting, refer to the Multiplay Hosting documentation.

The tables below contain the requirements of your game server binary for integrating with the Clanforge orchestration platform. If you have questions about specific requirements or exceptions when integrating with the Clanforge orchestration platform, contact the Multiplayer support team.

Want to make the most of Clanforge's services? Refer to Integration best practices.

Supported operating systems

RequirementDescription
Operating System

Clanforge officially supports:

  • Windows Server 2019
  • Ubuntu 20.04

Minimum requirements

RequirementDescriptionExceptions
Multiple Instances

Your binary process must support running multiple instances of the process on the same machine.

No exceptions

Bindable Port

Clanforge generates port numbers dynamically per server instance (with an offset to ensure there is no port conflict on server startup).

To leverage this functionality, your server instance must support configurable ports (for example, accept the port number via a command-line argument).

Clanforge recommends using a command-line parameter such as -PORT= or -Port=. To learn more about bindable ports, refer to Why does Multiplay require bindable ports?.

No exceptions

Bindable IP Address

All engines must bind to 0.0.0.0.

No exceptions.

Logs Directory

Your server should generate logs in a directory relative to the server instance root directory where the executable is. If you’re using Unreal Engine, the logs directory should be relative to the Saved directory. Clanforge exposes files generated in this directory on your Clanforge panel for each server instance.

For log retention, Clanforge also recommends setting up a log rotation within the server code to ensure that you have a history of logs without it overwriting a single file continuously. This helps with debugging historic issues.

Clanforge recommends using a command-line parameter such as -log= or -LogPath=. To learn more about exposed files and directories, refer to Clanforge exposed directories.

You can omit the logs directory requirement if you don’t plan on accessing your server logs or crash dumps.

Advanced hosting

In addition to the minimum requirements above, this table has additional requirements for advanced hosting (Multiplay’s managed service).

RequirementDescriptionExceptions
Query Protocol

Clanforge supports game server query protocols to collect analytic data on your game servers. Clanforge provides an offset of +10 from the main port and +100 from other query ports to prevent any conflicts. Leveraging query port functionality enables us to provide you with real-time analytics to better support your game. Clanforge recommends specifying the query port via a command-line argument such as -QueryPort=. To learn more about game server query protocols, refer to Why do I need a game server query protocol?.

No exceptions.

Configuration Directory

If your game server accepts additional configuration options through a configuration file, you must supply Clanforge with a way to dynamically change where your server looks for this file.

Clanforge recommends using a command-line parameter such as -Homedir=, -Userdir= or -Config=.

The configuration directory requirement only applies if your server looks for additional arguments in a configuration file.

server.json

To use the allocation system, you must enable a command-line argument for specifying a file that has the allocation UUID (supplied by your matchmaker). This can be read either by an event trigger set (which is preferred) or by an intermittent check from the process (which can lead to racing conditions).

Clanforge recommends using a command-line parameter such as -serverjson=. To learn more about the server.json file, refer to Server.json file.

You can omit the server.json requirement if you opt to use Clanforge's unmanaged services.