diff --git a/README-esES.md b/README-esES.md new file mode 100644 index 0000000..25f9d8c --- /dev/null +++ b/README-esES.md @@ -0,0 +1,45 @@ +# BattleBit Remastered Community Server API + +[![Licencia: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) + +Language [English](/README.md) | [中文](/README-zhCN.md) | [한국어](/README-koKR.md) | Español + +Este repositorio proporciona una API que puede ser usada para manejar eventos en tu servidor de comunidad y manipularlos. + +## Primeros pasos + +### Preequisitos + +- Tu proprio servidor de BattleBit Remastered con la progresión **deshabilitada** y acceso a los parámetros de lanzamiento. +- Poder escribir y compilar [.NET 6.0](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) en C#. +- (para entorno de producción) Un espacio donde alojar esta API + +### Información + +La documentación y algunos ejemplos se pueden encontrar en la [wiki](https://github.com/MrOkiDoki/BattleBit-Community-Server-API/wiki) (WIP). + +La manera de utilizar esta API es instanciando una clase `ServerListener` (y ejecutándola) a la cual le pasas tus *propias* subclases de `Player` y `GameServer`. En esas subclases, puedes hacer tus propias modificaciones a los métodos que ya existen en `Player` y `GameServer`. Tambien puedes añadir tus propios atributos y métodos. + +La manera más fácil de empezar, es usando el archivo proporcionado `Program.cs` y agregar tus propias modificaciones. dentro de `MyPlayer` y `MyGameServer`. + +### Compilación + +El proyecto se puede compilar tanto usando el comando [`dotnet build`](https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-build) en una línea de comandos o usando las opciones de compilar dentro de tu IDE preferido. + +Alternativamente, puedes usar docker para ejecutarlo. Una forma fácil de hacer eso es ejecutar el comando `docker compose up`. + +### Conectando al servidor(es) + +Después de programar y compilar el proyecto, necesitarás un sitio donde alojarlo. Esto se podría hacer en el mismo sitio que el servidor del juego donde la latencia sería mínima, o en cualquier lugar completamente diferente. Es recomendable mantener la latencia entre el servidor y la API lo más baja posible para favorecer el rendimiento. Un mismo `ServerListener` puede ser utilizado para *múltiples* servidores del juego al mismo tiempo. Puedes especificar la API (direccion y puerto) en los parámetros de lanzamiento del servidor de juego. + +#### Parámetros de lanzamiento del servidor de juego + +El servidor se conecta a la API a través del parámetro `"-apiendpoint=:"`, donde `` es el puerto donde el listener escucha y `` es la dirección IP de la API. + +Si se requiere verificación por `Api Token` en tu API, tendrás que añadir el parámetro `"-apiToken="` a los parámetros de lanzamiento de los servidor(es). Si el `` del servidor es el mismo `Api Token` que está definido en la API, los servidores se podrán comunicar con la API. De no ser así, la conexión será rechazada. + +Cuando el servidor de juego esté iniciado completamente, puedes modificar direcamente el `Api Token` del servidor usando el comando `setapitoken ` en la ventana de comandos del servidor que se ha iniciado. + +#### Ajustar puerto de escucha de la API + +El proyecto está actualmente configurado para escuchar en el puerto `29294`. Si quisieses cambiar esto, asegurate de cambiarlo en el código (en tu `listener.start(port)`). El puerto `29294` tambien está expuesto en Docker y ligado al mismo puerto enel host en Docker Compose. Esto significa que, usando Docker, se tendrá que cambiar el puerto en el archivo `Dockerfile` y en el archivo `docker-compose.yml` (cuando se utiliza Compose) tambien. Léase [EXPOSE in the Dockerfile reference](https://docs.docker.com/engine/reference/builder/#expose) y [networking in Compose](https://docs.docker.com/compose/networking/). diff --git a/README-koKR.md b/README-koKR.md index cd7e201..41a7a6b 100644 --- a/README-koKR.md +++ b/README-koKR.md @@ -1,8 +1,8 @@ -# BattleBit Remastered Community Server API +# BattleBit Remastered Community Server API [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) -Language [English](/README.md) | [中文](/README-zhCN.md) | 한국어 +Language [English](/README.md) | [中文](/README-zhCN.md) | 한국어 | [Español](/README-esES.md) 이 레포지토리는 BattleBit Remastered 커뮤니티 서버에서 이벤트를 처리하고 조작하는 데 사용할 수 있는 API를 제공합니다. diff --git a/README-zhCN.md b/README-zhCN.md index cf15370..b17aad4 100644 --- a/README-zhCN.md +++ b/README-zhCN.md @@ -1,8 +1,8 @@ -# BattleBit Remastered 服务端 API +# BattleBit Remastered 服务端 API [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) -Language [English](/README.md) | 中文 | [한국어](/README-koKR.md) +Language [English](/README.md) | 中文 | [한국어](/README-koKR.md) | [Español](/README-esES.md) BBR(像素战地)的服务端 API 在部署后可以提供`社区服`所需要的游戏服务端事件处理以及事件控制。 @@ -41,4 +41,4 @@ BBR(像素战地)的服务端 API 在部署后可以提供`社区服`所需 #### 调整 API 端口 如果游戏服务端实例与本 API 实例不在同一个实例上进行部署,且你想修改本 API 实例的端口 `29294`,你可以查看 `Progran.cs` 中 `listener.Start(29294);` 并把 `29294` 修改为你想指定或防火墙等安全策略已通过的端口号。 -如果你的实例运行在 Docker 容器中,端口 `29294` (或你修改的其他端口)也同时需要在 Docker 容器配置中进行修改并对外暴露。也就是说你需要修改 `Dockerfile` 且(如果有使用到容器集群编排)还有可能需要修改 `docker-compose.yml` 。相关参考资料可以查看 Docker 官方文档 [EXPOSE in the Dockerfile reference](https://docs.docker.com/engine/reference/builder/#expose) 以及 [networking in Compose](https://docs.docker.com/compose/networking/)。 +如果你的实例运行在 Docker 容器中,端口 `29294` (或你修改的其他端口)也同时需要在 Docker 容器配置中进行修改并对外暴露。也就是说你需要修改 `Dockerfile` 且(如果有使用到容器集群编排)还有可能需要修改 `docker-compose.yml` 。相关参考资料可以查看 Docker 官方文档 [EXPOSE in the Dockerfile reference](https://docs.docker.com/engine/reference/builder/#expose) 以及 [networking in Compose](https://docs.docker.com/compose/networking/)。 \ No newline at end of file diff --git a/README.md b/README.md index 0b8cf40..cbabdd8 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# BattleBit Remastered Community Server API +# BattleBit Remastered Community Server API [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) -Language English | [中文](/README-zhCN.md) | [한국어](/README-koKR.md) +Language English | [中文](/README-zhCN.md) | [한국어](/README-koKR.md) | [Español](/README-esES.md) This repository provides an API that can be used to handle events on your community server(s) and manipulate them.