Skip to content

Commit

Permalink
Update README.md (#9 with no merge)
Browse files Browse the repository at this point in the history
  • Loading branch information
Misaka12456 committed Apr 15, 2022
1 parent d7ca0f2 commit 68fc555
Showing 1 changed file with 10 additions and 23 deletions.
33 changes: 10 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,39 +2,34 @@

高并发低占用的 Arcaea API 后端 基于ASP.NET Core 6.0


##### 支持的Arcaea客户端版本

* Arcaea 3.10.0(c) 及以上版本


##### 项目结构

* [Team123it.Arcaea.MarveCube](./Team123it.Arcaea.MarveCube) - Arcaea Server 2 主服务器后端

* [Team123it.Arcaea.MarveCube.Standalone](./Team123it.Arcaea.MarveCube.Standalone) - Arcaea Server 2 独立下载服务器后端

##### 运行环境(主服务器程序与下载服务器均需要)

* Microsoft.AspNetCore.App x64 运行时 6.0.0 及以上版本


##### 额外依赖环境(仅主服务器程序需要)

* MySQL 8.0+ / MariaDB 10.0+ (用于存储服务器数据)

* Redis 6.0+ (Windows端为Redis for Windows 3.0+) (用于存放下载Token等临时数据)

##### 最新版本(v0.3.7+)API地址(Endpoint)

`{Your Domain}/years/19/`

##### 特点

* 对于曲包id为 `unranked` 或难度定数为0(不存在应为-1)的曲目,程序会将成绩存储至 `bests_special` 而并非 `bests` 表中,因此这些曲目将不计入Best30计算

* 玩家的个人游玩潜力值计算中仅存在Best30,不存在Recent10,因此潜力值在任何情况下都不会出现倒扣的情况

* 玩家在曲目游玩结束并提交成绩后会视成绩以及难度给予玩家一定数量的记忆源点


##### 搭建之前……

独立的下载服务器(Team123it.Arcaea.MarveCube.Standalone)可以与主服务器程序放在一起;
Expand All @@ -43,47 +38,39 @@
主服务器和下载服务器都需要存在谱面文件夹(包括该曲目的ogg音频文件以及aff谱面文件)(位置在 `{程序根目录}\data\static\Songs` ),其作用如下:

1. 下载服务器为玩家提供数据下载

2. 主服务器在玩家提交数据后检查MD5校验值是否正确

3. 主服务器在玩家登录账号后返回所有谱面以及音频文件的MD5校验值


##### 运行之前……

1. 启动数据库程序 & Redis程序

2. 启动主服务器程序并按照提示进行初始化


##### 注意事项

* 为减轻文件读写压力,Arcaea Server 2 服务端在第一次收到登录请求时,会将谱面文件夹中的所有ogg音频文件以及aff谱面文件的MD5校验值,保存在数据库的 `fixed_songs_checksum` 表中。

* 若后续出现再次登录将直接返回数据库中存储的校验值而并非重新遍历计算校验值。

* 但使用该方法时可能会出现谱面文件/音频文件需要更新的情况,这时请手动删除 `fixed_songs_checksum` 表中的对应文件的MD5校验值项,下一位玩家登录后将会自动更新MD5校验值。



##### 关于Link Play

* 当前暂时不支持Link Play游玩,还请等待后续更新。


##### 关于Bot查分接口

* Arcaea Server 2 服务端支持和 ArcaeaUnlimitedAPI 同样格式的数据查询,可以让QQ查分机器人接入服务器进行查分操作

* 接口存在于以下位置

```url
{API_ENDPOINT}/botarcapi
```

* 接口文档
+[user/best30](/docs/userbest30.md)
+[user/best](/docs/userbest.md)
+[user/info](/docs/userinfo.md)
+[song/info](/docs/songinfo.md)

+ [user/best30](/docs/userbest30.md)
+ [user/best](/docs/userbest.md)
+ [user/info](/docs/userinfo.md)
+ [song/info](/docs/songinfo.md)

##### 开源协议

Expand Down

0 comments on commit 68fc555

Please sign in to comment.