{"id":17382192,"url":"https://github.com/mycard/srvpro","last_synced_at":"2025-05-16T17:09:10.818Z","repository":{"id":10359672,"uuid":"12499350","full_name":"mycard/srvpro","owner":"mycard","description":"A server for YGOPro","archived":false,"fork":false,"pushed_at":"2025-03-30T13:12:21.000Z","size":4124,"stargazers_count":190,"open_issues_count":29,"forks_count":78,"subscribers_count":41,"default_branch":"master","last_synced_at":"2025-04-12T16:52:48.166Z","etag":null,"topics":["coffeescript","windbot","ygopro","ygopro-server"],"latest_commit_sha":null,"homepage":"","language":"CoffeeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mycard.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2013-08-31T02:16:24.000Z","updated_at":"2025-03-30T13:12:25.000Z","dependencies_parsed_at":"2024-05-21T02:38:43.774Z","dependency_job_id":"ff5862ed-87a0-4f70-afdb-6407f57c02d0","html_url":"https://github.com/mycard/srvpro","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mycard%2Fsrvpro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mycard%2Fsrvpro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mycard%2Fsrvpro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mycard%2Fsrvpro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mycard","download_url":"https://codeload.github.com/mycard/srvpro/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254573589,"owners_count":22093731,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coffeescript","windbot","ygopro","ygopro-server"],"created_at":"2024-10-16T07:35:46.291Z","updated_at":"2025-05-16T17:09:10.737Z","avatar_url":"https://github.com/mycard.png","language":"CoffeeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## SRVPro\n一个YGOPro服务器。\n\n现用于[萌卡](https://mycard.moe/)，[YGOPro 233服](https://ygo233.com/)和[YGOPro Koishi服](http://koishi.222diy.gdn/)。\n\n### 支持功能\n* Linux上运行\n* Windows上运行\n* 玩家输入同一房名约战\n* 玩家不指定房间名，自动匹配在线玩家\n* 房间列表json\n* 广播消息\n* 召唤台词\n* 先行卡一键更新\n* WindBot在线AI\n* 萌卡用户登陆\n* 竞赛模式锁定玩家卡组\n* 竞赛模式后台保存录像\n* 竞赛模式自动加时赛系统（规则可调）\n  * 0 正常加时赛规则\n  * 1 YGOCore战队联盟第十二届联赛使用规则\n  * 2 正常加时赛规则 + 1胜规则\n  * 3 2018年7月适用的OCG/TCG加时赛规则\n* 断线重连\n\n### 不支持功能\n* 在线聊天室\n\n### 使用方法\n* 可参考[wiki](https://github.com/moecube/srvpro/wiki)安装\n* 手动安装：\n  * `git clone https://github.com/moecube/srvpro.git`\n  * `cd srvpro`\n  * `npm install`\n  * 安装修改后的YGOPro服务端：https://github.com/moecube/ygopro/tree/server\n* `node ygopro-server.js`即可运行\n* 简易的控制台在 http://srvpro.ygo233.com/dashboard.html 或 http://srvpro-cn.ygo233.com/dashboard.html\n* 使用本项目的Docker镜像: https://hub.docker.com/r/mycard/ygopro-server/\n\n  * 镜像标签\n    * `mycard/ygopro-server:latest`: 完整镜像\n    * `mycard/ygopro-server:lite`: 基本镜像，云录像和人机对战功能需要配合`redis`和`nanahira/windbot`这两个镜像使用。\n\n  * 端口\n    * `7911`: YGOPro端口\n    * `7922`: 管理后台端口\n\n  * 数据卷\n    * `/ygopro-server/config`: SRVPro配置文件数据卷\n    * `/ygopro-server/ygopro/expansions`: YGOPro额外卡片数据卷\n    * `/ygopro-server/decks`: 竞赛模式卡组数据卷\n    * `/ygopro-server/replays`: 竞赛模式录像数据卷\n\n  * 若使用竞赛模式启动服务器，建议把启动命令修改为`pm2-docker start /ygopro-server/data/pm2-docker-tournament.js`。\n\n### 高级功能\n* 待补充说明\n* 简易的先行卡更新控制台在 http://srvpro.ygo233.com/pre-dashboard.html 或 http://srvpro-cn.ygo233.com/pre-dashboard.html\n\n### 开发计划\n* 重做CTOS和STOC部分\n* 模块化附加功能\n  * 房名代码\n  * 随机对战\n  * 召唤台词\n  * WindBot\n  * 云录像\n  * 比赛模式\n  * 先行卡更新\n* 用户账号系统和管理员账号系统\n* 云录像更换存储方式\n\n### TODO\n* refactoring CTOS and STOC\n* change features to modules\n  * room name parsing\n  * random duel\n  * summon dialogues\n  * WindBot\n  * cloud replay\n  * tournament mode\n  * expansions updater\n* user and admin account system\n* new database for cloud replay\n\n### License\nSRVPro\n\nCopyright (C) 2013-2018  MoeCube Team\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU Affero General Public License as\npublished by the Free Software Foundation, either version 3 of the\nLicense, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU Affero General Public License for more details.\n\nYou should have received a copy of the GNU Affero General Public License\nalong with this program.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmycard%2Fsrvpro","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmycard%2Fsrvpro","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmycard%2Fsrvpro/lists"}