互动小说播放器 — 基于 Ink 的多平台故事引擎
Project description
ErisPulse-CYOA
CYOA(Choose Your Own Adventure,选择你自己的旅途)— 基于 inkpython 的多平台 Ink 互动小说播放器。
特性
- Ink 原生格式 — 用 Ink 编写,Inky/inklecate 编译
- 跨平台按钮 — Telegram / 云湖 / QQBot 按钮 +
event.choose()回退 - 仓库分发 — 添加 Git 仓库自动获取故事
- 独立存档 — 每用户每故事多槽位
- 图片支持 —
# image:标签
安装
epsdk install CYOA
Docker 部署
docker compose(推荐)
# 复制配置模板
cp -r config/ ./docker-config/
# 编辑配置(填写适配器 token 等)
# vim docker-config/config.toml
# 设置 Dashboard Token(可选)
export ERISPULSE_DASHBOARD_TOKEN=your-token
# 启动
docker compose up -d
docker run
docker run -d \
--name cyoa-bot \
-p 8000:8000 \
-v $(pwd)/config:/app/config \
-e TZ=Asia/Shanghai \
-e ERISPULSE_DASHBOARD_TOKEN=your-token \
--restart unless-stopped \
ghcr.io/erispulse/erispulse-cyoa:latest
命令
/cyoa 帮助
/cyoa list 故事列表
/cyoa play <ID> 开始
/cyoa import <URL> 导入 .ink.json
/cyoa save|load|restart|quit 游戏管理
/cyoa repo list|add|remove|update 仓库管理
快速开始
导入编译好的 .ink.json 直接玩:
/cyoa import https://example.com/my_story.ink.json
/cyoa play my_story
或添加小说仓库,一次更新就能获取全部故事:
/cyoa repo add <名称> https://raw.githubusercontent.com/<用户>/<仓库>/main
/cyoa repo update
/cyoa list
/cyoa play <故事ID>
推荐仓库
我们维护的官方故事合集:
/cyoa repo add official https://raw.githubusercontent.com/wsu2059q/cyoa-stories/main
贡献请 Fork cyoa-stories。
编写故事
用 Inky 编写 .ink 文件,导出为 .ink.json 后导入。
详见 FORMAT.md。
平台兼容
| 平台 | 交互 |
|---|---|
| Telegram | Inline Keyboard |
| 云湖 | Buttons (actionType=3) |
| QQBot | Keyboard |
| 其他 | event.choose() |
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file erispulse_cyoa-1.0.0.tar.gz.
File metadata
- Download URL: erispulse_cyoa-1.0.0.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47f32bf77243b1c0a6ca465cdfefc087a1f25079b3b0a343e103ed30f3436dde
|
|
| MD5 |
7de2dd7c06a9f24c4ecf82e6bbdd68ca
|
|
| BLAKE2b-256 |
5c8ec75e34e40012ce1bf64efe002e59e7125d66266c75e74eee9cf5b843c1b0
|
Provenance
The following attestation bundles were made for erispulse_cyoa-1.0.0.tar.gz:
Publisher:
python-publish.yml on wsu2059q/ErisPulse-CYOA
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erispulse_cyoa-1.0.0.tar.gz -
Subject digest:
47f32bf77243b1c0a6ca465cdfefc087a1f25079b3b0a343e103ed30f3436dde - Sigstore transparency entry: 1674941091
- Sigstore integration time:
-
Permalink:
wsu2059q/ErisPulse-CYOA@273ffde1164966fb10d84b2788748ad0b8076841 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/wsu2059q
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@273ffde1164966fb10d84b2788748ad0b8076841 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file erispulse_cyoa-1.0.0-py3-none-any.whl.
File metadata
- Download URL: erispulse_cyoa-1.0.0-py3-none-any.whl
- Upload date:
- Size: 14.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e918c09ce1d2154440a24c934f7cd1c2e469c49d731000c26f7718600f41da5
|
|
| MD5 |
996aa137f236c561a4c6be8c3b8c9f6a
|
|
| BLAKE2b-256 |
d8f254f988027b2bc1ad81afc5274ca2b6dc8ad937544c0c5ca885963657a141
|
Provenance
The following attestation bundles were made for erispulse_cyoa-1.0.0-py3-none-any.whl:
Publisher:
python-publish.yml on wsu2059q/ErisPulse-CYOA
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erispulse_cyoa-1.0.0-py3-none-any.whl -
Subject digest:
3e918c09ce1d2154440a24c934f7cd1c2e469c49d731000c26f7718600f41da5 - Sigstore transparency entry: 1674941145
- Sigstore integration time:
-
Permalink:
wsu2059q/ErisPulse-CYOA@273ffde1164966fb10d84b2788748ad0b8076841 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/wsu2059q
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@273ffde1164966fb10d84b2788748ad0b8076841 -
Trigger Event:
workflow_dispatch
-
Statement type: