5 个版本
0.1.6 | 2024年6月15日 |
---|---|
0.1.4 | 2023年10月28日 |
0.1.3 | 2023年8月27日 |
0.1.1 | 2023年5月26日 |
0.1.0 | 2023年5月21日 |
#101 in WebSocket
每月 234 次下载
78KB
1.5K SLoC
dcss-api
dcss-api
是一个易于使用的 Rust 和 Python 包装器,用于 Dungeon Crawl Stone Soup (DCSS) 的 Webtile WebSocket API。它支持登录、开始游戏和在游戏过程中发送命令。
文档
dcss-api
的文档可以在 此处 找到。最好的开始方式是查看 此处 的 Rust 示例和 此处 的 Python 示例。请参阅 设置 以运行这些示例。
有关 DCSS WebSocket API 的深入文档也可以在 此处 找到(尚未完成)。
设置
构建 DCSS Webtile
API 适用于 DCSS Webtiles 的本地和公共版本。要在公共服务器上运行,您必须将连接限制为每 100 毫秒最多一个命令(即每秒 10 个命令),通过在连接时将 speed_ms
选项设置为 100
来实现。遵循服务器所有者要求的任何其他规则。
因此,建议您在 DCSS Webtile 的本地版本上运行 API。您可以在 DCSS Webtiles 服务器页面 上找到安装信息。
安装摘要(安装所有先决条件之后)
git clone "https://github.com/crawl/crawl.git"
cd crawl/crawl-ref/source/
git checkout stone_soup-0.29
make WEBTILES=y
python webserver/server.py
请注意,此 API 已经过验证,可与 DCSS 的版本 0.29、版本 0.30 和版本 0.31 一起使用。
构建 Python
dcss-api
的 Python 包是 Rust 包的 PyO3 Python 包装器。可以使用以下命令进行构建
mkdir pyo3
python -m venv pyo3
source pyo3/bin/activate
pip install maturin patchelf
maturin develop -r
测试
为了运行 cargo test
或 pytest
,必须将本地 DCSS Webtile 的 stone_soup-0.29
、stone_soup-0.30
或 stone_soup-0.31
分支暴露在 localhost:8080
上,并且必须创建两个用户:Username
和 Username2
,密码都设置为 Password
。
依赖项
~6–17MB
~244K SLoC