The Transport Server is responsible for hosting game applications and handling communication with clients. It acts as a mediator that facilitates event-based data exchange between clients and applications running on the server, and also ensures that messages, updates, and events are transmitted efficiently and reliably among all connected players. Without it, the communication between the client and the application is not possible.
From the business perspective, the Transport Server allows running your apps on-premise, avoiding the need to turn to the expensive Cloud-based solutions.
For more conceptual information about this solution refer to the Transport Server material.
This material covers the installation of the Transport Server and its usage.
Sign in to your account and navigate to the Download section of the website. Select the appropriate platform(Windows, Linux, MacOS or Arm-Linux), download and install the
When installing for Linux platform using the shell script file, you can use the following options:
|Fetches information from the shell’s internal documentation.
|Sets the path where all files will be installed.
|Sets the path where temporary files are unpacked for installation.
The installation package comes with the binary libraries for the Client and the Server application, and also the
game-carrier.cmake file which is used to locate the
gcs directory required for build purposes. By default, the file is located in the following folder:
game-carrier.cmake file must be included in the
Additionally, you have to download the license file
authentication.dat by clicking the
Download auth file for... button in the Download section of the dashboard.
Once downloaded, move this file to the
.gc folder in the user home directory:
After the successful installation of the
gcs you have to install additional components required to create the development environment that allows building applications from source. This material covers the build and the usage of the preconfigured client and the server application that must be downloaded from the Game Carrier’s Github repository.
In case you don’t want to use the preconfigured examples, simply install additional software provided below and skip the cloning of the Game Carrier’s repository.
First you have to download and install the following:
Once installed clone into the Game Carrier Examples repository:
git clone https://github.com/gamecarrier/examples
examples repository contains the preconfigured configuration file and the server application which will be built and used further in this material.
About Server Config
The Transport Server is heavily reliant on the server configuration file that must be configured before running the server. Without it the server simply will not run. The server config is a
.json file that stores different settings and information about the applications that the server must pick up and run. The configuration file must be retrieved from the
examples repository, the config file(
config.json.in) is located in the
In case you have downloaded the preconfigured examples from the Github repository containing the config file, then you can jump straight to the Building The Apps section.
Otherwise, you need to modify the configuration file to meet your custom requirements and return back to this guide. We strongly recommend reading the Server Configuration File material - there you will find exhaustive information about all properties and values required to modify the config and launch the server with your custom application.
Building The Server Application
This material is centered around building the preconfigured server application retrieved from the
examples repository. But you can also follow the same steps to build your custom application.
examples directory where the cloned files are stored:
Configure the build:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
-S .: Specifies the source directory where the CMakeLists.txt file is located. In this case, it’s the current directory represented by
-B build: Specifies the build directory where CMake will generate the build files and store the build artifacts. In this case, the build directory is named “build”.
-DCMAKE_BUILD_TYPE=Release: Sets the build type to “Release”. This affects the build configuration, enabling optimizations and disabling debug symbols, which results in an optimized binary.
Build the project:
cmake --build build --config Release
Running The Server
After the successful build, run the
gcs server executable by passing the path to the configuration file.
Now the server becomes operational and starts listening to all incoming messages.