Update README-zhCN.md

up to date with the latest README and some proofreading
This commit is contained in:
Maple Gao 2023-08-16 09:42:33 +08:00 committed by GitHub
parent 2b72e0582a
commit baf2a8381e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 8 deletions

View File

@ -1,11 +1,11 @@
# 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)
这个 repo 是 BBR像素战地的服务端 API
BBR像素战地的服务端 API 在部署后可以提供`社区服`所需要的游戏服务端事件处理以及事件控制。
## 如何开始
@ -15,19 +15,23 @@ Language [English](/README.md) | 中文 | [한국어](/README-koKR.md)
- 可以写基于 [.NET 6.0](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) 的 C# 代码。
- 可以在生产环境中部署此代码。
### 如何制作功能
### 制作功能
制作对应的功能可以 [查看维基(制作中)](https://github.com/MrOkiDoki/BattleBit-Community-Server-API/wiki).
使用这个 API 将在运行本程序后开启一个`ServerListener` 的监听进程,传递你*自己定义*的`Player` 和 `GameServer` 类型覆盖原本游戏自身的`Player` 和 `GameServer`类型。在这些类型中添加任何你想要的功能,以此来定制属于你自己的游戏玩法。
如果想给你的服务端添加功能,可以直接把覆盖的功能写在 `Program.cs``MyPlayer``MyGameServer`中,当然也可以按照框架规范进行其他的功能纂写。
本 API 将在运行后开启一个`ServerListener` 的监听进程,传递你 *自己定义*`Player``GameServer` 类型覆盖原本游戏自身的 `Player``GameServer` 类型。在这些类型中添加任何你想要的功能,以此来定制属于你自己的游戏玩法。
如果想给你的游戏服务端添加功能,可以直接把覆盖的功能写入 `Program.cs``MyPlayer``MyGameServer`中,当然你也可以按照框架规范进行其他的功能纂写。
### 编译
可以直接使用 [`dotnet build`](https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-build) 的命令进行编译,或者在你的 IDE 中自定义编译.
可以直接使用 [`dotnet build`](https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-build) 的命令进行编译,或者在你的 IDE 中自定义编译
### 连接服务端
### 连接游戏服务端
当你将此项目的功能写完并进行了编译后,需要将此 API 服务进行部署。此 API 服务可以部署在本地网络、本机网络或者广域网中。我们强烈建议以「最低延迟」为基准进行部署,以保证 `ServerListener` 可以同时监听 *多个* 游戏服务端。
你可以在游戏服务端的启动配置中对 API 的地址和端口进行设定。
游戏服务端通过启动参数 `"-apiEndpoint=<IP>:<端口>"` 来与本 API 实例进行通信, 启动参数中的 `<端口>` 指的是本 API 服务中指定的端口 `<IP>` 指的是本 API 服务部署实例的 IP 地址。
如果游戏服务端实例与本 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/)。