一个微型的 Arcaea 本地服务器 A small local server for Arcaea
这是基于 Python 以及 Flask 的微型本地 Arcaea 服务器,可以模拟游戏的主要功能。这可能是我第一次写这种大程序,若有不妥之处,敬请谅解。
本程序主要用于学习研究,不得用于任何商业行为,否则后果自负,这不是强制要求,只是一个提醒与警告。
This is a small local Arcaea server based on Python and Flask, which can simulate the main functions of the game. This may be the first time I have written such a large program. Please understand if there is something wrong with it.
This procedure is mainly used for study and research, and shall not be used for any commercial activities, otherwise the consequences will be borne by oneself. This is not a mandatory requirement, just a reminder and warning.
虽然看起来很蠢,但是可以用! It looks stupid, but it works!
❌ : 不支持 Not supported
🗑️ : 不再更新,可能会移除或重构 No longer updated, may be removed or refactored
🚧 : 建设中 In construction
- 登录、注册 Login and registration
- 多设备自动封号 Auto-ban of multiple devices
⚠️ 多设备登录 Multi device login- 登录频次限制 Login rate limit
- 注册频次限制 Register rate limit
⚠️ 销号 Destroy account
- 成绩上传 Score upload
- 成绩校验 Score check
- 成绩排名 Score rank
- 潜力值机制 Potential
- Best 30
⚠️ Recent Top 10
- 世界排名 Global rank
- 段位系统 Course system
⚠️ Link Play 2.0- 好友系统 Friends
- ❌ 好友位提升 Max friend number increase
- 云端存档 Cloud save
- 尝试全剧情、曲目解锁 Try to unlock all the stories and songs
- 世界模式 World mode
- 体力系统 Stamina system
⚠️ 普通梯子强化和绳子强化 Normal steps boost & beyond boost⚠️ 角色技能 Character skills
- 歌曲下载 Songs downloading
- ❌ 加密下载 Encrypted downloading
- 下载校验 Download check
- 下载频次限制 Download rate limit
- 内容捆绑包热更新 Content bundle hot update
- 购买系统 Purchase system
- 单曲和曲包 Single & Pack
- ❌ 捆绑包 Pack bundle
- 折扣 Discount
- 五周年兑换券 5-th anniversary ticket
- 单曲兑换券 Pick ticket
- ❌ Extend 包自动降价 Extend pack automatic price reduction
- 奖励系统 Present system
- 兑换码系统 Redeem code system
- 新手任务 Missions
- 角色系统 Character system
- 数据记录 Data recording
- 用户成绩 Users' scores
- 用户每日潜力值 Users' daily potential
- 🗑️ 简单的网页管理后台 Simple web admin backend
- 🚧 API
- 服务器日志 Server log
只是很有趣,用处探索中。
It is just so interesting. What it can do is under exploration.
只保留最新版本 Only keep the latest version.
提醒:更新时请注意保留原先的数据库,以防数据丢失。
Tips: When updating, please keep the original database in case of data loss.其它小改动请参考各个 commit 信息。
Please refer to the commit messages for other minor changes.
v2.11.3.1 ~ v2.11.3.20 for Arcaea 5.2.0 ~ 5.10.4
Here are not some bug fixes.
注意:Link Play 2.0 无法兼容旧版本客户端。 Note: Link Play 2.0 is not compatible with older client versions.
- 适用于 Arcaea 5.10.4 版本 For Arcaea 5.10.4
- 添加一些新搭档和搭档的觉醒形态,并支持他们的技能 Add some new partners, uncap some others, and add support for their skills.
- 支持 Link Play 2.0 的几乎所有功能 Add almost whole support for Link Play 2.0.
- 支持新谱面难度 ETR Adapt to the new difficulty ETR.
- 支持内容捆绑包(热更新),包含两种更新模式 Add support for content bundles (hot update), including two update modes.
- 支持新手任务系统 Add support for missions.
- 更新 Recent 30 机制,修改其表结构 Update Recent 30 mechanism. Alter Recent 30 table structure.
- PTT 机制更新:添加了推分保护 PTT mechanism: Change first play protection to new best protection.
- 调整世界排名机制使其更接近于官服 Adjust world rank mechanism to be closer to the official one.
- 重构世界模式,并调整了一些搭档的技能效果和进度计算逻辑 Code refactor for World Mode, and adjust some skills and the logic of progress calculation.
- 支持世界模式的陷落梯子 Add support for Breached World Map.
- 添加了一个陷落梯子例子(#148) Add an example breached map. (#148)
- 变更残片购买体力的恢复时间为 23 小时 Change the recover time of using fragments buying stamina to 23 hours.
- 支持设置多个可使用的和旧的游戏 API 前缀,其中旧的前缀会通知用户更新客户端 Add some endpoints for old API prefixes to notify users to update the client; add support for multiple game prefixes.
- 支持用户自销毁账号(默认不开启) Add support for users destroy their own accounts. (default unable)
- 添加对“单曲兑换券”的不完整支持 Incomplete support for "pick_ticket".
- 世界模式地图文件夹中可以包含子文件夹了 Make the world maps' folder can have sub folders.
- 支持后台和 API 刷新 Recent 30 的定数评分 Add support for refreshing ratings of Recent 30 via API and webpage.
- 添加对 IP 及设备的用户注册频率限制 Add the IP and the device rate limiters for user register.
- 修复当用户再次通过已经通过的段位时无法正常上传分数的问题(by Guzi422) Fix the bug that the player cannot upload the score when completing a course again. (by Guzi422)
- 修复段位模式最高分在用户未完整完成挑战时不更新的逻辑问题 Fix a logical bug that the course's high score will not update if the user does not complete the whole course challenge.
- 修复 Link Play 相关 API 接口报错的问题 Fix a bug that API for Link Play cannot work.
- 修复依赖问题:cryptography >= 35.0.0 Fix requirements: cryptography >= 35.0.0
- 修复
songlist
解析问题(#156) Fix asonglist
parser problem. (#156) - 修复技能 skill_amane 在世界地图台阶类型为空时报错的问题 Fix a bug that "skill_amane" may arise error when the step type of world map is null.
- 支持自动添加搭档“光 & 对立 (Reunion)”和“光 (Fatalis)”,以尝试解决最终章的解锁问题(#110 #164) Add support for automatically adding partner "Hikari & Tairitsu (Reunion)" and "Hikari (Fatalis)", to try to unlock Finale stories correctly. (#110 #164)
- 修复
songlist
文件存在时视频文件无法下载的问题(#177) Fix a bug that the video files cannot be downloaded when thesonglist
file exists. (#177) - 修复 Link Play 中玩家全部返回房间后上一首曲子成绩消失的问题 Fix a bug that the last song's scores will disappear when all players return to room in Link Play.
- 工具
update_song.py
支持 ETR 难度 Add support for ETR difficulties in theupdate_song.py
tool. - 添加发送错误信息的小工具测试服务端 Add a small tool test server to send error message.
- Windows / Linux / Mac OS / Android...
- Python >= 3.6
- Flask >= 2.0
- Cryptography >= 35.0.0
- limits >= 2.7.0
- Charles, IDA, proxy app... (optional)
Arcaea-Server-Wiki : 项目文档 Project documentation
Arcaea-Bundler : 用于生成和解包内容捆绑包 Used to pack or unpack content bundles
Arcaea-Server-Frontend : In building
歌曲数据库来自 Using song database from
BotArcAPI releases
ArcaeaSongDatabase
ArcaeaSongDatabase Fork
从v2.9开始不再提供歌曲数据
Since v2.9, song data will not be provided.
网站图标来自 Using favicon from black fate - てんてん - pixiv
如有必要,可以联系本人 Contact me if necessary
邮箱 Email:arcaea@lost-msth.cn
生活不易。 Life is not easy.
支付宝 Alipay
微信 WeChat
MIT © Lost