diff --git a/CAPI/Tool_tutorial.md b/CAPI/Tool_tutorial.md index 8e57020..bb39027 100644 --- a/CAPI/Tool_tutorial.md +++ b/CAPI/Tool_tutorial.md @@ -2,15 +2,57 @@ [toc] +## Windows接口使用 + +### C++接口使用说明 + +* 首先把`lib`文件夹复制到`.\win\CAPI\cpp\`文件夹下 +* 然后在`CAPI\cpp\API\src\AI.cpp`中编写代码 +* 然后用Visual Studio打开`CAPI\cpp\CAPI.sln`编译,注意使用Debug模式 +* 最后使用`RunCpp.cmd`执行比赛代码 + +### Python接口使用说明 + +* 首先在Python环境下运行`GeneratePythonProto.cmd`,以安装必要的包、并生成对应的grpc python文件 +* 然后在`CAPI\python\PyAPI\AI.py`中编写代码 +* 最后通过运行`RunPython.cmd`执行比赛代码 + +## Linux接口使用 + +### C++使用说明 + +* 首先自行安装`gRPC`,具体方法可以参考官方教程https://grpc.io/docs/languages/cpp/quickstart/。 +* 然后在`CAPI\cpp\API\src\AI.cpp`中编写代码 +* 接下来用`cmake`,对`CAPI\cpp\CMakeLists.txt`进行编译 +* 最后使用`RunCpp.sh`执行比赛代码 + +### Python使用说明 + +* 首先在Python环境下运行`GeneratePythonProto.cmd`,以安装必要的包、并生成对应的grpc python文件 +* 然后在`CAPI\python\PyAPI\AI.py`中编写代码 +* 最后通过运行`RunPython.cmd`执行比赛代码 + ## Visual Studio使用说明 -选手开始编写代码之前,要先编译好服务器(logic)。具体方法是进入logic文件夹,分别编译`logic.sln`和client文件夹里的`client.sln`,然后就可以开始编写自己的代码。需要注意,选手需要分别在Debug和Release模式下编译,然后才可以分别运行`gameServer_dbg.cmd`和`gameServer_rls.cmd` +比赛**只保证!!!支持**VS2022,选手使用其他版本后果自负。 + +### 生成模式的设置 + +菜单栏下方一行 + +![image-20230416010705076](src/image-20230416010705076.png) + +可以更改生成模式为`Debug`或`Release` + +### 命令行参数的设置 + +左上方菜单栏 `调试->调试属性` -## Python使用说明 +![image-20230416010816392](src/image-20230416010816392.png) -选手编写Python代码之前需要安装必要的Python包,具体方法为:Windows下运行(需要在有Python环境的情况下运行)`generate_proto.cmd`,Linux下运行`generate_proto.sh`,然后可以开始进行代码编写。 +在命令参数一栏中加入命令行参数进行调试 -## cmd脚本的参数修改 +### cmd脚本的参数修改 右键点击`.cmd`或`.bat`文件之后,选择编辑就可以开始修改文件。通过在一行的开头加上`::`,可以注释掉该行。 diff --git a/CAPI/src/image-20230416010705076.png b/CAPI/src/image-20230416010705076.png new file mode 100644 index 0000000..62208f8 Binary files /dev/null and b/CAPI/src/image-20230416010705076.png differ diff --git a/CAPI/src/image-20230416010816392.png b/CAPI/src/image-20230416010816392.png new file mode 100644 index 0000000..6b59542 Binary files /dev/null and b/CAPI/src/image-20230416010816392.png differ diff --git a/使用文档.md b/使用文档.md index 45727a6..6ab2ce3 100644 --- a/使用文档.md +++ b/使用文档.md @@ -8,18 +8,18 @@ Windows选手使用脚本位于Win文件夹下,Linux选手使用脚本位于Linux文件夹下。 -对于c++选手,在 AI.cpp 里写代码,AI::play 函数是代码的编写入口,启动游戏前要进行编译 +对于c++选手,在 AI.cpp 里写代码,AI::play 函数是代码的编写入口,启动游戏前要在`CAPI.sln`中进行编译 对于python选手,在AI.py里写代码,启动游戏前要进行编译 -## 游戏启动方式(For Debug) +## 游戏基本启动方式(For Debug) 1. 首先启动Server:`RunServerForDebug.cmd` 2. 再启动Client:Python使用`RunPython.cmd`,C++使用`RunCpp.cmd` -## 实机体验游戏(ServerForPlay) +## 启动服务器(RunServer) -启动游戏:ServerForPlay.cmd,其内部参数可自主设定,设定方式:右键-编辑 +启动服务器:`RunServer.cmd`,其内部参数可自主设定,设定方式:右键-打开更多选项-编辑 Server脚本中参数格式一般如下: @@ -50,7 +50,9 @@ Server脚本中参数格式一般如下: `--fileName`为回放文件的保存名称 -此外,Server中还可以默认打开一个/多个WPF客户端,一般格式如下: +## 启动WPF客户端(RunClient) + +通过`RunClient.cmd`,可以打开WPF客户端,其内部参数可自主设定,设定方式:右键-打开更多选项-编辑 ```shell --port 8888 --characterID 4 --type 2 --occupation 1 @@ -74,6 +76,16 @@ Server脚本中参数格式一般如下: `--occupation`为职业选择,参考下表 +### 观看回放文件 + +通过WPF客户端,还可以观看比赛回放。在`RunClient.cmd`中,将参数改为 + +```shell +start cmd /k win64\Client.exe --cl --playbackFile .\video.thuaipb --playbackSpeed 2 +``` + +即可观看回放文件。其中`--playbackFile`后面的参数为回放文件的路径,`--playbackSpeed`后面的参数为回放速度,取值为1~10,1为正常速度,10为最快速度。 + ### 职业对应表: * 学生 @@ -118,12 +130,6 @@ Server脚本中参数格式一般如下: `-w`只在开启`-o`的情况下生效,此时屏幕上只输出警告或报错(而日志文件依然完整保存)。 -## WPF观看回放 - -使用`RunPlayback.cmd`,默认观看当前目录下的 video.thuaipb。 - -> 可以通过更改脚本中FileName参数,来观看不同的回放文件 - ## cmd脚本的参数修改 右键点击`.cmd`或`.bat`文件之后,选择编辑就可以开始修改文件。通过在一行的开头加上`::`,可以注释掉该行。 @@ -142,16 +148,16 @@ Server脚本中参数格式一般如下: * 道具对应表如下 - | 道具类型 | UI | - | ---------------------- | ---- | - | Key3 | 🔑3 | - | Key5 | 🔑5 | - | Key6 | 🔑6 | - | AddSpeed | ⛸ | - | AddLifeOrClairaudience | 🏅 | - | AddHpOrAp | ♥ | - | ShieldOrSpear: | 🛡 | - | RecoveryFromDizziness | 🕶 | + | 道具类型 | UI | + | ---------------------- | --- | + | Key3 | 🔑3 | + | Key5 | 🔑5 | + | Key6 | 🔑6 | + | AddSpeed | ⛸ | + | AddLifeOrClairaudience | 🏅 | + | AddHpOrAp | ♥ | + | ShieldOrSpear: | 🛡 | + | RecoveryFromDizziness | 🕶 | * UI:左侧为UI,表示游戏内各类信息