This commit is contained in:
2025-01-16 22:01:38 +08:00
commit 9666075c7e
58 changed files with 30811 additions and 0 deletions

118
docs/dev_guide/WebUI.md Normal file
View File

@ -0,0 +1,118 @@
# WebUI
本节对服务器的WebUI进行介绍。
## 启用和禁用WebUI
如需禁用WebUI请在服务器启动时添加如下参数:
- Windows在命令行启动时使用`--hidden`,如下所示:
```
ew.exe --port 8080 --path ./data/ --hidden
```
- Linux在命令行启动时使用`--hidden`,如下所示:
```
ew --port 8080 --path ./data/ --hidden
```
- Docker在启动时将`HIDDEN`环境变量设置为`true`,如下所示:
```
docker run -d \
--name sif2 \
-p 8080:8080 \
-p 8000:8000 \
-e HIDDEN=true \
-v ./data:/data \
-v ./asset:/asset \
zhushenwudi/lovelive-sif2:1.0.1
```
## WebUI的使用
### 端口号
WebUI的默认端口号为`8080`
如需更改其端口号,请在服务器启动时使用如下参数。
- Windows在命令行启动时使用`--port <PORT>`,如将端口号改为`12345`,如下所示:
```
ew.exe --port 12345 --path ./data/
```
- Linux在命令行启动时使用`--port <PORT>`,如将端口号改为`12345`,如下所示:
```
ew --port 12345 --path ./data/
```
- Docker在启动时将端口映射修改为所需端口号如将端口号改为`12345`,如下所示:
```
docker run \
--name sif2 \
-p 12345:8080 \
-p 8000:8000 \
-v ./data:/data \
-v ./asset:/asset \
zhushenwudi/lovelive-sif2:1.0.1
```
### 主界面
WebUI的界面如下图所示
![WebUI主界面](../image/webui_mainwindows.png)
其中包括个人账户登录和导入用户数据和查看帮助等相关信息。
### 个人账户登录及其设置
在主页面输入SIF2 ID和数据迁移密钥即可登录到个人账户设置页面。界面如下图所示
![用户账户设置](../image/webui_login_setting.png)
其中包括导出用户数据,登出,设置登录奖励列表和设置服务器时间。
#### 导出用户数据
点击导出用户数据,会下载四个文件,这四个文件保存着用户数据,可以在导入用户数据时使用。
#### 登出
点击登出按钮,即可返回登录界面
#### 设置登录奖励列表
你可以增加登录奖励或删除登录奖励。
登录奖励的id的列表请自行查阅。
#### 设置服务器时间
该服务器时间只适用于当前登录账户,你可以更改服务器时间以更改当前卡池和当前活动。
服务器时间的输入可以使用`YYYY/MM/DD`形式假如你想将时间修改为2023年11月1日则输入`2023/11/01`即可。
:::tip 参考
1. 可以使用命令行参数`--disable-exports`或环境变量`DISABLE_EXPORTS`禁止服务器导出数据。
2. SIF2 ID和数据迁移密钥的获取请参考[XX](https://example.com)。
:::
### 导入用户数据
导入用户数据为在新的服务器上导入其他服务器的数据。界面如下图所示:
![导入用户数据](../image/webui_import_user_data.png)
选择服务器到处的四个文件和输入对应的数据迁移密钥,点击提交后即可将其他服务器的数据导入到新的服务器。
::: tip 参考
1. 可以使用命令行参数`--disable-imports`或环境变量`DISABLE_IMPORTS`禁止服务器导入数据。
2. 数据迁移密钥的获取可以参考[XX](https://example.com)。
:::
### 帮助页面
帮助页面如下图所示:
![帮助页面](../image/webui_help.jpeg)
帮助页面包括服务器的相关介绍和应用的下载和相关配置。
::: tip 参考
1. 使用命令行参数`--global-android <GLOBAL_ANDROID>``--japan-android <JAPAN_ANDROID>``--global-ios <GLOBAL_IOS>``--japan-ios <JAPAN_IOS>`或环境变量`ANDROID_GLOABL``ANDROID_JAPAN``IOS_GLOBAL``IOS_JAPAN`设置帮助界面中的应用下载地址。
2. 使用命令行参数`--assets-url <ASSETS_URL>`或环境变量`ASSET_URL`设置帮助页面中显示的“Assets URL”。
![帮助页面注意事项](../image/webui_help_info.png)
3. 如何获取预打补丁的apk安装包和ios安装包请参考[XX](https://example.com)
:::

View File

@ -0,0 +1 @@
# 游戏资源服务器配置

View File

@ -0,0 +1,40 @@
# Docker
Docker镜像中继承了ew服务器因此无需额外安装ew服务器。
::: tip 注意
Docker 是一个开源的平台用于开发、交付和运行应用程序。在使用Docker部署时以假定使用者已经掌握如何运维一台服务器同时对容器化的概念和Docker的基础操作有一定了解。否则请使用其他更加简单的部署方式。
:::
:::tip 注意
本节并未提及如何配置游戏资源服务器,如需配置资源服务器请参考[XX](https://example.com)。
:::
## 获取镜像
```
docker pull zhushenwudi/lovelive-sif2:1.0.1
```
## 运行ew服务器
::: tip 注意
1. ew服务器的游戏端口默认为`8080`,资源服务器端口默认为`8000`
2. ew服务器的数据存储位置默认为`/data`,本地路径默认为`./data`
3. ew服务器的游戏资源存储位置默认为`/asset`,本地路径默认为`./asset`
:::
使用docker运行ew服务器以下是一个典型的示例
```
docker run -d \
--name sif2 \
-p 8080:8080 \
-p 8000:8000 \
-v ./data:/data \
-v ./asset:/asset \
zhushenwudi/lovelive-sif2:1.0.1
```
查看状态:
```
docker container stats sif2
```
::: tip 参考
docker的环境变量请参考[环境变量和命令行参数](../variable-argument.md)
:::

View File

@ -0,0 +1,74 @@
# Linux
本节介绍如何在Linux上安装ew。
:::tip 注意
本节并未提及如何配置游戏资源服务器,如需配置资源服务器请参考[XX](https://example.com)。
:::
## 方式一:使用二进制程序
### 下载二进制程序
从[XX](https://example.com)下载适用于Linux的二进制文件。
### 运行ew
在当前目录下使用命令行,以下是一个典型的运行示例:
```
./ew --port 8080 --path ./data/ --max_time 1736076211
```
::: tip 注意
具体的命令行参数可以在[环境变量和命令行参数](../variable-argument.md)或者使用
```
./ew --help
```
查看。
:::
## 方式二:从源代码编译
### 下载源代码
从[XX](https://example.com)下载或git克隆源代码。
### 编译源代码
#### 构建说明
1. 安装以下依赖
- [Perl](https://www.perl.org/)
- [Rust](https://www.rust-lang.org/)
- [Node.js](https://nodejs.org/)
- libssl-dev
:::tip 注意
在Ubuntu发行版中安装 **Perl****libssl-dev** 可以使用以下命令安装:
```
apt install -y perl libssl-dev
```
其他的Linux发行版请参照其包管理说明或者自行编译安装。
:::
1. 构建WebUI
```
cd webui
npm install
npm run build
```
1. 构建ew服务器
- Debug模式
```
cargo build
```
- Release模式
```
cargo build --release
```
构建完成的二进制文件`ew`在源代码根目录下的`target/debug``target/release`中。可以将其移动到你想存储的位置。
### 运行ew
在当前目录下使用命令行,以下是一个典型的运行示例:
```
./ew --port 8080 --path ./data/ --max_time 1736076211
```
::: tip 注意
具体的命令行参数可以在[环境变量和命令行参数](../variable-argument.md)或者使用
```
./ew --help
```
查看。
:::

View File

@ -0,0 +1,66 @@
# Windows
本节介绍如何在Windows上安装ew。
:::tip 注意
本节并未提及如何配置游戏资源服务器,如需配置资源服务器请参考[XX](https://example.com)。
:::
## 方式一:使用二进制程序
### 下载二进制程序
从[XX](https://example.com)下载适用于Windows的二进制文件。
### 运行ew
在当前目录下打开CMD或者PowerShell以下是一个典型的运行示例
```
ew.exe --port 8080 --path ./data/ --max_time 1736076211
```
::: tip 注意
具体的命令行参数可以在[环境变量和命令行参数](https://example.com)或者使用
```
ew.exe --help
```
查看。
:::
## 方式二:从源代码编译
### 下载源代码
从[XX](https://example.com)下载或git克隆源代码。
### 编译源代码
#### 构建说明
1. 安装以下依赖
- [Perl (StrawberryPerl)](https://strawberryperl.com/)
- [Rust](https://www.rust-lang.org/)
- [Node.js](https://nodejs.org/)
1. 构建WebUI
```
cd webui
npm install
npm run build
```
1. 构建ew服务器
- Debug模式
```
cargo build
```
- Release模式
```
cargo build --release
```
构建完成的二进制文件`ew.exe`在源代码根目录下的`target/debug``target/release`中。可以将其移动到你想存储的位置。
### 运行ew
在当前目录下打开CMD或者PowerShell以下是一个典型的运行示例
```
ew.exe --port 8080 --path ./data/ --max_time 1736076211
```
::: tip 注意
具体的命令行参数可以在[环境变量和命令行参数](../variable-argument.md)或者使用
```
ew.exe --help
```
查看。
:::

View File

@ -0,0 +1,16 @@
# 介绍
本用户文档对如何搭建和使用 **Love Live! 学园偶像祭2 MIRACLE LIVE!** 的服务器,以及对如何使用其客户端进行说明。
你可以通过本节对该用户文档的内容进行快速浏览。
## 起步
本章对服务器的下载和安装进行介绍。
### 下载和安装
该节介绍了如何在Windows、Linux以及Docker中安装和运行ew服务器。
## 使用说明
这一章对服务器和客户端的详细使用进行了介绍,大部分遇到的问题都可以在本章中获得解答。

View File

@ -0,0 +1,18 @@
# 获取和安装预打补丁的游戏安装包
## iOS
得益于Discord的Triangle你只需下载对应的ipa文件即可。然后将该ipa文件侧载安装手机上即可。
- [国际服](https://arasfon.ru/direct/lovelive/sif2/patched-clients/ios/sif2_gl.ipa)
- [日服](https://arasfon.ru/direct/lovelive/sif2/patched-clients/ios/sif2_jp.ipa)
## Android
获取Android的预打补丁的游戏安装包较为麻烦下面将详细介绍如何获取游戏安装包。
### 获取原版游戏安装包
你需要先获取原版的游戏安装包,你可以从下面的链接中获取原版的游戏安装包。
- [国际服](https://example.com)
- [日服](https://example.com)
### 给原版安装包打补丁

View File

@ -0,0 +1,92 @@
# 环境变量和命令行参数
## 介绍
### Docker环境变量
`HTTPS`是否开启https默认: false
`ENABLE_ASSET_SERVER`:是否开启资源服务器。
`NPPS4_ADDRESS`Sif NPPS4服务器地址默认: “127.0.0.1:51376”
`MAXTIME`:服务器默认时间(默认: 1736076211该时间最大不可超过官方停服时间
`HIDDEN`隐藏WeiUI默认: false
`DISABLE_IMPORTS`禁止导入账户默认false
`DISABLE_EXPORTS`禁止导出账户默认false
`ANDROID_JAPAN`帮助页面显示链接到该服务器的日服android应用下载地址。
`ANDROID_GLOABL`帮助页面显示链接到该服务器的国际服android应用下载地址。
`IOS_JAPAN`帮助页面显示链接到该服务器的的日服ios应用下载地址。
`IOS_GLOBAL`帮助页面显示链接到该服务器的国际服ios应用下载地址。
`ASSET_URL`:帮助页面显示的游戏资源下载地址。
### 命令行参数
::: tip 注意
本节所列的变量有可能已经过时,可以通过`ew --help`查看所支持的参数,环境变量与之对应。
:::
`--port <PORT>`: 服务器监听端口(默认: 8080)
`--asset-port <ASSET_PORT>`: 资源服务器监听端口(默认: 8000)
`--path <PATH>`: 数据库存放位置(默认: "./data/")
`--asset-path <ASSET_PATH>`: 游戏资源存放位置(默认: "./asset/")
`--enable-asset-server`: 开启资源服务器。
`--https`: 开启https。
`--npps4 <NPPS4>`: Sif NPPS4服务器地址用于sif的账户连接(默认:"127.0.0.1:51376")
`--global-android <GLOBAL_ANDROID>`: 帮助页面显示链接到该服务器的国际服android应用下载地址。
`--japan-android <JAPAN_ANDROID>`: 帮助页面显示链接到该服务器的日服android应用下载地址。
`--global-ios <GLOBAL_IOS>`: 帮助页面显示链接到该服务器的国际服ios应用下载地址。
`--japan-ios <JAPAN_IOS>`: 帮助页面显示链接到该服务器的的日服ios应用下载地址。
`--assets-url <ASSETS_URL>`: 帮助页面显示的游戏资源下载地址。
`--max-time <MAX_TIME>`: 服务器默认的初始时间,以时间戳形式返回。(该时间最大不可超过官方停服时间)
`--hidden`: 隐藏Web界面。
`--purge`: 在启动服务器时,清理死亡账户。(死亡账户为账户中无任何卡片)
`--disable-imports`: 禁止账户导入功能。
`--disable-exports`: 禁止账户导出功能。
`--en-ios-asset-hash <EN_IOS_ASSET_HASH>`: 国际服ios客户端资源的hash。
`--jp-ios-asset-hash <JP_IOS_ASSET_HASH>`: 日服ios客户端资源的hash。
`--en-android-asset-hash <EN_ANDROID_ASSET_HASH>`: 国际服android客户端资源的hash。
`--jp-android-asset-hash <JP_ANDROID_ASSET_HASH>`: 日服android客户端资源的hash。
## 如何设置
### Docker
使用`-e`指定环境变量下例为设置服务器默认时间为1736076200:
```
docker run -d \
--name sif2 \
-p 8080:8080 \
-p 8000:8000 \
-e MAXTIME=1736076200 \
-v ./data:/data \
-v ./asset:/asset \
zhushenwudi/lovelive-sif2:1.0.1
```