From 56ae7047fc8c3758061c234269af1d542238c151 Mon Sep 17 00:00:00 2001 From: Lost-MSth Date: Mon, 2 Nov 2020 19:02:50 +0800 Subject: [PATCH] Update to v1.5 A small update. --- README.md | 23 ++++++------ latest version/database/arcaea_database.db | Bin 77824 -> 77824 bytes .../database/database_initialize.py | 15 ++++++-- latest version/database/songs/dement/3.aff | 1 + latest version/main.py | 9 +++++ latest version/server/arcscore.py | 34 ++++++++++++++++++ latest version/server/auth.py | 12 ------- 7 files changed, 69 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index e888609..4af9034 100644 --- a/README.md +++ b/README.md @@ -19,15 +19,16 @@ This is a small local Arcaea server based on Python and Flask, which can simulat - 自定义世界模式 Customizable World Mode - 自定义歌曲下载 Customizable songs download - 全角色立绘 All character drawings +- 角色技能 Character skills - 全剧情解锁 Unlock all the storys - 后台查分 Background search scores - 后台自定义歌曲定数 Customize chart consts in the background +- 成绩校验 Score check 没有以下 We don't have: -- 角色特性 Character characteristics +- 角色数值 Character characteristic value - 购买 Purchase - 歌曲解锁、曲包解锁 Songs unlocking and music packs unlocking -- 反作弊系统 Anti cheating system - 服务器安全性保证 Server security assurance 可能有问题 There may be problems: @@ -37,23 +38,23 @@ This is a small local Arcaea server based on Python and Flask, which can simulat 只是很有趣,用处探索中。 It is just so interesting. What it can do is under exploration. -不太会apk反编译,想破解songlists hash验证,有人教我吗( -I don't know APK decompilation very well. I want to crack the songlists hash verification. Help. ## 下载 Download [这里 Here](https://github.com/Lost-MSth/Arcaea-server/releases) +[Arcaea](https://konmai.cn/#arcaea) + ## 更新日志 Update log 只保留最新版本 Only keep the latest version. -### Version 1.4 -- 适用于Arcaea 3.2.2版本 For Arcaea 3.2.2 -- 更新了歌曲数据库 Update the song database. -- 新增自定义歌曲下载功能 Add the customizable song download function. -- 角色**咲弥**可以看到立绘了 The drawing of character **Etude** can be seen. -> 提醒:反编译只对c版本有效,对谷歌版本无效 +> 提醒:更新时请注意保留原先的数据库,以防数据丢失 +> +> Tips: When updating, please keep the original database in case of data loss. -> Tips: Decompilation is only valid for c version, not for Google version. +### Version 1.5 +- 仍然适用于Arcaea 3.2.2版本 Still for Arcaea 3.2.2 +- 新增了角色技能 Add character skills. +- 新增了分数校验系统 Add score check system. ## 运行环境与依赖 Running environment and requirements - Windows操作系统 Windows operating system diff --git a/latest version/database/arcaea_database.db b/latest version/database/arcaea_database.db index a1852a5269a729e4802e36724dd96663cf646c96..d39e9310478e063f8e41c038962822373688c582 100644 GIT binary patch delta 3399 zcma);OH3PA6oxYf#Ed=T@j!@q8VuOjNgQk_6iNaiB`*nYC+o-#))84t)_u5kuwM+2-pL6cH z=bmpiA2n}2YX16hKR2EkpPrtY9?#tVt6wTFa|3(C-^Fe59r2pDAjX4FfZ7intEjdJWBQ)-iS7#}uYFRO@nL(;uq}oBEHM6>*WQz(gWB@j+8WTunu2lu;Tb zLZav;V41d|%4?vaskywB?4xpYI@E<%9^g}iEgTkxz(cd-9(4e!%MI=km&L%(e-u_WdUdw%&eHzyl#(lQt1$FK_`*o zpxL~wsqrusqAF3$uvch;3YgnRbt^RBKB5EmnySmWtWqjlm1>onRGgZ?lXh?Q?X0RA3BO@0mG8V(;Mio zY7VHH{CqmmPK~Is=xFW4h|(BZP6icwx{WGN(iCk(S({SJ9UL7W%+fW*Eaw$N8Ih=! zG`f0yQzG7mK^+TGI!81M@TWYIzc<*2cUWBVQg1(4_Tl1c-K5(xUrNU+`1UY1$1x@!$@^mr`BZ zSO;oRMnOud1~&tos~L`(>wAgwno;}fxib@T*|g$i!<=HN`8dtY5_5wi4d-J5PCgv? zBC6Spw^D2UfwdAVEqcv4dm}QQX`x~`O|>`DOvDX?QER5E6`ZXbkwUDA`ry{@$5-eh zKDRzoF6efTFVw_gK0sM*)eu#T2{p0!M^q@JP8_GPP6z7yrAV-hn`Bbf8SoxUZUxDi^ZVTtK)s8is$;bVqcEW-V#cleY8?UDR}I@rG@#_Scc@n2dk0l zP_M-F)Q;_5HI(-*ou5ywuC99ZWlXC?kHmCfy?gsFyM~^#5KlynhsXui!ERa!+N)66 zeF_1JXmKSNTH{^xMq|!}?Y>URDTt{fof2~dXB~20-%iY9Cn8fK?5PNzfeo)f5_yxj zY+BqWF-aU{#rbVJqIz)jbQ(={(C8`mrNKjVT!6G8(Vxwu!+RyB4`-Wq2JUs@f$}1# zMxbOn9S+F+!f%!Mc|+BRX%~$;3vwMt6OzQF zNJHPeHxO>v8M7hUrfKKfdyz}H+5cwFlt@FMEe$Xd3cBuOzi0wK`R zpv1&TXM*>8tIuZ6qCm$JF$cC^SiwLcu~B#a7kCcx^e#!o{2BPYR3)Lj=ot^tTS4f7 z2MipyJcEwECu_h%d;Ex>K2XFSX!4(SKcz_yI`eh!opU2&m8=fB>cj7uF4bY@y5W(H?NyBxY($uuQS8me;D>D`h1^_rd3 z&VkA2TId-Oec+`upHZwleH0DD)BvE$&Tt~$M0*Nz^}El>x2St29TCXc-WfWOWF)q> Tba8bYhX>5tOSdH6fY=q@iC_twqroX%uY^twY&1)5b~I z?zRLNsZJ?raA3_WS?e|KrWf zt~`maJcj=(7T6g!&Qf%TKBDXNI{k`% zK;Nbn8YlmdKgbPoh1ldQnIswf3_r#j_WJR_qlW|+!^!^GMWKZVEeOp=XkKWpSDoG4 z$O+E&GJ$?uS)rM*`fX)|rXw^hG!>yvN-&RLE;JdTNuex4nNS*`^rbr9^GCw$PfSEI z4y!*g7Ai-mEL4h6NhtF4eE(~K1jC4AD0DDF2LpBMtD2@H!Xf@#aS`(6i;#hckeCSB zTvZb#kQ{*S@2iE|KPHkh($YS*%{JK&Y?)nTWAr(FOmERE^fH~MBQ!=Hk(*?NTp&~4 zhhYal#5eF4cp8sl+50FwkbjYv4o4WX zmKm^n^6tg4vc^F^9HX5wZBx|M)ovMg`)&>!3J0a25xS9gv=Rr|-XjnyomsROgF5<9 z_k;5xPNZwj+XE1 z0mA&OxhyK|&v9@doS2(!T6R;f>nE(w%$60D(6W6eA(VZ;b6M=8lHouNpOiWNQG2m| zx@RCYy=U|3Bg>tjMkBRn-qbnMYFX{iJN0v|?z|(MgR$LW?x&kN-k= 5: + return False + + x = song_token + song_hash + song_id + str(difficulty) + str(score) + str(shiny_perfect_count) + str( + perfect_count) + str(near_count) + str(miss_count) + str(health) + str(modifier) + str(clear_type) + y = str(user_id) + song_hash + checksum = md5(x+md5(y)) + if checksum != submission_hash: + return False + + return True + + def arc_all_post(user_id, scores_data, clearlamps_data): # 向云端同步,无返回 # 注意,best_score表不比较,直接覆盖 diff --git a/latest version/server/auth.py b/latest version/server/auth.py index 5a8b6d3..12b88cd 100644 --- a/latest version/server/auth.py +++ b/latest version/server/auth.py @@ -62,18 +62,6 @@ def build_user_id(c): else: return 2000001 - # def insert_user_char(c, user_id): - # # 为用户添加所有可用角色 - # for i in range(0, 38): - # if i in [0, 1, 2, 4, 13, 26, 27, 28, 29, 36, 21]: - # sql = 'insert into user_char values('+str(user_id)+','+str( - # i)+''',30,25000,25000,90,90,90,'',0,0,'',0,1,1)''' - # c.execute(sql) - # else: - # if i != 5: - # sql = 'insert into user_char values('+str(user_id)+','+str( - # i)+''',30,25000,25000,90,90,90,'',0,0,'',0,0,0)''' - # c.execute(sql) def insert_user_char(c, user_id): # 为用户添加所有可用角色 c.execute('''select * from character''')