loginBonusDb

This commit is contained in:
Remik1r3n 2025-06-11 10:01:09 +08:00
parent 31361541fd
commit 6bab65983d
4 changed files with 332 additions and 252 deletions

View File

@ -3,6 +3,9 @@
import rapidjson as json import rapidjson as json
from loguru import logger from loguru import logger
import xml.etree.ElementTree as ET
from Config import * from Config import *
from API_TitleServer import apiSDGB from API_TitleServer import apiSDGB
@ -73,22 +76,23 @@ def generateLoginBonusList(UserLoginBonusList, generateMode=1):
# アップデートがある場合、このファイルを更新する必要があります # アップデートがある場合、このファイルを更新する必要があります
# 必ず最新のデータを使用してください # 必ず最新のデータを使用してください
try: try:
with open(loginBonusDBPath, encoding='utf-8') as file: tree = ET.parse(loginBonusDBPath)
cache = json.load(file) root = tree.getroot()
loginBonusIdList = [int(item.find('id').text) for item in root.findall('.//StringID')]
logger.debug(f"ログインボーナスIDリスト: {loginBonusIdList}")
except FileNotFoundError: except FileNotFoundError:
try: try:
with open(loginBonusDBPathFallback, encoding='utf-8') as file: tree = ET.parse(loginBonusDBPathFallback)
cache = json.load(file) root = tree.getroot()
loginBonusIdList = [int(item.find('id').text) for item in root.findall('.//StringID')]
logger.debug(f"ログインボーナスIDリスト: {loginBonusIdList}")
except: except:
raise FileNotFoundError("ログインボーナスデータベースを読み込めません") raise FileNotFoundError("ログインボーナスデータベースを読み込めません")
loginBonusIdList = [item['id'] for item in cache]
logger.debug(f"ログインボーナスIDリスト: {loginBonusIdList}")
# ログインボーナスの MAX POINT は5の場合があります # ログインボーナスの MAX POINT は5の場合があります
# その全部のボーナスIDをこのリストに追加してください # その全部のボーナスIDをこのリストに追加してください
# 必ず最新のデータを使用してください # 必ず最新のデータを使用してください
Bonus5Id = [12, 29, 30, 38, 43, 604] Bonus5Id = [12, 29, 30, 38, 43, 604, 611]
# UserBonusList から bonusId を取得 # UserBonusList から bonusId を取得
UserLoginBonusIdList = [item['bonusId'] for item in UserLoginBonusList] UserLoginBonusIdList = [item['bonusId'] for item in UserLoginBonusList]

View File

@ -7,10 +7,10 @@ clientId = "A63E01E9564"
useProxy = False useProxy = False
proxyUrl = "http://100.104.133.113:33080" proxyUrl = "http://100.104.133.113:33080"
loginBonusDBPath = "./Data/loginBonusDB.json" loginBonusDBPath = "./Data/loginBonusDB.xml"
musicDBPath = "./Data/musicDB.json" musicDBPath = "./Data/musicDB.json"
loginBonusDBPathFallback = "./maimaiDX-Api/Data/loginBonusDB.json" loginBonusDBPathFallback = "./maimaiDX-Api/Data/loginBonusDB.xml"
musicDBPathFallback = "./maimaiDX-Api/Data/musicDB.json" musicDBPathFallback = "./maimaiDX-Api/Data/musicDB.json"
# 日本精工,安全防漏 # 日本精工,安全防漏

View File

