diff --git a/StarRailUID/sruid_utils/api/mihomo/models.py b/StarRailUID/sruid_utils/api/mihomo/models.py index 1d3310a..29cee23 100644 --- a/StarRailUID/sruid_utils/api/mihomo/models.py +++ b/StarRailUID/sruid_utils/api/mihomo/models.py @@ -4,63 +4,64 @@ from typing import List, Optional, TypedDict class MihomoData(TypedDict): - PlayerDetailInfo: PlayerDetailInfo + detailInfo: PlayerDetailInfo class Behavior(TypedDict): - BehaviorID: int - Level: int + pointId: int + level: int class Equipment(TypedDict): - Level: int - ID: int - Promotion: Optional[int] - Rank: Optional[int] + level: int + tid: int + promotion: Optional[int] + rank: Optional[int] class Relic(TypedDict): - RelicSubAffix: List[RelicSubAffix] - ID: int - MainAffixID: int - Type: int + subAffixList: List[subAffixList] + tid: int + mainAffixId: int + type: int class Avatar(TypedDict): - BehaviorList: List[Behavior] - Rank: Optional[int] - Pos: Optional[int] - AvatarID: int - Level: int - EquipmentID: Optional[Equipment] - RelicList: List[Relic] - Promotion: int + skillTreeList: List[Behavior] + rank: Optional[int] + pos: Optional[int] + avatarId: int + level: int + equipment: Optional[Equipment] + relicList: List[Relic] + promotion: int class Challenge(TypedDict): - PreMazeGroupIndex: int + scheduleMaxLevel: int MazeGroupIndex: Optional[int] PreMazeGroupIndex: Optional[int] class PlayerSpaceInfo(TypedDict): - ChallengeData: Challenge - PassAreaProgress: int - LightConeCount: int - AvatarCount: int - AchievementCount: int + challengeInfo: Challenge + maxRogueChallengeScore: int + equipmentCount: int + avatarCount: int + achievementCount: int class PlayerDetailInfo(TypedDict): - AssistAvatar: Avatar - IsDisplayAvatarList: bool - DisplayAvatarList: Optional[List[Avatar]] - UID: int - CurFriendCount: int - WorldLevel: int - NickName: str + assistAvatarDetail: Avatar + platform: str + isDisplayAvatar: bool + avatarDetailList: Optional[List[Avatar]] + uid: int + friendCount: int + worldLevel: int + nickname: str Birthday: Optional[int] - Level: int - PlayerSpaceInfo: Optional[PlayerSpaceInfo] - HeadIconID: int - Signature: Optional[str] + level: int + recordInfo: Optional[PlayerSpaceInfo] + headIcon: int + signature: Optional[str] diff --git a/StarRailUID/starrailuid_charinfo/to_card.py b/StarRailUID/starrailuid_charinfo/to_card.py index 1ffb28a..7934f5b 100644 --- a/StarRailUID/starrailuid_charinfo/to_card.py +++ b/StarRailUID/starrailuid_charinfo/to_card.py @@ -31,6 +31,7 @@ async def api_to_card( uid: str, enka_data: Optional[EnkaData] = None ) -> Union[str, bytes]: char_data_list = await api_to_dict(uid, enka_data) + print(char_data_list) if isinstance(char_data_list, str): if ('服务器正在维护或者关闭中' in char_data_list) or ('网络不太稳定' in char_data_list): return await convert_img(pic_500) diff --git a/StarRailUID/starrailuid_charinfo/to_data.py b/StarRailUID/starrailuid_charinfo/to_data.py index 976d57f..2783641 100644 --- a/StarRailUID/starrailuid_charinfo/to_data.py +++ b/StarRailUID/starrailuid_charinfo/to_data.py @@ -57,13 +57,14 @@ async def api_to_dict( if isinstance(sr_data, str): return [] if isinstance(sr_data, dict): - if 'PlayerDetailInfo' not in sr_data: + print(sr_data) + if 'detailInfo' not in sr_data: im = '服务器正在维护或者关闭中...\n检查Mihomo.me是否可以访问\n如可以访问,尝试上报Bug!' return im elif sr_data is None: return [] - PlayerDetailInfo = sr_data['PlayerDetailInfo'] + PlayerDetailInfo = sr_data['detailInfo'] path = PLAYER_PATH / str(sr_uid) path.mkdir(parents=True, exist_ok=True) with open( @@ -73,28 +74,33 @@ async def api_to_dict( with open(path / 'rawData.json', 'w', encoding='UTF-8') as file: json.dump(sr_data, file, ensure_ascii=False) - if 'PlayerDetailInfo' not in sr_data: + if 'detailInfo' not in sr_data: return f'SR_UID{sr_uid}刷新失败!未打开角色展柜!' char_name_list = [] char_id_list = [] im = f'UID: {sr_uid} 的角色展柜刷新成功\n' - if PlayerDetailInfo.get('AssistAvatar'): - if PlayerDetailInfo['AssistAvatar']['AvatarID'] not in char_id_list: + if PlayerDetailInfo.get('assistAvatarDetail'): + if ( + PlayerDetailInfo['assistAvatarDetail']['avatarId'] + not in char_id_list + ): char_dict, avatarName = await get_data( - PlayerDetailInfo['AssistAvatar'], sr_data, sr_uid + PlayerDetailInfo['assistAvatarDetail'], sr_data, sr_uid ) im += f'支援角色 {avatarName}\n' char_name_list.append(avatarName) - char_id_list.append(PlayerDetailInfo['AssistAvatar']['AvatarID']) - if PlayerDetailInfo.get('DisplayAvatarList'): + char_id_list.append( + PlayerDetailInfo['assistAvatarDetail']['avatarId'] + ) + if PlayerDetailInfo.get('avatarDetailList'): im += '星海同行' - for char in PlayerDetailInfo['DisplayAvatarList']: - if char['AvatarID'] not in char_id_list: + for char in PlayerDetailInfo['avatarDetailList']: + if char['avatarId'] not in char_id_list: char_dict, avatarName = await get_data(char, sr_data, sr_uid) im += f' {avatarName}' char_name_list.append(avatarName) - char_id_list.append(char['AvatarID']) + char_id_list.append(char['avatarId']) if not char_name_list: im = f'UID: {sr_uid} 的角色展柜刷新失败!\n请检查UID是否正确或者角色展柜是否打开!' @@ -104,32 +110,32 @@ async def api_to_dict( async def get_data(char: dict, sr_data: dict, sr_uid: str): - PlayerDetailInfo = sr_data['PlayerDetailInfo'] + PlayerDetailInfo = sr_data['detailInfo'] path = PLAYER_PATH / str(sr_uid) # 处理基本信息 char_data = { 'uid': str(sr_uid), - 'nickName': PlayerDetailInfo['NickName'], - 'avatarId': char['AvatarID'], - 'avatarName': avatarId2Name[str(char['AvatarID'])], - 'avatarElement': avatarId2DamageType[str(char['AvatarID'])], - 'avatarRarity': avatarId2Rarity[str(char['AvatarID'])], - 'avatarPromotion': char.get('Promotion', 0), - 'avatarLevel': char['Level'], + 'nickName': PlayerDetailInfo['nickname'], + 'avatarId': char['avatarId'], + 'avatarName': avatarId2Name[str(char['avatarId'])], + 'avatarElement': avatarId2DamageType[str(char['avatarId'])], + 'avatarRarity': avatarId2Rarity[str(char['avatarId'])], + 'avatarPromotion': char.get('promotion', 0), + 'avatarLevel': char['level'], 'avatarSkill': [], 'avatarExtraAbility': [], 'avatarAttributeBonus': [], 'RelicInfo': [], } - avatarName = avatarId2Name[str(char['AvatarID'])] - char_data['avatarEnName'] = avatarId2EnName[str(char['AvatarID'])] + avatarName = avatarId2Name[str(char['avatarId'])] + char_data['avatarEnName'] = avatarId2EnName[str(char['avatarId'])] # 处理技能 - for behavior in char['BehaviorList']: + for behavior in char['skillTreeList']: # 处理技能 - if f'{char["AvatarID"]}0' == str(behavior['BehaviorID'])[0:5]: + if f'{char["avatarId"]}0' == str(behavior['pointId'])[0:5]: skill_temp = {} skill_temp['skillId'] = ( - char['AvatarID'] * 100 + behavior['BehaviorID'] % 10 + char['avatarId'] * 100 + behavior['pointId'] % 10 ) skill_temp['skillName'] = skillId2Name[str(skill_temp['skillId'])] skill_temp['skillEffect'] = skillId2Effect[ @@ -138,17 +144,17 @@ async def get_data(char: dict, sr_data: dict, sr_uid: str): skill_temp['skillAttackType'] = skillId2AttackType[ str(skill_temp['skillId']) ] - skill_temp['skillLevel'] = behavior['Level'] + skill_temp['skillLevel'] = behavior['level'] char_data['avatarSkill'].append(skill_temp) # 处理技能树中的额外能力 - if f'{char["AvatarID"]}1' == str(behavior['BehaviorID'])[0:5]: + if f'{char["avatarId"]}1' == str(behavior['pointId'])[0:5]: extra_ability_temp = {} - extra_ability_temp['extraAbilityId'] = behavior['BehaviorID'] - extra_ability_temp['extraAbilityLevel'] = behavior['Level'] - status_add = characterSkillTree[str(char['AvatarID'])][ - str(behavior['BehaviorID']) - ]['levels'][str(behavior['Level'])]['status_add'] + extra_ability_temp['extraAbilityId'] = behavior['pointId'] + extra_ability_temp['extraAbilityLevel'] = behavior['level'] + status_add = characterSkillTree[str(char['avatarId'])][ + str(behavior['pointId']) + ]['levels'][str(behavior['level'])]['status_add'] extra_ability_temp['statusAdd'] = {} if status_add != {}: extra_ability_temp['statusAdd']['property'] = status_add[ @@ -161,13 +167,13 @@ async def get_data(char: dict, sr_data: dict, sr_uid: str): char_data['avatarExtraAbility'].append(extra_ability_temp) # 处理技能树中的属性加成 - if f'{char["AvatarID"]}2' == str(behavior['BehaviorID'])[0:5]: + if f'{char["avatarId"]}2' == str(behavior['pointId'])[0:5]: attribute_bonus_temp = {} - attribute_bonus_temp['attributeBonusId'] = behavior['BehaviorID'] - attribute_bonus_temp['attributeBonusLevel'] = behavior['Level'] - status_add = characterSkillTree[str(char['AvatarID'])][ - str(behavior['BehaviorID']) - ]['levels'][str(behavior['Level'])]['status_add'] + attribute_bonus_temp['attributeBonusId'] = behavior['pointId'] + attribute_bonus_temp['attributeBonusLevel'] = behavior['level'] + status_add = characterSkillTree[str(char['avatarId'])][ + str(behavior['pointId']) + ]['levels'][str(behavior['level'])]['status_add'] attribute_bonus_temp['statusAdd'] = {} if status_add != {}: attribute_bonus_temp['statusAdd']['property'] = status_add[ @@ -182,23 +188,23 @@ async def get_data(char: dict, sr_data: dict, sr_uid: str): char_data['avatarAttributeBonus'].append(attribute_bonus_temp) # 处理遗器 - if char.get('RelicList'): - for relic in char['RelicList']: + if char.get('relicList'): + for relic in char['relicList']: relic_temp = {} - relic_temp['relicId'] = relic['ID'] - relic_temp['relicName'] = ItemId2Name[str(relic['ID'])] - relic_temp['SetId'] = int(RelicId2SetId[str(relic['ID'])]) + relic_temp['relicId'] = relic['tid'] + relic_temp['relicName'] = ItemId2Name[str(relic['tid'])] + relic_temp['SetId'] = int(RelicId2SetId[str(relic['tid'])]) relic_temp['SetName'] = SetId2Name[str(relic_temp['SetId'])] - relic_temp['Level'] = relic['Level'] if 'Level' in relic else 0 - relic_temp['Type'] = relic['Type'] + relic_temp['Level'] = relic['level'] if 'level' in relic else 0 + relic_temp['Type'] = relic['type'] relic_temp['MainAffix'] = {} - relic_temp['MainAffix']['AffixID'] = relic['MainAffixID'] + relic_temp['MainAffix']['AffixID'] = relic['mainAffixId'] affix_property, value = await cal_relic_main_affix( - relic_id=relic['ID'], + relic_id=relic['tid'], set_id=str(relic_temp['SetId']), - affix_id=relic['MainAffixID'], - relic_type=relic['Type'], + affix_id=relic['mainAffixId'], + relic_type=relic['type'], relic_level=relic_temp['Level'], ) relic_temp['MainAffix']['Property'] = affix_property @@ -206,21 +212,21 @@ async def get_data(char: dict, sr_data: dict, sr_uid: str): relic_temp['MainAffix']['Value'] = value relic_temp['SubAffixList'] = [] - if relic.get('RelicSubAffix'): - for sub_affix in relic['RelicSubAffix']: + if relic.get('subAffixList'): + for sub_affix in relic['subAffixList']: sub_affix_temp = {} - sub_affix_temp['SubAffixID'] = sub_affix['SubAffixID'] + sub_affix_temp['SubAffixID'] = sub_affix['affixId'] sub_affix_property, value = await cal_relic_sub_affix( - relic_id=relic['ID'], - affix_id=sub_affix['SubAffixID'], - cnt=sub_affix['Cnt'], - step=sub_affix['Step'] if 'Step' in sub_affix else 0, + relic_id=relic['tid'], + affix_id=sub_affix['affixId'], + cnt=sub_affix['cnt'], + step=sub_affix['step'] if 'step' in sub_affix else 0, ) sub_affix_temp['Property'] = sub_affix_property sub_affix_temp['Name'] = Property2Name[sub_affix_property] - sub_affix_temp['Cnt'] = sub_affix['Cnt'] + sub_affix_temp['Cnt'] = sub_affix['cnt'] sub_affix_temp['Step'] = ( - sub_affix['Step'] if 'Step' in sub_affix else 0 + sub_affix['step'] if 'step' in sub_affix else 0 ) sub_affix_temp['Value'] = value relic_temp['SubAffixList'].append(sub_affix_temp) @@ -228,11 +234,11 @@ async def get_data(char: dict, sr_data: dict, sr_uid: str): # 处理命座 rank_temp = [] - if 'Rank' in char: - char_data['rank'] = char['Rank'] - for index in range(char['Rank']): + if 'rank' in char: + char_data['rank'] = char['rank'] + for index in range(char['rank']): rankTemp = {} - rank_id = int(str(char['AvatarID']) + '0' + str(index + 1)) + rank_id = int(str(char['avatarId']) + '0' + str(index + 1)) rankTemp['rankId'] = rank_id rankTemp['rankName'] = rankId2Name[str(rank_id)] rank_temp.append(rankTemp) @@ -240,26 +246,26 @@ async def get_data(char: dict, sr_data: dict, sr_uid: str): # 处理基础属性 base_attributes = {} - avatar_promotion_base = AvatarPromotion[str(char['AvatarID'])][ - str(char.get('Promotion', 0)) + avatar_promotion_base = AvatarPromotion[str(char['avatarId'])][ + str(char.get('promotion', 0)) ] # 攻击力 base_attributes['attack'] = str( mp.mpf(avatar_promotion_base["AttackBase"]['Value']) + mp.mpf(avatar_promotion_base["AttackAdd"]['Value']) - * (char['Level'] - 1) + * (char['level'] - 1) ) # 防御力 base_attributes['defence'] = str( mp.mpf(avatar_promotion_base["DefenceBase"]['Value']) + mp.mpf(avatar_promotion_base["DefenceAdd"]['Value']) - * (char['Level'] - 1) + * (char['level'] - 1) ) # 血量 base_attributes['hp'] = str( mp.mpf(avatar_promotion_base["HPBase"]['Value']) - + mp.mpf(avatar_promotion_base["HPAdd"]['Value']) * (char['Level'] - 1) + + mp.mpf(avatar_promotion_base["HPAdd"]['Value']) * (char['level'] - 1) ) # 速度 base_attributes['speed'] = str( @@ -283,42 +289,42 @@ async def get_data(char: dict, sr_data: dict, sr_uid: str): # 处理武器 equipment_info = {} - if char['EquipmentID'] != {}: - equipment_info['equipmentID'] = char['EquipmentID']['ID'] + if char.get('equipment'): + equipment_info['equipmentID'] = char['equipment']['tid'] equipment_info['equipmentName'] = EquipmentID2Name[ - str(equipment_info['equipmentID']) + str(char['equipment']['tid']) ] - equipment_info['equipmentLevel'] = char['EquipmentID']['Level'] - equipment_info['equipmentPromotion'] = char['EquipmentID'].get( - 'Promotion', 0 + equipment_info['equipmentLevel'] = char['equipment']['level'] + equipment_info['equipmentPromotion'] = char['equipment'].get( + 'promotion', 0 ) - equipment_info['equipmentRank'] = char['EquipmentID']['Rank'] + equipment_info['equipmentRank'] = char['equipment']['rank'] equipment_info['equipmentRarity'] = EquipmentID2Rarity[ - str(equipment_info['equipmentID']) + str(char['equipment']['tid']) ] equipment_base_attributes = {} equipment_promotion_base = EquipmentPromotion[ - str(equipment_info['equipmentID']) + str(char['equipment']['tid']) ][str(equipment_info['equipmentPromotion'])] # 生命值 equipment_base_attributes['hp'] = str( mp.mpf(equipment_promotion_base["BaseHP"]['Value']) + mp.mpf(equipment_promotion_base["BaseHPAdd"]['Value']) - * (equipment_info['equipmentLevel'] - 1) + * (char['equipment']['level'] - 1) ) # 攻击力 equipment_base_attributes['attack'] = str( mp.mpf(equipment_promotion_base["BaseAttack"]['Value']) + mp.mpf(equipment_promotion_base["BaseAttackAdd"]['Value']) - * (equipment_info['equipmentLevel'] - 1) + * (char['equipment']['level'] - 1) ) # 防御力 equipment_base_attributes['defence'] = str( mp.mpf(equipment_promotion_base["BaseDefence"]['Value']) + mp.mpf(equipment_promotion_base["BaseDefenceAdd"]['Value']) - * (equipment_info['equipmentLevel'] - 1) + * (char['equipment']['level'] - 1) ) equipment_info['baseAttributes'] = equipment_base_attributes diff --git a/StarRailUID/utils/map/data/EquipmentID2Rarity_mapping_1.0.5.json b/StarRailUID/utils/map/data/EquipmentID2Rarity_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/EquipmentID2Rarity_mapping_1.0.5.json rename to StarRailUID/utils/map/data/EquipmentID2Rarity_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/ItemId2Name_mapping_1.0.5.json b/StarRailUID/utils/map/data/ItemId2Name_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/ItemId2Name_mapping_1.0.5.json rename to StarRailUID/utils/map/data/ItemId2Name_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/Property2Name.json b/StarRailUID/utils/map/data/Property2Name.json index e29ea87..ffc1434 100644 --- a/StarRailUID/utils/map/data/Property2Name.json +++ b/StarRailUID/utils/map/data/Property2Name.json @@ -1,57 +1 @@ -{ - "MaxHP": "生命值", - "Attack": "攻击力", - "Defence": "防御力", - "Speed": "速度", - "CriticalChance": "暴击率", - "CriticalDamage": "暴击伤害", - "BreakDamageAddedRatio": "击破特攻", - "BreakDamageAddedRatioBase": "击破特攻", - "HealRatio": "治疗量加成", - "MaxSP": "能量上限", - "SPRatio": "能量恢复效率", - "StatusProbability": "效果命中", - "StatusResistance": "效果抵抗", - "CriticalChanceBase": "暴击率", - "CriticalDamageBase": "暴击伤害", - "HealRatioBase": "治疗量加成", - "StanceBreakAddedRatio": "dev_失效字段", - "SPRatioBase": "能量恢复效率", - "StatusProbabilityBase": "效果命中", - "StatusResistanceBase": "效果抵抗", - "PhysicalAddedRatio": "物理属性伤害提高", - "PhysicalResistance": "物理属性抗性提高", - "FireAddedRatio": "火属性伤害提高", - "FireResistance": "火属性抗性提高", - "IceAddedRatio": "冰属性伤害提高", - "IceResistance": "冰属性抗性提高", - "ThunderAddedRatio": "雷属性伤害提高", - "ThunderResistance": "雷属性抗性提高", - "WindAddedRatio": "风属性伤害提高", - "WindResistance": "风属性抗性提高", - "QuantumAddedRatio": "量子属性伤害提高", - "QuantumResistance": "量子属性抗性提高", - "ImaginaryAddedRatio": "虚数属性伤害提高", - "ImaginaryResistance": "虚数属性抗性提高", - "BaseHP": "基础生命值提高#1[i]", - "HPDelta": "生命值", - "HPAddedRatio": "生命值百分比", - "BaseAttack": "基础攻击力提高#1[i]", - "AttackDelta": "攻击力", - "AttackAddedRatio": "攻击力百分比", - "BaseDefence": "基础防御力提高#1[i]", - "DefenceDelta": "防御力", - "DefenceAddedRatio": "防御力百分比", - "BaseSpeed": "速度", - "HealTakenRatio": "治疗量加成", - "PhysicalResistanceDelta": "物理属性抗性提高", - "FireResistanceDelta": "火属性抗性提高", - "IceResistanceDelta": "冰属性抗性提高", - "ThunderResistanceDelta": "雷属性抗性提高", - "WindResistanceDelta": "风属性抗性提高", - "QuantumResistanceDelta": "量子属性抗性提高", - "ImaginaryResistanceDelta": "虚数属性抗性提高", - "SpeedDelta": "速度", - "SpeedAddedRatio": "速度百分比", - "AllDamageTypeAddedRatio": "所有属性伤害提高" -} +{"MaxHP": "生命值", "Attack": "攻击力", "Defence": "防御力", "Speed": "速度", "CriticalChance": "暴击率", "CriticalDamage": "暴击伤害", "BreakDamageAddedRatio": "击破特攻", "BreakDamageAddedRatioBase": "击破特攻", "HealRatio": "治疗量加成", "MaxSP": "能量上限", "SPRatio": "能量恢复效率", "StatusProbability": "效果命中", "StatusResistance": "效果抵抗", "CriticalChanceBase": "暴击率", "CriticalDamageBase": "暴击伤害", "HealRatioBase": "治疗量加成", "StanceBreakAddedRatio": "dev_失效字段", "SPRatioBase": "能量恢复效率", "StatusProbabilityBase": "效果命中", "StatusResistanceBase": "效果抵抗", "PhysicalAddedRatio": "物理属性伤害提高", "PhysicalResistance": "物理属性抗性提高", "FireAddedRatio": "火属性伤害提高", "FireResistance": "火属性抗性提高", "IceAddedRatio": "冰属性伤害提高", "IceResistance": "冰属性抗性提高", "ThunderAddedRatio": "雷属性伤害提高", "ThunderResistance": "雷属性抗性提高", "WindAddedRatio": "风属性伤害提高", "WindResistance": "风属性抗性提高", "QuantumAddedRatio": "量子属性伤害提高", "QuantumResistance": "量子属性抗性提高", "ImaginaryAddedRatio": "虚数属性伤害提高", "ImaginaryResistance": "虚数属性抗性提高", "BaseHP": "基础生命值提高#1[i]", "HPDelta": "生命值", "HPAddedRatio": "生命值百分比", "BaseAttack": "基础攻击力提高#1[i]", "AttackDelta": "攻击力", "AttackAddedRatio": "攻击力百分比", "BaseDefence": "基础防御力提高#1[i]", "DefenceDelta": "防御力", "DefenceAddedRatio": "防御力百分比", "BaseSpeed": "速度", "HealTakenRatio": "治疗量加成", "PhysicalResistanceDelta": "物理属性抗性提高", "FireResistanceDelta": "火属性抗性提高", "IceResistanceDelta": "冰属性抗性提高", "ThunderResistanceDelta": "雷属性抗性提高", "WindResistanceDelta": "风属性抗性提高", "QuantumResistanceDelta": "量子属性抗性提高", "ImaginaryResistanceDelta": "虚数属性抗性提高", "SpeedDelta": "速度"} diff --git a/StarRailUID/utils/map/data/RelicId2MainAffixGroup_mapping_1.0.5.json b/StarRailUID/utils/map/data/RelicId2MainAffixGroup_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/RelicId2MainAffixGroup_mapping_1.0.5.json rename to StarRailUID/utils/map/data/RelicId2MainAffixGroup_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/RelicId2Rarity_mapping_1.0.5.json b/StarRailUID/utils/map/data/RelicId2Rarity_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/RelicId2Rarity_mapping_1.0.5.json rename to StarRailUID/utils/map/data/RelicId2Rarity_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/RelicId2SetId_mapping_1.0.5.json b/StarRailUID/utils/map/data/RelicId2SetId_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/RelicId2SetId_mapping_1.0.5.json rename to StarRailUID/utils/map/data/RelicId2SetId_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/SetId2Name_mapping_1.0.5.json b/StarRailUID/utils/map/data/SetId2Name_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/SetId2Name_mapping_1.0.5.json rename to StarRailUID/utils/map/data/SetId2Name_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/avatarId2DamageType_mapping_1.0.5.json b/StarRailUID/utils/map/data/avatarId2DamageType_mapping_1.1.0.json similarity index 71% rename from StarRailUID/utils/map/data/avatarId2DamageType_mapping_1.0.5.json rename to StarRailUID/utils/map/data/avatarId2DamageType_mapping_1.1.0.json index 1d9d0b8..1ea142c 100644 --- a/StarRailUID/utils/map/data/avatarId2DamageType_mapping_1.0.5.json +++ b/StarRailUID/utils/map/data/avatarId2DamageType_mapping_1.1.0.json @@ -1 +1 @@ -{"1001": "Ice", "1002": "Wind", "1003": "Fire", "1004": "Imaginary", "1005": "Thunder", "1006": "Quantum", "1008": "Thunder", "1009": "Fire", "1013": "Ice", "1101": "Wind", "1102": "Quantum", "1103": "Thunder", "1104": "Ice", "1105": "Physical", "1106": "Ice", "1107": "Physical", "1108": "Wind", "1109": "Fire", "1201": "Quantum", "1202": "Thunder", "1203": "Imaginary", "1204": "Thunder", "1206": "Physical", "1209": "Ice", "1211": "Thunder", "8001": "Physical", "8002": "Physical", "8003": "Fire", "8004": "Fire", "9100": "Physical"} +{"1001": "Ice", "1002": "Wind", "1003": "Fire", "1004": "Imaginary", "1005": "Thunder", "1006": "Quantum", "1008": "Thunder", "1009": "Fire", "1013": "Ice", "1101": "Wind", "1102": "Quantum", "1103": "Thunder", "1104": "Ice", "1105": "Physical", "1106": "Ice", "1107": "Physical", "1108": "Wind", "1109": "Fire", "1201": "Quantum", "1202": "Thunder", "1203": "Imaginary", "1204": "Thunder", "1206": "Physical", "1207": "Imaginary", "1209": "Ice", "1211": "Thunder", "8001": "Physical", "8002": "Physical", "8003": "Fire", "8004": "Fire"} diff --git a/StarRailUID/utils/map/data/avatarId2EnName_mapping_1.0.5.json b/StarRailUID/utils/map/data/avatarId2EnName_mapping_1.1.0.json similarity index 68% rename from StarRailUID/utils/map/data/avatarId2EnName_mapping_1.0.5.json rename to StarRailUID/utils/map/data/avatarId2EnName_mapping_1.1.0.json index 2788db0..b83b0f3 100644 --- a/StarRailUID/utils/map/data/avatarId2EnName_mapping_1.0.5.json +++ b/StarRailUID/utils/map/data/avatarId2EnName_mapping_1.1.0.json @@ -1 +1 @@ -{"1001": "March7th", "1002": "DanHeng", "1003": "Himeko", "1004": "Welt", "1005": "Kafka", "1006": "SilverWolf", "1008": "Arlan", "1009": "Asta", "1013": "Herta", "1101": "Bronya", "1102": "Seele", "1103": "Serval", "1104": "Gepard", "1105": "Natasha", "1106": "Pela", "1107": "Clara", "1108": "Sampo", "1109": "Hook", "1201": "Qingque", "1202": "Tingyun", "1203": "Luocha", "1204": "JingYuan", "1206": "Sushang", "1209": "Yanqing", "1211": "Bailu", "8001": "{NICKNAME}", "8002": "{NICKNAME}", "8003": "{NICKNAME}", "8004": "{NICKNAME}", "9100": "{NICKNAME}"} +{"1001": "March7th", "1002": "DanHeng", "1003": "Himeko", "1004": "Welt", "1005": "Kafka", "1006": "SilverWolf", "1008": "Arlan", "1009": "Asta", "1013": "Herta", "1101": "Bronya", "1102": "Seele", "1103": "Serval", "1104": "Gepard", "1105": "Natasha", "1106": "Pela", "1107": "Clara", "1108": "Sampo", "1109": "Hook", "1201": "Qingque", "1202": "Tingyun", "1203": "Luocha", "1204": "JingYuan", "1206": "Sushang", "1207": "Yukong", "1209": "Yanqing", "1211": "Bailu", "8001": "{NICKNAME}", "8002": "{NICKNAME}", "8003": "{NICKNAME}", "8004": "{NICKNAME}"} diff --git a/StarRailUID/utils/map/data/avatarId2Name_mapping_1.0.5.json b/StarRailUID/utils/map/data/avatarId2Name_mapping_1.1.0.json similarity index 75% rename from StarRailUID/utils/map/data/avatarId2Name_mapping_1.0.5.json rename to StarRailUID/utils/map/data/avatarId2Name_mapping_1.1.0.json index 9f82b75..ba92c7d 100644 --- a/StarRailUID/utils/map/data/avatarId2Name_mapping_1.0.5.json +++ b/StarRailUID/utils/map/data/avatarId2Name_mapping_1.1.0.json @@ -1 +1 @@ -{"1001": "三月七", "1002": "丹恒", "1003": "姬子", "1004": "瓦尔特", "1005": "卡芙卡", "1006": "银狼", "1008": "阿兰", "1009": "艾丝妲", "1013": "黑塔", "1101": "布洛妮娅", "1102": "希儿", "1103": "希露瓦", "1104": "杰帕德", "1105": "娜塔莎", "1106": "佩拉", "1107": "克拉拉", "1108": "桑博", "1109": "虎克", "1201": "青雀", "1202": "停云", "1203": "罗刹", "1204": "景元", "1206": "素裳", "1209": "彦卿", "1211": "白露", "8001": "开拓者", "8002": "开拓者", "8003": "开拓者", "8004": "开拓者", "9100": "dev_测试用白板"} +{"1001": "三月七", "1002": "丹恒", "1003": "姬子", "1004": "瓦尔特", "1005": "卡芙卡", "1006": "银狼", "1008": "阿兰", "1009": "艾丝妲", "1013": "黑塔", "1101": "布洛妮娅", "1102": "希儿", "1103": "希露瓦", "1104": "杰帕德", "1105": "娜塔莎", "1106": "佩拉", "1107": "克拉拉", "1108": "桑博", "1109": "虎克", "1201": "青雀", "1202": "停云", "1203": "罗刹", "1204": "景元", "1206": "素裳", "1207": "驭空", "1209": "彦卿", "1211": "白露", "8001": "开拓者", "8002": "开拓者", "8003": "开拓者", "8004": "开拓者"} diff --git a/StarRailUID/utils/map/data/avatarId2Rarity_mapping_1.0.5.json b/StarRailUID/utils/map/data/avatarId2Rarity_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/avatarId2Rarity_mapping_1.0.5.json rename to StarRailUID/utils/map/data/avatarId2Rarity_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/avatarId2Star_mapping_1.0.5.json b/StarRailUID/utils/map/data/avatarId2Star_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/avatarId2Star_mapping_1.0.5.json rename to StarRailUID/utils/map/data/avatarId2Star_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/characterSkillTree_mapping_1.0.5.json b/StarRailUID/utils/map/data/characterSkillTree_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/characterSkillTree_mapping_1.0.5.json rename to StarRailUID/utils/map/data/characterSkillTree_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/rankId2Name_mapping_1.0.5.json b/StarRailUID/utils/map/data/rankId2Name_mapping_1.1.0.json similarity index 100% rename from StarRailUID/utils/map/data/rankId2Name_mapping_1.0.5.json rename to StarRailUID/utils/map/data/rankId2Name_mapping_1.1.0.json diff --git a/StarRailUID/utils/map/data/skillId2Name_mapping_1.0.5.json b/StarRailUID/utils/map/data/skillId2Name_mapping_1.0.5.json deleted file mode 100644 index df86fcf..0000000 --- a/StarRailUID/utils/map/data/skillId2Name_mapping_1.0.5.json +++ /dev/null @@ -1 +0,0 @@ -{"100101": "极寒的弓矢", "100103": "冰刻箭雨之时", "100104": "少女的特权", "100106": "攻击", "100107": "冻人的瞬间", "100201": "云骑枪术•朔风", "100202": "云骑枪术•疾雨", "100203": "洞天幻化,长梦一觉", "100204": "寸长寸强", "100206": "攻击", "100207": "破敌锋芒", "100302": "熔核爆裂", "100306": "攻击", "100307": "不完全燃烧", "100401": "重力压制", "100402": "虚空断界", "100404": "时空扭曲", "100406": "攻击", "100501": "夜间喧嚣不止", "100502": "月光摩挲连绵", "100503": "悲剧尽头的颤音", "100504": "温柔亦同残酷", "100506": "攻击", "100507": "宽恕无关慈悲", "100801": "如雷疾行", "100802": "禁锢解除", "100803": "狂者制裁", "100804": "至痛至怒", "100806": "攻击", "100807": "极速收割", "100901": "光谱射线", "100902": "流星群落", "100903": "星空祝言", "100904": "天象学", "100906": "攻击", "100907": "灵光一现", "101301": "看什么看", "101302": "一锤子买卖", "101303": "是魔法,我加了魔法", "101304": "还是我来吧", "101306": "攻击", "101307": "可以优化一下", "110101": "驭风的子弹", "110102": "作战再部署", "110103": "贝洛伯格进行曲", "110104": "先人一步", "110106": "攻击", "110107": "在旗帜下", "110203": "乱蝶", "110206": "攻击", "110207": "幻身", "110301": "雷鸣音阶", "110302": "电光石火间", "110303": "机械热潮登场!", "110304": "燃情和弦", "110306": "攻击", "110307": "晚安,贝洛伯格", "110401": "一意之拳", "110402": "震慑之击", "110403": "永屹之壁", "110404": "不屈之身", "110406": "攻击", "110407": "有情之证", "110501": "仁慈的背面", "110502": "爱,救护与抉择", "110503": "新生之礼", "110506": "攻击", "110601": "冰点射击", "110602": "低温妨害", "110604": "数据采集", "110606": "攻击", "110607": "先发制人", "110801": "酷炫的刀花", "110802": "反复横跳的爱", "110803": "惊喜礼盒", "110806": "攻击", "110807": "你最闪亮", "110901": "喂!小心火烛", "110902": "嘿!记得虎克吗", "110903": "轰!飞来焰火", "110904": "哈!火上浇油", "110906": "攻击", "110907": "哎!瞧这一团糟", "110909": "嘿!记得虎克吗", "120101": "门前清", "120108": "杠上开花!", "120103": "四幺暗刻?和!", "120104": "帝垣琼玉", "120106": "攻击", "120107": "独弈之乐", "120201": "逐客令", "120206": "攻击", "120207": "惠风和畅", "120301": "黑渊的棘刺", "120302": "白花的祈望", "120303": "归葬的遂愿", "120304": "生息的轮转", "120306": "攻击", "120307": "愚者的悲悯", "120601": "云骑剑经 • 素霓", "120602": "云骑剑经 • 山倾", "120603": "太虚形蕴 • 烛夜", "120604": "游刃若水", "120606": "攻击", "120607": "云骑剑经 • 叩阵", "120901": "霜锋点寒芒", "120902": "遥击三尺水", "120903": "快雨燕相逐", "120904": "呼剑如影", "120906": "攻击", "120907": "御剑真诀", "121101": "望 、闻、问…蹴!", "121102": "云吟乍涌坠珠露", "121103": "匏蛟跃渊先雷音", "121106": "攻击", "121107": "徜徉灵泽病恙短", "800101": "再见安打", "800102": "安息全垒打", "800103": "星尘王牌", "800104": "牵制盗垒", "800106": "攻击", "800107": "不灭三振", "800108": "全胜•再见安打", "800109": "全胜•安息全垒打", "800201": "再见安打", "800202": "安息全垒打", "800203": "星尘王牌", "800204": "牵制盗垒", "800206": "攻击", "800207": "不灭三振", "800208": "全胜•再见安打", "800209": "全胜•安息全垒打", "800301": "穿彻坚冰的烈芒", "800308": "穿彻坚冰的烈芒", "800303": "陷阵无回的炎枪", "800304": "筑城者遗宝", "800306": "攻击", "800307": "守护者召令", "800401": "穿彻坚冰的烈芒", "800408": "穿彻坚冰的烈芒", "800403": "陷阵无回的炎枪", "800404": "筑城者遗宝", "800406": "攻击", "800407": "守护者召令", "100601": "|系统警告|", "100602": "是否允许更改?", "100603": "|账号已封禁|", "100604": "等待程序响应…", "100606": "攻击", "100607": "|强制结束进程|", "120401": "石火流光", "120402": "紫霄震曜", "120403": "吾身光明", "120404": "斩勘神形", "120406": "攻击", "909807": "dev_秘技", "110603": "领域压制", "110507": "催眠研习", "800402": "炽燃不灭的琥珀", "800302": "炽燃不灭的琥珀", "120202": "祥音和韵", "120204": "紫电扶摇", "110804": "撕风的匕首", "110504": "生机焕发", "110202": "归刃", "110204": "再现", "100301": "武装调律", "100304": "乘胜追击", "100303": "天坠之火", "110701": "我也想帮上忙", "110702": "史瓦罗在看着你", "110703": "是约定不是命令", "110704": "因为我们是家人", "110706": "攻击", "110707": "胜利的小小代价", "110201": "强袭", "121104": "奔走悬壶济世长", "120407": "摄召威灵", "100407": "画地为牢", "120102": "海底捞月", "100102": "可爱即是正义", "120203": "庆云光覆仪祷", "100403": "拟似黑洞"} diff --git a/StarRailUID/utils/map/data/skillId2Name_mapping_1.1.0.json b/StarRailUID/utils/map/data/skillId2Name_mapping_1.1.0.json new file mode 100644 index 0000000..ba0a9f7 --- /dev/null +++ b/StarRailUID/utils/map/data/skillId2Name_mapping_1.1.0.json @@ -0,0 +1 @@ +{"100101": "极寒的弓矢", "100103": "冰刻箭雨之时", "100104": "少女的特权", "100106": "攻击", "100107": "冻人的瞬间", "100201": "云骑枪术•朔风", "100202": "云骑枪术•疾雨", "100203": "洞天幻化,长梦一觉", "100206": "攻击", "100301": "武装调律", "100302": "熔核爆裂", "100303": "天坠之火", "100304": "乘胜追击", "100306": "攻击", "100307": "不完全燃烧", "100401": "重力压制", "100402": "虚空断界", "100403": "拟似黑洞", "100404": "时空扭曲", "100406": "攻击", "100407": "画地为牢", "100501": "夜间喧嚣不止", "100502": "月光摩挲连绵", "100503": "悲剧尽头的颤音", "100504": "温柔亦同残酷", "100506": "攻击", "100507": "宽恕无关慈悲", "100801": "如雷疾行", "100802": "禁锢解除", "100803": "狂者制裁", "100804": "至痛至怒", "100806": "攻击", "100807": "极速收割", "100901": "光谱射线", "100902": "流星群落", "100903": "星空祝言", "100906": "攻击", "101301": "看什么看", "101302": "一锤子买卖", "101303": "是魔法,我加了魔法", "101304": "还是我来吧", "101306": "攻击", "101307": "可以优化一下", "110101": "驭风的子弹", "110102": "作战再部署", "110103": "贝洛伯格进行曲", "110104": "先人一步", "110106": "攻击", "110107": "在旗帜下", "110201": "强袭", "110202": "归刃", "110203": "乱蝶", "110204": "再现", "110206": "攻击", "110207": "幻身", "110301": "雷鸣音阶", "110302": "电光石火间", "110303": "机械热潮登场!", "110306": "攻击", "110401": "一意之拳", "110402": "震慑之击", "110403": "永屹之壁", "110404": "不屈之身", "110406": "攻击", "110407": "有情之证", "110501": "仁慈的背面", "110502": "爱,救护与抉择", "110503": "新生之礼", "110504": "生机焕发", "110506": "攻击", "110601": "冰点射击", "110602": "低温妨害", "110606": "攻击", "110701": "我也想帮上忙", "110702": "史瓦罗在看着你", "110704": "因为我们是家人", "110706": "攻击", "110707": "胜利的小小代价", "110801": "酷炫的刀花", "110802": "反复横跳的爱", "110803": "惊喜礼盒", "110804": "撕风的匕首", "110806": "攻击", "110807": "你最闪亮", "110901": "喂!小心火烛", "110902": "嘿!记得虎克吗", "110903": "轰!飞来焰火", "110904": "哈!火上浇油", "110906": "攻击", "110907": "哎!瞧这一团糟", "110909": "嘿!记得虎克吗", "120101": "门前清", "120108": "杠上开花!", "120102": "海底捞月", "120103": "四幺暗刻?和!", "120106": "攻击", "120201": "逐客令", "120204": "紫电扶摇", "120206": "攻击", "120207": "惠风和畅", "120601": "云骑剑经 • 素霓", "120602": "云骑剑经 • 山倾", "120603": "太虚形蕴 • 烛夜", "120604": "游刃若水", "120606": "攻击", "120607": "云骑剑经 • 叩阵", "120701": "流镝", "120702": "天阙鸣弦", "120703": "贯云饮羽", "120706": "攻击", "120901": "霜锋点寒芒", "120902": "遥击三尺水", "120903": "快雨燕相逐", "120906": "攻击", "120907": "御剑真诀", "121101": "望 、闻、问…蹴!", "121102": "云吟乍涌坠珠露", "121103": "匏蛟跃渊先雷音", "121104": "奔走悬壶济世长", "121106": "攻击", "121107": "徜徉灵泽病恙短", "800101": "再见安打", "800102": "安息全垒打", "800103": "星尘王牌", "800104": "牵制盗垒", "800106": "攻击", "800107": "不灭三振", "800108": "全胜•再见安打", "800109": "全胜•安息全垒打", "800201": "再见安打", "800202": "安息全垒打", "800203": "星尘王牌", "800204": "牵制盗垒", "800206": "攻击", "800207": "不灭三振", "800208": "全胜•再见安打", "800209": "全胜•安息全垒打", "800301": "穿彻坚冰的烈芒", "800308": "穿彻坚冰的烈芒", "800302": "炽燃不灭的琥珀", "800303": "陷阵无回的炎枪", "800304": "筑城者遗宝", "800306": "攻击", "800307": "守护者召令", "800401": "穿彻坚冰的烈芒", "800408": "穿彻坚冰的烈芒", "800402": "炽燃不灭的琥珀", "800403": "陷阵无回的炎枪", "800404": "筑城者遗宝", "800406": "攻击", "800407": "守护者召令", "100601": "|系统警告|", "100606": "攻击", "120401": "石火流光", "120402": "紫霄震曜", "120403": "吾身光明", "120404": "斩勘神形", "120406": "攻击", "120407": "摄召威灵", "909807": "dev_秘技", "110603": "领域压制", "120202": "祥音和韵", "110507": "催眠研习", "120302": "白花的祈望", "120303": "归葬的遂愿", "100102": "可爱即是正义", "120301": "黑渊的棘刺", "120306": "攻击", "120904": "呼剑如影", "100603": "|账号已封禁|", "120203": "庆云光覆仪祷", "100204": "寸长寸强", "100602": "是否允许更改?", "110703": "是约定不是命令", "100207": "破敌锋芒", "100604": "等待程序响应…", "100607": "|强制结束进程|", "100904": "天象学", "100907": "灵光一现", "110304": "燃情和弦", "110307": "晚安,贝洛伯格", "110604": "数据采集", "110607": "先发制人", "120104": "帝垣琼玉", "120107": "独弈之乐", "120304": "生息的轮转", "120307": "愚者的悲悯", "120704": "箭彻七札", "120707": "云鸢逐风"} diff --git a/StarRailUID/version.py b/StarRailUID/version.py index cb36810..05b754c 100644 --- a/StarRailUID/version.py +++ b/StarRailUID/version.py @@ -1,2 +1,2 @@ StarRailUID_version = '0.1.0' -StarRail_version = '1.0.5' +StarRail_version = '1.1.0'