fix: music.py cannot upload gameplay log

This commit is contained in:
7a1dd609-d238-4580-9d5f-ee8412b0f5bc 2025-01-12 12:05:47 +08:00
parent f015ff7cc9
commit ef817446bf
4 changed files with 6 additions and 279 deletions

View File

@ -6,15 +6,7 @@
# 此成绩将覆盖原有成绩
music_data = ({
"musicId": 11588,
"level": 3,
"playCount": 11,
"achievement": 1005627,
"comboStatus": 0,
"syncStatus": 0,
"deluxscoreMax": 2362,
"scoreRank": 13,
"extNum1": 0
"musicId":834,"level":4,"playCount":10,"achievement":912231,"comboStatus":0,"syncStatus":0,"deluxscoreMax":2106,"scoreRank":5, "extNum1": 0
})
# 机厅信息

View File

@ -365,7 +365,7 @@ def music(userId):
"isNewMapList": "",
"isNewLoginBonusList": "",
"isNewItemList": "",
"isNewMusicDetailList": "0",
"isNewMusicDetailList": "1",
"isNewCourseList": "0",
"isNewFavoriteList": "",
"isNewFriendSeasonRankingList": ""

271
music.py
View File

@ -28,7 +28,7 @@ def CalcRandom():
return num3
timestamp = int(time.time()) - 60
timestamp = int(time.time())
def music(userId, music_data):
@ -59,17 +59,6 @@ def music(userId, music_data):
userdata = json.loads(sdgb_api(data, "GetUserDataApi", userId))
# UserMusic 随机两首
data = json.dumps({
"userId": int(userId),
"nextIndex":random.randint(11000,11500),
"maxCount":2
})
music_details = json.loads(sdgb_api(data, "GetUserMusicApi", userId))
# UserLog
data = json.dumps({
@ -188,238 +177,6 @@ def music(userId, music_data):
userlog_result = json.loads(sdgb_api(data, "UploadUserPlaylogApi", userId))
data = json.dumps({
"userId": int(userId),
"userPlaylog": {
"userId": 0,
"orderId": 0,
"playlogId": login_id,
"version": 1041000,
"placeId": placeId,
"placeName": placeName,
"loginDate": int(time.time()),
"playDate": datetime.now(pytz.timezone('Asia/Shanghai')).strftime('%Y-%m-%d'),
"userPlayDate": datetime.now(pytz.timezone('Asia/Shanghai')).strftime('%Y-%m-%d %H:%M:%S') + '.0',
"type": 0,
"musicId": music_details['userMusicList'][0]['userMusicDetailList'][0]['musicId'],
"level": music_details['userMusicList'][0]['userMusicDetailList'][0]['level'],
"trackNo": 2,
"vsMode": 0,
"vsUserName": "",
"vsStatus": 0,
"vsUserRating": 0,
"vsUserAchievement": 0,
"vsUserGradeRank": 0,
"vsRank": 0,
"playerNum": 1,
"playedUserId1": 0,
"playedUserName1": "",
"playedMusicLevel1": 0,
"playedUserId2": 0,
"playedUserName2": "",
"playedMusicLevel2": 0,
"playedUserId3": 0,
"playedUserName3": "",
"playedMusicLevel3": 0,
"characterId1": userdata['userData']['charaSlot'][0],
"characterLevel1": random.randint(1000,6500),
"characterAwakening1": 5,
"characterId2": userdata['userData']['charaSlot'][1],
"characterLevel2": random.randint(1000,6500),
"characterAwakening2": 5,
"characterId3": userdata['userData']['charaSlot'][2],
"characterLevel3": random.randint(1000,6500),
"characterAwakening3": 5,
"characterId4": userdata['userData']['charaSlot'][3],
"characterLevel4": random.randint(1000,6500),
"characterAwakening4": 5,
"characterId5": userdata['userData']['charaSlot'][4],
"characterLevel5": random.randint(1000,6500),
"characterAwakening5": 5,
"achievement": music_details['userMusicList'][0]['userMusicDetailList'][0]['achievement'],
"deluxscore": music_details['userMusicList'][0]['userMusicDetailList'][0]['deluxscoreMax'],
"scoreRank": music_details['userMusicList'][0]['userMusicDetailList'][0]['scoreRank'],
"maxCombo": random.randint(400,500),
"totalCombo": random.randint(700,900),
"maxSync": 0,
"totalSync": 0,
"tapCriticalPerfect": random.randint(200,400),
"tapPerfect": random.randint(100,250),
"tapGreat": random.randint(0,10),
"tapGood": random.randint(0,10),
"tapMiss": random.randint(0,10),
"holdCriticalPerfect": random.randint(20,40),
"holdPerfect": random.randint(0,15),
"holdGreat": 0,
"holdGood": 0,
"holdMiss": 0,
"slideCriticalPerfect": random.randint(34,60),
"slidePerfect": 0,
"slideGreat": 0,
"slideGood": 0,
"slideMiss": 0,
"touchCriticalPerfect": random.randint(20,70),
"touchPerfect": 0,
"touchGreat": 0,
"touchGood": 0,
"touchMiss": 0,
"breakCriticalPerfect": random.randint(8,30),
"breakPerfect": random.randint(7,10),
"breakGreat": 0,
"breakGood": 0,
"breakMiss": 0,
"isTap": True,
"isHold": True,
"isSlide": True,
"isTouch": True,
"isBreak": True,
"isCriticalDisp": True,
"isFastLateDisp": True,
"fastCount": random.randint(20,30),
"lateCount": random.randint(50,70),
"isAchieveNewRecord": False,
"isDeluxscoreNewRecord": False,
"comboStatus": 0,
"syncStatus": 0,
"isClear": True,
'beforeRating': userdata['userData']['playerRating'],
'afterRating': userdata['userData']['playerRating'],
"beforeGrade": 0,
"afterGrade": 0,
"afterGradeRank": 2,
'beforeDeluxRating': userdata['userData']['playerRating'],
'afterDeluxRating': userdata['userData']['playerRating'],
"isPlayTutorial": False,
"isEventMode": False,
"isFreedomMode": False,
"playMode": 0,
"isNewFree": False,
"trialPlayAchievement": -1,
"extNum1": 0,
"extNum2": 0,
"extNum4": 3020,
"extBool1": False
}
})
userlog_result = json.loads(sdgb_api(data, "UploadUserPlaylogApi", userId))
data = json.dumps({
"userId": int(userId),
"userPlaylog": {
"userId": 0,
"orderId": 0,
"playlogId": login_id,
"version": 1041000,
"placeId": placeId,
"placeName": placeName,
"loginDate": int(time.time()),
"playDate": datetime.now(pytz.timezone('Asia/Shanghai')).strftime('%Y-%m-%d'),
"userPlayDate": datetime.now(pytz.timezone('Asia/Shanghai')).strftime('%Y-%m-%d %H:%M:%S') + '.0',
"type": 0,
"musicId": music_details['userMusicList'][1]['userMusicDetailList'][0]['musicId'],
"level": music_details['userMusicList'][1]['userMusicDetailList'][0]['level'],
"trackNo": 3,
"vsMode": 0,
"vsUserName": "",
"vsStatus": 0,
"vsUserRating": 0,
"vsUserAchievement": 0,
"vsUserGradeRank": 0,
"vsRank": 0,
"playerNum": 1,
"playedUserId1": 0,
"playedUserName1": "",
"playedMusicLevel1": 0,
"playedUserId2": 0,
"playedUserName2": "",
"playedMusicLevel2": 0,
"playedUserId3": 0,
"playedUserName3": "",
"playedMusicLevel3": 0,
"characterId1": userdata['userData']['charaSlot'][0],
"characterLevel1": random.randint(1000,6500),
"characterAwakening1": 5,
"characterId2": userdata['userData']['charaSlot'][1],
"characterLevel2": random.randint(1000,6500),
"characterAwakening2": 5,
"characterId3": userdata['userData']['charaSlot'][2],
"characterLevel3": random.randint(1000,6500),
"characterAwakening3": 5,
"characterId4": userdata['userData']['charaSlot'][3],
"characterLevel4": random.randint(1000,6500),
"characterAwakening4": 5,
"characterId5": userdata['userData']['charaSlot'][4],
"characterLevel5": random.randint(1000,6500),
"characterAwakening5": 5,
"achievement": music_details['userMusicList'][1]['userMusicDetailList'][0]['achievement'],
"deluxscore": music_details['userMusicList'][1]['userMusicDetailList'][0]['deluxscoreMax'],
"scoreRank": music_details['userMusicList'][1]['userMusicDetailList'][0]['scoreRank'],
"maxCombo": random.randint(400,500),
"totalCombo": random.randint(700,900),
"maxSync": 0,
"totalSync": 0,
"tapCriticalPerfect": random.randint(200,400),
"tapPerfect": random.randint(100,250),
"tapGreat": random.randint(0,10),
"tapGood": random.randint(0,10),
"tapMiss": random.randint(0,10),
"holdCriticalPerfect": random.randint(20,40),
"holdPerfect": random.randint(0,15),
"holdGreat": 0,
"holdGood": 0,
"holdMiss": 0,
"slideCriticalPerfect": random.randint(34,60),
"slidePerfect": 0,
"slideGreat": 0,
"slideGood": 0,
"slideMiss": 0,
"touchCriticalPerfect": random.randint(20,70),
"touchPerfect": 0,
"touchGreat": 0,
"touchGood": 0,
"touchMiss": 0,
"breakCriticalPerfect": random.randint(8,30),
"breakPerfect": random.randint(7,10),
"breakGreat": 0,
"breakGood": 0,
"breakMiss": 0,
"isTap": True,
"isHold": True,
"isSlide": True,
"isTouch": True,
"isBreak": True,
"isCriticalDisp": True,
"isFastLateDisp": True,
"fastCount": random.randint(20,30),
"lateCount": random.randint(50,70),
"isAchieveNewRecord": False,
"isDeluxscoreNewRecord": False,
"comboStatus": 0,
"syncStatus": 0,
"isClear": True,
'beforeRating': userdata['userData']['playerRating'],
'afterRating': userdata['userData']['playerRating'],
"beforeGrade": 0,
"afterGrade": 0,
"afterGradeRank": 2,
'beforeDeluxRating': userdata['userData']['playerRating'],
'afterDeluxRating': userdata['userData']['playerRating'],
"isPlayTutorial": False,
"isEventMode": False,
"isFreedomMode": False,
"playMode": 0,
"isNewFree": False,
"trialPlayAchievement": -1,
"extNum1": 0,
"extNum2": 0,
"extNum4": 3020,
"extBool1": False
}
})
userlog_result = json.loads(sdgb_api(data, "UploadUserPlaylogApi", userId))
# 获取 User Extend
data = json.dumps({
"userId": int(userId)
@ -569,28 +326,6 @@ def music(userId, music_data):
"deluxscoreMax": deluxscoreMax,
"scoreRank": scoreRank,
"extNum1": 0
},
{
"musicId": music_details['userMusicList'][0]['userMusicDetailList'][0]['musicId'],
"level": music_details['userMusicList'][0]['userMusicDetailList'][0]['level'],
"playCount": music_details['userMusicList'][0]['userMusicDetailList'][0]['playCount'],
"achievement": music_details['userMusicList'][0]['userMusicDetailList'][0]['achievement'],
"comboStatus": music_details['userMusicList'][0]['userMusicDetailList'][0]['comboStatus'],
"syncStatus": music_details['userMusicList'][0]['userMusicDetailList'][0]['syncStatus'],
"deluxscoreMax": music_details['userMusicList'][0]['userMusicDetailList'][0]['deluxscoreMax'],
"scoreRank": music_details['userMusicList'][0]['userMusicDetailList'][0]['scoreRank'],
"extNum1": music_details['userMusicList'][0]['userMusicDetailList'][0]['extNum1']
},
{
"musicId": music_details['userMusicList'][1]['userMusicDetailList'][0]['musicId'],
"level": music_details['userMusicList'][1]['userMusicDetailList'][0]['level'],
"playCount": music_details['userMusicList'][1]['userMusicDetailList'][0]['playCount'],
"achievement": music_details['userMusicList'][1]['userMusicDetailList'][0]['achievement'],
"comboStatus": music_details['userMusicList'][1]['userMusicDetailList'][0]['comboStatus'],
"syncStatus": music_details['userMusicList'][1]['userMusicDetailList'][0]['syncStatus'],
"deluxscoreMax": music_details['userMusicList'][1]['userMusicDetailList'][0]['deluxscoreMax'],
"scoreRank": music_details['userMusicList'][1]['userMusicDetailList'][0]['scoreRank'],
"extNum1": music_details['userMusicList'][1]['userMusicDetailList'][0]['extNum1']
}
],
"userCourseList": [],
@ -606,7 +341,7 @@ def music(userId, music_data):
"playMode": 0,
"useTicketId": -1,
"playCredit": 1,
"playTrack": 3,
"playTrack": 1,
"clientId": clientId,
"isPlayTutorial": False,
"isEventMode": False,
@ -629,7 +364,7 @@ def music(userId, music_data):
"isNewMapList": "",
"isNewLoginBonusList": "",
"isNewItemList": "",
"isNewMusicDetailList": "100",
"isNewMusicDetailList": "0",
"isNewCourseList": "0",
"isNewFavoriteList": "",
"isNewFriendSeasonRankingList": ""

View File

@ -7491,7 +7491,7 @@ def music(userId):
"isNewMapList": "",
"isNewLoginBonusList": "",
"isNewItemList": 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111,
"isNewMusicDetailList": "0",
"isNewMusicDetailList": "1",
"isNewCourseList": "0",
"isNewFavoriteList": "",
"isNewFriendSeasonRankingList": ""