Skip to content

Hosting Guide

Rain edited this page Sep 26, 2023 · 6 revisions

This guide will walk you through the process of hosting modules for use with your BattleBit Remastered community server.

Before diving into hosting your modules with the BattleBit API Runner, it's important to have a basic understanding of managing servers and the associated responsibilities. This guide focuses solely on setting up and using the BattleBit API Runner software, providing you with the tools to enhance your BattleBit Remastered experience.

Remember, running public servers comes with its own set of considerations and ensuring the security of your BattleBit community server is completely up to you! Make sure you're well-informed about these aspects and are prepared to handle them. This is not specific to the BattleBit API Runner but to hosting public servers in general. This guide concentrates on the specific steps related to the BattleBit API Runner application itself.

Initial setup

  1. Download the latest release of the BattleBit API Runner from the Releases page of this repository.

  2. Extract the contents of the downloaded release to a directory of your choice.

  3. Open the appsettings.json file located in the extracted directory and configure the runner settings:

{
  "IP": "127.0.0.1",
  "Port": 29595,
  "ModulesPath": "./modules",
  "Modules": [ "C:\\path\\to\\specific\\ModuleFile.cs" ],
  "DependencyPath": "./dependencies",
  "ConfigurationPath": "./configurations"
}
  • IP*: (*Required) Listening IP
  • Port*: (*Required) Listening port
  • ModulesPath: (Optional) Path to the folder containing all modules (will be created if not exist), default value is ./modules
  • Modules: (Optional) An array of individual module file paths, default value is [], useful for development
  • DependencyPath: (Optional) Path to the folder containing all binary (dll) dependencies (will be created if not exist), default value is ./dependencies
  • ConfigurationPath: (Optional) Path to the folder containing all module and per-server module configuration files (will be created if not exist), default value is ./configurations

IMPORTANT! You are solely responsible for the security of your system. Exposed ports, listening on any interface, firewalls and other things are up to you to setup!

  1. Run the program by executing BattleBitAPIRunner.exe on Windows or dotnet BattleBitAPIRunner.dll on Linux.

This will set up the community server API listener, allowing your BattleBit Remastered server to connect for customization. During this step, ensure that the server correctly connects to the API. If not, adjust your configuration settings in appsettings.json accordingly.

Installing modules

  1. Copy your module files (written in C# with a .cs extension) into the modules directory.

  2. If your modules have binary dependencies, copy these DLL files into the dependencies directory.

IMPORTANT! Within the Modules Repository, every module undergoes thorough evaluation by skilled programmers to ensure their compliance. This process verifies that these modules are not malicious. Similarly, links to external binary dependencies are scrutinized. Please avoid blindly trusting any module or binary dependency. It's advised to review modules to ensure their reliability. Exercise caution when using modules or binary dependencies from unverified sources. Your safety matters!

  1. Ensure that all required dependencies for your modules are provided and met. Additionally, provide any optional dependencies you intend to use.

  2. Restart, or start the program again. It will compile and load all the modules you've placed in the modules directory. When a server connects, the program will create corresponding module configuration files with their default values in the configurations directory.

  3. Configure the modules by changing the json files in the configurations directory. To apply the configurations, restart the program again.

  4. You're done! Your modules are now hosted and ready to enhance the gameplay experience of BattleBit Remastered servers.

Clone this wiki locally