@ -1,242 +0,0 @@
[
{
"id": 38,
"name": "パートナー:ずんだもん"
},
{
"id": 39,
"name": "パートナー:乙姫(ばでぃーず)"
},
{
"id": 40,
"name": "パートナー:らいむっくま&れもんっくま(ばでぃーず)"
},
{
"id": 34,
"name": "パートナー:黒姫"
},
{
"id": 24,
"name": "パートナー:ラズ(ふぇすてぃばる)"
},
{
"id": 25,
"name": "パートナー:シフォン(ふぇすてぃばる)"
},
{
"id": 26,
"name": "パートナー:ソルト(ふぇすてぃばる)"
},
{
"id": 19,
"name": "パートナー:ちびみるく"
},
{
"id": 20,
"name": "パートナー:百合咲ミカ"
},
{
"id": 8,
"name": "パートナー:しゃま(ゆにばーす)"
},
{
"id": 9,
"name": "パートナー:みるく(ゆにばーす)"
},
{
"id": 7,
"name": "パートナー:乙姫(すぷらっしゅ)"
},
{
"id": 1,
"name": "パートナー:乙姫"
},
{
"id": 2,
"name": "パートナー:ラズ"
},
{
"id": 3,
"name": "パートナー:シフォン"
},
{
"id": 4,
"name": "パートナー:ソルト"
},
{
"id": 5,
"name": "パートナー:しゃま"
},
{
"id": 6,
"name": "パートナー:みるく"
},
{
"id": 605,
"name": "でらっくす譜面oboro"
},
{
"id": 606,
"name": "でらっくす譜面:ナミダと流星"
},
{
"id": 607,
"name": "スタンダード譜面:渦状銀河のシンフォニエッタ"
},
{
"id": 508,
"name": "でらっくす譜面LatentKingdom"
},
{
"id": 41,
"name": "でらっくす譜面:初音ミクの消失"
},
{
"id": 42,
"name": "でらっくす譜面:色は匂へど散りぬるを"
},
{
"id": 601,
"name": "でらっくす譜面BULKUP(GAMEEXCLUSIVEEDIT)"
},
{
"id": 602,
"name": "でらっくす譜面MonochromeRainbow"
},
{
"id": 603,
"name": "でらっくす譜面Selector"
},
{
"id": 35,
"name": "でらっくす譜面:深海少女"
},
{
"id": 36,
"name": "でらっくす譜面:ナイト・オブ・ナイツ"
},
{
"id": 27,
"name": "でらっくす譜面M.S.S.Planet"
},
{
"id": 28,
"name": "でらっくす譜面:響縁"
},
{
"id": 501,
"name": "スタンダード譜面Halcyon"
},
{
"id": 502,
"name": "スタンダード譜面:サンバランド"
},
{
"id": 503,
"name": "でらっくす譜面StarlightDisco"
},
{
"id": 504,
"name": "でらっくす譜面:火炎地獄"
},
{
"id": 505,
"name": "スタンダード譜面VIIIbitExplorer"
},
{
"id": 506,
"name": "でらっくす譜面Maxi"
},
{
"id": 507,
"name": "でらっくす譜面ケロ⑨destiny"
},
{
"id": 21,
"name": "でらっくす譜面:セツナトリップ"
},
{
"id": 22,
"name": "でらっくす譜面Grip&Breakdown!!"
},
{
"id": 17,
"name": "でらっくす譜面:ゴーストルール"
},
{
"id": 18,
"name": "でらっくす譜面tabootearsyouup"
},
{
"id": 43,
"name": "アイコンBUDDiES"
},
{
"id": 604,
"name": "アイコンFESTiVALラズシフォンソルト"
},
{
"id": 29,
"name": "アイコンFESTiVAL"
},
{
"id": 30,
"name": "アイコンLia=Fail"
},
{
"id": 12,
"name": "アイコンUNiVERSE"
},
{
"id": 14,
"name": "ネームプレート:はっぴー(ゆにばーす)"
},
{
"id": 44,
"name": "フレームmystiqueasiris"
},
{
"id": 45,
"name": "フレームVeRForTeαRtE:VEiN"
},
{
"id": 37,
"name": "フレームTricolor⁂circuS"
},
{
"id": 31,
"name": "フレームHeavenlyBlast"
},
{
"id": 32,
"name": "フレームsølips"
},
{
"id": 33,
"name": "フレームRainbowRushStory"
},
{
"id": 23,
"name": "フレーム:ふたりでばかんすにゃ♪"
},
{
"id": 15,
"name": "フレーム:ここからはじまるプロローグ。"
},
{
"id": 16,
"name": "フレーム:モ゜ルモ゜ル"
},
{
"id": 10,
"name": "フレーム:黒姫"
},
{
"id": 11,
"name": "フレーム:百合咲ミカ"
},
{
"id": 999,
"name": "ちほー進行1.5倍チケット"
}
]

318
Data/loginBonusDB.xml Normal file
View File

