CommunityServerAPI 1.0.7

There is a newer version of this package available.
See the version list below for details.
dotnet add package CommunityServerAPI --version 1.0.7                
NuGet\Install-Package CommunityServerAPI -Version 1.0.7                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CommunityServerAPI" Version="1.0.7" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add CommunityServerAPI --version 1.0.7                
#r "nuget: CommunityServerAPI, 1.0.7"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install CommunityServerAPI as a Cake Addin
#addin nuget:?package=CommunityServerAPI&version=1.0.7

// Install CommunityServerAPI as a Cake Tool
#tool nuget:?package=CommunityServerAPI&version=1.0.7                

BattleBit Remastered Community Server API

License: MIT

Language English | 中文 | 한국어

This repository provides an API that can be used to handle events on your community server(s) and manipulate them.

Getting started

Prerequisites

  • Your own community server within BattleBit Remastered with progression disabled and access to its launch options.
  • The ability to write and compile .NET 6.0 C# code.
  • (for production) A place to host this API on.

Writing

Documentation and examples can be found on the wiki (WIP).

The way to use this API is to make an instance of ServerListener (and start it) on which you pass the types of your own subclasses of Player & GameServer. In those subclasses, you can make your own overrides to the already existing methods in Player and GameServer. You can also add your own methods and fields/properties.

The easiest way to get started with all of this, is to use Program.cs and add your overrides etc. into MyPlayer & MyGameServer.

Building

This project can either be built by using dotnet build on the command-line or by using the run / build options inside your preferred IDE.

Alternatively, you can use Docker to run it. An easy way to do this it to run docker compose up.

Connecting to the gameserver(s)

After writing and compiling this project. You will want to host it somewhere. This could be on the same server that the gameservers run on, or somewhere completely different. We do recommend to keep the latency to the gameserver minimal for smoother and faster communication. The same ServerListener can be used for multiple gameservers at the same time. You can specify the API server (address & port) in the launch options of the gameserver.

The gameserver connects to the API with the launch argument "-apiendpoint=<IP>:<port>", where <port> is the port that the listener listens on and the <IP> is the IP of the API server.

The project is currently configured to have the API listen on port 29294. If you want to change this, make sure to change it in the code (on your listener.start(port)). Port 29294 is also exposed in Docker and bound to the same port on the host in Docker Compose. This means that when using Docker, you will have to change the port in the Dockerfile and in docker-compose.yml (when using Compose) as well. See EXPOSE in the Dockerfile reference and networking in Compose.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0

    • No dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on CommunityServerAPI:

Package Downloads
BBRAPIModules

Modularize your BattleBit Remastered Community Server API

BattleMetrics.BattleBitRCON

A simple RCON implementation for BattleBit using WebSockets. This package was designed for BattleMetrics RCON.

BattleBitAPI.Addons.Common

Various helper functions for unofficial battlebit addons.

BattleBitAPI.Addons.EventHandler

A unofficial addons for better event handling.

BattleBitAPI.Addons.CommandHandler

A unofficial addons for creating commands.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.8.1 640 11/30/2023
1.0.8 131 11/30/2023
1.0.7.1 879 8/31/2023
1.0.7 248 8/31/2023
1.0.6 227 8/30/2023
1.0.5 226 8/29/2023
1.0.4.2 195 8/28/2023
1.0.4.1 233 8/27/2023
1.0.4 243 8/26/2023
1.0.3 170 8/26/2023
1.0.2.2 394 8/20/2023
1.0.2.1 154 8/20/2023
1.0.2 151 8/20/2023
1.0.1 180 8/20/2023
1.0.0 146 8/18/2023