MingxuanGame
|
f992e4cc71
|
feat(chat): support public channel chat
|
2025-08-16 05:29:16 +00:00 |
|
chenjintang-shrimp
|
9a5c2fde08
|
revert(detetor): revert changes from 8204634
|
2025-08-15 13:29:44 +00:00 |
|
chenjintang-shrimp
|
8733abb51e
|
Merge branch 'main' of https://github.com/GooGuTeam/osu_lazer_api
|
2025-08-15 13:20:26 +00:00 |
|
chenjintang-shrimp
|
8204634a4e
|
feat(detector): 支持自定义黑名单
|
2025-08-15 13:20:19 +00:00 |
|
chenjintang-shrimp
|
aed32824e8
|
fix(private-api): previous usernames can now be displayed correctlly
|
2025-08-15 13:19:28 +00:00 |
|
MingxuanGame
|
ceb4708e71
|
fix(score): acc multiply 100
|
2025-08-15 13:14:53 +00:00 |
|
chenjintang-shrimp
|
885d7bafcc
|
Merge branch 'main' of https://github.com/GooGuTeam/osu_lazer_api
|
2025-08-15 12:44:00 +00:00 |
|
chenjintang-shrimp
|
b79b80a12c
|
feat(detector): 更改检测可疑谱面函数的判断逻辑
- 新增 Threshold 枚举类,定义各种异常阈值
- 实现 too_dense 函数,检测单位时间内的物件密度是否异常
- 实现 slider_is_sus 函数,检查滑条是否存在异常
- 重构 is_suspicious_beatmap 函数,增加对不同游戏模式的检测逻辑
|
2025-08-15 12:42:49 +00:00 |
|
chenjintang-shrimp
|
e65e8b45d8
|
feat(calculator): 更改检测可疑谱面函数的判断逻辑
- 新增 Threshold 枚举类,定义各种异常阈值
- 实现 too_dense 函数,检测单位时间内的物件密度是否异常
- 实现 slider_is_sus 函数,检查滑条是否存在异常
- 重构 is_suspicious_beatmap 函数,增加对不同游戏模式的检测逻辑
|
2025-08-15 10:11:47 +00:00 |
|
MingxuanGame
|
5a295bd04a
|
chore(deps): bump deps version
|
2025-08-15 08:54:25 +00:00 |
|
MingxuanGame
|
814d9c4618
|
refactor(detector): more readable
|
2025-08-15 08:52:01 +00:00 |
|
chenjintang-shrimp
|
7c7c68c163
|
feat(detector): 新增封禁谱面表并检查可疑谱面
- 在数据库中添加了封禁谱面表(banned_beatmaps)
- 实现了检查可疑谱面的功能,将不符合规范的谱面添加到封禁列表
- 更新了相关的模型和迁移文件
|
2025-08-15 08:05:02 +00:00 |
|
MingxuanGame
|
d87839f86e
|
fix(ranking): fix missing user causing client crash
|
2025-08-15 06:34:35 +00:00 |
|
MingxuanGame
|
1251ba31a2
|
feat(score): support rx for taiko & catch
|
2025-08-15 05:59:21 +00:00 |
|
MingxuanGame
|
64ee8a73d5
|
fix(private-api): import cover
|
2025-08-14 15:22:32 +00:00 |
|
MingxuanGame
|
134f3335c5
|
feat(ranking): support country leaderboard
|
2025-08-14 14:55:51 +00:00 |
|
MingxuanGame
|
c38ab7fd6d
|
fix(ranking): wrong api endpoint
|
2025-08-14 14:44:51 +00:00 |
|
MingxuanGame
|
da71d7ce46
|
feat(ranking): add global leaderboard
|
2025-08-14 14:35:52 +00:00 |
|
MingxuanGame
|
155905f652
|
fix(event): trigger rank when submitting score
|
2025-08-14 14:11:52 +00:00 |
|
MingxuanGame
|
7fb7c094fd
|
feat(private-api): support upload cover
|
2025-08-14 13:55:06 +00:00 |
|
MingxuanGame
|
6c48c8ad97
|
fix(v1-api): fix access api with any api_key
|
2025-08-14 13:46:13 +00:00 |
|
MingxuanGame
|
2912e68c7b
|
fix(event): fix incorrect call settings.frontend_url
|
2025-08-14 13:36:29 +00:00 |
|
MingxuanGame
|
55c25bf96e
|
fix(v1-api): 500 when request with username
|
2025-08-14 13:14:49 +00:00 |
|
MingxuanGame
|
46a1d049fe
|
refactor(score): replace MODE_TO_INT INT_TO_MODE with int(mode) GameMode.from_int
|
2025-08-14 13:04:59 +00:00 |
|
MingxuanGame
|
a8906b8194
|
feat(v1-api): support api v1
|
2025-08-14 09:11:53 +00:00 |
|
MingxuanGame
|
c98ea9c723
|
chore(service): remove debug log
|
2025-08-14 07:48:28 +00:00 |
|
MingxuanGame
|
2c7c761a44
|
feat(score): add simple suspicious score check
TODO: use another lib to check the beatmap is whether suspicious or not
|
2025-08-14 07:44:13 +00:00 |
|
MingxuanGame
|
48b075d99d
|
feat(config): add ENABLE_ALL_BEATMAP_PP
|
2025-08-14 07:01:41 +00:00 |
|
MingxuanGame
|
ebbc0b8252
|
feat(score): allow to recalculate all score pp
|
2025-08-14 06:50:17 +00:00 |
|
MingxuanGame
|
c8b6c1fa0e
|
fix(signalr): fix catch exception
|
2025-08-14 05:58:38 +00:00 |
|
chenjintang-shrimp
|
c0ccdfa65b
|
feat(event): 添加排名丢失事件
- 在用户得分进入前50名或前1%时,检查是否有其他用户的排名被取代
- 如果有用户排名被取代,创建排名丢失事件
|
2025-08-13 17:36:19 +00:00 |
|
chenjintang-shrimp
|
3f31785428
|
feat(database): 添加全球排名事件触发逻辑
- 在 ScoreResp 类中添加逻辑,判断玩家是否进入全球前 50 或前 1% 排名
|
2025-08-13 17:17:39 +00:00 |
|
MingxuanGame
|
3f5b242c6f
|
fix(beatmap): make max_combo nullable
|
2025-08-13 15:39:24 +00:00 |
|
MingxuanGame
|
e180dcfbd6
|
fix(signalr): add exception handler (sentry-14,26,32,36)
|
2025-08-13 15:31:40 +00:00 |
|
MingxuanGame
|
858a7e8640
|
playlist_best_scores: remove foreign key to allow to remove items
|
2025-08-13 15:18:26 +00:00 |
|
MingxuanGame
|
2e44951533
|
fix(spectator): fix replay cannot play in stable & cannot spectate others when they are in gameplay
|
2025-08-13 15:16:06 +00:00 |
|
MingxuanGame
|
7817b7c59a
|
feat(oauth): support client credentials grant
|
2025-08-13 14:12:29 +00:00 |
|
MingxuanGame
|
7a6a548a65
|
fix(statistics): fix levels
|
2025-08-13 10:37:51 +00:00 |
|
MingxuanGame
|
46746f5b71
|
fix(score): don't show pp in profile
|
2025-08-13 09:04:06 +00:00 |
|
MingxuanGame
|
e95bbe9052
|
fix(log): only show color for uvicorn log (sentry-5,8,10,13)
|
2025-08-13 08:46:34 +00:00 |
|
MingxuanGame
|
50b8d9a914
|
fix(database): extend pools (sentry-11)
|
2025-08-13 08:43:37 +00:00 |
|
MingxuanGame
|
79368e7e84
|
fix(private-api): catch exception when opening image
|
2025-08-13 08:34:17 +00:00 |
|
MingxuanGame
|
f19aaa6233
|
fix(multiplayer): failed to add items
|
2025-08-13 08:19:39 +00:00 |
|
MingxuanGame
|
6526d3911a
|
fix(app): fix exception handler
|
2025-08-13 08:15:40 +00:00 |
|
MingxuanGame
|
cf3b9d155d
|
fix(multiplayer): fix Room is not ready for gameplay when gameplay started (sentry-4)
|
2025-08-13 08:05:18 +00:00 |
|
MingxuanGame
|
1458a96a8c
|
fix(private-api): fix wrong event url
|
2025-08-13 07:57:35 +00:00 |
|
MingxuanGame
|
4b5aefb946
|
feat(beatmapset): support search beatmapset
|
2025-08-13 07:55:48 +00:00 |
|
chenjintang-shrimp
|
50375c7b12
|
feat(event): 添加百次播放事件记录功能
- 在 beatmap_playcounts 模块中增加了事件记录功能
- 当用户播放次数达到百的倍数时,创建并记录 Event 对象
- 事件类型为 EventType.BEATMAP_PLAYCOUNT
|
2025-08-13 06:48:54 +00:00 |
|
chenjintang-shrimp
|
3de9f55109
|
fix(event): change hard-coded URL to variable
|
2025-08-13 06:28:38 +00:00 |
|
chenjintang-shrimp
|
a528078874
|
feat(event): add event record for username changing
|
2025-08-13 06:21:56 +00:00 |
|