@ -0,0 +1,318 @@
<?xml version="1.0" encoding="utf-8"?>
<SerializeSortData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<dataName>loginBonus</dataName>
<SortList>
<StringID>
<id>53</id>
<str>パートナー:ソルト(ぷりずむ)</str>
</StringID>
<StringID>
<id>48</id>
<str>パートナー:ラズ(ばでぃーず)</str>
</StringID>
<StringID>
<id>38</id>
<str>パートナー:ずんだもん</str>
</StringID>
<StringID>
<id>39</id>
<str>パートナー:乙姫(ばでぃーず)</str>
</StringID>
<StringID>
<id>40</id>
<str>パートナー:らいむっくま&れもんっくま(ばでぃーず)</str>
</StringID>
<StringID>
<id>34</id>
<str>パートナー:黒姫</str>
</StringID>
<StringID>
<id>24</id>
<str>パートナー:ラズ(ふぇすてぃばる)</str>
</StringID>
<StringID>
<id>25</id>
<str>パートナー:シフォン(ふぇすてぃばる)</str>
</StringID>
<StringID>
<id>26</id>
<str>パートナー:ソルト(ふぇすてぃばる)</str>
</StringID>
<StringID>
<id>19</id>
<str>パートナー:ちびみるく</str>
</StringID>
<StringID>
<id>20</id>
<str>パートナー:百合咲ミカ</str>
</StringID>
<StringID>
<id>8</id>
<str>パートナー:しゃま(ゆにばーす)</str>
</StringID>
<StringID>
<id>9</id>
<str>パートナー:みるく(ゆにばーす)</str>
</StringID>
<StringID>
<id>7</id>
<str>パートナー:乙姫(すぷらっしゅ)</str>
</StringID>
<StringID>
<id>1</id>
<str>パートナー:乙姫</str>
</StringID>
<StringID>
<id>2</id>
<str>パートナー:ラズ</str>
</StringID>
<StringID>
<id>3</id>
<str>パートナー:シフォン</str>
</StringID>
<StringID>
<id>4</id>
<str>パートナー:ソルト</str>
</StringID>
<StringID>
<id>5</id>
<str>パートナー:しゃま</str>
</StringID>
<StringID>
<id>6</id>
<str>パートナー:みるく</str>
</StringID>
<StringID>
<id>54</id>
<str>でらっくす譜面One Step Ahead</str>
</StringID>
<StringID>
<id>55</id>
<str>でらっくす譜面:天狗の落とし文 feat. </str>
</StringID>
<StringID>
<id>612</id>
<str>でらっくす譜面LANCE</str>
</StringID>
<StringID>
<id>613</id>
<str>でらっくす譜面HYP3RTRIBE</str>
</StringID>
<StringID>
<id>614</id>
<str>でらっくす譜面Imitation:Loud Lounge</str>
</StringID>
<StringID>
<id>49</id>
<str>でらっくす譜面:ハッピーシンセサイザ</str>
</StringID>
<StringID>
<id>50</id>
<str>でらっくす譜面sweet little sister</str>
</StringID>
<StringID>
<id>608</id>
<str>でらっくす譜面:御旗のもとに</str>
</StringID>
<StringID>
<id>609</id>
<str>でらっくす譜面:炎歌 -ほむらうた-</str>
</StringID>
<StringID>
<id>610</id>
<str>でらっくす譜面:華の集落、秋のお届け</str>
</StringID>
<StringID>
<id>605</id>
<str>でらっくす譜面oboro</str>
</StringID>
<StringID>
<id>606</id>
<str>でらっくす譜面:ナミダと流星</str>
</StringID>
<StringID>
<id>607</id>
<str>スタンダード譜面:渦状銀河のシンフォニエッタ</str>
</StringID>
<StringID>
<id>508</id>
<str>でらっくす譜面Latent Kingdom</str>
</StringID>
<StringID>
<id>41</id>
<str>でらっくす譜面:初音ミクの消失</str>
</StringID>
<StringID>
<id>42</id>
<str>でらっくす譜面:色は匂へど散りぬるを</str>
</StringID>
<StringID>
<id>601</id>
<str>でらっくす譜面BULK UP (GAME EXCLUSIVE EDIT)</str>
</StringID>
<StringID>
<id>602</id>
<str>でらっくす譜面Monochrome Rainbow</str>
</StringID>
<StringID>
<id>603</id>
<str>でらっくす譜面Selector</str>
</StringID>
<StringID>
<id>35</id>
<str>でらっくす譜面:深海少女</str>
</StringID>
<StringID>
<id>36</id>
<str>でらっくす譜面:ナイト・オブ・ナイツ</str>
</StringID>
<StringID>
<id>27</id>
<str>でらっくす譜面M.S.S.Planet</str>
</StringID>
<StringID>
<id>28</id>
<str>でらっくす譜面:響縁</str>
</StringID>
<StringID>
<id>501</id>
<str>スタンダード譜面Halcyon</str>
</StringID>
<StringID>
<id>502</id>
<str>スタンダード譜面:サンバランド</str>
</StringID>
<StringID>
<id>503</id>
<str>でらっくす譜面Starlight Disco</str>
</StringID>
<StringID>
<id>504</id>
<str>でらっくす譜面:火炎地獄</str>
</StringID>
<StringID>
<id>505</id>
<str>スタンダード譜面VIIIbit Explorer</str>
</StringID>
<StringID>
<id>506</id>
<str>でらっくす譜面Maxi</str>
</StringID>
<StringID>
<id>507</id>
<str>でらっくす譜面ケロ⑨destiny</str>
</StringID>
<StringID>
<id>21</id>
<str>でらっくす譜面:セツナトリップ</str>
</StringID>
<StringID>
<id>22</id>
<str>でらっくす譜面Grip &amp; Break down !!</str>
</StringID>
<StringID>
<id>17</id>
<str>でらっくす譜面:ゴーストルール</str>
</StringID>
<StringID>
<id>18</id>
<str>でらっくす譜面taboo tears you up</str>
</StringID>
<StringID>
<id>56</id>
<str>アイコンPRiSM</str>
</StringID>
<StringID>
<id>611</id>
<str>アイコンBUDDiES 乙姫&ラズ</str>
</StringID>
<StringID>
<id>43</id>
<str>アイコンBUDDiES</str>
</StringID>
<StringID>
<id>604</id>
<str>アイコンFESTiVAL ラズ&シフォン&ソルト</str>
</StringID>
<StringID>
<id>29</id>
<str>アイコンFESTiVAL</str>
</StringID>
<StringID>
<id>30</id>
<str>アイコンLia=Fail</str>
</StringID>
<StringID>
<id>12</id>
<str>アイコンUNiVERSE</str>
</StringID>
<StringID>
<id>57</id>
<str>ネームプレートQuiQ</str>
</StringID>
<StringID>
<id>51</id>
<str>ネームプレートSwift Swing</str>
</StringID>
<StringID>
<id>14</id>
<str>ネームプレート:はっぴー(ゆにばーす)</str>
</StringID>
<StringID>
<id>58</id>
<str>フレームValsqotch</str>
</StringID>
<StringID>
<id>52</id>
<str>フレームLatent Kingdom</str>
</StringID>
<StringID>
<id>44</id>
<str>フレームmystique as iris</str>
</StringID>
<StringID>
<id>45</id>
<str>フレームVeRForTe αRtE:VEiN</str>
</StringID>
<StringID>
<id>37</id>
<str>フレームTricolor⁂circuS</str>
</StringID>
<StringID>
<id>31</id>
<str>フレームHeavenly Blast</str>
</StringID>
<StringID>
<id>32</id>
<str>フレームsølips</str>
</StringID>
<StringID>
<id>33</id>
<str>フレームRainbow Rush Story</str>
</StringID>
<StringID>
<id>23</id>
<str>フレーム:ふたりでばかんすにゃ♪</str>
</StringID>
<StringID>
<id>15</id>
<str>フレーム:ここからはじまるプロローグ。</str>
</StringID>
<StringID>
<id>16</id>
<str>フレーム:モ゜ルモ゜ル</str>
</StringID>
<StringID>
<id>10</id>
<str>フレーム:黒姫</str>
</StringID>
<StringID>
<id>11</id>
<str>フレーム:百合咲ミカ</str>
</StringID>
<StringID>
<id>999</id>
<str>ちほー進行1.5倍チケット</str>
</StringID>
</SortList>
</SerializeSortData>