Skip to content

Latest commit

 

History

History
207 lines (148 loc) · 8.64 KB

File metadata and controls

207 lines (148 loc) · 8.64 KB

Server

The server module represents the core of the LAN Server. It is a simple web server that listens to the game's API requests. The server reimplements the minimum required API surface to allow the game to work in LAN mode.

Minimum system requirements

Stable

  • Windows: 7 (or equivalent, 10 or higher recommended).
  • Linux: kernel 3.2 (see here for more details).
  • macOS: Monterey (v12).

Admin rights or firewall permission to listen on port 443 (https) will likely be required depending on the operating system.

Experimental
  • BSD-based (OpenBSD, DragonFly BSD, FreeBSD and NetBSD).
  • Solaris-based (Solaris and Illumos).
  • AIX.

Note: For the full list see minimum requirements for Go 1.26.

Domains

Main

  • aoe-api.reliclink.com: legacy domain for AoE I: DE, AoE II: DE, AoE III: DE and AoE IV: AE.
  • *.worldsedgelink.com: current domain for all games.

Playfab

  • *.playfabapi.com: currently used in AoM for Arena of the Gods content.

Partially proxied

  • api.ageofempires.com: except text moderation so it works normally even without internet.
  • cdn.ageofempires.com: except server status so it always shows online.

Note proxied domains only override part of the official functionality but retain the rest of it.

Configuration

Certificate

The easiest way to generate a self-signed certificate is by running the bin/genCert executable (more info here or you may leave that to the launcher if you are hosting and running the launcher on same PC.

Self-signed certificate

The self signed certificate pair (selfsigned_cert.pem and selfsigned_key.pem) is generated specifically for non-AoM and non-AoE IV games.

Default

The default certificate pair (cert.pem and key.pem) serves as the default and for AoM and AoE IV. It is signed by cacert.pem certificate authority.

You can use your own certificate by (re)placing the cert.pem and key.pem files in the resources/certificates directory.

Main

The few configuration options are available in the config.toml file. The file is self-explanatory and should be easy to understand.

Login

The configuration file sent to the client upon login is login.json inside the game subdirectory in resources/config. Some options are easy to understand while others might require researching.

Cloud

The game connects to a static cloud to download assets. The server is configured to replace the original calls to itself. The configuration file is cloudfilesIndex.json inside the game subdirectory in resources/config and the corresponding files reside in the cloud directory.

Age of Empires III: Definitive Edition only

Chat Channels

The chat channels are defined in the chatChannels.json file.

Other static responses

The server also serves some static responses for the game to work. The files are located in the responses base directory.

Age of Empires: Definitive Edition

  • Item Definitions: Definitions of items. Includes rewards, challenges and other items.

Age of Empires II: Definitive Edition

Age of Empires III: Definitive Edition

Age of Empires IV: Anniversary Edition

Age of Mythology: Retold

Main
Playfab

Starting and configuring Online-like Battle Servers

See Battle Servers for how to set up and start manually-configured Online-like Battle-servers. See Battle Server Manager for how to do so automatically.

Command Line

CLI is available with similar options as the configuration. You can see the available options with server -h.

API endpoints

For documentation on how what each endpoints does, please refer to LibreMatch documentation. Other endpoints are mostly self-explanatory.

Docker

See Docker for information.

Exit Codes