commit 7b648b8ee87007456fc0321f7d667654d2143f2c Author: Wuyi无疑 <444835641@qq.com> Date: Wed Mar 1 23:16:36 2023 +0800 🎉 `v4`分支启动,需结合`core`使用 diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..97f40118 --- /dev/null +++ b/.gitignore @@ -0,0 +1,682 @@ + +# Created by https://www.toptal.com/developers/gitignore/api/visualstudio,visualstudiocode,jetbrains+all,python +# Edit at https://www.toptal.com/developers/gitignore?templates=visualstudio,visualstudiocode,jetbrains+all,python + +### JetBrains+all ### +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# AWS User-specific +.idea/**/aws.xml + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/artifacts +# .idea/compiler.xml +# .idea/jarRepositories.xml +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# SonarLint plugin +.idea/sonarlint/ + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +### JetBrains+all Patch ### +# Ignore everything but code style settings and run configurations +# that are supposed to be shared within teams. + +.idea/* + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/#use-with-ide +.pdm.toml + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env/ +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +### VisualStudioCode ### +!.vscode/* + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +# Support for Project snippet scope +.vscode/*.code-snippets + +# Ignore code-workspaces +*.code-workspace + +### VisualStudio ### +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.tlog +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio 6 auto-generated project file (contains which files were open etc.) +*.vbp + +# Visual Studio 6 workspace and project file (working project files containing files to include in project) +*.dsw +*.dsp + +# Visual Studio 6 technical files + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# Visual Studio History (VSHistory) files +.vshistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd + +# VS Code files for those working on multiple tools + +# Local History for Visual Studio Code + +# Windows Installer files from build outputs +*.cab +*.msi +*.msix +*.msm +*.msp + +# JetBrains Rider +*.sln.iml + +### VisualStudio Patch ### +# Additional files built by Visual Studio + +# End of https://www.toptal.com/developers/gitignore/api/visualstudio,visualstudiocode,jetbrains+all,python,data + +### CI ### +result.txt + +### GenshinUID ### +GenshinUID/genshinuid_help/help.png +GenshinUID/genshinuid_map/map_data +GenshinUID/genshinuid_xkdata/abyss_total.png +成就汇总.xlsx +ReliquaryExcelConfigData.json +AvatarSkillExcelConfigData.json +WeaponExcelConfigData.json +AvatarTalentExcelConfigData.json +AvatarExcelConfigData.json +曲线素材.xlsx +参考面板.xlsx + +### Debug ### +testnb2/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 00000000..159ef5df --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,37 @@ +ci: + autofix_commit_msg: "🚨 `pre-commit-ci`修复格式错误" + skip: + - "poetry-lock" + autofix_prs: true + autoupdate_branch: v4 + autoupdate_schedule: monthly + autoupdate_commit_msg: "⬆️ `pre-commit-ci`自动升级" +repos: + - repo: https://github.com/pycqa/isort + rev: 5.11.5 + hooks: + - id: isort + + - repo: https://github.com/psf/black + rev: 22.6.0 + hooks: + - id: black + + - repo: https://github.com/pycqa/flake8 + rev: 5.0.4 + hooks: + - id: flake8 + + - repo: https://github.com/hadialqattan/pycln + rev: v2.1.2 + hooks: + - id: pycln + + - repo: https://github.com/python-poetry/poetry + rev: 1.3.1 + hooks: + - id: poetry-check + - id: poetry-lock + - id: poetry-export + args: ["-f", "requirements.txt", "--without-hashes", "-o", "requirements.txt"] + verbose: true diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 00000000..60213297 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,8 @@ +{ + "recommendations": [ + "ms-python.python", + "ms-python.vscode-pylance", + "ms-python.isort", + "ms-python.black-formatter" + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..26934ad2 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,26 @@ +{ + "python.languageServer": "Pylance", + "python.analysis.typeCheckingMode": "basic", + "cSpell.words": [ + "enka", + "genshin", + "genshinuid" + ], + "editor.formatOnSave": true, + "[python]": { + "editor.defaultFormatter": "ms-python.black-formatter", + "editor.formatOnSave": true, + "editor.codeActionsOnSave": { + "source.organizeImports": true + } + }, + "isort.args": [ + "--profile", + "black" + ], + "python.formatting.provider": "black", + "python.linting.flake8Enabled": true, + "python.linting.flake8CategorySeverity.W": "Warning", + "python.linting.flake8CategorySeverity.F": "Warning", + "python.linting.flake8CategorySeverity.E": "Warning", +} diff --git a/GenshinUID/__full__.py b/GenshinUID/__full__.py new file mode 100644 index 00000000..e69de29b diff --git a/GenshinUID/genshinuid_abyss/__init__.py b/GenshinUID/genshinuid_abyss/__init__.py new file mode 100644 index 00000000..fc10ffbf --- /dev/null +++ b/GenshinUID/genshinuid_abyss/__init__.py @@ -0,0 +1,39 @@ +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event + +from ..utils.convert import get_uid +from ..utils.error_reply import UID_HINT +from .draw_abyss_card import draw_abyss_img + + +@SV('查询深渊').on_prefix(('查询深渊', 'sy', '查询上期深渊', 'sqsy')) +async def send_abyss_info(bot: Bot, ev: Event): + await bot.logger.info('开始执行[查询深渊信息]') + uid = await get_uid(bot, ev) + if uid is None: + return await bot.send(UID_HINT) + await bot.logger.info('[查询深渊信息]uid: {}'.format(uid)) + + if 'sq' in ev.command or '上期' in ev.command: + schedule_type = '2' + else: + schedule_type = '1' + await bot.logger.info('[查询深渊信息]深渊期数: {}'.format(schedule_type)) + + if ev.text in ['九', '十', '十一', '十二']: + floor = ( + ev.text.replace('九', '9') + .replace('十一', '11') + .replace('十二', '12') + .replace('十', '10') + ) + else: + floor = ev.text + if floor is not None: + floor = int(floor) + + await bot.logger.info('[查询深渊信息]深渊层数: {}'.format(floor)) + + im = await draw_abyss_img(uid, floor, schedule_type) + await bot.send(im) diff --git a/GenshinUID/genshinuid_abyss/draw_abyss_card.py b/GenshinUID/genshinuid_abyss/draw_abyss_card.py new file mode 100644 index 00000000..a3f42002 --- /dev/null +++ b/GenshinUID/genshinuid_abyss/draw_abyss_card.py @@ -0,0 +1,315 @@ +import time +import asyncio +from pathlib import Path +from typing import Union, Optional + +from nonebot.log import logger +from PIL import Image, ImageDraw + +from ..utils.convert import GsCookie +from ..utils.image.convert import convert_img +from ..utils.image.image_tools import get_simple_bg +from ..utils.resource.download_url import download_file +from ..gsuid_utils.api.mys.models import AbyssBattleAvatar +from ..utils.fonts.genshin_fonts import genshin_font_origin +from ..utils.resource.RESOURCE_PATH import ( + CHAR_PATH, + TEXT2D_PATH, + CHAR_SIDE_PATH, + CHAR_STAND_PATH, +) + +TEXT_PATH = Path(__file__).parent / 'texture2D' +TALENT_PATH = TEXT2D_PATH / 'talent' + +abyss_title_pic = Image.open(TEXT_PATH / 'abyss_title.png') +char_mask = Image.open(TEXT_PATH / 'char_mask.png') +char_frame = Image.open(TEXT_PATH / 'char_frame.png') + +text_title_color = (29, 29, 29) +text_floor_color = (30, 31, 25) + +genshin_font_70 = genshin_font_origin(70) +genshin_font_32 = genshin_font_origin(32) +genshin_font_27 = genshin_font_origin(27) + + +async def get_abyss_star_pic(star: int) -> Image.Image: + star_pic = Image.open(TEXT_PATH / f'star{star}.png') + return star_pic + + +async def get_rarity_pic(rarity: int) -> Image.Image: + rarity_pic = Image.open(TEXT_PATH / f'rarity{rarity}.png') + return rarity_pic + + +async def get_talent_pic(talent: int) -> Image.Image: + return Image.open(TALENT_PATH / f'talent_{talent}.png') + + +async def get_rank_data(data, path): + char_id = data[0]['avatar_id'] + # 只下载侧视图 + if path == CHAR_SIDE_PATH: + # 确认角色头像路径 + char_side_path = CHAR_PATH / f'{char_id}.png' + # 不存在自动下载 + if not char_side_path.exists(): + await download_file(data[0]['avatar_icon'], 3, f'{char_id}.png') + char_pic = Image.open(path / f'{char_id}.png').convert('RGBA') + if path == CHAR_STAND_PATH: + char_pic = char_pic.resize((862, 528), Image.Resampling.BICUBIC) + elif path == CHAR_SIDE_PATH: + char_pic = char_pic.resize((60, 60), Image.Resampling.BICUBIC) + rank_value = str(data[0]['value']) + return char_pic, rank_value + + +async def _draw_abyss_card( + char: AbyssBattleAvatar, + talent_num: str, + floor_pic: Image.Image, + index_char: int, + index_part: int, +): + char_card = Image.new('RGBA', (150, 190), (0, 0, 0, 0)) + # 根据稀有度获取背景 + char_bg = await get_rarity_pic(char['rarity']) + # 确认角色头像路径 + char_pic_path = CHAR_PATH / f'{char["id"]}.png' + # 不存在自动下载 + if not char_pic_path.exists(): + await download_file(char['icon'], 1, f'{char["id"]}.png') + char_pic = ( + Image.open(char_pic_path) + .convert('RGBA') + .resize((150, 150), Image.Resampling.LANCZOS) # type: ignore + ) + char_img = Image.new('RGBA', (150, 190), (0, 0, 0, 0)) + char_img.paste(char_pic, (0, 3), char_pic) + char_bg = Image.alpha_composite(char_bg, char_img) + char_card.paste(char_bg, (0, 0), char_mask) + char_card = Image.alpha_composite(char_card, char_frame) + talent_pic = await get_talent_pic(int(talent_num)) + char_card.paste(talent_pic, (83, 156), talent_pic) + char_card_draw = ImageDraw.Draw(char_card) + char_card_draw.text( + (9, 172), + f'Lv.{char["level"]}', + font=genshin_font_27, + fill=text_floor_color, + anchor='lm', + ) + floor_pic.paste( + char_card, + (0 + 155 * index_char, 50 + index_part * 195), + char_card, + ) + + +async def _draw_floor_card( + level_star: int, + floor_pic: Image.Image, + bg_img: Image.Image, + time_str: str, + index_floor: int, +): + star_pic = await get_abyss_star_pic(level_star) + floor_pic.paste(star_pic, (420, -5), star_pic) + floor_pic_draw = ImageDraw.Draw(floor_pic) + floor_pic_draw.text( + (31, 25), + time_str, + font=genshin_font_27, + fill=text_floor_color, + anchor='lm', + ) + bg_img.paste(floor_pic, (5, 415 + index_floor * 440), floor_pic) + + +async def draw_abyss_img( + uid: str, + floor: Optional[int] = None, + schedule_type: str = '1', +) -> Union[bytes, str]: + + # 获取Cookies + data = GsCookie() + retcode = await data.get_cookie(uid) + if retcode: + return retcode + raw_data = data.raw_data + raw_abyss_data = await data.get_spiral_abyss_data(schedule_type) + + # 获取数据 + if not raw_abyss_data: + return '没有获取到深渊数据' + if raw_data: + char_data = raw_data['avatars'] + else: + return '没有获取到角色数据' + char_temp = {} + + # 获取查询者数据 + is_unfull = False + if floor: + floor = floor - 9 + if floor < 0: + return '楼层不能小于9层!' + if len(raw_abyss_data['floors']) >= floor + 1: + floors_data = raw_abyss_data['floors'][floor] + else: + return '你还没有挑战该层!' + else: + if len(raw_abyss_data['floors']) == 0: + return '你还没有挑战本期深渊!\n可以使用[上期深渊]命令查询上期~' + floors_data = raw_abyss_data['floors'][-1] + levels_num = len(floors_data['levels']) + if floors_data['levels'][0]['battles']: + floors_title = str(floors_data['index']) + '层' + else: + floors_title = '统计' + is_unfull = True + + # 获取背景图片各项参数 + based_w = 625 + based_h = 415 if is_unfull else 415 + levels_num * 440 + white_overlay = Image.new('RGBA', (based_w, based_h), (255, 255, 255, 188)) + + bg_img = await get_simple_bg(based_w, based_h) + bg_img.paste(white_overlay, (0, 0), white_overlay) + + abyss_title = Image.new('RGBA', (625, 415), (0, 0, 0, 0)) + + damage_rank = raw_abyss_data['damage_rank'] + defeat_rank = raw_abyss_data['defeat_rank'] + take_damage_rank = raw_abyss_data['take_damage_rank'] + normal_skill_rank = raw_abyss_data['normal_skill_rank'] + energy_skill_rank = raw_abyss_data['energy_skill_rank'] + + dmg_pic, dmg_val = await get_rank_data(damage_rank, CHAR_STAND_PATH) + defeat_pic, defeat_val = await get_rank_data(defeat_rank, CHAR_SIDE_PATH) + ( + take_damage_pic, + take_damage_val, + ) = await get_rank_data(take_damage_rank, CHAR_SIDE_PATH) + ( + normal_skill_pic, + normal_skill_val, + ) = await get_rank_data(normal_skill_rank, CHAR_SIDE_PATH) + ( + energy_skill_pic, + energy_skill_val, + ) = await get_rank_data(energy_skill_rank, CHAR_SIDE_PATH) + + abyss_title.paste(dmg_pic, (13, -42), dmg_pic) + abyss_title = Image.alpha_composite(abyss_title, abyss_title_pic) + abyss_title.paste(defeat_pic, (5, 171), defeat_pic) + abyss_title.paste(take_damage_pic, (5, 171 + 54), take_damage_pic) + abyss_title.paste(normal_skill_pic, (5, 171 + 54 * 2), normal_skill_pic) + abyss_title.paste(energy_skill_pic, (5, 171 + 54 * 3), energy_skill_pic) + + abyss_title_draw = ImageDraw.Draw(abyss_title) + abyss_title_draw.text( + (41, 95), + f'深渊{floors_title}', + font=genshin_font_70, + fill=text_title_color, + anchor='lm', + ) + abyss_title_draw.text( + (41, 139), + f'UID{uid}', + font=genshin_font_27, + fill=text_title_color, + anchor='lm', + ) + abyss_title_draw.text( + (610, 282), + dmg_val, + font=genshin_font_32, + fill=text_title_color, + anchor='rm', + ) + abyss_title_draw.text( + (610, 357), + str(raw_abyss_data['total_battle_times']), + font=genshin_font_32, + fill=text_title_color, + anchor='rm', + ) + abyss_title_draw.text( + (64, 217), + defeat_val, + font=genshin_font_27, + fill=text_title_color, + anchor='lm', + ) + abyss_title_draw.text( + (64, 217 + 54), + take_damage_val, + font=genshin_font_27, + fill=text_title_color, + anchor='lm', + ) + abyss_title_draw.text( + (64, 217 + 54 * 2), + normal_skill_val, + font=genshin_font_27, + fill=text_title_color, + anchor='lm', + ) + abyss_title_draw.text( + (64, 217 + 54 * 3), + energy_skill_val, + font=genshin_font_27, + fill=text_title_color, + anchor='lm', + ) + + bg_img.paste(abyss_title, (0, 0), abyss_title) + if is_unfull: + pass + else: + task = [] + for index_floor, level in enumerate(floors_data['levels']): + floor_pic = Image.new('RGBA', (615, 440), (0, 0, 0, 0)) + level_star = level['star'] + timestamp = int(level['battles'][0]['timestamp']) + time_array = time.localtime(timestamp) + time_str = time.strftime('%Y-%m-%d %H:%M:%S', time_array) + for index_part, battle in enumerate(level['battles']): + for index_char, char in enumerate(battle['avatars']): + # 获取命座 + if char["id"] in char_temp: + talent_num = char_temp[char["id"]] + else: + for i in char_data: + if i["id"] == char["id"]: + talent_num = str( + i["actived_constellation_num"] + ) + char_temp[char["id"]] = talent_num + break + task.append( + _draw_abyss_card( + char, + talent_num, # type: ignore + floor_pic, + index_char, + index_part, + ) + ) + await asyncio.gather(*task) + task.clear() + task.append( + _draw_floor_card( + level_star, floor_pic, bg_img, time_str, index_floor + ) + ) + await asyncio.gather(*task) + + res = await convert_img(bg_img) + logger.info('[查询深渊信息]绘图已完成,等待发送!') + return res diff --git a/GenshinUID/genshinuid_abyss/texture2D/abyss_title.png b/GenshinUID/genshinuid_abyss/texture2D/abyss_title.png new file mode 100644 index 00000000..5b979ee6 Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/abyss_title.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/char_frame.png b/GenshinUID/genshinuid_abyss/texture2D/char_frame.png new file mode 100644 index 00000000..e660b49b Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/char_frame.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/char_mask.png b/GenshinUID/genshinuid_abyss/texture2D/char_mask.png new file mode 100644 index 00000000..35c90ad8 Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/char_mask.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/rarity4.png b/GenshinUID/genshinuid_abyss/texture2D/rarity4.png new file mode 100644 index 00000000..05aaf03f Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/rarity4.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/rarity5.png b/GenshinUID/genshinuid_abyss/texture2D/rarity5.png new file mode 100644 index 00000000..4c90d3a8 Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/rarity5.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/star0.png b/GenshinUID/genshinuid_abyss/texture2D/star0.png new file mode 100644 index 00000000..24566a6e Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/star0.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/star1.png b/GenshinUID/genshinuid_abyss/texture2D/star1.png new file mode 100644 index 00000000..c6983882 Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/star1.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/star2.png b/GenshinUID/genshinuid_abyss/texture2D/star2.png new file mode 100644 index 00000000..6c1091da Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/star2.png differ diff --git a/GenshinUID/genshinuid_abyss/texture2D/star3.png b/GenshinUID/genshinuid_abyss/texture2D/star3.png new file mode 100644 index 00000000..18fe43c3 Binary files /dev/null and b/GenshinUID/genshinuid_abyss/texture2D/star3.png differ diff --git a/GenshinUID/genshinuid_achievement/__init__.py b/GenshinUID/genshinuid_achievement/__init__.py new file mode 100644 index 00000000..26a3db7a --- /dev/null +++ b/GenshinUID/genshinuid_achievement/__init__.py @@ -0,0 +1,19 @@ +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event + +from .get_achi_desc import get_achi, get_daily_achi + + +@SV('成就委托查询').on_prefix('查委托') +async def send_task_info(bot: Bot, ev: Event): + await bot.logger.info(f'[查委托] 参数:{ev.text}') + im = await get_daily_achi(ev.text) + await bot.send(im) + + +@SV('成就委托查询').on_prefix('查成就') +async def send_achi_info(bot: Bot, ev: Event): + await bot.logger.info(f'[查成就] 参数:{ev.text}') + im = await get_achi(ev.text) + await bot.send(im) diff --git a/GenshinUID/genshinuid_achievement/all_achi.json b/GenshinUID/genshinuid_achievement/all_achi.json new file mode 100644 index 00000000..242c075e --- /dev/null +++ b/GenshinUID/genshinuid_achievement/all_achi.json @@ -0,0 +1,4388 @@ +{ + "妖鬼狂言百物语": { + "book": "天地万象", + "desc": "集齐全套《鹮巷物语》。", + "guide": "《鹮巷物语·五》只能在钓鱼中获得,依旧是10张\n全60残页*视频地址(点击自动跳转):\nhttps://www.bilibili.com/video/BV1Tf4y1n7R8?p=1", + "link": "https://www.bilibili.com/video/BV1Tf4y1n7R8?spm_id_from=333.999.0.0" + }, + "动物园大亨": { + "book": "天地万象", + "desc": "使用道具「四方八方之网」捕获100只野外生物。", + "guide": null, + "link": "" + }, + "昨日重现": { + "book": "天地万象", + "desc": "通过「千籁至音」系列摆设在尘歌壶内激活60首旋律。", + "guide": "日常购买+新增24个掉落", + "link": "" + }, + "俯瞰风景": { + "book": "天地万象", + "desc": "抵达庆云顶的制高点。", + "guide": null, + "link": "" + }, + "烈风的遗骨": { + "book": "天地万象", + "desc": "登上风龙废墟的高塔顶端。", + "guide": null, + "link": "" + }, + "「风带来了故事的种子…」": { + "book": "天地万象", + "desc": "到达蒙德东北方的无名小岛。", + "guide": null, + "link": "" + }, + "矢志不渝": { + "book": "天地万象", + "desc": "开启爱心形石阵中央的宝箱。", + "guide": null, + "link": "" + }, + "启动跃迁引擎!": { + "book": "天地万象", + "desc": "穿越誓言岬上空的时空隧道。", + "guide": null, + "link": "" + }, + "风神的宠儿": { + "book": "天地万象", + "desc": "在蒙德城内的神像手中坐下。", + "guide": null, + "link": "" + }, + "冢里最好的剑": { + "book": "天地万象", + "desc": "解开剑冢的三层封印。", + "guide": "《探索剑冢封印》", + "link": "" + }, + "华清归藏密宫": { + "book": "天地万象", + "desc": "循着长存者之迹,叩开了秘境之门。", + "guide": null, + "link": "" + }, + "塞西莉亚苗圃": { + "book": "天地万象", + "desc": "帮助仙灵归位,解锁奔狼领内的秘境入口。", + "guide": null, + "link": "" + }, + "无妄引咎密宫": { + "book": "天地万象", + "desc": "跟随仙灵点燃火光,解锁无妄坡内的秘境入口。", + "guide": null, + "link": "" + }, + "「只要用心…」": { + "book": "天地万象", + "desc": "烹饪1道口味奇怪的料理。", + "guide": "料理失败获得", + "link": "" + }, + "「…人人都是食神。」": { + "book": "天地万象", + "desc": "烹饪10道口味奇怪的料理。", + "guide": "~", + "link": "" + }, + "十岁差点打倒野猪": { + "book": "天地万象", + "desc": "被野猪击败。", + "guide": "角色残血状态被野猪(雪山的猪不行)撞死即可", + "link": "" + }, + "金牌飞行执照": { + "book": "天地万象", + "desc": "一次滑翔很远、很远的距离。", + "guide": null, + "link": "" + }, + "「在空中飞行程度的能力」": { + "book": "天地万象", + "desc": "持续滑翔超过80秒。", + "guide": null, + "link": "" + }, + "如光似电": { + "book": "天地万象", + "desc": "持续冲刺或使用替代冲刺的能力,移动15秒。", + "guide": "原神 1.0 时期曾用名:奔跑吧!梅洛斯", + "link": "" + }, + "朋友遍天下": { + "book": "天地万象", + "desc": "在冒险中,与各种各样的人相识。", + "guide": "根据解包,达成条件是累计 10000 次对话,但对话的次数怎么算的并不清楚\nPS:不一定是找 NPC 对话,你找合成台对话也算次数", + "link": "" + }, + "威遍风土": { + "book": "天地万象", + "desc": "蒙德的声望等级达到8级。", + "guide": null, + "link": "" + }, + "名震云来": { + "book": "天地万象", + "desc": "璃月的声望等级达到8级。", + "guide": null, + "link": "" + }, + "布武雷国": { + "book": "天地万象", + "desc": "稻妻的声望等级达到10级。", + "guide": null, + "link": "" + }, + "QUEST CLEAR": { + "book": "天地万象", + "desc": "完成30次「讨伐悬赏」。", + "guide": null, + "link": "" + }, + "见习勇者": { + "book": "天地万象", + "desc": "完成30次「居民请求」。", + "guide": null, + "link": "" + }, + "QUEST FAILED": { + "book": "天地万象", + "desc": "跟丢了悬赏目标…", + "guide": "讨伐悬赏失败即可", + "link": "" + }, + "多冷的隆冬": { + "book": "天地万象", + "desc": "因为严寒而倒下…", + "guide": null, + "link": "" + }, + "祭司、公主与记事者": { + "book": "天地万象", + "desc": "获得雪葬之都的宝物。", + "guide": "雪山 3 个宝匣的解密", + "link": "" + }, + "逆子的归乡": { + "book": "天地万象", + "desc": "循着过去的考察队中某人的路径,抵达他启程返乡的地方。", + "guide": "雪山 3 个残旧的记事", + "link": "" + }, + "千年雪藏的事": { + "book": "天地万象", + "desc": "了解过去一支雪山考察队的结局。", + "guide": "《覆雪之国》", + "link": "" + }, + "冰冷的钢铁": { + "book": "天地万象", + "desc": "获得星银铸造的古代武器。", + "guide": "雪山剧情解锁获得,而不是自己锻造雪葬的星银", + "link": "" + }, + "无果的远征": { + "book": "天地万象", + "desc": "发现很多遗迹机器的遗骸…", + "guide": "雪山 9 个遗迹守卫的记录", + "link": "" + }, + "没能讲出的故事": { + "book": "天地万象", + "desc": "在意想不到之处,结识了意想不到的朋友。", + "guide": "雪山喂狐狸拿到宝箱", + "link": "" + }, + "一览众山小": { + "book": "天地万象", + "desc": "抵达龙脊雪山的最高峰。", + "guide": null, + "link": "" + }, + "一个冬天的童话": { + "book": "天地万象", + "desc": "在雪堆下发现了冰晶蝶。", + "guide": null, + "link": "" + }, + "猎人变成了猎物": { + "book": "天地万象", + "desc": "被大雪猪王击败。", + "guide": null, + "link": "" + }, + "冷静点!": { + "book": "天地万象", + "desc": "击败处于狂暴状态下的大雪猪王。", + "guide": null, + "link": "" + }, + "「一口吃掉了几十万摩拉!」": { + "book": "天地万象", + "desc": "掌握「稠汁蔬菜炖肉」的制作方法。", + "guide": "《啊,新鲜的肉!》", + "link": "" + }, + "天雷圣裁": { + "book": "天地万象", + "desc": "被落雷击中。", + "guide": null, + "link": "" + }, + "接近天空的地方…": { + "book": "天地万象", + "desc": "登上复原后的寒天之钉。", + "guide": null, + "link": "" + }, + "嬗变核素": { + "book": "天地万象", + "desc": "利用「参量质变仪」,完成一次物质质变。", + "guide": null, + "link": "" + }, + "…你其实听得见吧?": { + "book": "天地万象", + "desc": "派蒙也会累的。", + "guide": "彩蛋级成就,在游戏设置里打开声音,疯狂拖动音量调节5次并听完派蒙说话。", + "link": "" + }, + "哟嚯嚯,再来瓶蒲公英酒": { + "book": "天地万象", + "desc": "登上「浪船」。", + "guide": null, + "link": "" + }, + "「乘风破浪真君」": { + "book": "天地万象", + "desc": "持续搭乘「浪船」达到一定时间。", + "guide": "大概是 180 秒", + "link": "" + }, + "Nice boat!": { + "book": "天地万象", + "desc": "与其他玩家交换「浪船」。", + "guide": null, + "link": "" + }, + "…其名为「玛丽·塞勒斯特」": { + "book": "天地万象", + "desc": "「浪船」被破坏了…", + "guide": null, + "link": "" + }, + "Deja Vu!": { + "book": "天地万象", + "desc": "持续高速行驶「浪船」达到一定时间。", + "guide": null, + "link": "" + }, + "山田五的木槌": { + "book": "天地万象", + "desc": "多次识破妖狸的法术。", + "guide": "累计做 15 次。同一个地点的妖狸可重复计算,12 小时刷新。", + "link": "" + }, + "「鲸井御殿流手鞠术」": { + "book": "天地万象", + "desc": "陪鲸井小弟玩「手鞠游戏」。", + "guide": "《「手鞠游戏」》", + "link": "" + }, + "本朝手鞠戏小传": { + "book": "天地万象", + "desc": "其他玩家参加了你所设置的「手鞠游戏」。", + "guide": null, + "link": "" + }, + "派蒙的幸运日!": { + "book": "天地万象", + "desc": "在鸣神大社,抽中「大吉」的签文。", + "guide": "欧皇试炼!吉4种:大吉、中吉、末吉、吉;(大吉很好出,统计概率50%概率)", + "link": "" + }, + "诸事不宜…": { + "book": "天地万象", + "desc": "在鸣神大社,抽中「大凶」的签文。", + "guide": "欧皇试炼!凶2种:大凶、凶。(大凶非常难出,统计概率不到10%)", + "link": "" + }, + "地宫传奇…才怪咧!": { + "book": "天地万象", + "desc": "发掘失落记忆的冒险本身,又何尝不是宝藏呢?", + "guide": "《农民的宝藏》:在刃连岛救了被锁在牢笼里的人后触发任务,完成任务后拿到成就", + "link": "" + }, + "SYUUMATSU GAIDEN": { + "book": "天地万象", + "desc": "被卷入终末番与愚人众的战斗中…", + "guide": "这个成就在 2.4 版本终于实装了\n去荒海传送点右边的愚人众营地捡到纸条,之后抽完签找玄冬林檎对暗号,要做 4 天才能触发最终剧情\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Am4y1D7Xa/" + }, + "岩藏武艺帐": { + "book": "天地万象", + "desc": "见证岩藏流的末路。", + "guide": "击败所有的岩藏流后人", + "link": "" + }, + "开门放狗": { + "book": "天地万象", + "desc": "解放寅太郎。", + "guide": "在刃连岛找到钥匙后,“开门放狗”", + "link": "" + }, + "情非得已": { + "book": "天地万象", + "desc": "打开广海的心结。", + "guide": "《广海的守望》", + "link": "" + }, + "不再变老": { + "book": "天地万象", + "desc": "向殁者献上花束。", + "guide": null, + "link": "" + }, + "为人的条件?": { + "book": "天地万象", + "desc": "见证武士的宿命。", + "guide": "《武者的宿命》", + "link": "" + }, + "无灵魂处的灵魂": { + "book": "天地万象", + "desc": "找到鹫津的遗物。", + "guide": "《险恶的教喻》", + "link": "" + }, + "荒岛朝圣指南": { + "book": "天地万象", + "desc": "找到八酝岛所有的神龛。", + "guide": null, + "link": "" + }, + "三千里的起点": { + "book": "天地万象", + "desc": "在踏鞴砂和鸣神岛找到长次。", + "guide": "《执望三千里》后续", + "link": "" + }, + "游医的奥德赛": { + "book": "天地万象", + "desc": "见证保本的结局。", + "guide": "完成《孤岛诊疗谭》后在篮子里每天交付一次鸣草,第四天跟着元素视野找到 3 个纸条后拿到成就", + "link": "" + }, + "「Knock Knock」": { + "book": "天地万象", + "desc": "打开「御影炉心」周围的护罩。", + "guide": "《踏鞴物语》", + "link": "" + }, + "神无冢作战计划": { + "book": "天地万象", + "desc": "打倒复苏的「无相之雷」。", + "guide": "《医樱》", + "link": "" + }, + "挥刀的理由": { + "book": "天地万象", + "desc": "让「公义」恢复清醒。", + "guide": "《刀剑成梦》", + "link": "" + }, + "大业物": { + "book": "天地万象", + "desc": "挑战并轻松击败「公义」。", + "guide": "完成《刀剑成梦》后再次挑战「公义」,并在 30 秒内击败,可无限挑战。\n游戏内时间凌晨 0-2 点公义会进入强化状态,不建议在那个时间点去挑战", + "link": "" + }, + "重开之花": { + "book": "天地万象", + "desc": "获得叶名山薰的赠礼。", + "guide": "完成《踏鞴物语·终幕》且在阿敬处开宝箱拿到“一袋花种”后,与叶名山薰对话,进行到第三天可以拿到成就", + "link": "" + }, + "承蒙惠顾": { + "book": "天地万象", + "desc": "获得阿敬的宝箱里的大奖。", + "guide": "大奖是锻造武器破魔之弓的图纸", + "link": "" + }, + "雷之祸乱": { + "book": "天地万象", + "desc": "因为「雷祸」的伤害而倒下…", + "guide": null, + "link": "" + }, + "框架外收获": { + "book": "天地万象", + "desc": "用「神居岛崩炮」轰开一处藏宝地。", + "guide": null, + "link": "" + }, + "大踏鞴长正": { + "book": "天地万象", + "desc": "获得过去某把武器的绘图。", + "guide": null, + "link": "" + }, + "「…腐肉朽处花争妍。」": { + "book": "天地万象", + "desc": "终结十位已歿武士的怨念。", + "guide": null, + "link": "" + }, + "「这就是我的放生路线!」": { + "book": "天地万象", + "desc": "鱼儿在挣扎状态中逃脱。", + "guide": null, + "link": "" + }, + "「切,原来是来钓鱼的…」": { + "book": "天地万象", + "desc": "抛竿时吓跑了鱼儿。", + "guide": null, + "link": "" + }, + "如愿以偿": { + "book": "天地万象", + "desc": "请小卷婆婆占卜五次,并获得理想的结果。", + "guide": "《海渊仙草灵验记》后续 连续做5天", + "link": "" + }, + "人鱼童话": { + "book": "天地万象", + "desc": "帮助久美解开心结。", + "guide": "《孤独的海兽》", + "link": "" + }, + "远海牧人的宝藏": { + "book": "天地万象", + "desc": "从酒醉的狂言中,寻到大海贼最宝贵的遗产。", + "guide": "2.1版本全58个成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1P3411z78K?spm_id_from=333.999.0.0" + }, + "诚实高个儿西尔弗": { + "book": "天地万象", + "desc": "找到林藏埋藏的所有宝藏。", + "guide": null, + "link": "" + }, + "是时候征服海祇岛了!": { + "book": "天地万象", + "desc": "解除雷神神龛处的封印。", + "guide": null, + "link": "" + }, + "池中宅邸": { + "book": "天地万象", + "desc": "解锁「池中宅邸」。", + "guide": null, + "link": "" + }, + "小猎犬号搁浅记": { + "book": "天地万象", + "desc": "跟随无名学者的脚步探索海祇岛。", + "guide": null, + "link": "" + }, + "「奴家是猫。名字叫寝子」": { + "book": "天地万象", + "desc": "拜见「浅濑神社代宫司」寝子。", + "guide": "《清籁逐雷记·其一》", + "link": "" + }, + "云中的猫": { + "book": "天地万象", + "desc": "和「浅濑神社代宫司」寝子一起,见证某件迟来的「好事」。", + "guide": "《寝子是只猫·迟来的「好事」》", + "link": "" + }, + "猫的赠礼": { + "book": "天地万象", + "desc": "在清籁岛上为小猫喂食,并获得它们的好感。", + "guide": "《寝子是只猫》系列后续", + "link": "" + }, + "无可质疑的宝藏": { + "book": "天地万象", + "desc": "「都说了只有一幅画啊!」", + "guide": "《清籁旧宝》", + "link": "" + }, + "乡愁的另一头": { + "book": "天地万象", + "desc": "为太田太郎在清籁岛上拍摄四张画片。", + "guide": "《清籁旧忆》", + "link": "" + }, + "它和它…": { + "book": "天地万象", + "desc": "…连连看?", + "guide": "清籁丸的解谜", + "link": "" + }, + "戴维·琼斯的箱子": { + "book": "天地万象", + "desc": "解开「清籁丸」内的所有机关。", + "guide": null, + "link": "" + }, + "益智海域": { + "book": "天地万象", + "desc": "在清籁岛上解开一系列机关。", + "guide": null, + "link": "" + }, + "大天云峠": { + "book": "天地万象", + "desc": "解开天云峠之底的机关。", + "guide": null, + "link": "" + }, + "进入夜雾之门": { + "book": "天地万象", + "desc": "适应了鹤观的异常天候。", + "guide": "雾海纪行 - Day 1 - 要求特别多的作家", + "link": "" + }, + "Nihil Sub Caligine Novum": { + "book": "天地万象", + "desc": "似乎又恢复了原状…", + "guide": "雾海纪行 - Day 2 - 倾听木簧笛的八音曲", + "link": "" + }, + "白之幻影": { + "book": "天地万象", + "desc": "与昔日的幻影相遇。", + "guide": "完成《雾海纪行》系列世界任务后与任意幻影(幽灵)对话\n*视频跳转", + "link": "https://www.bilibili.com/video/BV1cu411f7Re?spm_id_from=333.999.0.0" + }, + "「美好的风景,望不到头」": { + "book": "天地万象", + "desc": "与「船工」告别。", + "guide": "送走其他所有幻影(幽灵)后与「船工」对话\n*视频跳转", + "link": "https://www.bilibili.com/video/BV1nr4y1y71F" + }, + "双城记": { + "book": "天地万象", + "desc": "即使是鹤观,似乎也建立在古老遗迹的残骸上。", + "guide": "雾海纪行 Day 2 完成后拿到奇特的羽毛后,解开 4 个雷鸟墙壁\n*视频跳转", + "link": "https://www.bilibili.com/video/BV1C44y1x7ga?spm_id_from=333.999.0.0" + }, + "《我作为冒险家的一生》": { + "book": "天地万象", + "desc": "协助罗尔德,完成冒险日志。", + "guide": "《健忘大王历险记》", + "link": "" + }, + "雾里明灯": { + "book": "天地万象", + "desc": "点亮逢岳之野所有的雷石。", + "guide": "完成 Day 4《日轮与菅名山》后点亮在逢岳之野与幽灵知世对话,点亮所有雷石后再次对话获得成就\n*视频跳转", + "link": "https://www.bilibili.com/video/BV1cu411f7Re?spm_id_from=333.999.0.0" + }, + "「被、被派蒙吃掉…」": { + "book": "天地万象", + "desc": "原本拿到的「木簧笛」,却意外消失了。", + "guide": "雾海纪行 - Day1 - 要求特别多的作家", + "link": "" + }, + "猜想时间": { + "book": "天地万象", + "desc": "从比过去更遥远的过去,来到了今天…", + "guide": "雾海纪行 Day 2 完成后拿到奇特的羽毛后,解谜 4 个壁画\n*视频地址", + "link": "https://www.bilibili.com/video/BV1C44y1x7ga?spm_id_from=333.999.0.0" + }, + "雷鸟的系谱": { + "book": "天地万象", + "desc": "完成所有「雕像」的挑战。", + "guide": "雾海纪行 Day 2 完成后拿到奇特的羽毛后,挑战的 10 个雕像\n*视频地址", + "link": "https://www.bilibili.com/video/BV1eL4y167fF?spm_id_from=333.999.0.0" + }, + "七个字母": { + "book": "天地万象", + "desc": "尝试解读「石根文字」。", + "guide": "雾海纪行 Day 2 完成后拿到奇特的羽毛后,解密 7 个石像\n*视频地址", + "link": "https://www.bilibili.com/video/BV1K34y1S7G9?p=8" + }, + "茂知之壳": { + "book": "天地万象", + "desc": "解锁「茂知之壳」。", + "guide": null, + "link": "" + }, + "渡过雾霭的河流": { + "book": "天地万象", + "desc": "终于,抵达雾海彼端…", + "guide": "雾海纪行 - Day 4 - 日轮与菅名山\n", + "link": "" + }, + "「让你再飞!」": { + "book": "天地万象", + "desc": "使用道具「四方八方之网」捕获1只晶蝶。", + "guide": null, + "link": "" + }, + "面对捕网网眼时的焦虑": { + "book": "天地万象", + "desc": "使用道具「四方八方之网」捕获1只团雀。", + "guide": null, + "link": "" + }, + "海底几万里?": { + "book": "天地万象", + "desc": "进入渊下宫。", + "guide": "《止水之潘》", + "link": "" + }, + "野马泉,又名摩利支": { + "book": "天地万象", + "desc": "解开「阳炎之门」的秘密。", + "guide": "《白夜国晨昏记:常世入口》", + "link": "" + }, + "日月回轮": { + "book": "天地万象", + "desc": "转换一次「白夜」与「常夜」。", + "guide": "2.4版本全41个成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1pP4y1E7Td?spm_id_from=333.999.0.0" + }, + "「智圆行方」小锦旗": { + "book": "天地万象", + "desc": "获得地走官的认可。", + "guide": "《厄瑞玻斯的秘密:八衢彦之试炼》", + "link": "" + }, + "「明察冬鳗」小锦旗": { + "book": "天地万象", + "desc": "获得地走官的认可。", + "guide": "《厄瑞玻斯的秘密:八衢姬之试炼》", + "link": "" + }, + "「常世无双」小锦旗": { + "book": "天地万象", + "desc": "获得地走官的认可。", + "guide": "《厄瑞玻斯的秘密:歧之试炼》", + "link": "" + }, + "「下次,试试社会派…」": { + "book": "天地万象", + "desc": "完成伊达的迷宫挑战。", + "guide": "《伊达的挑战状》:完成 2 个迷宫的挑战\n第一个迷宫:外圈 L 在右上角,内圈 L 在右下角\n第二个迷宫:三块石板呈对角线连接", + "link": "" + }, + "「常世大神倘若有知…」": { + "book": "天地万象", + "desc": "归还所有的图书,并且…", + "guide": "世界任务《龙蛇藏归辑录》\n《常世国龙蛇传》在稻妻八重堂购买,《光昼影底集》要完成一个大世界解密,其他的需要完成世界任务《安提戈努斯》(日月前事)、《伊达的挑战状》(白夜国地理水文考)、《三色档案》(深海龙蜥实验记录,即某人的实验记录)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Eq4y1y7rw?spm_id_from=333.999.0.0" + }, + "「真的有区别吗…」": { + "book": "天地万象", + "desc": "在所有特别的位置上坐下过。", + "guide": "在大日御舆附近的特别位置坐下后触发与桦山的对话,后边三处都坐下后回去找桦山拿到成就与宝箱", + "link": "" + }, + "神的孩子全跳舞": { + "book": "天地万象", + "desc": "和所有的「法厄同」残影对话。", + "guide": "完成世界任务《法厄同们全跳舞》后与所有太阳之子残影对话\n其中神舆之辔在另一世界任务《许伯利翁哀歌》里从阿倍良久处获得", + "link": "" + }, + "阴阳割昏晓": { + "book": "天地万象", + "desc": "前往大日御舆之顶。", + "guide": "正常完成世界任务《许伯利翁哀歌》的流程即可获得\n自己想办法上去也可以完成,不过没有跟着任务走来得安逸", + "link": "" + }, + "射程之内好说话": { + "book": "天地万象", + "desc": "完成弓术的挑战。", + "guide": "渊下宫 - 常世灵庙南边传送点以南,找残影明石完成挑战后对话即可", + "link": "" + }, + "薄缘的道与光与胤": { + "book": "天地万象", + "desc": "归还岩藏宗主的刀。", + "guide": "刀在渊下宫入口处附近", + "link": "" + }, + "一把钥匙开一把锁": { + "book": "天地万象", + "desc": "找到所有的键纹。", + "guide": "全部键纹*视频地址", + "link": "https://www.bilibili.com/video/BV1pP4y1E7Td?p=20" + }, + "岩中幽谷": { + "book": "天地万象", + "desc": "解锁「岩中幽谷」。", + "guide": "打开新本的障碍石头", + "link": "" + }, + "《层岩巨渊矿产志》": { + "book": "天地万象", + "desc": "阅读层岩巨渊矿产相关书籍的全部断章。", + "guide": "找三本矿产志", + "link": "" + }, + "生命之谷的居民": { + "book": "天地万象", + "desc": "寻得干枯的种子,而且没有贸然吃掉它。", + "guide": "“小绿洲”内找到干枯的果实", + "link": "" + }, + "CREDE TENEBRIS": { + "book": "天地万象", + "desc": "打开遗迹中的密室。", + "guide": "翻译:相信黑暗的意思?", + "link": "" + }, + "9文字之传言": { + "book": "天地万象", + "desc": "找到所有密文。", + "guide": "翻译:让天上的人滚回去的意思?", + "link": "" + }, + "狡兔之窟": { + "book": "天地万象", + "desc": "发现盗宝团的藏宝。", + "guide": "完成「好样的,施季里茨!」给后续", + "link": "" + }, + "又,又,又中大奖了!": { + "book": "天地万象", + "desc": "挖出了三次宝箱,通关老臭的挖宝游戏。", + "guide": "累积3次挖到老臭的宝箱", + "link": "" + }, + "人情练达即文章": { + "book": "天地万象", + "desc": "完成所有生态调查任务,收到海迪夫给的推荐信。", + "guide": "层岩巨渊生态调查", + "link": "" + }, + "「舍我其谁!」": { + "book": "天地万象", + "desc": "收集齐层岩巨渊下愚人众的信件文书。", + "guide": "找4本愚人众信件", + "link": "" + }, + "请保持安全距离": { + "book": "天地万象", + "desc": "使用「安全距离爆破机关·贰壹伍陆型」开辟通路。", + "guide": "第一次开炮", + "link": "" + }, + "黑雾,痛苦,像出生一样…": { + "book": "天地万象", + "desc": "击败黑雾中浮现之物。", + "guide": "击败黑雾中的深渊使徒", + "link": "" + }, + "秀逗炼金术士": { + "book": "天地万象", + "desc": "解救克里托夫。", + "guide": "踏破矿贼结新缘分中解救克里托夫", + "link": "" + }, + "勇气的余晖": { + "book": "天地万象", + "desc": "冒险之意义,究竟存在于哪里呢?", + "guide": "做完层岩巨渊主线,第二天找她再做3天任务", + "link": "" + }, + "请勿长期食用": { + "book": "天地万象", + "desc": "在层岩巨渊找到失踪的矿工老何。", + "guide": "层岩巨渊主线做完后才能找到失踪的老何", + "link": "" + }, + "要求太多的大蘑头": { + "book": "天地万象", + "desc": "在层岩巨渊完成「赞玛兰」的委托。", + "guide": "完成蘑菇头一大堆任务", + "link": "" + }, + "唯千岩不动": { + "book": "天地万象", + "desc": "收集所有千岩军留下的供物,得到「千岩军的宝藏」。", + "guide": "找5个圣遗物+1把武器", + "link": "" + }, + "三脚猫渭水非熊": { + "book": "天地万象", + "desc": "了解山巅大侠「唐无仇」的往事。", + "guide": "山顶地图阴间位置", + "link": "" + }, + "「好样的,施季里茨!」": { + "book": "天地万象", + "desc": "帮助彦博完成千岩军的执法任务。", + "guide": "发现假冒的“千岩军”", + "link": "" + }, + "黑暗却无法包容光…": { + "book": "天地万象", + "desc": "第一次使用「流明石」的「纯光绽放」来清除「淤泥涌口」的漆黑结晶物。", + "guide": "对这淤泥使用流明石", + "link": "" + }, + "「…闻起来像沥青。」": { + "book": "天地万象", + "desc": "第一次因漆黑污泥的污染而倒下。", + "guide": "第一次被淤泥毒死", + "link": "" + }, + "「只需一些柴火、一些醋…」": { + "book": "天地万象", + "desc": "通往地面的密道…大概不止一条。", + "guide": "发现地下通往地面的路", + "link": "" + }, + "《塔列辛之书》": { + "book": "天地万象", + "desc": "获得塔列辛的赠礼。", + "guide": "做完层岩巨渊所有任务连续找他2天", + "link": "" + }, + "照亮黑暗": { + "book": "天地万象", + "desc": "送出些许光明。", + "guide": "初次使用流明石触媒", + "link": "" + }, + "慧绝烟林": { + "book": "天地万象", + "desc": "须弥的声望等级达到10级。", + "guide": "当前版本无法拿到(3.0须弥魔神主线做完后开启)", + "link": "" + }, + "美德的报酬": { + "book": "天地万象", + "desc": "在森林中帮助许多兰那罗。", + "guide": "找到76个兰那罗开启最后的宝箱报酬 *视频地址:BV1h8411b7re", + "link": "https://www.bilibili.com/video/BV1h8411b7re/?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "众妙之门": { + "book": "天地万象", + "desc": "真正踏入「兰那罗的世界」…", + "guide": "森林书第一章 兰那罗的世界(剧情必得) ", + "link": "" + }, + "梦与无梦的隙间": { + "book": "天地万象", + "desc": "来到现实中的桓那兰那。", + "guide": "森林书第一章 梦中的苗圃 (剧情必得)", + "link": "" + }, + "森林的大乐章": { + "book": "天地万象", + "desc": "似乎具有成为「采歌者」的潜力…?", + "guide": "森林书第二章II 月华之章(剧情必得)", + "link": "" + }, + "悠游旅情": { + "book": "天地万象", + "desc": "旅途中的风景不应错过。", + "guide": "世界任务 *视频地址:BV16P411H7Au", + "link": "https://www.bilibili.com/video/BV16P411H7Au?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "金光灿灿的歌": { + "book": "天地万象", + "desc": "…他们会将这首歌永远传唱下去吧,一代又一代。", + "guide": "森林书第二章 无忧节完结(剧情必得)", + "link": "" + }, + "关于森林的故事": { + "book": "天地万象", + "desc": "从兰随尼处,听来森林的五个故事。", + "guide": "森林书完结后回去找兰随尼 *视频地址:BV1cG4y1z71P", + "link": "https://www.bilibili.com/video/BV1cG4y1z71P?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "不再苍翠的苗圃": { + "book": "天地万象", + "desc": "踏入曾经的桓那兰那。", + "guide": "森林书第三章 主线(剧情必得)", + "link": "" + }, + "尽末了所毁灭的": { + "book": "天地万象", + "desc": "击败了「无留陀的化身」。接下来…", + "guide": "森林树第三章 森林书最终BOSS(剧情必得)", + "link": "" + }, + "就算回归沙尘…": { + "book": "天地万象", + "desc": "…也要留下梦与愿望。", + "guide": "森林书完结后续探索 *视频地址:BV1bt4y177o1", + "link": "https://www.bilibili.com/video/BV1bt4y177o1?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "永不属于森林的孩子": { + "book": "天地万象", + "desc": "这样一来,问题应该解决了。", + "guide": "森林书主线完结,抓出“坏人”*视频地址:BV18Y4y1M7He0", + "link": "https://www.bilibili.com/video/BV18Y4y1M7He?spm_id_from=333.999.0.0" + }, + "桓那兰那一番!": { + "book": "天地万象", + "desc": "帮助兰帕卡提的哥哥们完成各自的「至上珍馐」。", + "guide": "森林书第二章(剧情必得)", + "link": "" + }, + "「芝麻,芝麻,请开门。」": { + "book": "天地万象", + "desc": "通过暗号,成功进入愚人众藏身的营地。", + "guide": "世界任务《愚人者人愚之》 *视频地址:BV1xg411D7VC", + "link": "https://www.bilibili.com/video/BV1xg411D7VC?spm_id_from=333.999.0.0" + }, + "与「宝箱」主人会谈": { + "book": "天地万象", + "desc": "找到兰那罗的「宝箱」。", + "guide": "世界任务 *视频地址:BV16P411H7Au", + "link": "https://www.bilibili.com/video/BV16P411H7Au?spm_id_from=333.999.0.0" + }, + "转桓摩王": { + "book": "天地万象", + "desc": "转动每一个藏有宝箱的「桓摩达」。", + "guide": "森林书完结后续探索 *视频地址:BV1bt4y177o1", + "link": "https://www.bilibili.com/video/BV1bt4y177o1?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "以「安弗塔斯」之名": { + "book": "天地万象", + "desc": "造访勇士们的终点。", + "guide": "世界任务 *视频地址:BV1Hd4y1M7bG", + "link": "https://www.bilibili.com/video/BV1Hd4y1M7bG/?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "无名之城的呼唤": { + "book": "天地万象", + "desc": "让神秘的羊皮卷安静下来。", + "guide": "森林书第二章VI剧情获得 *视频地址:BV15e4y1y7EX", + "link": "https://www.bilibili.com/video/BV15e4y1y7EX?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "水与风的伙伴": { + "book": "天地万象", + "desc": "完成「直到『桓那』痊愈」。", + "guide": "森林树第二章V(剧情必得)", + "link": "" + }, + "…请悄悄将我忘记": { + "book": "天地万象", + "desc": "完成「吉祥具书」。", + "guide": "森林树第二章IV(剧情必得)", + "link": "" + }, + "然后时间开始流动": { + "book": "天地万象", + "desc": "完成兰帝裟的未竟之事。", + "guide": "世界任务 石锁机关秘话 *视频地址:BV17P4y1o7T1", + "link": "https://www.bilibili.com/video/BV17P4y1o7T1?spm_id_from=333.999.0.0" + }, + "请安全玩耍": { + "book": "天地万象", + "desc": "陪森林中的兰那罗游戏。", + "guide": "世界任务 陪12个兰那罗玩耍 *视频地址:BV1Fd4y1M7P9", + "link": "https://www.bilibili.com/video/BV1Fd4y1M7P9/?spm_id_from=333.999.0.0" + }, + "永久食粮": { + "book": "天地万象", + "desc": "和法莎一道,造访现实中的兰那罗苗圃。", + "guide": "森林书第二章IV后续 带走失少女法莎去兰那罗的苗圃(如下成就地点)\n*视频地址:BV1UT411M7b4", + "link": "https://www.bilibili.com/video/BV1UT411M7b4?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "梦想开花时": { + "book": "天地万象", + "desc": "让毗波耶开满兰那罗的苗圃。", + "guide": "森林书第二章IV后续找到12个桓斯弥利底(种子)种下等现实第二天 \n*视频地址:BV1UT411M7b4", + "link": "https://www.bilibili.com/video/BV1UT411M7b4?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "「众花园中的一棵核桃树…」": { + "book": "天地万象", + "desc": "向海亚姆问起失落的记忆。", + "guide": "森林书第二章IV后续 通关无留陀后(剧情必得)\n*视频地址:BV1KG411V73F", + "link": "https://www.bilibili.com/video/BV1KG411V73F?spm_id_from=333.999.0.0" + }, + "须弥怪物生态调查": { + "book": "天地万象", + "desc": "完成保护森林生态的工作。", + "guide": "★无名字无提示隐藏任务 凶猛动物在哪里 *视频地址:BV13e4y1a7en", + "link": "https://www.bilibili.com/video/BV13e4y1a7en?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "如狮子寻找勇气…": { + "book": "天地万象", + "desc": "找回兰沙恭丢失的「勇气」。", + "guide": "世界任务 *视频地址:BV1dY4y1P7yd", + "link": "https://www.bilibili.com/video/BV1dY4y1P7yd?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "究竟一切智地": { + "book": "天地万象", + "desc": "登上须弥城的最高处。", + "guide": "大世界探索2 *视频地址:BV1qV4y1W75s", + "link": "https://www.bilibili.com/video/BV1qV4y1W75s?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "搜索者": { + "book": "天地万象", + "desc": "利用激化反应,发现原本被隐藏的事物。", + "guide": "大世界探索4 *视频地址:BV1qV4y1W75s", + "link": "https://www.bilibili.com/video/BV1qV4y1W75s?spm_id_from=333.999.0.0" + }, + "茉莉低语,石榴开怀": { + "book": "天地万象", + "desc": "完成「正法炬书」。", + "guide": "森林树第二章III(剧情必得)", + "link": "" + }, + "飞驰如风": { + "book": "天地万象", + "desc": "在无郁稠林激活三处风场。", + "guide": "大世界探索5 *视频地址:BV1qV4y1W75s", + "link": "https://www.bilibili.com/video/BV1qV4y1W75s?spm_id_from=333.999.0.0" + }, + "三之定则": { + "book": "天地万象", + "desc": "找到三篇失落的歌谱,获得三枚恒素果。", + "guide": "森林树第二章II梦中苗圃 (剧情必得)", + "link": "" + }, + "梦凝成的苦果": { + "book": "天地万象", + "desc": "第一次使用「苦舍桓」。", + "guide": "森林树第二章III中获得(剧情必得)", + "link": "" + }, + "雨落进了泥土": { + "book": "天地万象", + "desc": "完成「水天供书」。", + "guide": "森林树第二章II(剧情必得)", + "link": "" + }, + "…都汇进了激流": { + "book": "天地万象", + "desc": "用留影机记录下法留纳法宝启动的瞬间。", + "guide": "大世界探索3 *视频地址:BV1qV4y1W75s", + "link": "https://www.bilibili.com/video/BV1qV4y1W75s?spm_id_from=333.999.0.0" + }, + "呼风唤雨": { + "book": "天地万象", + "desc": "操作法留纳神机,改变水天丛林的天气。", + "guide": "森林书完结后续探索:*视频地址:BV1bt4y177o1", + "link": "https://www.bilibili.com/video/BV1bt4y177o1?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "啊,美好的日子!": { + "book": "天地万象", + "desc": "根据箱底的线索找到秘密宝藏。", + "guide": "世界任务 *视频地址:BV1fB4y1n7hQ", + "link": "https://www.bilibili.com/video/BV1fB4y1n7hQ?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "卡菈的孩子": { + "book": "天地万象", + "desc": "在林中自由地飘荡吧。", + "guide": "大世界探索1 *视频地址:BV1qV4y1W75s", + "link": "https://www.bilibili.com/video/BV1qV4y1W75s?spm_id_from=333.999.0.0" + }, + "漫长的重逢": { + "book": "天地万象", + "desc": "跟随失主的驮兽,完成它的旅程。", + "guide": "需要从起点开始跟随开始,不能从中途开始 *视频地址:BV1y14y1x7s8", + "link": "https://www.bilibili.com/video/BV1y14y1x7s8?spm_id_from=333.999.0.0" + }, + "「我明白了!我明白了!」": { + "book": "天地万象", + "desc": "找到并解开须弥城内的一系列谜语。", + "guide": "★全程无名字无提示真·隐藏任务 *视频地址:BV1UB4y1x78c", + "link": "https://www.bilibili.com/video/BV1UB4y1x78c?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "宵暗与晓光之歌": { + "book": "天地万象", + "desc": "…我们一定会在何处相逢吧。", + "guide": "森林书后续打败无留陀后 *视频地址:BV14d4y1X7RB", + "link": "https://www.bilibili.com/video/BV14d4y1X7RB?spm_id_from=333.999.0.0" + }, + "第几类接触": { + "book": "天地万象", + "desc": "不同寻常的「朋友」加入了考古小队。", + "guide": "黄金梦乡 第一天剧情必给", + "link": "" + }, + "沙漠中的探险": { + "book": "天地万象", + "desc": "沙漠中的探险才刚刚开始。", + "guide": "黄金梦乡 第一天剧情必给 从赤王陵出来", + "link": "" + }, + "像因论派学者一样思考": { + "book": "天地万象", + "desc": "墨水瓶里拥有可怕的权力。", + "guide": "黄金梦乡 第一天剧情必给", + "link": "" + }, + "法达摩加纳": { + "book": "天地万象", + "desc": "通往「御座」的道路终于显现。", + "guide": "黄金梦乡 第一天剧情必给 最后开三个门", + "link": "" + }, + "生成、交换、储存和使用": { + "book": "天地万象", + "desc": "钥匙也需要得到「认可」。", + "guide": "黄金梦乡 第一天剧情必给", + "link": "" + }, + "神奇的匹热迷能": { + "book": "天地万象", + "desc": "迈向隐藏真相的一小步。", + "guide": "黄金梦乡 第一天剧情必给", + "link": "" + }, + "像赤王子民一样行走": { + "book": "天地万象", + "desc": "获得了通过许多门的许可。", + "guide": "黄金梦乡 第二天旧语新知剧情必给", + "link": "" + }, + "笔直航道": { + "book": "天地万象", + "desc": "到达赤王陵顶部的隐秘空间。", + "guide": "黄金梦乡 第二天旧语新知剧情必给", + "link": "" + }, + "通往光明之路": { + "book": "天地万象", + "desc": "无人知晓这些巨大的遗迹如何建成,又因何失落。", + "guide": "黄金梦乡 第二天旧语新知剧情必给", + "link": "" + }, + "再听一遍那首歌谣": { + "book": "天地万象", + "desc": "重新站在圣显厅的赤王御座之前。", + "guide": "*视频地址:BV1g14y187wh", + "link": "https://www.bilibili.com/video/BV1g14y187wh/?spm_id_from=333.999.0.0" + }, + "斜倚在大地之上": { + "book": "天地万象", + "desc": "完成「阿弗拉图之惑」。", + "guide": "1任务3成就 *视频地址:BV1B841147Bn", + "link": "https://www.bilibili.com/video/BV1B841147Bn/?spm_id_from=333.999.0.0" + }, + "让我见识一下巨像的性能吧": { + "book": "天地万象", + "desc": "只要打不中就没有什么大不了的。", + "guide": null, + "link": "" + }, + "强行突破作战": { + "book": "天地万象", + "desc": "坎瑞亚的机器,都是怪物吗?", + "guide": null, + "link": "" + }, + "请说暗语,然后进入": { + "book": "天地万象", + "desc": "打开吞羊岩的神秘大门。", + "guide": "*视频地址:BV1jD4y127s4", + "link": "https://www.bilibili.com/video/BV1jD4y127s4/?spm_id_from=333.999.0.0" + }, + "大走廊的尽头": { + "book": "天地万象", + "desc": "进入赤王陵地下最隐秘的房间。", + "guide": "*视频地址:BV1XW4y1Y7AV", + "link": "https://www.bilibili.com/video/BV1XW4y1Y7AV/?spm_id_from=333.999.0.0" + }, + "四地之王": { + "book": "天地万象", + "desc": "找到并破解沙漠中四处透明的遗迹的秘密。", + "guide": "*视频地址:BV1V24y1d7Cf", + "link": "https://www.bilibili.com/video/BV1V24y1d7Cf/?spm_id_from=333.999.0.0" + }, + "赤王时代的沙漠与大赤沙海": { + "book": "天地万象", + "desc": "探索沙漠中三处巨大的尖碑。", + "guide": "*视频地址:BV1nT411P7So", + "link": "https://www.bilibili.com/video/BV1nT411P7So/?spm_id_from=333.999.0.0" + }, + "碑铭": { + "book": "天地万象", + "desc": "美和希望是对逝者最温柔的缅怀。", + "guide": "连续做6天给成就,但依旧还有后续 *视频地址:BV1NN4y1N7b3", + "link": "https://www.bilibili.com/video/BV1NN4y1N7b3/?spm_id_from=333.999.0.0" + }, + "在「我」诞生之前": { + "book": "天地万象", + "desc": "人们不愿提及他的姓名,不愿记起他的言行。", + "guide": "魔神主线分支:*视频地址:BV1d24y1R7Mm", + "link": "https://www.bilibili.com/video/BV1d24y1R7Mm/?spm_id_from=333.999.0.0" + }, + "犍闼缚城": { + "book": "天地万象", + "desc": "第一次遭遇沙漠中的幻象。", + "guide": "*视频地址:BV1KR4y1o7j7", + "link": "https://www.bilibili.com/video/BV1KR4y1o7j7/?spm_id_from=333.999.0.0" + }, + "发掘报告怎么写?": { + "book": "天地万象", + "desc": "第一次探索沙漠地下的遗迹。", + "guide": "*视频地址:BV1ge411j7Qh", + "link": "https://www.bilibili.com/video/BV1ge411j7Qh/?spm_id_from=333.999.0.0" + }, + "在风中飘荡": { + "book": "天地万象", + "desc": "击碎在沙漠中飘飞的风滚草。", + "guide": "*视频地址:BV1KR4y1o7j7", + "link": "https://www.bilibili.com/video/BV1KR4y1o7j7/?spm_id_from=333.999.0.0" + }, + "飞跃医院": { + "book": "天地万象", + "desc": "曾有一位生还者逃离此处。", + "guide": "*视频地址:BV1VD4y127uN", + "link": "https://www.bilibili.com/video/BV1VD4y127uN/?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "训练有素的考古学家": { + "book": "天地万象", + "desc": "让列柱沙原 、上风蚀地、下风蚀地所有的元能尖碑重新运转。", + "guide": "60方碑", + "link": "" + }, + "超越时间的虚影": { + "book": "天地万象", + "desc": "触碰沙漠中每一处神秘的壁画。", + "guide": "*视频地址:BV1A8411t7Be", + "link": "https://www.bilibili.com/video/BV1A8411t7Be/?spm_id_from=333.999.0.0" + }, + "无坚不摧": { + "book": "天地万象", + "desc": "在无相之岩复苏前,击碎所有复苏岩柱。", + "guide": null, + "link": "" + }, + "棱镜计划": { + "book": "天地万象", + "desc": "在无相之雷复苏前,摧毁所有复苏棱镜。", + "guide": null, + "link": "" + }, + "「这风晶蝶还蛮大的」": { + "book": "天地万象", + "desc": "在无相之风复苏前,吸收所有风之晶球。", + "guide": null, + "link": "" + }, + "「…不代表最终品质」": { + "book": "天地万象", + "desc": "击败一个进行了四种元素转变的无相之风。", + "guide": null, + "link": "" + }, + "…与巨像": { + "book": "天地万象", + "desc": "通过攻击要害,瘫痪遗迹守卫。", + "guide": null, + "link": "" + }, + "传球": { + "book": "天地万象", + "desc": "打落爆弹丘丘人手中的火史莱姆。", + "guide": null, + "link": "" + }, + "「一次…的攻击」": { + "book": "天地万象", + "desc": "通过碎冰伤害,打败一名敌人。", + "guide": null, + "link": "" + }, + "大黄金丘丘王": { + "book": "天地万象", + "desc": "在魔化状态结束前,击败丘丘岩盔王。", + "guide": "原神 1.0 时期曾用名《黄金体验镇魂曲》", + "link": "" + }, + "向无敌大胃王致敬": { + "book": "天地万象", + "desc": "队伍中有四名角色同时处于饱腹状态。", + "guide": null, + "link": "" + }, + "摧枯拉朽": { + "book": "天地万象", + "desc": "造成超过50000的暴击伤害。", + "guide": null, + "link": "" + }, + "神奇四…": { + "book": "天地万象", + "desc": "使用四个相同元素属性的角色完成一次秘境挑战。", + "guide": null, + "link": "" + }, + "「什么嘛,还不如冰雾花」": { + "book": "天地万象", + "desc": "不击破花冠弱点的情况下,击败急冻树。", + "guide": null, + "link": "" + }, + "「总有比火更灼热的火」": { + "book": "天地万象", + "desc": "不击破花冠弱点的情况下,击败爆炎树。", + "guide": null, + "link": "" + }, + "异邦人与异邦人": { + "book": "天地万象", + "desc": "队伍中所有角色都不被「公子」标记的后续攻击命中的情况下,击败「公子」。", + "guide": null, + "link": "" + }, + "罚球": { + "book": "天地万象", + "desc": "有的地方是没办法挖出火史莱姆的…", + "guide": null, + "link": "" + }, + "力场侵蚀": { + "book": "天地万象", + "desc": "粉碎无相之雷的结界。", + "guide": "击碎任意一个雷结界柱子即可\n*视频地址", + "link": "https://www.bilibili.com/video/BV1mX4y137L4?spm_id_from=333.999.0.0" + }, + "「…还有蜥蜴和斯波克」": { + "book": "天地万象", + "desc": "同一个角色连续被猜拳三连击命中。", + "guide": "1.3版本全16个成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1cU4y1x79f?spm_id_from=333.999.0.0" + }, + "基础不牢,地动山摇!": { + "book": "天地万象", + "desc": "通过击碎核心停留的玄岩柱,使同一个无相之岩落地三次。", + "guide": null, + "link": "" + }, + "基础再牢,也能撂倒!": { + "book": "天地万象", + "desc": "在不击碎玄岩柱的情况下,使无相之岩进入复苏模式。", + "guide": null, + "link": "" + }, + "千风散尽还复来": { + "book": "天地万象", + "desc": "在一场战斗中,吸收至少10个无相之风创造的元素晶球。", + "guide": null, + "link": "" + }, + "珠心熔毁": { + "book": "天地万象", + "desc": "摧毁爆炎树创造的炽热之种。", + "guide": null, + "link": "" + }, + "眩晕": { + "book": "天地万象", + "desc": "在急冻树旋转喷发急冻射线时,击破其花冠弱点。", + "guide": null, + "link": "" + }, + "「…唯独死亡与债务不可避」": { + "book": "天地万象", + "desc": "击败处于隐蔽状态下的火之债务处理人。", + "guide": null, + "link": "" + }, + "「孤独地融化…」": { + "book": "天地万象", + "desc": "在冰萤术士操控的冰萤全部存在的情况下,击败冰萤术士。", + "guide": "特别注意:击杀冰莹术士时,需要所有蚊子在场\n(若误杀了几只蚊子,可击杀所有蚊子后等冰莹术士重新召唤全体蚊子)", + "link": "" + }, + "这也算四风守护?": { + "book": "天地万象", + "desc": "触发过风拳先锋军所有元素类型的吸收反击后,击败他。", + "guide": "1.3版本全16个成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1cU4y1x79f?spm_id_from=333.999.0.0" + }, + "碰·一·碰": { + "book": "天地万象", + "desc": "利用护盾反制岩龙蜥的某一式冲撞攻击。", + "guide": null, + "link": "" + }, + "反弹!": { + "book": "天地万象", + "desc": "利用护盾,反制古岩龙蜥的「原岩喷吐」攻击。", + "guide": null, + "link": "" + }, + "悉数奉还!": { + "book": "天地万象", + "desc": "利用同种元素类型或岩元素的护盾,反制古岩龙蜥的「原岩喷吐」攻击,并造成大量伤害。", + "guide": null, + "link": "" + }, + "我们之中最坚强的灵魂": { + "book": "天地万象", + "desc": "击败所有形态的若陀龙王。", + "guide": "一共 4 个形态,至少要连续打 3+1(剧情里) 周;分别是雷水、雷火、冰水、冰火(每周只有 1 个固定的形态)\n*视频讲解", + "link": "https://www.bilibili.com/video/BV1rV411j7xj" + }, + "「…一日之寒」": { + "book": "天地万象", + "desc": "击败处于虚弱状态的无相之冰。", + "guide": "1.5版本全35个成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1L64y117DJ?p=2" + }, + "「冰冻三尺…」": { + "book": "天地万象", + "desc": "击败一个复苏了三次的无相之冰。", + "guide": null, + "link": "" + }, + "只要我跑的够快": { + "book": "天地万象", + "desc": "不被幻影击中的情况下,击败魔偶剑鬼。", + "guide": "剑鬼成就*视频地址", + "link": "https://www.bilibili.com/video/BV1YU4y1H7h9?spm_id_from=333.999.0.0" + }, + "堂堂正正的决斗!": { + "book": "天地万象", + "desc": "不触发「枉死之面」的格挡的情况下,击败魔偶剑鬼。", + "guide": null, + "link": "" + }, + "…全靠我们自己": { + "book": "天地万象", + "desc": "不触发「原岩喷吐」的反噬的情况下,击败古岩龙蜥。", + "guide": null, + "link": "" + }, + "把自己烧着了吧?": { + "book": "天地万象", + "desc": "击败一个复燃过两次的无相之火。", + "guide": null, + "link": "" + }, + "Smells like Animal Spirit!": { + "book": "天地万象", + "desc": "被无相之火的拟态三连击命中后,击败它。", + "guide": "必须被拟态三连击的三个招式都命中后才能拿到成就", + "link": "" + }, + "机元突破": { + "book": "天地万象", + "desc": "在一场战斗中,使恒常机关阵列的所有四种遗迹机兵均进入瘫痪状态,并击败恒常机关阵列。", + "guide": "4 种遗迹机兵,当机兵攻击的时候会暴露核心,攻击核心可以使其进入暂时的瘫痪状态。\n注意,如果直接击杀了遗迹机兵并不算作瘫痪。", + "link": "" + }, + "无关机械请立即离场!": { + "book": "天地万象", + "desc": "不击败任何恒常机关阵列的遗迹机兵的情况下,击败恒常机关阵列。", + "guide": "恒常机关阵列召唤出遗迹机兵后,即便不击败遗迹机兵,过一段时间恒常机关阵列自己会回收\n所有遗迹机兵。所以做这个成就时,等它召唤出小怪后不要打小怪,等它自己回收小怪后再攻击本体。", + "link": "" + }, + "遇火斩火": { + "book": "天地万象", + "desc": "在海乱鬼·炎威的武器附有烈焰的情况下,击败海乱鬼·炎威。", + "guide": null, + "link": "" + }, + "遇雷切雷": { + "book": "天地万象", + "desc": "在海乱鬼·雷腾的武器附有电流的情况下,击败海乱鬼·雷腾。", + "guide": null, + "link": "" + }, + "雷自东来": { + "book": "天地万象", + "desc": "被雷斧丘丘暴徒引来的落雷击中…", + "guide": "可以去稻妻天赋本菫色之庭选最低难度,有 38 级的类斧丘丘暴徒(相对来说打人不痛)", + "link": "" + }, + "A Kill without Water": { + "book": "天地万象", + "desc": "不击败任何「水滴」的情况下(无相之水恢复时除外),击败无相之水。", + "guide": "2.1版本全58个成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1P3411z78K?spm_id_from=333.999.0.0" + }, + "海洋生物学者,欧拉!": { + "book": "天地万象", + "desc": "被无相之水幻化的某种生物击中…", + "guide": null, + "link": "" + }, + "无法传达的恋波": { + "book": "天地万象", + "desc": "不曾被探针的侦测锁定的情况下,击败雷音权现。", + "guide": null, + "link": "" + }, + "雷音坠落": { + "book": "天地万象", + "desc": "击败飞翔的雷音权现。", + "guide": null, + "link": "" + }, + "红莲冰河与红莲魔女": { + "book": "天地万象", + "desc": "在不破坏任何「炎之心」与「霜之眼」的情况下,击败「女士」。", + "guide": null, + "link": "" + }, + "犬神家的末路": { + "book": "天地万象", + "desc": "短时间内击破两个「兽境犬首」。", + "guide": null, + "link": "" + }, + "硬着陆": { + "book": "天地万象", + "desc": "将攀援中的深海龙蜥击落。", + "guide": null, + "link": "" + }, + "正法眼藏": { + "book": "天地万象", + "desc": "仅仅击落真正的对手…", + "guide": null, + "link": "" + }, + "猛犬注意": { + "book": "天地万象", + "desc": "击败正在咆哮的兽境猎犬。", + "guide": null, + "link": "" + }, + "基本上无害": { + "book": "天地万象", + "desc": "击败没有积攒任何怒气的飘浮灵。", + "guide": null, + "link": "" + }, + "光之流溢": { + "book": "天地万象", + "desc": "在遗迹巨蛇的挑战中,利用一次「纯光绽放」破坏二个「淤泥涌口」。", + "guide": "8级流明石可以1次破坏2个淤泥", + "link": "" + }, + "「汉总是先开枪…」": { + "book": "天地万象", + "desc": "…所以不要带着刀进入枪战。", + "guide": "须弥新怪7个成就(5隐藏\n*视频地址:BV1Ga411G7AZ", + "link": "https://www.bilibili.com/video/BV1Ga411G7AZ?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "渔人之利": { + "book": "天地万象", + "desc": "见证了蕈兽间的友军伤害。", + "guide": null, + "link": "" + }, + "「给我下来!」": { + "book": "天地万象", + "desc": "击落飞行中的有翼蕈兽。", + "guide": null, + "link": "" + }, + "金风玉露一相逢": { + "book": "天地万象", + "desc": "放任掣电树释放的电荷相撞。", + "guide": null, + "link": "" + }, + "…三而竭?": { + "book": "天地万象", + "desc": "见识过活化状态下的翠翎恐蕈的三种强力技能。", + "guide": null, + "link": "" + }, + "遗迹先生,别再冲了——!": { + "book": "天地万象", + "desc": "通过攻击头部的核心,中断兆载永劫龙兽的冲锋攻击。", + "guide": "4个隐藏挑战相关:*视频地址:BV1Wt4y1w7wS", + "link": "https://www.bilibili.com/video/BV1Wt4y1w7wS/?spm_id_from=333.999.0.0" + }, + "那诺曼辛,孩子!": { + "book": "天地万象", + "desc": "击败处于活化状态下正在施展强力技能的翠翎恐蕈…", + "guide": null, + "link": "" + }, + "展开攻性防壁": { + "book": "天地万象", + "desc": "见识过半永恒统辖矩阵的超频冲击…", + "guide": null, + "link": "" + }, + "看不见的手": { + "book": "天地万象", + "desc": "在不破除元能构装体的不可视状态的情况下将其击败。", + "guide": null, + "link": "" + }, + "神奇的固氮作用": { + "book": "天地万象", + "desc": "在一次无相之草挑战中,使三枚愈疗草芯同时处于活化状态。", + "guide": null, + "link": "" + }, + "落草之谈": { + "book": "天地万象", + "desc": "在无相之草进行下落攻击时,烧毁它的藤蔓外壳。", + "guide": null, + "link": "" + }, + "落落磊磊": { + "book": "天地万象", + "desc": "利用元素矩阵,使正机之神过载瘫痪。", + "guide": null, + "link": "" + }, + "生灭去来": { + "book": "天地万象", + "desc": "刹那生灭中,一切皆有正机…", + "guide": null, + "link": "" + }, + "漫长旅途的开端": { + "book": "天地万象", + "desc": "完成蒙德的魔神任务。", + "guide": "魔神任务 序章", + "link": "" + }, + "捕风的异乡人": { + "book": "天地万象", + "desc": "完成「捕风的异乡人」。", + "guide": "魔神任务 序章 第一幕「捕风的异乡人」", + "link": "" + }, + "为了没有眼泪的明天": { + "book": "天地万象", + "desc": "完成「为了没有眼泪的明天」。", + "guide": "魔神任务 序章 第二幕「为了没有眼泪的明天」", + "link": "" + }, + "巨龙与自由之歌": { + "book": "天地万象", + "desc": "完成「巨龙与自由之歌」。", + "guide": "魔神任务 序章 第三幕「巨龙与自由之歌」", + "link": "" + }, + "听凭风引": { + "book": "天地万象", + "desc": "掌握「风」的元素力。", + "guide": "魔神任务 序章 第一幕「捕风的异乡人」", + "link": "" + }, + "…还是新的风暴呢?": { + "book": "天地万象", + "desc": "驱逐袭击蒙德城的巨龙。", + "guide": "魔神任务 序章 第一幕「捕风的异乡人」", + "link": "" + }, + "骑士精神": { + "book": "天地万象", + "desc": "成为西风骑士团的荣誉骑士。", + "guide": "魔神任务 序章 第二幕「为了没有眼泪的明天」", + "link": "" + }, + "骑士团的诸多麻烦": { + "book": "天地万象", + "desc": "没能「借」到圣物…但认识了「骑士团的麻烦」。", + "guide": "魔神任务 序章 第二幕「为了没有眼泪的明天」", + "link": "" + }, + "风向是会转变的": { + "book": "天地万象", + "desc": "被特瓦林所救。", + "guide": "魔神任务 序章 第三幕「巨龙与自由之歌」", + "link": "" + }, + "浮世浮生千岩间": { + "book": "天地万象", + "desc": "完成「浮世浮生千岩间」。", + "guide": "魔神任务 第一章 第一幕「浮世浮生千岩间」", + "link": "" + }, + "辞行久远之躯": { + "book": "天地万象", + "desc": "完成「辞行久远之躯」。", + "guide": "魔神任务 第一章 第二幕「辞行久远之躯」", + "link": "" + }, + "异乡异客": { + "book": "天地万象", + "desc": "在「本地人不会去的景点」被外地人搭救。", + "guide": "魔神任务 第一章 第一幕「浮世浮生千岩间」", + "link": "" + }, + "…五丘丘怎么了?": { + "book": "天地万象", + "desc": "与小冥约定一起玩。", + "guide": "魔神任务 第一章 第二幕「辞行久远之躯」", + "link": "" + }, + "春香窑的「副业」": { + "book": "天地万象", + "desc": "了解「岩王帝君」中意的香膏品类。", + "guide": "魔神任务 第一章 第二幕「辞行久远之躯」", + "link": "" + }, + "派蒙都进不去吧?": { + "book": "天地万象", + "desc": "将萍姥姥的「壶」打扫干净。", + "guide": "魔神任务 第一章 第二幕「辞行久远之躯」", + "link": "" + }, + "「勇敢的冒险者啊…」": { + "book": "天地万象", + "desc": "不被摩拉束缚手脚,委托他人完成工作。", + "guide": "魔神任务 第一章 第二幕「辞行久远之躯」", + "link": "" + }, + "文物保护": { + "book": "天地万象", + "desc": "虽然无缘得见「椰羊」…但修好了古迹。", + "guide": "魔神任务 第一章 第二幕「辞行久远之躯」", + "link": "" + }, + "漫长的送别": { + "book": "天地万象", + "desc": "筹备好「送仙典仪」所需的道具。", + "guide": "魔神任务 第一章 第二幕「辞行久远之躯」", + "link": "" + }, + "史莱姆,糖适量": { + "book": "天地万象", + "desc": "精心制作糖霜史莱姆。", + "guide": "魔神任务 第一章 第三幕「迫近的客星」", + "link": "" + }, + "一步登天": { + "book": "天地万象", + "desc": "登上俯瞰璃月港的「空中楼阁」。", + "guide": "魔神任务 第一章 第三幕「迫近的客星」", + "link": "" + }, + "爱乐之花": { + "book": "天地万象", + "desc": "对琉璃百合唱了蒙德的曲子…", + "guide": "魔神任务 第一章 第三幕「迫近的客星」", + "link": "" + }, + "审判之时…还没到": { + "book": "天地万象", + "desc": "击败「公子」。", + "guide": "魔神任务 第一章 第三幕「迫近的客星」", + "link": "" + }, + "轨道抛掷": { + "book": "天地万象", + "desc": "击退「漩涡之魔神」。", + "guide": "魔神任务 第一章 第三幕「迫近的客星」", + "link": "" + }, + "终有一别": { + "book": "天地万象", + "desc": "参与「送仙典仪」。", + "guide": "魔神任务 第一章 第三幕「迫近的客星」", + "link": "" + }, + "迫近的客星": { + "book": "天地万象", + "desc": "完成「迫近的客星」。", + "guide": "魔神任务 第一章 第三幕「迫近的客星」", + "link": "" + }, + "哎呀!海盗!": { + "book": "天地万象", + "desc": "陪璐璐、阿飞与小蒙各玩一次海盗游戏。", + "guide": "《璃月港,有海盗!》;1.5 版本更新后在这三人附近挂机很容易刷到;2.4后又新增后续\n*视频地址", + "link": "https://www.bilibili.com/video/BV1q44y1N7Dn?spm_id_from=333.999.0.0" + }, + "厨子与渔夫": { + "book": "天地万象", + "desc": "完成「独钓江雪」与「勿言勿笑」。", + "guide": "《独钓江雪》/《勿言勿笑》各做一次", + "link": "" + }, + "「知天命…」": { + "book": "天地万象", + "desc": "在「好兆头」中,帮助志华找到五个爱情运来临的征兆。", + "guide": "5 个征兆每次随机刷 2 个:1落叶(别吹别烧)、2猫鱼成朋友(别捕鱼别杀鱼)、\n3有鸟成双对(别收割禽肉)、4店主生意兴隆,5围在一起的狗(别赶走!网上流传的赶走狗是错误的)\n简单来说,完成这个成就,“知天命”:按照天命,不要人为干涉。你看到任何征兆什么都别做,看看就可以了;而另外一个成就“…而尽人事”是看到什么就破坏什么(除了生意兴隆无法破坏以外)\n*视频地址", + "link": "https://www.bilibili.com/video/BV11r4y127Rw?spm_id_from=333.999.0.0" + }, + "过量的思念": { + "book": "天地万象", + "desc": "完成五次「愿风带走思念」。", + "guide": "《愿风带走思念》做 5 次。1.0版本(2020年11月11日之前)有BUG会做1次=5次的情况,拿到成就后不会重置。如果进度不为5次会重置为0。从1.1后后重新计算。\n*视频地址", + "link": "https://www.bilibili.com/video/BV1xu41167hS?spm_id_from=333.999.0.0" + }, + "更上一层楼": { + "book": "天地万象", + "desc": "帮助淮安修复望舒客栈的断桥。", + "guide": "《望舒须筑阶》做 2 次", + "link": "" + }, + "时也运也": { + "book": "天地万象", + "desc": "一次就选中了最高价值的璞石。", + "guide": "《点石成…什么》:正确方法是选最亮的石头。\n不放心的话可以卡视角来透视璞石内部,有完整的石珀就可以选。\n注意并不是 100% 有石珀,纯随机,同理“餐品订单”任务\n外观最亮的,通过透视可以看到里面发光、纹路有完整条纹的即可。\n", + "link": "" + }, + "略表歉意": { + "book": "天地万象", + "desc": "向提米道歉。", + "guide": "《鸽子、鸭子、小孩子》里投食鸭子后故意杀掉鸭子,第二天后有机会刷《提米,对不起》", + "link": "" + }, + "凑合…也能用": { + "book": "天地万象", + "desc": "只带给赫尔曼木桩的材料。", + "guide": "《「冒险家」的能力极限》木桩一定要打坏带回", + "link": "" + }, + "「您好,亲爱的爸爸…」": { + "book": "天地万象", + "desc": "了解提米的故事。", + "guide": "每日委托《鸽子习惯一去不回》有三个支线,第一种:正常赶走鸽子,做完没有后续;\n第二种:赶鸽子的时候玩家杀了鸽子,被杜拉夫要求让旅行者亲自去送信,做完后也没有后续;\n第三种:赶鸽子的时候发现任务提示点的地上一团金光,跑过去发现丘丘人把鸽子抓走烧了吃了,打死丘丘人完成任务,没有后续;\n第三种丘丘人支线又分成两种情况,一是地上有一封信,捡到信的话解锁后续每日委托《一个男孩的去信》,做完这个委托后可以拿到成就\n*建议在另外一个每日委托《鸽子、鸭子、小孩子》里不要杀死提米要你喂的鸽子,这样更有可能进入掉信的支线\n至于提米那个略表歉意的成就可以在另外一次刷到鸽子鸭子小孩子以后再做\n*视频讲解地址", + "link": "https://www.bilibili.com/video/BV1xR4y1E7PR" + }, + "妙手怪医": { + "book": "天地万象", + "desc": "治好安娜的病。", + "guide": "《奇药庐中来》要做 3 次,之后解锁《大病初愈》后续任务;第一次做完《大病初愈》后给成就。\n成就拿完后《大病初愈》可能还会反复刷,安娜会出现在三个位置(风车顶上、教堂顶上、风神像手上)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Hw411Z7zp?spm_id_from=333.999.0.0" + }, + "西风佑我": { + "book": "天地万象", + "desc": "见证吉丽安娜的故事。", + "guide": "《惊喜大礼》要做 4 次不同路线(马乔丽小姐、昆恩、莎拉、薇尔小姐)\n最后触发最终剧情(此任务还有后续,盗宝团来复仇,触发“那位先生的委托”)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Ew411f74K?spm_id_from=333.999.0.0" + }, + "学者与「学者」": { + "book": "天地万象", + "desc": "完成「『遗落』的文物」与「『夺宝』小行动」。", + "guide": "《『遗落』的文物》至少要做 3 次,剧情进展到解救学者索拉雅以后有才有几率刷出《『夺宝』小行动》\n整个任务期间,在和宝儿对话时都不能拆穿宝儿是盗宝团的身份,否则任务进度会重置,就算解救了索拉雅也会重置!", + "link": "" + }, + "梦想与工作,诗与面包": { + "book": "天地万象", + "desc": "完成「所谓『工作』」,并获得霖铃的诗集。", + "guide": "完成《港口驶过几艘船,二四六七八》时故意告诉霖铃错误的数量(注意船有驶入和驶出的区别),大概率第二天刷《所谓工作》;如果第二天没刷,可能过一阵子才会刷", + "link": "" + }, + "故人久未归": { + "book": "天地万象", + "desc": "完成「久久望故人」任务。", + "guide": "《久久望故人》:一定要先做过世界任务的小九九,否则可能做完没成就。\n*视频地址", + "link": "https://www.bilibili.com/video/BV11U4y137Tr?spm_id_from=333.999.0.0" + }, + "这本小说真厉害!": { + "book": "天地万象", + "desc": "偷看常九爷的书稿。", + "guide": "《这本小说真厉害!》", + "link": "" + }, + "「…而尽人事。」": { + "book": "天地万象", + "desc": "破坏了四种爱情运来临的征兆。", + "guide": "在《好兆头》中捕鱼、风吹或者火烧落叶、杀鸽子、看到狗要赶走。人为干涉所有的征兆。\n*视频地址", + "link": "https://www.bilibili.com/video/BV11r4y127Rw?spm_id_from=333.999.0.0" + }, + "这不是应急食品": { + "book": "天地万象", + "desc": "在「餐品订单」任务中吃掉了餐品…?", + "guide": "《餐品订单》:成就是刷到任务以后吃掉任务菜品就可以拿,但是蟹黄火腿焗时蔬的食谱是不一定给的(送餐给活跃的欧琳的支线才会给,途中要打史莱姆)(触发哪条支线是随机的)", + "link": "" + }, + "瞳孔中的伪装者": { + "book": "天地万象", + "desc": "帮助珊瑚和龙二破获案件。", + "guide": "完成《万端珊瑚事件簿·结案时刻》后解锁成就,需要先完成前置任务,推测的顺序是:\n万端珊瑚事件簿 → 搜索工作x3次 → 合适的身份 → 迷惑行动x3次 → 结案时刻→收尾工作\n第二和四环节有 3 个分支地点(随机给其中 1 个):稻妻城附近、甘金岛附近、神里屋敷附近\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "真相只有一个…?": { + "book": "天地万象", + "desc": "见证龙二的故事。", + "guide": "做完《万端珊瑚事件簿·结案时刻》后解锁《万端珊瑚事件簿·收尾工作》,新登场大和田剧情。\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "璃月一番": { + "book": "天地万象", + "desc": "用美味的料理治愈汤雯。", + "guide": "前置任务每日委托《家乡之味》交付奇怪的料理(无论哪种料理的奇怪的版本都行)给汤雯,汤雯拿到以后会说味道很微妙。\n正确完成前置任务后,再接到后续每日委托《绝对独特的美味》 (非强制触发,最快第二天可以接到,最慢1个月后),三个选项 (绝云锅巴、腌笃鲜、烤吃虎鱼) 选哪种都可以,交付美味的料理即可解锁成就\n*.2.5版本后在再做一次该任务,汤雯会回璃月\n*视频地址", + "link": "https://www.bilibili.com/video/BV12f4y157fC?spm_id_from=333.999.0.0" + }, + "噼咔,为什么又是噼咔": { + "book": "天地万象", + "desc": "向香菱请教到特别的烹饪手法。", + "guide": "《全能美食队·突破性思维》\n剧情里旭东会让旅行者去璃月的万民堂找卯师傅,卯师傅会给你 2 个选项,选择“也许香菱知道怎么解决他的问题…”这个选项,卯师傅说香菱去轻策庄了,让你找点绝云椒椒和禽肉。这时候你可以不管卯师傅要的东西,自己传送到轻策庄去找香菱对话,最后回去找旭东\n香菱在轻策庄西南的传送点(刚传送过去就会被野猪撞的那个)附近\n此外只要自己去找香菱对话,最后交付道具时交付香菱给的就行了,对话选哪个选项其实无所谓\n*视频地址:https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "双人餐行": { + "book": "天地万象", + "desc": "帮助旭东和龟井宗久各完成一次烹饪。", + "guide": "《全能美食队·烹饪对决》:双方各胜利 1 次即可。\n灭火BUG已经修护,如实正常做任务即可\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "饮食问题": { + "book": "天地万象", + "desc": "帮助芭尔瓦涅校对全部食谱。", + "guide": "《全能美食队·美食小问答》正确答案如下:\n北地苹果焖肉——胡椒 ;天枢肉———清心\n腌笃鲜—————竹笋 ;串串三味——鸟蛋 ;水煮黑背鲈——盐\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "武士饭": { + "book": "天地万象", + "desc": "帮助龟井宗久搜集过全部两侧营地的食材。", + "guide": "《全能美食队·厨道的极意》:左右两边各要做 1 次\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "「给您添蘑菇了!」": { + "book": "天地万象", + "desc": "在「售后服务」中收到顾客绀田传助的抱怨。", + "guide": "前置任务《稻妻销售员》中,告诉绀田传助错误的化肥使用方法\n任务里有三个选项,选择错误的选项\n每次刷到这个任务时,瓦希德告诉你的方法的顺序可能是不一样的,没有固定答案,需要你自己判断哪个选项是错误的(类似璃月港数船)\n教错了的话,绀田传助会说感觉不对劲\n之后解锁每日委托《售后服务》(解锁代表有机会刷到,但不是第二天一定就刷),为绀田传助摘除田地里的蘑菇时,注意要把全部的蘑菇都摘除、摘了一部分时派蒙会说“这下应该差不多了”,同时系统提示可以找绀田传助交任务了;此时不要理会,继续摘蘑菇,全部摘完以后派蒙会说“这下就全部摘干净了”,这时再去找绀田传助交任务,任务完成后解锁成就", + "link": "" + }, + "饮食武士": { + "book": "天地万象", + "desc": "见证龟井宗久加入全能美食队。", + "guide": "做完前置每日《全能美食队·突破性思维》后给世界任务《全能美食队·吃饱的重要性》\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "喂——有人吗?": { + "book": "天地万象", + "desc": "在离岛中发现一处秘密通道。", + "guide": "《离岛之路》:找到秘密通道后就能拿到成就,触发世界任务", + "link": "" + }, + "编辑部的一己之见": { + "book": "天地万象", + "desc": "帮助阿茂和顺吉回到正确的创作轨道。", + "guide": "一阶段:《这本小说…厉害吗?》(支线:天目锻冶屋、九十九物、观察同心们的工作)\n二阶段支线 A:《这本小说…有问题?》\n二阶段支线 B:《这本小说…好像看过?》(按顺序123依次交书即可)\n从剧情逻辑上来看,在一阶段支持编辑阿茂解锁刷到《这本小说…好像看过》的可能性,支持作家顺吉解锁刷到《这本小说…有问题》的可能性\n需要这三个每日都做完,且在 B 支线交付\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "同心训练家?": { + "book": "天地万象", + "desc": "协助朝仓进行5次训练。", + "guide": "做 4 次每日委托《必须精进的武艺》后解锁世界任务《洗刷耻辱的一战》,完成世界任务后有机会刷到每日委托《永不停歇的修炼》,《必须精进的武艺》+《永不停歇的修炼》合计 5 次即可。\n*该任务的SL良性BUG已经修护\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Eb4y1m7y8?spm_id_from=333.999.0.0" + }, + "猜猜我是谁?": { + "book": "天地万象", + "desc": "获知「枕玉」老师的真实身份。", + "guide": "《「八重堂」的邀约》", + "link": "" + }, + "至少有了个结局": { + "book": "天地万象", + "desc": "听顺吉讲述完他所构思的故事。", + "guide": "需要在 2.1 版本后(2.0 版本做过的不算)重做《这本小说…有问题?》和《这本小说…好像看过?》才能解锁世界任务《故事构思法》 ,做完世界任务后得到成\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "她和她的猫": { + "book": "天地万象", + "desc": "陪寝子前往影向山,寻找「阿响」的痕迹。", + "guide": "做完寝子系列的世界任务后,累积做 4 个寝子相关每日委托(指《神社大扫除》、《鱼之味》、《猫之迹》,大岛纯平那三个不算)后解锁世界任务《鸣神寻踪》,完成世界任务后解锁成就\n*视频地址:https://www.bilibili.com/video/BV1T3411m7kJ", + "link": "https://www.bilibili.com/video/BV1T3411m7kJ" + }, + "啊哈…什么上钩了?": { + "book": "天地万象", + "desc": "与凯万一起钓起奇怪的东西…", + "guide": "√完结!\n累积做3次前置每日委托《鱼钩上的绝景?》,有墩墩桃、鸟蛋、蘑菇三种支线(注意是累积3次),第二天4点后解锁世界任务《鱼钩的物尽其用》,做完世界任务拿到成就。\n任务还有后续,但是无成就(可能未来版本会加后续成就)。\n做完世界任务以后有机会接到每日委托《鱼钩的奇异时光?》,和前边的也差不多,有帕蒂沙兰、香辛果、甜甜花三种支线", + "link": "" + }, + "卡里米之蕈兽": { + "book": "天地万象", + "desc": "见证哈特姆在「期货交易」大赚一笔!", + "guide": "每日委托《吞金和蓄财》\n√完结!\n正式服改为全随机后续,正常需要做5次拿到2成就,最速欧皇可以3次拿2成就。\n2022/9/5更新:\n「吞金料理」中有3种料理:摩拉肉,黄油鸡和「堆高高」。\n建议选择美味的堆高高。\n2022/9/16更新:\n现在发现变成了随机后续,给任何料理都会触发任意成就,原本应该给2次料理2个成就的,也可以1次料理2成就。", + "link": "" + }, + "当财运来敲门": { + "book": "天地万象", + "desc": "将苹果酿带给哈特姆。", + "guide": null, + "link": "" + }, + "捉猫记": { + "book": "天地万象", + "desc": "帮莎莉寻找过所有小猫。", + "guide": "每日委托《喵…喵喵?喵!喵。》\n至少要做 3(但老板还有第4只猫)次,每次随机给一只猫。\n「黑白色」的猫「拉勒」:【喵,喵喵喵,喵——】\n「深灰色」的猫「纳尔吉斯」:【喵!喵喵,喵】\n「灰黑条纹」的猫「萝赞」:【喵喵喵,喵喵喵】", + "link": "" + }, + "推分算数原理": { + "book": "天地万象", + "desc": "帮助加尔恰完善他的机器。", + "guide": "每日委托《加尔恰的赞歌》系列\n任务超级长,参考《稻妻珊瑚侦探事件簿》\n推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "「为了工作。」": { + "book": "天地万象", + "desc": "为范兵卫采到更多的蘑菇。", + "guide": "每日委托《御用在他乡》\n√完结!\n可以一次性拿到成就 :要求采5个蘑菇,但可以采7个给成就\n推测需要先做完稻妻的世界任务《踏鞴物语》系列才能在须弥接到这个委托。\n做完第一次以后他以后还会让你摘蘑菇,对话内容会有些变化", + "link": "" + }, + "放松疗法": { + "book": "天地万象", + "desc": "满足三个病人的愿望。", + "guide": "每日委托《谨遵医嘱》\n《洁净与健康》不是前置任务,可以直接刷到了《谨遵医嘱》\n《谨遵医嘱》这个任务是你和病人对话完成就可以回去交差了的,但这样拿不到成就。你需要:\n细节:① 主动为古尔根清理田里的杂草,清理完以后再次与古尔根对话;② 阿兹拉说药太苦,和她对话,送给她【糖】;③ 阿夫塔想吃肉,给他【美味的烤肉排】。\n满足病人的愿望以后再回去交差。其中阿兹拉和阿夫塔不会主动问你要东西,需要你听完他们的话以后再次与他们对话来交付道具", + "link": "" + }, + "斩花除根": { + "book": "天地万象", + "desc": "找到并打倒逃走的骗骗花。", + "guide": "每日委托《生不出的花》、《花开之时》\n√完结\n前置累积3次《生不出的花》后,后续出《花开之时》,\n随机后续1,有骗骗花的支线才有成就,追击并干掉骗骗花后获得成就。\n随机后续2,无骗骗花,寄了,再来3次……\n细节:前置有 2 个支线,一个是提供肥料,另一个是浇水。", + "link": "" + }, + "出港日": { + "book": "天地万象", + "desc": "拿到亚历山德拉的留信…", + "guide": "世界任务《代价》*视频地址:BV1ge411u7qq", + "link": "https://www.bilibili.com/video/BV1ge411u7qq?spm_id_from=333.999.0.0" + }, + "摩拉无罪": { + "book": "天地万象", + "desc": "见证全能美食队在须弥的故事。", + "guide": "世界任务《全能美食队·职责之内》 \n*视频地址:BV1p14y1a7i9\n", + "link": "https://www.bilibili.com/video/BV1p14y1a7i9/?spm_id_from=333.999.0.0" + }, + "天有多高,地有多…": { + "book": "天地万象", + "desc": "协助法伽尼进行测量工作。", + "guide": "每日委托《衡量世界之人!》\n1和2分支都是随机给的,其中分支1还有3种怪:丘丘人、蕈兽、遗迹蛇\n至少做 3 次,分别是:① 打怪;② 设置信标;③ 回收信标+打怪。", + "link": "" + }, + "结题时刻": { + "book": "天地万象", + "desc": "见证爱拉尼在须弥的故事。", + "guide": "世界任务《求学漫漫路》*视频地址:BV1oB4y1g7Bk", + "link": "https://www.bilibili.com/video/BV1oB4y1g7Bk?spm_id_from=333.999.0.0" + }, + "蔷薇绽放的若干条件": { + "book": "天地万象", + "desc": "帮助柯莱照顾须弥蔷薇。", + "guide": "世界任务《及时浇灌》*视频地址:BV16g411D7Uj", + "link": "https://www.bilibili.com/video/BV16g411D7Uj?spm_id_from=333.999.0.0" + }, + "梦想,梦想!你们去了哪里?": { + "book": "天地万象", + "desc": "见证贾维与「梦想」的故事。", + "guide": "世界任务《趁梦想气息逗留》*视频地址:BV1kU4y1z7Kh", + "link": "https://www.bilibili.com/video/BV1kU4y1z7Kh?spm_id_from=333.999.0.0" + }, + "非必要需求": { + "book": "天地万象", + "desc": "找到古拉布吉尔给小蛇制作的所有道具。", + "guide": "每日委托《宝贝计划》\n帮古拉布吉尔找宠物蛇口粮,有 5 个支线。任务是你找到【古拉布吉尔的特制宠物蛇口粮】交给 NPC 就可以完成,但是做成就需要你额外找到 3 个东西:【奇怪的珠子】、【奇怪的小型帽子】、【破旧的架子】。\n每次随机给1个隐藏道具,但是也可能没有。", + "link": "" + }, + "船说了算": { + "book": "天地万象", + "desc": "与拉菲克成功地测试了船体强度。", + "guide": "每日委托《问题的转化》系列\n√完结!\n目前第三段就可以拿到成就,但是还有后续,可能未来版本还有成就。\n(类似稻妻八重堂作家和编辑《小说有问题》在后续版本上线新成就。)\n细节:在《问题的转化·理论强度》中拿5块木头,这样在《问题的转化·负载问题》中可以成功拿到成就,失败的支线可能会退回到第二阶段。", + "link": "" + }, + "问题何在?": { + "book": "天地万象", + "desc": "享受三道贾法尔制作的料理。", + "guide": "每日委托《食与学》\n每次随机给一个。\n完成 3 个支线:薄荷豆汤、绿汁脆球、烤肉卷", + "link": "" + }, + "须弥博学者": { + "book": "天地万象", + "desc": "答对六道不同的问题。", + "guide": "每日委托《教令院,小问题》\n√完结!\n总共 6 道题,每次抽 3 道,正确答案分别是:1、阿弥利多学院;2、悉般多摩学院;3、圣树;4、防沙壁;5、驮兽;6、蕈兽", + "link": "" + }, + "一步之遥": { + "book": "天地万象", + "desc": "在与希尔米的赛跑中大意落败…", + "guide": "每日委托《跑,希尔米,跑》*视频地址:BV1qd4y1q7tT", + "link": "https://www.bilibili.com/video/BV1qd4y1q7tT/?spm_id_from=333.999.0.0" + }, + "医用笔迹": { + "book": "天地万象", + "desc": "帮助马鲁夫正确地解析药方。", + "guide": "每日委托《良药难求》 *视频地址:BV1CV4y1N7aU", + "link": "https://www.bilibili.com/video/BV1CV4y1N7aU/?spm_id_from=333.999.0.0" + }, + "手有余香": { + "book": "天地万象", + "desc": "见证内尔敏的故事。", + "guide": "每日委托《沙上花·余香》", + "link": "" + }, + "除了时间,什么也没丢": { + "book": "天地万象", + "desc": "解开两座日晷的秘密。", + "guide": "《时与风》", + "link": "" + }, + "与一位往昔神灵的谈话": { + "book": "天地万象", + "desc": "了解一位往昔神灵的故事。", + "guide": "《宝藏归离》", + "link": "" + }, + "卧龙藏螭": { + "book": "天地万象", + "desc": "了解关于「螭」的故事。", + "guide": "《古云有「螭」》", + "link": "" + }, + "战祸不息": { + "book": "天地万象", + "desc": "将某个古老遗迹中的宝物卖个好价钱…", + "guide": "《靖世九柱》宝物无论卖给谁都可以完成成就", + "link": "" + }, + "渌华池之影": { + "book": "天地万象", + "desc": "帮助梵米尔取到他想要的景致。", + "guide": "《渌华景画》完成任务后去渌华池东边传送点附近找梵米尔对话,选第一个选项后才会解锁成就", + "link": "" + }, + "零号玩家": { + "book": "天地万象", + "desc": "陪小姜玩一场简单的游戏。", + "guide": "《游戏一场》", + "link": "" + }, + "盘木森森,荫蔽家庭": { + "book": "天地万象", + "desc": "见证元鸿一家的故事。", + "guide": "《孤木孑立,无林可依》", + "link": "" + }, + "命运初动": { + "book": "天地万象", + "desc": "完成任务「拾枝者·戴因斯雷布」。", + "guide": "世界任务 第一章 第四幕·报幕「拾枝者·戴因斯雷布」(官方把这个算作世界任务)", + "link": "" + }, + "贼寇、狂人与漆黑之谜": { + "book": "天地万象", + "desc": "确认大盗宝家的异状。", + "guide": "魔神任务 第一章 第四幕「我们终将重逢」", + "link": "" + }, + "命运交叉的废都": { + "book": "天地万象", + "desc": "逃离诡异的遗迹。", + "guide": "魔神任务 第一章 第四幕「我们终将重逢」", + "link": "" + }, + "将诸神的力量付之一笑": { + "book": "天地万象", + "desc": "得知「命运的织机」正在进行中…", + "guide": "魔神任务 第一章 第四幕「我们终将重逢」", + "link": "" + }, + "狂言破碎之时": { + "book": "天地万象", + "desc": "击退深渊使徒。", + "guide": "魔神任务 第一章 第四幕「我们终将重逢」", + "link": "" + }, + "我们终将重逢": { + "book": "天地万象", + "desc": "完成「我们终将重逢」。", + "guide": "魔神任务 第一章 第四幕「我们终将重逢」", + "link": "" + }, + "雷电将至": { + "book": "天地万象", + "desc": "得到搭乘「死兆星」号前往稻妻的机会。", + "guide": "魔神任务 第二章 序幕「振袖秋风问红叶」", + "link": "" + }, + "开战!": { + "book": "天地万象", + "desc": "在「南十字武斗会」中取得首次胜利。", + "guide": "魔神任务 第二章 序幕「振袖秋风问红叶」", + "link": "" + }, + "振袖秋风问红叶": { + "book": "天地万象", + "desc": "完成「振袖秋风问红叶」。", + "guide": "魔神任务 第二章 序幕「振袖秋风问红叶」", + "link": "" + }, + "朝着雷霆骤雨": { + "book": "天地万象", + "desc": "抵达「异人居留地」。", + "guide": "魔神任务 第二章 第一幕「不动鸣神,恒常乐土」", + "link": "" + }, + "柊三十郎": { + "book": "天地万象", + "desc": "顺利押送货物,离开离岛。", + "guide": "魔神任务 第二章 第一幕「不动鸣神,恒常乐土」", + "link": "" + }, + "所有人的愿望之诗": { + "book": "天地万象", + "desc": "接触「永恒」的象征,「千手百眼神像」。", + "guide": "魔神任务 第二章 第一幕「不动鸣神,恒常乐土」", + "link": "" + }, + "屏风后的白鹭公主": { + "book": "天地万象", + "desc": "与神里家的大小姐正式会面。", + "guide": "魔神任务 第二章 第一幕「不动鸣神,恒常乐土」", + "link": "" + }, + "御守、仁义、天下一": { + "book": "天地万象", + "desc": "完成「三个小心愿」。", + "guide": "魔神任务 第二章 第一幕「不动鸣神,恒常乐土」", + "link": "" + }, + "牢屋敷花火祭": { + "book": "天地万象", + "desc": "成功营救正胜。", + "guide": "魔神任务 第二章 第一幕「不动鸣神,恒常乐土」", + "link": "" + }, + "直面雷光": { + "book": "天地万象", + "desc": "成为「眼狩令」的目标。", + "guide": "魔神任务 第二章 第二幕「无念无想,泡影断灭」", + "link": "" + }, + "异人一揆": { + "book": "天地万象", + "desc": "顺利融入反抗军中。", + "guide": "魔神任务 第二章 第二幕「无念无想,泡影断灭」", + "link": "" + }, + "不动鸣神,恒常乐土": { + "book": "天地万象", + "desc": "完成「不动鸣神,恒常乐土」。", + "guide": "魔神任务 第二章 第一幕「不动鸣神,恒常乐土」", + "link": "" + }, + "无念无想,泡影断灭": { + "book": "天地万象", + "desc": "完成「无念无想,泡影断灭」。", + "guide": "魔神任务 第二章 第二幕「无念无想,泡影断灭」", + "link": "" + }, + "SWORDFISH Ⅱ": { + "book": "天地万象", + "desc": "获得剑鱼二番队的认可。", + "guide": "魔神任务 第二章 第三幕「千手百眼,天下人间」", + "link": "" + }, + "虽是露水般的愿望…": { + "book": "天地万象", + "desc": "找到派发邪眼的幕后黑手。", + "guide": "魔神任务 第二章 第三幕「千手百眼,天下人间」", + "link": "" + }, + "特大号花火祭": { + "book": "天地万象", + "desc": "燃放烟花引开守卫。", + "guide": "魔神任务 第二章 第三幕「千手百眼,天下人间」", + "link": "" + }, + "御前生死斗": { + "book": "天地万象", + "desc": "在「御前决斗」中,获得胜利。", + "guide": "魔神任务 第二章 第三幕「千手百眼,天下人间」", + "link": "" + }, + "「他们」的愿望…": { + "book": "天地万象", + "desc": "回应「千手百眼神像」中所有的愿望。", + "guide": "魔神任务 第二章 第三幕「千手百眼,天下人间」", + "link": "" + }, + "千手百眼,天下人间": { + "book": "天地万象", + "desc": "完成「千手百眼,天下人间」。", + "guide": "魔神任务 第二章 第三幕「千手百眼,天下人间」", + "link": "" + }, + "「诸事平安」": { + "book": "天地万象", + "desc": "与王平安一起重修铜雀的庙宇。", + "guide": "世界任务《身后事·归于山中》", + "link": "" + }, + "安娜冒险记": { + "book": "天地万象", + "desc": "帮助安娜成为一名冒险家。", + "guide": "《冒险家,安娜!》\n拿到成就的过程和给安娜治病差不多,且需要先给安娜治好病,也就是完成每日委托成就《妙手怪医》,之后完成前置任务:《冒险家测验·作战方式》、《冒险家测验·冒险诀窍》、《冒险家测验·起飞方式》,最后接到后续《冒险家,安娜!》,第一次完成任务后拿到成就\n(做完成就后还有后续支线,其中一条支线有“彩蛋”级内容,但没成就)\n*前置很阴间主要是情商选项,后续这4个也很阴间不按套路出牌\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Bu411r7Kb?spm_id_from=333.999.0.0" + }, + "远大前程": { + "book": "天地万象", + "desc": "一位少年即将启程远行…", + "guide": "《小海盗,要出海!》\n前置《哎呀!海盗想长大!》、《随水而来的烦恼》\n后续《小小的远行》系列 3 个(没成就)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1q44y1N7Dn?spm_id_from=333.999.0.0" + }, + "群玉临空": { + "book": "天地万象", + "desc": "完成群玉阁重建工作。", + "guide": "魔神任务 间章 第一幕「风起鹤归」", + "link": "" + }, + "沧海生威": { + "book": "天地万象", + "desc": "击退「漩涡的余威」跋掣。", + "guide": "魔神任务 间章 第一幕「风起鹤归」", + "link": "" + }, + "前尘一梦": { + "book": "天地万象", + "desc": "见证村庄历史中的真相。", + "guide": "魔神任务 间章 第一幕「风起鹤归」", + "link": "" + }, + "风起鹤归": { + "book": "天地万象", + "desc": "完成「风起鹤归」。", + "guide": "魔神任务 间章 第一幕「风起鹤归」", + "link": "" + }, + "窥伺「深渊」时…": { + "book": "天地万象", + "desc": "虽然与戴因再会,却正被深渊窥伺…", + "guide": "魔神任务 第二章 第四幕「回响渊底的安魂曲」", + "link": "" + }, + "美丽的与被诅咒的": { + "book": "天地万象", + "desc": "知晓黑蛇骑士与丘丘人的秘密。", + "guide": "魔神任务 第二章 第四幕「回响渊底的安魂曲」", + "link": "" + }, + "生命意志与痛苦深渊": { + "book": "天地万象", + "desc": "击败深渊使徒。", + "guide": "魔神任务 第二章 第四幕「回响渊底的安魂曲」", + "link": "" + }, + "愿荣光同在": { + "book": "天地万象", + "desc": "完成「回响渊底的安魂曲」。", + "guide": "魔神任务 第二章 第四幕「回响渊底的安魂曲」", + "link": "" + }, + "蹈刃不旋": { + "book": "天地万象", + "desc": "在「危途疑踪」中突破阻碍成功与魈会合。", + "guide": "魔神任务 间章 第二幕「危途疑踪」", + "link": "" + }, + "层层惊骇": { + "book": "天地万象", + "desc": "成功逃离位于层岩巨渊最下方的神秘空间。", + "guide": "魔神任务 间章 第二幕「危途疑踪」", + "link": "" + }, + "以魂证心": { + "book": "天地万象", + "desc": "完成「危途疑踪」。", + "guide": "魔神任务 间章 第二幕「危途疑踪」", + "link": "" + }, + "阿卡西之声": { + "book": "天地万象", + "desc": "聆听神明的智慧之声。", + "guide": " 3.0魔神主线白嫖8个", + "link": "" + }, + "商人与知识之门": { + "book": "天地万象", + "desc": "与多莉见面并买下罐装知识。", + "guide": null, + "link": "" + }, + "罐装时光屋": { + "book": "天地万象", + "desc": "使用罐装知识提升了战力。", + "guide": null, + "link": "" + }, + "穿越烟帷与暗林": { + "book": "天地万象", + "desc": "完成「穿越烟帷与暗林」。", + "guide": null, + "link": "" + }, + "负荷口味的既视感": { + "book": "天地万象", + "desc": "依靠本能选到日落果口味的糖果盒。", + "guide": null, + "link": "" + }, + "派蒙都不吃!": { + "book": "天地万象", + "desc": "吃掉一看就难吃的「椰炭饼」。", + "guide": null, + "link": "" + }, + "是梦终将醒来": { + "book": "天地万象", + "desc": "从「花神诞日的轮回」中醒来。", + "guide": null, + "link": "" + }, + "千朵玫瑰带来的黎明": { + "book": "天地万象", + "desc": "完成「千朵玫瑰带来的黎明」。", + "guide": null, + "link": "" + }, + "穿行躯壳之灵": { + "book": "天地万象", + "desc": "在纳西妲通过虚空「附身」他人后共享感官。", + "guide": "3.1魔神主线", + "link": "" + }, + "虚构的凯旋式": { + "book": "天地万象", + "desc": "被遭到「博士」控制的民众们视为拯救世界的英雄。", + "guide": null, + "link": "" + }, + "「神明」回以凝视": { + "book": "天地万象", + "desc": "在连接「神明意识」后看到「散兵」的过去。", + "guide": null, + "link": "" + }, + "迷梦与空幻与欺骗": { + "book": "天地万象", + "desc": "完成「迷梦与空幻与欺骗」。", + "guide": null, + "link": "" + }, + "沙海奇兵": { + "book": "天地万象", + "desc": "发现流沙之下的古代神殿。", + "guide": null, + "link": "" + }, + "残阳浩劫之后": { + "book": "天地万象", + "desc": "通过赤王祭司的「遗言」了解到过去的事情。", + "guide": null, + "link": "" + }, + "赤土之王与三朝圣者": { + "book": "天地万象", + "desc": "完成「赤土之王与三朝圣者」。", + "guide": null, + "link": "" + }, + "Eremitis ne credite": { + "book": "天地万象", + "desc": "协同赛诺将拉赫曼一行带入须弥。", + "guide": null, + "link": "" + }, + "胜利的方程式": { + "book": "天地万象", + "desc": "完成「计划」的准备工作。", + "guide": null, + "link": "" + }, + "最长的一日": { + "book": "天地万象", + "desc": "在「识藏日」当天拯救神明。", + "guide": null, + "link": "" + }, + "…并非是适格者": { + "book": "天地万象", + "desc": "阻止「伪神」的诞生。", + "guide": null, + "link": "" + }, + "虚空鼓动,劫火高扬": { + "book": "天地万象", + "desc": "完成「虚空鼓动,劫火高扬」。", + "guide": null, + "link": "" + }, + "美妙旅程:序": { + "book": "心跳的记忆", + "desc": "完成「美妙旅程」,解锁全部结局。", + "guide": "邀约事件·班尼特 第一幕「美妙旅程」", + "link": "" + }, + "霹雳闪雷真君": { + "book": "心跳的记忆", + "desc": "见证班尼特足以影响天气的厄运。", + "guide": "邀约事件·班尼特 第一幕「美妙旅程」", + "link": "" + }, + "运气即实力!": { + "book": "心跳的记忆", + "desc": "在不失误的情况下解开机关,取得宝藏。", + "guide": "邀约事件·班尼特 第一幕「美妙旅程」", + "link": "" + }, + "诸邪退散": { + "book": "心跳的记忆", + "desc": "完成「寻妖觅邪记」,解锁全部结局。", + "guide": "邀约事件·重云 第一幕「寻妖觅邪记」", + "link": "" + }, + "慧眼识妖!": { + "book": "心跳的记忆", + "desc": "正确鉴定所有情报。", + "guide": "邀约事件·重云 第一幕「寻妖觅邪记」", + "link": "" + }, + "辣椒英雄": { + "book": "心跳的记忆", + "desc": "制作错误的冰棍,引发重云「纯阳之体」的剧烈反应。", + "guide": "邀约事件·重云 第一幕「寻妖觅邪记」", + "link": "" + }, + "能跨越的边界线": { + "book": "心跳的记忆", + "desc": "完成「治愈的清泉」,解锁全部结局。", + "guide": "邀约事件·芭芭拉 第一幕「治愈的清泉」", + "link": "" + }, + "偶像的可靠防线": { + "book": "心跳的记忆", + "desc": "成功劝走艾伯特和其他芭芭拉的粉丝。", + "guide": "邀约事件·芭芭拉 第一幕 「治愈的清泉」", + "link": "" + }, + "蒙德城的麻辣传说": { + "book": "心跳的记忆", + "desc": "品尝芭芭拉的辣味饮料。", + "guide": "邀约事件·芭芭拉 第一幕「治愈的清泉」", + "link": "" + }, + "完美而坚强的女仆": { + "book": "心跳的记忆", + "desc": "完成「骑士修行之道」,解锁全部结局。", + "guide": "邀约事件·诺艾尔 第一幕「骑士修行之道」", + "link": "" + }, + "「…因为羁绊。」": { + "book": "心跳的记忆", + "desc": "帮助诺艾尔找到自己强大的原因。", + "guide": "邀约事件·诺艾尔 第一幕「骑士修行之道」", + "link": "" + }, + "只有玫瑰知道的世界": { + "book": "心跳的记忆", + "desc": "阅读诺艾尔的学习笔记。", + "guide": "邀约事件·诺艾尔 第一幕「骑士修行之道」", + "link": "" + }, + "消除焦虑的最好办法": { + "book": "心跳的记忆", + "desc": "完成「骑士备考之道」,解锁全部结局。", + "guide": "邀约事件·诺艾尔 第二幕「骑士备考之道」", + "link": "" + }, + "女仆骑士不会受伤": { + "book": "心跳的记忆", + "desc": "与诺艾尔一起听过《异国骑士璃月行记》。", + "guide": "邀约事件·诺艾尔 第二幕「骑士备考之道」", + "link": "" + }, + "蒙德做题王": { + "book": "心跳的记忆", + "desc": "阅读诺艾尔的学习笔记。", + "guide": "邀约事件·诺艾尔 第二幕「骑士备考之道」", + "link": "" + }, + "迪奥娜特调,搅拌,不要摇": { + "book": "心跳的记忆", + "desc": "完成「猫与特调酒」,解锁全部结局。", + "guide": "邀约事件·迪奥娜 第一幕「猫与特调酒」", + "link": "" + }, + "但是,代价是…": { + "book": "心跳的记忆", + "desc": "帮助迪奥娜找到特制基底饮品。", + "guide": "邀约事件·迪奥娜 第一幕「猫与特调酒」", + "link": "" + }, + "猫咪殿下": { + "book": "心跳的记忆", + "desc": "将所有猫咪带回「猫尾酒馆」。", + "guide": "邀约事件·迪奥娜 第一幕「猫与特调酒」", + "link": "" + }, + "皆大欢喜": { + "book": "心跳的记忆", + "desc": "完成「家政官的日常工作」,解锁全部结局。", + "guide": "邀约事件·托马 第一幕「家政官的日常工作」", + "link": "" + }, + "家政高手": { + "book": "心跳的记忆", + "desc": "在规定时间内完成大扫除。", + "guide": "邀约事件·托马 第一幕「家政官的日常工作」", + "link": "" + }, + "沧海不归客": { + "book": "心跳的记忆", + "desc": "与托马一起见证犬少将的故事", + "guide": "邀约事件·托马 第一幕「家政官的日常工作」", + "link": "" + }, + "「高」人一等": { + "book": "心跳的记忆", + "desc": "完成「呜呼流·生长之术」,解锁全部结局。", + "guide": "邀约事件·早柚 第一幕「呜呼流·生长之术」", + "link": "" + }, + "貉级忍者": { + "book": "心跳的记忆", + "desc": "在敏捷度训练中获得早柚的最高评价。", + "guide": "邀约事件·早柚 第一幕「呜呼流·生长之术」,30 秒内完成", + "link": "" + }, + "料理效果:移动速度降低": { + "book": "心跳的记忆", + "desc": "没能劝阻早柚的暴饮暴食…", + "guide": "邀约事件·早柚 第一幕「呜呼流·生长之术」", + "link": "" + }, + "南十字荣誉船员": { + "book": "心跳的记忆", + "desc": "完成「南十字闪耀时」,解锁全部结局。", + "guide": "邀约事件·北斗 第一幕「南十字闪耀时」", + "link": "" + }, + "洒下甘露三千担": { + "book": "心跳的记忆", + "desc": "与北斗共同参加了轻策庄的宴会。", + "guide": "邀约事件·北斗 第一幕「南十字闪耀时」", + "link": "" + }, + "孤云阁买家俱乐部": { + "book": "心跳的记忆", + "desc": "询问了北斗真正交易的内容。", + "guide": "邀约事件·北斗 第一幕「南十字闪耀时」", + "link": "" + }, + "海祇大将": { + "book": "心跳的记忆", + "desc": "完成「犬大将的特别行动」,解锁全部结局。", + "guide": "邀约事件·五郎 第一幕「犬大将的特别行动」", + "link": "" + }, + "运势无常": { + "book": "心跳的记忆", + "desc": "在神社抽到过所有的运势签。", + "guide": "邀约事件·五郎 第一幕「犬大将的特别行动」(可以直接原地读取进度,把 4 种签都选 1 次就行了)", + "link": "" + }, + "说还是不说,这是个问题。": { + "book": "心跳的记忆", + "desc": "在八重堂察觉了希娜小姐的真实身份。", + "guide": "邀约事件·五郎 第一幕「犬大将的特别行动」", + "link": "" + }, + "天权伴星": { + "book": "心跳的记忆", + "desc": "完成「玉阁归客至」,解锁全部结局。", + "guide": "邀约事件·凝光 第一幕「玉阁归客至」", + "link": "" + }, + "有备才能无患": { + "book": "心跳的记忆", + "desc": "鱼肉,当然是越多越好。", + "guide": "邀约事件·凝光 第一幕「玉阁归客至」", + "link": "" + }, + "过当防卫": { + "book": "心跳的记忆", + "desc": "一石激起千层浪,凝光的假期看来无福消受了。", + "guide": "邀约事件·凝光 第一幕「玉阁归客至」", + "link": "" + }, + "曲终人未散": { + "book": "心跳的记忆", + "desc": "完成「弦歌知雅意」,解锁全部结局。", + "guide": "邀约事件·云堇 第一幕「弦歌知雅意」", + "link": "" + }, + "愿此刻永恒": { + "book": "心跳的记忆", + "desc": "与云堇合影留念。", + "guide": "邀约事件·云堇 第一幕「弦歌知雅意」", + "link": "" + }, + "严师出高徒": { + "book": "心跳的记忆", + "desc": "在不击中任何「蓝色稻草人」的情况下完成演练。", + "guide": "邀约事件·云堇 第一幕「弦歌知雅意」", + "link": "" + }, + "荒泷派首席顾问": { + "book": "心跳的记忆", + "desc": "完成「帮派的日常事务」,解锁全部结局。", + "guide": "邀约事件·久岐忍 第一幕「帮派的日常事务」", + "link": "" + }, + "再看一眼!": { + "book": "心跳的记忆", + "desc": "一睹久岐忍身着巫女服的风采。", + "guide": "邀约事件·久岐忍 第一幕「帮派的日常事务」", + "link": "" + }, + "「楼上的区域…」": { + "book": "心跳的记忆", + "desc": "在惊动九条裟罗和久岐忍之前被劝阻。", + "guide": "邀约事件·久岐忍 第一幕「帮派的日常事务」", + "link": "" + }, + "你以为是本格吧?": { + "book": "心跳的记忆", + "desc": "完成「风暴捕物帐」,解锁全部结局。", + "guide": "邀约事件·鹿野院平藏 第一幕「风暴捕物帐」", + "link": "" + }, + "吾乃完美真探!": { + "book": "心跳的记忆", + "desc": "分析动机和犯罪事实一次成功。", + "guide": "邀约事件·鹿野院平藏 第一幕「风暴捕物帐」", + "link": "" + }, + "珊瑚宫的祈祷": { + "book": "心跳的记忆", + "desc": "询问了五郎,心海是否知道海祇岛的事。", + "guide": "邀约事件·鹿野院平藏 第一幕「风暴捕物帐」", + "link": "" + }, + "风与异乡人": { + "book": "尘世巡游·第一辑", + "desc": "使用风元素吹散一株蒲公英。", + "guide": null, + "link": "" + }, + "千嶂万仞": { + "book": "尘世巡游·第一辑", + "desc": "掌握「岩」的元素力。", + "guide": null, + "link": "" + }, + "流水叮咛": { + "book": "尘世巡游·第一辑", + "desc": "集齐全套《清泉之心》。", + "guide": "书本收集", + "link": "" + }, + "神戟狂言凌云霄": { + "book": "尘世巡游·第一辑", + "desc": "集齐全套《神霄折戟录》。", + "guide": "书本收集", + "link": "" + }, + "醉客与狼的相遇": { + "book": "尘世巡游·第一辑", + "desc": "集齐全套《醉客轶事》。", + "guide": "书本收集", + "link": "" + }, + "清泉、白马与月光": { + "book": "尘世巡游·第一辑", + "desc": "集齐全套《竹林月夜》。", + "guide": "书本收集", + "link": "" + }, + "灿若惊雷": { + "book": "尘世巡游·第二辑", + "desc": "掌握「雷」的元素力。", + "guide": null, + "link": "" + }, + "蒲公英的故乡": { + "book": "尘世巡游·第二辑", + "desc": "集齐全套《蒲公英海的狐狸》。", + "guide": null, + "link": "" + }, + "友谊与牺牲的价值": { + "book": "尘世巡游·第二辑", + "desc": "集齐全套《野猪公主》。", + "guide": null, + "link": "" + }, + "百亿昼夜的百亿青春": { + "book": "尘世巡游·第二辑", + "desc": "集齐全套《少女薇拉的忧郁》。", + "guide": null, + "link": "" + }, + "丘丘学的扩张": { + "book": "尘世巡游·第二辑", + "desc": "集齐全套《丘丘人习俗考察》。", + "guide": null, + "link": "" + }, + "撷草瞻华": { + "book": "尘世巡游·第三辑", + "desc": "掌握「草」的元素力。", + "guide": "第一次接触草元素", + "link": "" + }, + "居尔城往事": { + "book": "尘世巡游·第三辑", + "desc": "集齐全套《希鲁伊与希琳的故事》。", + "guide": "书全在须弥城图书馆,良心无阴间,全部一次性收集齐\n*视频地址:BV13g411D7EM", + "link": "https://www.bilibili.com/video/BV13g411D7EM?spm_id_from=333.999.0.0" + }, + "火一般辉煌": { + "book": "尘世巡游·第三辑", + "desc": "集齐全套《遐叶论经》。", + "guide": null, + "link": "" + }, + "法里斯之旅": { + "book": "尘世巡游·第三辑", + "desc": "集齐全套《浮槃歌卷》。", + "guide": null, + "link": "" + }, + "人铸赋形": { + "book": "冒险手艺", + "desc": "锻造一把四星武器。", + "guide": null, + "link": "" + }, + "生存专家": { + "book": "冒险手艺", + "desc": "掌握40种菜肴的制作方法。", + "guide": null, + "link": "" + }, + "星级大厨": { + "book": "冒险手艺", + "desc": "40个料理食谱达到熟练。", + "guide": null, + "link": "" + }, + "如日方升的旅程": { + "book": "英雄之旅", + "desc": "角色首次突破至6阶。", + "guide": null, + "link": "" + }, + "百炼千锤": { + "book": "英雄之旅", + "desc": "将一个武器突破至6阶。", + "guide": null, + "link": "" + }, + "你所不知道的事": { + "book": "英雄之旅", + "desc": "将16个角色好感等级提升至10级。", + "guide": "尘歌壶的好感经验为所有入驻角色增加同样的经验,不会因为你只放一个角色就给你 8 倍的经验", + "link": "" + }, + "大地的馈赠": { + "book": "英雄之旅", + "desc": "获取800次「藏金之花」或「启示之花」的馈藏。", + "guide": "~", + "link": "" + }, + "英雄之礼": { + "book": "英雄之旅", + "desc": "获得四星圣遗物。", + "guide": null, + "link": "" + }, + "长歌回响": { + "book": "英雄之旅", + "desc": "将一个四星圣遗物强化至最高等级。", + "guide": null, + "link": "" + }, + "神话秘藏": { + "book": "英雄之旅", + "desc": "获得五星圣遗物。", + "guide": null, + "link": "" + }, + "祝圣篇章": { + "book": "英雄之旅", + "desc": "将一个五星圣遗物强化至最高等级。", + "guide": null, + "link": "" + }, + "大地勘探·蒙德": { + "book": "蒙德·风与牧歌的城邦", + "desc": "点亮整个蒙德地图(龙脊雪山地区除外)。", + "guide": null, + "link": "" + }, + "千风拂去": { + "book": "蒙德·风与牧歌的城邦", + "desc": "解锁蒙德的所有传送锚点(龙脊雪山地区除外)。", + "guide": null, + "link": "" + }, + "且听风吟": { + "book": "蒙德·风与牧歌的城邦", + "desc": "将蒙德的七天神像供奉至满级。", + "guide": null, + "link": "" + }, + "圣龛巡礼·蒙德": { + "book": "蒙德·风与牧歌的城邦", + "desc": "解除蒙德所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "风中引路人": { + "book": "蒙德·风与牧歌的城邦", + "desc": "在蒙德追随40个仙灵,并点亮仙灵之庭(龙脊雪山地区除外)。", + "guide": null, + "link": "" + }, + "逐风的寻宝者": { + "book": "蒙德·风与牧歌的城邦", + "desc": "在蒙德开启400个宝箱(龙脊雪山地区除外)。", + "guide": null, + "link": "" + }, + "逐风的冒险家": { + "book": "蒙德·风与牧歌的城邦", + "desc": "在蒙德,完成15个大世界机关限时挑战(龙脊雪山地区除外)。", + "guide": null, + "link": "" + }, + "大地勘探·璃月": { + "book": "璃月·岩与契约的海港", + "desc": "点亮下列区域的地图:碧水原、琼玑野、珉林、璃沙郊、云来海。", + "guide": null, + "link": "" + }, + "尽览群岩": { + "book": "璃月·岩与契约的海港", + "desc": "解锁璃月的所有传送锚点(层岩巨渊另外计算)。", + "guide": null, + "link": "" + }, + "重嶂不移": { + "book": "璃月·岩与契约的海港", + "desc": "将璃月的七天神像供奉至满级。", + "guide": null, + "link": "" + }, + "圣龛巡礼·璃月": { + "book": "璃月·岩与契约的海港", + "desc": "解除璃月所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "岩间引路人": { + "book": "璃月·岩与契约的海港", + "desc": "在璃月追随60个仙灵,并点亮仙灵之庭(层岩巨渊另外计算)。", + "guide": null, + "link": "" + }, + "磐岩的寻宝者": { + "book": "璃月·岩与契约的海港", + "desc": "在璃月开启800个宝箱(层岩巨渊另外计算)。", + "guide": null, + "link": "" + }, + "磐岩的冒险家": { + "book": "璃月·岩与契约的海港", + "desc": "在璃月,完成40个大世界机关限时挑战(层岩巨渊另外计算)。", + "guide": null, + "link": "" + }, + "「老实点!」": { + "book": "元素专家·第一辑", + "desc": "达成10次:持续冻结一名敌人超过10秒。", + "guide": null, + "link": "" + }, + "「随风而去吧!」": { + "book": "元素专家·第一辑", + "desc": "达成10次:2秒内,触发冰、水、火、雷元素四种扩散反应。", + "guide": null, + "link": "" + }, + "白色的季节": { + "book": "元素专家·第一辑", + "desc": "达成10次:2秒内,冻结4名敌人。", + "guide": null, + "link": "" + }, + "低温环境导致可用电量下降": { + "book": "元素专家·第一辑", + "desc": "达成10次:2秒内,通过超导反应打败4名敌人。", + "guide": "击败敌人的最后一击必须是超导反应的伤害,其他类型的伤害打败怪物不算数", + "link": "" + }, + "「艺术就是…」": { + "book": "元素专家·第一辑", + "desc": "达成10次:2秒内,通过超载反应打败4名敌人。", + "guide": "击败敌人的最后一击必须是超载反应的伤害,其他类型的伤害打败怪物不算数", + "link": "" + }, + "…必须毁灭两次": { + "book": "元素专家·第一辑", + "desc": "达成10次:2秒内,通过融化反应打败4名敌人。", + "guide": "击败敌人的最后一击必须是融化反应的伤害,其他类型的伤害打败怪物不算数", + "link": "" + }, + "「略大于突如其来的爱情。」": { + "book": "元素专家·第一辑", + "desc": "达成10次:2秒内,通过感电反应打败4名敌人。", + "guide": "击败敌人的最后一击必须是感电反应的伤害,其他类型的伤害打败怪物不算数", + "link": "" + }, + "草草炸弹,轰轰火花": { + "book": "元素专家·第二辑", + "desc": "达成10次:2秒内,通过烈绽放击败4名敌人。", + "guide": null, + "link": "" + }, + "超绽放马戏": { + "book": "元素专家·第二辑", + "desc": "达成10次:2秒内,通过超绽放击败4名敌人。", + "guide": null, + "link": "" + }, + "热光学迷彩": { + "book": "元素专家·第二辑", + "desc": "3秒内,通过原激化、超激化、蔓激化或「真识波」,破除至少2台元能构装体的不可视状态。", + "guide": null, + "link": "" + }, + "「无他,惟手熟尔」": { + "book": "神射手", + "desc": "用弓箭射中在空中飞行的鹰。", + "guide": null, + "link": "" + }, + "百步穿杨": { + "book": "神射手", + "desc": "在远距离,通过瞄准射击击中敌人要害。", + "guide": null, + "link": "" + }, + "魔弹射手": { + "book": "神射手", + "desc": "在超远距离,通过瞄准射击击中敌人要害。", + "guide": null, + "link": "" + }, + "全什么外壳来着?": { + "book": "挑战者·第一辑", + "desc": "粉碎一个大型岩史莱姆的岩晶护罩。", + "guide": null, + "link": "" + }, + "特斯拉球还流行吗?": { + "book": "挑战者·第一辑", + "desc": "粉碎一个雷萤术士的护罩。", + "guide": null, + "link": "" + }, + "谁的节奏天国?": { + "book": "挑战者·第一辑", + "desc": "阻止深渊法师恢复护罩。", + "guide": null, + "link": "" + }, + "赫炎的达达乌帕": { + "book": "挑战者·第一辑", + "desc": "点燃一扇木盾丘丘暴徒的木盾。", + "guide": null, + "link": "" + }, + "清泉的猎人": { + "book": "挑战者·第二辑", + "desc": "击败过纯水精灵召唤的每一种幻形生物。", + "guide": null, + "link": "" + }, + "水刑物语": { + "book": "挑战者·第二辑", + "desc": "在未被部分幻形生物消散时留下的水弹命中的情况下,击败纯水精灵。", + "guide": null, + "link": "" + }, + "…出奇迹?": { + "book": "挑战者·第二辑", + "desc": "击败「奇怪的丘丘人」50次。", + "guide": "超过 10 次后没奖励,但成就数量可以继续计算", + "link": "" + }, + "提瓦特的园丁,不畏严寒": { + "book": "挑战者·第二辑", + "desc": "通过攻击急冻树的花冠,使其瘫痪。", + "guide": null, + "link": "" + }, + "提瓦特的园丁,不畏酷热": { + "book": "挑战者·第二辑", + "desc": "通过攻击爆炎树的花冠,使其瘫痪。", + "guide": null, + "link": "" + }, + "天降正义!": { + "book": "挑战者·第二辑", + "desc": "维持下落攻击状态超过5秒后,命中敌人。", + "guide": null, + "link": "" + }, + "第三类永动机": { + "book": "挑战者·第二辑", + "desc": "在15秒内,施放5次元素爆发。", + "guide": null, + "link": "" + }, + "约等于天下无敌": { + "book": "挑战者·第二辑", + "desc": "使一名角色同时处于三种或更多不同的护盾庇护下。", + "guide": null, + "link": "" + }, + "抢断": { + "book": "挑战者·第三辑", + "desc": "打落冰弹丘丘人手中的冰史莱姆。", + "guide": null, + "link": "" + }, + "推倒这面墙!": { + "book": "挑战者·第三辑", + "desc": "摧毁一扇冰盾丘丘暴徒的盾牌。", + "guide": null, + "link": "" + }, + "少冰无糖": { + "book": "挑战者·第三辑", + "desc": "在冰丘丘萨满没能创造冰柱的情况下,击败冰丘丘萨满。", + "guide": null, + "link": "" + }, + "…摔得越重": { + "book": "挑战者·第三辑", + "desc": "摧毁冰丘丘萨满的冰柱。", + "guide": null, + "link": "" + }, + "这个丘丘不太冷": { + "book": "挑战者·第三辑", + "desc": "在魔化状态结束前,击败丘丘霜铠王。", + "guide": null, + "link": "" + }, + "玫瑰花蕾…": { + "book": "挑战者·第三辑", + "desc": "粉碎一个冰萤术士的护罩。", + "guide": null, + "link": "" + }, + "国王刺客": { + "book": "挑战者·第三辑", + "desc": "击败龙脊雪山的真正王者…?", + "guide": "大雪猪王", + "link": "" + }, + "歌利亚": { + "book": "挑战者·第三辑", + "desc": "通过攻击要害,瘫痪遗迹重机。", + "guide": "需要击中遗迹重机的所有要害", + "link": "" + }, + "…太阳岩龙蜥、月亮岩龙蜥": { + "book": "挑战者·第四辑", + "desc": "击败过岩龙蜥的所有元素形态。", + "guide": null, + "link": "" + }, + "岩元素反应?": { + "book": "挑战者·第四辑", + "desc": "击败过古岩龙蜥所有元素形态。", + "guide": null, + "link": "" + }, + "傀儡谣": { + "book": "挑战者·第四辑", + "desc": "在魔偶剑鬼挑衅时击败魔偶剑鬼。", + "guide": null, + "link": "" + }, + "废图毁腾": { + "book": "挑战者·第四辑", + "desc": "在场上没有丘丘雷图腾的情况下,击败雷丘丘萨满。", + "guide": null, + "link": "" + }, + "被命运诅咒的王": { + "book": "挑战者·第四辑", + "desc": "击败强化状态下的丘丘雷兜王。", + "guide": null, + "link": "" + }, + "飞越水疗馆": { + "book": "挑战者·第四辑", + "desc": "不被「水牢」攻击命中的情况下,击败藏镜仕女。", + "guide": null, + "link": "" + }, + "完全静默": { + "book": "挑战者·第四辑", + "desc": "在无相之火只进入一次熄灭状态的情况下,击败无相之火。", + "guide": null, + "link": "" + }, + "鸣神岛作战": { + "book": "挑战者·第四辑", + "desc": "击败处于虚弱状态下的恒常机关阵列。", + "guide": null, + "link": "" + }, + "画龙点睛": { + "book": "挑战者·第四辑", + "desc": "在战斗中不曾获取过护盾的情况下,击败若陀龙王。", + "guide": null, + "link": "" + }, + "将盐送给敌人,将水留给自己": { + "book": "挑战者·第五辑", + "desc": "在一次无相之水挑战中,获取至少三个「水滴」发射的愈疗晶球。", + "guide": null, + "link": "" + }, + "碍于归途艰险…": { + "book": "挑战者·第五辑", + "desc": "利用障碍物、击飞等方式,在不破坏「水滴」的情况下,阻止无相之水复苏。", + "guide": null, + "link": "" + }, + "破灭之时": { + "book": "挑战者·第五辑", + "desc": "在不利用「红莲蛾」的情况下,击败「女士」 。", + "guide": null, + "link": "" + }, + "逃逸电子": { + "book": "挑战者·第五辑", + "desc": "在不被追踪电笼击中的情况下,击败雷音权现。", + "guide": null, + "link": "" + }, + "无线电静默": { + "book": "挑战者·第五辑", + "desc": "在攻击雷音权现之前,被它的侦测锁定。", + "guide": null, + "link": "" + }, + "禁止游泳": { + "book": "挑战者·第五辑", + "desc": "在深海龙蜥之群挑战中,在深海龙蜥未入水的情况下击败它们。", + "guide": null, + "link": "" + }, + "不坏之金刚": { + "book": "挑战者·第五辑", + "desc": "在一次祸津御建鸣神命挑战中,躲过恶曜三钴在一轮中释放的所有金刚坏灭波。", + "guide": null, + "link": "" + }, + "自噬之蛇": { + "book": "挑战者·第五辑", + "desc": "在遗迹巨蛇汲取能量时,通过破坏「淤泥涌口」,使其瘫痪。", + "guide": null, + "link": "" + }, + "末路狂花": { + "book": "挑战者·第六辑", + "desc": "掣电树放射集束电光时,通过攻击其花冠,使之瘫痪。", + "guide": "8个挑战相关 *视频地址:BV1qe4y1H742", + "link": "https://www.bilibili.com/video/BV1qe4y1H742/?spm_id_from=333.999.0.0" + }, + "彼竭我盈故克之": { + "book": "挑战者·第六辑", + "desc": "击败活化状态结束后,正处于力竭状态下的翠翎恐蕈。", + "guide": null, + "link": "" + }, + "清晨的焦枯蕈兽的气味": { + "book": "挑战者·第六辑", + "desc": "一次挑战中,击败6个翠翎恐蕈因陷入燃烧状态而产生的蕈兽。", + "guide": null, + "link": "" + }, + "龙兽射落之日": { + "book": "挑战者·第六辑", + "desc": "一次挑战中,通过攻击双翼上的核心,使兆载永劫龙兽坠落。", + "guide": null, + "link": "" + }, + "头盖骨胜负": { + "book": "挑战者·第六辑", + "desc": "一次挑战中,通过攻击头部的核心,中断兆载永劫龙兽的能量洪流。", + "guide": null, + "link": "" + }, + "抗性,有用吗?": { + "book": "挑战者·第六辑", + "desc": "击败提升过至少两种不同元素抗性的兆载永劫龙兽。", + "guide": null, + "link": "" + }, + "电子脑硬化症": { + "book": "挑战者·第六辑", + "desc": "击败处于超频过载状态下的半永恒统辖矩阵。", + "guide": null, + "link": "" + }, + "黛西,黛西": { + "book": "挑战者·第六辑", + "desc": "通过原激化、超激化或蔓激化反应命中半永恒统辖矩阵核心,破除其不可视状态。", + "guide": null, + "link": "" + }, + "深邃的探究者": { + "book": "秘境与深境螺旋·第一辑", + "desc": "深境螺旋:通过12层。", + "guide": "通过即可不需要满星", + "link": "" + }, + "来自深境": { + "book": "秘境与深境螺旋·第一辑", + "desc": "深境螺旋:在没有受到伤害的情况下完成第8层第3间。", + "guide": "可以带盾", + "link": "" + }, + "My Precious": { + "book": "秘境与深境螺旋·第一辑", + "desc": "深境螺旋:在地脉镇石完好的情况下完成第2层第2间。", + "guide": "*地面有水,推荐带冰,控制所有怪逐一击破即可", + "link": "" + }, + "渊星斗士": { + "book": "秘境与深境螺旋·第一辑", + "desc": "深境螺旋:取得「深境回廊」的所有渊星。", + "guide": "原神 1.0 时期曾用名《星尘斗士》", + "link": "" + }, + "…Odomu?": { + "book": "Olah!第一辑", + "desc": "在「语言交流」中与丘丘人交流成功。", + "guide": "《语言交流》:注意 1、不要攻击附近的丘丘人;2、注意雷雨天小心落雷击中丘丘人导致任务失败", + "link": "" + }, + "Yo dala?": { + "book": "Olah!第一辑", + "desc": "在「诗歌交流」中与丘丘人交流成功。", + "guide": "《诗歌交流》:选择这 3 项即可【Celi dada,mimi nunu!】、【Ye dada!】、【Muhe ye!】其余同上", + "link": "" + }, + "追求极致": { + "book": "至冬国不相信眼泪·第一辑", + "desc": "在「说到做到!」中完美完成查耶维奇的所有委托。", + "guide": "《说到做到!》至少 3 次“完美”且不重复地完成委托才能拿到成就。\n山顶(按照顺序击杀:火斧、木盾、丘丘人萨满);山腰(不能损坏货物,可以拉怪出来);\n山底(需要 1 分钟内完成,跑图时间也算,可以提前放个口袋锚点,打怪前保留角色大招)\n*详解地址", + "link": "https://www.bilibili.com/video/BV1m64y1y7rk?" + }, + "有一说一": { + "book": "至冬国不相信眼泪·第一辑", + "desc": "在「来自冬天的故事」中探听到所有关于至冬国的情报。", + "guide": "《来自冬天的故事》:愚人众、邪眼、女皇陛下,三个选项各选 1 次,也就是至少要做 3 次\n*2.4新增后续维克托回至冬(向冬日回归)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Xt4y1z7qw?spm_id_from=333.999.0.0" + }, + "帝君故事": { + "book": "岩港往事·第一辑", + "desc": "搜集到「岩游记」中所有有关岩王帝君的故事。", + "guide": "《岩游记》需要做 4 次,给 4 次不同的道具:财神(必须是琉璃百合);开拓之神(野外采集物:琉璃袋 清心 绝云辣椒 霓裳花等);炉灶之神(各类矿石:夜泊石 铁矿 石珀 等等);历史之神(璃月菜品:翡翠什锦袋 水煮黑背鲈 等等)。\n*当“财神”和“历史之神”共同存在任务道具会被回收,当“炉灶之神”和“开拓之神”共同存在任务道具会被回收,注意记录。\n*视频地址及道具回收演示", + "link": "https://www.bilibili.com/video/BV1s64y1m718?p=1" + }, + "旅者且留步…": { + "book": "岩港往事·第一辑", + "desc": "在「且听下回分解」中听完《裁雨声》。", + "guide": "《且听下回分解》每次任务只能找 2 个人\n找哪两个 NPC 是你接到任务后就决定了的,你无法更改,即便你自己手动找到了系统没有分配给你的那个人,你也无法和他对话\n范二爷给《海山履云记》,茂才公给《裁雨声·上》(但刷到他的概率比较低,刷不到也没办法);\n江舟给《裁雨声·中》,暂无《裁雨声》下(有上和中就可以拿到成就)\n最后给茶博士刘苏交付任务道具的时候只能交 1 个(所以拿完成就至少要做 3 次这个任务),交《海山履云记》能拿到成就《且听我一言。》\n交《裁雨声·上》和《裁雨声·中》后得到成就《旅者且留步…》\n*视频地址", + "link": "https://www.bilibili.com/video/BV18U4y1j7mo?spm_id_from=333.999.0.0" + }, + "且听我一言。": { + "book": "岩港往事·第一辑", + "desc": "在「且听下回分解」中听完《海山履云记》。", + "guide": null, + "link": "" + }, + "「来坦,来补,来输出」": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同完成100次秘境挑战。", + "guide": null, + "link": "" + }, + "「我来,我见,我征服」": { + "book": "异世相逢·第一辑", + "desc": "在其他玩家的世界中,采集50个地区特产。", + "guide": null, + "link": "" + }, + "「你家风晶蝶还蛮大的」": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同战胜无相之风。", + "guide": null, + "link": "" + }, + "「…微笑就可以了。」": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同战胜无相之雷。", + "guide": null, + "link": "" + }, + "「原来那个柱子能打啊」": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同战胜无相之岩。", + "guide": null, + "link": "" + }, + "「急冻树、青空、南风」": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同战胜急冻树。", + "guide": null, + "link": "" + }, + "「This is fine」": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同战胜爆炎树。", + "guide": null, + "link": "" + }, + "一条名叫洛蒂娅的鱼": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同战胜纯水精灵。", + "guide": "可能有的人不知道就说一下,轻策庄的纯水精灵的名字叫洛蒂娅\n它?曾经是枫丹最强的战士,后来枫丹内乱背井离乡来到了轻策庄", + "link": "" + }, + "狼族盟约": { + "book": "异世相逢·第一辑", + "desc": "与其他玩家一同战胜奔狼领的王者。", + "guide": null, + "link": "" + }, + "邪眼的性能不是战力差距的决定因素": { + "book": "异世相逢·第二辑", + "desc": "与其他玩家一同战胜「公子」。", + "guide": "2.0 测试服期间这个成就名是《这个公子就是逊啦》,neta《如果早知道男生也会被性侵》台词:“这个彬彬就是逊啦”", + "link": "" + }, + "「山动了」": { + "book": "异世相逢·第二辑", + "desc": "与其他玩家一同战胜古岩龙蜥。", + "guide": null, + "link": "" + }, + "往日重现": { + "book": "异世相逢·第二辑", + "desc": "与其他玩家一同战胜若陀龙王。", + "guide": null, + "link": "" + }, + "未来解冻计划": { + "book": "异世相逢·第二辑", + "desc": "与其他玩家一同战胜无相之冰。", + "guide": null, + "link": "" + }, + "一线断时…": { + "book": "异世相逢·第二辑", + "desc": "与其他玩家一同战胜魔偶剑鬼。", + "guide": null, + "link": "" + }, + "篝火大作战": { + "book": "异世相逢·第二辑", + "desc": "与其他玩家一同战胜无相之火。", + "guide": null, + "link": "" + }, + "「机关阵列没有永恒」": { + "book": "异世相逢·第二辑", + "desc": "与其他玩家一同战胜恒常机关阵列。", + "guide": null, + "link": "" + }, + "心有灵犀一电通": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜雷音权现。", + "guide": null, + "link": "" + }, + "基本上都是水": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜无相之水。", + "guide": null, + "link": "" + }, + "越过冰霜与烈焰": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜「女士」。", + "guide": null, + "link": "" + }, + "暗夜呢喃": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜黄金王兽。", + "guide": null, + "link": "" + }, + "总有地上的生灵…": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜雷电将军。", + "guide": null, + "link": "" + }, + "超古代文明遗产": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜遗迹巨蛇。", + "guide": null, + "link": "" + }, + "半素食主义": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜翠翎恐蕈。", + "guide": null, + "link": "" + }, + "谨防触电": { + "book": "异世相逢·第三辑", + "desc": "与其他玩家一同战胜掣电树。", + "guide": null, + "link": "" + }, + "大地勘探·龙脊雪山": { + "book": "雪山上的来客", + "desc": "点亮龙脊雪山的地图。", + "guide": null, + "link": "" + }, + "冰峰踏破": { + "book": "雪山上的来客", + "desc": "解锁龙脊雪山的所有传送锚点。", + "guide": null, + "link": "" + }, + "踏雪引路人": { + "book": "雪山上的来客", + "desc": "在龙脊雪山追随20个温暖仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "雪山的寻宝者": { + "book": "雪山上的来客", + "desc": "在龙脊雪山开启160个宝箱。", + "guide": null, + "link": "" + }, + "赤红的新芽": { + "book": "雪山上的来客", + "desc": "将忍冬之树供奉至12级。", + "guide": null, + "link": "" + }, + "寒天之钉": { + "book": "雪山上的来客", + "desc": "将「奇怪的大柱子」升起。", + "guide": null, + "link": "" + }, + "龙与枪": { + "book": "雪山上的来客", + "desc": "利用「龙」的遗骸,制造武器。", + "guide": "《腐殖之牙》", + "link": "" + }, + "洞天无别景…": { + "book": "世外洞天·第一辑", + "desc": "使用「尘歌壶」进入「洞天」。", + "guide": null, + "link": "" + }, + "前方高仙力反应": { + "book": "世外洞天·第一辑", + "desc": "3个洞天形态的洞天仙力达到20000。", + "guide": "~", + "link": "" + }, + "壶中密友": { + "book": "世外洞天·第一辑", + "desc": "与壶灵的信任等阶达到10级。", + "guide": "最快,一月内可以完成", + "link": "" + }, + "伐伐伐伐木工": { + "book": "世外洞天·第一辑", + "desc": "获得2000份木材。", + "guide": "狂肝,半天内可以完成", + "link": "" + }, + "宝钱大亨": { + "book": "世外洞天·第一辑", + "desc": "获得50000份洞天宝钱。", + "guide": "正常肝累积的话,2个月完成", + "link": "" + }, + "不止是个小板凳": { + "book": "世外洞天·第一辑", + "desc": "制作600个摆设。", + "guide": "正常肝累积的话,2个月完成(仙速瓶直接用,最多只能存99个,多的不能再买了)", + "link": "" + }, + "来点颜色瞧瞧?": { + "book": "世外洞天·第一辑", + "desc": "制作600份染料。", + "guide": null, + "link": "" + }, + "标准图样": { + "book": "世外洞天·第一辑", + "desc": "习得180份摆设图纸。", + "guide": null, + "link": "" + }, + "我的…地盘": { + "book": "世外洞天·第一辑", + "desc": "在一个洞天形态中,同时放置300个摆设。", + "guide": null, + "link": "" + }, + "壶中贵客": { + "book": "世外洞天·第二辑", + "desc": "邀请同伴入驻「尘歌壶」。", + "guide": "1.6版本全15个成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1T5411u7HF?spm_id_from=333.999.0.0" + }, + "围炉夜谈": { + "book": "世外洞天·第二辑", + "desc": "解锁30段同伴互动对话。", + "guide": null, + "link": "" + }, + "决胜的礼物!": { + "book": "世外洞天·第二辑", + "desc": "获得20份同伴赠礼。", + "guide": "每个角色可以获得两份赠礼(不同套装给不同的赠礼)", + "link": "" + }, + "传送空间棋盘": { + "book": "世外洞天·第三辑", + "desc": "在「尘歌壶」内首次设置「洞天锚点」。", + "guide": null, + "link": "" + }, + "我们需要更多作物!": { + "book": "世外洞天·第三辑", + "desc": "在「贵本之道-『玄此玉田』」中收获800个采集物。", + "guide": null, + "link": "" + }, + "花开之洞天": { + "book": "世外洞天·第三辑", + "desc": "在「贵本之道-『薿此芝田』」中收获800个采集物。", + "guide": null, + "link": "" + }, + "采集时间到!": { + "book": "世外洞天·第三辑", + "desc": "在「贵本之道-『楚此渚田』」中收获800个采集物。", + "guide": null, + "link": "" + }, + "大地勘探·雷光所照之土·其一": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "点亮稻妻区域中,鸣神岛、神无冢与八酝岛的地图。", + "guide": null, + "link": "" + }, + "跨越雷鸣的大地·其一": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "解锁稻妻区域中,鸣神岛、神无冢与八酝岛所有传送锚点。", + "guide": null, + "link": "" + }, + "圣龛巡礼·稻妻天领·其一": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "解除稻妻区域中,鸣神岛、神无冢与八酝岛所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "隽永如电": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "将稻妻的七天神像供奉至满级。", + "guide": null, + "link": "" + }, + "神篱凭代": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "将「神樱眷顾」等级提升至满级。", + "guide": null, + "link": "" + }, + "鸣草丛中的捕手·其一": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "在稻妻的鸣神岛、神无冢与八酝岛,追上40个雷灵。", + "guide": null, + "link": "" + }, + "烁光引路人·其一": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "在稻妻区域的鸣神岛、神无冢与八酝岛追随16个仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "循雷的寻宝者·其一": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "在稻妻区域的鸣神岛、神无冢与八酝岛开启300个宝箱。", + "guide": null, + "link": "" + }, + "异人祓行芝居": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "完成「神樱大祓」。", + "guide": null, + "link": "" + }, + "踏鞴物语": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "解除「御影炉心」的危机。", + "guide": null, + "link": "" + }, + "遗怨的回音": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "完成了「远吕羽氏遗事」系列任务。", + "guide": null, + "link": "" + }, + "循雷的冒险家·其一": { + "book": "稻妻·雷与永恒的群岛·其之一", + "desc": "在稻妻区域的鸣神岛、神无冢与八酝岛,完成24个大世界机关限时挑战。", + "guide": null, + "link": "" + }, + "大地勘探·雷光所照之土·其二": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "点亮稻妻区域中,海祇岛与清籁岛的地图。", + "guide": null, + "link": "" + }, + "跨越雷鸣的大地·其二": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "解锁稻妻区域中,海祇岛与清籁岛所有的传送锚点。", + "guide": null, + "link": "" + }, + "圣龛巡礼·稻妻天领·其二": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "解锁稻妻区域中,海祇岛与清籁岛所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "鸣草丛中的捕手·其二": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "在稻妻的海祇岛与清籁岛追上16个雷灵。", + "guide": null, + "link": "" + }, + "烁光引路人·其二": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "在稻妻的海祇岛与清籁岛追随6个仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "循雷的寻宝者·其二": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "在稻妻的海祇岛与清籁岛开启160个宝箱。", + "guide": null, + "link": "" + }, + "清籁逐雷记": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "完成「清籁逐雷记」。", + "guide": null, + "link": "" + }, + "一样的月光": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "完成「月浴之渊」。", + "guide": null, + "link": "" + }, + "循雷的冒险家·其二": { + "book": "稻妻·雷与永恒的群岛·其之二", + "desc": "在海祇岛与清籁岛完成24个大世界机关限时挑战。", + "guide": null, + "link": "" + }, + "大地勘探·鹤观": { + "book": "雾海纪行", + "desc": "点亮鹤观的地图。", + "guide": null, + "link": "" + }, + "雾海尽头": { + "book": "雾海纪行", + "desc": "解锁鹤观所有的传送锚点。", + "guide": null, + "link": "" + }, + "圣龛巡礼·鹤观": { + "book": "雾海纪行", + "desc": "解锁鹤观所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "雾夜的灼灼电影": { + "book": "雾海纪行", + "desc": "在鹤观追上6个雷灵。", + "guide": null, + "link": "" + }, + "深雾引路人": { + "book": "雾海纪行", + "desc": "在鹤观追随6个仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "迷失的寻宝者": { + "book": "雾海纪行", + "desc": "在鹤观开启120个宝箱。", + "guide": null, + "link": "" + }, + "迷失的冒险家": { + "book": "雾海纪行", + "desc": "在鹤观完成12个大世界机关限时挑战。", + "guide": null, + "link": "" + }, + "雷与永远": { + "book": "雾海纪行", + "desc": "完成某位作家的取材委托。", + "guide": null, + "link": "" + }, + "稚子敲针作钓钩": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "首次成功钓鱼。", + "guide": null, + "link": "" + }, + "「恭喜这位,喜提鱼缸」": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "首次钓获观赏鱼。", + "guide": null, + "link": "" + }, + "被打碎的水中月亮": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "首次钓获只在夜间出没的鱼儿。", + "guide": null, + "link": "" + }, + "通通400铃": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "成功钓鱼2000次。", + "guide": "钓鱼双倍产出时 (如托马天赋) 成就数仍是 +1", + "link": "" + }, + "「叫我以实玛利。」": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "在其他玩家的世界中完成一次钓鱼。", + "guide": null, + "link": "" + }, + "渔民杀机": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "从钓鱼协会处购买一根鱼竿。", + "guide": null, + "link": "" + }, + "尽倾江海里": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "成功制作20次鱼饵。", + "guide": null, + "link": "" + }, + "正经的钓鱼学位": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "解锁20个鱼类图鉴。", + "guide": null, + "link": "" + }, + "中场": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "在稻妻,通过钓鱼钓到散落的书页。", + "guide": null, + "link": "" + }, + "张力稳定锚": { + "book": "提瓦特钓鱼指南·第一辑", + "desc": "鱼竿始终保持在最佳张力区的情况下成功钓鱼10次。", + "guide": null, + "link": "" + }, + "「…岂知夜色…」": { + "book": "白昼之光", + "desc": "点亮渊下宫的地图。", + "guide": null, + "link": "" + }, + "常世之大权": { + "book": "白昼之光", + "desc": "解锁渊下宫所有的传送锚点。", + "guide": "正常跟着引导任务走就能点亮地图", + "link": "" + }, + "福斯福洛斯的指引": { + "book": "白昼之光", + "desc": "在渊下宫追随30个仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "赫斯珀洛斯的好东西": { + "book": "白昼之光", + "desc": "在渊下宫开启160个宝箱。", + "guide": null, + "link": "" + }, + "卡伊洛斯的时时刻刻": { + "book": "白昼之光", + "desc": "在渊下宫完成12个大世界机关限时挑战。", + "guide": null, + "link": "" + }, + "火鼠裘、龙首珠、佛前钵和…": { + "book": "白昼之光", + "desc": "取得露子委托的珊瑚枝条。", + "guide": "世界任务《白夜国晨昏记:龙蛇洞宫试炼记》", + "link": "" + }, + "丹砂高为千岩镇": { + "book": "岩窟流明", + "desc": "点亮「层岩巨渊」地面区域的地图。", + "guide": null, + "link": "" + }, + "巨渊险过百牢关": { + "book": "岩窟流明", + "desc": "点亮「层岩巨渊·地下矿区」的地图。", + "guide": null, + "link": "" + }, + "自至深处": { + "book": "岩窟流明", + "desc": "解锁层岩巨渊和巨渊矿坑的所有传送锚点。", + "guide": null, + "link": "" + }, + "岩渊引路人": { + "book": "岩窟流明", + "desc": "在层岩巨渊追随24只仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "岩渊的寻宝者": { + "book": "岩窟流明", + "desc": "在层岩巨渊开启200个宝箱。", + "guide": null, + "link": "" + }, + "岩渊的冒险家": { + "book": "岩窟流明", + "desc": "在层岩巨渊完成12个大世界限时机关挑战。", + "guide": null, + "link": "" + }, + "烁然灼目": { + "book": "岩窟流明", + "desc": "将「流明石触媒」强化至最大等级。", + "guide": null, + "link": "" + }, + "「揭开封印之时…」": { + "book": "岩窟流明", + "desc": "解除进入矿坑前的阻碍。", + "guide": null, + "link": "" + }, + "半途的探索…": { + "book": "岩窟流明", + "desc": "完成总务司的勘探委托。", + "guide": null, + "link": "" + }, + "大地勘探·须弥林海": { + "book": "须弥·玄识深藏的雨林", + "desc": "点亮须弥区域中,道成林、护世森、阿陀河谷、善见地、二净甸、失落的苗圃、桓那兰那的地图。", + "guide": "正常探索", + "link": "" + }, + "漫卷琼林": { + "book": "须弥·玄识深藏的雨林", + "desc": "解锁须弥区域中,道成林、护世森、阿陀河谷、善见地、二净甸、失落的苗圃、桓那兰那所有传送锚点。", + "guide": null, + "link": "" + }, + "圣龛巡礼·须弥林海": { + "book": "须弥·玄识深藏的雨林", + "desc": "解除须弥区域中,道成林、护世森、阿陀河谷、善见地、二净甸、失落的苗圃、桓那兰那所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "如草芳绚": { + "book": "须弥·玄识深藏的雨林", + "desc": "将须弥的七天神像供奉至满级。", + "guide": "目前 3.2 版本无法完成", + "link": "" + }, + "大梦的锚点": { + "book": "须弥·玄识深藏的雨林", + "desc": "将桓那兰那的梦之树等级提升至满级。", + "guide": "目前 3.2 版本无法完成", + "link": "" + }, + "林薮引路人": { + "book": "须弥·玄识深藏的雨林", + "desc": "在道成林、护世森、阿陀河谷、善见地、二净甸、失落的苗圃、桓那兰那追随40个仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "瑶林的寻宝者": { + "book": "须弥·玄识深藏的雨林", + "desc": "在道成林、护世森、阿陀河谷、善见地、二净甸、失落的苗圃、桓那兰那开启400个宝箱。", + "guide": null, + "link": "" + }, + "瑶林的冒险家": { + "book": "须弥·玄识深藏的雨林", + "desc": "在道成林、护世森、阿陀河谷、善见地、二净甸、失落的苗圃、桓那兰那完成40个大世界机关限时挑战。", + "guide": null, + "link": "" + }, + "森林会记住一切": { + "book": "须弥·玄识深藏的雨林", + "desc": "完成「森林书」。", + "guide": null, + "link": "" + }, + "大地勘探·沙海热梦·其一": { + "book": "须弥·饰金砂原·其之一", + "desc": "点亮须弥区域中,列柱沙原 、上风蚀地、下风蚀地的地图。", + "guide": null, + "link": "" + }, + "越过沙暴与蜃气楼·其一": { + "book": "须弥·饰金砂原·其之一", + "desc": "解锁须弥区域中,列柱沙原 、上风蚀地、下风蚀地所有传送锚点。", + "guide": null, + "link": "" + }, + "圣龛巡礼·沙海热梦·其一": { + "book": "须弥·饰金砂原·其之一", + "desc": "解除须弥区域中,列柱沙原 、上风蚀地、下风蚀地所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "大漠引路人·其一": { + "book": "须弥·饰金砂原·其之一", + "desc": "在列柱沙原 、上风蚀地、下风蚀地追随40个仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "流沙的寻宝者·其一": { + "book": "须弥·饰金砂原·其之一", + "desc": "在列柱沙原 、上风蚀地、下风蚀地开启240个宝箱。", + "guide": null, + "link": "" + }, + "流沙的冒险家·其一": { + "book": "须弥·饰金砂原·其之一", + "desc": "在列柱沙原 、上风蚀地、下风蚀地完成40个大世界机关限时挑战。", + "guide": null, + "link": "" + }, + "…与睡梦同姓": { + "book": "须弥·饰金砂原·其之一", + "desc": "完成「黄金梦乡」。", + "guide": null, + "link": "" + }, + "天地万象": { + "book": "√", + "desc": "虚空鼓动,劫火高扬", + "guide": 10.0, + "link": "" + }, + "胜负师放浪记": { + "book": "七圣召唤", + "desc": "将牌手等级提升至10级。", + "guide": null, + "link": "" + }, + "色彩缤纷的答复": { + "book": "七圣召唤", + "desc": "在获胜的牌局中,我方一共造成300次元素反应。", + "guide": null, + "link": "" + }, + "胜利的拼图已在手中": { + "book": "七圣召唤", + "desc": "在获胜的牌局中,累计打出600张行动牌。", + "guide": null, + "link": "" + }, + "「那么,来吧,搭档…」": { + "book": "七圣召唤", + "desc": "在获胜的牌局中,累计召唤200次召唤物。", + "guide": null, + "link": "" + }, + "进攻,进攻,再进攻!": { + "book": "七圣召唤", + "desc": "使用过3次以上元素爆发并获得胜利的对局数目达到10场。", + "guide": null, + "link": "" + }, + "已如风中残烛?": { + "book": "七圣召唤", + "desc": "在获胜的牌局中,使用护盾或治疗效果累计为自身抵挡伤害或恢复生命300点。", + "guide": null, + "link": "" + }, + "一撕两半混沌球": { + "book": "七圣召唤", + "desc": "在获胜的牌局中,单次行动击败2名或2名以上对手角色牌的次数累计达到10次。", + "guide": null, + "link": "" + }, + "高倍率牌手传说": { + "book": "七圣召唤", + "desc": "累计获得150000幸运牌币。", + "guide": null, + "link": "" + }, + "微缩型骰子壶": { + "book": "七圣召唤", + "desc": "在获胜的牌局中,累计造成10次8点以上的单次行动伤害。", + "guide": null, + "link": "" + }, + "踏鞴之谜": { + "book": "天地万象", + "desc": "在世界树内部查看有关踏鞴砂往事的回忆。", + "guide": null, + "link": "" + }, + "历史的涟漪": { + "book": "天地万象", + "desc": "确认散兵进入世界树内部引发的种种后果。", + "guide": null, + "link": "" + }, + "经变·狐猫鸟与怪": { + "book": "天地万象", + "desc": "解开纳西妲藏起的谜题,得知散兵过去的经历。", + "guide": null, + "link": "" + }, + "如我是我非我相": { + "book": "天地万象", + "desc": "击败回忆中的七叶寂照秘密主。", + "guide": null, + "link": "" + }, + "倾落伽蓝": { + "book": "天地万象", + "desc": "完成「倾落伽蓝」。", + "guide": null, + "link": "" + }, + "四方求剑": { + "book": "天地万象", + "desc": "见证岚姐与「藏锋」的故事。", + "guide": "在3.3版本之前做过的藏锋是遗迹猎者的话,3.3版本后就可以直接刷到藏锋后续。\n后续在第一段就可以找到剑柄获得隐藏成就:四方求剑。剧情还有后续,推测2年后再出后续……\nPS:前置3次循环是2次丘丘人+1次遗迹留着\n视频地址:BV1oG4y127Yj\n", + "link": "https://www.bilibili.com/video/BV1oG4y127Yj/?spm_id_from=333.999.0.0" + }, + "行万里路…?": { + "book": "天地万象", + "desc": "见证孙宇的故事。", + "guide": "还在开荒,估计和珊瑚侦探一样长", + "link": "" + }, + "越过沙暴与蜃气楼·其二": { + "book": "须弥·饰金砂原·其之二", + "desc": "解锁须弥区域中,千壑沙地所有传送锚点。", + "guide": null, + "link": "" + }, + "圣龛巡礼·沙海热梦·其二": { + "book": "须弥·饰金砂原·其之二", + "desc": "解除须弥区域中,千壑沙地所有地灵龛的封印。", + "guide": null, + "link": "" + }, + "比勒琪丝的哀歌": { + "book": "须弥·饰金砂原·其之二", + "desc": "完成「比勒琪丝的哀歌」。", + "guide": "0剧情必得", + "link": "" + }, + "大漠引路人·其二": { + "book": "须弥·饰金砂原·其之二", + "desc": "在千壑沙地追随16个仙灵,并点亮仙灵之庭。", + "guide": null, + "link": "" + }, + "流沙的寻宝者·其二": { + "book": "须弥·饰金砂原·其之二", + "desc": "在千壑沙地开启200个宝箱。", + "guide": null, + "link": "" + }, + "流沙的冒险家·其二": { + "book": "须弥·饰金砂原·其之二", + "desc": "在千壑沙地完成28个大世界机关限时挑战。", + "guide": null, + "link": "" + }, + "「假若她们能知幽玄…」": { + "book": "天地万象", + "desc": "利露帕尔自行解脱了与你的契约,选择面对自己漆黑深远的命运…", + "guide": "视频地址:BV1CK411k7oo", + "link": "https://www.bilibili.com/video/BV1CK411k7oo/?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "「那只是永恒的奴役而已!」": { + "book": "天地万象", + "desc": "沉睡千百年的镇灵利露帕尔与你订立了契约。", + "guide": "0剧情必得", + "link": "" + }, + "无名之城的过往": { + "book": "天地万象", + "desc": "居尔城神殿的壁画,讲述着一度辉煌的过往…", + "guide": "视频地址:BV1os4y1x7TC", + "link": "https://www.bilibili.com/video/BV1os4y1x7TC/?spm_id_from=333.999.0.0" + }, + "宁静无梦的乐园": { + "book": "天地万象", + "desc": "此处是花神的陵寝,是神明无梦的长眠…", + "guide": "0剧情必得", + "link": "" + }, + "「…她必施行报应。」": { + "book": "天地万象", + "desc": "当复仇者施展义怒,施行不义之人何曾预见过这一天呢?", + "guide": "3.4下半版本开启", + "link": "" + }, + "被染红的月亮": { + "book": "天地万象", + "desc": "这片广阔的棋盘,曾在血红的月亮之下推演何种暴行?", + "guide": "视频地址:BV1W8411w75c", + "link": "https://www.bilibili.com/video/BV1W8411w75c/?spm_id_from=333.999.0.0" + }, + "横冲直撞": { + "book": "天地万象", + "desc": "盲目的沙虫在沙面猪突猛进,偶尔也会带来意外收获。", + "guide": "视频地址:BV16T411175Q", + "link": "https://www.bilibili.com/video/BV16T411175Q/?spm_id_from=333.999.0.0" + }, + "「我也讨厌沙虫!」": { + "book": "天地万象", + "desc": "第一次遭受沙虫的袭击。", + "guide": "视频地址:BV16T411175Q", + "link": "https://www.bilibili.com/video/BV16T411175Q/?spm_id_from=333.999.0.0" + }, + "分歧的原点": { + "book": "天地万象", + "desc": "知悉镀金旅团派往居尔城的调查队覆灭的真相。", + "guide": "视频地址:BV193411d73o", + "link": "https://www.bilibili.com/video/BV193411d73o/?spm_id_from=333.999.0.0" + }, + "甚至不需要操作手册…": { + "book": "天地万象", + "desc": "让奔奔恢复以往的活力。", + "guide": "视频地址:BV1BY4y1Z79m", + "link": "https://www.bilibili.com/video/BV1BY4y1Z79m/?spm_id_from=333.788&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "猎人的仁慈": { + "book": "天地万象", + "desc": "让「猎鹰」塔德菈选择她的命运…", + "guide": "视频地址:BV15Y411X7H5", + "link": "https://www.bilibili.com/video/BV15Y411X7H5/?spm_id_from=333.999.0.0" + }, + "飞毯之旅": { + "book": "天地万象", + "desc": "看看这整个新世界,多令人眩晕的地方!", + "guide": "视频地址:BV16P4y167XK", + "link": "https://www.bilibili.com/video/BV16P4y167XK/?spm_id_from=333.999.0.0" + }, + "「生命,很神奇吧?」": { + "book": "天地万象", + "desc": "沙虫的行宫错综复杂,生命总能开辟出意想不到的通路…", + "guide": "视频地址:BV1WT41117R8\n有点阴间", + "link": "https://www.bilibili.com/video/BV1WT41117R8/?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "旧日的园圃与源泉": { + "book": "天地万象", + "desc": "旧日澧泉不竭的阶池,如今已被黄沙填满…", + "guide": "视频地址:BV1FY411X7Ru", + "link": "https://www.bilibili.com/video/BV1FY411X7Ru/?spm_id_from=333.999.0.0" + }, + "她的黄金时代…": { + "book": "天地万象", + "desc": "紫红色的帕蒂莎兰盛开在空空的王座上,仿佛女主人永恒的笑容…", + "guide": "视频地址:BV19D4y1J7Me", + "link": "https://www.bilibili.com/video/BV19D4y1J7Me/?spm_id_from=333.788&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "「…使列邦观看你的丑陋。」": { + "book": "天地万象", + "desc": "使残损的棋盘重现黄沙之间。", + "guide": "0剧情必得", + "link": "" + }, + "来自泥土,归于黄沙…": { + "book": "天地万象", + "desc": "正如沙漠中的一切生命那般…", + "guide": "0剧情必得", + "link": "" + }, + "完美沙暴": { + "book": "天地万象", + "desc": "「让我们直冲气象地狱。」", + "guide": "视频地址:BV1WT41117R8", + "link": "https://www.bilibili.com/video/BV1WT41117R8/?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "无爱的塔兰图拉": { + "book": "天地万象", + "desc": "「我非要把你煮成润滑油不可!」", + "guide": "0剧情必得", + "link": "" + }, + "帕维兹拉万·赫瓦拉": { + "book": "天地万象", + "desc": "让千壑沙地所有的元能尖碑重新运转。", + "guide": null, + "link": "" + }, + "漫长的盟约": { + "book": "天地万象", + "desc": "尽管命运已各自破碎,盟约依旧在沉眠中存续…", + "guide": "视频地址:BV1GG4y1F72L\n成就很美★为数不多的组队成就", + "link": "https://www.bilibili.com/video/BV1GG4y1F72L/?spm_id_from=333.999.0.0&vd_source=08eba74dd47ebbfed5144f98f5a58b92" + }, + "控制了香料的人…": { + "book": "天地万象", + "desc": "通过使风蚀弹发生扩散反应,击落浮游状态的风蚀沙虫。", + "guide": "视频地址:BV16T411175Q", + "link": "https://www.bilibili.com/video/BV16T411175Q/?spm_id_from=333.999.0.0" + } +} diff --git a/GenshinUID/genshinuid_achievement/daily_achi.json b/GenshinUID/genshinuid_achievement/daily_achi.json new file mode 100644 index 00000000..ccf7acb8 --- /dev/null +++ b/GenshinUID/genshinuid_achievement/daily_achi.json @@ -0,0 +1,542 @@ +{ + "语言交流": { + "achievement": "…Odomu?", + "desc": "在「语言交流」中与丘丘人交流成功。", + "guide": "《语言交流》:注意 1、不要攻击附近的丘丘人;2、注意雷雨天小心落雷击中丘丘人导致任务失败", + "link": "" + }, + "诗歌交流": { + "achievement": "Yo dala?", + "desc": "在「诗歌交流」中与丘丘人交流成功。", + "guide": "《诗歌交流》:选择这 3 项即可【Celi dada,mimi nunu!】、【Ye dada!】、【Muhe ye!】其余同上", + "link": "" + }, + "来自冬天的故事": { + "achievement": "有一说一", + "desc": "在「来自冬天的故事」中探听到所有关于至冬国的情报。", + "guide": "《来自冬天的故事》:愚人众、邪眼、女皇陛下,三个选项各选 1 次,也就是至少要做 3 次\n*2.4新增后续维克托回至冬(向冬日回归)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Xt4y1z7qw?spm_id_from=333.999.0.0" + }, + "说到做到": { + "achievement": "追求极致", + "desc": "在「说到做到!」中完美完成查耶维奇的所有委托。", + "guide": "《说到做到!》至少 3 次“完美”且不重复地完成委托才能拿到成就。\n山顶(按照顺序击杀:火斧、木盾、丘丘人萨满);山腰(不能损坏货物,可以拉怪出来);\n山底(需要 1 分钟内完成,跑图时间也算,可以提前放个口袋锚点,打怪前保留角色大招)\n*详解地址", + "link": "https://www.bilibili.com/video/BV1m64y1y7rk?" + }, + "岩游记": { + "achievement": "帝君故事", + "desc": "搜集到「岩游记」中所有有关岩王帝君的故事。", + "guide": "《岩游记》需要做 4 次,给 4 次不同的道具:财神(必须是琉璃百合);开拓之神(野外采集物:琉璃袋 清心 绝云辣椒 霓裳花等);炉灶之神(各类矿石:夜泊石 铁矿 石珀 等等);历史之神(璃月菜品:翡翠什锦袋 水煮黑背鲈 等等)。\n*当“财神”和“历史之神”共同存在任务道具会被回收,当“炉灶之神”和“开拓之神”共同存在任务道具会被回收,注意记录。\n*视频地址及道具回收演示", + "link": "https://www.bilibili.com/video/BV1s64y1m718?p=1" + }, + "且听下回分解": { + "achievement": "且听我一言。", + "desc": "在「且听下回分解」中听完《海山履云记》。", + "guide": null, + "link": "" + }, + "璃月港,有海盗!": { + "achievement": "哎呀!海盗!", + "desc": "陪璐璐、阿飞与小蒙各玩一次海盗游戏。", + "guide": "《璃月港,有海盗!》;1.5 版本更新后在这三人附近挂机很容易刷到;2.4后又新增后续\n*视频地址", + "link": "https://www.bilibili.com/video/BV1q44y1N7Dn?spm_id_from=333.999.0.0" + }, + "好兆头": { + "achievement": "「…而尽人事。」", + "desc": "破坏了四种爱情运来临的征兆。", + "guide": "在《好兆头》中捕鱼、风吹或者火烧落叶、杀鸽子、看到狗要赶走。人为干涉所有的征兆。\n*视频地址", + "link": "https://www.bilibili.com/video/BV11r4y127Rw?spm_id_from=333.999.0.0" + }, + "愿风带走思念": { + "achievement": "过量的思念", + "desc": "完成五次「愿风带走思念」。", + "guide": "《愿风带走思念》做 5 次。1.0版本(2020年11月11日之前)有BUG会做1次=5次的情况,拿到成就后不会重置。如果进度不为5次会重置为0。从1.1后后重新计算。\n*视频地址", + "link": "https://www.bilibili.com/video/BV1xu41167hS?spm_id_from=333.999.0.0" + }, + "勿言勿笑": { + "achievement": "厨子与渔夫", + "desc": "完成「独钓江雪」与「勿言勿笑」。", + "guide": "正常完成 2 个任务即可", + "link": "" + }, + "独钓江雪": { + "achievement": "厨子与渔夫", + "desc": "完成「独钓江雪」与「勿言勿笑」。", + "guide": "正常完成 2 个任务即可", + "link": "" + }, + "望舒须筑阶": { + "achievement": "更上一层楼", + "desc": "帮助淮安修复望舒客栈的断桥。", + "guide": "正常完成《望舒须筑阶》2次任务即可", + "link": "" + }, + "鸽子、鸭子、小孩子": { + "achievement": "略表歉意", + "desc": "向提米道歉。", + "guide": "《鸽子、鸭子、小孩子》里投食鸭子后故意杀掉鸭子,第二天刷《提米,对不起》", + "link": "" + }, + "提米,对不起!": { + "achievement": "略表歉意", + "desc": "向提米道歉。", + "guide": "《鸽子、鸭子、小孩子》里投食鸭子后故意杀掉鸭子,第二天刷《提米,对不起》", + "link": "" + }, + "鸽子习惯一去不回": { + "achievement": "「您好,亲爱的爸爸…」", + "desc": "了解提米的故事。", + "guide": "水银的讲解视频点此;\n每日委托《鸽子习惯一去不回》有三个支线,第一种:正常赶走鸽子,做完没有后续;\n第二种:赶鸽子的时候玩家杀了鸽子,被杜拉夫要求让旅行者亲自去送信,做完后也没有后续;\n第三种:赶鸽子的时候发现任务提示点的地上一团金光,跑过去发现丘丘人把鸽子抓走烧了吃了,打死丘丘人完成任务,没有后续;\n第三种丘丘人支线又分成两种情况,一是地上有一封信,捡到信的话解锁后续每日委托《一个男孩的去信》,做完这个委托后可以拿到成就\n建议在另外一个每日委托《鸽子、鸭子、小孩子》里不要杀死提米要你喂的鸽子,这样更有可能进入掉信的支线\n至于提米那个略表歉意的成就可以在另外一次刷到鸽子鸭子小孩子以后再做", + "link": "https://www.bilibili.com/video/BV1xR4y1E7PR" + }, + "一个男孩的去信": { + "achievement": "「您好,亲爱的爸爸…」", + "desc": "了解提米的故事。", + "guide": "水银的讲解视频点此;\n每日委托《鸽子习惯一去不回》有三个支线,第一种:正常赶走鸽子,做完没有后续;\n第二种:赶鸽子的时候玩家杀了鸽子,被杜拉夫要求让旅行者亲自去送信,做完后也没有后续;\n第三种:赶鸽子的时候发现任务提示点的地上一团金光,跑过去发现丘丘人把鸽子抓走烧了吃了,打死丘丘人完成任务,没有后续;\n第三种丘丘人支线又分成两种情况,一是地上有一封信,捡到信的话解锁后续每日委托《一个男孩的去信》,做完这个委托后可以拿到成就\n建议在另外一个每日委托《鸽子、鸭子、小孩子》里不要杀死提米要你喂的鸽子,这样更有可能进入掉信的支线\n至于提米那个略表歉意的成就可以在另外一次刷到鸽子鸭子小孩子以后再做", + "link": "https://www.bilibili.com/video/BV1xR4y1E7PR" + }, + "奇药庐中来": { + "achievement": "妙手怪医", + "desc": "治好安娜的病。", + "guide": "《奇药庐中来》要做 3 次,之后解锁《大病初愈》后续任务;第一次做完《大病初愈》后给成就。\n成就拿完后《大病初愈》可能还会反复刷,安娜会出现在三个位置(风车顶上、教堂顶上、风神像手上)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Hw411Z7zp?spm_id_from=333.999.0.0" + }, + "大病初愈": { + "achievement": "妙手怪医", + "desc": "治好安娜的病。", + "guide": "《奇药庐中来》要做 3 次,之后解锁《大病初愈》后续任务;第一次做完《大病初愈》后给成就。\n成就拿完后《大病初愈》可能还会反复刷,安娜会出现在三个位置(风车顶上、教堂顶上、风神像手上)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Hw411Z7zp?spm_id_from=333.999.0.0" + }, + "餐品订单": { + "achievement": "这不是应急食品", + "desc": "在「餐品订单」任务中吃掉了餐品…?", + "guide": "成就是刷到任务以后吃掉任务菜品就可以拿,但是蟹黄火腿焗时蔬的食谱是不一定给的(送餐给活跃的欧琳的支线才会给,途中要打史莱姆)(触发哪条支线是随机的)", + "link": "" + }, + "惊喜大礼": { + "achievement": "西风佑我", + "desc": "见证吉丽安娜的故事。", + "guide": "《惊喜大礼》要做 4 次不同路线(莎拉店、纪念品店、坤恩水果摊、芙萝拉花店)\n最后触发最终剧情(此任务还有后续,盗宝团来复仇,触发“那位先生的委托”)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Ew411f74K?spm_id_from=333.999.0.0" + }, + "「冒险家」的能力极限": { + "achievement": "凑合…也能用", + "desc": "只带给赫尔曼木桩的材料。", + "guide": "《「冒险家」的能力极限》木桩一定要打坏带回", + "link": "" + }, + "冒险家测验·作战方式": { + "achievement": "安娜冒险记", + "desc": "帮助安娜成为一名冒险家。", + "guide": "《冒险家,安娜!》\n拿到成就的过程和给安娜治病差不多,且需要先给安娜治好病,也就是完成每日委托成就《妙手怪医》,之后完成前置任务:《冒险家测验·作战方式》、《冒险家测验·冒险诀窍》、《冒险家测验·起飞方式》,最后接到后续《冒险家,安娜!》,第一次完成任务后拿到成就\n(做完成就后还有后续支线,其中一条支线有“彩蛋”级内容,但没成就)\n*前置很阴间主要是情商选项,后续这4个也很阴间不按套路出牌\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Bu411r7Kb?spm_id_from=333.999.0.0" + }, + "冒险家测验·冒险诀窍": { + "achievement": "安娜冒险记", + "desc": "帮助安娜成为一名冒险家。", + "guide": "《冒险家,安娜!》\n拿到成就的过程和给安娜治病差不多,且需要先给安娜治好病,也就是完成每日委托成就《妙手怪医》,之后完成前置任务:《冒险家测验·作战方式》、《冒险家测验·冒险诀窍》、《冒险家测验·起飞方式》,最后接到后续《冒险家,安娜!》,第一次完成任务后拿到成就\n(做完成就后还有后续支线,其中一条支线有“彩蛋”级内容,但没成就)\n*前置很阴间主要是情商选项,后续这4个也很阴间不按套路出牌\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Bu411r7Kb?spm_id_from=333.999.0.0" + }, + "冒险家测验·起飞方式": { + "achievement": "安娜冒险记", + "desc": "帮助安娜成为一名冒险家。", + "guide": "《冒险家,安娜!》\n拿到成就的过程和给安娜治病差不多,且需要先给安娜治好病,也就是完成每日委托成就《妙手怪医》,之后完成前置任务:《冒险家测验·作战方式》、《冒险家测验·冒险诀窍》、《冒险家测验·起飞方式》,最后接到后续《冒险家,安娜!》,第一次完成任务后拿到成就\n(做完成就后还有后续支线,其中一条支线有“彩蛋”级内容,但没成就)\n*前置很阴间主要是情商选项,后续这4个也很阴间不按套路出牌\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Bu411r7Kb?spm_id_from=333.999.0.0" + }, + "冒险家,安娜!": { + "achievement": "安娜冒险记", + "desc": "帮助安娜成为一名冒险家。", + "guide": "《冒险家,安娜!》\n拿到成就的过程和给安娜治病差不多,且需要先给安娜治好病,也就是完成每日委托成就《妙手怪医》,之后完成前置任务:《冒险家测验·作战方式》、《冒险家测验·冒险诀窍》、《冒险家测验·起飞方式》,最后接到后续《冒险家,安娜!》,第一次完成任务后拿到成就\n(做完成就后还有后续支线,其中一条支线有“彩蛋”级内容,但没成就)\n*前置很阴间主要是情商选项,后续这4个也很阴间不按套路出牌\n*视频地址", + "link": "https://www.bilibili.com/video/BV1Bu411r7Kb?spm_id_from=333.999.0.0" + }, + "『遗落』的文物": { + "achievement": "学者与「学者」", + "desc": "完成「『遗落』的文物」与「『夺宝』小行动」。", + "guide": "《遗落的文物》至少要做 3 次,剧情进展到解救学者索拉雅以后有才有几率刷出《夺宝小行动》", + "link": "" + }, + "『夺宝』小行动": { + "achievement": "学者与「学者」", + "desc": "完成「『遗落』的文物」与「『夺宝』小行动」。", + "guide": "《遗落的文物》至少要做 3 次,剧情进展到解救学者索拉雅以后有才有几率刷出《夺宝小行动》", + "link": "" + }, + "港口驶过几艘船,二四六七八": { + "achievement": "梦想与工作,诗与面包", + "desc": "完成「所谓『工作』」,并获得霖铃的诗集。", + "guide": "完成《港口驶过几艘船,二四六七八》时故意告诉霖铃错误的数量(注意船有驶入和驶出的区别),大概率第二天刷《所谓工作》;如果第二天没刷,可能过一阵子才会刷", + "link": "" + }, + "所谓「工作」": { + "achievement": "梦想与工作,诗与面包", + "desc": "完成「所谓『工作』」,并获得霖铃的诗集。", + "guide": "完成《港口驶过几艘船,二四六七八》时故意告诉霖铃错误的数量(注意船有驶入和驶出的区别),大概率第二天刷《所谓工作》;如果第二天没刷,可能过一阵子才会刷", + "link": "" + }, + "点石成…什么": { + "achievement": "时也运也", + "desc": "一次就选中了最高价值的璞石。", + "guide": "《点石成…什么》:正确方法是选最亮的石头。\n不放心的话可以卡视角来透视璞石内部,有完整的石珀就可以选。\n注意并不是 100% 有石珀,纯随机,同理“餐品订单”任务\n外观最亮的,通过透视可以看到里面发光、纹路有完整条纹的即可。\n", + "link": "" + }, + "这本小说真厉害": { + "achievement": "这本小说真厉害!", + "desc": "偷看常九爷的书稿。", + "guide": "《这本小说真厉害!》,交书稿前派蒙会问你是否偷看,选择偷看即可", + "link": "" + }, + "久久望故人": { + "achievement": "故人久未归", + "desc": "完成「久久望故人」任务。", + "guide": "《久久望故人》:一定要先做过世界任务的小九九,否则可能做完没成就。\n*视频地址", + "link": "https://www.bilibili.com/video/BV11U4y137Tr?spm_id_from=333.999.0.0" + }, + "哎呀!海盗想长大!": { + "achievement": "远大前程", + "desc": "一位少年即将启程远行…", + "guide": "《小海盗,要出海!》\n前置《哎呀!海盗想长大!》、《随水而来的烦恼》\n后续《小小的远行》系列 3 个(没成就)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1q44y1N7Dn?spm_id_from=333.999.0.0" + }, + "随水而来的烦恼": { + "achievement": "远大前程", + "desc": "一位少年即将启程远行…", + "guide": "《小海盗,要出海!》\n前置《哎呀!海盗想长大!》、《随水而来的烦恼》\n后续《小小的远行》系列 3 个(没成就)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1q44y1N7Dn?spm_id_from=333.999.0.0" + }, + "小海盗,要出海!": { + "achievement": "远大前程", + "desc": "一位少年即将启程远行…", + "guide": "《小海盗,要出海!》\n前置《哎呀!海盗想长大!》、《随水而来的烦恼》\n后续《小小的远行》系列 3 个(没成就)\n*视频地址", + "link": "https://www.bilibili.com/video/BV1q44y1N7Dn?spm_id_from=333.999.0.0" + }, + "试问,藏锋何处?": { + "achievement": "四方求剑", + "desc": "见证岚姐与「藏锋」的故事。", + "guide": null, + "link": "" + }, + "剑去之日": { + "achievement": "行万里路…?", + "desc": "见证孙宇的故事。", + "guide": null, + "link": "" + }, + "万端珊瑚事件簿": { + "achievement": "瞳孔中的伪装者", + "desc": "帮助珊瑚和龙二破获案件。", + "guide": "完成《万端珊瑚事件簿·结案时刻》后解锁成就,需要先完成前置任务,推测的顺序是:\n万端珊瑚事件簿 → 搜索工作x3次 → 合适的身份 → 迷惑行动x3次 → 结案时刻→收尾工作\n第二和四环节有 3 个分支地点(随机给其中 1 个):稻妻城附近、甘金岛附近、神里屋敷附近\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "万端珊瑚事件簿·搜索工作": { + "achievement": "瞳孔中的伪装者", + "desc": "帮助珊瑚和龙二破获案件。", + "guide": "完成《万端珊瑚事件簿·结案时刻》后解锁成就,需要先完成前置任务,推测的顺序是:\n万端珊瑚事件簿 → 搜索工作x3次 → 合适的身份 → 迷惑行动x3次 → 结案时刻→收尾工作\n第二和四环节有 3 个分支地点(随机给其中 1 个):稻妻城附近、甘金岛附近、神里屋敷附近\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "万端珊瑚事件簿·迷惑行动": { + "achievement": "瞳孔中的伪装者", + "desc": "帮助珊瑚和龙二破获案件。", + "guide": "完成《万端珊瑚事件簿·结案时刻》后解锁成就,需要先完成前置任务,推测的顺序是:\n万端珊瑚事件簿 → 搜索工作x3次 → 合适的身份 → 迷惑行动x3次 → 结案时刻→收尾工作\n第二和四环节有 3 个分支地点(随机给其中 1 个):稻妻城附近、甘金岛附近、神里屋敷附近\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "万端珊瑚事件簿·合适的身份": { + "achievement": "瞳孔中的伪装者", + "desc": "帮助珊瑚和龙二破获案件。", + "guide": "完成《万端珊瑚事件簿·结案时刻》后解锁成就,需要先完成前置任务,推测的顺序是:\n万端珊瑚事件簿 → 搜索工作x3次 → 合适的身份 → 迷惑行动x3次 → 结案时刻→收尾工作\n第二和四环节有 3 个分支地点(随机给其中 1 个):稻妻城附近、甘金岛附近、神里屋敷附近\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "万端珊瑚事件簿·结案时刻": { + "achievement": "瞳孔中的伪装者", + "desc": "帮助珊瑚和龙二破获案件。", + "guide": "完成《万端珊瑚事件簿·结案时刻》后解锁成就,需要先完成前置任务,推测的顺序是:\n万端珊瑚事件簿 → 搜索工作x3次 → 合适的身份 → 迷惑行动x3次 → 结案时刻→收尾工作\n第二和四环节有 3 个分支地点(随机给其中 1 个):稻妻城附近、甘金岛附近、神里屋敷附近\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "万端珊瑚事件簿·收尾工作": { + "achievement": "真相只有一个…?", + "desc": "见证龙二的故事。", + "guide": "做完《万端珊瑚事件簿·结案时刻》后解锁《万端珊瑚事件簿·收尾工作》,新登场大和田剧情。\n*视频地址", + "link": "https://www.bilibili.com/video/BV1i3411K7YD?spm_id_from=333.999.0.0" + }, + "家乡之味": { + "achievement": "璃月一番", + "desc": "用美味的料理治愈汤雯。", + "guide": "前置任务每日委托《家乡之味》交付奇怪的料理(无论哪种料理的奇怪的版本都行)给汤雯,汤雯拿到以后会说味道很微妙。\n正确完成前置任务后,再接到后续每日委托《绝对独特的美味》 (非强制触发,最快第二天可以接到,最慢1个月后),三个选项 (绝云锅巴、腌笃鲜、烤吃虎鱼) 选哪种都可以,交付美味的料理即可解锁成就\n*.2.5版本后在再做一次该任务,汤雯会回璃月\n*视频地址", + "link": "https://www.bilibili.com/video/BV12f4y157fC?spm_id_from=333.999.0.0" + }, + "绝对独特的美味": { + "achievement": "璃月一番", + "desc": "用美味的料理治愈汤雯。", + "guide": "前置任务每日委托《家乡之味》交付奇怪的料理(无论哪种料理的奇怪的版本都行)给汤雯,汤雯拿到以后会说味道很微妙。\n正确完成前置任务后,再接到后续每日委托《绝对独特的美味》 (非强制触发,最快第二天可以接到,最慢1个月后),三个选项 (绝云锅巴、腌笃鲜、烤吃虎鱼) 选哪种都可以,交付美味的料理即可解锁成就\n*.2.5版本后在再做一次该任务,汤雯会回璃月\n*视频地址", + "link": "https://www.bilibili.com/video/BV12f4y157fC?spm_id_from=333.999.0.0" + }, + "全能美食队·突破性思维": { + "achievement": "噼咔,为什么又是噼咔", + "desc": "向香菱请教到特别的烹饪手法。", + "guide": "《全能美食队·突破性思维》\n剧情里旭东会让旅行者去璃月的万民堂找卯师傅,卯师傅会给你 2 个选项,选择“也许香菱知道怎么解决他的问题…”这个选项,卯师傅说香菱去轻策庄了,让你找点绝云椒椒和禽肉。这时候你可以不管卯师傅要的东西,自己传送到轻策庄去找香菱对话,最后回去找旭东\n香菱在轻策庄西南的传送点(刚传送过去就会被野猪撞的那个)附近\n此外只要自己去找香菱对话,最后交付道具时交付香菱给的就行了,对话选哪个选项其实无所谓\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "全能美食队·烹饪对决": { + "achievement": "双人餐行", + "desc": "帮助旭东和龟井宗久各完成一次烹饪。", + "guide": "《全能美食队·烹饪对决》:双方各胜利 1 次即可。\n灭火BUG已经修护,如实正常做任务即可\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "全能美食队·美食小问答": { + "achievement": "饮食问题", + "desc": "帮助芭尔瓦涅校对全部食谱。", + "guide": "《全能美食队·美食小问答》正确答案如下:\n北地苹果焖肉——胡椒 ;天枢肉———清心\n腌笃鲜—————竹笋 ;串串三味——鸟蛋 ;水煮黑背鲈——盐\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "全能美食队·厨道的极意": { + "achievement": "武士饭", + "desc": "帮助龟井宗久搜集过全部两侧营地的食材。", + "guide": "《全能美食队·厨道的极意》:左右两边各要做 1 次\n*视频地址", + "link": "https://www.bilibili.com/video/BV1zv411g7VE?spm_id_from=333.999.0.0" + }, + "稻妻销售员": { + "achievement": "「给您添蘑菇了!」", + "desc": "在「售后服务」中收到顾客绀田传助的抱怨。", + "guide": "前置任务《稻妻销售员》中,告诉绀田传助错误的化肥使用方法\n任务里有三个选项,选择错误的选项\n每次刷到这个任务时,瓦希德告诉你的方法的顺序可能是不一样的,没有固定答案,需要你自己判断哪个选项是错误的(类似璃月港数船)\n教错了的话,绀田传助会说感觉不对劲\n之后解锁每日委托《售后服务》(解锁代表有机会刷到,但不是第二天一定就刷),为绀田传助摘除田地里的蘑菇时,注意要把全部的蘑菇都摘除、摘了一部分时派蒙会说“这下应该差不多了”,同时系统提示可以找绀田传助交任务了;此时不要理会,继续摘蘑菇,全部摘完以后派蒙会说“这下就全部摘干净了”,这时再去找绀田传助交任务,任务完成后解锁成就", + "link": "" + }, + "售后服务": { + "achievement": "「给您添蘑菇了!」", + "desc": "在「售后服务」中收到顾客绀田传助的抱怨。", + "guide": "前置任务《稻妻销售员》中,告诉绀田传助错误的化肥使用方法\n任务里有三个选项,选择错误的选项\n每次刷到这个任务时,瓦希德告诉你的方法的顺序可能是不一样的,没有固定答案,需要你自己判断哪个选项是错误的(类似璃月港数船)\n教错了的话,绀田传助会说感觉不对劲\n之后解锁每日委托《售后服务》(解锁代表有机会刷到,但不是第二天一定就刷),为绀田传助摘除田地里的蘑菇时,注意要把全部的蘑菇都摘除、摘了一部分时派蒙会说“这下应该差不多了”,同时系统提示可以找绀田传助交任务了;此时不要理会,继续摘蘑菇,全部摘完以后派蒙会说“这下就全部摘干净了”,这时再去找绀田传助交任务,任务完成后解锁成就", + "link": "" + }, + "这本小说…厉害吗?": { + "achievement": "编辑部的一己之见", + "desc": "帮助阿茂和顺吉回到正确的创作轨道。", + "guide": "一阶段:《这本小说…厉害吗?》(支线:天目锻冶屋、九十九物、观察同心们的工作)\n二阶段支线 A:《这本小说…有问题?》\n二阶段支线 B:《这本小说…好像看过?》(按顺序123依次交书即可)\n从剧情逻辑上来看,在一阶段支持编辑阿茂解锁刷到《这本小说…好像看过》的可能性,支持作家顺吉解锁刷到《这本小说…有问题》的可能性\n需要这三个每日都做完,且在 B 支线交付\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "这本小说…有问题?": { + "achievement": "编辑部的一己之见", + "desc": "帮助阿茂和顺吉回到正确的创作轨道。", + "guide": "一阶段:《这本小说…厉害吗?》(支线:天目锻冶屋、九十九物、观察同心们的工作)\n二阶段支线 A:《这本小说…有问题?》\n二阶段支线 B:《这本小说…好像看过?》(按顺序123依次交书即可)\n从剧情逻辑上来看,在一阶段支持编辑阿茂解锁刷到《这本小说…好像看过》的可能性,支持作家顺吉解锁刷到《这本小说…有问题》的可能性\n需要这三个每日都做完,且在 B 支线交付\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "这本小说…好像看过?": { + "achievement": "编辑部的一己之见", + "desc": "帮助阿茂和顺吉回到正确的创作轨道。", + "guide": "一阶段:《这本小说…厉害吗?》(支线:天目锻冶屋、九十九物、观察同心们的工作)\n二阶段支线 A:《这本小说…有问题?》\n二阶段支线 B:《这本小说…好像看过?》(按顺序123依次交书即可)\n从剧情逻辑上来看,在一阶段支持编辑阿茂解锁刷到《这本小说…好像看过》的可能性,支持作家顺吉解锁刷到《这本小说…有问题》的可能性\n需要这三个每日都做完,且在 B 支线交付\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "必须精进的武艺": { + "achievement": "同心训练家?", + "desc": "协助朝仓进行5次训练。", + "guide": "做 4 次每日委托《必须精进的武艺》后解锁世界任务《洗刷耻辱的一战》,完成世界任务后有机会刷到每日委托《永不停歇的修炼》,《必须精进的武艺》+《永不停歇的修炼》合计 5 次即可", + "link": "" + }, + "永不停歇的修炼": { + "achievement": "同心训练家?", + "desc": "协助朝仓进行5次训练。", + "guide": "做 4 次每日委托《必须精进的武艺》后解锁世界任务《洗刷耻辱的一战》,完成世界任务后有机会刷到每日委托《永不停歇的修炼》,《必须精进的武艺》+《永不停歇的修炼》合计 5 次即可", + "link": "" + }, + "每日委托《这本小说…有问题?》": { + "achievement": "至少有了个结局", + "desc": "听顺吉讲述完他所构思的故事。", + "guide": "需要在 2.1 版本后(2.0 版本做过的不算)重做《这本小说…有问题?》和《这本小说…好像看过?》才能解锁世界任务《故事构思法》 ,做完世界任务后得到成\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "每日委托《这本小说…好像看过?》": { + "achievement": "至少有了个结局", + "desc": "听顺吉讲述完他所构思的故事。", + "guide": "需要在 2.1 版本后(2.0 版本做过的不算)重做《这本小说…有问题?》和《这本小说…好像看过?》才能解锁世界任务《故事构思法》 ,做完世界任务后得到成\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "世界任务《故事构思法》": { + "achievement": "至少有了个结局", + "desc": "听顺吉讲述完他所构思的故事。", + "guide": "需要在 2.1 版本后(2.0 版本做过的不算)重做《这本小说…有问题?》和《这本小说…好像看过?》才能解锁世界任务《故事构思法》 ,做完世界任务后得到成\n*视频成就", + "link": "https://www.bilibili.com/video/BV1tu411C7jN?spm_id_from=333.999.0.0" + }, + "每日委托《神社大扫除》": { + "achievement": "她和她的猫", + "desc": "陪寝子前往影向山,寻找「阿响」的痕迹。", + "guide": "做完寝子系列的世界任务后,累积做 4 个寝子相关每日委托(指《神社大扫除》、《鱼之味》、《猫之迹》,大岛纯平那三个不算)后解锁世界任务《鸣神寻踪》,完成世界任务后解锁成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1T3411m7kJ" + }, + "每日委托《鱼之味》": { + "achievement": "她和她的猫", + "desc": "陪寝子前往影向山,寻找「阿响」的痕迹。", + "guide": "做完寝子系列的世界任务后,累积做 4 个寝子相关每日委托(指《神社大扫除》、《鱼之味》、《猫之迹》,大岛纯平那三个不算)后解锁世界任务《鸣神寻踪》,完成世界任务后解锁成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1T3411m7kJ" + }, + "每日委托《猫之迹》": { + "achievement": "她和她的猫", + "desc": "陪寝子前往影向山,寻找「阿响」的痕迹。", + "guide": "做完寝子系列的世界任务后,累积做 4 个寝子相关每日委托(指《神社大扫除》、《鱼之味》、《猫之迹》,大岛纯平那三个不算)后解锁世界任务《鸣神寻踪》,完成世界任务后解锁成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1T3411m7kJ" + }, + "世界任务《鸣神寻踪》": { + "achievement": "她和她的猫", + "desc": "陪寝子前往影向山,寻找「阿响」的痕迹。", + "guide": "做完寝子系列的世界任务后,累积做 4 个寝子相关每日委托(指《神社大扫除》、《鱼之味》、《猫之迹》,大岛纯平那三个不算)后解锁世界任务《鸣神寻踪》,完成世界任务后解锁成就\n*视频地址", + "link": "https://www.bilibili.com/video/BV1T3411m7kJ" + }, + "每日委托《鱼钩上的绝景?》": { + "achievement": "啊哈…什么上钩了?", + "desc": "与凯万一起钓起奇怪的东西…", + "guide": "累积做 3 次前置每日委托《鱼钩上的绝景?》,有墩墩桃、鸟蛋、蘑菇三种支线(注意是累积3次),第二天4点后解锁世界任务《鱼钩的物尽其用》,做完世界任务拿到成就。\n任务还有后续,但是无成就(可能未来版本会加后续成就)。\n做完世界任务以后有机会接到每日委托《鱼钩的奇异时光?》,和前边的也差不多,有帕蒂沙兰、香辛果、甜甜花三种支线", + "link": "" + }, + "世界任务《鱼钩的物尽其用》": { + "achievement": "啊哈…什么上钩了?", + "desc": "与凯万一起钓起奇怪的东西…", + "guide": "累积做 3 次前置每日委托《鱼钩上的绝景?》,有墩墩桃、鸟蛋、蘑菇三种支线(注意是累积3次),第二天4点后解锁世界任务《鱼钩的物尽其用》,做完世界任务拿到成就。\n任务还有后续,但是无成就(可能未来版本会加后续成就)。\n做完世界任务以后有机会接到每日委托《鱼钩的奇异时光?》,和前边的也差不多,有帕蒂沙兰、香辛果、甜甜花三种支线", + "link": "" + }, + "每日委托《鱼钩的奇异时光?》": { + "achievement": "啊哈…什么上钩了?", + "desc": "与凯万一起钓起奇怪的东西…", + "guide": "累积做 3 次前置每日委托《鱼钩上的绝景?》,有墩墩桃、鸟蛋、蘑菇三种支线(注意是累积3次),第二天4点后解锁世界任务《鱼钩的物尽其用》,做完世界任务拿到成就。\n任务还有后续,但是无成就(可能未来版本会加后续成就)。\n做完世界任务以后有机会接到每日委托《鱼钩的奇异时光?》,和前边的也差不多,有帕蒂沙兰、香辛果、甜甜花三种支线", + "link": "" + }, + "吞金和蓄财": { + "achievement": "卡里米之蕈兽", + "desc": "见证哈特姆在「期货交易」大赚一笔!", + "guide": "全随机后续,正常需要做5次拿到2成就,最速欧皇可以3次拿2成就。\n2022/9/5更新:\n「吞金料理」中有3种料理:摩拉肉,黄油鸡和「堆高高」。\n建议选择美味的堆高高。\n2022/9/16更新:\n现在发现变成了随机后续,给任何料理都会触发任意成就,原本应该给2次料理2个成就的,也可以1次料理2成就。", + "link": "" + }, + "喵…喵喵?喵!喵。": { + "achievement": "捉猫记", + "desc": "帮莎莉寻找过所有小猫。", + "guide": "至少要做 3 次,正确完成寻找 3 只不同小猫的支线\n「黑白色」的猫「拉勒」:【喵,喵喵喵,喵——】\n「深灰色」的猫「纳尔吉斯」:【喵!喵喵,喵】\n「灰黑条纹」的猫「萝赞」:【喵喵喵,喵喵喵】", + "link": "" + }, + "世界任务《加尔恰的赞歌》": { + "achievement": "推分算数原理", + "desc": "帮助加尔恰完善他的机器。", + "guide": "推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "每日委托《加尔恰的赞歌·关键物品》": { + "achievement": "推分算数原理", + "desc": "帮助加尔恰完善他的机器。", + "guide": "推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "每日委托《加尔恰的赞歌·替代物》": { + "achievement": "推分算数原理", + "desc": "帮助加尔恰完善他的机器。", + "guide": "推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "每日委托《加尔恰的赞歌·轴承在上》": { + "achievement": "推分算数原理", + "desc": "帮助加尔恰完善他的机器。", + "guide": "推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "每日委托《加尔恰的赞歌·举手之劳》": { + "achievement": "推分算数原理", + "desc": "帮助加尔恰完善他的机器。", + "guide": "推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "每日委托《加尔恰的赞歌·某人的回响》": { + "achievement": "推分算数原理", + "desc": "帮助加尔恰完善他的机器。", + "guide": "推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "世界任务《加尔恰的赞歌·适配性赠礼》": { + "achievement": "推分算数原理", + "desc": "帮助加尔恰完善他的机器。", + "guide": "推测需要先完后璃月望舒客栈的世界任务《加尔恰的赞歌》后才能在须弥接到这系列每日委托。\n《举手之劳》里,正确选项:【二次入炉的时候,燃料记得加多点。】【从内向外敲打。】\n做完《某人的回响》后应该可以拿到成就,同时解锁后续世界任务", + "link": "" + }, + "御用在他乡": { + "achievement": "「为了工作。」", + "desc": "为范兵卫采到更多的蘑菇。", + "guide": "每日委托《御用在他乡》\n√完结!\n可以一次性拿到成就 :要求采5个蘑菇,但可以采7个给成就\n推测需要先做完稻妻的世界任务《踏鞴物语》系列才能在须弥接到这个委托。\n做完第一次以后他以后还会让你摘蘑菇,对话内容会有些变化", + "link": "" + }, + "谨遵医嘱": { + "achievement": "放松疗法", + "desc": "满足三个病人的愿望。", + "guide": "《洁净与健康》不是前置任务,可以直接刷到了《谨遵医嘱》\n《谨遵医嘱》这个任务是你和病人对话完成就可以回去交差了的,但这样拿不到成就。你需要:\n细节:① 主动为古尔根清理田里的杂草,清理完以后再次与古尔根对话;② 阿兹拉说药太苦,和她对话,送给她【糖】;③ 阿夫塔想吃肉,给他【美味的烤肉排】。\n满足病人的愿望以后再回去交差。其中阿兹拉和阿夫塔不会主动问你要东西,需要你听完他们的话以后再次与他们对话来交付道具", + "link": "" + }, + "生不出的花": { + "achievement": "斩花除根", + "desc": "找到并打倒逃走的骗骗花。", + "guide": "前置累积3次《生不出的花》后,后续出《花开之时》,\n随机后续1,有骗骗花的支线才有成就,追击并干掉骗骗花后获得成就。\n随机后续2,无骗骗花,寄了,再来3次……\n细节:前置有 2 个支线,一个是提供肥料,另一个是浇水。", + "link": "" + }, + "花开之时": { + "achievement": "斩花除根", + "desc": "找到并打倒逃走的骗骗花。", + "guide": "前置累积3次《生不出的花》后,后续出《花开之时》,\n随机后续1,有骗骗花的支线才有成就,追击并干掉骗骗花后获得成就。\n随机后续2,无骗骗花,寄了,再来3次……\n细节:前置有 2 个支线,一个是提供肥料,另一个是浇水。", + "link": "" + }, + "衡量世界之人!": { + "achievement": "天有多高,地有多…", + "desc": "协助法伽尼进行测量工作。", + "guide": "1和2分支都是随机给的,其中分支1还有3种怪:丘丘人、蕈兽、遗迹蛇\n至少做 3 次,分别是:① 打怪;② 设置信标;③ 回收信标+打怪。", + "link": "" + }, + "宝贝计划": { + "achievement": "非必要需求", + "desc": "找到古拉布吉尔给小蛇制作的所有道具。", + "guide": "帮古拉布吉尔找宠物蛇口粮,有 5 个支线。任务是你找到【古拉布吉尔的特制宠物蛇口粮】交给 NPC 就可以完成,但是做成就需要你额外找到 3 个东西:【奇怪的珠子】、【奇怪的小型帽子】、【破旧的架子】。\n每次随机给1个隐藏道具,但是也可能没有。", + "link": "" + }, + "问题的转化": { + "achievement": "船说了算", + "desc": "与拉菲克成功地测试了船体强度。", + "guide": "目前第三段就可以拿到成就,但是还有后续,可能未来版本还有成就。\n(类似稻妻八重堂作家和编辑《小说有问题》在后续版本上线新成就。)\n细节:在《问题的转化·理论强度》中拿5块木头,这样在《问题的转化·负载问题》中可以成功拿到成就,失败的支线可能会退回到第二阶段。", + "link": "" + }, + "问题的转化·理论强度": { + "achievement": "船说了算", + "desc": "与拉菲克成功地测试了船体强度。", + "guide": "目前第三段就可以拿到成就,但是还有后续,可能未来版本还有成就。\n(类似稻妻八重堂作家和编辑《小说有问题》在后续版本上线新成就。)\n细节:在《问题的转化·理论强度》中拿5块木头,这样在《问题的转化·负载问题》中可以成功拿到成就,失败的支线可能会退回到第二阶段。", + "link": "" + }, + "问题的转化·负载问题": { + "achievement": "船说了算", + "desc": "与拉菲克成功地测试了船体强度。", + "guide": "目前第三段就可以拿到成就,但是还有后续,可能未来版本还有成就。\n(类似稻妻八重堂作家和编辑《小说有问题》在后续版本上线新成就。)\n细节:在《问题的转化·理论强度》中拿5块木头,这样在《问题的转化·负载问题》中可以成功拿到成就,失败的支线可能会退回到第二阶段。", + "link": "" + }, + "问题的转化·关键在何?": { + "achievement": "船说了算", + "desc": "与拉菲克成功地测试了船体强度。", + "guide": "目前第三段就可以拿到成就,但是还有后续,可能未来版本还有成就。\n(类似稻妻八重堂作家和编辑《小说有问题》在后续版本上线新成就。)\n细节:在《问题的转化·理论强度》中拿5块木头,这样在《问题的转化·负载问题》中可以成功拿到成就,失败的支线可能会退回到第二阶段。", + "link": "" + }, + "食与学": { + "achievement": "问题何在?", + "desc": "享受三道贾法尔制作的料理。", + "guide": "每次随机给一个。\n完成 3 个支线:薄荷豆汤、绿汁脆球、烤肉卷", + "link": "" + }, + "教令院,小问题": { + "achievement": "须弥博学者", + "desc": "答对六道不同的问题。", + "guide": "总共 6 道题,每次抽 3 道,正确答案分别是:1、阿弥利多学院;2、悉般多摩学院;3、圣树;4、防沙壁;5、驮兽;6、蕈兽", + "link": "" + }, + "跑,希尔米,跑": { + "achievement": "一步之遥", + "desc": "在与希尔米的赛跑中大意落败…", + "guide": null, + "link": "" + }, + "良药难求": { + "achievement": "医用笔迹", + "desc": "帮助马鲁夫正确地解析药方。", + "guide": null, + "link": "" + }, + "沙上花·余香": { + "achievement": "手有余香", + "desc": "见证内尔敏的故事。", + "guide": null, + "link": "" + } +} diff --git a/GenshinUID/genshinuid_achievement/get_achi_desc.py b/GenshinUID/genshinuid_achievement/get_achi_desc.py new file mode 100644 index 00000000..074714d2 --- /dev/null +++ b/GenshinUID/genshinuid_achievement/get_achi_desc.py @@ -0,0 +1,62 @@ +import re + +from .template import all_achi, daily_achi, achi_template, daily_template + + +async def get_daily_achi(task: str) -> str: + _similarity = 0 + detail = {} + if task in daily_achi: + detail = daily_achi[task] + else: + for _task in daily_achi: + __task = ''.join(re.findall('[\u4e00-\u9fa5]', _task)) + __task = __task.replace('每日委托', '').replace('世界任务', '') + similarity = len(set(__task) & set(task)) + if similarity >= len(__task) / 2: + if similarity > _similarity: + _similarity = similarity + detail = daily_achi[_task] + task = _task + else: + if detail == {}: + return '该委托暂无成就...' + + achi = detail['achievement'] + desc = detail['desc'] + guide = detail['guide'] + link = detail['link'] + + im = daily_template.format(task, achi, desc, guide) + im = f'{im}\n{link}' if link else im + return im + + +async def get_achi(achi: str) -> str: + _similarity = 0 + detail = {} + if achi in all_achi: + detail = all_achi[achi] + else: + for _achi in all_achi: + __achi = ''.join(re.findall('[\u4e00-\u9fa5]', _achi)) + __achi = __achi.replace('每日委托', '').replace('世界任务', '') + similarity = len(set(__achi) & set(achi)) + if similarity >= len(__achi) / 2: + if similarity > _similarity: + _similarity = similarity + detail = all_achi[_achi] + achi = _achi + else: + if detail == {}: + return '暂无该成就...' + + book = detail['book'] + desc = detail['desc'] + guide = detail['guide'] + link = detail['link'] + + im = achi_template.format(book, achi, desc) + im = f'{im}\n{guide}' if guide else im + im = f'{im}\n{link}' if link else im + return im diff --git a/GenshinUID/genshinuid_achievement/template.py b/GenshinUID/genshinuid_achievement/template.py new file mode 100644 index 00000000..47f87152 --- /dev/null +++ b/GenshinUID/genshinuid_achievement/template.py @@ -0,0 +1,20 @@ +import json +from pathlib import Path + +path = Path(__file__).parent +with open(path / 'all_achi.json', "r", encoding='UTF-8') as f: + all_achi = json.load(f) + +with open(path / 'daily_achi.json', "r", encoding='UTF-8') as f: + daily_achi = json.load(f) + +daily_template = '''任务:【{}】 +成就:【{}】 +描述:【{}】 +攻略:【{}】 +''' + +achi_template = '''合辑:【{}】 +成就:【{}】 +描述:【{}】 +''' diff --git a/GenshinUID/genshinuid_adv/__init__.py b/GenshinUID/genshinuid_adv/__init__.py new file mode 100644 index 00000000..266b60e4 --- /dev/null +++ b/GenshinUID/genshinuid_adv/__init__.py @@ -0,0 +1,15 @@ +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event + +from .get_adv import char_adv, weapon_adv + + +@SV('文字推荐').on_suffix(('用什么', '能用啥', '怎么养')) +async def send_char_adv(bot: Bot, ev: Event): + await bot.send(await char_adv(ev.text)) + + +@SV('文字推荐').on_suffix(('能给谁', '谁能用')) +async def send_weapon_adv(bot: Bot, ev: Event): + await bot.send(await weapon_adv(ev.text)) diff --git a/GenshinUID/genshinuid_adv/char_adv_list.json b/GenshinUID/genshinuid_adv/char_adv_list.json new file mode 100644 index 00000000..8e810925 --- /dev/null +++ b/GenshinUID/genshinuid_adv/char_adv_list.json @@ -0,0 +1,1515 @@ +{ + "安柏": { + "weapon": { + "5": [ + "阿莫斯之弓", + "天空之翼", + "终末嗟叹之诗" + ], + "4": [ + "绝弦" + ], + "3": [] + }, + "artifact": [ + [ + "昔日宗室之仪" + ] + ], + "remark": [ + "原神御三家之一,必胜客联动看板角色之一;", + "身份西风骑士团侦查骑士,蒙德飞行冠军,柏菈图的拼图(误);", + "人送外号解谜点火真君/打火姬", + "通常情况下,安柏的大世界解谜意义大于其深渊实战意义,建议根据实际需求选择投入资源培养" + ] + }, + "凯亚": { + "weapon": { + "5": [ + "天空之刃", + "风鹰剑" + ], + "4": [ + "天目影打刀", + "西风剑", + "黑剑" + ], + "3": [ + "黎明神剑", + "飞天御剑" + ] + }, + "artifact": [ + [ + "绝缘之旗印" + ], + [ + "冰风迷途的勇士" + ], + [ + "苍白之火" + ] + ], + "remark": [ + "全名凯亚·亚尔伯里奇,原神御三家之一;", + "身份西风骑士团骑兵队长,坎瑞亚遗民之一;", + "人送外号踏冰渡海真君/矿工头子" + ] + }, + "丽莎": { + "weapon": { + "5": [ + "神乐之真意", + "天空之卷", + "四风原典" + ], + "4": [ + "流浪乐章", + "匣里日月", + "万国诸海图谱" + ], + "3": [] + }, + "artifact": [ + [ + "如雷的盛怒" + ], + [ + "如雷的盛怒", + "昔日宗室之仪" + ], + [ + "战狂" + ] + ], + "remark": [ + "全名丽莎·敏兹,原神御三家之一,\n身份西风骑士团图书管理员,雷泽的师傅,\n可莉对其评价:「丽莎阿……丽莎姐姐是好人!」" + ] + }, + "诺艾尔": { + "weapon": { + "5": [ + "赤角石溃杵" + ], + "4": [ + "白影剑", + "螭骨剑" + ], + "3": [] + }, + "artifact": [ + [ + "华馆梦醒形骸记" + ], + [ + "逆飞的流星" + ], + [ + "角斗士的终幕礼" + ] + ], + "remark": [ + "原神常驻抽卡折扣赠送角色,肯德基联动看板角色之一;\n身份西风骑士团女仆,也因此常用女仆代称,\n人送外号人形高达/岩王帝姬" + ] + }, + "芭芭拉": { + "weapon": { + "5": [ + "不灭月华" + ], + "4": [ + "试作金珀" + ], + "3": [ + "讨龙英杰谭" + ] + }, + "artifact": [ + [ + "被怜爱的少女" + ] + ], + "remark": [ + "原神新手活动赠送角色,大多数萌新能拥有的第一个奶妈,\n唯一一个元素爆发拥有特写动画的四星角色,\n身份西风骑士团祈礼牧师,蒙德闪耀偶像,琴的妹妹,\n人送外号战斗牧师/内鬼/老芭" + ] + }, + "砂糖": { + "weapon": { + "5": [], + "4": [ + "祭礼残章" + ], + "3": [ + "讨龙英杰谭" + ] + }, + "artifact": [ + [ + "翠绿之影" + ] + ], + "remark": [ + "身份西风骑士团炼金术士,师从阿贝多的兽耳娘;\n因为肖像和二创的关系而被人送外号雷莹术士(误)" + ] + }, + "行秋": { + "weapon": { + "5": [ + "雾切之回光", + "磐岩结绿", + "波乱月白经津" + ], + "4": [ + "祭礼剑", + "匣里龙吟" + ], + "3": [ + "飞天御剑" + ] + }, + "artifact": [ + [ + "绝缘之旗印" + ], + [ + "沉沦之心", + "昔日宗室之仪" + ] + ], + "remark": [ + "原神“点秋香”成员之一,\n身份飞云商会二少爷,古华派继承人,重云的好损友,提瓦特代理水神米哈游画女硬说男的典范(误)", + "主流情况下,优选祭礼剑搭配绝缘4件(2宗2水虽作为早期配装,但与绝缘4件相比互有胜负,已经基于2+2毕业成型的旅行者可按需换刷绝缘4件;出于刷本收益考量,一般推荐后入坑的萌新直接刷取绝缘4件);选择祭礼剑以外的非充能词条武器,或者6命之前的行秋,可能存在明显的循环周转问题,上述情况下推荐圣遗物沙漏选择充能主词条(在编入雷神国家队或与夜兰组队获得双水加成时,可忽略此建议);选用西风系列武器时,建议适当提高角色暴击率以获得较为稳定的回能效果" + ] + }, + "凝光": { + "weapon": { + "5": [ + "尘世之锁", + "四风原典", + "天空之卷" + ], + "4": [ + "试作金珀", + "流浪乐章", + "匣里日月" + ], + "3": [] + }, + "artifact": [ + [ + "悠古的磐岩", + "攻18" + ] + ], + "remark": [ + "身份璃月天权星,群玉阁之主,\n原神羽球节球网指定赞助方(误)\n人送外号富婆,原神版渡鸦(大误)" + ] + }, + "重云": { + "weapon": { + "5": [ + "狼的末路" + ], + "4": [ + "螭骨剑", + "祭礼大剑" + ], + "3": [] + }, + "artifact": [ + [ + "冰风迷途的勇士" + ], + [ + "渡过烈火的贤人" + ] + ], + "remark": [ + "身份天衡方士,拥有「纯阳之体」,\n是行秋的朋友,也是申鹤的外甥" + ] + }, + "雷泽": { + "weapon": { + "5": [ + "松籁响起之时", + "狼的末路", + "无工之剑", + "天空之傲" + ], + "4": [ + "螭骨剑", + "雪葬的星银", + "衔珠海皇", + "试作古华" + ], + "3": [] + }, + "artifact": [ + [ + "苍白之火" + ], + [ + "苍白之火", + "染血的骑士" + ], + [ + "苍白之火", + "攻18" + ], + [ + "逆飞的流星" + ], + [ + "角斗士的终幕礼" + ] + ], + "remark": [ + "身份「卢皮卡」,安德留斯的收留者,师从丽莎,是可莉的朋友,昔日的四星战神,人送外号狼崽" + ] + }, + "旅行者风": { + "weapon": { + "5": [ + "磐岩结绿" + ], + "4": [ + "黑剑" + ], + "3": [] + }, + "artifact": [ + [ + "翠绿之影", + "攻18" + ] + ], + "remark": [ + "对初始角色空和荧两兄妹的统称。根据玩家选择,自机一方将踏上寻找血亲之路,另一方将隶属于深渊教团。\n身份:外来的异乡人,小可爱,进化出智商的丘丘人,荣誉骑士,臭保底人(误),等等;\n绰号很多,在国内空常称为龙哥,荧常称为爷" + ] + }, + "旅行者岩": { + "weapon": { + "5": [ + "磐岩结绿" + ], + "4": [ + "黑剑" + ], + "3": [] + }, + "artifact": [ + [ + "悠古的磐岩", + "攻18" + ] + ], + "remark": [ + "对初始角色空和荧两兄妹的统称。根据玩家选择,自机一方将踏上寻找血亲之路,另一方将隶属于深渊教团。\n身份:外来的异乡人,通缉令上的,臭保底人(误),岩王帝君的化身,等等;\n绰号很多,在国内空常称为龙哥,荧常称为爷" + ] + }, + "北斗": { + "weapon": { + "5": [ + "狼的末路", + "无工之剑" + ], + "4": [ + "螭骨剑", + "衔珠海皇" + ], + "3": [] + }, + "artifact": [ + [ + "绝缘之旗印" + ], + [ + "昔日宗室之仪", + "如雷的盛怒" + ] + ], + "remark": [ + "唯一一个拥有盾反机制的自机角色;\n身份南十字船队“死兆星”号船长,\n人送外号大姐头,发电姬(误);\n因为可以给自己挂雷的特性,在稻妻解谜可将其作为继电石使用" + ] + }, + "香菱": { + "weapon": { + "5": [ + "薙草之稻光", + "和璞鸢", + "护摩之杖", + "息灾", + "拿来吧你(五星大多能用,上述都没有的有啥用啥)" + ], + "4": [ + "「渔获」", + "断浪长鳍", + "匣里灭辰", + "决斗之枪", + "西风长枪" + ], + "3": [ + "白缨枪" + ] + }, + "artifact": [ + [ + "炽烈的炎之魔女" + ], + [ + "绝缘之旗印" + ], + [ + "炽烈的炎之魔女", + "昔日宗室之仪" + ] + ], + "remark": [ + "原神“点秋香”成员之一,\n身份万民堂大厨,瑶瑶的师姐,\n人送外号枪神,锅巴发射器,璃月飞行冠军/洲际导弹真君,小哪吒(误);", + "通常情况下,香菱需和班尼特组队以获得较为可观的伤害,不建议将二人拆分;圣遗物方面优选绝缘4件(火套4件和2火2宗虽作为早期配装,但与绝缘4件相比互有胜负,已经基于火套或2+2毕业成型的旅行者可按需换刷绝缘4件;出于刷本收益考量,一般推荐后入坑的萌新直接刷取绝缘4件);选择非充能词条武器的香菱可能存在明显的循环周转问题,此时推荐圣遗物沙漏选择充能主词条(编入雷神国家队时,可忽略此建议);选用西风系列武器时,建议适当提高角色暴击率以获得较为稳定的回能效果" + ] + }, + "菲谢尔": { + "weapon": { + "5": [ + "天空之翼" + ], + "4": [ + "幽夜华尔兹", + "绝弦", + "暗巷猎手" + ], + "3": [] + }, + "artifact": [ + [ + "如雷的盛怒", + "流浪大地的乐团" + ], + [ + "如雷的盛怒/流浪大地的乐团", + "攻18" + ] + ], + "remark": [ + "全名菲谢尔·冯·露弗施洛斯·那菲多特,自称为「断罪之皇女」「幽夜净土之主宰」;\n身份冒险家协会调查员,班尼特的同事,\n人送外号皇女,小艾咪,奥兹发射器" + ] + }, + "班尼特": { + "weapon": { + "5": [ + "雾切之回光674", + "风鹰剑674", + "天空之刃608", + "波乱月白经津608", + "磐岩结绿542" + ], + "4": [ + "腐殖之剑510", + "西风剑454", + "暗巷闪光620" + ], + "3": [] + }, + "artifact": [ + [ + "昔日宗室之仪" + ], + [ + "炽烈的炎之魔女" + ], + [ + "被怜爱的少女" + ], + [ + "教官" + ] + ], + "remark": [ + "原神“点秋香”成员之一,\n身份班尼冒险团团长,冒险家协会成员,菲谢尔的同事,提瓦特代理火神(误),\n人送外号点赞哥,六星角色,倒霉蛋,人品指示器", + "慎重点亮班尼特第6命座,具体原因碍于篇幅不做赘述,可自行了解;武器后数字为最高等级下的基础攻击力数值(后称“白字”),主流情况下,优选高白字武器搭配宗室4件提供高额攻击力加成;选择驻场输出时,考虑魔女4件;追求极致回复量,考虑少女4件;教官4件仅在部分反应队伍推荐;选择非充能词条武器的班尼特可能存在一定循环周转问题,此时推荐圣遗物沙漏选择充能主词条;选用西风系列武器时,建议适当提高角色暴击率以获得较为稳定的回能效果" + ] + }, + "迪卢克": { + "weapon": { + "5": [ + "狼的末路", + "无工之剑", + "赤角石溃杵", + "天空之傲" + ], + "4": [ + "螭骨剑", + "衔珠海皇", + "试作古华", + "雨裁" + ], + "3": [] + }, + "artifact": [ + [ + "炽烈的炎之魔女" + ], + [ + "炽烈的炎之魔女", + "攻18" + ], + [ + "角斗士的终幕礼" + ] + ], + "remark": [ + "全名迪卢克·莱艮芬德,肯德基联动看板角色之一;\n身份「晨曦酒庄」庄主,蒙德暗夜英雄,红色的很烫的女孩子(误),火系角色唯一的面瘫(误),可莉评价为「奇怪的大人」;\n人送外号卢老爷/卢姥爷,正义人/正E人/挣亿人,E键三连真君,卢锅巴", + "选用无工之剑时,推荐与钟离,迪奥娜等盾辅角色搭配,以最大化武器效果增幅;推荐赤角出于其主词条强力考量,但通常情况下不建议为迪卢克专门抽取" + ] + }, + "琴": { + "weapon": { + "5": [ + "苍古自由之誓", + "雾切之回光", + "磐岩结绿", + "天空之刃", + "风鹰剑" + ], + "4": [ + "腐殖之剑", + "天目影打刀", + "黑剑", + "笛剑", + "西风剑" + ], + "3": [] + }, + "artifact": [ + [ + "翠绿之影" + ], + [ + "翠绿之影", + "攻18" + ], + [ + "攻18", + "被怜爱的少女" + ], + [ + "苍白之火" + ], + [ + "角斗士的终幕礼" + ] + ], + "remark": [ + "全名琴·古恩希尔德,\n身份西风骑士团代理团长、蒲公英骑士、狮牙骑士,可莉的监护人,芭芭拉的姐姐,拼一己之力拉高风系角色平均身高的成女(误),\n人送外号吸尘器,骑士团の魂,琴臀长", + "主流情况下,做辅助定位优选风套4件,武器优选苍古;否则,本条目推荐的武器和圣遗物大多为驻场输出时的参考方案;选择以物理伤害做输出时,建议自行了解使用琴打出掉落伤害的方法,碍于篇幅不在此赘述" + ] + }, + "七七": { + "weapon": { + "5": [ + "天空之刃", + "风鹰剑", + "磐岩结绿", + "雾切之回光" + ], + "4": [ + "祭礼剑", + "黑剑", + "试作斩岩", + "笛剑" + ], + "3": [] + }, + "artifact": [ + [ + "海染砗蟝" + ], + [ + "千岩牢固" + ], + [ + "被怜爱的少女" + ], + [ + "被怜爱的少女", + "攻18" + ] + ], + "remark": [ + "璃月仙人之一,别号「救苦度厄真君,起死回骸童子」,\n身份不卜庐采药人暨学徒,\n人送外号旅行者的小保底,不卜庐剑圣,体操达人", + "主流情况下,优选祭礼剑搭配海染4件,提供足够回复量并兼顾一定的伤害输出,追求极致回复量时再考虑少女海染2+2或少女4件;千岩4件为早期增伤辅助探索配装,仅在搭配雷泽等角色贴脸输出时推荐;雾切和绿剑仅在少数需要七七驻场输出的情况下考虑装备" + ] + }, + "莫娜": { + "weapon": { + "5": [ + "天空之卷", + "四风原典" + ], + "4": [ + "流浪乐章", + "匣里日月", + "证誓之明瞳", + "试作金珀" + ], + "3": [ + "讨龙英杰谭" + ] + }, + "artifact": [ + [ + "昔日宗室之仪" + ], + [ + "千岩牢固" + ], + [ + "绝缘之旗印" + ], + [ + "沉沦之心", + "攻18" + ], + [ + "沉沦之心", + "流浪大地的乐团" + ] + ], + "remark": [ + "全名阿斯托洛吉斯·莫娜·梅姬斯图斯,来自枫丹,现居蒙德,\n身份占星术士,\n人送外号半部讨龙真君,没钱吃饭真君", + "主流情况下,做增伤辅助时武器优选讨龙(无需给武器升级,但推荐满精炼)搭配宗室或千岩4件,高精流浪乐章可做备选,金珀仅推荐在中低压环境且需要一定生命回复时携带;其余武器和圣遗物套装仅在做爆发输出时考虑" + ] + }, + "刻晴": { + "weapon": { + "5": [ + "雾切之回光", + "裁叶萃光", + "磐岩结绿", + "风鹰剑" + ], + "4": [ + "黑剑", + "匣里龙吟" + ], + "3": [ + "黎明神剑" + ] + }, + "artifact": [ + [ + "饰金之梦" + ], + [ + "饰金之梦/如雷的盛怒", + "攻18/精80" + ], + [ + "平息鸣雷的尊者" + ], + [ + "如雷的盛怒", + "攻18" + ], + [ + "苍白之火" + ] + ], + "remark": [ + "原神“又甘又刻”“合晴合里”成员之一,\n央视新闻2020年度图鉴《原神》提名代表角色,\n身份璃月玉衡星,猫耳总角发扬者,屁斜剑法开创者(误),爱吃金丝虾球,人送外号阿晴,刻师傅/牛杂师傅,璃月雷神,氪晴,严莉莉(大误)", + "针对萌新前中期过渡,可使用黎明神剑搭配精通主词条沙漏,圣遗物套装按需选择武人4件套;对于激化体系,可考虑使用裁叶萃光;风鹰剑仅推荐物理输出流派使用,此时圣遗物推荐搭配苍白之火4件套" + ] + }, + "温迪": { + "weapon": { + "5": [ + "天空之翼", + "终末嗟叹之诗", + "冬极白星", + "阿莫斯之弓" + ], + "4": [ + "绝弦", + "西风猎弓", + "风花之颂", + "苍翠猎弓" + ], + "3": [ + "鸦羽弓" + ] + }, + "artifact": [ + [ + "翠绿之影" + ], + [ + "翠绿之影", + "昔日宗室之仪" + ], + [ + "绝缘之旗印" + ] + ], + "remark": [ + "巴巴托斯,尘世七执政之一的风神,\n唯一任次七神暨男神之二,旅行者在提瓦特遇到的第一位尘世七执政;喜食苹果酒,对猫毛过敏,\n身份吟游诗人,四风守护的领导人,米哈游画女硬说男的典范(误),\n人送外号卖唱的,摸鱼神,诶嘿摸鱼真君/不务正业真君,巴巴脱丝" + ] + }, + "可莉": { + "weapon": { + "5": [ + "天空之卷", + "四风原典", + "尘世之锁", + "神乐之真意", + "图莱杜拉的回忆" + ], + "4": [ + "流浪乐章", + "嘟嘟可故事集", + "匣里日月" + ], + "3": [] + }, + "artifact": [ + [ + "炽烈的炎之魔女" + ], + [ + "渡过烈火的贤人" + ], + [ + "流浪大地的乐团" + ], + [ + "逆飞的流星" + ] + ], + "remark": [ + "「蒙德最强战力」传说,玩家的宝贝心头肉;\n身份西风骑士团火花骑士,艾莉丝的女儿,羽球节指定羽球(误),西风骑士团禁闭室常客(误),\n人送外号放火烧山真君,火化骑士(误),小太阳" + ] + }, + "达达利亚/「公子」": { + "weapon": { + "5": [ + "冬极白星", + "飞雷之弦振", + "若水", + "天空之翼", + "阿莫斯之弓" + ], + "4": [ + "弓藏", + "破魔之弓", + "绝弦", + "西风猎弓" + ], + "3": [ + "鸦羽弓" + ] + }, + "artifact": [ + [ + "沉沦之心", + "攻18" + ], + [ + "沉沦之心" + ] + ], + "remark": [ + "真名阿贾克斯,原神第一个up三次的限定五星,近战弓兵的典范之一,做什么都不会ooc的传奇/诸舞精通;\n身份愚人众执行官末席,代号「公子」,\n人送外号达达鸭,鸭头,(至冬国最棒的)玩具销售员,钟离的钱包/人形自走ATM,至冬国男狐狸精(误)" + ] + }, + "迪奥娜": { + "weapon": { + "5": [ + "终末嗟叹之诗" + ], + "4": [ + "祭礼弓", + "西风猎弓" + ], + "3": [ + "反曲弓" + ] + }, + "artifact": [ + [ + "昔日宗室之仪" + ], + [ + "被怜爱的少女", + "千岩牢固" + ], + [ + "被怜爱的少女" + ] + ], + "remark": [ + "出身于清泉镇,猎人杜拉夫的女儿,自诩为「酒业杀手」,类似猫的性状是「凯茨莱茵家族」血统的象征;\n身份「猫尾酒馆」超人气调酒师,外号猫猫,dio娜,雷莹术士(考哥)" + ] + }, + "钟离": { + "weapon": { + "5": [ + "护摩之杖", + "和璞鸢", + "贯虹之槊" + ], + "4": [ + "决斗之枪", + "西风长枪" + ], + "3": [ + "黑缨枪" + ] + }, + "artifact": [ + [ + "千岩牢固" + ], + [ + "千岩牢固", + "昔日宗室之仪" + ], + [ + "悠古的磐岩", + "昔日宗室之仪" + ] + ], + "remark": [ + "摩拉克斯,尘世七执政之一的岩神,唯一任次七神暨男神之二;", + "身份岩王帝君/岩王爷,众仙之祖,「往生堂」客卿,听书人;厌恶水产品,", + "外号帝君,不带钱包真君" + ] + }, + "辛焱": { + "weapon": { + "5": [ + "松籁响起之时", + "狼的末路", + "无工之剑", + "赤角石溃杵", + "天空之傲" + ], + "4": [ + "螭骨剑", + "雪葬的星银", + "衔珠海皇", + "试作古华", + "白影剑" + ], + "3": [] + }, + "artifact": [ + [ + "苍白之火" + ], + [ + "苍白之火", + "染血的骑士" + ], + [ + "苍白之火", + "角斗士的终幕礼/追忆之注连/辰砂往生录/来歆余响" + ], + [ + "逆飞的流星" + ], + [ + "角斗士的终幕礼" + ] + ], + "remark": [ + "出身璃月,游学枫丹,璃月摇滚先行者,隶属于「红弦」;", + "外号辛三火,黑妹" + ] + }, + "阿贝多": { + "weapon": { + "5": [ + "苍古自由之誓", + "磐岩结绿" + ], + "4": [ + "辰砂之纺锤", + "腐殖之剑" + ], + "3": [ + "黎明神剑" + ] + }, + "artifact": [ + [ + "千岩牢固" + ], + [ + "华馆梦醒形骸记" + ], + [ + "悠古的磐岩", + "华馆梦醒形骸记" + ] + ], + "remark": [ + "白垩之子,创生原初之人,作画水平了得,炼金术造诣深刻;", + "身份西风骑士团首席炼金术士,砂糖的老师,可莉的义兄;", + "又名人造人,电梯批发商(误)" + ] + }, + "甘雨": { + "weapon": { + "5": [ + "阿莫斯之弓", + "冬极白星", + "飞雷之振弦", + "天空之翼" + ], + "4": [ + "破魔之弓", + "试作澹月", + "黑岩战弓" + ], + "3": [ + "弹弓" + ] + }, + "artifact": [ + [ + "流浪大地的乐团" + ], + [ + "冰风迷途的勇士" + ] + ], + "remark": [ + "半仙血统,师从留云借风真君,与申鹤是同门,绝对的素食主义者;", + "身份璃月月海亭秘书,原神“璃月三c”“又甘又刻”成员之一;", + "人送外号椰羊,王小美,咕噜下山真君/噎羊" + ] + }, + "魈": { + "weapon": { + "5": [ + "护摩之杖", + "和璞鸢", + "贯虹之槊", + "息灾", + "天空之脊" + ], + "4": [ + "决斗之枪", + "黑岩长枪", + "千岩长枪" + ], + "3": [ + "白缨枪" + ] + }, + "artifact": [ + [ + "辰砂往生录" + ], + [ + "翠绿之影", + "攻18" + ], + [ + "沙上楼阁史话" + ] + ], + "remark": [ + "相比原2+2提升10%左右;装备贯虹需要绑定盾辅", + "又名金鹏,号「金鹏翅王」,人称「降魔大圣」,「护法仙众夜叉 」成员之一,原神“璃月三c”成员之一,钟离的友人暨下属,喜食杏仁豆腐;", + "人送外号魈上仙,提瓦特打桩机,抬头不见低头见真君(大误)" + ] + }, + "胡桃": { + "weapon": { + "5": [ + "护摩之杖", + "和璞鸢", + "贯虹之槊" + ], + "4": [ + "匣里灭辰", + "决斗之枪", + "黑岩长枪" + ], + "3": [ + "白缨枪" + ] + }, + "artifact": [ + [ + "炽烈的炎之魔女" + ], + [ + "追忆之注连" + ] + ], + "remark": [ + "原神“璃月三c”成员之一,自诩为“小巷派暗黑打油诗人”", + "身份「往生堂」第七十七代堂主,行秋为其诗友/挂件,也是钟离的二号钱包(误),", + "人送外号胡堂主;", + "提瓦特火c蒸发反应伤害记录保持者" + ] + }, + "罗莎莉亚": { + "weapon": { + "5": [ + "和璞鸢", + "护摩之杖" + ], + "4": [ + "西风长枪", + "决斗之枪", + "龙脊长枪" + ], + "3": [] + }, + "artifact": [ + [ + "昔日宗室之仪" + ] + ], + "remark": [ + "蒙德西风教会的一名修女,特立独行之人;\n又名修女,白色史莱姆(误)" + ] + }, + "烟绯": { + "weapon": { + "5": [ + "天空之卷", + "四风原典", + "尘世之锁" + ], + "4": [ + "流浪乐章", + "匣里日月", + "黑岩绯玉", + "嘟嘟可故事集", + "万国诸海图谱" + ], + "3": [] + }, + "artifact": [ + [ + "炽烈的炎之魔女" + ], + [ + "流浪大地的乐团" + ] + ], + "remark": [ + "半仙血统的律法咨询师;\n人送外号璃月法考创始人/罗翔璃月港分翔(误),葱娘" + ] + }, + "优菈": { + "weapon": { + "5": [ + "松籁响起之时", + "无工之剑", + "狼的末路", + "天空之傲" + ], + "4": [ + "螭骨剑", + "雪葬的星银", + "恶王丸" + ], + "3": [] + }, + "artifact": [ + [ + "苍白之火" + ], + [ + "苍白之火", + "染血的骑士" + ], + [ + "苍白之火", + "攻18" + ], + [ + "角斗士的终幕礼" + ] + ], + "remark": [ + "劳伦斯家族末裔,西风骑士团「游击小队」队长,又名「浪花骑士」;\n必胜客联动看板角色之一,柏菈图的拼图之一(误);\n又名小本记仇真君" + ] + }, + "枫原万叶": { + "weapon": { + "5": [ + "苍古自由之誓" + ], + "4": [ + "西福斯的月光", + "铁蜂刺", + "祭礼剑", + "西风剑" + ], + "3": [] + }, + "artifact": [ + [ + "翠绿之影" + ] + ], + "remark": [ + "稻妻出身的浪人武士,现为「南十字」船队成员;\n人送外号叶天帝,稻妻飞行冠军,精神璃月人(误)" + ] + }, + "旅行者雷": { + "weapon": { + "5": [ + "天空之刃" + ], + "4": [ + "西风剑", + "祭礼剑" + ], + "3": [ + "飞天御剑" + ] + }, + "artifact": [ + [ + "绝缘之旗印", + "昔日宗室之仪" + ] + ], + "remark": [ + "圣遗物选择上,充能词条比套装效果重要;", + "对初始角色空和荧两兄妹的统称。根据玩家选择,自机一方将踏上寻找血亲之路,另一方将隶属于深渊教团。\n身份:外来的异乡人,眼狩令上的,臭保底人(误),大黄金钓鱼手,小家伙,金毛人/黄毛阿姨(误),等等;\n绰号很多,在国内空常称为龙哥,荧常称为爷" + ] + }, + "神里绫华": { + "weapon": { + "5": [ + "雾切之回光", + "斫峰之刃", + "磐岩结绿", + "天空之刃" + ], + "4": [ + "天目影打刀", + "黑剑", + "黑岩长剑" + ], + "3": [ + "黎明神剑" + ] + }, + "artifact": [ + [ + "冰风迷途的勇士" + ], + [ + "冰风迷途的勇士", + "昔日宗室之仪" + ] + ], + "remark": [ + "社奉行神里家大小姐,又名白鹭公主,大型连续剧《等神里》主人公(误);\n人送外号大家gui秀(误)" + ] + }, + "宵宫": { + "weapon": { + "5": [ + "飞雷之弦振", + "阿莫斯之弓", + "天空之翼" + ], + "4": [ + "弓藏", + "破魔之弓", + "苍翠猎弓", + "黑岩战弓" + ], + "3": [ + "弹弓", + "神射手之誓" + ] + }, + "artifact": [ + [ + "追忆之注连" + ], + [ + "炽烈的炎之魔女" + ], + [ + "炽烈的炎之魔女", + "攻18" + ] + ], + "remark": [ + "长野原烟花店现任店主,孩子王,与可莉并称提瓦特军火二人组(大误);", + "人送外号加特凛(误)" + ] + }, + "早柚": { + "weapon": { + "5": [ + "狼的末路", + "天空之傲" + ], + "4": [ + "桂木斩长正", + "玛海菈的水色", + "祭礼大剑", + "西风大剑", + "雨裁" + ], + "3": [ + "沐浴龙血的剑" + ] + }, + "artifact": [ + [ + "翠绿之影" + ], + [ + "翠绿之影", + "被怜爱的少女" + ], + [ + "被怜爱的少女" + ] + ], + "remark": [ + "「终末番」的小小忍者,据说趁其不注意摸摸头会被跳起来打膝盖;\n人送外号柚岩龙蜥,泥头车,小狸猫" + ] + }, + "埃洛伊": { + "weapon": { + "5": [ + "飞雷之弦振", + "天空之翼", + "阿莫斯之弓" + ], + "4": [ + "掠食者", + "弓藏", + "破魔之弓", + "黑岩战弓" + ], + "3": [] + }, + "artifact": [ + [ + "冰风迷途的勇士" + ], + [ + "冰风迷途的勇士", + "昔日宗室之仪/流浪大地的乐团" + ], + [ + "追忆之注连" + ] + ], + "remark": [ + "索尼《地平线》系列游戏联动角色,\n迄今唯一一个红色背景的五星角色", + "通常情况下,埃洛伊的大世界资源采集意义大于深渊实战意义,建议根据实际需求选择投入资源培养" + ] + }, + "雷电将军": { + "weapon": { + "5": [ + "薙草之稻光", + "天空之脊", + "和璞鸢", + "护摩之杖" + ], + "4": [ + "断浪长鳍", + "「渔获」", + "决斗之枪", + "西风长枪" + ], + "3": [] + }, + "artifact": [ + [ + "绝缘之旗印" + ], + [ + "千岩牢固" + ] + ], + "remark": [ + "此身,代表巴尔泽布,尘世七执政成员之一,现任雷神;\n身世复杂,可公开身份「御建鸣神主尊大御所大人」;\n似乎对甜食感兴趣;\n常称呼为雷神,人送外号煮饭婆,雷军(误),土妹子" + ] + }, + "九条裟罗": { + "weapon": { + "5": [ + "终末嗟叹之诗608", + "天空之翼674" + ], + "4": [ + "祭礼弓565", + "绝弦510", + "暗巷猎手565", + "黑岩战弓565" + ], + "3": [] + }, + "artifact": [ + [ + "绝缘之旗印" + ], + [ + "昔日宗室之仪" + ], + [ + "昔日宗室之仪", + "如雷的盛怒" + ] + ], + "remark": [ + "隶属于天领奉行九条家,为鸦天狗一族,雷电将军单推人", + "武器后数字为最高等级下的基础攻击力数值(后称“白字”),主流情况下,综合选择高白字的辅助特效武器,搭配宗室4件(与班尼特组队时任选其中一人佩戴)以提供大量攻击力加成" + ] + }, + "珊瑚宫心海": { + "weapon": { + "5": [ + "不灭月华" + ], + "4": [ + "试作金珀", + "证誓之明瞳", + "白辰之环" + ], + "3": [ + "讨龙英杰谭" + ] + }, + "artifact": [ + [ + "海染砗蟝" + ], + [ + "千岩牢固", + "被怜爱的少女" + ], + [ + "千岩牢固" + ] + ], + "remark": [ + "仅在心海输出队伍推荐不灭月华", + "永冻队辅助首选", + "海祇岛「现人神巫女」暨军师;\n又名观赏鱼(误),千花书记(误)" + ] + }, + "托马": { + "weapon": { + "5": [ + "护摩之杖", + "薙草之稻光", + "天空之脊" + ], + "4": [ + "西风长枪", + "喜多院十文字" + ], + "3": [ + "黑缨枪" + ] + }, + "artifact": [ + [ + "昔日宗室之仪" + ], + [ + "千岩牢固", + "绝缘之旗印" + ] + ], + "remark": [ + "出身蒙德,现为社奉行神里家家政官,稻妻地头蛇;\n人送外号驻日美军/德军,狗托(误)" + ] + }, + "荒泷一斗": { + "weapon": { + "5": [ + "赤角石溃杵", + "无工之剑" + ], + "4": [ + "白影剑", + "螭骨剑" + ], + "3": [ + "白铁大剑" + ] + }, + "artifact": [ + [ + "华馆梦醒形骸记" + ] + ], + "remark": [ + "对豆类过敏的鬼族男儿,荒泷派创始人,希娜小姐头榜大哥;\n又名斗子哥,放牛的,进狱系男孩,岩丘丘萨满(误)" + ] + }, + "五郎": { + "weapon": { + "5": [ + "终末嗟叹之诗" + ], + "4": [ + "祭礼弓", + "西风猎弓" + ], + "3": [] + }, + "artifact": [ + [ + "华馆梦醒形骸记" + ], + [ + "绝缘之旗印", + "充能/防御散件" + ] + ], + "remark": [ + "既是海祇军大将,又是八重堂特邀编辑,希娜小姐的设计原形/中之人(误);", + "又名柴犬" + ] + }, + "申鹤": { + "weapon": { + "5": [ + "息灾741(16.5%)", + "贯虹之槊608(49.6%)", + "天空之脊674(-)", + "和璞鸢608(-)" + ], + "4": [ + "千岩长枪565(27.6%)", + "断浪长鳍620(13.8%)", + "西风长枪565(-)" + ], + "3": [] + }, + "artifact": [ + [ + "昔日宗室之仪" + ], + [ + "角斗士的终幕礼/辰砂往生录", + "追忆之注连/来歆余响" + ] + ], + "remark": [ + "常年住在仙家洞天,由留云借风真君收留的人类,对诸多俗世有着奇妙的理解;", + "甘雨的同门,重云的小姨妈(误)", + "武器后数字为最高等级下的基础攻击力数值,括号内数值表示武器副属性的攻击力加成比例;主流情况下,优选高额攻击加成武器,搭配攻击2件加成的不同套装组成2+2,力求达到高额攻击面板以提供大量冰伤加成;" + ] + }, + "云堇": { + "weapon": { + "5": [ + "天空之脊" + ], + "4": [ + "西风长枪", + "喜多院十文字", + "试作星镰" + ], + "3": [] + }, + "artifact": [ + [ + "华馆梦醒形骸记" + ], + [ + "华馆梦醒形骸记", + "绝缘之旗印" + ] + ], + "remark": [ + "璃月云翰社当家少女,懂得创作的年轻名角;\n人送外号自走三彩团子(误)" + ] + }, + "八重神子": { + "weapon": { + "5": [ + "神乐之真意", + "千夜浮梦", + "天空之卷", + "尘世之锁", + "四风原典" + ], + "4": [ + "流浪乐章", + "匣里日月", + "证誓之明瞳" + ], + "3": [] + }, + "artifact": [ + [ + "如雷的盛怒", + "攻18" + ], + [ + "如雷的盛怒", + "流浪大地的乐团" + ], + [ + "流浪大地的乐团", + "攻18" + ], + [ + "平息鸣雷的尊者" + ], + [ + "饰金之梦" + ] + ], + "remark": [ + "身世复杂,可公开身份为鸣神大社宫司和八重堂编辑;", + "人送外号屑狐狸,雷丘丘萨满,尘歌狐(误)" + ] + }, + "神里绫人": { + "weapon": { + "5": [ + "波乱月白经津", + "雾切之回光", + "磐岩结绿" + ], + "4": [ + "黑剑", + "天目影打刀", + "黑岩长剑" + ], + "3": [ + "黎明神剑" + ] + }, + "artifact": [ + [ + "来歆余响" + ], + [ + "沉沦之心" + ], + [ + "角斗士的终幕礼" + ] + ], + "remark": [ + "社奉行神里家现任家主;", + "人送外号0人,大舅子,主教大人(考哥),饮茶哥(误)" + ] + } +} diff --git a/GenshinUID/genshinuid_adv/get_adv.py b/GenshinUID/genshinuid_adv/get_adv.py new file mode 100644 index 00000000..e62b5054 --- /dev/null +++ b/GenshinUID/genshinuid_adv/get_adv.py @@ -0,0 +1,75 @@ +import json +from pathlib import Path + +with open( + Path(__file__).parent / 'char_adv_list.json', "r", encoding='UTF-8' +) as f: + adv_lst = json.load(f) + + +async def weapon_adv(name): + weapons = {} + artifacts = {} + for char, info in adv_lst.items(): + char_weapons = [] + char_artifacts = [] + + for i in info['weapon'].values(): # 3 stars, 4 stars, 5 stars + char_weapons.extend(i) + for i in info['artifact']: + char_artifacts.extend(i) + # char_artifacts = list(set(char_artifacts)) + + for weapon_name in char_weapons: + if name in weapon_name: # fuzzy search + char_weapon = weapons.get(weapon_name, []) + char_weapon.append(char) + weapons[weapon_name] = char_weapon + for artifact_name in char_artifacts: + if name in artifact_name: # fuzzy search + char_artifact = artifacts.get(artifact_name, []) + char_artifact.append(char) + char_artifact = list(set(char_artifact)) + artifacts[artifact_name] = char_artifact + + im = [] + if weapons: + im.append('✨武器:') + for k, v in weapons.items(): + im.append(f'{"、".join(v)} 可能会用到【{k}】') + if artifacts: + im.append('✨圣遗物:') + for k, v in artifacts.items(): + im.append(f'{"、".join(v)} 可能会用到【{k}】') + if im == []: + im = '没有角色能使用【{}】'.format(name) + else: + im = '\n'.join(im) + return im + + +async def char_adv(name): + for char, info in adv_lst.items(): + if name in char: + im = [f'「{char}」', '-=-=-=-=-=-=-=-=-=-'] + if weapon_5 := info['weapon']['5']: + im.append(f'推荐5★武器:{"、".join(weapon_5)}') + if weapon_4 := info['weapon']['4']: + im.append(f'推荐4★武器:{"、".join(weapon_4)}') + if weapon_3 := info['weapon']['3']: + im.append(f'推荐3★武器:{"、".join(weapon_3)}') + if artifacts := info['artifact']: + im.append('推荐圣遗物搭配:') + for arti in artifacts: + if len(arti) > 1: + im.append(f'[{arti[0]}]两件套 + [{arti[1]}]两件套') + else: + im.append(f'[{arti[0]}]四件套') + if remark := info['remark']: + im.append('-=-=-=-=-=-=-=-=-=-') + im.append('备注:') + mark = "\n".join(remark) + im.append(f'{mark}') + return '\n'.join(im) + + return '没有找到角色信息' diff --git a/GenshinUID/genshinuid_ann/__init__.py b/GenshinUID/genshinuid_ann/__init__.py new file mode 100644 index 00000000..6264c5de --- /dev/null +++ b/GenshinUID/genshinuid_ann/__init__.py @@ -0,0 +1,109 @@ +import random +import asyncio + +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.gss import gss +from gsuid_core.models import Event +from gsuid_core.aps import scheduler +from gsuid_core.logger import logger + +from .util import black_ids +from ..utils.convert import get_uid +from .main import ann, consume_remind +from ..utils.error_reply import UID_HINT +from ..utils.image.convert import convert_img +from ..genshinuid_config.gs_config import gsconfig +from .ann_card import sub_ann, unsub_ann, ann_list_card, ann_detail_card + + +@SV('原神公告').on_command(('原神公告')) +async def ann_(bot: Bot, ev: Event): + ann_id = ev.text + if not ann_id: + img = await ann_list_card() + img = await convert_img(img) + return await bot.send(img) + + if not ann_id.isdigit(): + raise Exception('公告ID不正确') + + img = await ann_detail_card(int(ann_id)) + img = await convert_img(img) + await bot.send(img) + + +@SV('原神公告订阅', pm=2).on_fullmatch('订阅原神公告') +async def sub_ann_(bot: Bot, ev: Event): + if ev.group_id is None: + return await bot.send('请在群聊中订阅') + await bot.send(sub_ann(bot.bot_id, ev.group_id)) + + +@SV('原神公告订阅', pm=2).on_fullmatch(('取消订阅原神公告', '取消原神公告', '退订原神公告')) +async def unsub_ann_(bot: Bot, ev: Event): + if ev.group_id is None: + return await bot.send('请在群聊中取消订阅') + await bot.send(unsub_ann(bot.bot_id, ev.group_id)) + + +@SV('原神公告红点').on_fullmatch('取消原神公告红点') +async def consume_remind_(bot: Bot, ev: Event): + uid = await get_uid(bot, ev) + if uid is None: + return await bot.send(UID_HINT) + else: + await bot.send(await consume_remind(uid)) + + +@scheduler.scheduled_job('cron', minute=10) +async def check_ann(): + await check_ann_state() + + +async def check_ann_state(): + logger.info('[原神公告] 定时任务: 原神公告查询..') + ids = gsconfig.get_config('Ann_Ids').data + sub_list = gsconfig.get_config('Ann_Groups').data + + if not sub_list: + logger.info('没有群订阅, 取消获取数据') + return + + if not ids: + ids = await ann().get_ann_ids() + if not ids: + raise Exception('获取原神公告ID列表错误,请检查接口') + gsconfig.set_config('Ann_Ids', ids) + logger.info('初始成功, 将在下个轮询中更新.') + return + + new_ids = await ann().get_ann_ids() + new_ann = set(ids) ^ set(new_ids) + + if not new_ann: + logger.info('[原神公告] 没有最新公告') + return + + for ann_id in new_ann: + if ann_id in black_ids: + continue + try: + img = await ann_detail_card(ann_id) + img = await convert_img(img) + for bot_id in sub_list: + try: + if bot_id in gss.active_bot: + bot = gss.active_bot[bot_id] + else: + continue + for group_id in sub_list[bot_id]: + await bot.target_send(img, 'group', group_id) + await asyncio.sleep(random.uniform(1, 3)) + except Exception as e: + logger.exception(e) + except Exception as e: + logger.exception(str(e)) + + logger.info('[原神公告] 推送完毕, 更新数据库') + gsconfig.set_config('Ann_Ids', new_ids) diff --git a/GenshinUID/genshinuid_ann/ann_card.py b/GenshinUID/genshinuid_ann/ann_card.py new file mode 100644 index 00000000..b3634266 --- /dev/null +++ b/GenshinUID/genshinuid_ann/ann_card.py @@ -0,0 +1,220 @@ +import re +from pathlib import Path + +from bs4 import BeautifulSoup +from PIL import Image, ImageOps, ImageDraw + +from .main import ann +from .util import filter_list +from ..utils.image.convert import convert_img +from ..genshinuid_config.gs_config import gsconfig +from ..utils.fonts.genshin_fonts import gs_font_18, gs_font_26 +from ..utils.image.image_tools import ( + get_pic, + easy_paste, + draw_text_by_line, + easy_alpha_composite, +) + +assets_dir = Path(__file__).parent / 'assets' + +list_head = Image.open(assets_dir / 'list.png') +list_item = ( + Image.open(assets_dir / 'item.png').resize((384, 96)).convert('RGBA') +) + + +async def ann_list_card() -> bytes: + ann_list = await ann().get_ann_list() + if not ann_list: + raise Exception('获取游戏公告失败,请检查接口是否正常') + + height_len = max(len(ann_list[0]['list']), len(ann_list[1]['list'])) + + bg = Image.new( + 'RGBA', + ( + list_head.width, + list_head.height + list_item.height * height_len + 20 + 30, + ), + '#f9f6f2', + ) + easy_paste(bg, list_head, (0, 0)) + + for data in ann_list: + x = 45 + if data['type_id'] == 1: + x = 472 + + for index, ann_info in enumerate(data['list']): + new_item = list_item.copy() + subtitle = ann_info['subtitle'] + draw_text_by_line( + new_item, + (0, 30 - (len(subtitle) > 10 and 10 or 0)), + subtitle, + gs_font_26, + '#3b4354', + 250, + True, + ) + + draw_text_by_line( + new_item, + (new_item.width - 80, 10), + str(ann_info['ann_id']), + gs_font_18, + '#3b4354', + 100, + ) + + bg = easy_alpha_composite( + bg, new_item, (x, list_head.height + (index * new_item.height)) + ) + + tip = '*可以使用 原神公告#0000(右上角ID) 来查看详细内容, 例子: 原神公告#2434' + draw_text_by_line( + bg, (0, bg.height - 35), tip, gs_font_18, '#767779', 1000, True + ) + + return await convert_img(bg) + + +async def ann_detail_card(ann_id): + ann_list = await ann().get_ann_content() + if not ann_list: + raise Exception('获取游戏公告失败,请检查接口是否正常') + content = filter_list(ann_list, lambda x: x['ann_id'] == ann_id) + if not content: + raise Exception('没有找到对应的公告ID :%s' % ann_id) + soup = BeautifulSoup(content[0]['content'], 'lxml') + banner = content[0]['banner'] + ann_img = banner if banner else '' + for a in soup.find_all('a'): + a.string = '' + + for img in soup.find_all('img'): + img.string = img.get('src') + + msg_list = [ann_img] + msg_list += [ + BeautifulSoup(x.get_text('').replace('<<', ''), 'lxml').get_text() + + '\n' + for x in soup.find_all('p') + ] + + drow_height = 0 + for msg in msg_list: + if msg.strip().endswith(('jpg', 'png')): + _msg = re.search(r'(https://.*[png|jpg])', msg) + if _msg: + msg = _msg.group(0) + img = await get_pic(msg.strip()) + img_height = img.size[1] + if img.width > 1080: + img_height = int(img.height * 0.6) + drow_height += img_height + 40 + else: + ( + x_drow_duanluo, + x_drow_note_height, + x_drow_line_height, + x_drow_height, + ) = split_text(msg) + drow_height += x_drow_height + + im = Image.new('RGB', (1080, drow_height), '#f9f6f2') + draw = ImageDraw.Draw(im) + # 左上角开始 + x, y = 0, 0 + for msg in msg_list: + if msg.strip().endswith(('jpg', 'png')): + _msg = re.search(r'(https://.*[png|jpg])', msg) + if _msg: + msg = _msg.group(0) + img = await get_pic(msg.strip()) + if img.width > im.width: + img = img.resize((int(img.width * 0.6), int(img.height * 0.6))) + easy_paste(im, img, (0, y)) + y += img.size[1] + 40 + else: + ( + drow_duanluo, + drow_note_height, + drow_line_height, + drow_height, + ) = split_text(msg) + for duanluo, line_count in drow_duanluo: + draw.text((x, y), duanluo, fill=(0, 0, 0), font=gs_font_26) + y += drow_line_height * line_count + + _x, _y = gs_font_26.getsize('囗') + padding = (_x, _y, _x, _y) + im = ImageOps.expand(im, padding, '#f9f6f2') + + return await convert_img(im) + + +def split_text(content: str): + # 按规定宽度分组 + max_line_height, total_lines = 0, 0 + allText = [] + for text in content.split('\n'): + duanluo, line_height, line_count = get_duanluo(text) + max_line_height = max(line_height, max_line_height) + total_lines += line_count + allText.append((duanluo, line_count)) + line_height = max_line_height + total_height = total_lines * line_height + drow_height = total_lines * line_height + return allText, total_height, line_height, drow_height + + +def get_duanluo(text: str): + txt = Image.new('RGBA', (600, 800), (255, 255, 255, 0)) + draw = ImageDraw.Draw(txt) + # 所有文字的段落 + duanluo = '' + max_width = 1080 + # 宽度总和 + sum_width = 0 + # 几行 + line_count = 1 + # 行高 + line_height = 0 + for char in text: + width, height = draw.textsize(char, gs_font_26) + sum_width += width + if sum_width > max_width: # 超过预设宽度就修改段落 以及当前行数 + line_count += 1 + sum_width = 0 + duanluo += '\n' + duanluo += char + line_height = max(height, line_height) + if not duanluo.endswith('\n'): + duanluo += '\n' + return duanluo, line_height, line_count + + +def sub_ann(bot_id: str, group: str): + groups = gsconfig.get_config('Ann_Groups').data + if bot_id not in groups: + groups[bot_id] = [] + if group in groups[bot_id]: + return '已经订阅了' + else: + groups[bot_id].append(group) + gsconfig.set_config('Ann_Groups', groups) + return '成功订阅原神公告' + + +def unsub_ann(bot_id: str, group: str): + groups = gsconfig.get_config('Ann_Groups').data + if bot_id not in groups: + groups[bot_id] = [] + if group in groups[bot_id]: + groups[bot_id].remove(group) + gsconfig.set_config('Ann_Groups', groups) + return '成功取消订阅原神公告' + else: + return '已经不在订阅中了' diff --git a/GenshinUID/genshinuid_ann/assets/item.png b/GenshinUID/genshinuid_ann/assets/item.png new file mode 100644 index 00000000..116ed6e7 Binary files /dev/null and b/GenshinUID/genshinuid_ann/assets/item.png differ diff --git a/GenshinUID/genshinuid_ann/assets/list.png b/GenshinUID/genshinuid_ann/assets/list.png new file mode 100644 index 00000000..6ac7c292 Binary files /dev/null and b/GenshinUID/genshinuid_ann/assets/list.png differ diff --git a/GenshinUID/genshinuid_ann/main.py b/GenshinUID/genshinuid_ann/main.py new file mode 100644 index 00000000..1d8b5697 --- /dev/null +++ b/GenshinUID/genshinuid_ann/main.py @@ -0,0 +1,120 @@ +import httpx + +from .util import _Dict, black_ids, filter_list, cache_request_json + +# https://webstatic.mihoyo.com/hk4e/announcement/index.html?auth_appid=announcement&authkey_ver=1&bundle_id=hk4e_cn&channel_id=1&game=hk4e&game_biz=hk4e_cn&lang=zh-cn&level=57&platform=pc®ion=cn_gf01&sdk_presentation_style=fullscreen&sdk_screen_transparent=true&sign_type=2&uid=105293904#/ +api_url = 'https://hk4e-api-static.mihoyo.com/common/hk4e_cn/announcement/api/' +api_params = ( + '?game=hk4e' + '&game_biz=hk4e_cn' + '&lang=zh-cn' + '&bundle_id=hk4e_cn' + '&level=57' + '&platform={platform}' + '®ion={region}' + '&uid={uid}' +) +ann_content_url = f'{api_url}getAnnContent{api_params}' +ann_list_url = f'{api_url}getAnnList{api_params}' + + +class ann: + ann_list_data = [] + ann_content_data = [] + today = 0 + + def __init__(self, platform='pc', uid='114514', region='cn_gf01'): + # self.today = datetime.datetime.fromtimestamp( + # time.mktime(datetime.date.today().timetuple())) + self.platform = platform + self.uid = uid + self.region = region + + async def get_ann_content(self): + url = ann_content_url.format( + platform=self.platform, uid=self.uid, region=self.region + ) + res = await cache_request_json(url=url) + if res.retcode == 0: + self.ann_content_data = res.data.list + return self.ann_content_data + + async def get_ann_list(self): + url = ann_list_url.format( + platform=self.platform, uid=self.uid, region=self.region + ) + res = await cache_request_json(url=url) + if res.retcode == 0: + result = [] + for data in res.data.list: + data_list = [ + x for x in data['list'] if not x['ann_id'] in black_ids + ] + data['list'] = data_list + result.append(data) + + self.ann_list_data = result + return self.ann_list_data + + async def get_ann_ids(self): + await self.get_ann_list() + if not self.ann_list_data: + return [] + ids = [] + for label in self.ann_list_data: + ids += [x['ann_id'] for x in label['list']] + return ids + + +async def get_consume_remind_ann_ids(region, platform, uid): + ann_list = await ann( + platform=platform, uid=uid, region=region + ).get_ann_list() + ids = [] + for label in ann_list: + ids += filter_list(label.list, lambda x: x.remind == 1) + return [x.ann_id for x in ids] + + +async def consume_remind(uid): + region = 'cn_gf01' + if uid[0] == "5": + region = 'cn_qd01' + platform = ['pc'] + ids = [] + for p in platform: + ids += await get_consume_remind_ann_ids(region, p, uid) + + ids = set(ids) + msg = f'取消公告红点完毕! 一共取消了{len(ids)}个' + + async with httpx.AsyncClient( + base_url="https://hk4e-api.mihoyo.com/common/hk4e_cn/announcement/api" + ) as client: + for ann_id in ids: + for p in platform: + res = await client.get( + "/consumeRemind", + timeout=10, + params={ + 'ann_id': ann_id, + 'auth_appid': 'announcement', + 'authkey_ver': '1', + 'bundle_id': 'hk4e_cn', + 'channel_id': '1', + 'game': 'hk4e', + 'game_biz': 'hk4e_cn', + 'lang': 'zh-cn', + 'level': '57', + 'platform': p, + 'region': region, + 'sdk_presentation_style': 'fullscreen', + 'sdk_screen_transparent': 'true', + 'sign_type': '2', + 'uid': uid, + }, + ) + res = res.json(object_hook=_Dict) + if res.retcode != 0: + msg += '\n %s 失败,原因:%s' % (ann_id, res.message) + return msg diff --git a/GenshinUID/genshinuid_ann/util.py b/GenshinUID/genshinuid_ann/util.py new file mode 100644 index 00000000..cb1156d2 --- /dev/null +++ b/GenshinUID/genshinuid_ann/util.py @@ -0,0 +1,65 @@ +# -*- coding: UTF-8 -*- +import inspect +import datetime +import functools +from typing import Dict, Optional, TypedDict + +import httpx + + +class _Dict(dict): + __setattr__ = dict.__setitem__ # type: ignore + __getattr__ = dict.__getitem__ + + +class _CacheData(TypedDict): + time: Optional[datetime.datetime] + value: Optional[int] + + +def filter_list(plist, func): + return list(filter(func, plist)) + + +def cache(ttl=datetime.timedelta(hours=1), **kwargs): + def wrap(func): + cache_data: Dict[str, _CacheData] = {} + + @functools.wraps(func) + async def wrapped(*args, **kw): + nonlocal cache_data + bound = inspect.signature(func).bind(*args, **kw) + bound.apply_defaults() + ins_key = '|'.join( + ['%s_%s' % (k, v) for k, v in bound.arguments.items()] + ) + default_data: _CacheData = { + 'time': None, + 'value': None, + } + data = cache_data.get(ins_key, default_data) + + now = datetime.datetime.now() + if not data['time'] or now - data['time'] > ttl: + try: + data['value'] = await func(*args, **kw) + data['time'] = now + cache_data[ins_key] = data + except Exception as e: + raise e + + return data['value'] + + return wrapped + + return wrap + + +@cache(ttl=datetime.timedelta(minutes=30), arg_key='url') +async def cache_request_json(url): + async with httpx.AsyncClient() as client: + res = await client.get(url, timeout=10) + return res.json(object_hook=_Dict) + + +black_ids = [762, 422, 423, 1263, 495, 1957, 2522, 2388, 2516, 2476] diff --git a/GenshinUID/genshinuid_check/__init__.py b/GenshinUID/genshinuid_check/__init__.py new file mode 100644 index 00000000..36d0f40f --- /dev/null +++ b/GenshinUID/genshinuid_check/__init__.py @@ -0,0 +1,119 @@ +import random +import asyncio +from typing import List + +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event +from gsuid_core.aps import scheduler + +from ..utils.mys_api import mys_api +from .backup_data import data_backup +from ..utils.database import active_sqla +from ..gsuid_utils.database.models import GsUser + + +@scheduler.scheduled_job('cron', hour=0) +async def daily_refresh_charData(): + await data_backup() + + +@SV('数据管理', pm=2).on_fullmatch(('gs清除缓存')) +async def send_backup_msg(bot: Bot): + await data_backup() + await bot.send('操作成功完成!') + + +@SV('数据管理', pm=2).on_fullmatch(('校验全部Cookies')) +async def send_check_cookie(bot: Bot, ev: Event): + user_list = await active_sqla[bot.bot_id].get_all_user() + invalid_user: List[GsUser] = [] + for user in user_list: + if user.cookie and user.mys_id: + mys_data = await mys_api.get_mihoyo_bbs_info( + user.mys_id, + user.cookie, + True if int(user.uid[0]) > 5 else False, + ) + if isinstance(mys_data, int): + await active_sqla[bot.bot_id].delete_user_data(user.uid) + invalid_user.append(user) + continue + for i in mys_data: + if i['game_id'] != 2: + mys_data.remove(i) + if len(user_list) > 4: + im = f'正常Cookies数量: {len(user_list) - len(invalid_user)}' + invalid = '\n'.join( + [ + f'uid{user.uid}的Cookies是异常的!已删除该条Cookies!\n' + for user in invalid_user + ] + ) + return_str = f'{im}\n{invalid if invalid else "无失效Cookie!"}' + else: + return_str = '\n'.join( + [ + f'uid{user.uid}/mys{user.mys_id}的Cookies是正常的!' + if user not in invalid_user + else f'uid{user.uid}的Cookies是异常的!已删除该条Cookies!' + for user in user_list + ] + ) + + await bot.send(return_str) + + for i in invalid_user: + await bot.target_send( + f'您绑定的Cookies(uid{i.uid})已失效,以下功能将会受到影响:\n' + '查看完整信息列表\n查看深渊配队\n自动签到/当前状态/每月统计\n' + '请及时重新绑定Cookies并重新开关相应功能。', + 'direct', + target_id=i.user_id, + ) + await asyncio.sleep(3 + random.randint(1, 3)) + + +@SV('数据管理', pm=2).on_fullmatch(('校验全部Stoken')) +async def send_check_stoken(bot: Bot, ev: Event): + user_list = await active_sqla[bot.bot_id].get_all_user() + invalid_user: List[GsUser] = [] + for user in user_list: + if user.stoken and user.mys_id: + mys_data = await mys_api.get_cookie_token_by_stoken( + user.stoken, + user.mys_id, + ) + if isinstance(mys_data, int): + await active_sqla[bot.bot_id].update_user_stoken( + user.uid, None + ) + invalid_user.append(user) + continue + if len(user_list) > 4: + im = f'正常Stoken数量: {len(user_list) - len(invalid_user)}' + invalid = '\n'.join( + [f'uid{user.uid}的Stoken是异常的!已清除Stoken!\n' for user in invalid_user] + ) + return_str = f'{im}\n{invalid if invalid else "无失效Stoken!"}' + else: + return_str = '\n'.join( + [ + f'uid{user.uid}/mys{user.mys_id}的Stoken是正常的!' + if user not in invalid_user + else f'uid{user.uid}的Stoken是异常的!已清除Stoken!' + for user in user_list + ] + ) + + await bot.send(return_str) + + for i in invalid_user: + await bot.target_send( + f'您绑定的Stoken(uid{i.uid})已失效,以下功能将会受到影响:\n' + 'gs开启自动米游币,开始获取米游币。\n' + '重新添加后需要重新开启自动米游币。', + 'direct', + target_id=i.user_id, + ) + await asyncio.sleep(3 + random.randint(1, 3)) diff --git a/GenshinUID/genshinuid_check/backup_data.py b/GenshinUID/genshinuid_check/backup_data.py new file mode 100644 index 00000000..ff70a06f --- /dev/null +++ b/GenshinUID/genshinuid_check/backup_data.py @@ -0,0 +1,31 @@ +import os +import datetime +from shutil import copyfile + +from nonebot.log import logger + +from ..utils.database import active_sqla +from ..utils.resource.RESOURCE_PATH import TEMP_PATH + + +async def data_backup(): + try: + today = datetime.date.today() + endday = today - datetime.timedelta(days=5) + date_format = today.strftime("%Y_%d_%b") + endday_format = endday.strftime("%Y_%d_%b") + copyfile('ID_DATA.db', f'ID_DATA_BAK_{date_format}.db') + if os.path.exists(f'ID_DATA_BAK_{endday_format}.db'): + os.remove(f'ID_DATA_BAK_{endday_format}.db') + logger.info(f'————已删除数据库备份{endday_format}————') + logger.info('————数据库成功备份————') + for f in TEMP_PATH.glob('*.jpg'): + try: + f.unlink() + except OSError as e: + print("Error: %s : %s" % (f, e.strerror)) + for bot_id in active_sqla: + await active_sqla[bot_id].delete_cache() + logger.info('————缓存成功清除————') + except Exception: + logger.info('————数据库备份失败————') diff --git a/GenshinUID/genshinuid_collection/__init__.py b/GenshinUID/genshinuid_collection/__init__.py new file mode 100644 index 00000000..929cac18 --- /dev/null +++ b/GenshinUID/genshinuid_collection/__init__.py @@ -0,0 +1,37 @@ +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event + +from ..utils.convert import get_uid +from ..utils.error_reply import UID_HINT +from .draw_collection_card import draw_explora_img, draw_collection_img + + +@SV('查询数据').on_command(('查询收集', 'sj')) +async def send_collection_info(bot: Bot, ev: Event): + await bot.logger.info('开始执行[查询收集信息]') + user_id = ev.at if ev.at else ev.user_id + + # 获取uid + uid = await get_uid(bot, ev) + if uid is None: + return await bot.send(UID_HINT) + await bot.logger.info('[查询角色面板]uid: {}'.format(uid)) + + im = await draw_collection_img(user_id, uid) + await bot.send(im) + + +@SV('查询数据').on_command(('查询探索', 'ts')) +async def send_explora_info(bot: Bot, ev: Event): + await bot.logger.info('开始执行[查询探索信息]') + user_id = ev.at if ev.at else ev.user_id + + # 获取uid + uid = await get_uid(bot, ev) + if uid is None: + return await bot.send(UID_HINT) + await bot.logger.info('[查询角色面板]uid: {}'.format(uid)) + + im = await draw_explora_img(user_id, uid) + await bot.send(im) diff --git a/GenshinUID/genshinuid_collection/draw_collection_card.py b/GenshinUID/genshinuid_collection/draw_collection_card.py new file mode 100644 index 00000000..c1d530a7 --- /dev/null +++ b/GenshinUID/genshinuid_collection/draw_collection_card.py @@ -0,0 +1,210 @@ +from pathlib import Path +from typing import Dict, Tuple, Union, Literal + +from PIL import Image, ImageDraw + +from ..utils.mys_api import mys_api +from ..utils.image.convert import convert_img +from ..utils.map.GS_MAP_PATH import avatarId2Name +from ..gsuid_utils.api.mys.models import IndexData +from ..utils.fonts.genshin_fonts import gs_font_30, gs_font_40 +from ..utils.image.image_tools import ( + draw_bar, + get_color_bg, + get_qq_avatar, + draw_pic_with_ring, +) + +TEXT_PATH = Path(__file__).parent / 'texture2D' + +first_color = (29, 29, 29) +brown_color = (41, 25, 0) +red_color = (255, 66, 66) +green_color = (74, 189, 119) + +max_data = { + '成就': 892, + '华丽的宝箱': 185, + '珍贵的宝箱': 487, + '精致的宝箱': 1589, + '普通的宝箱': 2527, + '奇馈宝箱': 146, + '解锁传送点': 286, + '解锁秘境': 48, +} + +award_data = { + '成就': 5, + '华丽的宝箱': 10, + '珍贵的宝箱': 8, + '精致的宝箱': 3, + '普通的宝箱': 1, + '奇馈宝箱': 2, + '解锁传送点': 0, + '解锁秘境': 0, +} + +expmax_data = { + '获得角色数': len(avatarId2Name) - 2, + '风神瞳': 66, + '岩神瞳': 131, + '雷神瞳': 181, + '草神瞳': 271, +} + + +async def draw_collection_img( + qid: Union[str, int], uid: str +) -> Union[str, bytes]: + return await draw_base_img(qid, uid, '收集') + + +async def draw_explora_img( + qid: Union[str, int], uid: str +) -> Union[str, bytes]: + return await draw_base_img(qid, uid, '探索') + + +async def get_base_data(uid: str) -> Union[str, IndexData]: + # 获取Cookies + raw_data = await mys_api.get_info(uid) + if isinstance(raw_data, int): + return '数据异常!' + return raw_data + + +async def get_explore_data( + uid: str, +) -> Union[str, Tuple[Dict[str, float], Dict[str, str], str, str, str]]: + raw_data = await get_base_data(uid) + if isinstance(raw_data, str): + return raw_data + + # 处理数据 + data: Dict[str, int] = { + '获得角色数': raw_data['stats']['avatar_number'], + '风神瞳': raw_data['stats']['anemoculus_number'], + '岩神瞳': raw_data['stats']['geoculus_number'], + '雷神瞳': raw_data['stats']['electroculus_number'], + '草神瞳': raw_data['stats']['dendroculus_number'], + } + for i in raw_data['world_explorations']: + data[i['name']] = i['exploration_percentage'] + + percent_data = {} + value_data = {} + day: str = str(raw_data['stats']['active_day_number']) + me_percent = 0 + world_percent = 0 + + for name in data: + # 百分比 + p_str = f'{data[name]}' + if name in expmax_data: + percent = data[name] / expmax_data[name] + if name != '获得角色数': + me_percent += percent + value = f'{p_str} / {expmax_data[name]} | {_f(percent * 100)}' + else: + percent = data[name] / 1000 + world_percent += percent + value = f'{_f(percent * 100)}' + + percent_data[name] = percent + value_data[name] = value + + me_percent = _f(me_percent * 100 / (len(expmax_data) - 1)) + world_percent = _f(world_percent * 100 / (len(data) - len(expmax_data))) + + return percent_data, value_data, day, me_percent, world_percent + + +async def get_collection_data( + uid: str, +) -> Union[str, Tuple[Dict[str, float], Dict[str, str], str, str, str]]: + raw_data = await get_base_data(uid) + if isinstance(raw_data, str): + return raw_data + raw_data = raw_data['stats'] + + # 处理数据 + data: Dict[str, int] = { + '成就': raw_data['achievement_number'], + '普通的宝箱': raw_data['common_chest_number'], + '精致的宝箱': raw_data['exquisite_chest_number'], + '珍贵的宝箱': raw_data['precious_chest_number'], + '华丽的宝箱': raw_data['luxurious_chest_number'], + '奇馈宝箱': raw_data['magic_chest_number'], + '解锁传送点': raw_data['way_point_number'], + '解锁秘境': raw_data['domain_number'], + } + percent_data = {} + value_data = {} + left = 0 + day: str = str(raw_data['active_day_number']) + all_percent = 0 + + for name in data: + # 百分比 + percent = data[name] / max_data[name] + all_percent += percent + p_str = f'{data[name]} / {max_data[name]}' + value = f'{p_str} | {_f(percent * 100)}' + # 可获石头 + left += award_data[name] * (max_data[name] - data[name]) + percent_data[name] = percent + value_data[name] = value + + all_percent = _f(all_percent * 100 / len(data)) + + return percent_data, value_data, day, all_percent, f'约{left}' + + +async def draw_base_img( + qid: Union[str, int], uid: str, mode: Literal['探索', '收集'] = '收集' +) -> Union[str, bytes]: + # 获取数据 + if mode == '收集': + data = await get_collection_data(uid) + else: + data = await get_explore_data(uid) + if isinstance(data, str): + return data + percent_data, value_data = data[0], data[1] + + # 获取背景图片各项参数 + _id = str(qid) + if _id.startswith('http'): + char_pic = await get_qq_avatar(avatar_url=_id) + else: + char_pic = await get_qq_avatar(qid=qid) + char_pic = await draw_pic_with_ring(char_pic, 264) + + if mode == '收集': + title = Image.open(TEXT_PATH / 'collection_title.png') + else: + title = Image.open(TEXT_PATH / 'explora_title.png') + + img = await get_color_bg(750, 600 + len(percent_data) * 115) + img.paste(title, (0, 0), title) + img.paste(char_pic, (241, 40), char_pic) + + for index, name in enumerate(percent_data): + percent = percent_data[name] + value = value_data[name] + bar = await draw_bar(f'·{name}', percent, value) + img.paste(bar, (0, 600 + index * 115), bar) + + # 头 + img_draw = ImageDraw.Draw(img) + img_draw.text((378, 357), f'UID {uid}', first_color, gs_font_30, 'mm') + img_draw.text((137, 498), data[2], first_color, gs_font_40, 'mm') + img_draw.text((372, 498), data[3], first_color, gs_font_40, 'mm') + img_draw.text((607, 498), data[4], first_color, gs_font_40, 'mm') + + res = await convert_img(img) + return res + + +def _f(value: float) -> str: + return '{:.2f}%'.format(value) diff --git a/GenshinUID/genshinuid_collection/texture2D/collection_title.png b/GenshinUID/genshinuid_collection/texture2D/collection_title.png new file mode 100644 index 00000000..bea76f8c Binary files /dev/null and b/GenshinUID/genshinuid_collection/texture2D/collection_title.png differ diff --git a/GenshinUID/genshinuid_collection/texture2D/explora_title.png b/GenshinUID/genshinuid_collection/texture2D/explora_title.png new file mode 100644 index 00000000..f26062a6 Binary files /dev/null and b/GenshinUID/genshinuid_collection/texture2D/explora_title.png differ diff --git a/GenshinUID/genshinuid_config/__init__.py b/GenshinUID/genshinuid_config/__init__.py new file mode 100644 index 00000000..15784e8e --- /dev/null +++ b/GenshinUID/genshinuid_config/__init__.py @@ -0,0 +1,76 @@ +import re + +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event + +from ..utils.database import active_sqla +from ..utils.error_reply import UID_HINT +from .draw_config_card import draw_config_img +from .set_config import set_push_value, set_config_func + + +@SV('原神配置').on_fullmatch(('gs配置', '原神配置')) +async def send_config_card(bot: Bot, ev: Event): + await bot.logger.info('开始执行[gs配置]') + im = await draw_config_img(ev.bot_id) + await bot.send(im) + + +@SV('原神配置').on_prefix(('gs设置')) +async def send_config_ev(bot: Bot, ev: Event): + await bot.logger.info('开始执行[设置阈值信息]') + + sqla = active_sqla[ev.bot_id] + uid = await sqla.get_bind_uid(ev.user_id) + if uid is None: + return await bot.send(UID_HINT) + + func = ''.join(re.findall('[\u4e00-\u9fa5]', ev.text.replace('阈值', ''))) + value = re.findall(r'\d+', ev.text) + value = value[0] if value else None + + if value is None: + return await bot.send('请输入正确的阈值数字...') + + await bot.logger.info('[设置阈值信息]func: {}, value: {}'.format(func, value)) + im = await set_push_value(ev.bot_id, func, uid, int(value)) + await bot.send(im) + + +# 开启 自动签到 和 推送树脂提醒 功能 +@SV('原神配置').on_prefix(('gs开启', 'gs关闭')) +async def open_switch_func(bot: Bot, ev: Event): + sqla = active_sqla[ev.bot_id] + user_id = ev.user_id + config_name = ev.text + + await bot.logger.info(f'[{user_id}]尝试[{ev.command[2:]}]了[{ev.text}]功能') + + if ev.command == 'gs开启': + query = True + gid = ev.group_id if ev.group_id else 'on' + else: + query = False + gid = 'off' + + is_admin = ev.user_pm <= 2 + if ev.at and is_admin: + user_id = ev.at + elif ev.at: + return await bot.send('你没有权限...') + + uid = await sqla.get_bind_uid(ev.user_id) + if uid is None: + return await bot.send(UID_HINT) + + im = await set_config_func( + ev.bot_id, + config_name=config_name, + uid=uid, + user_id=user_id, + option=gid, + query=query, + is_admin=is_admin, + ) + await bot.send(im) diff --git a/GenshinUID/genshinuid_config/config_default.py b/GenshinUID/genshinuid_config/config_default.py new file mode 100644 index 00000000..aa7e1403 --- /dev/null +++ b/GenshinUID/genshinuid_config/config_default.py @@ -0,0 +1,85 @@ +from typing import Dict, Union + +from .models import GsStrConfig, GsBoolConfig, GsDictConfig, GsListConfig + +CONIFG_DEFAULT: Dict[ + str, Union[GsDictConfig, GsBoolConfig, GsListConfig, GsStrConfig] +] = { + 'proxy': GsStrConfig('设置代理', '设置国际服的代理地址', ''), + '_pass_API': GsStrConfig('神奇API', '设置某种神奇的API', ''), + 'random_pic_API': GsStrConfig( + '随机图API', + '用于面板查询的随机图API', + 'https://genshin-res.cherishmoon.fun/img?name=', + ), + 'Ann_Groups': GsDictConfig( + '推送公告群组', + '原神公告推送群组', + {}, + ), + 'Ann_Ids': GsListConfig( + '推送公告ID', + '原神公告推送ID列表', + [], + ), + 'MhyBBSCoinReport': GsBoolConfig( + '米游币推送', + '开启后会私聊每个用户当前米游币任务完成情况', + False, + ), + 'SignReportSimple': GsBoolConfig( + '简洁签到报告', + '开启后可以大大减少每日签到报告字数', + True, + ), + 'PrivateReport': GsBoolConfig( + '私聊报告', + '关闭后将不再给主人推送当天米游币任务完成情况', + False, + ), + 'RandomPic': GsBoolConfig( + '随机图', + '开启后[查询心海]等命令展示图将替换为随机图片', + False, + ), + 'SchedSignin': GsBoolConfig( + '定时签到', + '开启后每晚00:30将开始自动签到任务', + True, + ), + 'SchedMhyBBSCoin': GsBoolConfig( + '定时米游币', + '开启后每晚01:16将开始自动米游币任务', + True, + ), + 'CrazyNotice': GsBoolConfig( + '催命模式', + '开启后当达到推送阈值将会一直推送', + False, + ), + 'OldPanle': GsBoolConfig( + '旧面板', + '会稍微增加面板访问速度,但会损失很多功能', + False, + ), + 'OpenWeb': GsBoolConfig( + '网页控制台', + '开启后重启生效,地址位于Bot所处端口下/genshinuid', + False, + ), + 'ColorBG': GsBoolConfig( + '多彩面板', + '面板颜色不按照属性来渲染,而按照自定义颜色', + False, + ), + 'CaptchaPass': GsBoolConfig( + '失效项', + '该选项已经无效且可能有一定危险性...', + False, + ), + 'MysPass': GsBoolConfig( + '无效项', + '该选项已经无效且可能有一定危险性...', + False, + ), +} diff --git a/GenshinUID/genshinuid_config/draw_config_card.py b/GenshinUID/genshinuid_config/draw_config_card.py new file mode 100644 index 00000000..f5933714 --- /dev/null +++ b/GenshinUID/genshinuid_config/draw_config_card.py @@ -0,0 +1,78 @@ +import asyncio +from pathlib import Path +from typing import Union + +from nonebot.log import logger +from PIL import Image, ImageDraw + +from ..utils.database import active_sqla +from .config_default import CONIFG_DEFAULT +from ..utils.image.convert import convert_img +from ..utils.image.image_tools import CustomizeImage +from ..utils.resource.RESOURCE_PATH import TEXT2D_PATH +from ..utils.fonts.genshin_fonts import gs_font_24, gs_font_36, gs_font_40 + +TEXT_PATH = Path(__file__).parent / 'texture2d' +config_title = Image.open(TEXT_PATH / 'config_title.png') +config_on = Image.open(TEXT_PATH / 'config_on.png') +config_off = Image.open(TEXT_PATH / 'config_off.png') + +first_color = (20, 20, 20) +second_color = (57, 57, 57) + + +async def draw_config_img(bot_id: str) -> Union[bytes, str]: + sqla = active_sqla[bot_id] + # 获取背景图片各项参数 + based_w = 850 + based_h = 850 + 155 * (len(CONIFG_DEFAULT) - 5) + + CI_img = CustomizeImage('', based_w, based_h) + img = CI_img.bg_img + color = CI_img.bg_color + color_mask = Image.new('RGBA', (based_w, based_h), color) + config_mask = Image.open(TEXT2D_PATH / 'mask.png').resize( + (based_w, based_h) + ) + img.paste(color_mask, (0, 0), config_mask) + img.paste(config_title, (0, 0), config_title) + img_draw = ImageDraw.Draw(img) + + # 获取数据 + uid_list = await sqla.get_all_uid_list() + cookie_list = await sqla.get_all_cookie() + stoken_list = await sqla.get_all_stoken() + + uid_num = len(uid_list) + cookie_num = len(cookie_list) + stoken_num = len(stoken_list) + img_draw.text((210, 600), str(uid_num), first_color, gs_font_40, 'mm') + img_draw.text((431, 600), str(cookie_num), first_color, gs_font_40, 'mm') + img_draw.text((651, 600), str(stoken_num), first_color, gs_font_40, 'mm') + + tasks = [] + index = 0 + for name in CONIFG_DEFAULT: + if isinstance(CONIFG_DEFAULT[name].data, bool): + index += 1 + tasks.append(_draw_config_line(img, name, index)) + await asyncio.gather(*tasks) + + res = await convert_img(img) + logger.info('[查询配置信息]绘图已完成,等待发送!') + return res + + +async def _draw_config_line(img: Image.Image, name: str, index: int): + detail = CONIFG_DEFAULT[name].desc + config_line = Image.open(TEXT_PATH / 'config_line.png') + config_line_draw = ImageDraw.Draw(config_line) + if name.startswith('定时'): + name += '(全部)' + config_line_draw.text((52, 46), name, first_color, gs_font_36, 'lm') + config_line_draw.text((52, 80), detail, second_color, gs_font_24, 'lm') + if CONIFG_DEFAULT[name].data: + config_line.paste(config_on, (613, 21), config_on) + else: + config_line.paste(config_off, (613, 21), config_off) + img.paste(config_line, (26, 850 + index * 155), config_line) diff --git a/GenshinUID/genshinuid_config/gs_config.py b/GenshinUID/genshinuid_config/gs_config.py new file mode 100644 index 00000000..3830332b --- /dev/null +++ b/GenshinUID/genshinuid_config/gs_config.py @@ -0,0 +1,106 @@ +from typing import Dict, List, Union, Literal, overload + +from msgspec import json as msgjson + +from .config_default import CONIFG_DEFAULT +from ..utils.resource.RESOURCE_PATH import CONFIG_PATH +from .models import GSC, GsStrConfig, GsBoolConfig, GsDictConfig, GsListConfig + +STR_CONFIG = Literal['proxy', '_pass_API', 'random_pic_API'] +LIST_CONFIG = Literal['Ann_Ids'] +DICT_CONFIG = Literal['Ann_Groups'] + + +class StringConfig: + def __init__(self) -> None: + if not CONFIG_PATH.exists(): + with open(CONFIG_PATH, 'wb') as file: + file.write(msgjson.encode(CONIFG_DEFAULT)) + + self.config: Dict[str, GSC] = {} + self.update_config() + + def write_config(self): + with open(CONFIG_PATH, 'wb') as file: + file.write(msgjson.format(msgjson.encode(self.config), indent=4)) + + def update_config(self): + # 打开config.json + with open(CONFIG_PATH, 'r', encoding='UTF-8') as f: + self.config: Dict[str, GSC] = msgjson.decode( + f.read(), + type=Dict[str, GSC], + ) + # 对没有的值,添加默认值 + for key in CONIFG_DEFAULT: + if key not in self.config: + self.config[key] = CONIFG_DEFAULT[key] + + # 对默认值没有的值,直接删除 + delete_keys = [] + for key in self.config: + if key not in CONIFG_DEFAULT: + delete_keys.append(key) + for key in delete_keys: + self.config.pop(key) + + # 重新写回 + self.write_config() + + @overload + def get_config(self, key: STR_CONFIG) -> GsStrConfig: + ... + + @overload + def get_config(self, key: LIST_CONFIG) -> GsListConfig: + ... + + @overload + def get_config(self, key: DICT_CONFIG) -> GsDictConfig: + ... + + @overload + def get_config(self, key: str) -> GsBoolConfig: + ... + + def get_config(self, key: str) -> GSC: + if key in self.config: + return self.config[key] + elif key in CONIFG_DEFAULT: + self.update_config() + return self.config[key] + else: + return GsBoolConfig('缺省值', '获取错误的配置项', False) + + @overload + def set_config(self, key: STR_CONFIG, value: str) -> bool: + ... + + @overload + def set_config(self, key: LIST_CONFIG, value: List) -> bool: + ... + + @overload + def set_config(self, key: DICT_CONFIG, value: Dict) -> bool: + ... + + @overload + def set_config(self, key: str, value: bool) -> bool: + ... + + def set_config( + self, key: str, value: Union[str, List, bool, Dict] + ) -> bool: + if key in CONIFG_DEFAULT: + temp = self.config[key] + temp.data = value # type:ignore + # 设置值 + self.config[key] = temp + # 重新写回 + self.write_config() + return True + else: + return False + + +gsconfig = StringConfig() diff --git a/GenshinUID/genshinuid_config/models.py b/GenshinUID/genshinuid_config/models.py new file mode 100644 index 00000000..e8c45c56 --- /dev/null +++ b/GenshinUID/genshinuid_config/models.py @@ -0,0 +1,27 @@ +from typing import Dict, List, Union + +import msgspec + + +class GsConfig(msgspec.Struct, tag=True): + title: str + desc: str + + +class GsStrConfig(GsConfig, tag=True): + data: str + + +class GsBoolConfig(GsConfig, tag=True): + data: bool + + +class GsDictConfig(GsConfig, tag=True): + data: Dict[str, List] + + +class GsListConfig(GsConfig, tag=True): + data: List[str] + + +GSC = Union[GsDictConfig, GsBoolConfig, GsListConfig, GsStrConfig] diff --git a/GenshinUID/genshinuid_config/set_config.py b/GenshinUID/genshinuid_config/set_config.py new file mode 100644 index 00000000..405fc970 --- /dev/null +++ b/GenshinUID/genshinuid_config/set_config.py @@ -0,0 +1,92 @@ +from typing import Optional + +from nonebot.log import logger + +from .gs_config import gsconfig +from ..utils.database import active_sqla +from .config_default import CONIFG_DEFAULT + +PUSH_MAP = { + '宝钱': 'coin', + '体力': 'resin', + '派遣': 'go', + '质变仪': 'transform', +} +PRIV_MAP = { + '自动签到': 'sign', + '自动米游币': 'bbs', + '推送': 'push', +} + + +async def set_push_value(bot_id: str, func: str, uid: str, value: int): + sqla = active_sqla[bot_id] + if func in PUSH_MAP: + status = PUSH_MAP[func] + else: + return '该配置项不存在!' + logger.info('[设置推送阈值]func: {}, value: {}'.format(status, value)) + if await sqla.update_push_data(uid, {f'{status}_value': value}): + return f'设置成功!\n当前{func}推送阈值:{value}' + else: + return '设置失败!\n请检查参数是否正确!' + + +async def set_config_func( + bot_id: str, + config_name: str = '', + uid: str = '0', + user_id: Optional[str] = None, + option: str = '0', + query: Optional[bool] = None, + is_admin: bool = False, +): + sqla = active_sqla[bot_id] + # 这里将传入的中文config_name转换为英文status + for _name in CONIFG_DEFAULT: + config = CONIFG_DEFAULT[_name] + if config.title == config_name and isinstance(config.data, bool): + name = _name + break + else: + logger.info( + f'uid: {uid}, option: {option}, config_name: {config_name}' + ) + if config_name in PRIV_MAP: + # 执行设置 + await sqla.update_user_data( + uid, + { + 'user_id': user_id, + f'{PRIV_MAP[config_name]}_switch': option, + }, + ) + elif config_name.replace('推送', '') in PUSH_MAP: + await sqla.update_push_data( + uid, + { + f'{PUSH_MAP[config_name.replace("推送", "")]}_push': option, + }, + ) + else: + return '该配置项不存在!' + + if option == 'on': + succeed_msg = '开启至私聊消息!' + elif option == 'off': + succeed_msg = '关闭!' + else: + succeed_msg = f'开启至群{option}' + return f'{config_name}已{succeed_msg}' + + if is_admin: + logger.info(f'config_name:{config_name},query:{query}') + # 执行设置 + if query is not None: + gsconfig.set_config(name, query) + im = '成功设置{}为{}。'.format(config_name, '开' if query else '关') + else: + im = '未传入参数query!' + else: + im = '只有管理员才能设置群服务。' + return im diff --git a/GenshinUID/genshinuid_config/texture2d/config_line.png b/GenshinUID/genshinuid_config/texture2d/config_line.png new file mode 100644 index 00000000..11b99fa8 Binary files /dev/null and b/GenshinUID/genshinuid_config/texture2d/config_line.png differ diff --git a/GenshinUID/genshinuid_config/texture2d/config_off.png b/GenshinUID/genshinuid_config/texture2d/config_off.png new file mode 100644 index 00000000..7d3b8f07 Binary files /dev/null and b/GenshinUID/genshinuid_config/texture2d/config_off.png differ diff --git a/GenshinUID/genshinuid_config/texture2d/config_on.png b/GenshinUID/genshinuid_config/texture2d/config_on.png new file mode 100644 index 00000000..f289fe82 Binary files /dev/null and b/GenshinUID/genshinuid_config/texture2d/config_on.png differ diff --git a/GenshinUID/genshinuid_config/texture2d/config_title.png b/GenshinUID/genshinuid_config/texture2d/config_title.png new file mode 100644 index 00000000..7cd1ec6f Binary files /dev/null and b/GenshinUID/genshinuid_config/texture2d/config_title.png differ diff --git a/GenshinUID/genshinuid_enka/__init__.py b/GenshinUID/genshinuid_enka/__init__.py new file mode 100644 index 00000000..d103d869 --- /dev/null +++ b/GenshinUID/genshinuid_enka/__init__.py @@ -0,0 +1,60 @@ +import re +from typing import Tuple + +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event + +from .to_data import switch_api +from .to_card import enka_to_card +from ..utils.convert import get_uid +from .get_enka_img import draw_enka_img +from ..utils.error_reply import UID_HINT +from .draw_char_rank import draw_cahrcard_list + + +@SV('面板设置', pm=2).on_fullmatch('切换api') +async def send_change_api_info(bot: Bot): + await bot.send(await switch_api()) + + +@SV('面板查询', priority=10).on_prefix('查询') +async def send_char_info(bot: Bot, ev: Event): + # 获取角色名 + msg = ''.join(re.findall('[\u4e00-\u9fa5]', ev.text)) + await bot.logger.info('开始执行[查询角色面板]') + # 获取uid + uid = await get_uid(bot, ev) + if uid is None: + return await bot.send(UID_HINT) + await bot.logger.info('[查询角色面板]uid: {}'.format(uid)) + + im = await draw_enka_img(msg, uid, ev.image) + if isinstance(im, str): + await bot.send(im) + elif isinstance(im, Tuple): + await bot.send(im[0]) + else: + await bot.send('发生未知错误') + + +@SV('面板查询', priority=10).on_command('强制刷新') +async def send_card_info(bot: Bot, ev: Event): + uid = await get_uid(bot, ev) + if uid is None: + return await bot.send(UID_HINT) + await bot.logger.info('[强制刷新]uid: {}'.format(uid)) + im = await enka_to_card(uid) + await bot.logger.info(f'UID{uid}获取角色数据成功!') + await bot.send(im) + + +@SV('面板查询', priority=10).on_command('毕业度统计') +async def send_charcard_list(bot: Bot, ev: Event): + uid = await get_uid(bot, ev) + user_id = ev.at if ev.at else ev.user_id + if uid is None: + return await bot.send(UID_HINT) + im = await draw_cahrcard_list(str(uid), user_id) + await bot.logger.info(f'UID{uid}获取角色数据成功!') + await bot.send(im) diff --git a/GenshinUID/genshinuid_enka/curve_calc/char_curve.json b/GenshinUID/genshinuid_enka/curve_calc/char_curve.json new file mode 100644 index 00000000..3f9cedf7 --- /dev/null +++ b/GenshinUID/genshinuid_enka/curve_calc/char_curve.json @@ -0,0 +1,58 @@ +{ + "神里绫华": {"Y": "冰伤收益", "B": "攻击收益", "J": "暴击收益"}, + "琴": {"W": "治疗加成", "X": "攻击对治疗收益"}, + "丽莎": {"B": "攻击/雷伤收益", "D": "暴击收益"}, + "芭芭拉": {"Q": "治疗加成", "R": "生命收益"}, + "凯亚": {"B": "攻击/冰伤收益", "D": "暴击收益"}, + "迪卢克": {"O": "精通收益", "B": "攻击/火伤收益", "K": "暴击收益"}, + "雷泽": {"AE": "物伤收益", "B": "攻击收益", "D": "暴击收益"}, + "安柏": {"P": "精通收益", "B": "火伤收益", "D": "暴击收益", "L": "攻击收益"}, + "温迪": {}, + "香菱": {"N": "精通收益", "B": "攻击/火伤收益", "D": "暴击收益"}, + "北斗": {"L": "雷伤收益", "B": "攻击收益", "D": "暴击收益"}, + "行秋": {"E": "精通收益", "B": "水伤收益", "L": "攻击收益", "D": "暴击收益"}, + "魈": {"AK": "风伤收益", "B": "攻击收益", "K": "暴击收益"}, + "凝光": {"L": "岩伤收益", "B": "攻击收益", "D": "暴击收益"}, + "可莉": {"E": "精通收益", "B": "攻击收益", "M": "火伤收益", "D": "暴击收益"}, + "钟离": {"M": "岩伤收益", "AB": "生命收益", "D": "暴击收益"}, + "菲谢尔": {"C": "物伤收益", "L": "攻击收益", "B": "雷伤收益", "D": "暴击收益"}, + "班尼特": {"E": "精通收益", "B": "攻击收益", "D": "暴击收益"}, + "达达利亚": {"E": "精通收益", "M": "水伤收益", "B": "攻击收益", "D": "暴击收益"}, + "诺艾尔": {"B": "岩伤收益", "AC": "防御收益", "D": "暴击收益"}, + "七七": {"W": "治疗加成", "Z": "攻击对治疗收益"}, + "重云": {"E": "精通收益", "B": "冰伤收益", "L": "攻击收益", "D": "暴击收益"}, + "甘雨": {"E": "精通收益", "B": "攻击/冰伤收益", "J": "暴击收益"}, + "阿贝多": {"M": "岩伤收益", "C": "防御收益", "D": "暴击收益"}, + "迪奥娜": {"Q": "治疗加成", "AA": "生命收益"}, + "莫娜": {"E": "精通收益", "S": "水伤收益", "B": "攻击收益", "D": "暴击收益"}, + "刻晴": {"C": "物伤收益", "B": "攻击/雷伤收益", "J": "暴击收益"}, + "砂糖": {}, + "辛焱": {"C": "物伤收益", "L": "攻击收益", "D": "暴击收益", "B": "火伤收益"}, + "罗莎莉亚": {"L": "攻击收益", "D": "暴击收益", "B": "冰伤收益"}, + "胡桃": {"I": "精通收益", "B": "火伤收益", "H": "生命收益", "J": "暴击收益"}, + "枫原万叶": {}, + "烟绯": {"E": "精通收益", "B": "攻击收益", "L": "火伤收益", "D": "暴击收益"}, + "宵宫": {"O": "精通收益", "B": "攻击/火伤收益", "K": "暴击收益"}, + "托马": {}, + "优菈": {"C": "物伤收益", "B": "攻击收益", "J": "暴击收益"}, + "雷电将军": {"AG": "攻击收益", "AF": "雷伤收益", "D": "暴击收益"}, + "早柚": {"Q": "治疗加成", "AL": "攻击对治疗收益", "AM": "精通对治疗收益"}, + "珊瑚宫心海": {"M": "水伤收益", "T": "生命收益"}, + "五郎": {"L": "岩伤收益", "C": "防御收益", "D": "暴击收益"}, + "九条裟罗": {"L": "攻击收益", "B": "雷伤收益", "D": "暴击收益"}, + "荒泷一斗": {"B": "岩伤收益", "AD": "防御收益", "K": "暴击收益"}, + "八重神子": {"B": "攻击/雷伤收益", "K": "暴击收益"}, + "鹿野院平藏": {"L": "风伤收益", "B": "攻击收益", "D": "暴击收益"}, + "夜兰": {"B": "水伤收益", "U": "生命收益", "K": "暴击收益"}, + "埃洛伊": {"B": "攻击收益", "M": "冰伤收益", "D": "暴击收益"}, + "申鹤": {"B": "冰伤收益", "M": "攻击收益", "D": "暴击收益"}, + "云堇": {"B": "岩伤收益", "C": "防御收益", "D": "暴击收益"}, + "久岐忍": {"Q": "治疗加成", "AH": "生命对治疗收益", "AI": "精通对治疗收益"}, + "神里绫人": {"B": "水伤收益", "V": "4浪闪攻击收益", "J": "暴击收益"}, + "柯莱": {}, + "多莉": {"Q": "治疗加成", "AJ": "生命对治疗收益"}, + "提纳里": {}, + "妮露": {}, + "赛诺": {"B": "雷伤收益", "L": "攻击收益", "J": "暴击收益"}, + "坎蒂丝": {"B": "水伤收益", "L": "生命收益", "D": "暴击收益"} +} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/curve_calc/curve.json b/GenshinUID/genshinuid_enka/curve_calc/curve.json new file mode 100644 index 00000000..f051f912 --- /dev/null +++ b/GenshinUID/genshinuid_enka/curve_calc/curve.json @@ -0,0 +1,11780 @@ +{ + "B": [ + 0.015, + 0.01477832512315271, + 0.014563106796116504, + 0.014354066985645933, + 0.014150943396226414, + 0.013953488372093023, + 0.013761467889908256, + 0.013574660633484163, + 0.01339285714285714, + 0.013215859030837003, + 0.013043478260869566, + 0.012875536480686695, + 0.012711864406779662, + 0.012552301255230124, + 0.012396694214876033, + 0.012244897959183673, + 0.012096774193548387, + 0.01195219123505976, + 0.011811023622047244, + 0.011673151750972763, + 0.011538461538461537, + 0.011406844106463879, + 0.011278195488721804, + 0.011152416356877323, + 0.011029411764705883, + 0.010909090909090908, + 0.010791366906474819, + 0.010676156583629892, + 0.01056338028169014, + 0.010452961672473867, + 0.010344827586206896, + 0.010238907849829353, + 0.010135135135135136, + 0.01003344481605351, + 0.009933774834437087, + 0.009836065573770493, + 0.00974025974025974, + 0.00964630225080386, + 0.009554140127388536, + 0.00946372239747634, + 0.009375, + 0.009287925696594427, + 0.009202453987730062, + 0.00911854103343465, + 0.009036144578313253, + 0.008955223880597015, + 0.008875739644970414, + 0.00879765395894428, + 0.00872093023255814, + 0.008645533141210375, + 0.008571428571428572, + 0.008498583569405098, + 0.008426966292134831, + 0.008356545961002786, + 0.008287292817679558, + 0.00821917808219178, + 0.008152173913043478, + 0.008086253369272238, + 0.00802139037433155, + 0.007957559681697613, + 0.007894736842105263, + 0.007832898172323759, + 0.007772020725388601, + 0.007712082262210798, + 0.007653061224489796, + 0.007594936708860759, + 0.007537688442211055, + 0.007481296758104738, + 0.007425742574257425, + 0.00737100737100737, + 0.007317073170731708, + 0.007263922518159807, + 0.007211538461538461, + 0.007159904534606206, + 0.007109004739336493, + 0.007058823529411764, + 0.007009345794392524, + 0.006960556844547563, + 0.006912442396313364, + 0.006864988558352402, + 0.006818181818181817, + 0.006772009029345372, + 0.0067264573991031385, + 0.006681514476614699, + 0.006637168141592921, + 0.006593406593406593, + 0.006550218340611353, + 0.0065075921908893716, + 0.00646551724137931, + 0.006423982869379015, + 0.006382978723404256, + 0.006342494714587737, + 0.0063025210084033615, + 0.006263048016701461, + 0.006224066390041493, + 0.006185567010309279, + 0.006147540983606557, + 0.006109979633401222, + 0.006072874493927126, + 0.006036217303822938, + 0.006, + 0.005964214711729623, + 0.005928853754940711, + 0.005893909626719057, + 0.005859375, + 0.005825242718446601, + 0.005791505791505791, + 0.005758157389635317, + 0.005725190839694656, + 0.0056925996204933585, + 0.005660377358490566, + 0.005628517823639775, + 0.005597014925373135, + 0.0055658627087198514, + 0.005535055350553505, + 0.005504587155963303, + 0.005474452554744525, + 0.0054446460980036296, + 0.005415162454873646, + 0.0053859964093357264, + 0.005357142857142857, + 0.0053285968028419185, + 0.005300353356890459, + 0.005272407732864675, + 0.005244755244755245, + 0.005217391304347826, + 0.005190311418685122, + 0.005163511187607573, + 0.005136986301369863, + 0.0051107325383304945, + 0.005084745762711864, + 0.00505902192242833, + 0.0050335570469798654, + 0.005008347245409015, + 0.004983388704318937, + 0.0049586776859504135, + 0.004934210526315789, + 0.004909983633387889, + 0.00488599348534202, + 0.00486223662884927, + 0.004838709677419354, + 0.004815409309791333, + 0.004792332268370607, + 0.0047694753577106515, + 0.004746835443037974, + 0.004724409448818898, + 0.004702194357366771, + 0.004680187207488299, + 0.004658385093167702, + 0.00463678516228748, + 0.004615384615384615, + 0.004594180704441041, + 0.004573170731707317, + 0.004552352048558422, + 0.004531722054380664, + 0.004511278195488722, + 0.004491017964071856, + 0.004470938897168405, + 0.004451038575667655, + 0.004431314623338257, + 0.004411764705882353, + 0.004392386530014641, + 0.004373177842565598, + 0.0043541364296081275, + 0.004335260115606936, + 0.004316546762589928, + 0.004297994269340974, + 0.0042796005706134095, + 0.004261363636363636, + 0.004243281471004243, + 0.004225352112676057, + 0.004207573632538569, + 0.004189944134078212, + 0.004172461752433936, + 0.004155124653739612, + 0.004137931034482759, + 0.004120879120879121, + 0.004103967168262654, + 0.004087193460490463, + 0.004070556309362279, + 0.004054054054054054, + 0.004037685060565276, + 0.004021447721179625, + 0.004005340453938584, + 0.003989361702127659, + 0.003973509933774834, + 0.003957783641160949, + 0.003942181340341656, + 0.003926701570680628, + 0.003911342894393742, + 0.0038961038961038957, + 0.0038809831824062097, + 0.003865979381443299, + 0.003851091142490372, + 0.0038363171355498722, + 0.003821656050955414, + 0.0038071065989847713, + 0.0037926675094816687, + 0.003778337531486146, + 0.0037641154328732747, + 0.00375, + 0.0037359900373599006, + 0.003722084367245658, + 0.003708281829419036, + 0.0036945812807881767, + 0.003680981595092025, + 0.003667481662591687, + 0.0036540803897685743, + 0.003640776699029126, + 0.0036275695284159614, + 0.003614457831325301, + 0.003601440576230492, + 0.0035885167464114833, + 0.003575685339690107, + 0.003562945368171021, + 0.003550295857988166, + 0.0035377358490566034, + 0.0035252643948296123, + 0.0035128805620608904, + 0.0035005834305717617, + 0.0034883720930232558, + 0.003476245654692932, + 0.0034642032332563508, + 0.0034522439585730727, + 0.0034403669724770644, + 0.0034285714285714284, + 0.003416856492027335, + 0.0034052213393870605, + 0.003393665158371041, + 0.003382187147688838, + 0.003370786516853933, + 0.0033594624860022394, + 0.003348214285714285, + 0.003337041156840935, + 0.0033259423503325942, + 0.003314917127071823, + 0.0033039647577092508, + 0.003293084522502744, + 0.0032822757111597373, + 0.003271537622682661, + 0.0032608695652173916, + 0.0032502708559046583, + 0.0032397408207343412, + 0.0032292787944025836, + 0.003218884120171674, + 0.0032085561497326204, + 0.003198294243070363, + 0.003188097768331562, + 0.0031779661016949155, + 0.0031678986272439284, + 0.003157894736842105, + 0.0031479538300104933, + 0.0031380753138075318, + 0.0031282586027111575, + 0.0031185031185031182, + 0.0031088082901554407, + 0.0030991735537190084, + 0.0030895983522142116, + 0.0030800821355236145, + 0.0030706243602865915, + 0.003061224489795918, + 0.003051881993896236, + 0.0030425963488843813, + 0.0030333670374115265, + 0.0030241935483870967, + 0.0030150753768844224, + 0.003006012024048096, + 0.002997002997002997, + 0.00298804780876494, + 0.002979145978152929, + 0.0029702970297029703, + 0.0029615004935834156, + 0.002952755905511811, + 0.002944062806673209, + 0.002935420743639922, + 0.002926829268292683, + 0.0029182879377431907, + 0.0029097963142580016, + 0.0029013539651837525, + 0.0028929604628736743, + 0.0028846153846153843, + 0.0028763183125599234, + 0.0028680688336520078, + 0.002859866539561487, + 0.0028517110266159697, + 0.0028436018957345975, + 0.0028355387523629487, + 0.002827521206409048, + 0.002819548872180451, + 0.0028116213683223993, + 0.0028037383177570096, + 0.0027958993476234852, + 0.0027881040892193307, + 0.0027803521779425394, + 0.0027726432532347504, + 0.0027649769585253456, + 0.0027573529411764708, + 0.002749770852428964, + 0.002742230347349177, + 0.0027347310847766638 + ], + "C": [ + 0.01875, + 0.01840490797546012, + 0.018072289156626505, + 0.01775147928994083, + 0.01744186046511628, + 0.017142857142857144, + 0.016853932584269662, + 0.016574585635359115, + 0.016304347826086956, + 0.016042780748663103, + 0.015789473684210527, + 0.015544041450777202, + 0.01530612244897959, + 0.015075376884422112, + 0.01485148514851485, + 0.014634146341463414, + 0.014423076923076922, + 0.014218009478672985, + 0.014018691588785047, + 0.013824884792626727, + 0.013636363636363636, + 0.013452914798206277, + 0.013274336283185839, + 0.013100436681222708, + 0.01293103448275862, + 0.01276595744680851, + 0.012605042016806721, + 0.012448132780082987, + 0.012295081967213115, + 0.012145748987854251, + 0.012, + 0.011857707509881424, + 0.011718749999999998, + 0.011583011583011582, + 0.011450381679389313, + 0.011320754716981131, + 0.01119402985074627, + 0.01107011070110701, + 0.010948905109489052, + 0.010830324909747292, + 0.010714285714285714, + 0.01060070671378092, + 0.010489510489510488, + 0.010380622837370242, + 0.010273972602739725, + 0.010169491525423728, + 0.010067114093959733, + 0.009966777408637873, + 0.009868421052631578, + 0.009771986970684038, + 0.00967741935483871, + 0.009584664536741215, + 0.009493670886075948, + 0.009404388714733543, + 0.009316770186335402, + 0.00923076923076923, + 0.009146341463414635, + 0.00906344410876133, + 0.008982035928143712, + 0.00890207715133531, + 0.008823529411764706, + 0.008746355685131196, + 0.008670520231213874, + 0.008595988538681949, + 0.008522727272727272, + 0.008450704225352112, + 0.008379888268156424, + 0.008310249307479225, + 0.008241758241758242, + 0.008174386920980926, + 0.008108108108108109, + 0.00804289544235925, + 0.00797872340425532, + 0.0079155672823219, + 0.007853403141361256, + 0.007792207792207792, + 0.007731958762886598, + 0.007672634271099745, + 0.007614213197969543, + 0.007556675062972291, + 0.0075, + 0.007444168734491315, + 0.007389162561576355, + 0.007334963325183374, + 0.007281553398058252, + 0.007228915662650602, + 0.007177033492822967, + 0.007125890736342043, + 0.007075471698113208, + 0.007025761124121779, + 0.0069767441860465115, + 0.006928406466512702, + 0.006880733944954129, + 0.00683371298405467, + 0.006787330316742081, + 0.006741573033707865, + 0.006696428571428572, + 0.006651884700665189, + 0.006607929515418502, + 0.006564551422319475, + 0.006521739130434782, + 0.0064794816414686825, + 0.0064377682403433485, + 0.006396588486140725, + 0.00635593220338983, + 0.00631578947368421, + 0.006276150627615063, + 0.0062370062370062365, + 0.006198347107438017, + 0.006160164271047228, + 0.006122448979591836, + 0.006085192697768763, + 0.006048387096774193, + 0.006012024048096192, + 0.00597609561752988, + 0.005940594059405941, + 0.005905511811023622, + 0.005870841487279843, + 0.005836575875486381, + 0.005802707930367505, + 0.005769230769230769, + 0.0057361376673040155, + 0.0057034220532319385, + 0.005671077504725898, + 0.005639097744360903, + 0.005607476635514018, + 0.0055762081784386614, + 0.005545286506469501, + 0.0055147058823529415, + 0.005484460694698355, + 0.005454545454545454, + 0.0054249547920434, + 0.0053956834532374095, + 0.005366726296958855, + 0.005338078291814947, + 0.005309734513274336, + 0.00528169014084507, + 0.005253940455341506, + 0.005226480836236933, + 0.005199306759098787, + 0.005172413793103448, + 0.005145797598627788, + 0.005119453924914676, + 0.0050933786078098476, + 0.005067567567567568, + 0.0050420168067226885, + 0.005016722408026756, + 0.004991680532445923, + 0.004966887417218543, + 0.0049423393739703465, + 0.0049180327868852455, + 0.004893964110929854, + 0.00487012987012987, + 0.004846526655896607, + 0.00482315112540193, + 0.0048, + 0.004777070063694267, + 0.004754358161648177, + 0.00473186119873817, + 0.004709576138147567, + 0.0046875, + 0.004665629860031105, + 0.0046439628482972135, + 0.004622496147919876, + 0.004601226993865031, + 0.004580152671755725, + 0.004559270516717325, + 0.0045385779122541605, + 0.004518072289156626, + 0.004497751124437782, + 0.004477611940298508, + 0.004457652303120356, + 0.004437869822485207, + 0.004418262150220912, + 0.004398826979472141, + 0.00437956204379562, + 0.00436046511627907, + 0.004341534008683068, + 0.004322766570605187, + 0.004304160688665711, + 0.004285714285714286, + 0.004267425320056899, + 0.00424929178470255, + 0.0042313117066290545, + 0.0042134831460674165, + 0.004195804195804196, + 0.004178272980501393, + 0.004160887656033287, + 0.004143646408839779, + 0.004126547455295736, + 0.00410958904109589, + 0.004092769440654843, + 0.004076086956521739, + 0.0040595399188092015, + 0.004043126684636119, + 0.004026845637583892, + 0.004010695187165776, + 0.0039946737683089215, + 0.0039787798408488055, + 0.003963011889035668, + 0.003947368421052632, + 0.003931847968545216, + 0.00391644908616188, + 0.0039011703511053313, + 0.003886010362694301, + 0.003870967741935484, + 0.0038560411311053984, + 0.0038412291933418697, + 0.0038265306122448974, + 0.003811944091486659, + 0.0037974683544303796, + 0.0037831021437578815, + 0.003768844221105528, + 0.003754693366708385, + 0.003740648379052369, + 0.0037267080745341614, + 0.0037128712871287127, + 0.0036991368680641184, + 0.0036855036855036856, + 0.003671970624235006, + 0.0036585365853658534, + 0.0036452004860267314, + 0.0036319612590799033, + 0.003618817852834741, + 0.0036057692307692305, + 0.003592814371257485, + 0.003579952267303103, + 0.0035671819262782403, + 0.0035545023696682467, + 0.0035419126328217233, + 0.003529411764705882, + 0.0035169988276670576, + 0.0035046728971962616, + 0.003492433061699651, + 0.0034802784222737818, + 0.003468208092485549, + 0.003456221198156682, + 0.0034443168771526983, + 0.0034324942791762016, + 0.003420752565564424, + 0.003409090909090909, + 0.0033975084937712344, + 0.003386004514672686, + 0.0033745781777277844, + 0.0033632286995515692, + 0.0033519553072625698, + 0.0033407572383073497, + 0.0033296337402885685, + 0.0033185840707964606, + 0.00330760749724366, + 0.0032967032967032967, + 0.0032858707557502738, + 0.003275109170305677, + 0.003264417845484222, + 0.0032537960954446853, + 0.003243243243243243, + 0.003232758620689655, + 0.00322234156820623, + 0.0032119914346895075, + 0.0032017075773745998, + 0.0031914893617021275, + 0.003181336161187699, + 0.003171247357293869, + 0.003161222339304531, + 0.0031512605042016803, + 0.0031413612565445023, + 0.003131524008350731, + 0.003121748178980229, + 0.003112033195020747, + 0.0031023784901758012, + 0.003092783505154639, + 0.003083247687564234, + 0.0030737704918032786, + 0.003064351378958121, + 0.003054989816700611, + 0.003045685279187817, + 0.003036437246963563, + 0.003027245206861756, + 0.003018108651911469, + 0.003009027081243731, + 0.003, + 0.002991026919242273, + 0.002982107355864811, + 0.002973240832507433, + 0.0029644268774703555, + 0.0029556650246305416, + 0.0029469548133595285, + 0.002938295788442703, + 0.0029296875, + 0.0029211295034079843, + 0.002912621359223301, + 0.002904162633107454, + 0.0028957528957528956, + 0.002887391722810395, + 0.002879078694817658, + 0.0028708133971291866, + 0.0028625954198473282, + 0.0028544243577545195, + 0.0028462998102466793, + 0.002838221381267739 + ], + "D": [ + 0.0048543689320388345, + 0.004830917874396136, + 0.004807692307692308, + 0.004784688995215312, + 0.0047619047619047615, + 0.004739336492890996, + 0.0047169811320754715, + 0.004694835680751174, + 0.004672897196261682, + 0.004651162790697674, + 0.004629629629629629, + 0.004608294930875576, + 0.004587155963302752, + 0.004566210045662101, + 0.004545454545454545, + 0.004524886877828055, + 0.0045045045045045045, + 0.004484304932735426, + 0.004464285714285714, + 0.0044444444444444444, + 0.004424778761061948, + 0.004513074642714924, + 0.004580690627202255, + 0.004647288351089482, + 0.004712864374236342, + 0.0047774158523344185, + 0.004840940525587829, + 0.004903436706955138, + 0.004964903269988016, + 0.005025339636301691, + 0.005084745762711865, + 0.005143122128072173, + 0.005200469719845664, + 0.0052567900204430725, + 0.005312084993359893, + 0.0053663570691434475, + 0.005419609131220233, + 0.005471844501612969, + 0.0055230669265757, + 0.005573280562174388, + 0.005622489959839358, + 0.0056707000519148594, + 0.005717916137229989, + 0.005764143866714044, + 0.005809389229078348, + 0.005853658536585367, + 0.005896958410924891, + 0.0059392957692159356, + 0.005980677810151817, + 0.006021112000304867, + 0.006060606060606061, + 0.006099167953013816, + 0.0061368058673851224, + 0.006173528208561121, + 0.0062093435836782975, + 0.006244260789715335, + 0.00627828880128486, + 0.006311436758678225, + 0.006343713956170704, + 0.00637512983059346, + 0.006405693950177937, + 0.006435416003677381, + 0.006464305789769534, + 0.00649237320674369, + 0.006519628242474685, + 0.006546080964685617, + 0.006571741511500548, + 0.006596620082287735, + 0.006620726928793406, + 0.006644072346565551, + 0.006666666666666667, + 0.006688520247673919, + 0.006709643467964742, + 0.006730046718285471, + 0.006749740394600207, + 0.006768734891216761, + 0.006787040594186195, + 0.006804667874972178, + 0.006821627084386053, + 0.006837928546783351, + 0.006853582554517134, + 0.006868599362643482, + 0.00688298918387414, + 0.006896762183771249, + 0.0069099284761789306, + 0.006922498118886381, + 0.006934481109516976, + 0.006945887381637925, + 0.006956726801084778, + 0.0069670091624952435, + 0.006976744186046511, + 0.0069859415143904615, + 0.006994610709780988, + 0.007002761251387743, + 0.007010402532790593, + 0.007017543859649123, + 0.007024194447541532, + 0.007030363419967339, + 0.007036059806508355, + 0.007041292541142437, + 0.007046070460704607, + 0.007050402303490219, + 0.00705429670799487, + 0.007057762211785931, + 0.007060807250500582, + 0.007063440156965337, + 0.0070656691604322535, + 0.0070675023859269005, + 0.007068947853703514, + 0.007070013478802675, + 0.007070707070707072, + 0.007071036333090946, + 0.007071008863658999, + 0.007070632154070558, + 0.007069913589945012, + 0.007068860450944544, + 0.007067479910930392, + 0.007065779038188854, + 0.007063764795723558, + 0.007061444041610388, + 0.007058823529411764, + 0.007055909908646995, + 0.007052709725315518, + 0.007049229422469996, + 0.007045475340836308, + 0.00704145371947757, + 0.007037170696499458, + 0.007032632309794173, + 0.0070278444978204785, + 0.007022813100417393, + 0.007017543859649122, + 0.007012042420678991, + 0.007006314332670183, + 0.007000365049711182, + 0.0069941999317639034, + 0.00698782424563261, + 0.006981243165951721, + 0.006974461776190774, + 0.006967485069674852, + 0.006960317950618811, + 0.006952965235173825, + 0.006945431652484719, + 0.0069377218457566964, + 0.006929840373330128, + 0.006921791709762115, + 0.006913580246913581, + 0.0069052102950408045, + 0.006896686083890199, + 0.006888011763795372, + 0.0068791914067754265, + 0.0068702290076335885, + 0.0068611284850552505, + 0.0068518936827046155, + 0.006842528370319131, + 0.00683303624480095, + 0.006823420931304748, + 0.0068136859843211965, + 0.006803834888755481, + 0.006793871061000289, + 0.006783797850002691, + 0.00677361853832442, + 0.0067633363431950574, + 0.006752954417557681, + 0.00674247585110657, + 0.006731903671316538, + 0.006721240844463593, + 0.006710490276636538, + 0.00669965481473924, + 0.006688737247483279, + 0.0066777403063706985, + 0.006666666666666667, + 0.006622516556291391, + 0.006578947368421052, + 0.006535947712418301, + 0.006493506493506493, + 0.0064516129032258064, + 0.00641025641025641, + 0.006369426751592356, + 0.006329113924050633, + 0.006289308176100628, + 0.0062499999999999995, + 0.006211180124223602, + 0.006172839506172839, + 0.006134969325153374, + 0.0060975609756097554, + 0.0060606060606060615, + 0.006024096385542169, + 0.005988023952095809, + 0.005952380952380953, + 0.00591715976331361, + 0.0058823529411764705, + 0.0058479532163742695, + 0.005813953488372093, + 0.005780346820809249, + 0.005747126436781609, + 0.005714285714285714, + 0.005681818181818182, + 0.005649717514124294, + 0.0056179775280898875, + 0.00558659217877095, + 0.005555555555555556, + 0.0055248618784530384, + 0.005494505494505494, + 0.00546448087431694, + 0.005434782608695652, + 0.005405405405405405, + 0.005376344086021506, + 0.0053475935828877, + 0.0053191489361702135, + 0.005291005291005291, + 0.005263157894736843, + 0.005235602094240837, + 0.005208333333333334, + 0.0051813471502590676, + 0.005154639175257732, + 0.005128205128205128, + 0.005102040816326531, + 0.005076142131979696, + 0.005050505050505051, + 0.005025125628140704, + 0.005, + 0.0049751243781094535, + 0.0049504950495049506, + 0.004926108374384236, + 0.004901960784313725, + 0.004878048780487806, + 0.0048543689320388345, + 0.004830917874396135, + 0.004807692307692308, + 0.004784688995215312, + 0.0047619047619047615, + 0.004739336492890996, + 0.0047169811320754715, + 0.004694835680751174, + 0.004672897196261682, + 0.004651162790697674, + 0.004629629629629629, + 0.004608294930875576, + 0.004587155963302752, + 0.004566210045662101, + 0.004545454545454545, + 0.004524886877828055, + 0.004504504504504505, + 0.004484304932735426, + 0.004464285714285714, + 0.0044444444444444444, + 0.004424778761061948, + 0.004405286343612335, + 0.0043859649122807015, + 0.004366812227074236, + 0.004347826086956522, + 0.004329004329004329, + 0.004310344827586207, + 0.004291845493562232, + 0.004273504273504274, + 0.00425531914893617, + 0.00423728813559322, + 0.004219409282700422, + 0.004201680672268908, + 0.0041841004184100415, + 0.004166666666666667, + 0.004149377593360996, + 0.004132231404958678, + 0.004115226337448559, + 0.004098360655737705, + 0.004081632653061224, + 0.0040650406504065045, + 0.004048582995951418, + 0.004032258064516129, + 0.004016064257028112, + 0.004, + 0.003984063745019921, + 0.003968253968253968, + 0.003952569169960474, + 0.003937007874015748, + 0.00392156862745098, + 0.00390625, + 0.003891050583657587, + 0.003875968992248062, + 0.003861003861003861, + 0.003846153846153846, + 0.0038314176245210726, + 0.003816793893129771, + 0.003802281368821293, + 0.003787878787878788, + 0.003773584905660377, + 0.0037593984962406013, + 0.003745318352059925, + 0.00373134328358209, + 0.003717472118959108, + 0.0037037037037037034, + 0.003690036900369004, + 0.0036764705882352945, + 0.003663003663003663, + 0.0036496350364963502, + 0.0036363636363636364, + 0.003623188405797102, + 0.0036101083032490976, + 0.003597122302158273, + 0.0035842293906810036 + ], + "E": [ + 0.011914285714285714, + 0.011674318431173173, + 0.01144230062134162, + 0.011217858615705487, + 0.011000641572189532, + 0.010790319763492751, + 0.010586583016582093, + 0.010389139288461056, + 0.010197713364531326, + 0.010012045667413288, + 0.009831891165444558, + 0.00965701837126164, + 0.009487208421910948, + 0.009322254232851133, + 0.009161959719015659, + 0.00900613907681675, + 0.008854616121601697, + 0.008707223675630234, + 0.008563803002136638, + 0.008424203281479702, + 0.008288281125775163, + 0.008155900128753694, + 0.008026930447898869, + 0.007901248416197597, + 0.007778736181084501, + 0.0076592813683848005, + 0.0075427767692604905, + 0.007429120048344508, + 0.007318213471409478, + 0.007209963651063348, + 0.007104281309095865, + 0.00700108105421842, + 0.006900281174047264, + 0.006801803440277148, + 0.006705572926080466, + 0.00661151783484682, + 0.006519569339450367, + 0.006429661431298144, + 0.006341730778472546, + 0.006255716592335652, + 0.006171560502012788, + 0.006089206436218191, + 0.006008600511927, + 0.005929690929435683, + 0.005852427873387705, + 0.005776763419372937, + 0.005702651445738383, + 0.005630047550274501, + 0.005558908971465867, + 0.00548919451401739, + 0.00542086447838804, + 0.005353880594083024, + 0.005288205956472866, + 0.005223804966924045, + 0.0051606432760407045, + 0.005098687729830686, + 0.0050379063186218416, + 0.004978268128566341, + 0.00491974329558148, + 0.004862302961585591, + 0.00480591923289692, + 0.004750565140671981, + 0.004696214603267845, + 0.00464284239042029, + 0.004590424089136569, + 0.004538936071207961, + 0.004488355462253253, + 0.004438660112209753, + 0.004389828567193643, + 0.004341840042656236, + 0.004294674397767181, + 0.0042483121109598, + 0.004202734256577632, + 0.004157922482564894, + 0.004113858989146911, + 0.004070526508449759, + 0.0040279082850113125, + 0.0039859880571386135, + 0.003944750039069108, + 0.003904178903895687, + 0.003864259767217733, + 0.0038249781714824855, + 0.003786320070983059, + 0.0037482718174812746, + 0.0037108201464252258, + 0.0036739521637331584, + 0.003637655333116761, + 0.0036019174639184185, + 0.003566726699438356, + 0.0035320715057288593, + 0.0034979406608339693, + 0.0034643232444541957, + 0.0034312086280168306, + 0.0033985864651334776, + 0.003366446682427342, + 0.003334779470713719, + 0.003303575276517965, + 0.0032728247939160307, + 0.0032425189566833686, + 0.003212648930738756, + 0.003183206106870229, + 0.003154182093730946, + 0.003125568711093415, + 0.0030973579833510696, + 0.0030695421332567006, + 0.003042113575887785, + 0.003015064912829195, + 0.002988388926564248, + 0.002962078575065464, + 0.0029361269865768305, + 0.0029105274545797185, + 0.002885273432935002, + 0.0028603585311942335, + 0.0028357765100730926, + 0.0028115212770806136, + 0.0027875868822979876, + 0.002763967514301046, + 0.002740657496220752, + 0.002717651281936313, + 0.0026949434523957623, + 0.002672528712059065, + 0.0026504018854590374, + 0.0026285579138755834, + 0.002606991852118919, + 0.0025856988654176603, + 0.0025646742264078416, + 0.0025439133122190562, + 0.002523411601654123, + 0.0025031646724588013, + 0.0024831681986782284, + 0.0024634179480969064, + 0.002443909779759188, + 0.002424639641567324, + 0.0024056035679542913, + 0.0023867976776286884, + 0.0023682181713891417, + 0.0023498613300057345, + 0.002331723512166089, + 0.002313801152483824, + 0.002296090759567196, + 0.0022785889141458296, + 0.002261292267253511, + 0.0022441975384651152, + 0.002227301514185801, + 0.00221060104599068, + 0.00219409304901325, + 0.002177774500380928, + 0.0021616424376960995, + 0.002145693957561158, + 0.0021299262141460506, + 0.0021143364177969325, + 0.0020989218336845547, + 0.0020836797804910804, + 0.0020686076291340713, + 0.0020537028015264183, + 0.002038962769371063, + 0.002024385052989371, + 0.0020099672201820762, + 0.0019957068851217514, + 0.0019816017072758, + 0.00196764939035899, + 0.001953847681314605, + 0.0019401943693233032, + 0.0019266872848388147, + 0.0019133242986496424, + 0.0019001033209659541, + 0.0018870223005308822, + 0.0018740792237554869, + 0.001861272113876645, + 0.0018485990301371734, + 0.0018360580669874998, + 0.001823647353308234, + 0.0018113650516530073, + 0.0017992093575109678, + 0.0017871784985883433, + 0.0017752707341085064, + 0.0017634843541299873, + 0.0017518176788819048, + 0.001740269058116306, + 0.00172883687047691, + 0.0017175195228837853, + 0.0017063154499334927, + 0.0016952231133142417, + 0.0016842410012356352, + 0.0016733676278725743, + 0.001662601532822924, + 0.0016519412805785423, + 0.0016413854600092965, + 0.0016309326838596957, + 0.0016205815882577865, + 0.0016103308322359656, + 0.0016001790972633753, + 0.0015901250867895612, + 0.001580167525799077, + 0.0015703051603767346, + 0.0015605367572832064, + 0.001550861103540694, + 0.001541277006028389, + 0.0015317832910874602, + 0.0015223788041353065, + 0.0015130624092888243, + 0.0015038329889964504, + 0.0014946894436787398, + 0.0014856306913772533, + 0.0014766556674115337, + 0.001467763324043952, + 0.0014589526301522196, + 0.001450222570909363, + 0.001441572147470964, + 0.0014330003766694754, + 0.00142450629071543, + 0.0014160889369053593, + 0.001407747377336253, + 0.0013994806886263869, + 0.0013912879616423577, + 0.0013831683012321642, + 0.0013751208259641806, + 0.0013671446678718744, + 0.0013592389722041174, + 0.0013514028971809574, + 0.0013436356137547043, + 0.001335936305376202, + 0.0013283041677661543, + 0.0013207384086913836, + 0.0013132382477458913, + 0.0013058029161366082, + 0.0012984316564737185, + 0.00129112372256544, + 0.0012838783792171557, + 0.0012766949020347914, + 0.0012695725772323319, + 0.0012625107014433768, + 0.0012555085815366411, + 0.001248565534435303, + 0.0012416808869401017, + 0.00123485397555611, + 0.001228084146323075, + 0.0012213707546492561, + 0.0012147131651486732, + 0.0012081107514816812, + 0.0012015628961987968, + 0.0011950689905876996, + 0.001188628434523334, + 0.0011822406363210351, + 0.0011759050125926174, + 0.0011696209881053472, + 0.0011633879956437399, + 0.0011572054758741113, + 0.0011510728772118266, + 0.0011449896556911766, + 0.0011389552748378286, + 0.0011329692055437894, + 0.001127030925944825, + 0.0011211399213002793, + 0.0011152956838752421, + 0.0011094977128250087, + 0.0011037455140817812, + 0.0010980386002435645, + 0.0010923764904652038, + 0.0010867587103515174, + 0.0010811847918524818, + 0.0010756542731604165, + 0.0010701666986091323, + 0.0010647216185749955, + 0.0010593185893798664, + 0.0010539571731958725, + 0.0010486369379519764, + 0.0010433574572422982, + 0.0010381183102361553, + 0.0010329190815897829, + 0.0010277593613596985, + 0.0010226387449176757, + 0.0010175568328672907, + 0.0010125132309620137, + 0.0010075075500248036, + 0.001002539405869183, + 0.0009976084192217564, + 0.0009927142156461424, + 0.0009878564254682937, + 0.0009830346837031686, + 0.000978248629982734, + 0.000973497908485267, + 0.0009687821678659275, + 0.0009641010611885813, + 0.000959454245858839, + 0.0009548413835582954, + 0.0009502621401799363, + 0.0009457161857646944, + 0.0009412031944391278, + 0.0009367228443541996, + 0.0009322748176251361, + 0.000927858800272341, + 0.0009234744821633451, + 0.0009191215569557699, + 0.0009147997220412855, + 0.0009105086784905426, + 0.0009062481309990585, + 0.0009020177878340384, + 0.0008978173607821148, + 0.0008936465650979841 + ], + "F": [ + 1.1111111111111112, + 0.5263157894736842, + 0.3448275862068966, + 0.25641025641025644, + 0.2040816326530612, + 0.1694915254237288, + 0.14492753623188406, + 0.12658227848101264, + 0.11235955056179775, + 0.10101010101010101, + 0.09174311926605504, + 0.3333333333333333, + 0.25, + 0.2, + 0.16666666666666666, + 0.14285714285714285, + 0.125, + 0.1111111111111111, + 0.1, + 0.09090909090909091, + 0.08333333333333333, + 0.07692307692307693, + 0.07142857142857142, + 0.06666666666666667, + 0.0625, + 0.058823529411764705, + 0.05555555555555555, + 0.05263157894736842, + 0.05, + 0.047619047619047616, + 0.045454545454545456, + 0.043478260869565216, + 0.041666666666666664, + 0.04, + 0.038461538461538464, + 0.037037037037037035, + 0.03571428571428571, + 0.034482758620689655, + 0.03333333333333333, + 0.03225806451612903, + 0.03125, + 0.030303030303030304, + 0.029411764705882353, + 0.02857142857142857, + 0.027777777777777776, + 0.02702702702702703, + 0.02631578947368421, + 0.02564102564102564, + 0.025, + 0.024390243902439025, + 0.023809523809523808, + 0.023255813953488372, + 0.022727272727272728, + 0.022222222222222223, + 0.021739130434782608, + 0.02127659574468085, + 0.020833333333333332, + 0.02040816326530612, + 0.02, + 0.0196078431372549, + 0.019230769230769232, + 0.018867924528301886, + 0.018518518518518517, + 0.01818181818181818, + 0.017857142857142856, + 0.017543859649122806, + 0.017241379310344827, + 0.01694915254237288, + 0.016666666666666666, + 0.01639344262295082, + 0.016129032258064516, + 0.015873015873015872, + 0.015625, + 0.015384615384615385, + 0.015151515151515152, + 0.014925373134328358, + 0.014705882352941176, + 0.014492753623188406, + 0.014285714285714285, + 0.014084507042253521, + 0.013888888888888888, + 0.0136986301369863, + 0.013513513513513514, + 0.013333333333333334, + 0.013157894736842105, + 0.012987012987012988, + 0.01282051282051282, + 0.012658227848101266, + 0.0125, + 0.012345679012345678, + 0.012195121951219513, + 0.012048192771084338, + 0.011904761904761904, + 0.011764705882352941, + 0.011627906976744186, + 0.011494252873563218, + 0.011363636363636364, + 0.011235955056179775, + 0.011111111111111112, + 0.01098901098901099, + 0.010869565217391304, + 0.010752688172043012, + 0.010638297872340425, + 0.010526315789473684, + 0.010416666666666666, + 0.010309278350515464, + 0.01020408163265306, + 0.010101010101010102, + 0.01, + 0.009900990099009901, + 0.00980392156862745, + 0.009708737864077669, + 0.009615384615384616, + 0.009523809523809525, + 0.009433962264150943, + 0.009345794392523364, + 0.009259259259259259, + 0.009174311926605505, + 0.00909090909090909, + 0.009009009009009009, + 0.008928571428571428, + 0.008849557522123894, + 0.008771929824561403, + 0.008695652173913044, + 0.008620689655172414, + 0.008547008547008548, + 0.00847457627118644, + 0.008403361344537815, + 0.008333333333333333, + 0.008264462809917356, + 0.00819672131147541, + 0.008130081300813009, + 0.008064516129032258, + 0.008, + 0.007936507936507936, + 0.007874015748031496, + 0.0078125, + 0.007751937984496124, + 0.007692307692307693, + 0.007633587786259542, + 0.007575757575757576, + 0.007518796992481203, + 0.007462686567164179, + 0.007407407407407408, + 0.007352941176470588, + 0.0072992700729927005, + 0.007246376811594203, + 0.007194244604316547, + 0.007142857142857143, + 0.0070921985815602835, + 0.007042253521126761, + 0.006993006993006993, + 0.006944444444444444, + 0.006896551724137931, + 0.00684931506849315, + 0.006802721088435374, + 0.006756756756756757, + 0.006711409395973154, + 0.006666666666666667, + 0.006622516556291391, + 0.006578947368421052, + 0.006535947712418301, + 0.006493506493506494, + 0.0064516129032258064, + 0.00641025641025641, + 0.006369426751592357, + 0.006329113924050633, + 0.006289308176100629, + 0.00625, + 0.006211180124223602, + 0.006172839506172839, + 0.006134969325153374, + 0.006097560975609756, + 0.006060606060606061, + 0.006024096385542169, + 0.005988023952095809, + 0.005952380952380952, + 0.005917159763313609, + 0.0058823529411764705, + 0.005847953216374269, + 0.005813953488372093, + 0.005780346820809248, + 0.005747126436781609, + 0.005714285714285714, + 0.005681818181818182, + 0.005649717514124294, + 0.0056179775280898875, + 0.00558659217877095, + 0.005555555555555556, + 0.0055248618784530384, + 0.005494505494505495, + 0.00546448087431694, + 0.005434782608695652, + 0.005405405405405406, + 0.005376344086021506, + 0.0053475935828877, + 0.005319148936170213, + 0.005291005291005291, + 0.005263157894736842, + 0.005235602094240838, + 0.005208333333333333, + 0.0051813471502590676, + 0.005154639175257732, + 0.005128205128205128, + 0.00510204081632653, + 0.005076142131979695, + 0.005050505050505051, + 0.005025125628140704, + 0.005, + 0.004975124378109453, + 0.0049504950495049506, + 0.0049261083743842365, + 0.004901960784313725, + 0.004878048780487805, + 0.0048543689320388345, + 0.004830917874396135, + 0.004807692307692308, + 0.004784688995215311, + 0.004761904761904762, + 0.004739336492890996, + 0.0047169811320754715, + 0.004694835680751174, + 0.004672897196261682, + 0.004651162790697674, + 0.004629629629629629, + 0.004608294930875576, + 0.0045871559633027525, + 0.0045662100456621, + 0.004545454545454545, + 0.004524886877828055, + 0.0045045045045045045, + 0.004484304932735426, + 0.004464285714285714, + 0.0044444444444444444, + 0.004424778761061947, + 0.004405286343612335, + 0.0043859649122807015, + 0.004366812227074236, + 0.004347826086956522, + 0.004329004329004329, + 0.004310344827586207, + 0.004291845493562232, + 0.004273504273504274, + 0.00425531914893617, + 0.00423728813559322, + 0.004219409282700422, + 0.004201680672268907, + 0.0041841004184100415, + 0.004166666666666667, + 0.004149377593360996, + 0.004132231404958678, + 0.00411522633744856, + 0.004098360655737705, + 0.004081632653061225, + 0.0040650406504065045, + 0.004048582995951417, + 0.004032258064516129, + 0.004016064257028112, + 0.004, + 0.00398406374501992, + 0.003968253968253968, + 0.003952569169960474, + 0.003937007874015748, + 0.00392156862745098, + 0.00390625, + 0.0038910505836575876, + 0.003875968992248062, + 0.003861003861003861, + 0.0038461538461538464, + 0.0038314176245210726, + 0.003816793893129771, + 0.0038022813688212928, + 0.003787878787878788, + 0.0037735849056603774, + 0.0037593984962406013, + 0.003745318352059925, + 0.0037313432835820895, + 0.0037174721189591076, + 0.003703703703703704, + 0.0036900369003690036, + 0.003676470588235294, + 0.003663003663003663, + 0.0036496350364963502, + 0.0036363636363636364, + 0.0036231884057971015, + 0.0036101083032490976, + 0.0035971223021582736, + 0.0035842293906810036, + 0.0035714285714285713, + 0.0035587188612099642, + 0.0035460992907801418, + 0.0035335689045936395, + 0.0035211267605633804, + 0.0035087719298245615, + 0.0034965034965034965, + 0.003484320557491289, + 0.003472222222222222, + 0.0034602076124567475, + 0.0034482758620689655, + 0.003436426116838488 + ], + "G": [ + 0.005, + 0.005025125628140704, + 0.005050505050505051, + 0.005076142131979696, + 0.005102040816326531, + 0.005128205128205128, + 0.005154639175257732, + 0.0051813471502590676, + 0.005208333333333334, + 0.005235602094240838, + 0.005263157894736843, + 0.005291005291005292, + 0.0053191489361702135, + 0.0053475935828877, + 0.005376344086021506, + 0.005405405405405405, + 0.005434782608695652, + 0.00546448087431694, + 0.005494505494505494, + 0.0055248618784530384, + 0.005555555555555556, + 0.00558659217877095, + 0.0056179775280898875, + 0.005649717514124294, + 0.005681818181818182, + 0.005714285714285714, + 0.005747126436781609, + 0.005780346820809249, + 0.005813953488372093, + 0.0058479532163742695, + 0.0058823529411764705, + 0.00591715976331361, + 0.005952380952380953, + 0.005988023952095809, + 0.006024096385542169, + 0.0060606060606060615, + 0.0060975609756097554, + 0.006134969325153374, + 0.006172839506172839, + 0.006211180124223603, + 0.0062499999999999995, + 0.006289308176100629, + 0.006329113924050633, + 0.006369426751592356, + 0.00641025641025641, + 0.0064516129032258064, + 0.006493506493506493, + 0.006535947712418301, + 0.006578947368421052, + 0.006622516556291391, + 0.006666666666666667, + 0.006711409395973154, + 0.006756756756756757, + 0.006802721088435375, + 0.006849315068493151, + 0.006896551724137932, + 0.006944444444444445, + 0.006993006993006994, + 0.007042253521126761, + 0.0070921985815602835, + 0.0071428571428571435, + 0.007194244604316546, + 0.007246376811594204, + 0.0072992700729927005, + 0.007352941176470589, + 0.007407407407407407, + 0.00746268656716418, + 0.007518796992481203, + 0.007575757575757577, + 0.007633587786259542, + 0.007692307692307694, + 0.007751937984496124, + 0.0078125, + 0.007874015748031496, + 0.007936507936507936, + 0.008, + 0.008064516129032258, + 0.008130081300813009, + 0.00819672131147541, + 0.008264462809917356, + 0.008333333333333333, + 0.008403361344537816, + 0.00847457627118644, + 0.008547008547008548, + 0.008620689655172414, + 0.008695652173913044, + 0.008771929824561403, + 0.008849557522123895, + 0.008928571428571428, + 0.00900900900900901, + 0.00909090909090909, + 0.009174311926605507, + 0.009259259259259259, + 0.009345794392523366, + 0.009433962264150943, + 0.009523809523809526, + 0.009615384615384616, + 0.009708737864077669, + 0.00980392156862745, + 0.009900990099009901, + 0.01, + 0.010101010101010102, + 0.010204081632653062, + 0.010309278350515464, + 0.010416666666666668, + 0.010526315789473686, + 0.010638297872340427, + 0.010752688172043012, + 0.010869565217391306, + 0.01098901098901099, + 0.011111111111111113, + 0.011235955056179777, + 0.011363636363636366, + 0.01149425287356322, + 0.011627906976744188, + 0.011764705882352943, + 0.011904761904761904, + 0.012048192771084336, + 0.012195121951219511, + 0.012345679012345678, + 0.012499999999999999, + 0.012658227848101266, + 0.01282051282051282, + 0.012987012987012986, + 0.013157894736842105, + 0.013333333333333334, + 0.013513513513513514, + 0.013698630136986302, + 0.01388888888888889, + 0.014084507042253521, + 0.014285714285714287, + 0.014492753623188408, + 0.014705882352941178, + 0.01492537313432836, + 0.015151515151515154, + 0.015384615384615387, + 0.015625000000000003, + 0.015873015873015876, + 0.01612903225806452, + 0.016393442622950824, + 0.01666666666666667, + 0.016949152542372878, + 0.017241379310344827, + 0.017543859649122806, + 0.017857142857142856, + 0.01818181818181818, + 0.018518518518518517, + 0.018867924528301886, + 0.019230769230769232, + 0.0196078431372549, + 0.02, + 0.020408163265306124, + 0.020833333333333336, + 0.021276595744680854, + 0.02173913043478261, + 0.022222222222222227, + 0.02272727272727273, + 0.023255813953488375, + 0.023809523809523815, + 0.02439024390243903, + 0.025000000000000005, + 0.025641025641025647, + 0.02631578947368422, + 0.027027027027027035, + 0.027777777777777787, + 0.028571428571428584, + 0.029411764705882366, + 0.030303030303030297, + 0.031249999999999993, + 0.032258064516129024, + 0.033333333333333326, + 0.034482758620689655, + 0.03571428571428571, + 0.037037037037037035, + 0.038461538461538464, + 0.04, + 0.04166666666666667, + 0.04347826086956522, + 0.04545454545454546, + 0.04761904761904763, + 0.05000000000000001, + 0.05263157894736844, + 0.05555555555555557, + 0.05882352941176473, + 0.06250000000000003, + 0.06666666666666671, + 0.07142857142857148, + 0.07692307692307698, + 0.08333333333333341, + 0.09090909090909101, + 0.10000000000000013, + 0.11111111111111129, + 0.12499999999999989, + 0.14285714285714274, + 0.16666666666666652, + 0.19999999999999982, + 0.24999999999999978, + 0.33333333333333304, + 0.49999999999999956, + 0.9999999999999991, + "#DIV/0!", + -0.9999999999999769, + -0.49999999999999956, + -0.3333333333333306, + -0.24999999999999978, + -0.2000000000000007, + -0.16666666666666652, + -0.14285714285714318, + -0.12499999999999989, + -0.11111111111111129, + -0.09999999999999991, + -0.09090909090909101, + -0.08333333333333326, + -0.07692307692307698, + -0.07142857142857137, + -0.06666666666666671, + -0.062499999999999944, + -0.05882352941176473, + -0.05555555555555551, + -0.05263157894736844, + -0.049999999999999954, + -0.04761904761904763, + -0.045454545454545414, + -0.04347826086956522, + -0.04166666666666663, + -0.04, + -0.03846153846153843, + -0.037037037037037035, + -0.035714285714285685, + -0.034482758620689655, + -0.033333333333333305, + -0.032258064516129024, + -0.031250000000000014, + -0.030303030303030297, + -0.029411764705882366, + -0.028571428571428564, + -0.027777777777777787, + -0.027027027027027018, + -0.02631578947368422, + -0.025641025641025633, + -0.025000000000000005, + -0.024390243902439015, + -0.023809523809523815, + -0.023255813953488365, + -0.02272727272727273, + -0.022222222222222213, + -0.02173913043478261, + -0.021276595744680844, + -0.020833333333333336, + -0.020408163265306114, + -0.02, + -0.019607843137254895, + -0.019230769230769232, + -0.01886792452830188, + -0.018518518518518517, + -0.018181818181818174, + -0.017857142857142856, + -0.017543859649122813, + -0.017241379310344827, + -0.016949152542372885, + -0.016666666666666663, + -0.016393442622950824, + -0.016129032258064512, + -0.015873015873015876, + -0.015624999999999997, + -0.015384615384615387, + -0.015151515151515148, + -0.01492537313432836, + -0.014705882352941173, + -0.014492753623188408, + -0.014285714285714282, + -0.014084507042253521, + -0.013888888888888885, + -0.013698630136986302, + -0.013513513513513509, + -0.013333333333333334, + -0.013157894736842101, + -0.012987012987012986, + -0.012820512820512817, + -0.012658227848101266, + -0.012499999999999995, + -0.012345679012345678, + -0.012195121951219514, + -0.012048192771084336, + -0.011904761904761908, + -0.011764705882352941, + -0.011627906976744188, + -0.011494252873563216, + -0.011363636363636366, + -0.011235955056179773, + -0.011111111111111113, + -0.010989010989010988, + -0.010869565217391306, + -0.01075268817204301, + -0.010638297872340427, + -0.010526315789473682, + -0.010416666666666668, + -0.010309278350515462, + -0.010204081632653062, + -0.010101010101010098 + ], + "H": [ + 0.005940707661932887, + 0.005905624075737803, + 0.005870952437674326, + 0.0058366855345075574, + 0.0058028163204308925, + 0.005769337912235217, + 0.005736243584648859, + 0.005703526765828526, + 0.005671181033012784, + 0.005639200108317199, + 0.005607577854671586, + 0.005576308271895369, + 0.005545385492900401, + 0.005514803780022559, + 0.005484557521471478, + 0.005454641227897961, + 0.0054250495290733, + 0.0053957771706745206, + 0.0053668190111750835, + 0.005338170018832855, + 0.00530982526877799, + 0.005281779940187414, + 0.0052540293135538985, + 0.005226568768037287, + 0.005199393778899664, + 0.005172499915020445, + 0.005145882836485871, + 0.0051195382922570865, + 0.0050934621179044015, + 0.005067650233413712, + 0.005042098641057979, + 0.005016803423335103, + 0.004991760740961304, + 0.004966966830933117, + 0.0049424180046393484, + 0.0049181106460334245, + 0.004894041209857258, + 0.0048702062199164065, + 0.004846602267408295, + 0.004823226009295523, + 0.004800074166728008, + 0.004777143523509997, + 0.004754430924610364, + 0.004731933274716216, + 0.004709647536824235, + 0.004687570730877999, + 0.004665699932435707, + 0.004644032271380771, + 0.004622564930666151, + 0.004601295145092887, + 0.004580220200122609, + 0.0045593374307233425, + 0.0045386442202450805, + 0.004518137999328209, + 0.00449781624483836, + 0.004477676478832793, + 0.004457716267552092, + 0.004437933220441392, + 0.004418324989193145, + 0.004398889266820527, + 0.004379623786752385, + 0.004360526321949942, + 0.004341594684051042, + 0.004322826722532369, + 0.004304220323896546, + 0.004285773410877658, + 0.0042674839416694255, + 0.004249349909169364, + 0.004231369340247815, + 0.004213540295029405, + 0.004195860866197387, + 0.004178329178311957, + 0.0041609433871483414, + 0.004143701679048206, + 0.004126602270292379, + 0.004109643406480901, + 0.004092823361937725, + 0.004076140439122078, + 0.0040595929680584675, + 0.004043179305780242, + 0.004026897835784027, + 0.004010746967500589, + 0.003994725135776367, + 0.003978830800367206, + 0.00396306244544542, + 0.003947418579118178, + 0.00393189773295588, + 0.003916498461533635, + 0.0039012193419827312, + 0.0038860589735512097, + 0.0038710159771762065, + 0.003856088995066953, + 0.0038412766902942153, + 0.0038265777463937223, + 0.003811990866972481, + 0.003797514775331967, + 0.0037831482140915362, + 0.0037688899448278246, + 0.0037547387477157024, + 0.003740693421184327, + 0.0037267527815716406, + 0.0037129156627975224, + 0.0036991809160351607, + 0.003685547409392864, + 0.0036720140276063074, + 0.003658579671730555, + 0.0036452432588451877, + 0.0036320037217625334, + 0.0036188600087421197, + 0.0036058110832140056, + 0.0035928559235045565, + 0.003579993522571101, + 0.003567222887739252, + 0.003554543040449998, + 0.0035419530160072377, + 0.003529451863334865, + 0.0035170386447371804, + 0.003504712435661972, + 0.0034924723244755818, + 0.0034803174122324254, + 0.003468246812461384, + 0.0034562596509439825, + 0.003444355065507443, + 0.0034325322058166297, + 0.0034207902331722106, + 0.003409128320310373, + 0.00339754565121142, + 0.0033860414209070377, + 0.003374614835295109, + 0.003363265110956304, + 0.0033519914749766677, + 0.0033407931647684297, + 0.003329669427902804, + 0.0033186195219379044, + 0.003307642714254433, + 0.0032967382818958058, + 0.003285905511405618, + 0.00327514369867532, + 0.0032644521487910083, + 0.0032538301758813226, + 0.0032432771029748952, + 0.0032327922618531346, + 0.0032223749929114476, + 0.003212024645018907, + 0.0032017405753836936, + 0.0031915221494207557, + 0.0031813687406192503, + 0.003171279730417531, + 0.0031612545080730303, + 0.0031512924705447976, + 0.0031413930223658237, + 0.003131555575532019, + 0.003121779549378534, + 0.003112064370470291, + 0.003102409472488743, + 0.003092814296119295, + 0.003083278288948721, + 0.003073800905352586, + 0.003064381606396438, + 0.003055019859731223, + 0.0030457151394926996, + 0.0030364669262052946, + 0.0030272747066817374, + 0.0030181379739320224, + 0.003009056227067486, + 0.0030000289712102113, + 0.0029910557174035457, + 0.0029821359825228377, + 0.0029732692891901724, + 0.0029644551656864415, + 0.0029556931458720737, + 0.002946982769100437, + 0.002938323580139901, + 0.0029297151290927914, + 0.0029211569713196717, + 0.0029126486673598517, + 0.0029041897828590013, + 0.0028957798884934327, + 0.0028874185598983804, + 0.002879105377594726, + 0.0028708399269230522, + 0.002862621797969922, + 0.0028544505855025992, + 0.0028463258889024345, + 0.002838247312098696, + 0.0028302144635052873, + 0.0028222269559552426, + 0.002814284406640777, + 0.002806386437052444, + 0.0027985326729151883, + 0.0027907227441350546, + 0.0027829562847347944, + 0.002775232932803018, + 0.0027675523304324656, + 0.002759914123667606, + 0.0027523179624502347, + 0.002744763500565073, + 0.002737250395587365, + 0.0027297783088315875, + 0.0027223469053001548, + 0.0027149558536341267, + 0.0027076048260623597, + 0.0027002934983544336, + 0.0026930215497724674, + 0.002685788663025157, + 0.0026785945242189246, + 0.0026714388228163966, + 0.002664321251588442, + 0.0026572415065719834, + 0.0026501992870255897, + 0.00264319429538884, + 0.002636226237236805, + 0.002629294821243633, + 0.0026223997591381387, + 0.0026155407656638374, + 0.0026087175585434164, + 0.0026019298584358808, + 0.0025951773888994722, + 0.0025884598763563638, + 0.0025817770500526915, + 0.002575128642023472, + 0.002568514387058185, + 0.00256193402266236, + 0.0025553872890253793, + 0.0025488739289856177, + 0.0025423936879975795, + 0.002535946314095261, + 0.002529531557864617, + 0.0025231491724080346, + 0.002516798913312801, + 0.0025104805386211293, + 0.002504193808799293, + 0.002497938486706097, + 0.0024917143375642326, + 0.0024855211289311896, + 0.0024793586306686155, + 0.002473226614915003, + 0.002467124856058822, + 0.002461053130708102, + 0.002455011217664893, + 0.0024489988978984023, + 0.002443015954518346, + 0.0024370621727480835, + 0.002431137339900191, + 0.0024252412453504846, + 0.002419373680512482, + 0.002413534438814313, + 0.0024077233156729605, + 0.0024019401084707237, + 0.0023961846165327927, + 0.002390456641103267, + 0.002384755985320508, + 0.002379082454198267, + 0.002373435854600592, + 0.0023678159952205124, + 0.0023622226865587237, + 0.0023566557409033795, + 0.002351114972306334, + 0.0023456001965649342, + 0.0023401112312011474, + 0.002334647895440245, + 0.002329210010191707, + 0.0023237973980307913, + 0.002318409883176553, + 0.002313047291475856, + 0.002307709450381834, + 0.0023023961889385713, + 0.0022971073377582307, + 0.0022918427290086196, + 0.0022866021963905414, + 0.0022813855751235845, + 0.0022761927019272488, + 0.002271023415004292, + 0.00226587755402341, + 0.0022607549601039167, + 0.00225565547579909, + 0.0022505789450777414, + 0.002245525213312005, + 0.0022404941272589074, + 0.0022354855350461555, + 0.0022304992861561512, + 0.002225535231410891, + 0.0022205932229586445, + 0.0022156731142570774, + 0.002210774760059264, + 0.002205898016401475, + 0.002201042740586079, + 0.0021962087911693295, + 0.002191396027947823, + 0.0021866043119440626, + 0.002181833505393138, + 0.002177083471730734, + 0.002172354075577587, + 0.0021676451827308263, + 0.002162956660145987, + 0.0021582883759285743, + 0.0021536401993205168, + 0.002149012000687067, + 0.0021444036515054776, + 0.002139815024353675 + ], + "I": [ + 0.010842000000000001, + 0.010623629772367587, + 0.010412493565420873, + 0.010208251340291994, + 0.010010583830692475, + 0.009819190984778403, + 0.009633790545089706, + 0.009454116752499561, + 0.009279919161723507, + 0.009110961557346094, + 0.008947020960554547, + 0.008787886717848092, + 0.008633359663938963, + 0.008483251351894532, + 0.00833738334430425, + 0.008195586559903243, + 0.008057700670657544, + 0.007923573544823514, + 0.007793060731944341, + 0.0076660249861465295, + 0.007542335824455398, + 0.007421869117165862, + 0.0073045067075879705, + 0.007190136058739813, + 0.007078649924786897, + 0.006969946045230169, + 0.006863926860027046, + 0.006760499243993502, + 0.006659574258982625, + 0.0065610669224676465, + 0.006464895991277237, + 0.006370983759338762, + 0.0062792558683830105, + 0.006189641130652204, + 0.006102071362733224, + 0.006016481229710606, + 0.005932808098899835, + 0.005850991902481311, + 0.005770975008410018, + 0.005692702099025443, + 0.005616120056831637, + 0.005541177856958554, + 0.00546782646585357, + 0.005396018745786472, + 0.005325709364782812, + 0.0052568547116293735, + 0.0051894128156219285, + 0.0051233432707497965, + 0.00505860716403394, + 0.004995167007755825, + 0.004932986675333117, + 0.004872031340615552, + 0.004812267420390308, + 0.004753662519900881, + 0.004696185381197041, + 0.0046398058341459245, + 0.004584494749945876, + 0.004530223996995371, + 0.004476966398979147, + 0.004424695695042888, + 0.004373386501936197, + 0.004323014278011503, + 0.004273555288973739, + 0.004224986575282464, + 0.004177285921114278, + 0.004130431824799245, + 0.004084403470650461, + 0.004039180702110875, + 0.003994743996146215, + 0.003951074438817175, + 0.003908153701968135, + 0.0038659640209734183, + 0.003824488173485645, + 0.003783709459134054, + 0.003743611680123689, + 0.003704179122689281, + 0.0036653965393602943, + 0.0036272491319961383, + 0.003589722535552888, + 0.0035528028025450754, + 0.003516476388168137, + 0.003480730136049062, + 0.003445551264594584, + 0.00341092735390796, + 0.0033768463332469554, + 0.0033432964689971744, + 0.0033102663531362525, + 0.003277744892165761, + 0.0032457212964889038, + 0.003214185070213262, + 0.003183126001358912, + 0.003152534152453318, + 0.003122399851495316, + 0.0030927136832714646, + 0.0030634664810088815, + 0.0030346493183494843, + 0.0030062535016313484, + 0.002978270562463588, + 0.0029506922505818656, + 0.0029235105269722677, + 0.0028967175572519083, + 0.002870305705295161, + 0.002844267527095008, + 0.0028185957648494734, + 0.002793283341263598, + 0.002768323354057884, + 0.0027437090706745678, + 0.0027194339231734655, + 0.0026954915033095724, + 0.0026718755577849157, + 0.002648579983667544, + 0.002625598823970852, + 0.0026029262633867527, + 0.0025805566241665144, + 0.0025584843621433585, + 0.0025367040628911687, + 0.0025152104380139523, + 0.0024939983215608846, + 0.002473062666562045, + 0.0024523985416801436, + 0.0024320011279737493, + 0.002411865715767724, + 0.002391987701626781, + 0.0023723625854282166, + 0.002352985967530071, + 0.002333853546031136, + 0.002314961114119341, + 0.002296304557505252, + 0.0022778798519375093, + 0.0022596830607971878, + 0.002241710332768185, + 0.002223957899580861, + 0.002206422073826265, + 0.002189099246838405, + 0.0021719858866421065, + 0.002155078535964119, + 0.0021383738103052186, + 0.002121868396071141, + 0.00210555904876028, + 0.0020894425912061482, + 0.002073515911872705, + 0.002057775963200695, + 0.002042219760003255, + 0.002026844377909079, + 0.002011646951851519, + 0.0019966246746020576, + 0.0019817747953466444, + 0.0019670946183034505, + 0.001952581501380654, + 0.0019382328548729062, + 0.0019240461401952087, + 0.0019100188686529448, + 0.0018961486002468833, + 0.001882432942512005, + 0.0018688695493890408, + 0.0018554561201276675, + 0.0018421903982203279, + 0.0018290701703656894, + 0.0018160932654607937, + 0.001803257553620978, + 0.001790560945226681, + 0.0017780013899962904, + 0.0017655768760842059, + 0.0017532854292033214, + 0.0017411251117711746, + 0.0017290940220790183, + 0.0017171902934831028, + 0.001705412093617493, + 0.001693757623627747, + 0.0016822251174248278, + 0.0016708128409586248, + 0.0016595190915104931, + 0.0016483421970042366, + 0.0016372805153349807, + 0.0016263324337153925, + 0.0016154963680387409, + 0.0016047707622582885, + 0.0015941540877825334, + 0.0015836448428858385, + 0.0015732415521339882, + 0.0015629427658242446, + 0.0015527470594394785, + 0.00154265303311596, + 0.001532659311124428, + 0.0015227645413640426, + 0.0015129673948688607, + 0.0015032665653264734, + 0.0014936607686084598, + 0.0014841487423123232, + 0.0014747292453145858, + 0.0014654010573347286, + 0.0014561629785096715, + 0.0014470138289785007, + 0.00143795244847716, + 0.0014289776959428284, + 0.0014200884491277178, + 0.0014112836042220315, + 0.001402562075485834, + 0.001393922794889589, + 0.001385364711763129, + 0.0013768867924528303, + 0.0013684880199867698, + 0.0013601673937476532, + 0.0013519239291533006, + 0.0013437566573444957, + 0.0013356646248799964, + 0.0013276468934385198, + 0.0013197025395275204, + 0.0013118306541985772, + 0.0013040303427692226, + 0.0012963007245510414, + 0.001288640932583877, + 0.0012810501133759902, + 0.0012735274266500122, + 0.0012660720450945455, + 0.0012586831541212694, + 0.0012513599516274043, + 0.0012441016477634057, + 0.001236907464705747, + 0.0012297766364346712, + 0.001222708408516781, + 0.001215702037892344, + 0.0012087567926672004, + 0.001201871951909159, + 0.001195046805448761, + 0.0011882806536843136, + 0.001181572807391084, + 0.0011749225875345504, + 0.0011683293250876118, + 0.0011617923608516602, + 0.001155311045281422, + 0.0011488847383134728, + 0.0011425128091983434, + 0.0011361946363361258, + 0.0011299296071154926, + 0.00112371711775606, + 0.0011175565731539982, + 0.0011114473867308231, + 0.0011053889802852927, + 0.00109938078384833, + 0.001093422235540905, + 0.0010875127814348067, + 0.001081651875416234, + 0.001075838979052142, + 0.0010700735614592818, + 0.001064355099175866, + 0.0010586830760358032, + 0.0010530569830454414, + 0.0010474763182627622, + 0.0010419405866789707, + 0.001036449300102424, + 0.0010310019770448484, + 0.0010255981426097907, + 0.0010202373283832542, + 0.0010149190723264703, + 0.001009642918670758, + 0.001004408417814421, + 0.0009992151262216437, + 0.0009940626063233355, + 0.000988950426419881, + 0.0009838781605857585, + 0.000978845388575979, + 0.0009738516957343105, + 0.0009688966729032459, + 0.0009639799163356785, + 0.000959101027608244, + 0.0009542596135362985, + 0.0009494552860904914, + 0.0009446876623149014, + 0.0009399563642467024, + 0.0009352610188373256, + 0.0009306012578750849, + 0.0009259767179092346, + 0.0009213870401754325, + 0.0009168318705225714, + 0.0009123108593409566, + 0.0009078236614917983, + 0.0009033699362379897, + 0.0008989493471761473, + 0.0008945615621698834, + 0.000890206253284288, + 0.0008858830967215929, + 0.000881591772757994, + 0.000877331965681609, + 0.0008731033637315435, + 0.0008689056590380489, + 0.0008647385475637421, + 0.000860601729045872, + 0.0008564949069396064, + 0.0008524177883623217, + 0.0008483700840388738, + 0.0008443515082478303, + 0.000840361778768644, + 0.0008364006168297506, + 0.0008324677470575698, + 0.0008285628974263937, + 0.0008246857992091432, + 0.000820836186928975, + 0.0008170137983117245, + 0.0008132183742391656 + ], + "J": [ + 0.008465811147289792, + 0.008394742839778167, + 0.008324857799374695, + 0.008256126718469814, + 0.008188521249397902, + 0.008122013965453877, + 0.008056578323794248, + 0.007992188630117171, + 0.007928820005022784, + 0.007866448351961272, + 0.0078050503266819705, + 0.007744603308102047, + 0.0076850853705184834, + 0.007626475257091587, + 0.007568752354532691, + 0.007511896668932699, + 0.007455888802671975, + 0.007400709932355503, + 0.007346341787720641, + 0.007292766631467794, + 0.00723996723996724, + 0.007187926884798023, + 0.007136629315077341, + 0.007086058740541234, + 0.007036199815339554, + 0.006987037622510275, + 0.006938557659100186, + 0.006890745821900724, + 0.0068435883937695485, + 0.006797072030509935, + 0.006751183748281655, + 0.006705910911518389, + 0.006661241221328029, + 0.006617162704353555, + 0.006573663702073233, + 0.0065307328605200944, + 0.006488359120401633, + 0.006446531707601657, + 0.006405240124047184, + 0.006364474138924088, + 0.00638745714902209, + 0.006417683273132056, + 0.006447071238021074, + 0.006475630883433038, + 0.006503372144678446, + 0.006530305042723691, + 0.006556439674569673, + 0.006581786203920669, + 0.00660635485214381, + 0.006630155889518962, + 0.006653199626778259, + 0.006675496406934006, + 0.006697056597393299, + 0.00671789058235714, + 0.006738008755501512, + 0.006757421512937486, + 0.006776139246447027, + 0.0067941723369909475, + 0.006811531148485036, + 0.006828226021840244, + 0.006844267269262483, + 0.0068596651688074125, + 0.006874429959185387, + 0.006888571834811557, + 0.006902100941095985, + 0.006915027369968471, + 0.006927361155632712, + 0.006939112270544304, + 0.006950290621606998, + 0.006960906046581632, + 0.006970968310702013, + 0.006980487103492099, + 0.006989472035778728, + 0.006997932636894199, + 0.0070058783520629865, + 0.007013318539966895, + 0.007020262470482986, + 0.007026719322588679, + 0.007032698182428412, + 0.007038208041536391, + 0.007043257795209932, + 0.007047856241028035, + 0.007052012077509878, + 0.007055733902907985, + 0.007059030214130972, + 0.007061909405790766, + 0.007064379769369392, + 0.007066449492500447, + 0.0070681266583605025, + 0.0070694192451658255, + 0.007070335125769799, + 0.007070882067356699, + 0.007071067731227415, + 0.00707089967267296, + 0.007070385340931613, + 0.007069532079225759, + 0.007068347124874455, + 0.0070668376094780595, + 0.007065010559171141, + 0.007062872894940241, + 0.007060431433002933, + 0.007057692885244917, + 0.007054663859711904, + 0.007051350861153165, + 0.007047760291613717, + 0.007043898451072278, + 0.0070397715381221295, + 0.007035385650692202, + 0.00703074678680578, + 0.007025860845374286, + 0.007020733627023748, + 0.007015370834951591, + 0.007009778075811576, + 0.00700396086062463, + 0.006997924605713631, + 0.006991674633660065, + 0.006985216174280721, + 0.0069785543656225675, + 0.006971694254974099, + 0.006964640799891477, + 0.006957398869237865, + 0.006949973244234458, + 0.006942368619521746, + 0.006934589604229617, + 0.0069266407230550095, + 0.006918526417345825, + 0.006910251046189946, + 0.006901818887508178, + 0.006893234139150072, + 0.006884500919991604, + 0.006875623271033696, + 0.006866605156500742, + 0.0068574504649381645, + 0.006848163010308287, + 0.006838746533083648, + 0.006829204701337102, + 0.006819541111827967, + 0.0068097592910836, + 0.006799862696475754, + 0.0067898547172912105, + 0.006779738675796045, + 0.006769517828293172, + 0.006759195366172522, + 0.006748774416953595, + 0.006738258045319838, + 0.006727649254144564, + 0.0067169509855080235, + 0.006706166121705306, + 0.006695297486244792, + 0.00668434784483688, + 0.006673319906372719, + 0.006662216323892757, + 0.006622516556291391, + 0.006578947368421052, + 0.006535947712418301, + 0.006493506493506493, + 0.0064516129032258064, + 0.00641025641025641, + 0.006369426751592356, + 0.006329113924050633, + 0.006289308176100628, + 0.0062499999999999995, + 0.006211180124223602, + 0.006172839506172839, + 0.006134969325153374, + 0.0060975609756097554, + 0.0060606060606060615, + 0.006024096385542169, + 0.005988023952095809, + 0.005952380952380953, + 0.00591715976331361, + 0.0058823529411764705, + 0.0058479532163742695, + 0.005813953488372093, + 0.005780346820809249, + 0.005747126436781609, + 0.005714285714285714, + 0.005681818181818182, + 0.005649717514124294, + 0.0056179775280898875, + 0.00558659217877095, + 0.005555555555555556, + 0.0055248618784530384, + 0.005494505494505494, + 0.00546448087431694, + 0.005434782608695652, + 0.005405405405405405, + 0.005376344086021506, + 0.0053475935828877, + 0.0053191489361702135, + 0.005291005291005291, + 0.005263157894736843, + 0.005235602094240837, + 0.005208333333333334, + 0.0051813471502590676, + 0.005154639175257732, + 0.005128205128205128, + 0.005102040816326531, + 0.005076142131979696, + 0.005050505050505051, + 0.005025125628140704, + 0.005, + 0.0049751243781094535, + 0.0049504950495049506, + 0.004926108374384236, + 0.004901960784313725, + 0.004878048780487806, + 0.0048543689320388345, + 0.004830917874396135, + 0.004807692307692308, + 0.004784688995215312, + 0.0047619047619047615, + 0.004739336492890996, + 0.0047169811320754715, + 0.004694835680751174, + 0.004672897196261682, + 0.004651162790697674, + 0.004629629629629629, + 0.004608294930875576, + 0.004587155963302752, + 0.004566210045662101, + 0.004545454545454545, + 0.004524886877828055, + 0.004504504504504505, + 0.004484304932735426, + 0.004464285714285714, + 0.0044444444444444444, + 0.004424778761061948, + 0.004405286343612335, + 0.0043859649122807015, + 0.004366812227074236, + 0.004347826086956522, + 0.004329004329004329, + 0.004310344827586207, + 0.004291845493562232, + 0.004273504273504274, + 0.00425531914893617, + 0.00423728813559322, + 0.004219409282700422, + 0.004201680672268908, + 0.0041841004184100415, + 0.004166666666666667, + 0.004149377593360996, + 0.004132231404958678, + 0.004115226337448559, + 0.004098360655737705, + 0.004081632653061224, + 0.0040650406504065045, + 0.004048582995951418, + 0.004032258064516129, + 0.004016064257028112, + 0.004, + 0.003984063745019921, + 0.003968253968253968, + 0.003952569169960474, + 0.003937007874015748, + 0.00392156862745098, + 0.00390625, + 0.003891050583657587, + 0.003875968992248062, + 0.003861003861003861, + 0.003846153846153846, + 0.0038314176245210726, + 0.003816793893129771, + 0.003802281368821293, + 0.003787878787878788, + 0.003773584905660377, + 0.0037593984962406013, + 0.003745318352059925, + 0.00373134328358209, + 0.003717472118959108, + 0.0037037037037037034, + 0.003690036900369004, + 0.0036764705882352945, + 0.003663003663003663, + 0.0036496350364963502, + 0.0036363636363636364, + 0.003623188405797102, + 0.0036101083032490976, + 0.003597122302158273, + 0.0035842293906810036, + 0.0035714285714285718, + 0.0035587188612099642, + 0.0035460992907801418, + 0.0035335689045936395, + 0.0035211267605633804, + 0.0035087719298245615, + 0.003496503496503496, + 0.003484320557491289, + 0.0034722222222222225, + 0.0034602076124567475, + 0.003448275862068965, + 0.003436426116838488, + 0.0034246575342465756, + 0.003412969283276451, + 0.0034013605442176874, + 0.003389830508474576, + 0.0033783783783783786, + 0.0033670033670033673, + 0.003355704697986577 + ], + "K": [ + 0.0044603033006244425, + 0.004440497335701599, + 0.0045130746427149235, + 0.004580690627202255, + 0.004647288351089482, + 0.004712864374236342, + 0.0047774158523344185, + 0.004840940525587829, + 0.004903436706955138, + 0.004964903269988016, + 0.00502533963630169, + 0.005084745762711865, + 0.005143122128072172, + 0.005200469719845663, + 0.0052567900204430725, + 0.0053120849933598925, + 0.005366357069143447, + 0.005419609131220233, + 0.005471844501612969, + 0.005523066926575699, + 0.005573280562174388, + 0.005622489959839358, + 0.0056707000519148594, + 0.005717916137229988, + 0.005764143866714044, + 0.005809389229078348, + 0.005853658536585366, + 0.005896958410924891, + 0.0059392957692159356, + 0.0059806778101518165, + 0.006021112000304867, + 0.006060606060606061, + 0.006099167953013816, + 0.006136805867385121, + 0.006173528208561121, + 0.006209343583678297, + 0.006244260789715335, + 0.00627828880128486, + 0.006311436758678225, + 0.006343713956170704, + 0.00637512983059346, + 0.006405693950177937, + 0.006435416003677381, + 0.006464305789769534, + 0.00649237320674369, + 0.006519628242474685, + 0.006546080964685616, + 0.006571741511500548, + 0.006596620082287735, + 0.006620726928793406, + 0.0066440723465655506, + 0.006666666666666667, + 0.006688520247673919, + 0.006709643467964742, + 0.006730046718285471, + 0.006749740394600207, + 0.00676873489121676, + 0.006787040594186195, + 0.006804667874972178, + 0.006821627084386053, + 0.006837928546783351, + 0.006853582554517134, + 0.006868599362643483, + 0.006882989183874139, + 0.006896762183771249, + 0.0069099284761789306, + 0.006922498118886381, + 0.006934481109516976, + 0.006945887381637924, + 0.006956726801084778, + 0.0069670091624952435, + 0.006976744186046511, + 0.0069859415143904615, + 0.006994610709780988, + 0.007002761251387742, + 0.007010402532790593, + 0.007017543859649123, + 0.007024194447541532, + 0.007030363419967339, + 0.007036059806508356, + 0.007041292541142436, + 0.007046070460704606, + 0.007050402303490219, + 0.00705429670799487, + 0.007057762211785932, + 0.007060807250500581, + 0.007063440156965336, + 0.0070656691604322535, + 0.0070675023859269005, + 0.007068947853703514, + 0.0070700134788026755, + 0.007070707070707071, + 0.007071036333090945, + 0.007071008863658999, + 0.007070632154070558, + 0.007069913589945012, + 0.0070688604509445445, + 0.007067479910930391, + 0.0070657790381888535, + 0.007063764795723558, + 0.007061444041610388, + 0.007058823529411765, + 0.007055909908646994, + 0.007052709725315517, + 0.007049229422469996, + 0.007045475340836308, + 0.00704145371947757, + 0.0070371706964994585, + 0.007032632309794172, + 0.0070278444978204785, + 0.007022813100417393, + 0.007017543859649122, + 0.007012042420678991, + 0.007006314332670183, + 0.007000365049711182, + 0.006994199931763902, + 0.00698782424563261, + 0.006981243165951721, + 0.006974461776190774, + 0.006967485069674852, + 0.006960317950618809, + 0.006952965235173825, + 0.006945431652484719, + 0.0069377218457566964, + 0.0069298403733301294, + 0.006921791709762113, + 0.006913580246913581, + 0.0069052102950408045, + 0.006896686083890199, + 0.006888011763795372, + 0.0068791914067754265, + 0.0068702290076335885, + 0.006861128485055249, + 0.0068518936827046155, + 0.006842528370319131, + 0.00683303624480095, + 0.00682342093130475, + 0.006813685984321195, + 0.006803834888755481, + 0.006793871061000289, + 0.006783797850002691, + 0.006773618538324421, + 0.0067633363431950574, + 0.006752954417557682, + 0.00674247585110657, + 0.006731903671316538, + 0.006721240844463593, + 0.006710490276636538, + 0.006699654814739241, + 0.006688737247483278, + 0.0066777403063706985, + 0.006666666666666667, + 0.006666666666666667, + 0.006622516556291391, + 0.006578947368421052, + 0.006535947712418301, + 0.006493506493506493, + 0.0064516129032258064, + 0.00641025641025641, + 0.006369426751592356, + 0.006329113924050633, + 0.006289308176100628, + 0.0062499999999999995, + 0.006211180124223602, + 0.006172839506172839, + 0.006134969325153374, + 0.0060975609756097554, + 0.0060606060606060615, + 0.006024096385542169, + 0.005988023952095809, + 0.005952380952380953, + 0.00591715976331361, + 0.0058823529411764705, + 0.0058479532163742695, + 0.005813953488372093, + 0.005780346820809249, + 0.005747126436781609, + 0.005714285714285714, + 0.005681818181818182, + 0.005649717514124294, + 0.0056179775280898875, + 0.00558659217877095, + 0.005555555555555556, + 0.0055248618784530384, + 0.005494505494505494, + 0.00546448087431694, + 0.005434782608695652, + 0.005405405405405405, + 0.005376344086021506, + 0.0053475935828877, + 0.0053191489361702135, + 0.005291005291005291, + 0.005263157894736843, + 0.005235602094240837, + 0.005208333333333334, + 0.0051813471502590676, + 0.005154639175257732, + 0.005128205128205128, + 0.005102040816326531, + 0.005076142131979696, + 0.005050505050505051, + 0.005025125628140704, + 0.005, + 0.0049751243781094535, + 0.0049504950495049506, + 0.004926108374384236, + 0.004901960784313725, + 0.004878048780487806, + 0.0048543689320388345, + 0.004830917874396135, + 0.004807692307692308, + 0.004784688995215312, + 0.0047619047619047615, + 0.004739336492890996, + 0.0047169811320754715, + 0.004694835680751174, + 0.004672897196261682, + 0.004651162790697674, + 0.004629629629629629, + 0.004608294930875576, + 0.004587155963302752, + 0.004566210045662101, + 0.004545454545454545, + 0.004524886877828055, + 0.004504504504504505, + 0.004484304932735426, + 0.004464285714285714, + 0.0044444444444444444, + 0.004424778761061948, + 0.004405286343612335, + 0.0043859649122807015, + 0.004366812227074236, + 0.004347826086956522, + 0.004329004329004329, + 0.004310344827586207, + 0.004291845493562232, + 0.004273504273504274, + 0.00425531914893617, + 0.00423728813559322, + 0.004219409282700422, + 0.004201680672268908, + 0.0041841004184100415, + 0.004166666666666667, + 0.004149377593360996, + 0.004132231404958678, + 0.004115226337448559, + 0.004098360655737705, + 0.004081632653061224, + 0.0040650406504065045, + 0.004048582995951418, + 0.004032258064516129, + 0.004016064257028112, + 0.004, + 0.003984063745019921, + 0.003968253968253968, + 0.003952569169960474, + 0.003937007874015748, + 0.00392156862745098, + 0.00390625, + 0.003891050583657587, + 0.003875968992248062, + 0.003861003861003861, + 0.003846153846153846, + 0.0038314176245210726, + 0.003816793893129771, + 0.003802281368821293, + 0.003787878787878788, + 0.003773584905660377, + 0.0037593984962406013, + 0.003745318352059925, + 0.00373134328358209, + 0.003717472118959108, + 0.0037037037037037034, + 0.003690036900369004, + 0.0036764705882352945, + 0.003663003663003663, + 0.0036496350364963502, + 0.0036363636363636364, + 0.003623188405797102, + 0.0036101083032490976, + 0.003597122302158273, + 0.0035842293906810036, + 0.0035714285714285718, + 0.0035587188612099642, + 0.0035460992907801418, + 0.0035335689045936395, + 0.0035211267605633804, + 0.0035087719298245615, + 0.003496503496503496, + 0.003484320557491289, + 0.0034722222222222225, + 0.0034602076124567475, + 0.003448275862068965, + 0.003436426116838488, + 0.0034246575342465756, + 0.003412969283276451, + 0.0034013605442176874, + 0.003389830508474576, + 0.0033783783783783786, + 0.0033670033670033673 + ], + "L": [ + 0.012096774193548387, + 0.01195219123505976, + 0.011811023622047244, + 0.011673151750972763, + 0.011538461538461537, + 0.011406844106463879, + 0.011278195488721804, + 0.011152416356877323, + 0.011029411764705881, + 0.010909090909090908, + 0.01079136690647482, + 0.010676156583629892, + 0.01056338028169014, + 0.010452961672473867, + 0.010344827586206896, + 0.010238907849829351, + 0.010135135135135136, + 0.010033444816053512, + 0.009933774834437087, + 0.009836065573770493, + 0.00974025974025974, + 0.00964630225080386, + 0.009554140127388535, + 0.00946372239747634, + 0.009375, + 0.009287925696594427, + 0.00920245398773006, + 0.00911854103343465, + 0.009036144578313253, + 0.008955223880597014, + 0.008875739644970414, + 0.008797653958944282, + 0.00872093023255814, + 0.008645533141210374, + 0.008571428571428572, + 0.0084985835694051, + 0.008426966292134831, + 0.008356545961002786, + 0.008287292817679558, + 0.00821917808219178, + 0.008152173913043478, + 0.008086253369272238, + 0.008021390374331552, + 0.007957559681697613, + 0.007894736842105263, + 0.00783289817232376, + 0.007772020725388601, + 0.007712082262210797, + 0.007653061224489796, + 0.00759493670886076, + 0.007537688442211055, + 0.007481296758104738, + 0.007425742574257425, + 0.00737100737100737, + 0.007317073170731708, + 0.007263922518159807, + 0.007211538461538461, + 0.007159904534606206, + 0.007109004739336492, + 0.007058823529411764, + 0.007009345794392524, + 0.006960556844547563, + 0.006912442396313364, + 0.006864988558352404, + 0.006818181818181817, + 0.006772009029345372, + 0.0067264573991031385, + 0.006681514476614699, + 0.006637168141592921, + 0.0065934065934065925, + 0.006550218340611353, + 0.0065075921908893716, + 0.006465517241379309, + 0.006423982869379015, + 0.006382978723404256, + 0.006342494714587737, + 0.0063025210084033615, + 0.00626304801670146, + 0.006224066390041493, + 0.006185567010309279, + 0.006147540983606556, + 0.006109979633401222, + 0.006072874493927126, + 0.006036217303822936, + 0.006, + 0.005964214711729623, + 0.005928853754940711, + 0.005893909626719057, + 0.005859375000000001, + 0.005825242718446601, + 0.005791505791505791, + 0.005758157389635315, + 0.005725190839694656, + 0.0056925996204933585, + 0.005660377358490565, + 0.005628517823639775, + 0.005597014925373135, + 0.005565862708719851, + 0.005535055350553505, + 0.005504587155963303, + 0.005474452554744525, + 0.0054446460980036296, + 0.005415162454873645, + 0.0053859964093357264, + 0.005357142857142857, + 0.005328596802841918, + 0.005300353356890459, + 0.005272407732864675, + 0.005244755244755244, + 0.005217391304347826, + 0.005190311418685122, + 0.005163511187607573, + 0.005136986301369863, + 0.0051107325383304945, + 0.005084745762711864, + 0.00505902192242833, + 0.005033557046979865, + 0.005008347245409015, + 0.004983388704318937, + 0.004958677685950413, + 0.004934210526315789, + 0.004909983633387889, + 0.004885993485342019, + 0.00486223662884927, + 0.004838709677419355, + 0.004815409309791332, + 0.004792332268370607, + 0.004769475357710651, + 0.004746835443037974, + 0.004724409448818898, + 0.0047021943573667705, + 0.004680187207488299, + 0.004658385093167702, + 0.00463678516228748, + 0.004615384615384615, + 0.004594180704441042, + 0.004573170731707317, + 0.004552352048558422, + 0.004531722054380665, + 0.004511278195488721, + 0.004491017964071856, + 0.004470938897168406, + 0.004451038575667655, + 0.004431314623338257, + 0.004411764705882352, + 0.004392386530014641, + 0.004373177842565598, + 0.0043541364296081275, + 0.004335260115606936, + 0.004316546762589928, + 0.004297994269340973, + 0.0042796005706134095, + 0.004261363636363637, + 0.004243281471004243, + 0.004225352112676057, + 0.00420757363253857, + 0.004189944134078212, + 0.004172461752433936, + 0.0041551246537396115, + 0.004137931034482759, + 0.004120879120879121, + 0.004103967168262654, + 0.004087193460490463, + 0.00407055630936228, + 0.004054054054054053, + 0.004037685060565276, + 0.004021447721179625, + 0.004005340453938584, + 0.003989361702127659, + 0.003973509933774834, + 0.003957783641160949, + 0.003942181340341656, + 0.003926701570680628, + 0.003911342894393742, + 0.0038961038961038965, + 0.0038809831824062092, + 0.003865979381443299, + 0.0038510911424903724, + 0.003836317135549872, + 0.003821656050955414, + 0.0038071065989847717, + 0.0037926675094816687, + 0.003778337531486146, + 0.0037641154328732743, + 0.00375, + 0.0037359900373599006, + 0.003722084367245657, + 0.003708281829419036, + 0.0036945812807881776, + 0.003680981595092024, + 0.003667481662591687, + 0.003654080389768575, + 0.003640776699029126, + 0.0036275695284159614, + 0.0036144578313253017, + 0.003601440576230492, + 0.0035885167464114833, + 0.003575685339690107, + 0.003562945368171021, + 0.003550295857988166, + 0.0035377358490566034, + 0.0035252643948296123, + 0.0035128805620608904, + 0.0035005834305717617, + 0.003488372093023255, + 0.003476245654692932, + 0.0034642032332563508, + 0.003452243958573072, + 0.003440366972477064, + 0.0034285714285714284, + 0.0034168564920273345, + 0.0034052213393870596, + 0.003393665158371041, + 0.003382187147688838, + 0.0033707865168539322, + 0.0033594624860022394, + 0.003348214285714285, + 0.003337041156840934, + 0.0033259423503325942, + 0.003314917127071823, + 0.0033039647577092508, + 0.003293084522502744, + 0.0032822757111597373, + 0.003271537622682661, + 0.0032608695652173916, + 0.0032502708559046583, + 0.0032397408207343412, + 0.0032292787944025836, + 0.003218884120171674, + 0.0032085561497326195, + 0.003198294243070363, + 0.003188097768331562, + 0.0031779661016949146, + 0.0031678986272439284, + 0.003157894736842105, + 0.003147953830010493, + 0.003138075313807531, + 0.0031282586027111575, + 0.0031185031185031182, + 0.0031088082901554403, + 0.0030991735537190084, + 0.0030895983522142116, + 0.0030800821355236136, + 0.0030706243602865915, + 0.003061224489795918, + 0.003051881993896236, + 0.0030425963488843813, + 0.0030333670374115265, + 0.0030241935483870967, + 0.0030150753768844224, + 0.003006012024048096, + 0.002997002997002997, + 0.00298804780876494, + 0.002979145978152929, + 0.00297029702970297, + 0.0029615004935834156, + 0.002952755905511811, + 0.0029440628066732086, + 0.002935420743639922, + 0.002926829268292683, + 0.0029182879377431903, + 0.0029097963142580016, + 0.0029013539651837525, + 0.002892960462873674, + 0.0028846153846153843, + 0.0028763183125599234, + 0.0028680688336520073, + 0.002859866539561487, + 0.0028517110266159697, + 0.002843601895734597, + 0.0028355387523629487, + 0.002827521206409048, + 0.002819548872180451, + 0.0028116213683223993, + 0.0028037383177570096, + 0.0027958993476234852, + 0.0027881040892193307, + 0.002780352177942539, + 0.0027726432532347504, + 0.0027649769585253456, + 0.0027573529411764703, + 0.002749770852428964, + 0.002742230347349177, + 0.0027347310847766633, + 0.002727272727272727, + 0.0027198549410698096, + 0.0027124773960216994, + 0.0027051397655545534, + 0.0026978417266187047, + 0.0026905829596412553, + 0.0026833631484794273, + 0.0026761819803746653, + 0.002669039145907473, + 0.0026619343389529724, + 0.0026548672566371677, + 0.0026478375992939097, + 0.002640845070422535, + 0.0026338893766461808, + 0.002626970227670753, + 0.0026200873362445414 + ], + "M": [ + 0.011645962732919254, + 0.011511895625479662, + 0.011380880121396054, + 0.011252813203300824, + 0.011127596439169139, + 0.011005135730007337, + 0.010885341074020317, + 0.010768126346015794, + 0.01065340909090909, + 0.010541110330288123, + 0.01043115438108484, + 0.01032346868547832, + 0.010217983651226158, + 0.010114632501685771, + 0.010013351134846462, + 0.00991407799074686, + 0.00981675392670157, + 0.009721322099805575, + 0.00962772785622593, + 0.009535918626827717, + 0.009445843828715364, + 0.009357454772301934, + 0.009270704573547589, + 0.009185548071034905, + 0.009101941747572815, + 0.009019843656043294, + 0.008939213349225266, + 0.008860011813349083, + 0.008782201405152224, + 0.008705745792222866, + 0.00863060989643268, + 0.008556759840273816, + 0.008484162895927601, + 0.008412787436904092, + 0.008342602892102336, + 0.00827357970215113, + 0.008205689277899343, + 0.008138903960933261, + 0.008073196986006458, + 0.00800854244527496, + 0.007944915254237288, + 0.007882291119285338, + 0.007820646506777894, + 0.007759958613554061, + 0.0077002053388090345, + 0.007641365257259297, + 0.007583417593528817, + 0.007526342197691921, + 0.00747011952191235, + 0.007414730598121602, + 0.007360157016683021, + 0.007306380905991232, + 0.007253384912959381, + 0.007201152184349495, + 0.007149666348903718, + 0.00709891150023663, + 0.007048872180451127, + 0.006999533364442371, + 0.006950880444856347, + 0.006902899217671421, + 0.006855575868372944, + 0.00680889695869269, + 0.006762849413886384, + 0.00671742051052396, + 0.006672597864768683, + 0.006628369421122404, + 0.0065847234416154515, + 0.006541648495420846, + 0.006499133448873484, + 0.006457167455876021, + 0.0064157399486740796, + 0.006374840628984276, + 0.006334459459459458, + 0.00629458665547629, + 0.006255212677231026, + 0.006216328222130128, + 0.006177924217462933, + 0.006139991813344247, + 0.006102522375915378, + 0.00606550748079256, + 0.00602893890675241, + 0.0059928086296444265, + 0.005957108816521049, + 0.0059218318199763115, + 0.005886970172684458, + 0.0058525165821303165, + 0.005818463925523661, + 0.005784805244890089, + 0.005751533742331289, + 0.00571864277544796, + 0.005686125852918878, + 0.005653976630229927, + 0.005622188905547226, + 0.005590756615728662, + 0.0055596738324684945, + 0.0055289347585698485, + 0.005498533724340176, + 0.005468465184104994, + 0.005438723712835387, + 0.005409304002884962, + 0.005380200860832137, + 0.005351409204423832, + 0.005322924059616749, + 0.005294740557712671, + 0.0052668539325842695, + 0.005239259517988123, + 0.005211952744961779, + 0.005184929139301763, + 0.005158184319119669, + 0.005131713992473486, + 0.0051055139550714775, + 0.005079580088046054, + 0.005053908355795148, + 0.005028494803888703, + 0.0050033355570380245, + 0.004978426817125788, + 0.004953764861294583, + 0.004929346040092014, + 0.004905166775670373, + 0.004881223560039049, + 0.0048575129533678756, + 0.004834031582339671, + 0.004810776138550352, + 0.004787743376954995, + 0.004764930114358323, + 0.0047423332279481496, + 0.004719949653870358, + 0.004697776385844033, + 0.004675810473815461, + 0.004654049022649705, + 0.004632489190858554, + 0.004611128189363664, + 0.004589963280293758, + 0.004568991775814803, + 0.004548211036992116, + 0.004527618472683369, + 0.004507211538461538, + 0.004486987735566856, + 0.004466944609886838, + 0.004447079750963533, + 0.004427390791027155, + 0.004407875404055245, + 0.004388531304856641, + 0.004369356248179435, + 0.004350348027842226, + 0.004331504475887958, + 0.004312823461759632, + 0.0042943028914972795, + 0.00427594070695553, + 0.004257734885041158, + 0.004239683436970039, + 0.004221784407542921, + 0.004204035874439462, + 0.004186435947530002, + 0.004168982768204558, + 0.004151674508718517, + 0.004134509371554575, + 0.0041174855888004395, + 0.0041006014215418255, + 0.004083855159270351, + 0.004067245119305857, + 0.0040507696462327835, + 0.004034427111350188, + 0.004018215912135012, + 0.00400213447171825, + 0.003986181238373638, + 0.003970354685018529, + 0.003954653308726601, + 0.003939075630252101, + 0.003923620193565263, + 0.003908285565398645, + 0.003893070334804049, + 0.0038779731127197513, + 0.0038629925315477724, + 0.003848127244740893, + 0.0038333759263991817, + 0.0038187372708757637, + 0.00380420999239158, + 0.003789792824658918, + 0.003775484520513466, + 0.0037612838515546643, + 0.003747189607794154, + 0.0037332005973120955, + 0.00371931564592115, + 0.0037055335968379445, + 0.003691853310361802, + 0.0036782736635605686, + 0.003664793549963352, + 0.0036514118792599806, + 0.0036381275770070334, + 0.003624939584340261, + 0.003611846857693234, + 0.0035988483685220726, + 0.0035859431030360986, + 0.0035731300619342545, + 0.0035604082601471635, + 0.003547776726584674, + 0.0035352345038887575, + 0.0035227806481916393, + 0.0035104142288790077, + 0.0034981343283582086, + 0.0034859400418312805, + 0.0034738304770727192, + 0.003461804754211862, + 0.0034498620055197784, + 0.0034380013752005503, + 0.003426222019186843, + 0.003414523104939676, + 0.003402903811252268, + 0.003391363328057879, + 0.00337990085624155, + 0.0033685156074556477, + 0.0033572068039391225, + 0.0033459736783403964, + 0.003334815473543797, + 0.003323731442499446, + 0.003312720848056537, + 0.003301782962799912, + 0.003290917068889864, + 0.003280122457905095, + 0.003269398430688753, + 0.00325874429719748, + 0.0032481593763533994, + 0.0032376429958989855, + 0.003227194492254733, + 0.0032168132103795838, + 0.0032064985036340315, + 0.003196249733645856, + 0.0031860662701784196, + 0.0031759474910014814, + 0.003165892781764458, + 0.0031559015358720807, + 0.0031459731543624155, + 0.003136107045787163, + 0.0031263026260942056, + 0.003116559318512362, + 0.0031068765534382763, + 0.003097253768325418, + 0.0030876904075751335, + 0.0030781859224297144, + 0.0030687397708674302, + 0.0030593514174994895, + 0.0030500203334688897, + 0.003040745996351105, + 0.0030315278900565883, + 0.0030223655047350393, + 0.003013258336681398, + 0.0030042058882435406, + 0.0029952076677316293, + 0.002986263189329086, + 0.0029773719730051603, + 0.002968533544429052, + 0.0029597474348855564, + 0.002951013181192209, + 0.002942330325617889, + 0.0029336984158028555, + 0.002925117004680187, + 0.0029165856503985997, + 0.0029081039162466072, + 0.002899671370578001, + 0.002891287586738627, + 0.002882952142994426, + 0.0028746646224607126, + 0.002866424613032677, + 0.002858231707317073, + 0.002850085502565077, + 0.00284198560060629, + 0.0028339316077838654, + 0.002825923134890731, + 0.0028179597971068945, + 0.002810041213937804, + 0.0028021670091537454, + 0.002794336810730253, + 0.0027865502507895224, + 0.0027788069655427937, + 0.0027711065952336963, + 0.002763448784082535, + 0.0027558331802314895, + 0.002748259435690729, + 0.002740727206285401, + 0.0027332361516034984, + 0.0027257859349445754, + 0.0027183762232693004, + 0.002711006687149828, + 0.0027036770007209804, + 0.002696386841632213, + 0.002689135891000358, + 0.0026819238333631325, + 0.0026747503566333804, + 0.0026676151520540633, + 0.002660517914153955, + 0.0026534583407040505, + 0.0026464361326746645, + 0.002639450994193208, + 0.0026325026325026324, + 0.002625590757920532, + 0.0026187150837988825, + 0.0026118753264844155, + 0.002605071205279611, + 0.0025983024424042957 + ], + "N": [ + 0.008854616121601697, + 0.008707223675630234, + 0.008563803002136638, + 0.008424203281479702, + 0.008288281125775163, + 0.008155900128753694, + 0.008026930447898869, + 0.007901248416197597, + 0.007778736181084501, + 0.0076592813683848005, + 0.0075427767692604905, + 0.007429120048344508, + 0.007318213471409478, + 0.007209963651063348, + 0.007104281309095865, + 0.00700108105421842, + 0.006900281174047264, + 0.006801803440277148, + 0.006705572926080466, + 0.00661151783484682, + 0.006519569339450367, + 0.006429661431298144, + 0.006341730778472546, + 0.006255716592335652, + 0.006171560502012788, + 0.006089206436218191, + 0.006008600511927, + 0.005929690929435683, + 0.005852427873387705, + 0.005776763419372937, + 0.005702651445738383, + 0.005630047550274501, + 0.005558908971465867, + 0.00548919451401739, + 0.00542086447838804, + 0.005353880594083024, + 0.005288205956472866, + 0.005223804966924045, + 0.0051606432760407045, + 0.005098687729830686, + 0.0050379063186218416, + 0.004978268128566341, + 0.00491974329558148, + 0.004862302961585591, + 0.00480591923289692, + 0.004750565140671981, + 0.004696214603267845, + 0.00464284239042029, + 0.004590424089136569, + 0.004538936071207961, + 0.004488355462253253, + 0.004438660112209753, + 0.004389828567193643, + 0.004341840042656236, + 0.004294674397767181, + 0.0042483121109598, + 0.004202734256577632, + 0.004157922482564894, + 0.004113858989146911, + 0.004070526508449759, + 0.0040279082850113125, + 0.0039859880571386135, + 0.003944750039069108, + 0.003904178903895687, + 0.003864259767217733, + 0.0038249781714824855, + 0.003786320070983059, + 0.0037482718174812746, + 0.0037108201464252258, + 0.0036739521637331584, + 0.003637655333116761, + 0.0036019174639184185, + 0.003566726699438356, + 0.0035320715057288593, + 0.0034979406608339693, + 0.0034643232444541957, + 0.0034312086280168306, + 0.0033985864651334776, + 0.003366446682427342, + 0.003334779470713719, + 0.003303575276517965, + 0.0032728247939160307, + 0.0032425189566833686, + 0.003212648930738756, + 0.003183206106870229, + 0.003154182093730946, + 0.003125568711093415, + 0.0030973579833510696, + 0.0030695421332567006, + 0.003042113575887785, + 0.003015064912829195, + 0.002988388926564248, + 0.002962078575065464, + 0.0029361269865768305, + 0.0029105274545797185, + 0.002885273432935002, + 0.0028603585311942335, + 0.0028357765100730926, + 0.0028115212770806136, + 0.0027875868822979876, + 0.002763967514301046, + 0.002740657496220752, + 0.002717651281936313, + 0.0026949434523957623, + 0.002672528712059065, + 0.0026504018854590374, + 0.0026285579138755834, + 0.002606991852118919, + 0.0025856988654176603, + 0.0025646742264078416, + 0.0025439133122190562, + 0.002523411601654123, + 0.0025031646724588013, + 0.0024831681986782284, + 0.0024634179480969064, + 0.002443909779759188, + 0.002424639641567324, + 0.0024056035679542913, + 0.0023867976776286884, + 0.0023682181713891417, + 0.0023498613300057345, + 0.002331723512166089, + 0.002313801152483824, + 0.002296090759567196, + 0.0022785889141458296, + 0.002261292267253511, + 0.0022441975384651152, + 0.002227301514185801, + 0.00221060104599068, + 0.00219409304901325, + 0.002177774500380928, + 0.0021616424376960995, + 0.002145693957561158, + 0.0021299262141460506, + 0.0021143364177969325, + 0.0020989218336845547, + 0.0020836797804910804, + 0.0020686076291340713, + 0.0020537028015264183, + 0.002038962769371063, + 0.002024385052989371, + 0.0020099672201820762, + 0.0019957068851217514, + 0.0019816017072758, + 0.00196764939035899, + 0.001953847681314605, + 0.0019401943693233032, + 0.0019266872848388147, + 0.0019133242986496424, + 0.0019001033209659541, + 0.0018870223005308822, + 0.0018740792237554869, + 0.001861272113876645, + 0.0018485990301371734, + 0.0018360580669874998, + 0.001823647353308234, + 0.0018113650516530073, + 0.0017992093575109678, + 0.0017871784985883433, + 0.0017752707341085064, + 0.0017634843541299873, + 0.0017518176788819048, + 0.001740269058116306, + 0.00172883687047691, + 0.0017175195228837853, + 0.0017063154499334927, + 0.0016952231133142417, + 0.0016842410012356352, + 0.0016733676278725743, + 0.001662601532822924, + 0.0016519412805785423, + 0.0016413854600092965, + 0.0016309326838596957, + 0.0016205815882577865, + 0.0016103308322359656, + 0.0016001790972633753, + 0.0015901250867895612, + 0.001580167525799077, + 0.0015703051603767346, + 0.0015605367572832064, + 0.001550861103540694, + 0.001541277006028389, + 0.0015317832910874602, + 0.0015223788041353065, + 0.0015130624092888243, + 0.0015038329889964504, + 0.0014946894436787398, + 0.0014856306913772533, + 0.0014766556674115337, + 0.001467763324043952, + 0.0014589526301522196, + 0.001450222570909363, + 0.001441572147470964, + 0.0014330003766694754, + 0.00142450629071543, + 0.0014160889369053593, + 0.001407747377336253, + 0.0013994806886263869, + 0.0013912879616423577, + 0.0013831683012321642, + 0.0013751208259641806, + 0.0013671446678718744, + 0.0013592389722041174, + 0.0013514028971809574, + 0.0013436356137547043, + 0.001335936305376202, + 0.0013283041677661543, + 0.0013207384086913836, + 0.0013132382477458913, + 0.0013058029161366082, + 0.0012984316564737185, + 0.00129112372256544, + 0.0012838783792171557, + 0.0012766949020347914, + 0.0012695725772323319, + 0.0012625107014433768, + 0.0012555085815366411, + 0.001248565534435303, + 0.0012416808869401017, + 0.00123485397555611, + 0.001228084146323075, + 0.0012213707546492561, + 0.0012147131651486732, + 0.0012081107514816812, + 0.0012015628961987968, + 0.0011950689905876996, + 0.001188628434523334, + 0.0011822406363210351, + 0.0011759050125926174, + 0.0011696209881053472, + 0.0011633879956437399, + 0.0011572054758741113, + 0.0011510728772118266, + 0.0011449896556911766, + 0.0011389552748378286, + 0.0011329692055437894, + 0.001127030925944825, + 0.0011211399213002793, + 0.0011152956838752421, + 0.0011094977128250087, + 0.0011037455140817812, + 0.0010980386002435645, + 0.0010923764904652038, + 0.0010867587103515174, + 0.0010811847918524818, + 0.0010756542731604165, + 0.0010701666986091323, + 0.0010647216185749955, + 0.0010593185893798664, + 0.0010539571731958725, + 0.0010486369379519764, + 0.0010433574572422982, + 0.0010381183102361553, + 0.0010329190815897829, + 0.0010277593613596985, + 0.0010226387449176757, + 0.0010175568328672907, + 0.0010125132309620137, + 0.0010075075500248036, + 0.001002539405869183, + 0.0009976084192217564, + 0.0009927142156461424, + 0.0009878564254682937, + 0.0009830346837031686, + 0.000978248629982734, + 0.000973497908485267, + 0.0009687821678659275, + 0.0009641010611885813, + 0.000959454245858839, + 0.0009548413835582954, + 0.0009502621401799363, + 0.0009457161857646944, + 0.0009412031944391278, + 0.0009367228443541996, + 0.0009322748176251361, + 0.000927858800272341, + 0.0009234744821633451, + 0.0009191215569557699, + 0.0009147997220412855, + 0.0009105086784905426, + 0.0009062481309990585, + 0.0009020177878340384, + 0.0008978173607821148, + 0.0008936465650979841, + 0.0008895051194539249, + 0.0008853927458901798, + 0.0008813091697661838, + 0.0008772541197126216, + 0.0008732273275843004, + 0.0008692285284138195, + 0.0008652574603660209, + 0.00086131386469321, + 0.0008573974856911257, + 0.0008535080706556496, + 0.0008496453698402383, + 0.000845809136414065, + 0.0008419991264208584, + 0.000838215098738422, + 0.0008344568150388249, + 0.0008307240397492487 + ], + "O": [ + 0.006672000000000001, + 0.006537618321456978, + 0.0064076883479513074, + 0.006282000824795074, + 0.006160359280426139, + 0.006042579067555941, + 0.005928486489285973, + 0.0058179180015381915, + 0.005710719484137543, + 0.005606745573751442, + 0.005505859052648953, + 0.005407930287906519, + 0.005312836716270131, + 0.005220462370396635, + 0.005130697442648769, + 0.005043437883017381, + 0.004958585028096951, + 0.004876045258352932, + 0.004795729681196518, + 0.004717553837628633, + 0.004641437430434091, + 0.0045673040721020694, + 0.004495081050823367, + 0.004424699113070654, + 0.004356092261407321, + 0.004289197566295489, + 0.0042239549907858755, + 0.004160307227072925, + 0.004098199543989308, + 0.004037579644595475, + 0.0039783975330936845, + 0.003920605390362315, + 0.003864157457466468, + 0.003809009926555203, + 0.003755120838605061, + 0.0037024499875142197, + 0.003650958830092206, + 0.0036006104015269607, + 0.003551369235944626, + 0.003503201291707965, + 0.0034560738811271613, + 0.0034099556042821873, + 0.00336481628667912, + 0.003320626920483983, + 0.0032773596090971153, + 0.0032349875148488453, + 0.003193484809613495, + 0.003152826628153721, + 0.003112989024020886, + 0.0030739489278497384, + 0.003035684107897303, + 0.002998173132686494, + 0.002961395335624805, + 0.002925330781477465, + 0.0028899602345827946, + 0.002855265128705184, + 0.0028212275384282316, + 0.0027878301519971512, + 0.002755056245525629, + 0.0027228896584879313, + 0.0026913147704222757, + 0.0026603164787763096, + 0.0026298801778299936, + 0.002599991738635363, + 0.0025706374899164787, + 0.002541804199876458, + 0.002513479058861822, + 0.002485649662837462, + 0.00245830399762844, + 0.0024314304238874924, + 0.002405017662749622, + 0.0023790547821374883, + 0.002353531183683474, + 0.002328436590236341, + 0.0023037610339222705, + 0.0022794948447318656, + 0.0022556286396063353, + 0.0022321533119976237, + 0.0022090600218787003, + 0.002186340186181585, + 0.0021639854696419306, + 0.002141987776030192, + 0.0021203392397505134, + 0.002099032217789514, + 0.002078059281998127, + 0.002057413211690569, + 0.002037086986545386, + 0.0020170737797943145, + 0.0019973669516854795, + 0.0019779600432081614, + 0.001958846770067023, + 0.0019400210168943497, + 0.0019214768316894253, + 0.0019032084204747477, + 0.0018852101421593117, + 0.0018674765035996826, + 0.0018500021548500606, + 0.0018327818845929773, + 0.0018158106157426866, + 0.0017990834012137035, + 0.0017825954198473284, + 0.0017663419724893298, + 0.0017503184782123127, + 0.001734520470676599, + 0.0017189435946237525, + 0.0017035836024971596, + 0.0016884363511843494, + 0.001673497798875979, + 0.00165876400203666, + 0.0016442311124830252, + 0.0016298953745646425, + 0.0016157531224436012, + 0.0016018007774687708, + 0.001588034845640932, + 0.0015744519151651437, + 0.0015610486540868732, + 0.001547821808008586, + 0.0015347681978836213, + 0.0015218847178843354, + 0.001509168333341627, + 0.0014966160787530764, + 0.001484225055857061, + 0.0014719924317703268, + 0.0014599154371865949, + 0.00144799136463389, + 0.0014362175667883914, + 0.0014245914548426716, + 0.0014131104969263089, + 0.0014017722165769288, + 0.001390574191259808, + 0.0013795140509342677, + 0.0013685894766651454, + 0.0013577981992777017, + 0.0013471379980544032, + 0.0013366066994720657, + 0.0013262021759779194, + 0.0013159223448032113, + 0.00130576516681301, + 0.0012957286453909415, + 0.0012858108253576298, + 0.0012760097919216648, + 0.0012663236696619663, + 0.0012567506215404645, + 0.0012472888479440486, + 0.0012379365857547809, + 0.00122869210744742, + 0.0012195537202133197, + 0.0012105197651098157, + 0.0012015886162342487, + 0.0011927586799217885, + 0.0011840283939662823, + 0.0011753962268633508, + 0.001166860677075005, + 0.00115842027231508, + 0.0011500735688547944, + 0.0011418191508477955, + 0.001133655629674048, + 0.0011255816433019628, + 0.001117595855668181, + 0.001109696956074448, + 0.0011018836586010345, + 0.001094154701536179, + 0.0010865088468210498, + 0.0010789448795097364, + 0.0010714616072437998, + 0.0010640578597409345, + 0.0010567324882972942, + 0.0010494843653030728, + 0.0010423123837709214, + 0.0010352154568768171, + 0.001028192517513, + 0.0010212425178526112, + 0.0010143644289256843, + 0.0010075572402061422, + 0.0010008199592094723, + 0.0009941516111007637, + 0.000987551238312793, + 0.0009810179001738667, + 0.0009745506725451315, + 0.0009681486474670697, + 0.0009618109328149199, + 0.000955536651962756, + 0.0009493249434559754, + 0.0009431749606919559, + 0.0009370858716086416, + 0.0009310568583808374, + 0.0009250871171239838, + 0.0009191758576052061, + 0.0009133223029614296, + 0.0009075256894243605, + 0.0009017852660521408, + 0.0008961002944674903, + 0.0008904700486021544, + 0.0008848938144474832, + 0.0008793708898109714, + 0.0008739005840785956, + 0.0008684822179827887, + 0.0008631151233758978, + 0.0008577986430089778, + 0.0008525321303157718, + 0.0008473149492017417, + 0.0008421464738380122, + 0.0008370260884600943, + 0.000831953187171262, + 0.000826927173750459, + 0.0008219474614646132, + 0.000817013472885243, + 0.0008121246397092433, + 0.0008072804025837398, + 0.0008024802109349063, + 0.000797723522800641, + 0.0007930098046670013, + 0.0007883385313083017, + 0.0007837091856307768, + 0.0007791212585197204, + 0.000774574248690012, + 0.0007700676625399412, + 0.0007656010140082497, + 0.0007611738244343058, + 0.0007567856224213362, + 0.0007524359437026345, + 0.0007481243310106732, + 0.0007438503339490465, + 0.0007396135088671749, + 0.0007354134187376992, + 0.0007312496330365006, + 0.0007271217276252825, + 0.0007230292846366464, + 0.0007189718923616072, + 0.0007149491451394832, + 0.0007109606432501059, + 0.0007070059928082911, + 0.0007030848056605191, + 0.0006991966992837697, + 0.000695341296686457, + 0.0006915182263114217, + 0.000687727121940922, + 0.0006839676226035834, + 0.000680239372483257, + 0.0006765420208297415, + 0.0006728752218713263, + 0.0006692386347291119, + 0.0006656319233330671, + 0.0006620547563397798, + 0.0006585068070518658, + 0.0006549877533389945, + 0.0006514972775604944, + 0.0006480350664895024, + 0.0006446008112386229, + 0.000641194207187059, + 0.0006378149539091841, + 0.0006344627551045221, + 0.000631137318529102, + 0.0006278383559281564, + 0.0006245655829701356, + 0.000621318719182005, + 0.0006180974878857976, + 0.0006149016161363962, + 0.0006117308346605142, + 0.0006085848777968498, + 0.0006054634834373898, + 0.0006023663929698333, + 0.0005992933512211141, + 0.0005962441064019976, + 0.0005932184100527252, + 0.0005902160169896886, + 0.0005872366852531068, + 0.000584280176055687, + 0.0005813462537322471, + 0.0005784346856902785, + 0.0005755452423614312, + 0.0005726776971538985, + 0.0005698318264056828, + 0.0005670074093387278, + 0.0005642042280138901, + 0.0005614220672867426, + 0.0005586607147641836, + 0.0005559199607618399, + 0.0005531995982622445, + 0.0005504994228737745, + 0.0005478192327903311, + 0.0005451588287517495, + 0.0005425180140049195, + 0.0005398965942656056, + 0.0005372943776809499, + 0.0005347111747926454, + 0.0005321467985007644, + 0.0005296010640282289, + 0.0005270737888859116, + 0.0005245647928383519, + 0.0005220738978700762, + 0.000519600928152511, + 0.0005171457100114733, + 0.0005147080718952312, + 0.0005122878443431199, + 0.0005098848599547039, + 0.0005074989533594729, + 0.0005051299611870616, + 0.0005027777220379843, + 0.0005004420764548712 + ], + "P": [ + 0.004765714285714286, + 0.004669727372469269, + 0.004576920248536648, + 0.004487143446282195, + 0.004400256628875813, + 0.0043161279053971005, + 0.004234633206632837, + 0.004155655715384422, + 0.00407908534581253, + 0.004004818266965316, + 0.003932756466177824, + 0.003862807348504656, + 0.003794883368764379, + 0.003728901693140453, + 0.0036647838876062637, + 0.0036024556307267005, + 0.003541846448640679, + 0.0034828894702520936, + 0.0034255212008546553, + 0.003369681312591881, + 0.0033153124503100652, + 0.0032623600515014777, + 0.0032107721791595476, + 0.0031604993664790387, + 0.0031114944724338007, + 0.0030637125473539206, + 0.0030171107077041964, + 0.0029716480193378034, + 0.0029272853885637913, + 0.0028839854604253393, + 0.002841712523638346, + 0.002800432421687368, + 0.0027601124696189057, + 0.002720721376110859, + 0.0026822291704321865, + 0.0026446071339387284, + 0.002607827735780147, + 0.002571864572519258, + 0.002536692311389019, + 0.002502286636934261, + 0.002468624200805115, + 0.0024356825744872765, + 0.0024034402047708003, + 0.0023718763717742735, + 0.0023409711493550824, + 0.002310705367749175, + 0.0022810605782953536, + 0.0022520190201098006, + 0.002223563588586347, + 0.0021956778056069558, + 0.002168345791355216, + 0.0021415522376332097, + 0.0021152823825891466, + 0.002089521986769618, + 0.002064257310416282, + 0.0020394750919322745, + 0.0020151625274487366, + 0.0019913072514265366, + 0.0019678973182325923, + 0.0019449211846342366, + 0.0019223676931587681, + 0.0019002260562687924, + 0.0018784858413071382, + 0.0018571369561681162, + 0.0018361696356546276, + 0.0018155744284831844, + 0.0017953421849013014, + 0.0017754640448839013, + 0.0017559314268774573, + 0.0017367360170624944, + 0.0017178697591068725, + 0.00169932484438392, + 0.001681093702631053, + 0.0016631689930259577, + 0.0016455435956587645, + 0.001628210603379904, + 0.0016111633140045252, + 0.0015943952228554454, + 0.0015779000156276432, + 0.0015616715615582749, + 0.0015457039068870933, + 0.0015299912685929943, + 0.0015145280283932238, + 0.00149930872699251, + 0.0014843280585700904, + 0.0014695808654932635, + 0.0014550621332467045, + 0.0014407669855673675, + 0.0014266906797753423, + 0.0014128286022915438, + 0.0013991762643335878, + 0.0013857292977816783, + 0.0013724834512067324, + 0.0013594345860533912, + 0.001346578672970937, + 0.0013339117882854876, + 0.0013214301106071861, + 0.0013091299175664124, + 0.0012970075826733475, + 0.0012850595722955025, + 0.0012732824427480916, + 0.0012616728374923785, + 0.0012502274844373661, + 0.001238943193340428, + 0.0012278168533026803, + 0.001216845430355114, + 0.001206025965131678, + 0.0011953555706256992, + 0.0011848314300261856, + 0.0011744507946307324, + 0.0011642109818318874, + 0.0011541093731740008, + 0.0011441434124776935, + 0.0011343106040292371, + 0.0011246085108322455, + 0.001115034752919195, + 0.0011055870057204186, + 0.001096262998488301, + 0.0010870605127745253, + 0.001077977380958305, + 0.001069011484823626, + 0.001060160754183615, + 0.0010514231655502334, + 0.0010427967408475677, + 0.0010342795461670642, + 0.0010258696905631366, + 0.0010175653248876225, + 0.0010093646406616492, + 0.0010012658689835207, + 0.0009932672794712913, + 0.0009853671792387625, + 0.0009775639119036753, + 0.0009698558566269297, + 0.0009622414271817166, + 0.0009547190710514754, + 0.0009472872685556567, + 0.0009399445320022938, + 0.0009326894048664356, + 0.0009255204609935297, + 0.0009184363038268784, + 0.0009114355656583319, + 0.0009045169069014044, + 0.0008976790153860461, + 0.0008909206056743204, + 0.0008842404183962721, + 0.0008776372196053, + 0.0008711098001523712, + 0.0008646569750784399, + 0.0008582775830244633, + 0.0008519704856584202, + 0.0008457345671187731, + 0.0008395687334738219, + 0.0008334719121964322, + 0.0008274430516536286, + 0.0008214811206105673, + 0.0008155851077484253, + 0.0008097540211957485, + 0.0008039868880728306, + 0.0007982827540487006, + 0.00079264068291032, + 0.0007870597561435961, + 0.000781539072525842, + 0.0007760777477293213, + 0.000770674913935526, + 0.0007653297194598571, + 0.0007600413283863817, + 0.000754808920212353, + 0.0007496316895021948, + 0.0007445088455506581, + 0.0007394396120548694, + 0.000734423226795, + 0.0007294589413232937, + 0.000724546020661203, + 0.0007196837430043872, + 0.0007148713994353374, + 0.0007101082936434027, + 0.0007053937416519949, + 0.0007007270715527619, + 0.0006961076232465225, + 0.0006915347481907641, + 0.0006870078091535142, + 0.0006825261799733971, + 0.0006780892453256967, + 0.0006736964004942542, + 0.0006693470511490297, + 0.0006650406131291696, + 0.000660776512231417, + 0.0006565541840037187, + 0.0006523730735438784, + 0.0006482326353031147, + 0.0006441323328943863, + 0.0006400716389053502, + 0.0006360500347158245, + 0.0006320670103196308, + 0.0006281220641506939, + 0.0006242147029132826, + 0.0006203444414162777, + 0.0006165108024113556, + 0.0006127133164349841, + 0.0006089515216541226, + 0.0006052249637155298, + 0.0006015331955985802, + 0.0005978757774714959, + 0.0005942522765509014, + 0.0005906622669646135, + 0.0005871053296175808, + 0.0005835810520608878, + 0.0005800890283637452, + 0.0005766288589883856, + 0.0005732001506677901, + 0.000569802516286172, + 0.0005664355747621437, + 0.0005630989509345012, + 0.0005597922754505548, + 0.0005565151846569431, + 0.0005532673204928657, + 0.0005500483303856723, + 0.0005468578671487498, + 0.000543695588881647, + 0.000540561158872383, + 0.0005374542455018818, + 0.0005343745221504808, + 0.0005313216671064617, + 0.0005282953634765535, + 0.0005252952990983565, + 0.0005223211664546433, + 0.0005193726625894874, + 0.000516449489026176, + 0.0005135513516868624, + 0.0005106779608139166, + 0.0005078290308929327, + 0.0005050042805773507, + 0.0005022034326146564, + 0.0004994262137741212, + 0.0004966723547760407, + 0.0004939415902224441, + 0.0004912336585292299, + 0.0004885483018597025, + 0.0004858852660594693, + 0.0004832443005926725, + 0.0004806251584795187, + 0.00047802759623507987, + 0.0004754513738093336, + 0.00047289625452841407, + 0.00047036200503704695, + 0.0004678483952421389, + 0.00046535519825749596, + 0.00046288219034964454, + 0.00046042915088473065, + 0.00045799586227647065, + 0.0004555821099351315, + 0.0004531876822175158, + 0.00045081237037793, + 0.0004484559685201117, + 0.00044611827355009687, + 0.0004437990851300035, + 0.0004414982056327125, + 0.0004392154400974258, + 0.00043695059618608154, + 0.000434703484140607, + 0.00043247391674099275, + 0.00043026170926416664, + 0.000428066679443653, + 0.0004258886474299982, + 0.00042372743575194656, + 0.000421582869278349, + 0.0004194547751807906, + 0.0004173429828969193, + 0.00041524732409446214, + 0.00041316763263591315, + 0.0004111037445438794, + 0.0004090554979670703, + 0.0004070227331469163, + 0.0004050052923848055, + 0.0004030030200099215, + 0.0004010157623476733, + 0.0003990433676887026, + 0.000397085686258457, + 0.0003951425701873175, + 0.00039321387348126746, + 0.0003912994519930937, + 0.0003893991633941068, + 0.000387512867146371, + 0.00038564042447543253, + 0.00038378169834353564, + 0.00038193655342331817, + 0.00038010485607197457, + 0.0003782864743058778, + 0.00037648127777565113, + 0.00037468913774167987, + 0.00037290992705005444, + 0.0003711435201089364, + 0.0003693897928653381, + 0.00036764862278230797, + 0.00036591988881651424, + 0.00036420347139621705, + 0.0003624992523996234, + 0.0003608071151336154, + 0.00035912694431284594, + 0.0003574586260391937 + ], + "Q": [ + 0.011633788568538188, + 0.0115, + 0.011369253583786454, + 0.011241446725317693, + 0.011116481391976801, + 0.010994263862332695, + 0.010874704491725767, + 0.010757717492984098, + 0.010643220731142988, + 0.01053113553113553, + 0.01042138649750793, + 0.01031390134529148, + 0.01020861074123391, + 0.010105448154657293, + 0.010004349717268378, + 0.009905254091300603, + 0.009808102345415778, + 0.009712837837837838, + 0.009619406106231703, + 0.009527754763877381, + 0.00943783340172343, + 0.00934959349593496, + 0.009262988320579943, + 0.009177972865123701, + 0.009094503756425464, + 0.009012539184952978, + 0.008932038834951455, + 0.008852963818321785, + 0.00877527661198016, + 0.00869894099848714, + 0.008623922009748783, + 0.008550185873605948, + 0.008477699963140434, + 0.008406432748538013, + 0.008336353751359188, + 0.00826743350107836, + 0.00819964349376114, + 0.008132956152758133, + 0.008067344791301298, + 0.008002783576896311, + 0.007939247497411114, + 0.007876712328767124, + 0.00781515460414543, + 0.007754551584625758, + 0.007694881231180997, + 0.0076361221779548474, + 0.00757825370675453, + 0.007521255722694572, + 0.007465108730931516, + 0.007409793814432989, + 0.007355292612727855, + 0.007301587301587302, + 0.007248660573589662, + 0.007196495619524406, + 0.0071450761105933515, + 0.007094386181369525, + 0.007044410413476264, + 0.0069951338199513375, + 0.00694654183026276, + 0.006898620275944811, + 0.0068513553768245455, + 0.006804733727810651, + 0.006758742286218043, + 0.006713368359603035, + 0.006668599594085243, + 0.0066244239631336405, + 0.006580829756795421, + 0.006537805571347356, + 0.006495340299350466, + 0.006453423120089787, + 0.006412043490381935, + 0.006371191135734072, + 0.006330856041838701, + 0.006291028446389497, + 0.006251698831204131, + 0.006212857914640735, + 0.006174496644295303, + 0.0061366061899679825, + 0.006099177936886768, + 0.0060622034791776485, + 0.006025674613570867, + 0.005989583333333334, + 0.00595392182241781, + 0.005918682449819866, + 0.00588385776413405, + 0.005849440488301119, + 0.005815423514538559, + 0.0057817998994469585, + 0.005748562859285179, + 0.005715705765407555, + 0.0056832221398566835, + 0.00565110565110565, + 0.005619350109943806, + 0.005587949465500486, + 0.0055568978014013054, + 0.005526189332051898, + 0.005495818399044204, + 0.005465779467680608, + 0.00543606712361144, + 0.0054066760695815706, + 0.005377601122281973, + 0.005348837209302326, + 0.005320379366180892, + 0.00529222273354809, + 0.005264362554360266, + 0.005236794171220401, + 0.005209513023782559, + 0.005182514646237043, + 0.0051557946648733465, + 0.005129348795718109, + 0.005103172842245396, + 0.005077262693156733, + 0.0050516143202284204, + 0.005026223776223775, + 0.0050010871928680145, + 0.0049762007788836, + 0.0049515608180839615, + 0.004927163667523564, + 0.004903005755702409, + 0.00487908358082308, + 0.004855393709098586, + 0.004831932773109244, + 0.004808697470206983, + 0.00478568456096546, + 0.004762890867674467, + 0.004740313272877164, + 0.004717948717948718, + 0.0046957942017149855, + 0.004673846779109938, + 0.00465210355987055, + 0.004630561707267968, + 0.004609218436873747, + 0.004588071015360064, + 0.0045671167593328045, + 0.004546353034196481, + 0.00452577725304998, + 0.0045053868756121445, + 0.004485179407176287, + 0.004465152397592701, + 0.004445303440278315, + 0.004425630171252646, + 0.004406130268199234, + 0.004386801449551783, + 0.004367641473604253, + 0.004348648137644167, + 0.004329819277108434, + 0.004311152764761012, + 0.00429264650989175, + 0.004274298457535774, + 0.0042561065877128055, + 0.004238068914685831, + 0.004220183486238533, + 0.0042024483829709485, + 0.004184861717612809, + 0.0041674216343540495, + 0.004150126308191989, + 0.0041329739442947, + 0.0041159627773801, + 0.004099091071110319, + 0.0040823571175008875, + 0.0040657592363443525, + 0.004049295774647887, + 0.004032965106084517, + 0.004016765630457562, + 0.004000695773177944, + 0.003984753984753985, + 0.003968938740293356, + 0.0039532485390168445, + 0.003937681903783599, + 0.003922237380627558, + 0.003906913538304739, + 0.0038917089678511, + 0.0038766222821506827, + 0.003861652115513768, + 0.00384679712326476, + 0.0038320559813395535, + 0.003817427385892116, + 0.0038029100529100527, + 0.0037885027178389064, + 0.0037742041352149653, + 0.003760013078306359, + 0.0037459283387622153, + 0.0037319487262696734, + 0.003718073068218558, + 0.00370430020937349, + 0.003690629011553273, + 0.0036770583533173463, + 0.0036635871296591275, + 0.0036502142517060784, + 0.0036369386464263124, + 0.003623759256341579, + 0.003610675039246468, + 0.0035976849679336775, + 0.0035847880299251867, + 0.003571983227209194, + 0.003559269575982668, + 0.003546646106399383, + 0.0035341118623232943, + 0.003521665901087123, + 0.003509307293256027, + 0.0034970351223962293, + 0.003484848484848485, + 0.003472746489506266, + 0.0034607282575985555, + 0.0034487929224771333, + 0.0034369396294082486, + 0.003425167535368578, + 0.003413475808845355, + 0.0034018636296405855, + 0.0033903301886792454, + 0.0033788746878213607, + 0.0033674963396778915, + 0.0033561943674303226, + 0.0033449680046538682, + 0.0033338164951442237, + 0.0033227390927477608, + 0.0033117350611951042, + 0.0033008036739380023, + 0.003289944213989415, + 0.003279155973766752, + 0.0032684382549381837, + 0.0032577903682719546, + 0.0032472116334886347, + 0.00323670137911624, + 0.0032262589423481557, + 0.003215883668903803, + 0.003205574912891986, + 0.0031953320366768546, + 0.0031851544107464338, + 0.0031750414135836556, + 0.0031649924315398374, + 0.0031550068587105624, + 0.003145084096813893, + 0.0031352235550708833, + 0.0031254246500883273, + 0.003115686805743701, + 0.0031060094530722484, + 0.0030963920301561657, + 0.003086833982015837, + 0.0030773347605030773, + 0.003067893824196345, + 0.0030585106382978724, + 0.003049184674532679, + 0.0030399154110494317, + 0.0030307023323230993, + 0.00302154492905938, + 0.0030124426981008516, + 0.0030033951423348135, + 0.002994401770602786, + 0.0029854620976116305, + 0.002976575643846253, + 0.002967741935483871, + 0.00295896050430979, + 0.0029502308876346844, + 0.0029415526282133265, + 0.002932925274164754, + 0.002924348378893833, + 0.0029158215010141987, + 0.002907344204272532, + 0.002898916057474162, + 0.0028905366344099534, + 0.0028822055137844613, + 0.0028739222791453202, + 0.002865686518813855, + 0.002857497825816872, + 0.0028493557978196238, + 0.0028412600370599137, + 0.002833210150283321, + 0.0028252057486795232, + 0.002817246447819696, + 0.002809331867594967, + 0.002801461632155907, + 0.00279363536985303, + 0.0027858527131782943, + 0.0027781132987075735, + 0.0027704167670440857, + 0.002762762762762763, + 0.0027551509343555344, + 0.0027475809341775182, + 0.002740052418394091, + 0.0027325650469288347, + 0.0027251184834123222, + 0.0027177123951317495, + 0.002710346452981381, + 0.002703020331413797, + 0.0026957337083919363, + 0.0026884862653419055, + 0.002681277687106552, + 0.002674107661899779, + 0.002666975881261596, + 0.0026598820400138773, + 0.00265282583621684, + 0.0026458069711261935, + 0.0026388251491509863, + 0.0026318800778121062, + 0.0026249714677014377, + 0.002618099032441662, + 0.002611262488646685, + 0.002604461555882686, + 0.002597695956629772 + ], + "R": [ + 0.006004547910202662, + 0.005968708513968579, + 0.005933294409113055, + 0.005898298070149854, + 0.005863712148102884, + 0.005829529465359196, + 0.005795743010704735, + 0.005762345934529511, + 0.005729331544197747, + 0.005696693299579225, + 0.005664424808725421, + 0.005632519823700388, + 0.005600972236545987, + 0.005569776075383892, + 0.005538925500647052, + 0.0055084148014354906, + 0.00547823839199113, + 0.005448390808290515, + 0.005418866704745007, + 0.005389660851009559, + 0.005360768128894078, + 0.005332183529372481, + 0.005303902149688344, + 0.005275919190551814, + 0.005248229953424444, + 0.0052208298378872975, + 0.0051937143390963225, + 0.005166879045310324, + 0.005140319635499324, + 0.005114031877025527, + 0.005088011623392674, + 0.005062254812068456, + 0.005036757462367314, + 0.005011515673401412, + 0.004986525622090676, + 0.0049617835612312255, + 0.004937285817624204, + 0.004913028790256568, + 0.0048890089485365, + 0.004865222830581217, + 0.004841667041552533, + 0.004818338252042587, + 0.004795233196504434, + 0.004772348671728599, + 0.004749681535362038, + 0.004727228704471065, + 0.004704987154141582, + 0.004682953916123056, + 0.004661126077504907, + 0.004639500779435091, + 0.00461807521587132, + 0.0045968466323675905, + 0.0045758123248915705, + 0.004554969638679296, + 0.004534315967116731, + 0.004513848750653526, + 0.004493565475744976, + 0.004473463673823286, + 0.004453540920296595, + 0.00443379483357309, + 0.004414223074112433, + 0.0043948233435031625, + 0.004375593383559417, + 0.004356530975448081, + 0.004337633938833463, + 0.004318900131046188, + 0.004300327446275176, + 0.00428191381477494, + 0.004263657202099758, + 0.00424555560835338, + 0.004227607067458283, + 0.004209809646444018, + 0.004192161444754872, + 0.0041746605935693015, + 0.004157305255145127, + 0.004140093622173158, + 0.004123023917149471, + 0.004106094391766124, + 0.004089303326311855, + 0.004072649029090103, + 0.004056129835852351, + 0.004039744109241683, + 0.004023490238252991, + 0.004007366637705179, + 0.003991371747724681, + 0.003975504033243427, + 0.003959761983507448, + 0.003944144111596604, + 0.00392864895395828, + 0.00391327506994843, + 0.0038980210413848138, + 0.003882885472113351, + 0.003867866987579349, + 0.0038529642344125037, + 0.003838175880021666, + 0.003823500612194497, + 0.0038089371387128867, + 0.0037944841869708146, + 0.0037801405036055336, + 0.0037659048541334172, + 0.003751776022598685, + 0.0037377528112227942, + 0.00372383404007115, + 0.0037100185467175972, + 0.003696305185923343, + 0.0036826928293201, + 0.003669180365100333, + 0.003655766697713503, + 0.003642450747572523, + 0.0036292314507615497, + 0.0036161077587542056, + 0.0036030786381355817, + 0.003590143070330898, + 0.003577300051341048, + 0.0035645485914816977, + 0.003551887715129487, + 0.003539316460473785, + 0.0035268338792715515, + 0.0035144390366104172, + 0.0035021310106753134, + 0.003489908892518434, + 0.0034777717858367474, + 0.0034657188067530598, + 0.0034537490836001883, + 0.003441861756712017, + 0.003430055978217439, + 0.0034183309118376304, + 0.0034066857326906508, + 0.003395119627096266, + 0.0033836317923869874, + 0.0033722214367228887, + 0.003360887778908417, + 0.003349630048215202, + 0.0033384474842079737, + 0.0033273393365707005, + 0.0033163048649416105, + 0.00330534333874688, + 0.0032944540370407616, + 0.0032836362483459336, + 0.003272889270500956, + 0.0032622124105041728, + 0.003251604984370049, + 0.003241066316979291, + 0.003230595741936293, + 0.0032201926014299165, + 0.003209856246094711, + 0.00319958603487569, + 0.003189381334896657, + 0.0031792415213294234, + 0.0031691659772663527, + 0.0031591540935962392, + 0.003149205268879074, + 0.0031393189092294715, + 0.00312949442819499, + 0.003119731246641111, + 0.003110028792638886, + 0.003100386501351249, + 0.0030908038149251027, + 0.0030812801823825176, + 0.0030718150595157034, + 0.0030624079087828715, + 0.00305305819920787, + 0.0030437654062775987, + 0.003034529011847198, + 0.0030253485040407924, + 0.0030162233771588998, + 0.0030071531315847277, + 0.0029981372736931355, + 0.002989175315761372, + 0.002980266775880258, + 0.0029714111778695873, + 0.0029626080511904185, + 0.0029538569308653617, + 0.002945157357392425, + 0.002936508876669519, + 0.0029279110399107466, + 0.0029193634035717952, + 0.002910865529272888, + 0.0029024169837235103, + 0.002894017338648469, + 0.0028856661707168385, + 0.0028773630614695733, + 0.002869107597249787, + 0.002860899369135028, + 0.0028527379728677804, + 0.002844623008792402, + 0.002836554081785625, + 0.0028285308011961607, + 0.0028205527807791952, + 0.0028126196386362157, + 0.0028047309971523937, + 0.002796886482938188, + 0.0027890857267696134, + 0.0027813283635289565, + 0.0027736140321521496, + 0.002765942375567043, + 0.002758313040642779, + 0.0027507256781336142, + 0.0027431799426256287, + 0.00273567549248499, + 0.0027282119898066615, + 0.0027207891003608875, + 0.0027134064935483426, + 0.0027060638423468397, + 0.0026987608232635907, + 0.0026914971162903534, + 0.0026842724048534716, + 0.0026770863757694663, + 0.0026699387192001822, + 0.002662829128607047, + 0.002655757300708217, + 0.002648722935435055, + 0.0026417257358890556, + 0.0026347654083018757, + 0.0026278416619927025, + 0.0026209542093269533, + 0.00261410276567986, + 0.002607287049392948, + 0.002600506781739176, + 0.002593761686882079, + 0.002587051491840908, + 0.00258037592645044, + 0.002573734723329446, + 0.0025671276178402813, + 0.002560554348056243, + 0.0025540146547273768, + 0.0025475082812436156, + 0.0025410349736056936, + 0.0025345944803871756, + 0.0025281865527051472, + 0.0025218109441875747, + 0.002515467410940886, + 0.0025091557115197727, + 0.0025028756068952163, + 0.0024966268604271757, + 0.002490409237830171, + 0.002484222507149747, + 0.002478066438728277, + 0.002471940805180539, + 0.0024658453813630743, + 0.002459779944348206, + 0.0024537442733956194, + 0.002447738149927714, + 0.00244176135749985, + 0.0024358136817774767, + 0.002429894910509489, + 0.0024240048335013586, + 0.0024181432425933735, + 0.0024123099316328833, + 0.0024065046964532044, + 0.002400727334847197, + 0.002394977646544616, + 0.0023892554331903515, + 0.002383560498319337, + 0.0023778926473358997, + 0.0023722516874904453, + 0.0023666374278588087, + 0.0023610496793184943, + 0.002355488254530691, + 0.002349952967916069, + 0.0023444436356363507, + 0.0023389600755732154, + 0.00233350210730765, + 0.0023280695521019634, + 0.0023226622328778035, + 0.002317279974198838, + 0.002311922602250549, + 0.0023065899448233562, + 0.002301281831290636, + 0.002295998092595619, + 0.0022907385612285225, + 0.0022855030712112256, + 0.002280291458080841, + 0.0022751035588690627, + 0.002269939212089289, + 0.002264798257716638, + 0.00225968053717307, + 0.0022545858933107343, + 0.002249514170395095, + 0.0022444652140911625, + 0.0022394388714450653, + 0.002234434990870948, + 0.0022294534221338758, + 0.002224494016336953, + 0.0022195566259033406, + 0.0022146411045658176, + 0.002209747307348353, + 0.0022048750905538927, + 0.0022000243117503704, + 0.002195194829755609, + 0.0021903865046257742, + 0.0021855991976387212, + 0.0021808327712835585, + 0.0021760870892459927, + 0.0021713620163963387, + 0.0021666574187744203, + 0.002161973163580466, + 0.002157309119159345, + 0.002152665154989908, + 0.002148041141672774 + ], + "S": [ + 0.010714285714285714, + 0.010600706713780918, + 0.010489510489510488, + 0.010380622837370243, + 0.010273972602739725, + 0.010169491525423728, + 0.01006711409395973, + 0.009966777408637875, + 0.009868421052631578, + 0.009771986970684038, + 0.00967741935483871, + 0.009584664536741214, + 0.009493670886075948, + 0.009404388714733541, + 0.009316770186335404, + 0.00923076923076923, + 0.009146341463414634, + 0.00906344410876133, + 0.008982035928143712, + 0.00890207715133531, + 0.008823529411764704, + 0.008746355685131196, + 0.008670520231213872, + 0.008595988538681947, + 0.008522727272727274, + 0.008450704225352114, + 0.008379888268156424, + 0.008310249307479223, + 0.008241758241758242, + 0.008174386920980926, + 0.008108108108108107, + 0.00804289544235925, + 0.007978723404255319, + 0.007915567282321899, + 0.007853403141361256, + 0.007792207792207793, + 0.007731958762886598, + 0.007672634271099744, + 0.007614213197969543, + 0.007556675062972292, + 0.0075, + 0.007444168734491314, + 0.007389162561576355, + 0.007334963325183374, + 0.007281553398058252, + 0.0072289156626506035, + 0.007177033492822967, + 0.007125890736342042, + 0.007075471698113207, + 0.007025761124121781, + 0.0069767441860465115, + 0.0069284064665127015, + 0.006880733944954128, + 0.00683371298405467, + 0.006787330316742082, + 0.0067415730337078645, + 0.006696428571428572, + 0.0066518847006651885, + 0.0066079295154185015, + 0.006564551422319475, + 0.006521739130434783, + 0.0064794816414686825, + 0.006437768240343348, + 0.006396588486140726, + 0.006355932203389831, + 0.00631578947368421, + 0.006276150627615062, + 0.006237006237006237, + 0.006198347107438017, + 0.006160164271047227, + 0.006122448979591837, + 0.006085192697768763, + 0.006048387096774193, + 0.006012024048096193, + 0.00597609561752988, + 0.005940594059405941, + 0.005905511811023623, + 0.005870841487279843, + 0.005836575875486381, + 0.005802707930367505, + 0.005769230769230769, + 0.0057361376673040155, + 0.005703422053231939, + 0.005671077504725897, + 0.005639097744360903, + 0.005607476635514019, + 0.0055762081784386614, + 0.005545286506469502, + 0.0055147058823529415, + 0.005484460694698354, + 0.005454545454545455, + 0.005424954792043399, + 0.00539568345323741, + 0.005366726296958855, + 0.005338078291814946, + 0.005309734513274336, + 0.00528169014084507, + 0.005253940455341506, + 0.005226480836236934, + 0.005199306759098787, + 0.005172413793103448, + 0.005145797598627788, + 0.005119453924914676, + 0.0050933786078098476, + 0.005067567567567568, + 0.0050420168067226885, + 0.005016722408026756, + 0.004991680532445923, + 0.004966887417218543, + 0.0049423393739703465, + 0.004918032786885246, + 0.004893964110929853, + 0.004870129870129871, + 0.004846526655896607, + 0.00482315112540193, + 0.0048000000000000004, + 0.004777070063694267, + 0.004754358161648178, + 0.00473186119873817, + 0.004709576138147566, + 0.0046875, + 0.004665629860031105, + 0.0046439628482972135, + 0.004622496147919877, + 0.004601226993865031, + 0.004580152671755725, + 0.004559270516717326, + 0.00453857791225416, + 0.004518072289156626, + 0.004497751124437782, + 0.004477611940298507, + 0.004457652303120356, + 0.004437869822485207, + 0.004418262150220913, + 0.004398826979472141, + 0.004379562043795621, + 0.00436046511627907, + 0.004341534008683068, + 0.004322766570605188, + 0.00430416068866571, + 0.004285714285714286, + 0.004267425320056899, + 0.00424929178470255, + 0.0042313117066290545, + 0.004213483146067416, + 0.004195804195804196, + 0.004178272980501393, + 0.004160887656033287, + 0.004143646408839779, + 0.004126547455295736, + 0.00410958904109589, + 0.004092769440654843, + 0.004076086956521739, + 0.0040595399188092015, + 0.004043126684636119, + 0.004026845637583893, + 0.004010695187165776, + 0.0039946737683089215, + 0.003978779840848806, + 0.003963011889035667, + 0.003947368421052632, + 0.003931847968545216, + 0.00391644908616188, + 0.0039011703511053317, + 0.0038860103626943004, + 0.003870967741935484, + 0.003856041131105399, + 0.0038412291933418692, + 0.003826530612244898, + 0.0038119440914866584, + 0.00379746835443038, + 0.0037831021437578815, + 0.0037688442211055275, + 0.003754693366708386, + 0.003740648379052369, + 0.003726708074534161, + 0.0037128712871287127, + 0.0036991368680641184, + 0.003685503685503685, + 0.0036719706242350062, + 0.003658536585365854, + 0.003645200486026731, + 0.0036319612590799033, + 0.00361881785283474, + 0.0036057692307692305, + 0.003592814371257485, + 0.0035799522673031024, + 0.00356718192627824, + 0.0035545023696682467, + 0.0035419126328217233, + 0.003529411764705882, + 0.0035169988276670576, + 0.003504672897196261, + 0.0034924330616996507, + 0.003480278422273782, + 0.0034682080924855487, + 0.003456221198156682, + 0.0034443168771526975, + 0.003432494279176201, + 0.0034207525655644243, + 0.0034090909090909085, + 0.0033975084937712344, + 0.003386004514672686, + 0.0033745781777277835, + 0.003363228699551569, + 0.0033519553072625698, + 0.0033407572383073493, + 0.0033296337402885677, + 0.0033185840707964597, + 0.00330760749724366, + 0.0032967032967032963, + 0.0032858707557502733, + 0.0032751091703056767, + 0.003264417845484221, + 0.003253796095444685, + 0.003243243243243243, + 0.0032327586206896547, + 0.0032223415682062296, + 0.0032119914346895075, + 0.0032017075773745993, + 0.0031914893617021275, + 0.003181336161187699, + 0.0031712473572938684, + 0.003161222339304531, + 0.0031512605042016808, + 0.0031413612565445023, + 0.0031315240083507304, + 0.003121748178980229, + 0.0031120331950207467, + 0.003102378490175801, + 0.0030927835051546395, + 0.003083247687564234, + 0.003073770491803278, + 0.003064351378958121, + 0.003054989816700611, + 0.0030456852791878168, + 0.0030364372469635624, + 0.0030272452068617556, + 0.003018108651911468, + 0.003009027081243731, + 0.003, + 0.002991026919242273, + 0.002982107355864811, + 0.002973240832507433, + 0.0029644268774703555, + 0.0029556650246305416, + 0.0029469548133595285, + 0.0029382957884427027, + 0.0029296875, + 0.0029211295034079843, + 0.0029126213592233006, + 0.0029041626331074537, + 0.0028957528957528956, + 0.0028873917228103944, + 0.0028790786948176576, + 0.0028708133971291866, + 0.002862595419847328, + 0.002854424357754519, + 0.0028462998102466793, + 0.002838221381267739, + 0.0028301886792452824, + 0.002822201317027281, + 0.0028142589118198874, + 0.0028063610851262856, + 0.002798507462686567, + 0.0027906976744186047, + 0.0027829313543599253, + 0.0027752081406105457, + 0.0027675276752767526, + 0.002759889604415823, + 0.002752293577981651, + 0.0027447392497712718, + 0.0027372262773722625, + 0.0027297543221110098, + 0.0027223230490018148, + 0.0027149321266968325, + 0.002707581227436823, + 0.0027002700270027, + 0.0026929982046678632, + 0.002685765443151298, + 0.002678571428571428, + 0.002671415850400712, + 0.0026642984014209592, + 0.002657218777679362, + 0.0026501766784452294, + 0.0026431718061674008, + 0.002636203866432337, + 0.0026292725679228747, + 0.002622377622377622, + 0.0026155187445510023, + 0.002608695652173913, + 0.002601908065915004, + 0.0025951557093425604, + 0.0025884383088869713, + 0.0025817555938037863, + 0.0025751072961373387, + 0.0025684931506849314, + 0.002561912894961571, + 0.002555366269165247, + 0.002548853016142736 + ], + "T": [ + 0.00850380796908845, + 0.008432102984532452, + 0.00836159713636353, + 0.00829226059392707, + 0.008224064507886597, + 0.008156980970197791, + 0.00809098297603228, + 0.008026044387528186, + 0.007962139899276632, + 0.0078992450054447, + 0.007837335968440051, + 0.0077763897890417155, + 0.0077163841779122055, + 0.007657297528418594, + 0.007599108890691486, + 0.007541797946861495, + 0.007485344987404385, + 0.0074297308885395985, + 0.007374937090636191, + 0.007320945577558247, + 0.007267738856914674, + 0.007215299941167874, + 0.007163612329547986, + 0.007112659990742509, + 0.007062427346318678, + 0.007012899254844607, + 0.0069640609966703515, + 0.006915898259345132, + 0.006868397123633629, + 0.006821544050101158, + 0.0067753258662504035, + 0.006729729754174407, + 0.006684743238701829, + 0.006640354176020935, + 0.006596550742749008, + 0.006553321425432523, + 0.006510655010458999, + 0.006468540574358084, + 0.006426967474479461, + 0.0063859253400244675, + 0.006345404063423432, + 0.0063053937920340974, + 0.00626588492015645, + 0.006226868081345982, + 0.006188334141006946, + 0.006150274189264504, + 0.006112679534098886, + 0.00607554169472313, + 0.006038852395207517, + 0.0060026035583318205, + 0.005966787299655385, + 0.00593139592179992, + 0.0058964219089356895, + 0.005861857921460878, + 0.005827696790863257, + 0.005793931514768147, + 0.005760555252150468, + 0.00572756131871377, + 0.005694943182429579, + 0.0056626944592250705, + 0.005630808908815954, + 0.005599280430683917, + 0.005568103060183294, + 0.005537270964778962, + 0.005506778440411253, + 0.005476619907975877, + 0.005446789909920868, + 0.005417283106954329, + 0.005388094274860755, + 0.005359218301413282, + 0.005330650183392072, + 0.005302385023693068, + 0.005274418028529793, + 0.0052467445047230665, + 0.005219359857074668, + 0.005192259585824921, + 0.005165439284186668, + 0.005138894635956515, + 0.005112621413200902, + 0.005086615474007461, + 0.005060872760313195, + 0.005035389295788395, + 0.00501016118379316, + 0.004985184605389437, + 0.004960455817412779, + 0.004935971150603846, + 0.0049117270077940756, + 0.004887719862140427, + 0.004863946255419638, + 0.004840402796363552, + 0.004817086159048634, + 0.004793993081330328, + 0.004771120363318504, + 0.004748464865902191, + 0.004726023509312727, + 0.004703793271727763, + 0.00468177118791413, + 0.0046599543479111105, + 0.004638339895746801, + 0.004616925028192886, + 0.004595706993552051, + 0.004574683090480036, + 0.004553850666837889, + 0.004533207118577964, + 0.00451274988865813, + 0.004492476465986606, + 0.004472384384393013, + 0.004452471221629173, + 0.00443273459839677, + 0.004413172177397229, + 0.0043937816624113335, + 0.004374560797398619, + 0.004355507365623845, + 0.004336619188805457, + 0.004317894126282251, + 0.004299330074207575, + 0.00428092496476129, + 0.004262676765379725, + 0.004244583478009378, + 0.004226643138376618, + 0.004208853815278024, + 0.004191213609885391, + 0.004173720655071822, + 0.004156373114752698, + 0.004139169183241975, + 0.004122107084627347, + 0.004105185072157624, + 0.004088401427647881, + 0.004071754460896804, + 0.0040552425091204825, + 0.004038863936397075, + 0.004022617133127904, + 0.004006500515510547, + 0.0039905125250219164, + 0.003974651627917769, + 0.003958916314742877, + 0.0039433050998489705, + 0.003927816520930882, + 0.003912449138567142, + 0.003897201535775663, + 0.003882072317577423, + 0.0038670601105719182, + 0.003852163562519939, + 0.0038373813419390057, + 0.00382271213770613, + 0.0038081546586701265, + 0.0037937076332728026, + 0.00377936980917859, + 0.003765139952913499, + 0.003751016849509403, + 0.0037369993021600934, + 0.003723086131883546, + 0.0037092761771888583, + 0.0036955682937556134, + 0.0036819613541165808, + 0.003668454247348407, + 0.003655045878770302, + 0.0036417351696469424, + 0.003628521056900258, + 0.003615402492825881, + 0.0036023784448162566, + 0.003589447895090192, + 0.0035766098404270696, + 0.0035638632919072766, + 0.003551207274659074, + 0.003538640827609685, + 0.0035261630032417113, + 0.0035137728673548807, + 0.003501469498834009, + 0.0034892519894194063, + 0.0034771194434837227, + 0.003465070977813678, + 0.003453105721395122, + 0.0034412228152034263, + 0.0034294214119976463, + 0.0034177006761189066, + 0.003406059783294779, + 0.003394497920443218, + 0.0033830142854864853, + 0.0033716080871626364, + 0.003360278544845441, + 0.0033490248883671914, + 0.00333784635784129, + 0.0033267422034937155, + 0.0033157116854951596, + 0.0033047540737949355, + 0.003293868647961995, + 0.0032830546970259444, + 0.0032723115193222796, + 0.003261638422340951, + 0.003251034722577373, + 0.00324049974538676, + 0.0032300328248400234, + 0.003219633303585656, + 0.0032093005327094026, + 0.0031990338716008093, + 0.0031888326878217743, + 0.0031786963569739868, + 0.003168624262573916, + 0.0031586157959269112, + 0.0031486703560041907, + 0.003138787349323602, + 0.0031289661898306065, + 0.003119206298782373, + 0.003109507104635423, + 0.0030998680429328296, + 0.0030902885561938653, + 0.003080768093809194, + 0.003071306111933403, + 0.0030619020733810842, + 0.003052555447527139, + 0.0030432657102053007, + 0.0030340323436104377, + 0.0030248548362026284, + 0.003015732682612793, + 0.0030066653835501, + 0.0029976524457095977, + 0.002988693381684504, + 0.0029797877098773906, + 0.0029709349544131403, + 0.002962134645056347, + 0.002953386317126494, + 0.002944689511415133, + 0.002936043774108388, + 0.002927448656705911, + 0.0029189037159436104, + 0.0029104085137179325, + 0.0029019626170108115, + 0.0028935655978161723, + 0.0028852170330671, + 0.002876916504565452, + 0.0028686635989116915, + 0.0028604579074362757, + 0.0028522990261325987, + 0.0028441865555901558, + 0.0028361201009288184, + 0.0028280992717368836, + 0.002820123682005793, + 0.002812192950068848, + 0.002804306698541259, + 0.0027964645542597477, + 0.002788666148222374, + 0.0027809111155332467, + 0.0027731990953436814, + 0.0027655297307958016, + 0.002757902668970136, + 0.0027503175608287744, + 0.002742774061162967, + 0.0027352718285413857, + 0.0027278105252579454, + 0.002720389817281621, + 0.0027130093742058214, + 0.0027056688692002062, + 0.0026983679789620574, + 0.002691106383668096, + 0.002683883766930073, + 0.002676699815745698, + 0.002669554220455561, + 0.0026624466746982822, + 0.002655376875366544, + 0.0026483445225631286, + 0.0026413493195605042, + 0.0026343909727573056, + 0.002627469191637699, + 0.002620583688731415, + 0.002613734179573779, + 0.002606920382666189, + 0.002600142019437701, + 0.0025933988142077258, + 0.0025866904941476143, + 0.0025800167892440218, + 0.0025733774322638236, + 0.0025667721587168124, + 0.0025602007068217247, + 0.0025536628174716025, + 0.00254715823419871, + 0.0025406867031421143, + 0.002534247973014603, + 0.0025278417950695964, + 0.00252146792306851, + 0.0025151261132514424, + 0.002508816124304092, + 0.0025025377173271135, + 0.002496290655807476, + 0.002490074705587819, + 0.002483889634836478, + 0.0024777352140203934, + 0.00247161121587558, + 0.002465517415378704, + 0.0024594535897208836, + 0.002453419518279709, + 0.0024474149825919334, + 0.0024414397663288234, + 0.002435493655268184, + 0.0024295764372703754, + 0.00242368790225167, + 0.0024178278421609356, + 0.0024119960509538796, + 0.0024061923245690675, + 0.0024004164609050527 + ], + "U": [ + 0.012711864406779662, + 0.012552301255230127, + 0.012396694214876033, + 0.012244897959183675, + 0.012096774193548387, + 0.01195219123505976, + 0.011811023622047244, + 0.011673151750972763, + 0.011538461538461537, + 0.011406844106463879, + 0.011278195488721806, + 0.011152416356877323, + 0.011029411764705883, + 0.010909090909090908, + 0.01079136690647482, + 0.010676156583629892, + 0.01056338028169014, + 0.010452961672473868, + 0.010344827586206896, + 0.010238907849829353, + 0.010135135135135136, + 0.010033444816053512, + 0.009933774834437087, + 0.009836065573770493, + 0.009740259740259742, + 0.00964630225080386, + 0.009554140127388535, + 0.00946372239747634, + 0.009375, + 0.009287925696594427, + 0.009202453987730062, + 0.009118541033434652, + 0.009036144578313253, + 0.008955223880597014, + 0.008875739644970414, + 0.008797653958944282, + 0.00872093023255814, + 0.008645533141210375, + 0.008571428571428572, + 0.0084985835694051, + 0.008426966292134831, + 0.008356545961002786, + 0.008287292817679558, + 0.00821917808219178, + 0.008152173913043478, + 0.008086253369272238, + 0.008021390374331552, + 0.007957559681697613, + 0.007894736842105263, + 0.00783289817232376, + 0.007772020725388601, + 0.007712082262210797, + 0.007653061224489796, + 0.00759493670886076, + 0.007537688442211055, + 0.007481296758104738, + 0.007425742574257425, + 0.00737100737100737, + 0.007317073170731706, + 0.007263922518159807, + 0.007211538461538461, + 0.007159904534606205, + 0.007109004739336493, + 0.007058823529411764, + 0.007009345794392522, + 0.006960556844547563, + 0.006912442396313364, + 0.006864988558352402, + 0.006818181818181817, + 0.0067720090293453715, + 0.0067264573991031385, + 0.006681514476614699, + 0.006637168141592919, + 0.006593406593406593, + 0.006550218340611353, + 0.00650759219088937, + 0.00646551724137931, + 0.006423982869379014, + 0.006382978723404255, + 0.006342494714587737, + 0.006302521008403361, + 0.006263048016701461, + 0.006224066390041493, + 0.006185567010309277, + 0.006147540983606557, + 0.006109979633401222, + 0.006072874493927125, + 0.006036217303822938, + 0.006, + 0.005964214711729622, + 0.005928853754940712, + 0.005893909626719056, + 0.005859375, + 0.005825242718446601, + 0.00579150579150579, + 0.005758157389635317, + 0.005725190839694656, + 0.005692599620493358, + 0.005660377358490566, + 0.005628517823639775, + 0.005597014925373134, + 0.0055658627087198514, + 0.005535055350553504, + 0.005504587155963302, + 0.005474452554744525, + 0.005444646098003629, + 0.005415162454873646, + 0.0053859964093357264, + 0.005357142857142856, + 0.0053285968028419185, + 0.005300353356890459, + 0.005272407732864674, + 0.005244755244755245, + 0.005217391304347826, + 0.005190311418685121, + 0.0051635111876075735, + 0.005136986301369862, + 0.005110732538330494, + 0.005084745762711864, + 0.00505902192242833, + 0.0050335570469798654, + 0.005008347245409015, + 0.0049833887043189366, + 0.0049586776859504135, + 0.004934210526315789, + 0.004909983633387888, + 0.00488599348534202, + 0.00486223662884927, + 0.004838709677419354, + 0.004815409309791333, + 0.004792332268370606, + 0.0047694753577106515, + 0.004746835443037974, + 0.004724409448818897, + 0.004702194357366771, + 0.004680187207488299, + 0.004658385093167701, + 0.00463678516228748, + 0.004615384615384615, + 0.004594180704441041, + 0.004573170731707317, + 0.004552352048558422, + 0.004531722054380664, + 0.004511278195488721, + 0.004491017964071856, + 0.004470938897168405, + 0.004451038575667655, + 0.0044313146233382564, + 0.004411764705882353, + 0.004392386530014641, + 0.004373177842565597, + 0.0043541364296081275, + 0.004335260115606936, + 0.004316546762589928, + 0.004297994269340973, + 0.0042796005706134095, + 0.004261363636363636, + 0.004243281471004243, + 0.004225352112676056, + 0.004207573632538569, + 0.004189944134078212, + 0.004172461752433936, + 0.004155124653739612, + 0.004137931034482759, + 0.004120879120879121, + 0.004103967168262654, + 0.004087193460490463, + 0.004070556309362279, + 0.004054054054054053, + 0.004037685060565276, + 0.004021447721179625, + 0.004005340453938584, + 0.003989361702127659, + 0.003973509933774834, + 0.003957783641160949, + 0.003942181340341655, + 0.003926701570680628, + 0.003911342894393742, + 0.0038961038961038957, + 0.0038809831824062092, + 0.003865979381443299, + 0.003851091142490372, + 0.003836317135549872, + 0.0038216560509554136, + 0.0038071065989847713, + 0.0037926675094816687, + 0.0037783375314861456, + 0.0037641154328732747, + 0.00375, + 0.0037359900373599006, + 0.003722084367245657, + 0.003708281829419036, + 0.0036945812807881776, + 0.003680981595092024, + 0.003667481662591687, + 0.003654080389768575, + 0.003640776699029126, + 0.0036275695284159614, + 0.0036144578313253017, + 0.003601440576230492, + 0.0035885167464114833, + 0.0035756853396901075, + 0.003562945368171022, + 0.003550295857988166, + 0.0035377358490566034, + 0.0035252643948296128, + 0.0035128805620608904, + 0.0035005834305717617, + 0.0034883720930232558, + 0.003476245654692932, + 0.0034642032332563508, + 0.0034522439585730727, + 0.0034403669724770644, + 0.0034285714285714284, + 0.003416856492027335, + 0.0034052213393870605, + 0.003393665158371041, + 0.003382187147688839, + 0.003370786516853933, + 0.0033594624860022394, + 0.003348214285714286, + 0.003337041156840935, + 0.0033259423503325942, + 0.0033149171270718237, + 0.0033039647577092516, + 0.003293084522502744, + 0.0032822757111597377, + 0.0032715376226826612, + 0.0032608695652173916, + 0.0032502708559046583, + 0.0032397408207343417, + 0.0032292787944025836, + 0.003218884120171674, + 0.003208556149732621, + 0.003198294243070363, + 0.003188097768331562, + 0.0031779661016949155, + 0.0031678986272439284, + 0.003157894736842105, + 0.0031479538300104933, + 0.0031380753138075318, + 0.0031282586027111575, + 0.0031185031185031187, + 0.0031088082901554407, + 0.0030991735537190084, + 0.0030895983522142125, + 0.0030800821355236145, + 0.0030706243602865915, + 0.0030612244897959186, + 0.0030518819938962364, + 0.0030425963488843813, + 0.003033367037411527, + 0.003024193548387097, + 0.0030150753768844224, + 0.003006012024048096, + 0.0029970029970029974, + 0.00298804780876494, + 0.002979145978152929, + 0.0029702970297029708, + 0.0029615004935834156, + 0.002952755905511811, + 0.002944062806673209, + 0.002935420743639922, + 0.002926829268292683, + 0.0029182879377431907, + 0.002909796314258002, + 0.0029013539651837525, + 0.0028929604628736743, + 0.0028846153846153848, + 0.0028763183125599234, + 0.0028680688336520078, + 0.0028598665395614875, + 0.0028517110266159697, + 0.0028436018957345975, + 0.002835538752362949, + 0.002827521206409048, + 0.0028195488721804514, + 0.0028116213683223993, + 0.0028037383177570096, + 0.0027958993476234857, + 0.0027881040892193307, + 0.0027803521779425394, + 0.002772643253234751, + 0.0027649769585253456, + 0.0027573529411764708, + 0.0027497708524289646, + 0.002742230347349177, + 0.0027347310847766638, + 0.002727272727272727, + 0.0027198549410698096, + 0.0027124773960217, + 0.0027051397655545534, + 0.002697841726618705, + 0.0026905829596412557, + 0.0026833631484794273, + 0.0026761819803746657, + 0.0026690391459074734, + 0.0026619343389529724, + 0.002654867256637168, + 0.00264783759929391 + ], + "V": [ + 0.007988109406202204, + 0.007924805195279383, + 0.007862496442623046, + 0.007801159851045902, + 0.007740772844713639, + 0.0076813135414404154, + 0.007622760726250677, + 0.007565093826142233, + 0.007508292885985757, + 0.007452338545500314, + 0.007397212017255184, + 0.007342895065634236, + 0.007289369986726912, + 0.007236619589088944, + 0.007184627175331526, + 0.0071333765245018554, + 0.007082851875208851, + 0.007033037909463191, + 0.00698391973719481, + 0.006935482881412547, + 0.00688771326397819, + 0.006840597191965392, + 0.006794121344573689, + 0.006748272760572105, + 0.00670303882624812, + 0.006658407263837596, + 0.00661436612041566, + 0.006570903757223245, + 0.006528008839413069, + 0.006485670326194404, + 0.006443877461357772, + 0.0064026197641655624, + 0.006361887020590373, + 0.006321669274881758, + 0.006281956821457602, + 0.006242740197091923, + 0.0062040101733993325, + 0.006165757749593714, + 0.006127974145517134, + 0.00609065079491633, + 0.00605377933897322, + 0.0060173516200603405, + 0.0059813596757254395, + 0.005945795732888781, + 0.0059106522022460695, + 0.005875921672869877, + 0.005841596907000035, + 0.005807670835013434, + 0.0057741365505710185, + 0.005740987305931755, + 0.005708216507422925, + 0.005675817711071618, + 0.005643784618376779, + 0.005612111072230919, + 0.005580791052970824, + 0.005549818674566165, + 0.00551918818093089, + 0.005488893942358297, + 0.005458930452068023, + 0.005429292322873591, + 0.005399974283949893, + 0.005370971177710571, + 0.005342277956781105, + 0.0053138896810733804, + 0.005285801514946842, + 0.005258008724465579, + 0.005230506674736235, + 0.0052032908273331735, + 0.0051763567378007025, + 0.005149700053232342, + 0.005123316509928255, + 0.005097201931120399, + 0.005071352224766956, + 0.00504576338141649, + 0.005020431472135822, + 0.004995352646494977, + 0.004970523130619853, + 0.004945939225298179, + 0.004921597304140102, + 0.0048974938117991584, + 0.004873625262236336, + 0.004849988237042524, + 0.00482657938380604, + 0.004803395414526124, + 0.004780433104074389, + 0.004757689288700018, + 0.0047351608645742616, + 0.004712844786380899, + 0.004690738065942668, + 0.00466883777088678, + 0.0046471410233503985, + 0.0046256449987176484, + 0.004604346924394154, + 0.004583244078617321, + 0.004562333789292827, + 0.004541613432869962, + 0.004521080433243396, + 0.004500732260684259, + 0.004480566430802968, + 0.004460580503537148, + 0.004440772082166644, + 0.004421138812357173, + 0.004401678381226848, + 0.004382388516435576, + 0.004363266985305092, + 0.004344311593953432, + 0.004325520186457377, + 0.004306890644035777, + 0.004288420884251742, + 0.004270108860237265, + 0.004251952559938044, + 0.004233950005374076, + 0.004216099251923344, + 0.004198398387622371, + 0.004180845532479882, + 0.004163438837814892, + 0.004146176485606556, + 0.004129056687859345, + 0.004112077685989091, + 0.004095237750217695, + 0.004078535178986931, + 0.0040619682983862315, + 0.004045535461591143, + 0.004029235048319979, + 0.004013065464300247, + 0.003997025140747956, + 0.003981112533861797, + 0.0039653261243275395, + 0.003949664416832865, + 0.0039341259395979655, + 0.003918709243912133, + 0.0039034129036832343, + 0.0038882355150016146, + 0.0038731756957057772, + 0.003858232084965607, + 0.0038434033428729197, + 0.0038286881500382286, + 0.003814085207201945, + 0.0037995932348520167, + 0.0037852109728466754, + 0.003770937180055167, + 0.0037567706339940443, + 0.00374271013048455, + 0.003728754483305785, + 0.0037149025238647493, + 0.00370115310086927, + 0.0036875050800080356, + 0.003673957343639511, + 0.0036605087904872935, + 0.0036471583353401282, + 0.0036339049087625863, + 0.0036207474568059617, + 0.0036076849407316036, + 0.003594716336737802, + 0.003581840635688671, + 0.0035690568428581315, + 0.003556363977667898, + 0.0035437610734407876, + 0.0035312471771538068, + 0.003518821349197232, + 0.0035064826631419077, + 0.003494230205505211, + 0.003482063075529007, + 0.003469980384958049, + 0.0034579812578214852, + 0.0034460648302256924, + 0.0034342302501415567, + 0.0034224766772061876, + 0.003410803282521524, + 0.00339920924845849, + 0.0033876937684700348, + 0.003376256046899284, + 0.003364895298799464, + 0.0033536107497533774, + 0.003342401635698211, + 0.0033312672027507872, + 0.003320206707041251, + 0.003309219414545872, + 0.0032983046009256167, + 0.0032874615513651673, + 0.00327668956041971, + 0.003265987931858838, + 0.0032553559785188924, + 0.0032447930221555232, + 0.0032342983932971414, + 0.0032238714311074723, + 0.0032135114832430034, + 0.0032032179057195354, + 0.003192990062778067, + 0.0031828273267517915, + 0.0031727290779421935, + 0.003162694704488711, + 0.003152723602247054, + 0.003142815174668412, + 0.003132968832679328, + 0.0031231839945655704, + 0.0031134600858577777, + 0.0031037965392182176, + 0.0030941927943313186, + 0.0030846482977955336, + 0.0030751625030152052, + 0.0030657348700982023, + 0.00305636486575378, + 0.003047051963189329, + 0.0030377956420146734, + 0.0030285953881425964, + 0.0030194506936975785, + 0.003010361056915878, + 0.0030013259820600435, + 0.0029923449793265444, + 0.0029834175647553973, + 0.002974543260146012, + 0.0029657215929699277, + 0.0029569520962888785, + 0.0029482343086693064, + 0.0029395677741050896, + 0.0029309520419351642, + 0.0029223866667666965, + 0.0029138712083989216, + 0.002905405231745428, + 0.00289698830676266, + 0.002888620008375531, + 0.0028802999164070364, + 0.0028720276155058677, + 0.002863802695080242, + 0.0028556247492277365, + 0.0028474933766675647, + 0.0028394081806797367, + 0.002831368769034448, + 0.0028233747539330167, + 0.002815425751942824, + 0.002807521383939804, + 0.0027996612750424976, + 0.002791845054556763, + 0.0027840723559189318, + 0.0027763428166323045, + 0.002768656078217857, + 0.002761011786153844, + 0.002753409589824729, + 0.0027458491424632303, + 0.002738330101103248, + 0.0027308521265239083, + 0.002723414883198494, + 0.00271601803924737, + 0.0027086612663858034, + 0.0027013442398760024, + 0.0026940666384802636, + 0.0026868281444132336, + 0.002679628443295057, + 0.002672467224107411, + 0.002665344179147988, + 0.002658259003984753, + 0.0026512113974161977, + 0.0026442010614251554, + 0.0026372277011388334, + 0.002630291024785736, + 0.0026233907436583603, + 0.002616526572068789, + 0.0026096982273116076, + 0.0026029054296266008, + 0.0025961479021556766, + 0.0025894253709113357, + 0.002582737564734483, + 0.002576084215262009, + 0.0025694650568872657, + 0.0025628798267274266, + 0.0025563282645879593, + 0.0025498101129266537, + 0.002543325116823425, + 0.0025368730239434534, + 0.0025304535845063203, + 0.002524066551254478, + 0.0025177116794186105, + 0.0025113887266898782, + 0.002505097453186611, + 0.0024988376214254426, + 0.00249260899628978, + 0.002486411345002937, + 0.0024802444370959353, + 0.002474108044382195, + 0.0024680019409268894, + 0.002461925903019413, + 0.002455879709148956, + 0.0024498631399731963, + 0.002443875978295429, + 0.002437918009035922, + 0.0024319890192083804, + 0.0024260887978921897, + 0.002420217136209546, + 0.0024143738272994764, + 0.0024085586662940806, + 0.0024027714502945496, + 0.0023970119783467414, + 0.002391280051419864, + 0.002385575472381829, + 0.0023798980459763808, + 0.0023742475788031125, + 0.0023686238792925973, + 0.002363026757686848, + 0.002357456026017113 + ], + "W": [ + 0.00950020652622883, + 0.009410801963993453, + 0.009323064450749898, + 0.009236947791164659, + 0.00915240748109829, + 0.009069400630914826, + 0.008987885892926924, + 0.008907823392718823, + 0.008829174664107485, + 0.008751902587519025, + 0.008675971331572992, + 0.008601346297681377, + 0.008527994067482388, + 0.008455882352941178, + 0.008384979948960992, + 0.008315256688358641, + 0.008246683399067766, + 0.00817923186344239, + 0.008112874779541446, + 0.008047585724282715, + 0.00798333911836168, + 0.007920110192837466, + 0.007857874957294158, + 0.007796610169491525, + 0.007736293306424487, + 0.007676902536715621, + 0.0076184166942696255, + 0.007560815253122946, + 0.007504078303425775, + 0.007448186528497409, + 0.00739312118289939, + 0.007338864071474154, + 0.007285397529299968, + 0.007232704402515723, + 0.007180768029971901, + 0.00712957222566646, + 0.007079101261926748, + 0.007029339853300734, + 0.006980273141122913, + 0.006931886678722122, + 0.006884166417240347, + 0.006837098692033294, + 0.0067906702096250365, + 0.006744868035190615, + 0.0066996795805418004, + 0.006655092592592593, + 0.006611095142282265, + 0.0065676756139348945, + 0.006524822695035461, + 0.006482525366403607, + 0.00644077289274713, + 0.006399554813578186, + 0.006358860934476085, + 0.006318681318681319, + 0.006279006279006278, + 0.006239826370048833, + 0.006201132380695606, + 0.006162915326902465, + 0.006125166444740347, + 0.006087877183695077, + 0.006051039200210471, + 0.006014644351464435, + 0.005978684689368339, + 0.005943152454780361, + 0.005908040071923967, + 0.005873340143003065, + 0.005839045443005839, + 0.005805148914689551, + 0.005771643663739021, + 0.005738522954091816, + 0.005705780203423469, + 0.005673408978786383, + 0.00564140299239637, + 0.005609756097560976, + 0.005578462284744118, + 0.005547515677761698, + 0.005516910530103143, + 0.005486641221374045, + 0.005456702253855279, + 0.005427088249174138, + 0.005397793945083313, + 0.005368814192343604, + 0.005340143951706524, + 0.005311778290993071, + 0.005283712382265104, + 0.005255941499085923, + 0.005228461013866788, + 0.005201266395296247, + 0.0051743532058492695, + 0.005147717099373322, + 0.0051213538187486075, + 0.005095259193619849, + 0.005069429138197046, + 0.005043859649122807, + 0.005018546803403885, + 0.00499348675640469, + 0.004968675739900626, + 0.004944110060189166, + 0.004919786096256685, + 0.004895700297999149, + 0.00487184918449481, + 0.00484822934232715, + 0.004824837423956366, + 0.004801670146137787, + 0.0047787242883856225, + 0.004755996691480563, + 0.004733484256019757, + 0.004711183941007783, + 0.004689092762487258, + 0.004667207792207792, + 0.004645526156332055, + 0.004624045034177725, + 0.004602761656994196, + 0.004581673306772908, + 0.004560777315090224, + 0.0045400710619818395, + 0.004519551974847711, + 0.004499217527386541, + 0.0044790652385589096, + 0.00445909267157813, + 0.004439297432928006, + 0.004419677171406611, + 0.004400229577195333, + 0.004380952380952381, + 0.004361843352930021, + 0.004342900302114803, + 0.004324121075390111, + 0.00430550355672033, + 0.004287045666356012, + 0.004268745360059391, + 0.004250600628349657, + 0.004232609495767391, + 0.004214770020157596, + 0.004197080291970803, + 0.004179538433581683, + 0.004162142598624683, + 0.004144890971346188, + 0.004127781765972721, + 0.004110813226094728, + 0.004093983624065504, + 0.00407729126041482, + 0.004060734463276836, + 0.004044311587831897, + 0.004028021015761821, + 0.0040118611547182974, + 0.003995830437804031, + 0.0039799273230662745, + 0.003964150293002413, + 0.003948497854077253, + 0.00393296853625171, + 0.0039175608925225685, + 0.0039022734984730236, + 0.0038871049518336997, + 0.0038720538720538717, + 0.0038571188998826095, + 0.0038422986969595726, + 0.003827591945415211, + 0.003812997347480106, + 0.0037985136251032204, + 0.0037841395195788085, + 0.0037698737911817733, + 0.0037557152188112345, + 0.0037416625996421022, + 0.0037277147487844407, + 0.0037138704989504276, + 0.0037001287001287, + 0.003686488219265908, + 0.003672947939955286, + 0.003659506762132061, + 0.003646163601775523, + 0.003632917390617596, + 0.0036197670758577275, + 0.003606711619883958, + 0.00359375, + 0.0035808812081581814, + 0.0035681042506981076, + 0.003555418148090895, + 0.003542821934688848, + 0.00353031465848043, + 0.003517895380850413, + 0.0035055631763450694, + 0.0034933171324422843, + 0.003481156349326472, + 0.0034690799396681748, + 0.003457087028408237, + 0.0034451767525464348, + 0.0034333482609344677, + 0.003421600714073193, + 0.0034099332839140103, + 0.0033983451536643027, + 0.0033868355175968195, + 0.0033754035808629293, + 0.0033640485593096387, + 0.003352769679300291, + 0.0033415661775388636, + 0.00333043730089777, + 0.0033193823062490978, + 0.0033084004602991946, + 0.0032974910394265233, + 0.003286653329522721, + 0.003275886625836775, + 0.00326519023282226, + 0.0032545634639875474, + 0.003244005641748942, + 0.0032335160972866584, + 0.003223094170403587, + 0.0032127392093867857, + 0.0032024505708716238, + 0.0031922276197085355, + 0.0031820697288323188, + 0.0031719762791339126, + 0.0031619466593346165, + 0.0031519802658626834, + 0.00314207650273224, + 0.0031322347814244857, + 0.0031224545207711105, + 0.003112735146839897, + 0.00310307609282245, + 0.003093476798924008, + 0.003083936712255296, + 0.0030744552867263734, + 0.0030650319829424308, + 0.0030556662681015014, + 0.0030463576158940397, + 0.0030371055064043312, + 0.0030279094260136914, + 0.003018768867305421, + 0.0030096833289714737, + 0.003000652315720809, + 0.0029916753381893863, + 0.00298275191285177, + 0.0029738815619343158, + 0.0029650638133298956, + 0.0029562982005141387, + 0.002947584262463155, + 0.0029389215435727065, + 0.0029303095935787997, + 0.0029217479674796746, + 0.0029132362254591514, + 0.002904773932811316, + 0.0028963606598665158, + 0.002887995981918634, + 0.0028796794791536248, + 0.002871410736579276, + 0.0028631893439561807, + 0.0028550148957298903, + 0.002846886990964228, + 0.002838805233275734, + 0.002830769230769231, + 0.002822778595974472, + 0.0028148329457838694, + 0.0028069319013912615, + 0.0027990750882317143, + 0.00279126213592233, + 0.0027834926782040422, + 0.0027757663528843834, + 0.0027680828017812007, + 0.0027604416706673066, + 0.002752842609216038, + 0.00274528527094772, + 0.0027377693131770027, + 0.0027302943969610637, + 0.0027228601870486558, + 0.002715466351829988, + 0.002708112563287413, + 0.002700798496946923, + 0.002693523831830425, + 0.0026862882504087825, + 0.00267909143855562, + 0.0026719330855018587, + 0.002664812883790985, + 0.002657730529235035, + 0.0026506857208712683, + 0.00264367816091954, + 0.002636707554740341, + 0.0026297736107935054, + 0.0026228760405975597, + 0.002616014558689718, + 0.0026091888825865005, + 0.0026023987327449647, + 0.0025956438325245457, + 0.002588923908149482, + 0.0025822386886718307, + 0.00257558790593505, + 0.002568971294538143, + 0.002562388591800356, + 0.002555839537726414, + 0.00254932387497229, + 0.002542841348811498, + 0.002536391707101897, + 0.002529974700252997, + 0.0025235900811937675, + 0.0025172376053409213, + 0.002510917030567685, + 0.0025046281171730365, + 0.002498370627851401, + 0.002492144327662802, + 0.0024859489840034586, + 0.0024797843665768193, + 0.0024736502473650247 + ], + "X": [ + 0.008020459849977346, + 0.00795664390698092, + 0.007893835469093169, + 0.007832010863940697, + 0.007771147154997715, + 0.007711222113210958, + 0.00765221418993467, + 0.0075941024910923804, + 0.007536866752512195, + 0.007480487316364748, + 0.007424945108654768, + 0.007370221617704953, + 0.007316298873585092, + 0.007263159428440025, + 0.007210786337665143, + 0.007159163141892577, + 0.007108273849744995, + 0.007058102921320586, + 0.007008635252371498, + 0.006959856159142852, + 0.006911751363842811, + 0.006864306980707058, + 0.0068175095026370425, + 0.006771345788379124, + 0.006725803050221746, + 0.006680868842184884, + 0.00663653104868156, + 0.006592777873625888, + 0.006549597829971443, + 0.006506979729654194, + 0.0064649126739311225, + 0.006423386044085211, + 0.006382389492491036, + 0.006341912934018978, + 0.006301946537761616, + 0.006262480719076091, + 0.00622350613192002, + 0.006185013661471617, + 0.0061469944170255975, + 0.006109439725143773, + 0.006072341123062319, + 0.006035690352329315, + 0.005999479352681414, + 0.005963700256129245, + 0.005928345381260636, + 0.00589340722774212, + 0.005858878471014739, + 0.0058247519571736905, + 0.005791020698028726, + 0.005757677866332189, + 0.0057247167911729235, + 0.005692130953525387, + 0.005659913981954423, + 0.005628059648459027, + 0.005596561864459559, + 0.005565414676918623, + 0.0055346122645905105, + 0.005504148934392106, + 0.005474019117897244, + 0.005444217367943205, + 0.005414738355346227, + 0.005385576865725605, + 0.005356727796429039, + 0.005328186153555903, + 0.005299947049074438, + 0.005272005698032434, + 0.0052443574158533846, + 0.005216997615719254, + 0.0051899218060311725, + 0.005163125587955175, + 0.00513660465303567, + 0.005110354780889503, + 0.005084371836964863, + 0.005058651770370348, + 0.005033190611771543, + 0.005007984471346649, + 0.00498302953680585, + 0.004958322071471066, + 0.004933858412407011, + 0.004909634968615295, + 0.0048856482192736195, + 0.004861894712031356, + 0.004838371061353541, + 0.0048150739469103865, + 0.004792000112017414, + 0.004769146362116006, + 0.0047465095632994725, + 0.0047240866408804205, + 0.004701874577999643, + 0.004679870414270315, + 0.004658071244465711, + 0.004636474217239117, + 0.004615076533878826, + 0.004593875447103546, + 0.004572868259881568, + 0.0045520523242903455, + 0.004531425040402937, + 0.004510983855204653, + 0.004490726261540345, + 0.0044706497970907755, + 0.004450752043371198, + 0.004431030624763688, + 0.004411483207570566, + 0.004392107499092246, + 0.004372901246733729, + 0.004353862237128858, + 0.004334988295291442, + 0.004316277283787251, + 0.004297727101925108, + 0.004279335684973518, + 0.004261101003392609, + 0.004243021062087404, + 0.004225093899681731, + 0.004207317587807458, + 0.004189690230413712, + 0.004172209963091866, + 0.004154874952420284, + 0.0041376833953197245, + 0.004120633518432282, + 0.0041037235775085446, + 0.004086951856813625, + 0.004070316668547402, + 0.004053816352277417, + 0.004037449274387317, + 0.004021213827537284, + 0.00400510843013735, + 0.003989131525834022, + 0.003973281583010468, + 0.003957557094293795, + 0.003941956576080763, + 0.003926478568068825, + 0.003911121632800274, + 0.003895884355219703, + 0.0038807653422365807, + 0.003865763222302032, + 0.0038508766449945053, + 0.003836104280612318, + 0.0038214448197808615, + 0.0038068969730640223, + 0.00379245947058493, + 0.00377813106165914, + 0.0037639105144311458, + 0.0037497966155231044, + 0.0037357881696880035, + 0.0037218839994739294, + 0.0037080829448923325, + 0.0036943838630978387, + 0.003680785628069838, + 0.003667287130306729, + 0.003653887276521939, + 0.0036405849893503817, + 0.0036273792070584676, + 0.003614268883262328, + 0.003601252986652037, + 0.0035883305007193833, + 0.0035755004234943044, + 0.0035627617672866485, + 0.003550113558431045, + 0.0035375548370404353, + 0.0035250846567618233, + 0.0035127020845397983, + 0.003500406200383166, + 0.0034881960971364645, + 0.003476070880258808, + 0.0034640296676027305, + 0.0034520715892030207, + 0.0034401957870651145, + 0.0034284014149610353, + 0.0034166876382277778, + 0.003405053633570354, + 0.0033934985888699476, + 0.0033820217029931765, + 0.003370622185608907, + 0.003359299257005066, + 0.0033480521479123393, + 0.003336880099328532, + 0.003325782362348706, + 0.003314758197998424, + 0.003303806877067883, + 0.0032929276799531504, + 0.003282119896497182, + 0.0032713828258355004, + 0.0032607157762452044, + 0.003250118064995977, + 0.003239589018204647, + 0.0032291279706924136, + 0.003218734265844292, + 0.003208407255472334, + 0.0031981462996806265, + 0.0031879507667325058, + 0.0031778200329217743, + 0.003167753482445912, + 0.003157750507279733, + 0.0031478105070543716, + 0.003137932888936046, + 0.003128117067509706, + 0.0031183624646611285, + 0.003108668509466117, + 0.003099034638077036, + 0.0030894602936140103, + 0.0030799449260587863, + 0.0030704879921465977, + 0.0030610889552664666, + 0.003051747285357287, + 0.003042462458807682, + 0.003033233958360304, + 0.003024061273015022, + 0.003014943897933442, + 0.0030058813343460944, + 0.0029968730894649465, + 0.0029879186763901444, + 0.002979017614024082, + 0.0029701694269843593, + 0.0029613736455209594, + 0.002952629805429874, + 0.0029439374479756086, + 0.0029352961198076954, + 0.002926705372882754, + 0.002918164764387887, + 0.0029096738566636304, + 0.002901232217129124, + 0.002892839418210169, + 0.002884495037264845, + 0.0028761986565137843, + 0.0028679498629708977, + 0.0028597482483740944, + 0.0028515934091171147, + 0.0028434849461855816, + 0.002835422465090165, + 0.002827405575802411, + 0.002819433892693679, + 0.0028115070344711945, + 0.002803624624118539, + 0.0027957862888350338, + 0.0027879916599791166, + 0.002780240373006393, + 0.0027725320674170106, + 0.0027648663866977063, + 0.0027572429782674046, + 0.0027496614934217067, + 0.0027421215872829308, + 0.0027346229187446003, + 0.0027271651504208183, + 0.0027197479485974174, + 0.0027123709831804454, + 0.0027050339276462054, + 0.0026977364589968467, + 0.0026904782577090725, + 0.002683259007688843, + 0.0026760783962269663, + 0.002668936113951581, + 0.0026618318547850794, + 0.0026547653159001428, + 0.0026477361976771085, + 0.002640744203660228, + 0.0026337890405174758, + 0.002626870418000138, + 0.002619988048898847, + 0.002613141649008055, + 0.0026063309370856214, + 0.0025995556348119564, + 0.0025928154667551606, + 0.002586110160332611, + 0.002579439445774101, + 0.0025728030560849824, + 0.002566200727011969, + 0.0025596321970071667, + 0.0025530972071934332, + 0.0025465955013312946, + 0.0025401268257838616, + 0.0025336909294855214, + 0.002527287563908631, + 0.0025209164830317654, + 0.0025145774433068535, + 0.00250827020363098, + 0.0025019945253137443, + 0.002495750172046618, + 0.0024895369098756337, + 0.0024833545071694108, + 0.002477202734593398, + 0.0024710813650785646, + 0.0024649901737947566, + 0.002458928938124272, + 0.002452897437632773, + 0.0024468954540433074, + 0.002440922771210774, + 0.0024349791750950533, + 0.0024290644537350303, + 0.0024231783972252785, + 0.002417320797689193, + 0.002411491449255454, + 0.0024056901480340454, + 0.002399916692091608, + 0.0023941708814294582, + 0.002388452517959605, + 0.002382761405480771, + 0.002377097349658852, + 0.002371460158002714, + 0.002365849639841766, + 0.002360265606307088 + ], + "Y": [ + 0.012711864406779662, + 0.012552301255230127, + 0.012396694214876033, + 0.012244897959183675, + 0.012096774193548387, + 0.01195219123505976, + 0.011811023622047244, + 0.011673151750972763, + 0.011538461538461537, + 0.011406844106463879, + 0.011278195488721806, + 0.011152416356877323, + 0.011029411764705883, + 0.010909090909090908, + 0.01079136690647482, + 0.010676156583629892, + 0.01056338028169014, + 0.010452961672473868, + 0.010344827586206896, + 0.010238907849829353, + 0.010135135135135136, + 0.010033444816053512, + 0.009933774834437087, + 0.009836065573770493, + 0.009740259740259742, + 0.00964630225080386, + 0.009554140127388535, + 0.00946372239747634, + 0.009375, + 0.009287925696594427, + 0.009202453987730062, + 0.009118541033434652, + 0.009036144578313253, + 0.008955223880597014, + 0.008875739644970414, + 0.008797653958944282, + 0.00872093023255814, + 0.008645533141210375, + 0.008571428571428572, + 0.0084985835694051, + 0.008426966292134831, + 0.008356545961002786, + 0.008287292817679558, + 0.00821917808219178, + 0.008152173913043478, + 0.008086253369272238, + 0.008021390374331552, + 0.007957559681697613, + 0.007894736842105263, + 0.00783289817232376, + 0.007772020725388601, + 0.007712082262210797, + 0.007653061224489796, + 0.00759493670886076, + 0.007537688442211055, + 0.007481296758104738, + 0.007425742574257425, + 0.00737100737100737, + 0.007317073170731706, + 0.007263922518159807, + 0.007211538461538461, + 0.007159904534606205, + 0.007109004739336493, + 0.007058823529411764, + 0.007009345794392522, + 0.006960556844547563, + 0.006912442396313364, + 0.006864988558352402, + 0.006818181818181817, + 0.0067720090293453715, + 0.0067264573991031385, + 0.006681514476614699, + 0.006637168141592919, + 0.006593406593406593, + 0.006550218340611353, + 0.00650759219088937, + 0.00646551724137931, + 0.006423982869379014, + 0.006382978723404255, + 0.006342494714587737, + 0.006302521008403361, + 0.006263048016701461, + 0.006224066390041493, + 0.006185567010309277, + 0.006147540983606557, + 0.006109979633401222, + 0.006072874493927125, + 0.006036217303822938, + 0.006, + 0.005964214711729622, + 0.005928853754940712, + 0.005893909626719056, + 0.005859375, + 0.005825242718446601, + 0.00579150579150579, + 0.005758157389635317, + 0.005725190839694656, + 0.005692599620493358, + 0.005660377358490566, + 0.005628517823639775, + 0.005597014925373134, + 0.0055658627087198514, + 0.005535055350553504, + 0.005504587155963302, + 0.005474452554744525, + 0.005444646098003629, + 0.005415162454873646, + 0.0053859964093357264, + 0.005357142857142856, + 0.0053285968028419185, + 0.005300353356890459, + 0.005272407732864674, + 0.005244755244755245, + 0.005217391304347826, + 0.005190311418685121, + 0.0051635111876075735, + 0.005136986301369862, + 0.005110732538330494, + 0.005084745762711864, + 0.00505902192242833, + 0.0050335570469798654, + 0.005008347245409015, + 0.0049833887043189366, + 0.0049586776859504135, + 0.004934210526315789, + 0.004909983633387888, + 0.00488599348534202, + 0.00486223662884927, + 0.004838709677419354, + 0.004815409309791333, + 0.004792332268370606, + 0.0047694753577106515, + 0.004746835443037974, + 0.004724409448818897, + 0.004702194357366771, + 0.004680187207488299, + 0.004658385093167701, + 0.00463678516228748, + 0.004615384615384615, + 0.004594180704441041, + 0.004573170731707317, + 0.004552352048558422, + 0.004531722054380664, + 0.004511278195488721, + 0.004491017964071856, + 0.004470938897168405, + 0.004451038575667655, + 0.0044313146233382564, + 0.004411764705882353, + 0.004392386530014641, + 0.004373177842565597, + 0.0043541364296081275, + 0.004335260115606936, + 0.004316546762589928, + 0.004297994269340973, + 0.0042796005706134095, + 0.004261363636363636, + 0.004243281471004243, + 0.004225352112676056, + 0.004207573632538569, + 0.004189944134078212, + 0.004172461752433936, + 0.004155124653739612, + 0.004137931034482759, + 0.004120879120879121, + 0.004103967168262654, + 0.004087193460490463, + 0.004070556309362279, + 0.004054054054054053, + 0.004037685060565276, + 0.004021447721179625, + 0.004005340453938584, + 0.003989361702127659, + 0.003973509933774834, + 0.003957783641160949, + 0.003942181340341655, + 0.003926701570680628, + 0.003911342894393742, + 0.0038961038961038957, + 0.0038809831824062092, + 0.003865979381443299, + 0.003851091142490372, + 0.003836317135549872, + 0.0038216560509554136, + 0.0038071065989847713, + 0.0037926675094816687, + 0.0037783375314861456, + 0.0037641154328732747, + 0.00375, + 0.0037359900373599006, + 0.003722084367245657, + 0.003708281829419036, + 0.0036945812807881776, + 0.003680981595092024, + 0.003667481662591687, + 0.003654080389768575, + 0.003640776699029126, + 0.0036275695284159614, + 0.0036144578313253017, + 0.003601440576230492, + 0.0035885167464114833, + 0.0035756853396901075, + 0.003562945368171022, + 0.003550295857988166, + 0.0035377358490566034, + 0.0035252643948296128, + 0.0035128805620608904, + 0.0035005834305717617, + 0.0034883720930232558, + 0.003476245654692932, + 0.0034642032332563508, + 0.0034522439585730727, + 0.0034403669724770644, + 0.0034285714285714284, + 0.003416856492027335, + 0.0034052213393870605, + 0.003393665158371041, + 0.003382187147688839, + 0.003370786516853933, + 0.0033594624860022394, + 0.003348214285714286, + 0.003337041156840935, + 0.0033259423503325942, + 0.0033149171270718237, + 0.0033039647577092516, + 0.003293084522502744, + 0.0032822757111597377, + 0.0032715376226826612, + 0.0032608695652173916, + 0.0032502708559046583, + 0.0032397408207343417, + 0.0032292787944025836, + 0.003218884120171674, + 0.003208556149732621, + 0.003198294243070363, + 0.003188097768331562, + 0.0031779661016949155, + 0.0031678986272439284, + 0.003157894736842105, + 0.0031479538300104933, + 0.0031380753138075318, + 0.0031282586027111575, + 0.0031185031185031187, + 0.0031088082901554407, + 0.0030991735537190084, + 0.0030895983522142125, + 0.0030800821355236145, + 0.0030706243602865915, + 0.0030612244897959186, + 0.0030518819938962364, + 0.0030425963488843813, + 0.003033367037411527, + 0.003024193548387097, + 0.0030150753768844224, + 0.003006012024048096, + 0.0029970029970029974, + 0.00298804780876494, + 0.002979145978152929, + 0.0029702970297029708, + 0.0029615004935834156, + 0.002952755905511811, + 0.002944062806673209, + 0.002935420743639922, + 0.002926829268292683, + 0.0029182879377431907, + 0.002909796314258002, + 0.0029013539651837525, + 0.0028929604628736743, + 0.0028846153846153848, + 0.0028763183125599234, + 0.0028680688336520078, + 0.0028598665395614875, + 0.0028517110266159697, + 0.0028436018957345975, + 0.002835538752362949, + 0.002827521206409048, + 0.0028195488721804514, + 0.0028116213683223993, + 0.0028037383177570096, + 0.0027958993476234857, + 0.0027881040892193307, + 0.0027803521779425394, + 0.002772643253234751, + 0.0027649769585253456, + 0.0027573529411764708, + 0.0027497708524289646, + 0.002742230347349177, + 0.0027347310847766638, + 0.002727272727272727, + 0.0027198549410698096, + 0.0027124773960217, + 0.0027051397655545534, + 0.002697841726618705, + 0.0026905829596412557, + 0.0026833631484794273, + 0.0026761819803746657, + 0.0026690391459074734, + 0.0026619343389529724, + 0.002654867256637168, + 0.00264783759929391 + ], + "Z": [ + 0.00654558893871382, + 0.006503022824445814, + 0.006461006750081433, + 0.006419530122626638, + 0.006378582619362083, + 0.0063381541792753016, + 0.0062982349948208505, + 0.006258815503987547, + 0.006219886382662576, + 0.006181438537279149, + 0.006143463097734614, + 0.006105951410567245, + 0.006068895032383725, + 0.006032285723522213, + 0.005996115441945005, + 0.005960376337349027, + 0.005925060745484156, + 0.005890161182676268, + 0.005855670340537911, + 0.0058215810808674995, + 0.005787886430724365, + 0.005754579577672114, + 0.005721653865188969, + 0.005689102788231093, + 0.005656919988949349, + 0.005625099252547727, + 0.005593634503284317, + 0.005562519800602406, + 0.005531749335392355, + 0.005501317426375385, + 0.005471218516606147, + 0.005441447170092095, + 0.005411998068517665, + 0.005382866008079024, + 0.005354045896417414, + 0.0053255327496528615, + 0.005297321689510026, + 0.005269407940535764, + 0.005241786827404615, + 0.005214453772308891, + 0.005187404292427811, + 0.005160633997477682, + 0.0051341385873360235, + 0.005107913849739409, + 0.005081955658049919, + 0.005056259969091315, + 0.0050308228210496075, + 0.005005640331436245, + 0.004980708695112801, + 0.004956024182374508, + 0.004931583137089746, + 0.004907381974895042, + 0.004883417181442917, + 0.004859685310700135, + 0.0048361829832967995, + 0.004812906884919199, + 0.004789853764757046, + 0.004767020433985136, + 0.0047444037642934145, + 0.004722000686461447, + 0.004699808188967092, + 0.004677823316637131, + 0.004656043169336321, + 0.004634464900691748, + 0.004613085716853371, + 0.00459190287528588, + 0.004570913683599853, + 0.004550115498405782, + 0.004529505724210292, + 0.00450908181233034, + 0.004488841259846943, + 0.004468781608581551, + 0.0044489004440979585, + 0.004429195394739516, + 0.004409664130679669, + 0.004390304363007358, + 0.004371113842831953, + 0.004352090360412175, + 0.004333231744308552, + 0.004314535860555413, + 0.004296000611858863, + 0.00427762393680875, + 0.004259403809118378, + 0.004241338236876446, + 0.004223425261822733, + 0.004205662958640888, + 0.0041880494342658725, + 0.00417058282721583, + 0.00415326130693261, + 0.004136083073142283, + 0.004119046355234968, + 0.004102149411652434, + 0.004085390529296129, + 0.0040687680229494205, + 0.0040522802347102704, + 0.004035925533442342, + 0.004019702314235429, + 0.004003608997881658, + 0.003987644030361004, + 0.003971805882344803, + 0.003956093048702813, + 0.003940504048029814, + 0.003925037422179312, + 0.003909691735806797, + 0.003894465575929651, + 0.0038793575514881606, + 0.0038643662929283007, + 0.003849490451781401, + 0.003834728700264467, + 0.0038200797308831635, + 0.0038055422560456797, + 0.003791115007686585, + 0.0037767967368964594, + 0.0037625862135626242, + 0.0037484822260172024, + 0.0037344835806916166, + 0.003720589101780858, + 0.0037067976309124173, + 0.003693108026828096, + 0.003679519165064704, + 0.0036660299376494176, + 0.0036526392527971296, + 0.003639346034616686, + 0.00362614922282134, + 0.003613047772449418, + 0.0036000406535854346, + 0.0035871268510916376, + 0.0035743053643455536, + 0.0035615752069775297, + 0.0035489354066220447, + 0.003536385004667908, + 0.0035239230560146773, + 0.0035115486288392894, + 0.003499260804359805, + 0.003487058676610033, + 0.0034749413522172645, + 0.0034629079501822257, + 0.0034509576016676924, + 0.003439089449788213, + 0.0034273026494053838, + 0.0034155963669277867, + 0.0034039697801133695, + 0.0033924220778791536, + 0.0033809524601091656, + 0.0033695601374728046, + 0.0033582443312425436, + 0.003347004273115628, + 0.0033358392050419905, + 0.003324748379051945, + 0.003313731057091429, + 0.003302786510855471, + 0.0032919140216300935, + 0.00328111288013333, + 0.003270382386362458, + 0.003259721849441677, + 0.003249130587473781, + 0.0032386079273962753, + 0.0032281532048361594, + 0.003217765763972702, + 0.003207444957398886, + 0.0031971901459875163, + 0.0031870006987582133, + 0.003176875992749295, + 0.0031668154128907666, + 0.003156818351878199, + 0.003146884210052825, + 0.003137012395279193, + 0.003127202322829925, + 0.0031174534152684785, + 0.003107765102336346, + 0.0030981368208422566, + 0.003088568014552706, + 0.0030790581340849332, + 0.0030696066368012254, + 0.0030602129867072225, + 0.0030508766543488886, + 0.003041597116713479, + 0.003032373857132953, + 0.0030232063651862706, + 0.0030140941366072482, + 0.003005036673190409, + 0.0029960334827006108, + 0.0029870840787848962, + 0.002978187980883895, + 0.0029693447141447837, + 0.0029605538093402384, + 0.002951814802781616, + 0.002943127236238796, + 0.002934490656862243, + 0.0029259046171006275, + 0.0029173686746257754, + 0.0029088823922560625, + 0.0029004453378833617, + 0.0028920570843959936, + 0.002883717209610337, + 0.002875425296199108, + 0.0028671809316194174, + 0.002858983708047713, + 0.0028508332223107224, + 0.0028427290758197277, + 0.002834670874503953, + 0.0028266582287508335, + 0.0028186907533387373, + 0.002810768067377456, + 0.002802889794247143, + 0.0027950555615396944, + 0.002787265000997019, + 0.002779517748457083, + 0.002771813443794846, + 0.0027641517308663044, + 0.002756532257455646, + 0.002748954675219295, + 0.002741418639632842, + 0.0027339238099410856, + 0.00272646984910363, + 0.00271905642374648, + 0.0027116832041107486, + 0.0027043498640066943, + 0.0026970560807615396, + 0.0026898015351748406, + 0.0026825859114720796, + 0.0026754088972569257, + 0.0026682701834674916, + 0.002661169464332813, + 0.0026541064373268863, + 0.002647080803126922, + 0.002640092265572491, + 0.00263314053162067, + 0.0026262253113082945, + 0.0026193463177095477, + 0.002612503266897548, + 0.002605695877903935, + 0.002598923872682013, + 0.0025921869760674454, + 0.0025854849157420645, + 0.0025788174221963445, + 0.0025721842286945407, + 0.00256558507123672, + 0.002559019688526787, + 0.002552487821935845, + 0.002545989215468447, + 0.002539523615730399, + 0.002533090771894564, + 0.002526690435668444, + 0.0025203223612630943, + 0.002513986305362259, + 0.002507682027087954, + 0.0025014092879738214, + 0.0024951678519340437, + 0.002488957485232257, + 0.0024827779564531305, + 0.002476629036475053, + 0.0024705104984399373, + 0.002464422117725462, + 0.002458363671918651, + 0.0024523349407892248, + 0.00244633570625985, + 0.0024403657523832667, + 0.002434424865315199, + 0.0024285128332881545, + 0.002422629446586777, + 0.0024167744975234218, + 0.00241094778041262, + 0.002405149091548875, + 0.002399378229180904, + 0.002393634993488769, + 0.0023879191865623373, + 0.0023822306123761905, + 0.002376569076768753, + 0.0023709343874209754, + 0.002365326353831243, + 0.002359744787296947, + 0.002354189500894277, + 0.002348660309452688, + 0.0023431570295384674, + 0.002337679479433419, + 0.002332227479114213, + 0.0023268008502328463, + 0.002321399416097547, + 0.0023160230016538996, + 0.0023106714334648615, + 0.0023053445396925554, + 0.0023000421500807278, + 0.002294764095935875, + 0.0022895102101083697, + 0.0022842803269766954, + 0.002279074282429905, + 0.0022738919138480806, + 0.002268733060088124, + 0.0022635975614653248, + 0.0022584852597391514, + 0.002253395998093044, + 0.0022483296211222026, + 0.002243285974816489, + 0.0022382649065437743, + 0.002233266265035727, + 0.002228289900372493, + 0.002223335663967374, + 0.00221840340855195, + 0.0022134929881623133 + ], + "AA": [ + 0.005536159623191761, + 0.005505679303732247, + 0.005475532776249015, + 0.0054457145875348445, + 0.005416219402525346, + 0.005387042001116393, + 0.005358177275086362, + 0.005329620225111187, + 0.005301365957881332, + 0.005273409683304253, + 0.005245746711798338, + 0.005218372451669007, + 0.005191282406569631, + 0.0051644721730386145, + 0.0051379374381124165, + 0.00511167397701473, + 0.005085677650910947, + 0.005059944404737005, + 0.005034470265088409, + 0.0050092513381758685, + 0.004984283807841772, + 0.004959563933633282, + 0.004935088048936498, + 0.0049108525591616825, + 0.004886853939984226, + 0.004863088735636012, + 0.004839553557246523, + 0.004816245081230575, + 0.004793160047727563, + 0.004770295259075574, + 0.004747647578341008, + 0.004725213927879057, + 0.004702991287942826, + 0.004680976695325523, + 0.004659167242045736, + 0.004637560074065794, + 0.004616152390045869, + 0.0045949414401347255, + 0.004573924524791773, + 0.0045530989936410915, + 0.00453246224435766, + 0.004512011721583331, + 0.004491744915872342, + 0.004471659362664804, + 0.004451752641286166, + 0.004432022373976663, + 0.004412466224943179, + 0.004393081899438656, + 0.004373867142862808, + 0.004354819739889049, + 0.004335937513614274, + 0.004317218324725536, + 0.004298660070696014, + 0.00428026068499765, + 0.004262018136329981, + 0.004243930427877185, + 0.004225995596576659, + 0.004208211712410703, + 0.00419057687771196, + 0.004173089226490845, + 0.004155746923775183, + 0.004138548164969835, + 0.004121491175229419, + 0.004104574208849465, + 0.0040877955486697815, + 0.004071153505491809, + 0.004054646417515739, + 0.004038272649783403, + 0.00402203059364048, + 0.004005918666209363, + 0.0039899353098744594, + 0.003974078991781038, + 0.003958348203343842, + 0.003942741459770138, + 0.003927257299591869, + 0.00391189428420935, + 0.0038966509974445174, + 0.0038815260451097178, + 0.0038665180545764954, + 0.003851625674367254, + 0.0038368475737435848, + 0.003822182442313471, + 0.0038076289896424864, + 0.0037931859448756544, + 0.003778852056367521, + 0.0037646260913208884, + 0.0037505068354326543, + 0.0037364930925483097, + 0.003722583684325542, + 0.0037087774499018344, + 0.003695073245572944, + 0.003681469944476712, + 0.003667966436284198, + 0.003654561626897257, + 0.0036412544381538847, + 0.003628043807537784, + 0.0036149286878968123, + 0.0036019080471663134, + 0.0035889808680960034, + 0.003576146147989512, + 0.003563402898440593, + 0.0035507501450819934, + 0.0035381869273363176, + 0.0035257122981735556, + 0.003513325323871719, + 0.0035010250837852475, + 0.0034888106701165267, + 0.0034766811876922876, + 0.0034646357537453376, + 0.0034526734976987328, + 0.0034407935609601648, + 0.0034289950967105742, + 0.0034172772697087517, + 0.003405639256090165, + 0.003394080243175557, + 0.003382599429282207, + 0.003371196023536971, + 0.003359869245696201, + 0.003348618325967223, + 0.0033374425048335876, + 0.003326341032884761, + 0.0033153131706484817, + 0.0033043581884260043, + 0.0032934753661313376, + 0.0032826639931347046, + 0.003271923368106, + 0.0032612527988640228, + 0.0032506516022283716, + 0.0032401191038715638, + 0.003229654638179813, + 0.0032192575481080343, + 0.003208927185046395, + 0.003198662908682648, + 0.0031884640868724556, + 0.0031783300955063876, + 0.00316826031838624, + 0.003158254147096917, + 0.00314831098088475, + 0.0031384302265398123, + 0.003128611298274464, + 0.0031188536176087744, + 0.003109156613257724, + 0.003099519721019073, + 0.0030899423836641127, + 0.0030804240508297553, + 0.0030709641789139486, + 0.0030615622309710933, + 0.0030522176766116793, + 0.0030429299919014774, + 0.0030336986592651716, + 0.0030245231673871054, + 0.0030154030111211316, + 0.003006337691393801, + 0.002997326715116655, + 0.002988369595094964, + 0.0029794658499393556, + 0.002970615003981658, + 0.002961816587188526, + 0.0029530701350795052, + 0.0029443751886433223, + 0.0029357312942601688, + 0.002927138003620211, + 0.002918594873648317, + 0.0029101014664267844, + 0.002901657349119846, + 0.0028932620939021714, + 0.002884915277884481, + 0.0028766164830442698, + 0.002868365296153863, + 0.0028601613087142486, + 0.00285200411688713, + 0.0028438933214265383, + 0.002835828527615769, + 0.002827809345204102, + 0.0028198353883410743, + 0.002811906275516751, + 0.0028040216294999976, + 0.0027961810772791917, + 0.002788384250003162, + 0.0027806307829230104, + 0.002772920315335714, + 0.0027652524905275033, + 0.002757626955720349, + 0.002750043362016008, + 0.002742501364343397, + 0.002735000621407968, + 0.0027275407956368625, + 0.002720121553131394, + 0.0027127425636161995, + 0.0027054035003890586, + 0.002698104040274041, + 0.0026908438635737664, + 0.002683622654023221, + 0.0026764400987420167, + 0.0026692958881915363, + 0.002662189716128749, + 0.002655121279563133, + 0.0026480902787138216, + 0.0026410964169669704, + 0.0026341394008337904, + 0.0026272189399094703, + 0.0026203347468336524, + 0.0026134865372495764, + 0.0026066740297661095, + 0.002599896945916891, + 0.0025931550101256917, + 0.0025864479496666704, + 0.0025797754946284, + 0.0025731373778761224, + 0.0025665333350202157, + 0.0025599631043766724, + 0.0025534264269340134, + 0.002546923046319982, + 0.002540452708768015, + 0.0025340151630828256, + 0.002527610160609539, + 0.002521237455200609, + 0.0025148968031842855, + 0.002508587963334641, + 0.0025023106968402598, + 0.002496064767273154, + 0.0024898499405605623, + 0.002483665984955641, + 0.002477512671007265, + 0.0024713897715333832, + 0.002465297061591709, + 0.002459234318452408, + 0.0024532013215723403, + 0.0024471978525664184, + 0.002441223695182071, + 0.0024352786352728195, + 0.002429362460774964, + 0.0024234749616787177, + 0.0024176159300048905, + 0.002411785159783353, + 0.0024059824470226143, + 0.0024002075896927266, + 0.0023944603876968618, + 0.002388740642851328, + 0.002383048158860035, + 0.0023773827412956194, + 0.0023717441975734666, + 0.0023661323369326137, + 0.002360546970413102, + 0.0023549879108351046, + 0.002349454972776943, + 0.0023439479725568813, + 0.0023384667282104754, + 0.002333011059471257, + 0.0023275807877516375, + 0.002322175736122478, + 0.0023167957292942187, + 0.002311440593598668, + 0.002306110156968577, + 0.0023008042489207625, + 0.0022955227005376777, + 0.002290265344449649, + 0.0022850320148151138, + 0.0022798225473061873, + 0.0022746367790904554, + 0.0022694745488125445, + 0.002264335696579245, + 0.002259220063941969, + 0.0022541274938809863, + 0.002249057830789214, + 0.002244010920456674, + 0.002238986610052729, + 0.002233984748114537, + 0.0022290051845286207, + 0.0022240477705179895, + 0.0022191123586237094, + 0.0022141988026964654, + 0.0022093069578754676, + 0.002204436680578681, + 0.0021995878284879478, + 0.0021947602605321137, + 0.0021899538368785887, + 0.002185168418915362, + 0.0021804038692398997, + 0.0021756600516449343, + 0.0021709368311071398, + 0.002166234073771145, + 0.0021615516469415397, + 0.002156889419065555, + 0.0021522472597237385, + 0.002147625039617518, + 0.0021430226305556577, + 0.002138439905444045, + 0.002133876738273699, + 0.0021293330041081138, + 0.0021248085790730453, + 0.0021203033403458527, + 0.002115817166140399, + 0.002111349935702833, + 0.0021069015292944915, + 0.002102471828184349, + 0.002098060714638139, + 0.002093668071906807, + 0.0020892937842180714, + 0.002084937736763992 + ], + "AB": [ + 0.0060888279686379665, + 0.006051978512604972, + 0.006015572397712887, + 0.005979601670951684, + 0.005944058568404076, + 0.0059089355096575424, + 0.005874225092417085, + 0.005839920087302719, + 0.005806013432829271, + 0.005772498230561585, + 0.005739367740435375, + 0.005706615376237956, + 0.005674234701243286, + 0.005642219423995787, + 0.005610563394233381, + 0.0055792605989497535, + 0.005548305158587619, + 0.005517691323354779, + 0.005487413469665636, + 0.005457466096696173, + 0.005427843823053946, + 0.005398541383551558, + 0.005369553626089818, + 0.005340875508635934, + 0.005312502096300298, + 0.005284428558505638, + 0.005256650166244992, + 0.005229162289426936, + 0.005201960394301652, + 0.005175040040970025, + 0.0051483968809640235, + 0.005122026654909906, + 0.005095925190253814, + 0.005070088399064199, + 0.005044512275895308, + 0.005019192895717728, + 0.00499412641191066, + 0.0049693090543136975, + 0.004944737127335674, + 0.004920407008121019, + 0.004896315144768515, + 0.00487245805460379, + 0.004848832322498442, + 0.004825434599243561, + 0.00480226159996433, + 0.0047793101025845885, + 0.004756576946331137, + 0.00473405903028512, + 0.004711753311970046, + 0.004689656805982434, + 0.004667766582659549, + 0.004646079766783773, + 0.004624593536324939, + 0.00460330512121554, + 0.004582211802160341, + 0.004561310909477534, + 0.004540599821973856, + 0.004520075965848136, + 0.0044997368136243665, + 0.004479579883114537, + 0.0044596027364098845, + 0.0044398029788961235, + 0.004420178258297325, + 0.004400726263746213, + 0.00438144472487223, + 0.00436233141092357, + 0.004343384129903871, + 0.004324600727734884, + 0.004305979087440015, + 0.004287517128348073, + 0.004269212805320555, + 0.004251064107994473, + 0.004233069060046946, + 0.004215225718476656, + 0.004197532172907303, + 0.004179986544903036, + 0.004162586987303651, + 0.00414533168358, + 0.00412821884719583, + 0.00411124672099672, + 0.004094413576605449, + 0.004077717713836471, + 0.0040611574601223666, + 0.004044731169957627, + 0.004028437224349979, + 0.004012274030291918, + 0.003996240020240238, + 0.003980333651607548, + 0.003964553406270888, + 0.0039488977900863365, + 0.003933365332417171, + 0.003917954585676231, + 0.0039026641248718352, + 0.0038874925471721333, + 0.003872438471475226, + 0.0038575005379879457, + 0.003842677407819739, + 0.003827967762580986, + 0.0038133703039904265, + 0.0037988837534963515, + 0.003784506851902014, + 0.003770238358998812, + 0.003756077053213902, + 0.003742021731255818, + 0.0037280712077809586, + 0.003714224315052528, + 0.0037004799026212343, + 0.0036868368370013282, + 0.003673294001363958, + 0.0036598502952289724, + 0.003646504634166714, + 0.003633255949509806, + 0.00362010318806405, + 0.00360704531183087, + 0.0035940812977359737, + 0.003581210137357793, + 0.0035684308366712436, + 0.0035557424157872664, + 0.0035431439087061367, + 0.003530634363068552, + 0.003518212839919377, + 0.0035058784134698318, + 0.003493630170869011, + 0.003481467211978728, + 0.0034693886491508064, + 0.0034573936070150246, + 0.0034454812222641795, + 0.0034336506434484715, + 0.00342190103077189, + 0.003410231555895926, + 0.0033986414017403987, + 0.0033871297622971586, + 0.0033756958424409067, + 0.0033643388577462296, + 0.0033530580343090755, + 0.0033418526085706723, + 0.00333072182714389, + 0.0033196649466473716, + 0.003308681233536781, + 0.0032977699639444857, + 0.003286930423520351, + 0.003276161907274977, + 0.003265463719427597, + 0.0032548351732568648, + 0.0032442755909516396, + 0.0032337843034693226, + 0.0032233606503939694, + 0.0032130039797957366, + 0.003202713648098099, + 0.0031924890199428457, + 0.003182329468057965, + 0.003172234373132854, + 0.003162203123689089, + 0.003152235115958746, + 0.00314232975376294, + 0.003132486448393035, + 0.0031227046184931773, + 0.0031129836899475016, + 0.0031033230957657754, + 0.0030937222759743754, + 0.003084180677509707, + 0.0030746977541071807, + 0.0030652729662019595, + 0.003055905780825041, + 0.0030465956715006737, + 0.0030373421181506544, + 0.003028144606995964, + 0.0030190026304621753, + 0.003009915687085085, + 0.0030008832814212294, + 0.002991904923955513, + 0.0029829801310132797, + 0.002974108424675048, + 0.002965289332689025, + 0.002956522388389171, + 0.0029478071306106024, + 0.0029391431036118743, + 0.002930529856993047, + 0.002921966945617527, + 0.0029134539295381234, + 0.0029049903739175598, + 0.002896575848959415, + 0.0028882099298297437, + 0.0028798921965909052, + 0.002871622234126958, + 0.0028633996320783783, + 0.002855223984771005, + 0.0028470948911507588, + 0.0028390119547185844, + 0.0028309747834647236, + 0.002822982989806544, + 0.002815036190525033, + 0.0028071340067044037, + 0.0027992760636721403, + 0.00279146199093816, + 0.0027836914221386344, + 0.0027759639949775927, + 0.002768279351170966, + 0.002760637136389965, + 0.0027530370002093463, + 0.002745478596051232, + 0.0027379615811333746, + 0.002730485616417866, + 0.0027230503665591765, + 0.002715655499854863, + 0.0027083006881956084, + 0.002700985607017259, + 0.0026937099352528637, + 0.002686473355284935, + 0.002679275552900595, + 0.0026721162172451685, + 0.0026649950407777734, + 0.002657911719227135, + 0.002650865951548731, + 0.0026438574398803816, + 0.002636885889503393, + 0.002629951008798148, + 0.00262305250920547, + 0.002616190105185323, + 0.002609363514178842, + 0.0026025724565676978, + 0.0025958166556374618, + 0.0025890958375391904, + 0.0025824097312532324, + 0.0025757580685517034, + 0.002569140583963403, + 0.002562557014738065, + 0.002556007100812163, + 0.00254949058477405, + 0.002543007211830428, + 0.002536556729773265, + 0.0025301388889473753, + 0.0025237534422171137, + 0.002517400144935733, + 0.0025110787549142977, + 0.0025047890323894872, + 0.002498530739994953, + 0.0024923036427300094, + 0.0024861075079321004, + 0.0024799421052446036, + 0.0024738072065930705, + 0.0024677025861514768, + 0.002461628020319573, + 0.0024555832876924644, + 0.0024495681690346327, + 0.0024435824472532897, + 0.0024376259073728423, + 0.002431698336509358, + 0.0024257995238421426, + 0.0024199292605942, + 0.00241408734000248, + 0.0024082735572963365, + 0.002402487709673551, + 0.0023967295962752377, + 0.002390999018163864, + 0.00238529577829949, + 0.0023796196815195625, + 0.0023739705345120488, + 0.00236834814579856, + 0.002362752325709039, + 0.002357182886362219, + 0.0023516396416438656, + 0.0023461224071867903, + 0.002340631000350424, + 0.002335165240197945, + 0.002329724947481404, + 0.002324309944617964, + 0.0023189200556714695, + 0.002313555106335796, + 0.0023082149239117555, + 0.0023028993372933293, + 0.0022976081769450207, + 0.0022923412748878658, + 0.0022870984646772285, + 0.002281879581390367, + 0.002276684461604006, + 0.0022715129433812375, + 0.002266364866253534, + 0.0022612400712016534, + 0.002256138400644092, + 0.0022510596984164355, + 0.0022460038097578128, + 0.002240970581294466, + 0.002235959861025316, + 0.0022309714983037576, + 0.0022260053438265537, + 0.0022210612496162963, + 0.0022161390690058624, + 0.0022112386566286446, + 0.002206359868396346, + 0.0022015025614949835, + 0.0021966665943609076, + 0.0021918518266732523, + 0.0021870581193395022, + 0.0021822853344797277, + 0.0021775333354168147, + 0.0021728019866595893, + 0.002168091153893048, + 0.002163400703964369, + 0.0021587305048706984 + ], + "AC": [ + 0.008448001629058899, + 0.00837723076986796, + 0.008307635787722312, + 0.008239187617806731, + 0.008171858145361144, + 0.008105620167174754, + 0.00804044735494136, + 0.007976314220366154, + 0.007913196081929197, + 0.007851069033216751, + 0.007789909912729209, + 0.007729696275093456, + 0.007670406363596172, + 0.007612019083974797, + 0.007554513979393551, + 0.007497871206548101, + 0.007442071512834936, + 0.00738709621453415, + 0.007332927175951243, + 0.0072795467894701815, + 0.007226937956471335, + 0.0071750840690716355, + 0.00712396899264367, + 0.007073577049079294, + 0.007023893000754011, + 0.006974902035168151, + 0.006926589750222645, + 0.00687894214010254, + 0.006831945581741383, + 0.0067855868218344995, + 0.00673985296437829, + 0.00669473145871069, + 0.00665021008802702, + 0.006606276958354584, + 0.00656292048795537, + 0.006520129397150853, + 0.006477892698535381, + 0.006436199687572808, + 0.006395039933550839, + 0.0063544032708793274, + 0.0063142797907240755, + 0.0062746598329472825, + 0.006235533978356189, + 0.0061968930412372725, + 0.006158728062165997, + 0.006121030301081243, + 0.006083791230613311, + 0.006047002529651957, + 0.0060106560771486794, + 0.005974743946139283, + 0.005939258397981373, + 0.00590419187679414, + 0.005869537004093761, + 0.005835286573620646, + 0.005801433546339663, + 0.005767971045621323, + 0.005734892352581955, + 0.005702190901587301, + 0.0056698602759091, + 0.005637894203524452, + 0.0056062865530635, + 0.0055750313298861265, + 0.005544122672291207, + 0.005513554847854429, + 0.0054833222498811285, + 0.005453419393980363, + 0.005423840914746014, + 0.005394581562549128, + 0.0053656362004308455, + 0.005336999801096365, + 0.00530866744400349, + 0.005280634312545107, + 0.00525289569131715, + 0.005225446963477598, + 0.005198283608181642, + 0.005171401198102332, + 0.005144795397022284, + 0.0051184619575033174, + 0.005092396718626713, + 0.005066595603799184, + 0.005041054618629914, + 0.005015769848867535, + 0.00499073745839973, + 0.004965953687316116, + 0.004941414850020642, + 0.004917117333410381, + 0.004893057595096062, + 0.004869232161685, + 0.004845637627107324, + 0.004822270650992833, + 0.0047991279570949175, + 0.004776206331759347, + 0.004753502622435901, + 0.004731013736233969, + 0.004708736638517008, + 0.004686668351537415, + 0.004664805953110696, + 0.004643146575325385, + 0.004621687403286501, + 0.004600425673899622, + 0.004579358674682288, + 0.0045584837426122515, + 0.00453779826300349, + 0.004517299668414632, + 0.004496985437588252, + 0.0044768530944163665, + 0.004456900206933678, + 0.004437124386338365, + 0.004417523286038172, + 0.004398094600725155, + 0.0043788360654684055, + 0.004359745454834529, + 0.00434082058203189, + 0.004322059298073722, + 0.004303459490966999, + 0.004285019084917074, + 0.004266736039557406, + 0.004248608349195937, + 0.0042306340420823485, + 0.004212811179692633, + 0.004195137856032316, + 0.004177612196956781, + 0.004160232359510019, + 0.004142996531275145, + 0.0041259029297486816, + 0.004108949801723494, + 0.004092135422689935, + 0.004075458096250761, + 0.004058916153550474, + 0.004042507952720209, + 0.00402623187833262, + 0.004010086340872299, + 0.003994069776218634, + 0.003978180645138885, + 0.003962417432799903, + 0.0039467786482805245, + 0.003931262824105719, + 0.0039158685157856254, + 0.00390059430136791, + 0.003885438781000339, + 0.003870400576502453, + 0.0038554783309476814, + 0.003840670708255889, + 0.003825976392793251, + 0.0038113940889852316, + 0.0037969225209326662, + 0.003782560432041393, + 0.003768306584658765, + 0.003754159759716158, + 0.0037401187563843585, + 0.00372618239173117, + 0.00371234950039101, + 0.0036986189342385067, + 0.003684989562071417, + 0.003671460269301763, + 0.003658029957648301, + 0.0036446975448425345, + 0.003631461964337168, + 0.003618322165020116, + 0.0036052771109384985, + 0.0035923257810250853, + 0.0035794671688322843, + 0.003566700282271018, + 0.003554024143355372, + 0.003541437787954793, + 0.0035289402655469537, + 0.0035165306389801643, + 0.00350420798423845, + 0.0034919713902117344, + 0.0034798199584737954, + 0.0034677528030586657, + 0.0034557690502476923, + 0.0034438678383592602, + 0.0034320483175385164, + 0.0034203096495601937, + 0.003408651007626773, + 0.0033970715761757475, + 0.00338557055068911, + 0.003374147137506611, + 0.0033628005536443517, + 0.003351530026615368, + 0.00334033479425333, + 0.003329214104542677, + 0.0033181672154476427, + 0.003307193394749941, + 0.0032962919198853413, + 0.0032854620777853505, + 0.0032747031647217817, + 0.0032640144861542097, + 0.0032533953565809792, + 0.003242845099392655, + 0.003232363046727027, + 0.0032219485393298886, + 0.00321160092641648, + 0.0032013195655338222, + 0.0031911038224314847, + 0.0031809530709276945, + 0.0031708666927838802, + 0.0031608440775774405, + 0.0031508846225789533, + 0.003140987732632272, + 0.003131152820035732, + 0.0031213793044242433, + 0.003111666612657382, + 0.003102014178705259, + 0.003092421443541049, + 0.00308288785502997, + 0.003073412867826253, + 0.00306399594326745, + 0.0030546365492720717, + 0.003045334160241442, + 0.003036088256959113, + 0.0030268983264949423, + 0.003017763862111167, + 0.0030086843631673688, + 0.002999659335031213, + 0.0029906882889869646, + 0.0029817707421480044, + 0.0029729062173700083, + 0.0029640942431656825, + 0.002955334353621275, + 0.002946626088315085, + 0.002937968992236195, + 0.0029293626157040897, + 0.0029208065142936057, + 0.0029123002487552174, + 0.0029038433849430945, + 0.002895435493738052, + 0.0028870761509771636, + 0.002878764937382483, + 0.0028705014384884375, + 0.0028622852445765457, + 0.0028541159506048075, + 0.0028459931561426455, + 0.002837916465304735, + 0.002829885486686834, + 0.0028218998333038314, + 0.0028139591225251337, + 0.0028060629760151556, + 0.002798211019674035, + 0.0027904028835759043, + 0.002782638201913379, + 0.002774916612938938, + 0.0027672377589098573, + 0.0027596012860318098, + 0.0027520068444046863, + 0.002744454087970194, + 0.0027369426744590086, + 0.0027294722653372627, + 0.0027220425257581393, + 0.002714653124510358, + 0.00270730373396999, + 0.002699994030050723, + 0.0026927236921572284, + 0.002685492403138534, + 0.00267829984923984, + 0.0026711457200605526, + 0.0026640297085063214, + 0.0026569515107477404, + 0.0026499108261750504, + 0.0026429073573559503, + 0.0026359408099956294, + 0.0026290108928932465, + 0.002622117317901962, + 0.0026152597998900795, + 0.0026084380566997467, + 0.002601651809110539, + 0.0025949007807997138, + 0.0025881846983053514, + 0.002581503290989051, + 0.0025748562909999606, + 0.0025682434332388038, + 0.0025616644553234647, + 0.0025551190975521276, + 0.002548607102871525, + 0.0025421282168414105, + 0.002535682187603472, + 0.0025292687658462487, + 0.0025228877047747122, + 0.0025165387600785127, + 0.002510221689899339, + 0.002503936254802497, + 0.00249768221774449, + 0.0024914593440446, + 0.002485267401355129, + 0.002479106159632094, + 0.002472975391107246, + 0.002466874870260316, + 0.0024608043737899266, + 0.002454763680588057, + 0.002448752571712287, + 0.0024427708303593754, + 0.002436818241839056, + 0.002430894593550059, + 0.0024249996749505787, + 0.002419133277538954, + 0.002413295194824361, + 0.0024074852223061605, + 0.0024017031574459224, + 0.0023959487996489948 + ], + "AD": [ + 0.01009446202864317, + 0.00999358219266977, + 0.009894698707860528, + 0.009797752894951106, + 0.009702688352061006, + 0.009609450845274647, + 0.009517988205468342, + 0.009428250230971713, + 0.009340188595687193, + 0.009253756762308774, + 0.009168909900315603, + 0.00908560480843712, + 0.009003799841304838, + 0.008923454840032097, + 0.008844531066479089, + 0.008766991140973346, + 0.008690798983278958, + 0.00861591975661824, + 0.00854231981456044, + 0.00846996665061206, + 0.008398828850345819, + 0.008328876045920364, + 0.0082600788728584, + 0.008192408928946904, + 0.008125838735137947, + 0.008060341698347129, + 0.007995892076031241, + 0.007932464942454365, + 0.007870036156546467, + 0.0078085823312683544, + 0.007748080804397928, + 0.007688509610668914, + 0.007629847455181915, + 0.007572073688022707, + 0.007515168280028517, + 0.0074591117996347656, + 0.0074038853907532065, + 0.007349470751625953, + 0.007295850114600322, + 0.007243006226790305, + 0.007190922331566485, + 0.007139582150839763, + 0.007088969868102257, + 0.0070390701121769705, + 0.006989867941661121, + 0.006941348830002303, + 0.006893498651205032, + 0.006846303666116826, + 0.006799750509276503, + 0.006753826176294941, + 0.006708518011742992, + 0.006663813697526111, + 0.006619701241718179, + 0.006576168967836082, + 0.006533205504536621, + 0.006490799775712652, + 0.006448940990975149, + 0.00640761863649586, + 0.0063668224662061235, + 0.006326542493326093, + 0.0062867689822143635, + 0.006247492440522695, + 0.006208703611643385, + 0.006170393467437085, + 0.006132553201225743, + 0.006095174221043997, + 0.00605824814313749, + 0.006021766785689442, + 0.005985722162781482, + 0.005950106478561867, + 0.005914912121626648, + 0.005880131659596444, + 0.005845757833883303, + 0.005811783554640071, + 0.005778201895886292, + 0.005745006090800198, + 0.0057121895271747825, + 0.005679745743024656, + 0.005647668422344765, + 0.0056159513910123415, + 0.005584588612823849, + 0.005553574185666044, + 0.0055229023378127184, + 0.005492567424344674, + 0.0054625639236838275, + 0.005432886434246331, + 0.005403529671198948, + 0.00537448846331956, + 0.00534575774996493, + 0.005317332578126388, + 0.005289208099585885, + 0.005261379568158642, + 0.005233842337023953, + 0.005206591856135923, + 0.0051796236697190245, + 0.005152933413840044, + 0.0051265168140526285, + 0.005100369683114003, + 0.00507448791877585, + 0.005048867501635579, + 0.005023504493055997, + 0.004998395033148917, + 0.004973535338814283, + 0.004948921701841247, + 0.004924550487063861, + 0.004900418130572071, + 0.004876521137973322, + 0.00485285608270658, + 0.004829419604403418, + 0.004806208407298396, + 0.004783219258683413, + 0.004760448987406907, + 0.004737894482415683, + 0.00471555269133761, + 0.004693420619106048, + 0.004671495326617592, + 0.0046497739294366625, + 0.004628253596524523, + 0.004606931549014037, + 0.00458580505900974, + 0.00456487144842832, + 0.004544128087861532, + 0.004523572395481956, + 0.00450320183596542, + 0.004483013919452716, + 0.004463006200533082, + 0.004443176277257654, + 0.00442352179017802, + 0.004404040421408517, + 0.004384729893719852, + 0.004365587969645812, + 0.0043466124506224, + 0.004327801176146728, + 0.004309152022953233, + 0.004290662904219644, + 0.004272331768784943, + 0.004254156600391745, + 0.004236135416947562, + 0.0042182662698040385, + 0.004200547243053743, + 0.004182976452847154, + 0.0041655520467220875, + 0.004148272202957326, + 0.004131135129930907, + 0.004114139065507949, + 0.004097282276432246, + 0.0040805630577378516, + 0.004063979732175316, + 0.004047530649649689, + 0.004031214186673626, + 0.004015028745833815, + 0.003998972755267616, + 0.003983044668156577, + 0.003967242962228612, + 0.003951566139272611, + 0.003936012724666371, + 0.003920581266911638, + 0.0039052703371851294, + 0.003890078528897334, + 0.003875004457258413, + 0.0038600467588629783, + 0.003845204091273091, + 0.003830475132621469, + 0.0038158585812169132, + 0.0038013531551592816, + 0.003786957591968454, + 0.003772670648215515, + 0.003758491099164152, + 0.0037444177384227117, + 0.0037304493776004755, + 0.003716584845975701, + 0.0037028229901625576, + 0.0036891626737998173, + 0.0036756027772304467, + 0.0036621421971991808, + 0.00364877984655565, + 0.003635514653954175, + 0.0036223455635759905, + 0.0036092715348441384, + 0.0035962915421499098, + 0.0035834045745863907, + 0.0035706096356835637, + 0.003557905743154288, + 0.0035452919286402818, + 0.003532767237467427, + 0.0035203307284055185, + 0.0035079814734295667, + 0.0034957185574935323, + 0.0034835410783002896, + 0.0034714481460820235, + 0.0034594388833841805, + 0.0034475124248507516, + 0.003435667917018881, + 0.0034239045181154726, + 0.0034122213978540206, + 0.003400617737245426, + 0.003389092728399934, + 0.003377645574344834, + 0.0033662754888379443, + 0.0033549816961884193, + 0.003343763431081115, + 0.003332619938400949, + 0.0033215504730683687, + 0.0033105542998674853, + 0.0032996306932875363, + 0.0032887789373625687, + 0.0032779983255128986, + 0.0032672881603941217, + 0.0032566477537459004, + 0.003246076426243638, + 0.0032355735073563707, + 0.0032251383352013274, + 0.0032147702564084835, + 0.0032044686259820043, + 0.003194232807167463, + 0.0031840621713195016, + 0.0031739560977752657, + 0.0031639139737256183, + 0.003153935194092572, + 0.0031440191614089397, + 0.003134165285695323, + 0.0031243729843482004, + 0.0031146416820211353, + 0.003104970810513308, + 0.0030953598086593814, + 0.003085808122220479, + 0.003076315203778268, + 0.0030668805126290444, + 0.0030575035146827023, + 0.0030481836823603725, + 0.003038920494496944, + 0.003029713436243142, + 0.0030205619989700505, + 0.003011465680175185, + 0.0030024239833918998, + 0.0029934364180974615, + 0.002984502499624897, + 0.002975621749077062, + 0.0029667936932384897, + 0.0029580178644936783, + 0.00294929380074338, + 0.002940621045323999, + 0.002931999146927433, + 0.002923427659523803, + 0.002914906142282847, + 0.002906434159498872, + 0.0028980112805185865, + 0.002889637079665164, + 0.0028813111361678523, + 0.002873033034092476, + 0.002864802362269492, + 0.002856618714228487, + 0.0028484816881315655, + 0.0028403908867031813, + 0.0028323459171721854, + 0.002824346391202548, + 0.0028163919248334057, + 0.0028084821384177783, + 0.0028006166565612833, + 0.002792795108063073, + 0.0027850171258581025, + 0.0027772823469585095, + 0.002769590412397882, + 0.0027619409671753026, + 0.0027543336602025015, + 0.0027467681442456815, + 0.0027392440758786663, + 0.002731761115426723, + 0.0027243189269159362, + 0.0027169171780254686, + 0.0027095555400336035, + 0.002702233687774225, + 0.002694951299585746, + 0.0026877080572640377, + 0.0026805036460171294, + 0.002673337754419247, + 0.002666210074366182, + 0.0026591203010306597, + 0.002652068132819041, + 0.002645053271328468, + 0.0026380754213053415, + 0.002631134290603132, + 0.002624229590142191, + 0.0026173610338688924, + 0.002610528338717666, + 0.00260373122456925, + 0.002596969414216055, + 0.002590242633322193, + 0.002583550610385732, + 0.0025768930767045006, + 0.00257026976633834, + 0.0025636804160744653, + 0.002557124765391716, + 0.0025506025564281387, + 0.0025441135339447918, + 0.0025376574452933287, + 0.002531234040385133, + 0.002524843071655569, + 0.002518484294034673, + 0.0025121574649151768 + ], + "AE": [ + 0.014423076923076922, + 0.014218009478672985, + 0.014018691588785045, + 0.013824884792626727, + 0.013636363636363636, + 0.013452914798206277, + 0.013274336283185839, + 0.013100436681222705, + 0.01293103448275862, + 0.01276595744680851, + 0.012605042016806721, + 0.012448132780082987, + 0.012295081967213113, + 0.012145748987854251, + 0.012, + 0.011857707509881422, + 0.011718749999999998, + 0.011583011583011582, + 0.011450381679389313, + 0.011320754716981131, + 0.011194029850746268, + 0.01107011070110701, + 0.01094890510948905, + 0.010830324909747292, + 0.010714285714285714, + 0.010600706713780918, + 0.010489510489510488, + 0.010380622837370242, + 0.010273972602739725, + 0.010169491525423728, + 0.010067114093959731, + 0.009966777408637875, + 0.009868421052631578, + 0.009771986970684038, + 0.00967741935483871, + 0.009584664536741214, + 0.00949367088607595, + 0.009404388714733541, + 0.009316770186335404, + 0.00923076923076923, + 0.009146341463414635, + 0.00906344410876133, + 0.008982035928143712, + 0.008902077151335312, + 0.008823529411764706, + 0.008746355685131196, + 0.008670520231213874, + 0.008595988538681949, + 0.008522727272727274, + 0.008450704225352112, + 0.008379888268156424, + 0.008310249307479225, + 0.008241758241758242, + 0.008174386920980927, + 0.008108108108108109, + 0.00804289544235925, + 0.00797872340425532, + 0.007915567282321902, + 0.007853403141361258, + 0.007792207792207792, + 0.007731958762886598, + 0.007672634271099745, + 0.007614213197969544, + 0.007556675062972293, + 0.0075, + 0.007444168734491315, + 0.007389162561576355, + 0.007334963325183375, + 0.007281553398058253, + 0.007228915662650602, + 0.007177033492822967, + 0.007125890736342043, + 0.007075471698113209, + 0.007025761124121781, + 0.0069767441860465115, + 0.006928406466512702, + 0.006880733944954129, + 0.006833712984054671, + 0.006787330316742082, + 0.006741573033707865, + 0.006696428571428572, + 0.006651884700665189, + 0.006607929515418503, + 0.0065645514223194755, + 0.006521739130434782, + 0.0064794816414686825, + 0.0064377682403433485, + 0.006396588486140726, + 0.006355932203389831, + 0.00631578947368421, + 0.006276150627615063, + 0.006237006237006237, + 0.006198347107438018, + 0.006160164271047228, + 0.006122448979591836, + 0.006085192697768763, + 0.006048387096774194, + 0.006012024048096193, + 0.00597609561752988, + 0.005940594059405941, + 0.005905511811023622, + 0.005870841487279844, + 0.005836575875486382, + 0.005802707930367505, + 0.005769230769230769, + 0.0057361376673040155, + 0.005703422053231939, + 0.005671077504725898, + 0.005639097744360903, + 0.005607476635514019, + 0.0055762081784386614, + 0.005545286506469502, + 0.0055147058823529415, + 0.005484460694698355, + 0.005454545454545455, + 0.0054249547920434, + 0.00539568345323741, + 0.005366726296958855, + 0.005338078291814947, + 0.005309734513274337, + 0.00528169014084507, + 0.005253940455341506, + 0.005226480836236933, + 0.005199306759098787, + 0.005172413793103449, + 0.005145797598627788, + 0.0051194539249146765, + 0.0050933786078098476, + 0.005067567567567568, + 0.005042016806722689, + 0.005016722408026756, + 0.004991680532445923, + 0.004966887417218543, + 0.0049423393739703465, + 0.004918032786885246, + 0.004893964110929854, + 0.00487012987012987, + 0.004846526655896607, + 0.00482315112540193, + 0.0048000000000000004, + 0.004777070063694267, + 0.004754358161648178, + 0.00473186119873817, + 0.004709576138147567, + 0.004687500000000001, + 0.004665629860031105, + 0.0046439628482972135, + 0.004622496147919876, + 0.00460122699386503, + 0.004580152671755725, + 0.004559270516717325, + 0.0045385779122541605, + 0.004518072289156626, + 0.004497751124437781, + 0.004477611940298508, + 0.004457652303120356, + 0.004437869822485207, + 0.004418262150220912, + 0.00439882697947214, + 0.00437956204379562, + 0.00436046511627907, + 0.004341534008683068, + 0.004322766570605188, + 0.00430416068866571, + 0.004285714285714287, + 0.004267425320056899, + 0.00424929178470255, + 0.004231311706629055, + 0.004213483146067416, + 0.004195804195804197, + 0.004178272980501393, + 0.004160887656033287, + 0.00414364640883978, + 0.0041265474552957355, + 0.004109589041095891, + 0.004092769440654843, + 0.004076086956521739, + 0.004059539918809202, + 0.004043126684636118, + 0.004026845637583893, + 0.004010695187165776, + 0.0039946737683089215, + 0.003978779840848806, + 0.003963011889035667, + 0.003947368421052633, + 0.003931847968545216, + 0.00391644908616188, + 0.0039011703511053317, + 0.0038860103626943004, + 0.0038709677419354843, + 0.0038560411311053984, + 0.0038412291933418697, + 0.0038265306122448983, + 0.003811944091486658, + 0.0037974683544303805, + 0.0037831021437578815, + 0.003768844221105528, + 0.003754693366708386, + 0.003740648379052369, + 0.003726708074534162, + 0.0037128712871287127, + 0.0036991368680641184, + 0.0036855036855036856, + 0.003671970624235006, + 0.0036585365853658543, + 0.0036452004860267314, + 0.0036319612590799033, + 0.003618817852834741, + 0.0036057692307692305, + 0.0035928143712574854, + 0.003579952267303103, + 0.0035671819262782403, + 0.0035545023696682467, + 0.0035419126328217233, + 0.003529411764705882, + 0.0035169988276670576, + 0.0035046728971962616, + 0.003492433061699651, + 0.003480278422273782, + 0.003468208092485549, + 0.003456221198156682, + 0.0034443168771526983, + 0.0034324942791762016, + 0.0034207525655644243, + 0.003409090909090909, + 0.0033975084937712344, + 0.003386004514672686, + 0.0033745781777277844, + 0.0033632286995515697, + 0.0033519553072625698, + 0.0033407572383073497, + 0.0033296337402885685, + 0.0033185840707964606, + 0.003307607497243661, + 0.0032967032967032967, + 0.0032858707557502738, + 0.003275109170305677, + 0.003264417845484222, + 0.0032537960954446858, + 0.003243243243243243, + 0.003232758620689655, + 0.00322234156820623, + 0.0032119914346895075, + 0.0032017075773746, + 0.0031914893617021275, + 0.003181336161187699, + 0.003171247357293869, + 0.003161222339304531, + 0.0031512605042016808, + 0.0031413612565445023, + 0.003131524008350731, + 0.003121748178980229, + 0.003112033195020747, + 0.0031023784901758017, + 0.003092783505154639, + 0.003083247687564234, + 0.0030737704918032786, + 0.003064351378958121, + 0.0030549898167006114, + 0.003045685279187817, + 0.003036437246963563, + 0.003027245206861756, + 0.003018108651911469, + 0.0030090270812437314, + 0.003, + 0.002991026919242273, + 0.002982107355864811, + 0.002973240832507433, + 0.002964426877470356, + 0.0029556650246305416, + 0.0029469548133595285, + 0.002938295788442703, + 0.0029296875, + 0.0029211295034079847, + 0.002912621359223301, + 0.002904162633107454, + 0.0028957528957528956, + 0.002887391722810395, + 0.0028790786948176585, + 0.0028708133971291866, + 0.0028625954198473282, + 0.0028544243577545195, + 0.0028462998102466793, + 0.002838221381267739, + 0.002830188679245283, + 0.002822201317027281, + 0.0028142589118198874, + 0.0028063610851262865, + 0.0027985074626865674, + 0.0027906976744186047, + 0.0027829313543599257, + 0.0027752081406105457, + 0.002767527675276753, + 0.0027598896044158236, + 0.002752293577981651, + 0.0027447392497712718, + 0.002737226277372263, + 0.00272975432211101, + 0.002722323049001815, + 0.0027149321266968325 + ], + "AF": [ + 0.006550218340611353, + 0.00650759219088937, + 0.006465517241379309, + 0.006423982869379015, + 0.006382978723404255, + 0.006342494714587737, + 0.006302521008403361, + 0.006263048016701461, + 0.006224066390041493, + 0.006185567010309277, + 0.006147540983606557, + 0.006109979633401222, + 0.006072874493927125, + 0.006036217303822936, + 0.006, + 0.005964214711729622, + 0.005928853754940711, + 0.005893909626719057, + 0.005859375, + 0.005825242718446601, + 0.00579150579150579, + 0.005758157389635317, + 0.005725190839694656, + 0.005692599620493358, + 0.005660377358490566, + 0.005628517823639775, + 0.005597014925373134, + 0.005565862708719851, + 0.005535055350553505, + 0.005504587155963302, + 0.005474452554744525, + 0.0054446460980036296, + 0.005415162454873646, + 0.0053859964093357264, + 0.005357142857142856, + 0.0053285968028419185, + 0.005300353356890459, + 0.005272407732864674, + 0.005244755244755245, + 0.005217391304347826, + 0.005190311418685121, + 0.005163511187607573, + 0.005136986301369863, + 0.005110732538330494, + 0.005084745762711864, + 0.00505902192242833, + 0.0050335570469798654, + 0.005008347245409015, + 0.0049833887043189366, + 0.0049586776859504135, + 0.004934210526315789, + 0.004909983633387888, + 0.004885993485342019, + 0.00486223662884927, + 0.004838709677419354, + 0.004815409309791332, + 0.004792332268370607, + 0.0047694753577106515, + 0.004746835443037974, + 0.004724409448818897, + 0.004702194357366771, + 0.004680187207488299, + 0.004658385093167701, + 0.00463678516228748, + 0.004615384615384615, + 0.004594180704441041, + 0.004573170731707317, + 0.004552352048558422, + 0.004531722054380664, + 0.004511278195488721, + 0.004491017964071856, + 0.004470938897168405, + 0.004451038575667655, + 0.004431314623338257, + 0.004411764705882353, + 0.004392386530014641, + 0.004373177842565598, + 0.0043541364296081275, + 0.004335260115606936, + 0.004316546762589928, + 0.004297994269340973, + 0.0042796005706134095, + 0.004261363636363636, + 0.004243281471004243, + 0.004225352112676057, + 0.004207573632538569, + 0.004189944134078212, + 0.004172461752433936, + 0.004155124653739612, + 0.004137931034482759, + 0.004120879120879121, + 0.004103967168262654, + 0.004087193460490463, + 0.004070556309362279, + 0.004054054054054053, + 0.004037685060565276, + 0.004021447721179625, + 0.004005340453938584, + 0.003989361702127659, + 0.003973509933774834, + 0.003957783641160949, + 0.003942181340341656, + 0.003926701570680628, + 0.003911342894393742, + 0.0038961038961038957, + 0.0038809831824062092, + 0.003865979381443299, + 0.003851091142490372, + 0.003836317135549872, + 0.003821656050955414, + 0.0038071065989847713, + 0.0037926675094816687, + 0.003778337531486146, + 0.0037641154328732747, + 0.00375, + 0.0037359900373599006, + 0.003722084367245657, + 0.003708281829419036, + 0.0036945812807881776, + 0.003680981595092024, + 0.003667481662591687, + 0.003654080389768575, + 0.003640776699029126, + 0.0036275695284159614, + 0.0036144578313253017, + 0.003601440576230492, + 0.0035885167464114833, + 0.003575685339690107, + 0.003562945368171021, + 0.003550295857988166, + 0.0035377358490566034, + 0.0035252643948296123, + 0.0035128805620608904, + 0.0035005834305717617, + 0.0034883720930232558, + 0.003476245654692932, + 0.0034642032332563508, + 0.0034522439585730727, + 0.0034403669724770644, + 0.0034285714285714284, + 0.003416856492027335, + 0.0034052213393870605, + 0.003393665158371041, + 0.003382187147688839, + 0.0033707865168539322, + 0.0033594624860022394, + 0.003348214285714286, + 0.003337041156840934, + 0.0033259423503325942, + 0.0033149171270718237, + 0.0033039647577092508, + 0.003293084522502744, + 0.0032822757111597377, + 0.003271537622682661, + 0.0032608695652173916, + 0.003250270855904659, + 0.0032397408207343412, + 0.0032292787944025836, + 0.003218884120171674, + 0.0032085561497326204, + 0.003198294243070363, + 0.003188097768331562, + 0.0031779661016949155, + 0.0031678986272439284, + 0.003157894736842105, + 0.0031479538300104933, + 0.0031380753138075318, + 0.0031282586027111575, + 0.0031185031185031187, + 0.0031088082901554407, + 0.0030991735537190084, + 0.0030895983522142125, + 0.0030800821355236136, + 0.0030706243602865915, + 0.0030612244897959186, + 0.003051881993896236, + 0.0030425963488843813, + 0.003033367037411527, + 0.0030241935483870967, + 0.0030150753768844224, + 0.0030060120240480966, + 0.002997002997002997, + 0.00298804780876494, + 0.002979145978152929, + 0.0029702970297029703, + 0.0029615004935834156, + 0.002952755905511811, + 0.002944062806673209, + 0.002935420743639922, + 0.002926829268292683, + 0.0029182879377431907, + 0.002909796314258002, + 0.0029013539651837525, + 0.0028929604628736743, + 0.0028846153846153848, + 0.0028763183125599234, + 0.0028680688336520078, + 0.002859866539561487, + 0.0028517110266159697, + 0.0028436018957345975, + 0.0028355387523629487, + 0.002827521206409048, + 0.0028195488721804514, + 0.0028116213683223993, + 0.002803738317757009, + 0.0027958993476234857, + 0.0027881040892193307, + 0.002780352177942539, + 0.0027726432532347504, + 0.0027649769585253456, + 0.0027573529411764703, + 0.002749770852428964, + 0.002742230347349177, + 0.0027347310847766633, + 0.002727272727272727, + 0.0027198549410698096, + 0.0027124773960216994, + 0.0027051397655545534, + 0.002697841726618705, + 0.0026905829596412553, + 0.0026833631484794273, + 0.0026761819803746657, + 0.002669039145907473, + 0.0026619343389529724, + 0.002654867256637168, + 0.0026478375992939097, + 0.002640845070422535, + 0.002633889376646181, + 0.002626970227670753, + 0.002620087336244541, + 0.002613240418118467, + 0.0026064291920069502, + 0.002599653379549393, + 0.002592912705272256, + 0.002586206896551724, + 0.002579535683576956, + 0.0025728987993138934, + 0.0025662959794696323, + 0.002559726962457338, + 0.002553191489361702, + 0.0025466893039049238, + 0.002540220152413209, + 0.002533783783783784, + 0.002527379949452401, + 0.0025210084033613443, + 0.002514668901927913, + 0.002508361204013378, + 0.0025020850708924102, + 0.0024958402662229617, + 0.0024896265560165978, + 0.0024834437086092716, + 0.002477291494632535, + 0.0024711696869851732, + 0.0024650780608052587, + 0.0024590163934426227, + 0.0024529844644317253, + 0.0024469820554649264, + 0.002441008950366151, + 0.0024350649350649354, + 0.0024291497975708503, + 0.0024232633279483036, + 0.0024174053182917, + 0.002411575562700965, + 0.0024057738572574178, + 0.0024, + 0.0023942537909018356, + 0.0023885350318471337, + 0.002382843526608419, + 0.002377179080824089, + 0.0023715415019762843, + 0.002365930599369085, + 0.0023603461841070024, + 0.002354788069073783, + 0.002349256068911511, + 0.00234375, + 0.0023382696804364767, + 0.0023328149300155523, + 0.0023273855702094647, + 0.0023219814241486067, + 0.0023166023166023165, + 0.002311248073959938, + 0.0023059185242121443, + 0.0023006134969325155, + 0.0022953328232593723, + 0.0022900763358778627, + 0.002284843869002285, + 0.0022796352583586625, + 0.002274450341167551, + 0.00226928895612708, + 0.0022641509433962265, + 0.002259036144578313, + 0.002253944402704733, + 0.0022488755622188904, + 0.002243829468960359, + 0.0022388059701492534, + 0.0022338049143708115, + 0.002228826151560178, + 0.002223869532987398, + 0.0022189349112426036, + 0.002214022140221402 + ], + "AG": [ + 0.008680555555555554, + 0.008605851979345956, + 0.008532423208191127, + 0.008460236886632826, + 0.008389261744966441, + 0.008319467554076539, + 0.00825082508250825, + 0.00818330605564648, + 0.008116883116883114, + 0.008051529790660225, + 0.007987220447284345, + 0.007923930269413628, + 0.007861635220125786, + 0.007800312012480499, + 0.007739938080495355, + 0.007680491551459292, + 0.007621951219512195, + 0.0075642965204236, + 0.007507507507507507, + 0.007451564828614009, + 0.0073964497041420114, + 0.007342143906020557, + 0.007288629737609328, + 0.00723589001447178, + 0.0071839080459770105, + 0.007132667617689015, + 0.007082152974504248, + 0.007032348804500703, + 0.006983240223463687, + 0.006934812760055477, + 0.006887052341597796, + 0.006839945280437756, + 0.006793478260869564, + 0.006747638326585694, + 0.006702412868632708, + 0.006657789613848202, + 0.0066137566137566125, + 0.006570302233902759, + 0.006527415143603133, + 0.006485084306095979, + 0.006443298969072164, + 0.006402048655569782, + 0.006361323155216285, + 0.00632111251580278, + 0.00628140703517588, + 0.006242197253433208, + 0.006203473945409429, + 0.0061652281134401965, + 0.006127450980392157, + 0.0060901339829476245, + 0.006053268765133171, + 0.0060168471720818285, + 0.005980861244019139, + 0.005945303210463733, + 0.005910165484633569, + 0.005875440658049354, + 0.005841121495327103, + 0.005807200929152148, + 0.005773672055427251, + 0.00574052812858783, + 0.005707762557077625, + 0.005675368898978433, + 0.0056433408577878106, + 0.005611672278338945, + 0.005580357142857142, + 0.005549389567147613, + 0.005518763796909492, + 0.00548847420417124, + 0.0054585152838427945, + 0.005428881650380021, + 0.005399568034557235, + 0.005370569280343716, + 0.005341880341880341, + 0.005313496280552604, + 0.005285412262156448, + 0.005257623554153522, + 0.005230125523012552, + 0.005202913631633714, + 0.005175983436853002, + 0.005149330587023686, + 0.00512295081967213, + 0.00509683995922528, + 0.005070993914807301, + 0.005045408678102926, + 0.0050200803212851405, + 0.004995004995004995, + 0.004970178926441351, + 0.004945598417408506, + 0.004921259842519685, + 0.004897159647404505, + 0.004873294346978557, + 0.004849660523763336, + 0.004826254826254826, + 0.0048030739673390966, + 0.004780114722753345, + 0.004757373929590866, + 0.004734848484848484, + 0.00471253534401508, + 0.004690431519699812, + 0.004668534080298786, + 0.004646840148698884, + 0.004625346901017576, + 0.004604051565377532, + 0.00458295142071494, + 0.004562043795620438, + 0.004541326067211625, + 0.0045207956600361665, + 0.0045004500450045, + 0.004480286738351254, + 0.0044603033006244425, + 0.004440497335701598, + 0.004420866489832006, + 0.0044014084507042256, + 0.0043821209465381246, + 0.004363001745200698, + 0.004344048653344918, + 0.004325259515570934, + 0.004306632213608957, + 0.004288164665523155, + 0.004269854824935952, + 0.004251700680272108, + 0.004233700254022015, + 0.0042158516020236085, + 0.0041981528127623844, + 0.004180602006688963, + 0.004163197335553705, + 0.0041459369817578775, + 0.004128819157720891, + 0.004111842105263158, + 0.004095004095004095, + 0.004078303425774877, + 0.004061738424045491, + 0.0040453074433656954, + 0.0040290088638195, + 0.0040128410914927765, + 0.003996802557953637, + 0.003980891719745223, + 0.003965107057890563, + 0.0039494470774091624, + 0.003933910306845004, + 0.003918495297805642, + 0.0039032006245121, + 0.0038880248833592533, + 0.0038729666924864443, + 0.003858024691358024, + 0.003843197540353574, + 0.003828483920367534, + 0.003813882532418001, + 0.003799392097264438, + 0.003785011355034065, + 0.0037707390648567115, + 0.0037565740045078884, + 0.0037425149700598802, + 0.0037285607755406414, + 0.003714710252600297, + 0.003700962250185048, + 0.0036873156342182895, + 0.003673769287288758, + 0.0036603221083455345, + 0.0036469730123997084, + 0.003633720930232558, + 0.003620564808110065, + 0.003607503607503608, + 0.0035945363048166786, + 0.0035816618911174787, + 0.00356887937187723, + 0.0035561877667140826, + 0.0035435861091424525, + 0.003531073446327683, + 0.003518648838845883, + 0.003506311360448808, + 0.0034940600978336823, + 0.003481894150417827, + 0.003469812630117974, + 0.003457814661134163, + 0.0034458993797381117, + 0.0034340659340659344, + 0.0034223134839151265, + 0.0034106412005457027, + 0.0033990482664853837, + 0.003387533875338753, + 0.0033760972316002704, + 0.003364737550471063, + 0.00335345405767941, + 0.003342245989304813, + 0.003331112591605596, + 0.0033200531208499337, + 0.0033090668431502318, + 0.0032981530343007912, + 0.003287310979618672, + 0.00327653997378768, + 0.0032658393207054214, + 0.0032552083333333335, + 0.0032446463335496427, + 0.003234152652005175, + 0.0032237266279819474, + 0.0032133676092544984, + 0.0032030749519538757, + 0.0031928480204342275, + 0.0031826861871419474, + 0.0031725888324873096, + 0.003162555344718533, + 0.003152585119798235, + 0.0031426775612822125, + 0.003132832080200501, + 0.0031230480949406628, + 0.0031133250311332506, + 0.0031036623215394163, + 0.003094059405940594, + 0.0030845157310302285, + 0.003075030750307503, + 0.0030656039239730227, + 0.003056234718826406, + 0.0030469226081657527, + 0.003037667071688943, + 0.0030284675953967297, + 0.0030193236714975845, + 0.0030102347983142685, + 0.003001200480192077, + 0.002992220227408737, + 0.002983293556085919, + 0.0029744199881023203, + 0.0029655990510083037, + 0.0029568302779420462, + 0.00294811320754717, + 0.0029394473838918285, + 0.0029308323563892145, + 0.0029222676797194627, + 0.002913752913752914, + 0.0029052876234747236, + 0.002896871378910777, + 0.0028885037550548816, + 0.0028801843317972347, + 0.0028719126938541073, + 0.00286368843069874, + 0.0028555111364934323, + 0.0028473804100227792, + 0.0028392958546280523, + 0.0028312570781426952, + 0.0028232636928289105, + 0.0028153153153153156, + 0.002807411566535654, + 0.002799552071668533, + 0.0027917364600781687, + 0.0027839643652561247, + 0.00277623542476402, + 0.0027685492801771874, + 0.0027609055770292656, + 0.0027533039647577094, + 0.0027457440966501927, + 0.002738225629791895, + 0.002730748225013654, + 0.0027233115468409588, + 0.0027159152634437804, + 0.0027085590465872156, + 0.0027012425715829285, + 0.0026939655172413795, + 0.0026867275658248252, + 0.002679528403001072, + 0.002672367717797969, + 0.0026652452025586353, + 0.002658160552897395, + 0.002651113467656416, + 0.0026441036488630354, + 0.0026371308016877636, + 0.002630194634402946, + 0.0026232948583420775, + 0.0026164311878597592, + 0.002609603340292276, + 0.0026028110359187923, + 0.002596053997923157, + 0.002589331952356292, + 0.0025826446280991736, + 0.002575991756826378, + 0.0025693730729701957, + 0.0025627883136852894, + 0.002556237218813906, + 0.0025497195308516064, + 0.00254323499491353, + 0.002536783358701167, + 0.0025303643724696357, + 0.002523977788995457, + 0.0025176233635448137, + 0.0025113008538422904, + 0.00250501002004008, + 0.0024987506246876563, + 0.0024925224327018943, + 0.0024863252113376433, + 0.00248015873015873, + 0.002474022761009401, + 0.0024679170779861796, + 0.0024618414574101425, + 0.002455795677799607, + 0.0024497795198432145, + 0.0024437927663734115, + 0.0024378352023403218, + 0.0024319066147859923, + 0.0024260067928190197, + 0.0024201355275895453, + 0.002414292612264607 + ], + "AH": [ + 0.0067341844754096325, + 0.006689138582215426, + 0.006644691321132434, + 0.006600830837752314, + 0.006557545588611102, + 0.006514824331058655, + 0.006472656113523545, + 0.006431030266154769, + 0.0063899363918205054, + 0.0063493643574477066, + 0.006309304285695871, + 0.006269746546937238, + 0.006230681751540068, + 0.006192100742440809, + 0.006153994587983602, + 0.00611635457503068, + 0.00607917220231835, + 0.006042439174057446, + 0.006006147393760264, + 0.005970288958293102, + 0.0059348561521392895, + 0.005899841441861398, + 0.005865237470764839, + 0.005831037053743993, + 0.005797233172306848, + 0.00576381896977618, + 0.005730787746650368, + 0.005698132956126534, + 0.005665848199774892, + 0.005633927223358981, + 0.0056023639127955605, + 0.005571152290251735, + 0.005540286510370862, + 0.005509760856621693, + 0.0054795697377691965, + 0.005449707684461957, + 0.005420169345926373, + 0.005390949486772545, + 0.005362042983900528, + 0.005333444823504729, + 0.0053051500981755595, + 0.005277154004092566, + 0.0052494518383048305, + 0.005222038996096856, + 0.005194910968438826, + 0.005168063339510587, + 0.005141491784309782, + 0.005115192066325713, + 0.00508916003528892, + 0.005063391624987812, + 0.005037882851151698, + 0.005012629809395763, + 0.0049876286732302155, + 0.0049628756921262784, + 0.004938367189642134, + 0.004914099561600382, + 0.00489006927432345, + 0.004866272862915855, + 0.004842706929601537, + 0.004819368142103153, + 0.0047962532320751095, + 0.004773358993574561, + 0.004750682281579932, + 0.0047282200105522865, + 0.0047059691530342285, + 0.004683926738288546, + 0.004662089850979267, + 0.0046404556298833555, + 0.004619021266641932, + 0.004597784004545691, + 0.004576741137351403, + 0.004555890008133723, + 0.004535228008166747, + 0.0045147525758348905, + 0.004494461195575061, + 0.004474351396846821, + 0.00445442075312763, + 0.004434666880940297, + 0.00441508743889818, + 0.00439568012678504, + 0.004376442684650428, + 0.0043573728919330534, + 0.0043384685666083556, + 0.004319727564354503, + 0.004301147777740155, + 0.0042827271354388685, + 0.004264463601455271, + 0.004246355174374994, + 0.004228399886637035, + 0.004210595803817885, + 0.004192941023936303, + 0.004175433676780527, + 0.004158071923241691, + 0.0041408539546743395, + 0.00412377799226693, + 0.004106842286428325, + 0.004090045116192043, + 0.0040733847886309515, + 0.004056859638290389, + 0.0040404680266334925, + 0.004024208341497193, + 0.004008078996565745, + 0.003992078430854695, + 0.0039762051082052885, + 0.00396045751679619, + 0.00394483416866076, + 0.003929333599218099, + 0.003913954366818739, + 0.003898695052294121, + 0.00388355425852116, + 0.003868530609996146, + 0.0038536227524192945, + 0.003838829352284412, + 0.0038241490964856517, + 0.0038095806919244968, + 0.0037951228651338376, + 0.0037807743619053813, + 0.0037665339469252768, + 0.003752400403423506, + 0.0037383725328234974, + 0.0037244491544043967, + 0.0037106291049719964, + 0.003696911238532108, + 0.0036832944259737044, + 0.0036697775547616107, + 0.0036563595286316364, + 0.0036430392672932577, + 0.003629815706142736, + 0.0036166877959766808, + 0.003603654502715825, + 0.003590714807133244, + 0.0035778677045881224, + 0.0035651122047677397, + 0.0035524473314296756, + 0.003539872122155563, + 0.0035273856281066163, + 0.003514986913784046, + 0.003502675056795912, + 0.0034904491476295263, + 0.0034783082894258577, + 0.0034662515977597064, + 0.00345427820042854, + 0.003442387237237776, + 0.003430577859796502, + 0.0034188492313178553, + 0.0034072005264169647, + 0.003395630930921545, + 0.0033841396416800507, + 0.003372725866374715, + 0.0033613888233432476, + 0.003350127741396758, + 0.003338941859645894, + 0.003327830427330092, + 0.003316792703649929, + 0.0033058279576005933, + 0.0032949354678124543, + 0.0032841145223923007, + 0.003273364418767466, + 0.0032626844635352814, + 0.003252073972311198, + 0.0032415322695868998, + 0.0032310586885830883, + 0.0032206525711100387, + 0.003210313267431264, + 0.003200040136126292, + 0.0031898325439578823, + 0.0031796898657443506, + 0.003169611484229895, + 0.0031595967899586963, + 0.003149645181154792, + 0.003139756063599286, + 0.003129928850511998, + 0.003120162962437556, + 0.003110457827129265, + 0.003100812879437864, + 0.003091227561202947, + 0.003081701321143493, + 0.0030722336147541718, + 0.003062823904199652, + 0.003053471658213791, + 0.003044176352000605, + 0.0030349374671332363, + 0.003025754491460697, + 0.0030166269190117223, + 0.0030075542499008456, + 0.0029985359902398034, + 0.0029895716520460525, + 0.00298066075315373, + 0.002971802817130609, + 0.002962997373190168, + 0.0029542439561081046, + 0.002945542106143728, + 0.0029368913689553633, + 0.002928291295523522, + 0.002919741442073631, + 0.0029112413699978745, + 0.0029027906457814723, + 0.002894388840928741, + 0.002886035531890485, + 0.0028777302999936083, + 0.0028694727313696156, + 0.0028612624168868894, + 0.0028530989520836325, + 0.002844981937100588, + 0.0028369109766148703, + 0.002828885679777793, + 0.002820905660152251, + 0.002812970535646553, + 0.0028050799284573547, + 0.0027972334650094854, + 0.0027894307758948855, + 0.002781671495815985, + 0.002773955263528638, + 0.002766281721786168, + 0.002758650517283412, + 0.00275106130060343, + 0.002743513726163771, + 0.0027360074521638467, + 0.002728542140533863, + 0.002721117456883304, + 0.0027137330704518625, + 0.0027063886540601434, + 0.0026990838840599274, + 0.0026918184402886514, + 0.002684592006022335, + 0.002677404267927841, + 0.0026702549160191325, + 0.002663143643612642, + 0.002656070147283085, + 0.002649034126819494, + 0.0026420352851848072, + 0.002635073328472126, + 0.0026281479658638585, + 0.0026212589095926386, + 0.0026144058749000276, + 0.002607588579996989, + 0.002600806746027251, + 0.0025940600970273398, + 0.0025873483598897185, + 0.002580671264326595, + 0.002574028542832396, + 0.0025674199306497947, + 0.00256084516573174, + 0.0025543039887103713, + 0.0025477961428606033, + 0.002541321374065708, + 0.002534879430787562, + 0.0025284700640311186, + 0.002522093027312655, + 0.00251574807663002, + 0.002509434970429991, + 0.0025031534695769686, + 0.002496903337324996, + 0.002490684339286009, + 0.002484496243401635, + 0.0024783388199132173, + 0.0024722118413362804, + 0.0024661150824274447, + 0.0024600483201611123, + 0.0024540113337023772, + 0.0024480039043761614, + 0.0024420258156445662, + 0.002436076853080449, + 0.002430156804340333, + 0.0024242654591390966, + 0.0024184026092273214, + 0.0024125680483642054, + 0.002406761572294691, + 0.0024009829787259296, + 0.002395232067302411, + 0.0023895086395835374, + 0.0023838124990218645, + 0.0023781434509393407, + 0.002372501302504215, + 0.0023668858627121647, + 0.002361296942361646, + 0.0023557343540343556, + 0.0023501979120741368, + 0.002344687432565662, + 0.0023392027333146714, + 0.0023337436338275452, + 0.002328309955291763, + 0.002322901520556364, + 0.002317518154112186, + 0.0023121596820736556, + 0.002306825932159917, + 0.0023015167336755127, + 0.0022962319174928414, + 0.002290971316035062, + 0.0022857347632561087, + 0.0022805220946262583, + 0.00227533314711148, + 0.002270167759159669, + 0.002265025770681328, + 0.0022599070230349128, + 0.002254811359008846, + 0.002249738622807529, + 0.002244688660032912, + 0.002239661317670727, + 0.002234656444074501 + ], + "AI": [ + 0.0030571067541678154, + 0.0030477893368010545, + 0.003038528541911445, + 0.0030293238549155, + 0.0030201747674465373, + 0.003011080777260311, + 0.0030020413881439723, + 0.002993056109825254, + 0.0029841244578840964, + 0.002975245953665606, + 0.0029664201241941246, + 0.002957646502089961, + 0.002948924625486571, + 0.0029402540379488418, + 0.0029316342883947133, + 0.002923064931015684, + 0.0029145455252010954, + 0.002906075635461969, + 0.0028976548313564, + 0.00288928268741806, + 0.002880958783082921, + 0.0028726827026199775, + 0.0028644540350608594, + 0.0028562723741336615, + 0.0028481373181938885, + 0.0028400484701605055, + 0.0028320054374504355, + 0.002824007831915054, + 0.0028160552697780172, + 0.002808147371573977, + 0.002800283762087963, + 0.0027924640702956527, + 0.0027846879293060844, + 0.0027769549763032586, + 0.002769264852490405, + 0.002761617203034028, + 0.0027540116770095047, + 0.0027464479273473508, + 0.002738925610780374, + 0.002731444387792159, + 0.0027240039225655543, + 0.002716603882932489, + 0.0027092439403244573, + 0.0027019237697241127, + 0.002694643049617307, + 0.0026874014619464592, + 0.0026801986920630405, + 0.002673034428683385, + 0.0026659083638431724, + 0.0026588201928530175, + 0.002651769614255839, + 0.0026447563297835597, + 0.002637780044314697, + 0.002630840465834172, + 0.002623937305391344, + 0.002617070277060485, + 0.002610239097901257, + 0.0026034434879200763, + 0.0025966831700308113, + 0.002589957870018589, + 0.002583267316501825, + 0.0025766112408960318, + 0.00256998937737718, + 0.0025634014628477253, + 0.002556847236900417, + 0.002550326441784545, + 0.002543838822372191, + 0.0025373841261249197, + 0.0025309621030606966, + 0.0025245725057223556, + 0.0025182150891447375, + 0.0025118896108244915, + 0.002505595830688545, + 0.002499333511063684, + 0.0024931024166472415, + 0.002486902314477124, + 0.0024807329739027217, + 0.0024745941665567095, + 0.0024684856663266252, + 0.0024624072493268923, + 0.0024563586938721738, + 0.0024503397804496174, + 0.002444350291692432, + 0.0024383900123545743, + 0.0024324587292836597, + 0.002426556231396315, + 0.0024206823096537544, + 0.0024148367570351326, + 0.0024090193685157857, + 0.0024032299410408076, + 0.0023974682735032893, + 0.0023917341667198944, + 0.002386027423408432, + 0.0023803478481656537, + 0.0023746952474432703, + 0.002369069429528192, + 0.0023634702045189915, + 0.002357897384305918, + 0.0023523507825486956, + 0.002346830214656759, + 0.002341335497767938, + 0.0023358664507286964, + 0.002330422894074591, + 0.002325004650009399, + 0.0023196115423871344, + 0.0023142433966922837, + 0.0023089000400209336, + 0.002303581301062785, + 0.0022982870100818342, + 0.0022930169988992777, + 0.002287771100875524, + 0.002282549150891766, + 0.0022773509853337703, + 0.0022721764420745583, + 0.0022670253604570867, + 0.0022618975812775943, + 0.0022567929467698367, + 0.0022517113005884326, + 0.0022466524877930993, + 0.002241616354832887, + 0.002236602749530414, + 0.0022316115210663234, + 0.002226642519965516, + 0.0022216955980804975, + 0.0022167706085773897, + 0.002211867405921941, + 0.0022069858458642067, + 0.00220212578542478, + 0.0021972870828816937, + 0.002192469597754876, + 0.0021876731907943814, + 0.0021828977239652936, + 0.0021781430604361773, + 0.0021734090645646464, + 0.002168695601885373, + 0.0021640025390963213, + 0.0021593297440474224, + 0.0021546770857274744, + 0.0021500444342517078, + 0.002145431660850239, + 0.0021408386378556354, + 0.0021362652386920367, + 0.0021317113378620522, + 0.0021271768109365485, + 0.00212266153454288, + 0.0021181653863533434, + 0.002113688245075185, + 0.002109229990438166, + 0.0021047905031852387, + 0.002100369665060997, + 0.002095967358801687, + 0.002091583468124325, + 0.0020872178777169292, + 0.0020828704732280823, + 0.002078541141257606, + 0.0020742297693456813, + 0.0020699362459635218, + 0.0020656604605044926, + 0.002061402303273452, + 0.002057161665478091, + 0.0020529384392193872, + 0.002048732517482499, + 0.0020445437941281064, + 0.002040372163882642, + 0.002036217522330519, + 0.00203207976590436, + 0.002027958791877449, + 0.002023854498353961, + 0.002019766784262078, + 0.002015695549344221, + 0.002011640694150163, + 0.0020076021200279293, + 0.002003579729116023, + 0.0019995734243360985, + 0.0019955831093845244, + 0.001991608688724833, + 0.001987650067580171, + 0.001983707151925529, + 0.001979779848480856, + 0.001975868064703068, + 0.0019719717087791633, + 0.0019680906896188954, + 0.00196422491684789, + 0.001960374300799872, + 0.0019565387525108946, + 0.001952718183711788, + 0.0019489125068212765, + 0.0019451216349395395, + 0.001941345481841994, + 0.001937583961971745, + 0.0019338369904340347, + 0.0019301044829893588, + 0.0019263863560474714, + 0.001922682526661168, + 0.0019189929125194016, + 0.0019153174319423982, + 0.001911656003874329, + 0.0019080085478782038, + 0.0019043749841303192, + 0.0019007552334127098, + 0.001897149217109817, + 0.0018935568572004957, + 0.0018899780762542395, + 0.0018864127974245193, + 0.00188286094444301, + 0.001879322441615816, + 0.0018757972138159218, + 0.0018722851864796386, + 0.0018687862856003878, + 0.0018653004377238158, + 0.0018618275699426867, + 0.0018583676098915536, + 0.0018549204857418733, + 0.0018514861261973437, + 0.0018480644604883523, + 0.0018446554183677577, + 0.0018412589301057825, + 0.001837874926484906, + 0.0018345033387960896, + 0.001831144098833004, + 0.0018277971388882541, + 0.0018244623917484937, + 0.0018211397906904292, + 0.0018178292694750464, + 0.0018145307623449458, + 0.0018112442040185694, + 0.0018079695296868703, + 0.0018047066750084273, + 0.0018014555761054485, + 0.0017982161695597743, + 0.0017949883924084364, + 0.0017917721821396615, + 0.0017885674766890958, + 0.0017853742144353646, + 0.0017821923341967416, + 0.0017790217752264859, + 0.0017758624772097331, + 0.001772714380259055, + 0.0017695774249109064, + 0.0017664515521220725, + 0.0017633367032656722, + 0.0017602328201276052, + 0.0017571398449032216, + 0.0017540577201926588, + 0.0017509863889990651, + 0.0017479257947234927, + 0.0017448758811622334, + 0.0017418365925030432, + 0.0017388078733220347, + 0.0017357896685799012, + 0.0017327819236190312, + 0.0017297845841597326, + 0.001726797596297791, + 0.0017238209065000287, + 0.0017208544616020838, + 0.0017178982088048578, + 0.001714952095671407, + 0.0017120160701242781, + 0.001709090080441067, + 0.0017061740752537524, + 0.0017032680035427017, + 0.0017003718146368918, + 0.0016974854582079146, + 0.0016946088842695328, + 0.0016917420431732388, + 0.0016888848856062566, + 0.0016860373625879888, + 0.0016831994254680183, + 0.0016803710259225557, + 0.001677552115952441, + 0.0016747426478798122, + 0.001671942574345664, + 0.0016691518483074042, + 0.0016663704230359677, + 0.001663598252112708, + 0.0016608352894282863, + 0.0016580814891782314, + 0.001655336805862051, + 0.0016526011942799013, + 0.0016498746095297001, + 0.001647157007006017, + 0.0016444483423960765, + 0.0016417485716786473, + 0.0016390576511211563, + 0.0016363755372765798, + 0.0016337021869825552, + 0.0016310375573580504, + 0.0016283816058013656, + 0.0016257342899876903, + 0.0016230955678671055, + 0.0016204653976621408, + 0.0016178437378662203, + 0.0016152305472401096, + 0.0016126257848112502, + 0.0016100294098706502, + 0.0016074413819708866, + 0.0016048616609247723, + 0.0016022902068022482, + 0.0015997269799288283, + 0.0015971719408833795 + ], + "AJ": [ + 0.006762192156118729, + 0.006716772052828501, + 0.00667195803158438, + 0.006627738041526943, + 0.006584100349173561, + 0.0065410335280375875, + 0.006498526448654118, + 0.006456568268990548, + 0.0064151484252272795, + 0.006374256622891039, + 0.006333882828323922, + 0.006294017260476847, + 0.006254650383007654, + 0.006215772896678962, + 0.006177375732031143, + 0.006139450042331518, + 0.006101987196778014, + 0.0060649787739506245, + 0.006028416555501126, + 0.005992292520067721, + 0.005956598837409288, + 0.0059213278627459065, + 0.005886472131301446, + 0.0058520243530360005, + 0.005817977407561514, + 0.005784324339237701, + 0.005751058352433391, + 0.005718172806951305, + 0.005685661213609805, + 0.00565351722997498, + 0.005621734656233723, + 0.0055903074312086964, + 0.005559229628504747, + 0.005528495452782334, + 0.005498099236156628, + 0.005468035434709639, + 0.005438298625122684, + 0.005408883501413886, + 0.0053797848717795915, + 0.005350997655543477, + 0.0053225168801958045, + 0.005294337678532379, + 0.005266455285880101, + 0.005238865037411777, + 0.005211562365544653, + 0.005184542797419089, + 0.005157801952455854, + 0.005131335539988902, + 0.005105139356970101, + 0.005079209285743236, + 0.005053541291887509, + 0.005028131422124771, + 0.005002975802289145, + 0.004978070635358156, + 0.004953412199542928, + 0.004928996846432332, + 0.004904820999195092, + 0.0048808811508316285, + 0.004857173862480302, + 0.004833695761766954, + 0.004810443541209519, + 0.004787413956662601, + 0.004764603825809122, + 0.0047420100266937215, + 0.004719629496300115, + 0.0046974592291642026, + 0.004675496276031588, + 0.0046537377425468485, + 0.004632180787983442, + 0.004610822624007804, + 0.004589660513475646, + 0.004568691769263777, + 0.004547913753133015, + 0.004527323874618183, + 0.0045069195899578585, + 0.004486698401040101, + 0.004466657854386824, + 0.004446795540160364, + 0.004427109091197812, + 0.004407596182069762, + 0.004388254528165714, + 0.004369081884800785, + 0.004350076046349072, + 0.004331234845396992, + 0.004312556151919056, + 0.004294037872475398, + 0.004275677949430401, + 0.004257474360187974, + 0.004239425116452811, + 0.004221528263502972, + 0.004203781879484669, + 0.004186184074727484, + 0.004168732991068458, + 0.004151426801202174, + 0.004134263708041486, + 0.004117241944094685, + 0.004100359770860207, + 0.004083615478233549, + 0.004067007383930399, + 0.004050533832923087, + 0.004034193196890579, + 0.004017983873682018, + 0.0040019042867938115, + 0.003985952884856925, + 0.003970128141139506, + 0.003954428553058831, + 0.003938852641706347, + 0.003923398951382051, + 0.003908066049143066, + 0.0038928525243582257, + 0.0038777569882775254, + 0.003862778073608686, + 0.003847914434103261, + 0.003833164744155848, + 0.0038185276984079586, + 0.0038040020113625506, + 0.0037895864170101046, + 0.0037752796684580314, + 0.0037610805375729583, + 0.0037469878146290103, + 0.003733000307963197, + 0.0037191168436403466, + 0.0037053362651255917, + 0.0036916574329606267, + 0.003678079224452846, + 0.0036646005333651477, + 0.0036512202696175056, + 0.00363793735899276, + 0.003624750742848404, + 0.0036116593778354744, + 0.003598662235624772, + 0.003585758302634856, + 0.0035729465797715854, + 0.0035602260821681053, + 0.0035475958389334927, + 0.003535054892904732, + 0.0035226023004071294, + 0.003510237131014282, + 0.003497958467319595, + 0.0034857654047073527, + 0.003473657051130452, + 0.00346163252689502, + 0.003449690964445029, + 0.003437831508153799, + 0.003426053314121935, + 0.0034143555499743794, + 0.003402737394665678, + 0.0033911980382881346, + 0.003379736681882628, + 0.0033683525372549816, + 0.003357044826794997, + 0.0033458127832992623, + 0.0033346556497981794, + 0.0033235726793856557, + 0.0033125631350510165, + 0.0033016262895186888, + 0.00329076142508522, + 0.003279967833463182, + 0.0032692448156284026, + 0.003258591681666756, + 0.003248007750628501, + 0.003237492350382176, + 0.0032270448174709365, + 0.00321666449697644, + 0.0032063507423787385, + 0.003196102915423049, + 0.0031859203859889718, + 0.003175802531960814, + 0.003165748739099472, + 0.0031557584009207496, + 0.0031458309185719013, + 0.003135965700710841, + 0.003126162163391566, + 0.0031164197299464735, + 0.003106737830874673, + 0.0030971159037298523, + 0.0030875533930128096, + 0.0030780497500630943, + 0.003068604432955313, + 0.0030592169063947683, + 0.0030498866416182047, + 0.0030406131162927785, + 0.0030313958144185804, + 0.003022234226234932, + 0.003013127848124464, + 0.003004076182520743, + 0.0029950787378201227, + 0.0029861350282882615, + 0.0029772445739779663, + 0.0029684069006401526, + 0.0029596215396381353, + 0.0029508880278701355, + 0.002942205907681572, + 0.0029335747267897894, + 0.0029249940382032324, + 0.002916463400145286, + 0.002907982375977447, + 0.0028995505341258276, + 0.002891167448007659, + 0.0028828326959591255, + 0.0028745458611645347, + 0.0028663065315872593, + 0.0028581142999015707, + 0.002849968763424471, + 0.0028418695240512992, + 0.002833816188189342, + 0.002825808366694993, + 0.002817845674811137, + 0.0028099277321047555, + 0.002802054162406753, + 0.002794224593753114, + 0.0027864386583253964, + 0.0027786959923921106, + 0.0027709962362554297, + 0.002763339034192569, + 0.0027557240344004974, + 0.002748150888945755, + 0.002740619253707388, + 0.0027331287883272104, + 0.0027256791561578453, + 0.0027182700242120994, + 0.0027109010631136687, + 0.002703571947048067, + 0.002696282353715107, + 0.0026890319642813854, + 0.0026818204633329845, + 0.0026746475388310653, + 0.0026675128820663474, + 0.0026604161876142562, + 0.0026533571532920686, + 0.0026463354801160577, + 0.002639350872258195, + 0.0026324030370064033, + 0.0026254916847217036, + 0.002618616528800244, + 0.0026117772856302235, + 0.002604973674557698, + 0.002598205417842836, + 0.0025914722406270574, + 0.0025847738708926205, + 0.002578110039425985, + 0.002571480479785171, + 0.0025648849282591257, + 0.0025583231238373028, + 0.0025517948081721364, + 0.0025452997255472898, + 0.0025388376228427934, + 0.0025324082495024047, + 0.0025260113575023, + 0.002519646701317546, + 0.002513314037893455, + 0.002507013126608282, + 0.002500743729253241, + 0.0024945056099914265, + 0.002488298535335609, + 0.002482122274116483, + 0.0024759765974537995, + 0.0024698612787286134, + 0.0024637760935557473, + 0.0024577208197553713, + 0.002451695237326801, + 0.002445699128421852, + 0.002439732277317308, + 0.0024337944703918257, + 0.0024278854960966267, + 0.0024220051449337365, + 0.0024161532094295612, + 0.002410329484110907, + 0.0024045337654803323, + 0.0023987658519937227, + 0.002393025544035865, + 0.0023873126438973546, + 0.002381626955752836, + 0.0023759682856376863, + 0.0023703364414262573, + 0.0023647312328116676, + 0.002359152471279158, + 0.002353599970093878, + 0.002348073544269802, + 0.002342573010558402, + 0.00233709818742156, + 0.002331648895015359, + 0.0023262249551689873, + 0.0023208261913660877, + 0.0023154524287245515, + 0.0023101034939789766, + 0.002304779215460462, + 0.002299479423079287, + 0.002294203948308482, + 0.0022889526241600677, + 0.0022837252851759526, + 0.0022785217674030633, + 0.002273341908380022, + 0.0022681855471198276, + 0.0022630525240923127, + 0.0022579426812083803, + 0.002252855861803349, + 0.0022477919106214106, + 0.0022427506737991987, + 0.0022377319988506894 + ], + "AK": [ + 0.007894736842105263, + 0.007832898172323759, + 0.0077720207253886, + 0.007712082262210798, + 0.007653061224489796, + 0.007594936708860759, + 0.007537688442211054, + 0.007481296758104738, + 0.007425742574257425, + 0.00737100737100737, + 0.007317073170731708, + 0.007263922518159807, + 0.007211538461538461, + 0.007159904534606205, + 0.007109004739336493, + 0.007058823529411764, + 0.007009345794392522, + 0.006960556844547564, + 0.006912442396313364, + 0.006864988558352402, + 0.006818181818181817, + 0.006772009029345372, + 0.0067264573991031385, + 0.006681514476614699, + 0.006637168141592921, + 0.006593406593406593, + 0.006550218340611353, + 0.00650759219088937, + 0.00646551724137931, + 0.006423982869379015, + 0.006382978723404255, + 0.0063424947145877385, + 0.0063025210084033615, + 0.006263048016701461, + 0.006224066390041493, + 0.006185567010309279, + 0.006147540983606557, + 0.006109979633401222, + 0.006072874493927126, + 0.006036217303822938, + 0.006, + 0.005964214711729622, + 0.005928853754940712, + 0.005893909626719057, + 0.005859375, + 0.005825242718446602, + 0.005791505791505791, + 0.005758157389635317, + 0.005725190839694656, + 0.0056925996204933585, + 0.005660377358490566, + 0.005628517823639775, + 0.005597014925373134, + 0.0055658627087198514, + 0.005535055350553505, + 0.005504587155963302, + 0.005474452554744526, + 0.0054446460980036296, + 0.005415162454873646, + 0.0053859964093357264, + 0.005357142857142857, + 0.0053285968028419185, + 0.005300353356890459, + 0.005272407732864675, + 0.005244755244755245, + 0.005217391304347826, + 0.005190311418685121, + 0.0051635111876075735, + 0.005136986301369863, + 0.005110732538330494, + 0.005084745762711865, + 0.00505902192242833, + 0.0050335570469798654, + 0.005008347245409016, + 0.004983388704318937, + 0.0049586776859504135, + 0.00493421052631579, + 0.004909983633387888, + 0.00488599348534202, + 0.00486223662884927, + 0.004838709677419354, + 0.004815409309791333, + 0.004792332268370607, + 0.0047694753577106515, + 0.004746835443037975, + 0.004724409448818898, + 0.004702194357366771, + 0.0046801872074883, + 0.004658385093167702, + 0.00463678516228748, + 0.004615384615384616, + 0.004594180704441041, + 0.004573170731707317, + 0.004552352048558422, + 0.004531722054380664, + 0.004511278195488722, + 0.004491017964071856, + 0.004470938897168405, + 0.004451038575667656, + 0.004431314623338257, + 0.004411764705882353, + 0.004392386530014641, + 0.004373177842565597, + 0.0043541364296081275, + 0.004335260115606936, + 0.004316546762589928, + 0.004297994269340974, + 0.0042796005706134095, + 0.004261363636363636, + 0.004243281471004243, + 0.004225352112676057, + 0.004207573632538569, + 0.004189944134078212, + 0.004172461752433936, + 0.004155124653739612, + 0.004137931034482759, + 0.004120879120879121, + 0.004103967168262654, + 0.004087193460490463, + 0.004070556309362279, + 0.004054054054054054, + 0.004037685060565276, + 0.004021447721179625, + 0.004005340453938585, + 0.003989361702127659, + 0.003973509933774834, + 0.00395778364116095, + 0.003942181340341655, + 0.003926701570680628, + 0.003911342894393742, + 0.0038961038961038957, + 0.0038809831824062097, + 0.003865979381443299, + 0.003851091142490372, + 0.0038363171355498722, + 0.003821656050955414, + 0.0038071065989847713, + 0.003792667509481669, + 0.003778337531486146, + 0.0037641154328732747, + 0.00375, + 0.0037359900373599006, + 0.003722084367245657, + 0.003708281829419036, + 0.0036945812807881767, + 0.003680981595092024, + 0.003667481662591687, + 0.0036540803897685743, + 0.003640776699029126, + 0.0036275695284159614, + 0.003614457831325301, + 0.003601440576230492, + 0.0035885167464114833, + 0.003575685339690107, + 0.003562945368171021, + 0.003550295857988166, + 0.0035377358490566034, + 0.0035252643948296123, + 0.0035128805620608895, + 0.0035005834305717617, + 0.0034883720930232558, + 0.003476245654692931, + 0.0034642032332563508, + 0.0034522439585730727, + 0.003440366972477064, + 0.0034285714285714284, + 0.003416856492027335, + 0.0034052213393870596, + 0.003393665158371041, + 0.003382187147688839, + 0.0033707865168539322, + 0.0033594624860022394, + 0.003348214285714285, + 0.003337041156840934, + 0.0033259423503325942, + 0.003314917127071823, + 0.0033039647577092508, + 0.003293084522502744, + 0.0032822757111597373, + 0.003271537622682661, + 0.0032608695652173916, + 0.0032502708559046583, + 0.0032397408207343412, + 0.003229278794402583, + 0.003218884120171674, + 0.0032085561497326204, + 0.003198294243070362, + 0.003188097768331562, + 0.0031779661016949155, + 0.003167898627243928, + 0.003157894736842105, + 0.0031479538300104933, + 0.003138075313807531, + 0.0031282586027111575, + 0.0031185031185031187, + 0.0031088082901554403, + 0.0030991735537190084, + 0.0030895983522142116, + 0.0030800821355236136, + 0.0030706243602865915, + 0.003061224489795918, + 0.003051881993896236, + 0.0030425963488843813, + 0.0030333670374115265, + 0.0030241935483870963, + 0.0030150753768844224, + 0.003006012024048096, + 0.0029970029970029966, + 0.0029880478087649398, + 0.002979145978152929, + 0.00297029702970297, + 0.002961500493583415, + 0.002952755905511811, + 0.0029440628066732086, + 0.0029354207436399216, + 0.002926829268292683, + 0.0029182879377431903, + 0.0029097963142580016, + 0.0029013539651837525, + 0.002892960462873674, + 0.0028846153846153843, + 0.0028763183125599234, + 0.0028680688336520073, + 0.002859866539561487, + 0.0028517110266159697, + 0.002843601895734597, + 0.0028355387523629487, + 0.002827521206409048, + 0.002819548872180451, + 0.002811621368322399, + 0.0028037383177570096, + 0.0027958993476234852, + 0.0027881040892193303, + 0.0027803521779425394, + 0.0027726432532347504, + 0.002764976958525345, + 0.0027573529411764703, + 0.002749770852428964, + 0.0027422303473491768, + 0.0027347310847766633, + 0.002727272727272727, + 0.002719854941069809, + 0.0027124773960216994, + 0.0027051397655545534, + 0.0026978417266187047, + 0.0026905829596412553, + 0.0026833631484794273, + 0.0026761819803746653, + 0.002669039145907473, + 0.0026619343389529724, + 0.0026548672566371677, + 0.0026478375992939097, + 0.002640845070422535, + 0.0026338893766461808, + 0.0026269702276707526, + 0.0026200873362445414, + 0.0026132404181184667, + 0.0026064291920069502, + 0.0025996533795493936, + 0.0025929127052722557, + 0.0025862068965517237, + 0.002579535683576956, + 0.0025728987993138934, + 0.002566295979469632, + 0.002559726962457338, + 0.002553191489361702, + 0.0025466893039049233, + 0.002540220152413209, + 0.002533783783783784, + 0.0025273799494524006, + 0.0025210084033613443, + 0.002514668901927913, + 0.0025083612040133776, + 0.0025020850708924102, + 0.0024958402662229617, + 0.0024896265560165973, + 0.0024834437086092716, + 0.002477291494632535, + 0.002471169686985173, + 0.0024650780608052587, + 0.0024590163934426227, + 0.002452984464431725, + 0.0024469820554649264, + 0.002441008950366151, + 0.002435064935064935, + 0.0024291497975708503, + 0.0024232633279483036, + 0.0024174053182917, + 0.0024115755627009644, + 0.0024057738572574178, + 0.0024, + 0.002394253790901835, + 0.0023885350318471337, + 0.002382843526608419, + 0.0023771790808240884, + 0.0023715415019762843, + 0.002365930599369085, + 0.002360346184107002, + 0.002354788069073783, + 0.002349256068911511 + ], + "AL": [ + 0.007367905597974067, + 0.00731401661401998, + 0.007260910196212, + 0.007208569421002675, + 0.007156977849331669, + 0.00710611950940776, + 0.00705597888022913, + 0.007006540875786005, + 0.006957790829931199, + 0.006909714481871498, + 0.006862297962262787, + 0.006815527779867381, + 0.006769390808757381, + 0.0067238742760340475, + 0.006678965750036792, + 0.00663465312902467, + 0.0065909246303030855, + 0.0065477687797788064, + 0.006505174401923108, + 0.0064631306101217145, + 0.006421626797400659, + 0.006380652627502981, + 0.006340198026307586, + 0.006300253173571191, + 0.006260808494981562, + 0.006221854654506309, + 0.00618338254702544, + 0.006145383291237483, + 0.006107848222823398, + 0.0060707688878607335, + 0.006034137036474485, + 0.005997944616720208, + 0.005962183768680962, + 0.005926846818778531, + 0.005891926274283366, + 0.005857414818017714, + 0.005823305303244597, + 0.005789590748733531, + 0.005756264333998562, + 0.005723319394694615, + 0.005690749418179264, + 0.0056585480392172816, + 0.005626709035835287, + 0.005595226325313174, + 0.005564093960309879, + 0.005533306125118598, + 0.0055028571320443476, + 0.005472741417900995, + 0.0054429535406232965, + 0.0054134881759888565, + 0.005384340114443775, + 0.005355504258034216, + 0.005326975617432561, + 0.00529874930906038, + 0.005270820552300659, + 0.005243184666799294, + 0.005215837069850293, + 0.005188773273861358, + 0.005161988883900515, + 0.005135479595315795, + 0.00510924119142997, + 0.005083269541302338, + 0.005057560597563571, + 0.005032110394310729, + 0.005006915045068894, + 0.004981970740812747, + 0.004957273748045665, + 0.004932820406938543, + 0.004908607129520348, + 0.0048846303979239725, + 0.004860886762682037, + 0.0048373728410728845, + 0.004814085315512973, + 0.0047910209319979025, + 0.004768176498585852, + 0.004745548883924533, + 0.004723135015821445, + 0.0047009318798529875, + 0.004678936518011545, + 0.00465714602739431, + 0.004635557558923864, + 0.004614168316107836, + 0.00459297555383098, + 0.0045719765771792265, + 0.004551168740299927, + 0.004530549445288079, + 0.004510116141106746, + 0.0044898663225338975, + 0.004469797529139674, + 0.004449907344286963, + 0.004430193394165505, + 0.004410653346844873, + 0.00439128491135321, + 0.004372085836787276, + 0.004353053911434257, + 0.004334186961926667, + 0.004315482852413455, + 0.004296939483753315, + 0.004278554792730871, + 0.004260326751290844, + 0.004242253365790649, + 0.00422433267627631, + 0.0042065627557728025, + 0.00418894170959061, + 0.004171467674658258, + 0.004154138818859288, + 0.004136953340396321, + 0.004119909467164007, + 0.004103005456141284, + 0.004086239592796748, + 0.004069610190509554, + 0.0040531155900009885, + 0.004036754158786682, + 0.004020524290636152, + 0.00400442440504567, + 0.003988452946727339, + 0.003972608385107712, + 0.003956889213837744, + 0.003941293950317171, + 0.003925821135226881, + 0.0039104693320741735, + 0.003895237126749329, + 0.0038801231270881864, + 0.0038651259624520318, + 0.003850244283310822, + 0.0038354767608386187, + 0.0038208220865185716, + 0.0038062789717558942, + 0.0037918461475003884, + 0.00377752236387785, + 0.003763306389828358, + 0.003749197012753447, + 0.0037351930381726017, + 0.003721293289385086, + 0.003707496607140426, + 0.003693801849316669, + 0.0036802078906046365, + 0.0036667136221995023, + 0.003653317951500812, + 0.00364001980181472, + 0.00362681811206933, + 0.003613711836528477, + 0.003600699944519503, + 0.003587781420159031, + 0.003574955262091617, + 0.003562220483230405, + 0.0035495761105028834, + 0.003537021184603528, + 0.0035245547597519966, + 0.0035121759034544286, + 0.003499883696271633, + 0.0034876772315908244, + 0.0034755556154038025, + 0.0034635179660877924, + 0.0034515634141916163, + 0.0034396911022269716, + 0.0034279001844632617, + 0.0034161898267259794, + 0.0034045592062013075, + 0.003393007511242274, + 0.003381533941180237, + 0.0033701377061405857, + 0.00335881802686, + 0.003347574134510811, + 0.0033364052705249225, + 0.0033253106864246096, + 0.0033142896436546554, + 0.0033033414134187034, + 0.003292465276518719, + 0.00328166052319645, + 0.0032709264529817705, + 0.0032602623745370263, + 0.0032496676055131513, + 0.003239141472400453, + 0.0032286833103887247, + 0.0032182924632246923, + 0.0032079682830770118, + 0.0031977101304001554, + 0.0031875173738031837, + 0.003177389389919405, + 0.0031673255632800323, + 0.003157325286189838, + 0.0031473879586025877, + 0.003137512988004243, + 0.003127699789292615, + 0.003117947784663677, + 0.0031082564034961013, + 0.0030986250822422345, + 0.0030890532643170765, + 0.00307954039999192, + 0.0030700859462888808, + 0.0030606893668774227, + 0.0030513501319742176, + 0.0030420677182405598, + 0.0030328416086879972, + 0.003023671292581076, + 0.003014556265341639, + 0.0030054960284586762, + 0.0029964900893955093, + 0.0029875379615023068, + 0.0029786391639263776, + 0.0029697932215277945, + 0.0029609996647945724, + 0.0029522580297582923, + 0.0029435678579134983, + 0.002934928696137984, + 0.0029263400966141884, + 0.0029178016167490384, + 0.0029093128191015616, + 0.0029008732713069474, + 0.002892482546001718, + 0.0028841402207526734, + 0.002875845877987171, + 0.0028675991049218474, + 0.002859399493493564, + 0.002851246640294347, + 0.0028431401465041084, + 0.0028350796178238102, + 0.002827064664415513, + 0.0028190949008357613, + 0.0028111699459756334, + 0.0028032894229996774, + 0.0027954529592868482, + 0.002787660186369001, + 0.0027799107398780443, + 0.00277220425948399, + 0.0027645403888423292, + 0.0027569187755387414, + 0.002749339071033363, + 0.002741800930609939, + 0.0027343040133214203, + 0.002726847981940894, + 0.0027194325029085142, + 0.002712057246282651, + 0.002704721885693706, + 0.0026974260982908227, + 0.0026901695646979196, + 0.0026829519689675063, + 0.0026757729985327217, + 0.0026686323441629245, + 0.0026615296999208393, + 0.002654464763116593, + 0.002647437234265526, + 0.002640446817046893, + 0.002633493218261229, + 0.0026265761477886063, + 0.0026196953185504412, + 0.0026128504464679736, + 0.0026060412504229635, + 0.0025992674522217207, + 0.002592528776554026, + 0.0025858249509573827, + 0.0025791557057808223, + 0.002572520774148268, + 0.002565919891921453, + 0.0025593527976672803, + 0.0025528192326225163, + 0.0025463189406582654, + 0.0025398516682488825, + 0.002533417164437779, + 0.002527015180803893, + 0.002520645471431937, + 0.0025143077928799773, + 0.002508001904148127, + 0.0025017275666470162, + 0.002495484544170923, + 0.0024892726028642453, + 0.002483091511194857, + 0.002476941039925018, + 0.0024708209620816213, + 0.0024647310529302136, + 0.0024586710899459074, + 0.00245264085278718, + 0.002446640123268784, + 0.0024406686853353232, + 0.002434726325036829, + 0.0024288128304994494, + 0.002422927991905688, + 0.0024170716014639826, + 0.0024112434533882787, + 0.0024054433438733813, + 0.002399671071067422, + 0.0023939264350552047, + 0.0023882092378284536, + 0.0023825192832667152, + 0.002376856377114711, + 0.0023712203269590226, + 0.002365610942207219, + 0.0023600280340658752, + 0.002354471415519921, + 0.002348940901311103, + 0.002343436307917779, + 0.0023379574535347114, + 0.0023325041580530836, + 0.0023270762430400715, + 0.002321673531720192, + 0.002316295848955985, + 0.0023109430212291393, + 0.0023056148766198437, + 0.0023003112447932406 + ], + "AM": [ + 0.006933778053873407, + 0.0068860318374406315, + 0.00683893868790153, + 0.006792485297413942, + 0.006746658717270204, + 0.006701446345862561, + 0.006656835917130843, + 0.00661281548946735, + 0.006569373435059589, + 0.006526498429652028, + 0.006484179442701521, + 0.006442405727919098, + 0.006401166814170134, + 0.0063604524967249, + 0.006320252828839745, + 0.0062805581136553545, + 0.006241358896398319, + 0.006202645956874253, + 0.006164410302236467, + 0.006126643160022649, + 0.006089335971444232, + 0.0060524803849197895, + 0.006016068249843354, + 0.005980091610573668, + 0.005944542700641042, + 0.005909413937155827, + 0.005874697915417837, + 0.005840387403712066, + 0.0058064753382862655, + 0.005772954818503706, + 0.005739819102160482, + 0.0057070616009660124, + 0.005674675876175206, + 0.005642655634369165, + 0.005610994723378893, + 0.00557968712834378, + 0.005548726967902207, + 0.005518108490509155, + 0.005487826070873059, + 0.005457874206511004, + 0.005428247514415618, + 0.0053989407278289825, + 0.005369948693123572, + 0.005341266366777564, + 0.005312888812453176, + 0.005284811198162709, + 0.005257028793525409, + 0.005229536967112702, + 0.005202331183871367, + 0.005175407002632193, + 0.005148760073692138, + 0.005122386136470425, + 0.005096281017240356, + 0.005070440626924411, + 0.0050448609589606175, + 0.005019538087232656, + 0.004994468164057464, + 0.004969647418240575, + 0.004945072153181629, + 0.004920738745040287, + 0.004896643640955656, + 0.004872783357315225, + 0.004849154478077544, + 0.004825753653140197, + 0.004802577596757951, + 0.004779623086004436, + 0.00475688695927623, + 0.004734366114844235, + 0.0047120575094403705, + 0.004689958156887997, + 0.0046680651267700934, + 0.004646375543130965, + 0.004624886583221244, + 0.0046035954762684295, + 0.0045824995022896164, + 0.004561595990931533, + 0.004540882320343664, + 0.004520355916082908, + 0.004500014250045092, + 0.004479854839429365, + 0.004459875245726552, + 0.004440073073735951, + 0.004420445970608089, + 0.004400991624913031, + 0.0043817077657331005, + 0.004362592161778922, + 0.00434364262052922, + 0.004324856987391268, + 0.0043062331448850966, + 0.0042877690118485745, + 0.004269462542660918, + 0.004251311726487739, + 0.004233314586544079, + 0.004215469179377873, + 0.004197773594169396, + 0.004180225952050254, + 0.004162824405437027, + 0.0041455671373831215, + 0.004128452360947277, + 0.004111478318575834, + 0.004094643281501664, + 0.004077945549156636, + 0.004061383448598965, + 0.004044955333955436, + 0.004028659585874506, + 0.004012494610996731, + 0.003996458841432515, + 0.00398055073425696, + 0.00396476877101426, + 0.003949111457235199, + 0.003933577321965087, + 0.003918164917302791, + 0.0039028728179508754, + 0.003887699620776619, + 0.003872643944382359, + 0.0038577044286873807, + 0.003842879734516913, + 0.003828168543201782, + 0.003813569556189611, + 0.003799081494659795, + 0.0037847030991531305, + 0.0037704331292041093, + 0.0037562703629852034, + 0.003742213596958921, + 0.0037282616455358575, + 0.003714413340741851, + 0.0037006675318920212, + 0.003687023085271024, + 0.003673478883823078, + 0.0036600338268457655, + 0.0036466868296933797, + 0.0036334368234827163, + 0.003620282754809967, + 0.00360722358547072, + 0.003594258292186847, + 0.0035813858663391596, + 0.0035686053137062856, + 0.003555915654207542, + 0.003543315921654022, + 0.0035308051635016824, + 0.003518382440613088, + 0.0035060468270211587, + 0.0034937974096986846, + 0.003481633288334285, + 0.0034695535751114726, + 0.003457557394492161, + 0.0034456438830059444, + 0.003433812189041374, + 0.0034220614726450105, + 0.0034103909053209147, + 0.0033987996698379153, + 0.0033872869600366506, + 0.003375851980643718, + 0.003364493947088487, + 0.003353212085323909, + 0.0033420056316506574, + 0.0033308738325441567, + 0.0033198159444858266, + 0.003308831233798326, + 0.003297918976482128, + 0.0032870784580580903, + 0.0032763089734098028, + 0.003265609826631266, + 0.003254980330877233, + 0.0032444198082162146, + 0.003233927589486596, + 0.0032235030141545273, + 0.003213145430175368, + 0.003202854193858906, + 0.0031926286697343542, + 0.0031824682304215646, + 0.0031723722565002443, + 0.0031623401363858328, + 0.0031523712662060444, + 0.0031424650496783, + 0.0031326208979924886, + 0.003122838229693059, + 0.003113116470565336, + 0.003103455053522497, + 0.0030938534184958844, + 0.003084311012326868, + 0.0030748272886593764, + 0.003065401707837534, + 0.0030560337368015222, + 0.0030467228489881037, + 0.0030374685242324784, + 0.0030282702486690294, + 0.003019127514639841, + 0.003010039820597221, + 0.003001006671015549, + 0.00299202757629935, + 0.002983102052694475, + 0.002974229622203506, + 0.002965409812497155, + 0.0029566421568332224, + 0.002947926193972883, + 0.002939261468100085, + 0.0029306475287422806, + 0.002922083930692043, + 0.0029135702339304625, + 0.0029051060035523157, + 0.00289669080969035, + 0.00288832422744556, + 0.0028800058368119164, + 0.002871735222608862, + 0.0028635119744118143, + 0.002855335686482441, + 0.0028472059577047126, + 0.0028391223915169572, + 0.0028310845958483544, + 0.0028230921830565414, + 0.002815144769862332, + 0.0028072419772924295, + 0.0027993834306154763, + 0.0027915687592852123, + 0.002783797596881632, + 0.002776069581053031, + 0.0027683843534607178, + 0.0027607415597228346, + 0.0027531408493601806, + 0.0027455818757429196, + 0.0027380642960370682, + 0.0027305877711536475, + 0.002723151965697168, + 0.002715756547915227, + 0.0027084011896503224, + 0.0027010855662890076, + 0.0026938093567174803, + 0.002686572243270957, + 0.0026793739116903748, + 0.0026722140510755388, + 0.0026650923538400484, + 0.002658008515668664, + 0.0026509622354720097, + 0.002643953215345718, + 0.002636981160527796, + 0.002630045779355994, + 0.002623146783230279, + 0.002616283886569315, + 0.002609456806772714, + 0.0026026652641837345, + 0.0025959089820468684, + 0.002589187686475425, + 0.002582501106410451, + 0.0025758489735860923, + 0.0025692310224942894, + 0.0025626469903465843, + 0.0025560966170441457, + 0.0025495796451382446, + 0.0025430958198002784, + 0.002536644888787576, + 0.0025302266024087583, + 0.002523840713495318, + 0.0025174869773663122, + 0.002511165151798389, + 0.0025048749969966977, + 0.0024986162755604724, + 0.0024923887524588295, + 0.0024861921949956844, + 0.0024800263727839944, + 0.002473891057717781, + 0.002467786023940377, + 0.0024617110478217796, + 0.002455665907926674, + 0.0024496503849895657, + 0.0024436642618901327, + 0.0024377073236219182, + 0.002431779357273456, + 0.00242588015199674, + 0.0024200094989852428, + 0.002414167191450156, + 0.0024083530245924134, + 0.002402566795583594, + 0.002396808303538167, + 0.0023910773494923987, + 0.002385373736381702, + 0.002379697269015102, + 0.0023740477540585836, + 0.0023684250000066687, + 0.002362828817165097, + 0.0023572590176290653, + 0.002351715415259248, + 0.0023461978256655858, + 0.0023407060661826407, + 0.002335239955851609, + 0.0023297993154016705, + 0.002324383967225785, + 0.0023189937353673695, + 0.0023136284454963185, + 0.0023082879248925714, + 0.0023029720024283495, + 0.002297680508546396, + 0.00229241327524643, + 0.002287170136063832, + 0.0022819509260536552, + 0.0022767554817739732, + 0.002271583641265895, + 0.002266435244041798, + 0.002261310131063121, + 0.0022562081447274895 + ], + "AN": [ + 0.025, + 0.02487562189054726, + 0.02403152936652897, + 0.02323636025652931, + 0.02248605864364106, + 0.021777003484320545, + 0.021105951878429563, + 0.020469990993204012, + 0.019866497139224393, + 0.0192931007871584, + 0.01874765654293231, + 0.018228217280349845, + 0.017733011774719865, + 0.017260425296879323, + 0.016808982720365684, + 0.01637733377006234, + 0.015964240102171123, + 0.015568563955660863, + 0.015189258156631524, + 0.014825357291110786, + 0.014475969889982565, + 0.01414027149321262, + 0.013817498480075185, + 0.013506942568480174, + 0.013207945900253648, + 0.012919896640827044, + 0.012642225031605614, + 0.012374399841607708, + 0.012115925172046182, + 0.01186633757357125, + 0.011625203441060217, + 0.01139211665527462, + 0.011166696444523838, + 0.010948585442760672, + 0.010737447923377719, + 0.010532968190436032, + 0.01033484911120297, + 0.01014281077572221, + 0.009956589270779359, + 0.009775935557032822, + 0.00960061443932414, + 0.009430403621274897, + 0.009265092836230115, + 0.009104483047452705, + 0.008948385711217588, + 0.008796622097114737, + 0.008649022660439432, + 0.008505426462082744, + 0.008365680631776229, + 0.008229639870959149, + 0.00809716599190291, + 0.007968127490039834, + 0.007842399146746892, + 0.007719861660078875, + 0.007600401301188775, + 0.007483909594371951, + 0.007370283018867996, + 0.007259422730704568, + 0.0071512343030408765, + 0.007045627483583505, + 0.006942515967786722, + 0.006841817186644894, + 0.006743452108003201, + 0.006647345050386777, + 0.006553423508440792, + 0.006461617989144575, + 0.006371861858034844, + 0.006284091194731278, + 0.006198244657113383, + 0.006114263353550919, + 0.006032090722644545, + 0.005951672419950205, + 0.005872956211238289, + 0.005795891871841263, + 0.005720431091687184, + 0.005646527385657629, + 0.005574136008918762, + 0.005503213876904223, + 0.005433719489664979, + 0.005365612860300795, + 0.005298855447223527, + 0.005233410090014434, + 0.005169240948659004, + 0.005106313445944588, + 0.0050445942128416466, + 0.004984051036682313, + 0.0049246528119768485, + 0.004866369493703004, + 0.004809172052939292, + 0.004753032434693383, + 0.004697923517805069, + 0.004643819076808553, + 0.0045906937456390295, + 0.004538522983080329, + 0.004487283039865009, + 0.004436950927322991, + 0.0043875043875043485, + 0.004338921864694978, + 0.004291182478243671, + 0.00424426599663863, + 0.00419815281276259, + 0.004152823920265725, + 0.004108260890999693, + 0.0040644458534524475, + 0.004021361472139828, + 0.003978990927900661, + 0.003937317899047166, + 0.003896326543334938, + 0.0038560014807045295, + 0.00381632777676022, + 0.003777290926947119, + 0.003738876841396843, + 0.003701071830402025, + 0.0036638625904974464, + 0.0036272361911116047, + 0.0035911800617682843, + 0.0035556819798037154, + 0.0035207300585848866, + 0.0034863127361977053, + 0.0034524187645865734, + 0.0034190371991247304, + 0.003386157388595379, + 0.0033537689655633862, + 0.003321861837122464, + 0.0032904261759985065, + 0.0032594524119948787, + 0.003228931223764775, + 0.003198853530894441, + 0.0031692104862837134, + 0.00313999346881344, + 0.003111194076286461, + 0.003082804118626381, + 0.0030548156113294755, + 0.0030272207691564024, + 0.003000012000047958, + 0.002973181899268651, + 0.002946723243753002, + 0.002920628986658569, + 0.0028948922521103704, + 0.0028695063301309442, + 0.002844464671748703, + 0.002819760884277045, + 0.0027953887267564426, + 0.0027713421055548526, + 0.0027476150701191138, + 0.002724201808870008, + 0.002701096645237877, + 0.0026782940338323513, + 0.0026557885567382034, + 0.002633574919939319, + 0.002611647949856355, + 0.002590002590002527, + 0.002568633897747752, + 0.0025475370411887077, + 0.0025267072961199233, + 0.0025061400431056757, + 0.0024858307646413724, + 0.002465775042411522, + 0.0024459685546283083, + 0.002426407073461867, + 0.0024070864625458377, + 0.00238800267456285, + 0.0023691517489079494, + 0.0023505298094190774, + 0.0023321330621839387, + 0.0023139577934099265, + 0.002296000367359996, + 0.002278257224353597, + 0.0022607248788251155, + 0.002243399917442934, + 0.0022262789972840036, + 0.0022093588440634804, + 0.0021926362504165464, + 0.0021761080742312977, + 0.0021597712370304833, + 0.002143622722400984, + 0.0021276595744681437, + 0.002111878896416508, + 0.002096277849051198, + 0.0020808536494012486, + 0.002065603569362917, + 0.00205052493438318, + 0.0020356151221776475, + 0.002020871561486892, + 0.0020062917308680817, + 0.0019918731575172544, + 0.0019776134161293424, + 0.001963510127785284, + 0.0019495609588719987, + 0.0019357636200327821, + 0.001922115865144347, + 0.0019086154903233954, + 0.001895260332959392, + 0.0018820482707739838, + 0.001868977220905732, + 0.0018560451390177146, + 0.0018432500184326628, + 0.0018305898892858607, + 0.0018180628177064673, + 0.0018056669050148244, + 0.0017934002869439691, + 0.0017812611328820172, + 0.001769247645131422, + 0.001757358058189551, + 0.0017455906380483555, + 0.0017339436815093645, + 0.0017224155155188825, + 0.0017110044965198412, + 0.0016997090098174183, + 0.0016885274689648622, + 0.0016774583151608624, + 0.0016665000166649069, + 0.0016556510682261827, + 0.0016449099905253561, + 0.001634275329633228, + 0.0016237456564802688, + 0.0016133195663396993, + 0.001602995678323671, + 0.0015927726348918814, + 0.001582649101371958, + 0.0015726237654902775, + 0.0015626953369172192, + 0.0015528625468188562, + 0.0015431241474239688, + 0.0015334789115979408, + 0.0015239256324290906, + 0.0015144631228229954, + 0.001505090215107474, + 0.0014958057606471176, + 0.0014866086294658132, + 0.0014774977098785946, + 0.0014684719081323738, + 0.0014595301480546663, + 0.0014506713707105323, + 0.0014418945340661793, + 0.0014331986126636664, + 0.00142458259729894, + 0.001416045494709639, + 0.001407586327269561, + 0.0013992041326893467, + 0.0013908979637253793, + 0.0013826668878933468, + 0.001374509987189576, + 0.001366426357817918, + 0.0013584151099230724, + 0.0013504753673292402, + 0.001342606267286106, + 0.0013348069602172608, + 0.0013270766094783948, + 0.0013194143911166023, + 0.0013118194936376781, + 0.001304291117777412, + 0.0012968284762784332, + 0.0012894307936703875, + 0.0012820973060572172, + 0.0012748272609059974, + 0.0012676199168442093, + 0.0012604745434561249, + 0.0012533904210889624, + 0.0012463668406594852, + 0.0012394031034654862, + 0.0012324985210017125, + 0.0012256524147804537, + 0.0012188641161530178, + 0.0012121329661376468, + 0.0012054583152516507, + 0.0011988395233413218, + 0.0011922759594242827, + 0.0011857670015273936, + 0.0011793120365304333, + 0.0011729104600155527, + 0.0011665616761158404, + 0.0011602650973694395, + 0.0011540201445756626, + 0.0011478262466539935, + 0.0011416828405068635, + 0.0011355893708835385, + 0.0011295452902480019, + 0.0011235500586492808, + 0.0011176031435939926, + 0.0011117040199217776, + 0.0011058521696820645, + 0.0011000470820150543, + 0.001094288253034481, + 0.0010885751857110382, + 0.0010829073897600239, + 0.0010772843815309852, + 0.0010717056838982497, + 0.0010661708261543446, + 0.001060679343906079, + 0.0010552307789712945, + 0.0010498246792784993, + 0.001044460598768282, + 0.0010391380972964992, + 0.0010338567405392407, + 0.0010286160998991267, + 0.0010234157524153797, + 0.001018255280671898, + 0.0010131342727113246, + 0.0010080523219477833 + ] +} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/curve_calc/curve_calc.py b/GenshinUID/genshinuid_enka/curve_calc/curve_calc.py new file mode 100644 index 00000000..26e0e58e --- /dev/null +++ b/GenshinUID/genshinuid_enka/curve_calc/curve_calc.py @@ -0,0 +1,219 @@ +import json +from pathlib import Path +from typing import List, Tuple + +from PIL import Image, ImageDraw + +from ...utils.fonts.genshin_fonts import gs_font_22 + +DATA_PATH = Path(__file__).parent +TEXT_PATH = DATA_PATH / 'texture2D' + +WEIGHT_MAP = { + '暴击率': 1, + '治疗加成': 1.15, + '百分比攻击力': 1.5, + '百分比血量': 1.5, + '元素伤害加成': 1.5, + '元素充能效率': 1.67, + '百分比防御力': 1.875, + '物理伤害加成': 1.875, + '暴击伤害': 2, + '元素精通': 6, +} + +COLOR_MAP = { + '攻击': '#f19b60', + '精通': '#4dbe6b', + '暴击': '#5dbbee', + '物伤': '#ffffff', + '伤': '#a1252a', + '生命': '#67c750', + '防御': '#9999de', + '治疗': '#f9deb3', + '充能': '#ff5858', +} + +# 引入曲线Map +with open(DATA_PATH / 'char_curve.json', 'r', encoding='UTF-8') as f: + CHAR_CURVE = json.load(f) + +# 引入曲线Map +with open(DATA_PATH / 'curve.json', 'r', encoding='UTF-8') as f: + CURVE = json.load(f) + + +async def get_weight_temp(prop: dict, attr: str) -> List[float]: + weight = [] + if '攻击' in attr: + weight.append( + (prop['atk_green'] / prop['baseAtk']) * 100 / WEIGHT_MAP['百分比攻击力'] + ) + elif '生命' in attr: + weight.append( + (prop['hp_green'] / prop['baseHp']) * 100 / WEIGHT_MAP['百分比血量'] + ) + elif '防御' in attr: + weight.append( + (prop['def_green'] / prop['baseDef']) * 100 / WEIGHT_MAP['百分比防御力'] + ) + elif '精通' in attr: + weight.append(prop['elementalMastery'] / WEIGHT_MAP['元素精通']) + elif '充能' in attr: + weight.append(prop['energyRecharge'] * 100 / WEIGHT_MAP['元素充能效率']) + elif '物伤' in attr: + weight.append(prop['physicalDmgBonus'] * 100 / WEIGHT_MAP['物理伤害加成']) + elif '伤' in attr: + weight.append(prop['dmgBonus'] * 100 / WEIGHT_MAP['元素伤害加成']) + elif '治疗' in attr: + weight.append(prop['healBonus'] * 100 / WEIGHT_MAP['治疗加成']) + elif '暴击' in attr: + weight.append(prop['critRate'] * 100 / WEIGHT_MAP['暴击率']) + weight.append(prop['critDmg'] * 100 / WEIGHT_MAP['暴击伤害']) + return weight + + +async def get_weight(prop: dict, attr: str) -> List[float]: + weight = [] + if '/' in attr: + attr_list = attr.split('/') + else: + attr_list = [attr] + for i in attr_list: + weight.extend(await get_weight_temp(prop, i)) + + return weight + + +BLUE = "#0000ff" +lu_point = (23, 45) +rd_point = (927, 495) +X_D = rd_point[0] - lu_point[0] +Y_D = rd_point[1] - lu_point[1] +frame_img = Image.open(TEXT_PATH / 'frame.png') +point_img = Image.open(TEXT_PATH / 'point.png') + + +async def draw_char_curve_data( + char_name: str, raw_data: dict +) -> Tuple[Image.Image, int]: + # 如果曲线列表里不存在该角色,则返回空白图片 + if char_name not in CHAR_CURVE or CHAR_CURVE[char_name] == {}: + return Image.new('RGBA', (950, 1)), 0 + + # 获得面板属性 + if 'avatarFightProp' in raw_data: + fight_prop = raw_data['avatarFightProp'] + else: + fight_prop = raw_data + fight_prop['atk_green'] = fight_prop['atk'] - fight_prop['baseAtk'] + fight_prop['def_green'] = fight_prop['def'] - fight_prop['baseDef'] + fight_prop['hp_green'] = fight_prop['hp'] - fight_prop['baseHp'] + + img = Image.open(TEXT_PATH / 'curve_bg.png') + img_draw = ImageDraw.Draw(img) + + # 初始化X_MAX和Y_MAX值 + X_MAX = 0 + Y_MAX = 0 + wight_point_dict: dict = {} + line_points_dict: dict = {} + wight_temp_dict: dict = {} + # 遍历曲线列表,根据函数获得权重 + for col in CHAR_CURVE[char_name]: + wight_temp = await get_weight(fight_prop, CHAR_CURVE[char_name][col]) + wight_temp_dict[CHAR_CURVE[char_name][col]] = wight_temp + # 对单个属性的权重列表进行遍历 + for i in wight_temp: + # 确定X_MAX值 + if i >= X_MAX: + X_MAX = i + # 确定Y_MAX值 + for j in CURVE[col]: + if j >= Y_MAX: + Y_MAX = j + + # 增加Y_MAX和X_MAX的值 + X_MAX = X_MAX + 15 + Y_MAX = Y_MAX + 0.002 + + # 遍历曲线列表,COL为列名,这一步拿到所有曲线的点,和所有权重的点 + for col_index, col in enumerate(CHAR_CURVE[char_name]): + line_points = [] + # 确定颜色 + for m in COLOR_MAP: + if m in CHAR_CURVE[char_name][col]: + color = COLOR_MAP[m] + break + else: + color = '#ffffff' + + for index, i in enumerate(CURVE[col]): + if index >= X_MAX: + break + x, y = (X_D / X_MAX) * index + lu_point[0], ( + Y_D - (Y_D / Y_MAX) * i + ) + lu_point[1] + line_points.append((x, y)) + line_points_dict[color] = line_points + + for wight in wight_temp_dict[CHAR_CURVE[char_name][col]]: + w_x = (wight / X_MAX) * X_D + lu_point[0] + w_y = line_points[int(wight)][1] + if CHAR_CURVE[char_name][col] not in wight_point_dict: + wight_point_dict[CHAR_CURVE[char_name][col]] = { + 'color': color, + 'point': [(w_x, w_y)], + } + else: + wight_point_dict[CHAR_CURVE[char_name][col]]['point'].append( + (w_x, w_y) + ) + + # 绘制右上角方块和文字 + img_draw.rectangle( + ((710, 65 + col_index * 30), (750, 85 + col_index * 30)), + fill=color, + ) + img_draw.text( + (762, 75 + col_index * 30), + f'{CHAR_CURVE[char_name][col]}', + color, + gs_font_22, + 'lm', + ) + + # 根据素材画曲线 + for c in line_points_dict: + img_draw.line(line_points_dict[c], width=6, fill=c, joint='curve') + + for attr in wight_point_dict: + attr_str = attr.replace('收益', '') + if attr_str == '暴击': + attr_list = ['暴击', '爆伤'] + else: + attr_list = attr_str.split('/') + for index, point in enumerate(wight_point_dict[attr]['point']): + img_draw.text( + (point[0], 512), + f'{int((point[0] - lu_point[0])/X_D * X_MAX)}', + wight_point_dict[attr]['color'], + gs_font_22, + 'mm', + ) + img_draw.text( + (point[0], 535), + attr_list[index], + wight_point_dict[attr]['color'], + gs_font_22, + 'mm', + ) + img.paste( + point_img, (int(point[0] - 15), int(point[1] - 15)), point_img + ) + img_draw.line( + [point, (point[0], rd_point[1])], width=1, fill=(255, 255, 255) + ) + + img.paste(frame_img, (0, 0), frame_img) + return img, 550 diff --git a/GenshinUID/genshinuid_enka/curve_calc/texture2D/curve_bg.png b/GenshinUID/genshinuid_enka/curve_calc/texture2D/curve_bg.png new file mode 100644 index 00000000..7254dacd Binary files /dev/null and b/GenshinUID/genshinuid_enka/curve_calc/texture2D/curve_bg.png differ diff --git a/GenshinUID/genshinuid_enka/curve_calc/texture2D/frame.png b/GenshinUID/genshinuid_enka/curve_calc/texture2D/frame.png new file mode 100644 index 00000000..3e8de0b8 Binary files /dev/null and b/GenshinUID/genshinuid_enka/curve_calc/texture2D/frame.png differ diff --git a/GenshinUID/genshinuid_enka/curve_calc/texture2D/point.png b/GenshinUID/genshinuid_enka/curve_calc/texture2D/point.png new file mode 100644 index 00000000..ea396207 Binary files /dev/null and b/GenshinUID/genshinuid_enka/curve_calc/texture2D/point.png differ diff --git a/GenshinUID/genshinuid_enka/dmg_calc/base_value.py b/GenshinUID/genshinuid_enka/dmg_calc/base_value.py new file mode 100644 index 00000000..fd4b19c5 --- /dev/null +++ b/GenshinUID/genshinuid_enka/dmg_calc/base_value.py @@ -0,0 +1,92 @@ +base_value_list = [ + 8.6, + 9.3, + 10.0, + 10.6, + 11.3, + 12.3, + 13.3, + 14.4, + 15.7, + 17.1, + 18.6, + 20.3, + 22.2, + 24.3, + 26.9, + 29.5, + 32.2, + 34.9, + 37.6, + 40.3, + 43.1, + 45.9, + 48.6, + 51.4, + 54.2, + 56.6, + 59.1, + 61.5, + 64.9, + 68.2, + 71.3, + 74.5, + 77.7, + 80.9, + 84.6, + 88.3, + 92, + 95.9, + 99.8, + 103.7, + 107.7, + 112.1, + 116.8, + 121.1, + 128.0, + 134.3, + 140.8, + 147.5, + 154.5, + 161.8, + 168.4, + 175.3, + 182.2, + 189.3, + 199.3, + 208.2, + 217.2, + 226.5, + 236.3, + 246.4, + 256.8, + 269.6, + 282.8, + 296.3, + 312.2, + 325.7, + 339.8, + 353.9, + 368.3, + 382.8, + 397.4, + 412.3, + 425.6, + 438.9, + 457.1, + 473.4, + 489.7, + 505.6, + 522.4, + 538.7, + 555.0, + 571.5, + 588.2, + 605.1, + 626.9, + 644.5, + 622.7, + 681.7, + 702.6, + 723.4, +] diff --git a/GenshinUID/genshinuid_enka/dmg_calc/dmg_calc.py b/GenshinUID/genshinuid_enka/dmg_calc/dmg_calc.py new file mode 100644 index 00000000..2e23c5a5 --- /dev/null +++ b/GenshinUID/genshinuid_enka/dmg_calc/dmg_calc.py @@ -0,0 +1,112 @@ +from typing import Dict, Tuple + +from PIL import Image, ImageDraw + +from ..mono.Enemy import Enemy +from ..mono.Fight import Fight +from ..etc.MAP_PATH import dmgMap +from ..mono.Character import Character +from ..etc.etc import TEXT_PATH, get_char_std +from ...utils.fonts.genshin_fonts import gs_font_28 + +dmgBar_1 = Image.open(TEXT_PATH / 'dmgBar_1.png') +dmgBar_2 = Image.open(TEXT_PATH / 'dmgBar_2.png') + +text_color = (255, 255, 255) +title_color = (255, 255, 100) + + +async def get_char_dmg_percent(char: Character) -> Dict: + enemy = Enemy(char.char_level, char.char_level) + fight = Fight({char.char_name: char}, enemy) + dmg_data = await fight.get_dmg_dict(char.char_name) + without_talent = await fight.get_dmg_dict(char.char_name, True) + percent = 0 + char.seq_str = '无匹配' + if char.char_name in dmgMap: + std = await get_char_std(char.card_prop, char.char_name) + if std['skill']: + value = 0 + std_value = 0 + if std['skill'] == 'atk': + value = char.fight_prop['atk'] + std_value = std['atk'] + elif std['skill'] == 'def': + value = char.fight_prop['def'] + std_value = std['other']['防御'] + elif std['skill'] in without_talent: + if without_talent[std['skill']]['crit'] == 0: + value = without_talent[std['skill']]['normal'] + elif char.char_name == '妮露': + value = without_talent[std['skill']]['normal'] + else: + value = without_talent[std['skill']]['avg'] + std_value = std['value'] + if char.char_name == '夜兰': + std_value *= 3 + elif char.char_name == '刻晴': + std_value *= 2 + if std_value != 0: + percent = (value / std_value) * 100 + char.seq_str = ( + '|'.join([i[:2] for i in std['seq'].split('|')]) + + std['seq'][-1] + ) + char.percent = '{:.2f}'.format(percent) + char.dmg_data = dmg_data + return dmg_data + + +async def draw_dmg_img(char: Character) -> Tuple[Image.Image, int]: + # 获取值 + dmg_data = await get_char_dmg_percent(char) + if dmg_data == {}: + return Image.new('RGBA', (950, 1)), 0 + # 计算伤害计算部分图片长宽值 + w = 950 + h = 40 * (len(dmg_data) + 1) + result_img = Image.new('RGBA', (w, h), (0, 0, 0, 0)) + # 反复贴上不同颜色的长条 + for i in range(0, len(dmg_data) + 1): + pic = dmgBar_1 if i % 2 == 0 else dmgBar_2 + result_img.paste(pic, (0, i * 40)) + + result_draw = ImageDraw.Draw(result_img) + + text_size = gs_font_28 + result_draw.text((45, 22), '角色动作', title_color, text_size, anchor='lm') + result_draw.text((450, 22), '暴击值', title_color, text_size, anchor='lm') + result_draw.text((615, 22), '期望值', title_color, text_size, anchor='lm') + result_draw.text((780, 22), '普通值', title_color, text_size, anchor='lm') + + for index, name in enumerate(dmg_data): + result_draw.text( + (45, 22 + (index + 1) * 40), + name, + text_color, + text_size, + anchor='lm', + ) + result_draw.text( + (450, 22 + (index + 1) * 40), + str(round(dmg_data[name]['crit'])), + text_color, + text_size, + anchor='lm', + ) + result_draw.text( + (615, 22 + (index + 1) * 40), + str(round(dmg_data[name]['avg'])), + text_color, + text_size, + anchor='lm', + ) + result_draw.text( + (780, 22 + (index + 1) * 40), + str(round(dmg_data[name]['normal'])), + text_color, + text_size, + anchor='lm', + ) + + return result_img, len(dmg_data) + 2 diff --git a/GenshinUID/genshinuid_enka/draw_char_card.py b/GenshinUID/genshinuid_enka/draw_char_card.py new file mode 100644 index 00000000..eb968f5e --- /dev/null +++ b/GenshinUID/genshinuid_enka/draw_char_card.py @@ -0,0 +1,77 @@ +from typing import Tuple, Union, Optional + +from PIL import Image, ImageDraw + +from .mono.Character import Character +from .dmg_calc.dmg_calc import draw_dmg_img +from ..utils.image.convert import convert_img +from .draw_char_curve import draw_char_curve_card +from .etc.etc import TEXT_PATH, get_all_artifacts_value +from ..utils.fonts.genshin_fonts import gs_font_18, gs_font_50 +from .draw_normal import ( + get_bg_card, + get_char_img, + get_artifacts_card, + get_char_card_base, +) + + +async def draw_char_img( + char: Character, + charUrl: Optional[str] = None, + is_curve: bool = False, +) -> Union[str, Tuple[bytes, Optional[bytes]]]: + + if is_curve: + res = await draw_char_curve_card(char, charUrl) + else: + res = await draw_char_card(char, charUrl) + return res, char.char_bytes + + +async def draw_char_card(char: Character, char_url: Optional[str]) -> bytes: + dmg_img, dmg_len = await draw_dmg_img(char) + char_img = await get_char_img(char, char_url) + ex_len = dmg_len * 40 + 765 + img = await get_bg_card(char.char_element, ex_len, char_img) + img.paste(char_img, (0, 0), char_img) + char_info_1 = await get_char_card_base(char) + char_info_2 = Image.open(TEXT_PATH / 'char_info_2.png') + img.paste(char_info_1, (0, 0), char_info_1) + img.paste(char_info_2, (0, 1085), char_info_2) + img.paste(dmg_img, (0, 1850), dmg_img) + await get_artifacts_card(char, img) + img_text = ImageDraw.Draw(img) + artifacts_all_score = await get_all_artifacts_value( + char.card_prop, char.baseHp, char.baseAtk, char.baseDef, char.char_name + ) + if char.percent == '0.00': + percent_str = '暂无匹配' + else: + percent_str = f'{char.percent}%' + # 角色评分 + img_text.text( + (768, 1564), + f'{round(artifacts_all_score, 1)}', + (255, 255, 255), + gs_font_50, + anchor='mm', + ) + img_text.text( + (768, 1726), + percent_str, + (255, 255, 255), + gs_font_50, + anchor='mm', + ) + img_text.text( + (768, 1673), + f'{char.seq_str}', + (255, 255, 255), + gs_font_18, + anchor='mm', + ) + res = await convert_img(img) + if isinstance(res, str): + res = b'' + return res diff --git a/GenshinUID/genshinuid_enka/draw_char_curve.py b/GenshinUID/genshinuid_enka/draw_char_curve.py new file mode 100644 index 00000000..9b4ba36e --- /dev/null +++ b/GenshinUID/genshinuid_enka/draw_char_curve.py @@ -0,0 +1,80 @@ +from io import BytesIO +from typing import Optional + +from PIL import Image, ImageDraw + +from .etc.etc import TEXT_PATH +from .mono.Character import Character +from .curve_calc.curve_calc import draw_char_curve_data +from ..utils.fonts.genshin_fonts import genshin_font_origin +from .draw_normal import ( + get_bg_card, + get_char_img, + get_artifacts_card, + get_char_card_base, +) + + +async def get_adv_card() -> Image.Image: + adv_img = Image.open(TEXT_PATH / 'adv.png') + return adv_img + + +async def draw_char_curve_card( + char: Character, char_url: Optional[str] +) -> bytes: + await get_artifacts_card(char, Image.new('RGB', (1, 1))) + curve_img, curve_len = await draw_char_curve_data( + char.char_name, char.card_prop + ) + curve2_img, curve2_len = await draw_char_curve_data( + char.char_name, char.fight_prop + ) + char_img = await get_char_img(char, char_url) + adv_img = await get_adv_card() + img = await get_bg_card( + char.char_element, curve_len + curve2_len + 460, char_img + ) + img.paste(char_img, (0, 0), char_img) + char_info_1 = await get_char_card_base(char) + img.paste(char_info_1, (0, 0), char_info_1) + img.paste(curve_img, (0, 1085), curve_img) + img.paste(curve2_img, (0, 1085 + curve_len), curve2_img) + img.paste(adv_img, (0, 1085 + curve_len + curve2_len), adv_img) + img_text = ImageDraw.Draw(img) + # 顶栏 + img_text.text( + (475, 2240), + '曲线(上)为正常面板,曲线(下)为触发各种战斗buff后面板', + (255, 255, 255), + genshin_font_origin(32), + anchor='mm', + ) + # 角色评分 + img_text.text( + (785, 2380), + f'{round(char.artifacts_all_score, 1)}', + (255, 255, 255), + genshin_font_origin(50), + anchor='mm', + ) + img_text.text( + (785, 2542), + f'{str(char.percent)+"%"}', + (255, 255, 255), + genshin_font_origin(50), + anchor='mm', + ) + img_text.text( + (785, 2490), + f'{char.seq_str}', + (255, 255, 255), + genshin_font_origin(18), + anchor='mm', + ) + + img = img.convert('RGB') + result_buffer = BytesIO() + img.save(result_buffer, format='JPEG', subsampling=0, quality=90) + res = result_buffer.getvalue() + return res diff --git a/GenshinUID/genshinuid_enka/draw_char_rank.py b/GenshinUID/genshinuid_enka/draw_char_rank.py new file mode 100644 index 00000000..8da631e5 --- /dev/null +++ b/GenshinUID/genshinuid_enka/draw_char_rank.py @@ -0,0 +1,238 @@ +import json +import asyncio +from typing import Tuple, Union, Literal + +from PIL import Image, ImageDraw + +from .mono.Character import Character +from ..utils.image.convert import convert_img +from .dmg_calc.dmg_calc import get_char_dmg_percent +from .etc.etc import TEXT_PATH, get_all_artifacts_value +from ..utils.map.name_covert import avatar_id_to_char_star +from ..utils.fonts.genshin_fonts import genshin_font_origin +from ..utils.resource.RESOURCE_PATH import CHAR_PATH, PLAYER_PATH, WEAPON_PATH +from ..utils.image.image_tools import ( + get_color_bg, + get_qq_avatar, + get_fetter_pic, + get_talent_pic, + draw_pic_with_ring, + get_weapon_affix_pic, +) + +black_color = (24, 24, 24) +white_color = (245, 245, 245) + +level_color = { + 5: (230, 0, 0), + 4: (203, 131, 21), + 3: (97, 17, 156), + 2: (17, 105, 156), + 1: (94, 96, 95), +} + +level_map = { + 'skill': { + 10: 5, + 7: 4, + 5: 3, + 3: 2, + 0: 1, + }, + 'equip': {33: 5, 27: 4, 21: 3, 15: 2, 0: 1}, + 'percent': {99: 5, 90: 4, 85: 3, 70: 2, 0: 1}, +} +star_color_map = { + '1': (94, 96, 95), + '2': (17, 105, 156), + '3': (91, 141, 192), + '4': (143, 123, 174), + '5': (205, 135, 76), +} + +gs_font_24 = genshin_font_origin(24) +gs_font_26 = genshin_font_origin(26) +gs_font_28 = genshin_font_origin(28) +gs_font_30 = genshin_font_origin(30) +gs_font_36 = genshin_font_origin(36) + +char_rank_title = Image.open(TEXT_PATH / 'char_rank_title.png') +skill_mask = Image.open(TEXT_PATH / 'skill_mask.png') +percent_mask = Image.open(TEXT_PATH / 'percent_mask.png') +value_mask = Image.open(TEXT_PATH / 'value_mask.png') + + +async def draw_cahrcard_list( + uid: str, qid: Union[str, int] +) -> Union[str, bytes]: + uid_fold = PLAYER_PATH / str(uid) + char_file_list = uid_fold.glob('*') + char_list = [] + for i in char_file_list: + file_name = i.name + if '\u4e00' <= file_name[0] <= '\u9fff': + char_list.append(file_name.split('.')[0]) + if not char_list: + return '你还没有已缓存的角色!\n请先使用【强制刷新】进行刷新!' + + char_done_list = [] + for char_name in char_list: + temp = {} + with open(uid_fold / f'{char_name}.json', 'r', encoding='UTF-8') as f: + raw_data = json.load(f) + + skill_list = raw_data['avatarSkill'] + + temp['char_name'] = char_name + temp['fetter'] = raw_data['avatarFetter'] + temp['id'] = raw_data['avatarId'] + char = Character(raw_data) + await char.new() + await char.get_fight_prop() + await get_char_dmg_percent(char) + temp['percent'] = char.percent + temp['percent'] = float(temp['percent']) + temp['value'] = await get_all_artifacts_value( + raw_data, + char.baseHp, + char.baseAtk, + char.baseDef, + char_name, + ) + temp['value'] = float('{:.2f}'.format(temp['value'])) + temp['avatarElement'] = raw_data['avatarElement'] + temp['a_skill_level'] = skill_list[0]['skillLevel'] + temp['e_skill_level'] = skill_list[1]['skillLevel'] + temp['q_skill_level'] = skill_list[-1]['skillLevel'] + temp['talent_num'] = len(raw_data['talentList']) + # 武器 + temp['weapon_name'] = raw_data['weaponInfo']['weaponName'] + temp['weapon_level'] = raw_data['weaponInfo']['weaponLevel'] + temp['weapon_affix'] = raw_data['weaponInfo']['weaponAffix'] + temp['weapon_star'] = raw_data['weaponInfo']['weaponStar'] + char_done_list.append(temp) + + # 排序 + char_done_list.sort(key=lambda x: (-x['percent'])) + qid = str(qid) + if qid.startswith('http'): + char_pic = await get_qq_avatar(avatar_url=qid) + else: + char_pic = await get_qq_avatar(qid=qid) + char_pic = await draw_pic_with_ring(char_pic, 320) + + img = await get_color_bg(950, 540 + 100 * len(char_done_list)) + img.paste(char_rank_title, (0, 0), char_rank_title) + img.paste(char_pic, (318, 83), char_pic) + img_draw = ImageDraw.Draw(img) + img_draw.text((475, 464), f'UID {uid}', black_color, gs_font_36, 'mm') + + tasks = [] + for index, char in enumerate(char_done_list): + tasks.append(draw_single_rank(img, char, index)) + await asyncio.wait(tasks) + + res = await convert_img(img) + return res + + +async def get_color( + type: Literal['skill', 'equip', 'percent'], value: int +) -> Tuple[int, int, int]: + for v in level_map[type]: + if value >= v: + level = level_map[type][v] + break + else: + level = 1 + return level_color[level] + + +async def draw_single_rank(img: Image.Image, char: dict, index: int): + char_id = char['id'] + char_rank = Image.open(TEXT_PATH / 'char_rank.png') + char_pic = Image.open(CHAR_PATH / f'{char_id}.png') + char_star = await avatar_id_to_char_star(char_id) + weapon_star = str(char['weapon_star']) + char_pic = await draw_pic_with_ring( + char_pic, 82, star_color_map[char_star] + ) + weapon_pic = Image.open(WEAPON_PATH / f'{char["weapon_name"]}.png') + weapon_pic = await draw_pic_with_ring( + weapon_pic, 82, star_color_map[weapon_star] + ) + char_rank.paste(char_pic, (0, 0), char_pic) + char_rank.paste(weapon_pic, (626, 0), weapon_pic) + + char_rank_draw = ImageDraw.Draw(char_rank) + # 角色名称 + char_rank_draw.text( + (85, 24), char['char_name'], black_color, gs_font_28, 'lm' + ) + # AEQ等级 + for s_index, s in enumerate(['a', 'e', 'q']): + s_offset = s_index * 38 + skill_color_img = Image.new( + 'RGBA', + (35, 28), + await get_color('skill', char[f'{s}_skill_level']), + ) + char_rank.paste(skill_color_img, (86 + s_offset, 44), skill_mask) + char_rank_draw.text( + (103 + s_offset, 58), + str(char[f'{s}_skill_level']), + white_color, + gs_font_26, + 'mm', + ) + + # 圣遗物词条数 + value_color_img = Image.new( + 'RGBA', + (77, 33), + await get_color('equip', char['value']), + ) + char_rank.paste(value_color_img, (233, 23), value_mask) + char_rank_draw.text( + (271, 40), + f'{str(char["value"])[:4]}条', + white_color, + gs_font_24, + 'mm', + ) + + # 毕业度 + percent_color_img = Image.new( + 'RGBA', + (99, 33), + await get_color('percent', char['percent']), + ) + char_rank.paste(percent_color_img, (329, 23), percent_mask) + char_rank_draw.text( + (379, 40), + f'{char["percent"]}%', + white_color, + gs_font_24, + 'mm', + ) + + # 好感和天赋 + fetter_pic = await get_fetter_pic(char['fetter']) + fetter_pic = fetter_pic.resize((77, 33)) + talent_pic = await get_talent_pic(char['talent_num']) + talent_pic = talent_pic.resize((66, 33)) + + char_rank.paste(fetter_pic, (444, 23), fetter_pic) + char_rank.paste(talent_pic, (536, 23), talent_pic) + + # 武器 + weapon_affix_pic = await get_weapon_affix_pic(char['weapon_affix']) + char_rank.paste(weapon_affix_pic, (714, 42), weapon_affix_pic) + char_rank_draw.text( + (788, 56), f'Lv.{char["weapon_level"]}', black_color, gs_font_26, 'lm' + ) + char_rank_draw.text( + (712, 22), str(char['weapon_name']), black_color, gs_font_26, 'lm' + ) + + img.paste(char_rank, (30, 540 + 100 * index), char_rank) diff --git a/GenshinUID/genshinuid_enka/draw_group_dmg.py b/GenshinUID/genshinuid_enka/draw_group_dmg.py new file mode 100644 index 00000000..9d4d4490 --- /dev/null +++ b/GenshinUID/genshinuid_enka/draw_group_dmg.py @@ -0,0 +1,167 @@ +from typing import Dict, List, Union + +from PIL import Image, ImageDraw + +from .mono.Enemy import Enemy +from .mono.Fight import Fight +from .etc.etc import TEXT_PATH +from .mono.Character import Character +from .mono.SEQ import ALL_SEQ, SEQ_ARG +from ..utils.image.convert import convert_img +from ..utils.resource.RESOURCE_PATH import CHAR_PATH +from ..utils.map.name_covert import name_to_avatar_id +from ..utils.image.image_tools import get_color_bg, draw_pic_with_ring +from ..utils.fonts.genshin_fonts import ( + gs_font_26, + gs_font_32, + gs_font_44, + gs_font_50, +) + +TD_PATH = TEXT_PATH / 'team_dmg' + +team_title = Image.open(TD_PATH / 'team_title.png') +action_title = Image.open(TD_PATH / 'action_title.png') + + +async def get_group_dmg_data( + char_list: List[Character], +) -> Union[Dict[float, Dict], str]: + # 获取值 + enemy = Enemy(90, 90) + char_dict: Dict[str, Character] = {} + char_arg = [char.char_name for char in char_list] + for arg in SEQ_ARG: + if sorted(char_arg) == sorted(SEQ_ARG[arg]): + seq = ALL_SEQ[arg] + break + else: + return '暂时不支持该配队...' + + for char in char_list: + char_dict[char.char_name] = char + fight = Fight(char_dict, enemy) + fight.SEQ = seq + + dmg_data: Dict[float, Dict] = await fight.update_dmg() + return dmg_data + + +def _f(value: float, is_float: bool = True) -> str: + if is_float: + return '{:.1f}'.format(value) + else: + return str(int(value)) + + +def _p(value: float) -> str: + return '{:.2f}%'.format(value * 100) + + +async def draw_group_dmg_img( + uid: str, char_list: List[Character] +) -> Union[bytes, str]: + # 获取数据 + dmg_data = await get_group_dmg_data(char_list) + if isinstance(dmg_data, str): + return dmg_data + + # 计算高度 + bar_offset = 65 + h = 900 + 120 + len(dmg_data) * bar_offset + 50 + + # 开始绘图 + img = await get_color_bg(950, h, 'teamdmg_bg') + img.paste(team_title, (0, 0), team_title) + + # 角色基本情况 + for index, char in enumerate(char_list): + char_bg = Image.open(TD_PATH / 'char_bg.png') + char_pic = Image.open(CHAR_PATH / f'{char.char_id}.png') + char_img = await draw_pic_with_ring(char_pic, 100) + char_bg.paste(char_img, (31, 27), char_img) + + hp = _f(char.fight_prop['hp'], False) + atk = _f(char.fight_prop['atk'], False) + critr = _p(char.fight_prop['critRate']) + critd = _p(char.fight_prop['critDmg']) + lv = f'Lv.{char.char_level}' + char_draw = ImageDraw.Draw(char_bg) + char_draw.text((210, 69), hp, 'white', gs_font_26, 'lm') + char_draw.text((344, 69), atk, 'white', gs_font_26, 'lm') + char_draw.text((210, 130), critr, 'white', gs_font_26, 'lm') + char_draw.text((344, 130), critd, 'white', gs_font_26, 'lm') + char_draw.text((85, 154), lv, 'white', gs_font_26, 'mm') + + # 将绘制好的角色卡贴到队伍伤害卡上 + img.paste( + char_bg, + (16 + 443 * (index % 2), 540 + 170 * (index // 2)), + char_bg, + ) + + img.paste(action_title, (0, 895), action_title) + + # 初始化一些数值 + all_avgdmg = 0 + all_critdmg = 0 + dmg_info = {} + + # 粘贴动作序列 + for index, time in enumerate(dmg_data): + _data = dmg_data[time] + char_id = await name_to_avatar_id(_data['char']) + char_pic = Image.open(CHAR_PATH / f'{char_id}.png') + char_img = await draw_pic_with_ring(char_pic, 50) + + bar = Image.open(TD_PATH / 'dmg_bar.png') + + bar.paste(char_img, (100, 10), char_img) + + bar_draw = ImageDraw.Draw(bar) + + # Action + bar_draw.text((190, 35), _data['action'], 'white', gs_font_32, 'lm') + # 具体伤害 + _dmg = _data['avg_dmg'] if _data['avg_dmg'] else _data['normal_dmg'] + bar_draw.text((600, 35), _f(_dmg), 'white', gs_font_32, 'lm') + + img.paste(bar, (0, 1030 + index * bar_offset), bar) + + # 总平均伤害加值 + all_avgdmg += _data['avg_dmg'] + all_critdmg += _data['crit_dmg'] + + # 计算一些数据 + if _data['char'] not in dmg_info: + dmg_info[_data['char']] = _data['avg_dmg'] + else: + dmg_info[_data['char']] += _data['avg_dmg'] + + ac_len = len(dmg_data) + all_time = list(dmg_data.keys())[-1] + avg_dps = all_avgdmg / all_time + + char_id = '10000029' + char_pic = Image.open(CHAR_PATH / f'{char_id}.png') + char_img = await draw_pic_with_ring(char_pic, 280) + img.paste(char_img, (60, 78), char_img) + + img_draw = ImageDraw.Draw(img) + # UID + img_draw.text((395, 98), f'UID{uid}', 'white', gs_font_50, 'lm') + + # 标题 + img_draw.text((396, 200), '总期望伤害', 'white', gs_font_26, 'lm') + img_draw.text((656, 200), '总暴击伤害', 'white', gs_font_26, 'lm') + img_draw.text((396, 297), '平均DPS', 'white', gs_font_26, 'lm') + img_draw.text((656, 297), f'{ac_len}个动作', 'white', gs_font_26, 'lm') + + # 数值 + img_draw.text((390, 236), f'{_f(all_avgdmg)}', 'white', gs_font_44, 'lm') + img_draw.text((650, 236), f'{_f(all_critdmg)}', 'white', gs_font_44, 'lm') + img_draw.text((390, 333), f'{_f(avg_dps)}', 'white', gs_font_44, 'lm') + img_draw.text((650, 333), f'{_f(all_time)}秒内', 'white', gs_font_44, 'lm') + + img = await convert_img(img) + return img diff --git a/GenshinUID/genshinuid_enka/draw_normal.py b/GenshinUID/genshinuid_enka/draw_normal.py new file mode 100644 index 00000000..747ddf22 --- /dev/null +++ b/GenshinUID/genshinuid_enka/draw_normal.py @@ -0,0 +1,595 @@ +import math +import random +from io import BytesIO +from typing import Optional + +import aiofiles +from httpx import get +from PIL import Image, ImageDraw, ImageChops + +from .mono.Character import Character +from ..genshinuid_config.gs_config import gsconfig +from .etc.MAP_PATH import COLOR_MAP, avatarName2SkillAdd +from ..utils.fonts.genshin_fonts import genshin_font_origin +from ..utils.image.image_tools import CustomizeImage, get_weapon_affix_pic +from .etc.etc import TEXT_PATH, strLenth, get_star_png, get_artifacts_value +from ..utils.resource.RESOURCE_PATH import ( + REL_PATH, + ICON_PATH, + CU_CHBG_PATH, + GACHA_IMG_PATH, + CHAR_STAND_PATH, +) + +ARTIFACTS_POS = { + '生之花': (18, 1075), + '死之羽': (318, 1075), + '时之沙': (618, 1075), + '空之杯': (18, 1447), + '理之冠': (318, 1447), +} +PIC_API = gsconfig.get_config('random_pic_API').data + + +async def get_char_card_base(char: Character) -> Image.Image: + card_prop = char.card_prop + char_info_1 = Image.open(TEXT_PATH / 'char_info_1.png') + # 命座处理 + lock_img = Image.open(TEXT_PATH / 'icon_lock.png') + # holo_img = Image.open(TEXT_PATH / 'holo.png') + for talent_num in range(0, 6): + if talent_num + 1 <= len(card_prop['talentList']): + talent = card_prop['talentList'][talent_num] + try: + talent_img = Image.open( + ICON_PATH / '{}.png'.format(talent['talentIcon']) + ) + except Exception: + talent_img = Image.open( + ICON_PATH / 'UI_Talent_S_Kazuha_02.png' + ) + talent_img_new = talent_img.resize( + (50, 50), Image.Resampling.LANCZOS + ).convert("RGBA") + for _ in range(2): + char_info_1.paste( + talent_img_new, + (850, 375 + talent_num * 81), + talent_img_new, + ) + else: + char_info_1.paste(lock_img, (850, 375 + talent_num * 81), lock_img) + + # 天赋处理 + skillList = card_prop['avatarSkill'] + a_skill_level = skillList[0]['skillLevel'] + e_skill_level = skillList[1]['skillLevel'] + q_skill_level = skillList[-1]['skillLevel'] + + if char.char_name in avatarName2SkillAdd: + skill_add = avatarName2SkillAdd[char.char_name] + else: + skill_add = ['E', 'Q'] + for skillAdd_index in range(0, 2): + if len(card_prop['talentList']) >= 3 + skillAdd_index * 2: + if skill_add[skillAdd_index] == 'E': + e_skill_level += 3 + elif skill_add[skillAdd_index] == 'Q': + q_skill_level += 3 + + for skill_num, skill in enumerate(skillList[0:2] + [skillList[-1]]): + skill_img = Image.open(ICON_PATH / '{}.png'.format(skill['skillIcon'])) + skill_img_new = skill_img.resize( + (50, 50), Image.Resampling.LANCZOS + ).convert("RGBA") + char_info_1.paste( + skill_img_new, (78, 756 + 101 * skill_num), skill_img_new + ) + + # 武器部分 + char_info_text = ImageDraw.Draw(char_info_1) + weapon_star_img = get_star_png(card_prop['weaponInfo']['weaponStar']) + weaponName = card_prop['weaponInfo']['weaponName'] + + weaponAtk = card_prop['weaponInfo']['weaponStats'][0]['statValue'] + weaponLevel = card_prop['weaponInfo']['weaponLevel'] + weaponAffix = card_prop['weaponInfo']['weaponAffix'] + weaponEffect = card_prop['weaponInfo']['weaponEffect'] + weapon_type = card_prop['weaponInfo']['weaponType'] + + char_info_1.paste(weapon_star_img, (402, 825), weapon_star_img) + char_info_text.text( + (412, 670), + weaponName, + (255, 255, 255), + genshin_font_origin(50), + anchor='lm', + ) + char_info_text.text( + (412, 710), + weapon_type, + (255, 255, 255), + genshin_font_origin(20), + anchor='lm', + ) + char_info_text.text( + (412, 750), + '基础攻击力', + (255, 255, 255), + genshin_font_origin(32), + anchor='lm', + ) + char_info_text.text( + (755, 750), + str(weaponAtk), + (255, 255, 255), + genshin_font_origin(32), + anchor='rm', + ) + if len(card_prop['weaponInfo']['weaponStats']) == 2: + weapon_sub_info = card_prop['weaponInfo']['weaponStats'][1]['statName'] + weapon_sub_value = card_prop['weaponInfo']['weaponStats'][1][ + 'statValue' + ] + char_info_text.text( + (412, 801), + weapon_sub_info, + (255, 255, 255), + genshin_font_origin(32), + anchor='lm', + ) + char_info_text.text( + (755, 801), + str(weapon_sub_value), + (255, 255, 255), + genshin_font_origin(32), + anchor='rm', + ) + else: + char_info_text.text( + (412, 801), + '该武器无副词条', + (255, 255, 255), + genshin_font_origin(32), + anchor='lm', + ) + char_info_text.text( + (460, 893), + f'Lv.{weaponLevel}', + (255, 255, 255), + genshin_font_origin(28), + anchor='mm', + ) + affix_pic = await get_weapon_affix_pic(weaponAffix) + char_info_1.paste(affix_pic, (420 + len(weaponName) * 50, 660), affix_pic) + ''' + char_info_text.text( + (517, 895), + f'精炼{str(weaponAffix)}阶', + (255, 239, 173), + genshin_font_origin(28), + anchor='lm', + ) + ''' + + weaponEffect = strLenth(weaponEffect, 25, 455) + weaponEffect = '\n'.join(weaponEffect.split('\n')[:5]) + char_info_text.text( + (412, 925), weaponEffect, (255, 255, 255), genshin_font_origin(25) + ) + + fight_prop = card_prop['avatarFightProp'] + hp = fight_prop['hp'] + attack = fight_prop['atk'] + defense = fight_prop['def'] + em = fight_prop['elementalMastery'] + critrate = fight_prop['critRate'] + critdmg = fight_prop['critDmg'] + ce = fight_prop['energyRecharge'] + dmgBonus = ( + fight_prop['dmgBonus'] + if fight_prop['physicalDmgBonus'] <= fight_prop['dmgBonus'] + else fight_prop['physicalDmgBonus'] + ) + + hp_green = fight_prop['hp'] - fight_prop['baseHp'] + attack_green = fight_prop['atk'] - fight_prop['baseAtk'] + defense_green = fight_prop['def'] - fight_prop['baseDef'] + # 角色基本信息 + char_info_text.text( + (411, 72), + char.char_name, + (255, 255, 255), + genshin_font_origin(55), + anchor='lm', + ) + char_info_text.text( + (411, 122), + '等级{}'.format(char.char_level), + (255, 255, 255), + genshin_font_origin(40), + anchor='lm', + ) + char_info_text.text( + (747, 126), + str(char.char_fetter), + (255, 255, 255), + genshin_font_origin(28), + anchor='lm', + ) + char_info_text.text( + (103, 812), + f'{str(a_skill_level)}', + (255, 255, 255), + genshin_font_origin(30), + anchor='mm', + ) + char_info_text.text( + (103, 915), + f'{str(e_skill_level)}', + (255, 255, 255), + genshin_font_origin(30), + anchor='mm', + ) + + char_info_text.text( + (103, 1016), + f'{str(q_skill_level)}', + (255, 255, 255), + genshin_font_origin(30), + anchor='mm', + ) + + # 属性 + char_info_text.text( + (785, 174), + str(round(hp)), + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + char_info_text.text( + (785, 227), + str(round(attack)), + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + char_info_text.text( + (785, 280), + str(round(defense)), + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + char_info_text.text( + (785, 333), + str(round(em)), + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + char_info_text.text( + (785, 386), + f'{str(round(critrate * 100, 2))}%', + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + char_info_text.text( + (785, 439), + f'{str(round(critdmg * 100, 2))}%', + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + char_info_text.text( + (785, 492), + f'{str(round(ce * 100, 1))}%', + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + char_info_text.text( + (785, 545), + f'{str(round(dmgBonus * 100, 1))}%', + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + + char_info_text.text( + (805, 174), + f'(+{str(round(hp_green))})', + (95, 251, 80), + genshin_font_origin(28), + anchor='lm', + ) + char_info_text.text( + (805, 227), + f'(+{str(round(attack_green))})', + (95, 251, 80), + genshin_font_origin(28), + anchor='lm', + ) + char_info_text.text( + (805, 280), + f'(+{str(round(defense_green))})', + (95, 251, 80), + genshin_font_origin(28), + anchor='lm', + ) + + uid = card_prop['playerUid'] + data_time = card_prop['dataTime'] + # uid + char_info_text.text( + (350, 1035), + f'UID{uid}', + (255, 255, 255), + genshin_font_origin(24), + anchor='rm', + ) + # 数据最后更新时间 + char_info_text.text( + (780, 600), + f'数据最后更新于{data_time}', + (255, 255, 255), + genshin_font_origin(22), + anchor='rm', + ) + return char_info_1 + + +async def get_bg_card( + char_element: str, ex_len: int, char_img: Image.Image +) -> Image.Image: + img_w, img_h = 950, 1085 + ex_len + overlay = Image.open(TEXT_PATH / 'overlay.png') + overlay_w, overlay_h = overlay.size + if overlay_h < img_h: + new_overlay_h = img_h + new_overlay_w = math.ceil(new_overlay_h * overlay_w / overlay_h) + overlay = overlay.resize( + (new_overlay_w, new_overlay_h), Image.Resampling.LANCZOS + ) + overlay = overlay.crop((0, 0, img_w, img_h)) + elif overlay_h > img_h: + new_overlay_w = img_w + new_overlay_h = math.ceil(overlay_w / new_overlay_w * overlay_h) + overlay = overlay.resize( + (new_overlay_w, new_overlay_h), Image.Resampling.LANCZOS + ) + overlay = overlay.crop((0, 0, img_w, img_h)) + if ( + gsconfig.get_config('ColorBG').data + and gsconfig.get_config('RandomPic').data + ): + bg_color = CustomizeImage.get_bg_color(char_img) + else: + bg_color = COLOR_MAP[char_element] + color_img = Image.new('RGBA', overlay.size, bg_color) + return ImageChops.overlay(color_img, overlay) + + +async def get_char_img( + char: Character, char_url: Optional[str] = None +) -> Image.Image: + char_name = char.char_name + if gsconfig.get_config('RandomPic').data and char_url is None: + if char_name == '旅行者': + char_name_url = '荧' + else: + char_name_url = char_name + chbg_path = CU_CHBG_PATH / char_name_url + char_url = f'{PIC_API}{char_name_url}' + if chbg_path.exists(): + cuch_img = random.choice(list(chbg_path.iterdir())) + async with aiofiles.open(cuch_img, 'rb') as f: + char.char_bytes = await f.read() + else: + char_data = get(char_url, follow_redirects=True) + if char_data.headers['Content-Type'] == 'application/json': + char_url = None + else: + char.char_bytes = char_data.content + + based_w, based_h = 600, 1200 + if char_url: + offset_x, offset_y = 200, 0 + if char.char_bytes is None: + char.char_bytes = get(char_url).content + char_img = Image.open(BytesIO(char.char_bytes)).convert('RGBA') + else: + offset_x, offset_y = 200, 0 + if char_name == '旅行者': + char_img = ( + Image.open(CHAR_STAND_PATH / '10000007.png') + .convert('RGBA') + .resize((1421, 800)) + ) + else: + char_img = Image.open(GACHA_IMG_PATH / f'{char_name}.png') # 角色图像 + # 确定图片的长宽 + w, h = char_img.size + if (w, h) != (based_w, based_h): + based_new_w, based_new_h = based_w + offset_x, based_h + offset_y + based_scale = '%.3f' % (based_new_w / based_new_h) + scale_f = '%.3f' % (w / h) + new_w = math.ceil(based_new_h * float(scale_f)) + new_h = math.ceil(based_new_w / float(scale_f)) + if scale_f > based_scale: + bg_img2 = char_img.resize( + (new_w, based_new_h), Image.Resampling.LANCZOS + ) + x1 = new_w / 2 - based_new_w / 2 + offset_x + y1 = 0 + offset_y / 2 + x2 = new_w / 2 + based_new_w / 2 + y2 = based_new_h - offset_y / 2 + else: + bg_img2 = char_img.resize( + (based_new_w, new_h), Image.Resampling.LANCZOS + ) + x1 = 0 + offset_x + y1 = new_h / 2 - based_new_h / 2 + offset_y / 2 + x2 = based_new_w + y2 = new_h / 2 + based_new_h / 2 - offset_y / 2 + char_img = bg_img2.crop((x1, y1, x2, y2)) # type: ignore + + char_info_mask = Image.open(TEXT_PATH / 'char_info_mask.png') + char_result = Image.new('RGBA', (based_w, based_h), (0, 0, 0, 0)) + char_result.paste(char_img, (0, 0), char_info_mask) + return char_result + + +async def get_artifacts_card(char: Character, img: Image.Image): + card_prop = char.card_prop + # 圣遗物部分 + for aritifact in card_prop['equipList']: + artifacts_img = Image.open(TEXT_PATH / 'char_info_artifacts.png') + artifacts_piece_img = Image.open( + REL_PATH / '{}.png'.format(aritifact['aritifactName']) + ) + artifacts_piece_new_img = artifacts_piece_img.resize( + (120, 120), Image.Resampling.LANCZOS + ).convert("RGBA") + + artifacts_img.paste( + artifacts_piece_new_img, (165, 22), artifacts_piece_new_img + ) + aritifactStar_img = get_star_png(aritifact['aritifactStar']) + artifactsPos = aritifact['aritifactPieceName'] + + # 圣遗物星星和名称&位置 + artifacts_img.paste(aritifactStar_img, (16, 115), aritifactStar_img) + artifacts_text = ImageDraw.Draw(artifacts_img) + if len(aritifact['aritifactName']) <= 5: + main_name = aritifact['aritifactName'] + else: + main_name = ( + aritifact['aritifactName'][:2] + aritifact['aritifactName'][4:] + ) + artifacts_text.text( + (22, 100), + main_name, + (255, 255, 255), + genshin_font_origin(28), + anchor='lm', + ) + ''' + artifacts_text.text( + (30, 102), + artifactsPos, + (255, 255, 255), + genshin_font_origin(20), + anchor='lm', + ) + ''' + + mainValue: float = aritifact['reliquaryMainstat']['statValue'] + mainName: str = aritifact['reliquaryMainstat']['statName'] + mainLevel: int = aritifact['aritifactLevel'] + + if mainName in ['攻击力', '血量', '防御力', '元素精通']: + mainValueStr = str(mainValue) + else: + mainValueStr = str(mainValue) + '%' + + mainNameNew = ( + mainName.replace('百分比', '') + .replace('伤害加成', '伤加成') + .replace('元素', '') + .replace('理', '') + ) + + artifacts_text.text( + (34, 174), + mainNameNew, + (255, 255, 255), + genshin_font_origin(28), + anchor='lm', + ) + artifacts_text.text( + (266, 174), + mainValueStr, + (255, 255, 255), + genshin_font_origin(28), + anchor='rm', + ) + artifacts_text.text( + (246, 132), + '+{}'.format(str(mainLevel)), + (255, 255, 255), + genshin_font_origin(23), + anchor='mm', + ) + + artifactsScore = 0 + for index, i in enumerate(aritifact['reliquarySubstats']): + subName: str = i['statName'] + subValue: float = i['statValue'] + if subName in ['攻击力', '血量', '防御力', '元素精通']: + subValueStr = str(subValue) + else: + subValueStr = str(subValue) + '%' + value_temp = await get_artifacts_value( + subName, + subValue, + char.baseAtk, + char.baseHp, + char.baseDef, + char.char_name, + ) + artifactsScore += value_temp + subNameStr = subName.replace('百分比', '').replace('元素', '') + # 副词条文字颜色 + if value_temp == 0: + artifacts_color = (160, 160, 160) + else: + artifacts_color = (255, 255, 255) + + # 副词条底色 + if value_temp >= 3.4: + artifacts_bg = (205, 135, 76) + if value_temp >= 4.5: + artifacts_bg = (158, 39, 39) + artifacts_text.rounded_rectangle( + (22, 209 + index * 35, 274, 238 + index * 35), + fill=artifacts_bg, + radius=8, + ) + + artifacts_text.text( + (22, 225 + index * 35), + '·{}'.format(subNameStr), + artifacts_color, + genshin_font_origin(25), + anchor='lm', + ) + artifacts_text.text( + (266, 225 + index * 35), + '{}'.format(subValueStr), + artifacts_color, + genshin_font_origin(25), + anchor='rm', + ) + if artifactsScore >= 8.4: + artifactsScore_color = (158, 39, 39) + elif artifactsScore >= 6.5: + artifactsScore_color = (205, 135, 76) + elif artifactsScore >= 5.2: + artifactsScore_color = (143, 123, 174) + else: + artifactsScore_color = (94, 96, 95) + char.artifacts_all_score += artifactsScore + artifacts_text.rounded_rectangle( + (21, 45, 104, 75), fill=artifactsScore_color, radius=8 + ) + artifacts_text.text( + (26, 60), + '{:.2f}'.format(artifactsScore) + '条', + (255, 255, 255), + genshin_font_origin(23), + anchor='lm', + ) + img.paste(artifacts_img, ARTIFACTS_POS[artifactsPos], artifacts_img) diff --git a/GenshinUID/genshinuid_enka/effect/artifact_effect.json b/GenshinUID/genshinuid_enka/effect/artifact_effect.json new file mode 100644 index 00000000..1596fc5a --- /dev/null +++ b/GenshinUID/genshinuid_enka/effect/artifact_effect.json @@ -0,0 +1,618 @@ +{ + "乐园遗落之花": { + "normal_effect": { + "2": "elementalMastery+80", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "a+40" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "沙上楼阁史话": { + "normal_effect": { + "2": "AnemoDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "ABC:dmgBonus+40" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "深林的记忆": { + "normal_effect": { + "2": "DendroDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "DendroResist+-30" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "饰金之梦": { + "normal_effect": { + "2": "elementalMastery+80", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "elementalMastery+150" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "勇士": { + "normal_effect": { + "2": "addAtk+18", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "dmgBonus+30" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "辰砂往生录": { + "normal_effect": { + "2": "addAtk+18", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "addAtk+48" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "来歆余响": { + "normal_effect": { + "2": "addAtk+18", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "A:addDmg+70%atk" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "华馆梦醒形骸记": { + "normal_effect": { + "2": "addDef+30", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "dmgBonus+24;addDef+24" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "海染砗磲": { + "normal_effect": { + "2": "healBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "绝缘之旗印": { + "normal_effect": { + "2": "energyRecharge+20", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "Q:dmgBonus+75%25%energyrecharge" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "追忆之注连": { + "normal_effect": { + "2": "addAtk+18", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "ABC:dmgBonus+50" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "千岩牢固": { + "normal_effect": { + "2": "addHp+20", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "addAtk+20;shieldBonus+30" + }, + "group_effect": { + "2": "", + "4": "addAtk+20;shieldBonus+30" + } + }, + "苍白之火": { + "normal_effect": { + "2": "physicalDmgBonus+25", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "addAtk+18;physicalDmgBonus+25" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "平息鸣雷的尊者": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "dmgBonus+35" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "炽烈的炎之魔女": { + "normal_effect": { + "2": "PyroDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "a+15;dmgBonus+22.5" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "流浪大地的乐团": { + "normal_effect": { + "2": "elementalMastery+80", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "B:dmgBonus+35" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "染血的骑士道": { + "normal_effect": { + "2": "physicalDmgBonus+25", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "B:dmgBonus+50" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "被怜爱的少女": { + "normal_effect": { + "2": "healBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "healBonus+20" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "角斗士的终幕礼": { + "normal_effect": { + "2": "addAtk+18", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "A:dmgBonus+35" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "渡过烈火的贤人": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "dmgBonus+35" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "悠古的磐岩": { + "normal_effect": { + "2": "GeoDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "dmgBonus+35" + } + }, + "如雷的盛怒": { + "normal_effect": { + "2": "ElectroDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "沉沦之心": { + "normal_effect": { + "2": "HydroDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "AB:dmgBonus+30" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "逆飞的流星": { + "normal_effect": { + "2": "shieldBonus+35", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "AB:dmgBonus+40" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "昔日宗室之仪": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "Q:dmgBonus+20", + "4": "addAtk+20" + }, + "group_effect": { + "2": "", + "4": "addAtk+20" + } + }, + "翠绿之影": { + "normal_effect": { + "2": "AnemoDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "g+60;Resist+-40" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "冰风迷途的勇士": { + "normal_effect": { + "2": "CryoDmgBonus+15", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "critRate+40" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "勇士之心": { + "normal_effect": { + "2": "addAtk+18", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "dmgBonus+30" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "教官": { + "normal_effect": { + "2": "elementalMastery+80", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "elementalMastery+120" + }, + "group_effect": { + "2": "", + "4": "elementalMastery+120" + } + }, + "流放者": { + "normal_effect": { + "2": "energyRecharge+20", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "战狂": { + "normal_effect": { + "2": "critRate+12", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "critRate+24" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "武人": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "AB:dmgBonus+15", + "4": "AB:dmgBonus+25" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "学士": { + "normal_effect": { + "2": "energyRecharge+20", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "赌徒": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "E:dmgBonus+20", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "奇迹": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "行者之心": { + "normal_effect": { + "2": "addAtk+18", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "B:critRate+30" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "守护之心": { + "normal_effect": { + "2": "addDef+30", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "幸运儿": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "冒险家": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "游医": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "祭冰之人": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "祭雷之人": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "祭火之人": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + }, + "祭水之人": { + "normal_effect": { + "2": "", + "4": "" + }, + "fight_effect": { + "2": "", + "4": "" + }, + "group_effect": { + "2": "", + "4": "" + } + } +} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/effect/char_action.json b/GenshinUID/genshinuid_enka/effect/char_action.json new file mode 100644 index 00000000..959065c0 --- /dev/null +++ b/GenshinUID/genshinuid_enka/effect/char_action.json @@ -0,0 +1 @@ +{"神里绫华": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["45.7%", "49.4%", "53.2%", "58.5%", "62.2%", "66.5%", "72.3%", "78.2%", "84.0%", "90.4%", "96.8%", "103.1%", "109.5%", "115.9%", "122.3%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 3, "value": ["55.1%", "59.6%", "64.1%", "70.5%", "75.0%", "80.1%", "87.2%", "94.2%", "101.3%", "109.0%", "116.7%", "124.4%", "132.0%", "139.7%", "147.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["239%", "257%", "275%", "299%", "317%", "335%", "359%", "383%", "407%", "431%", "454%", "478%", "508%", "538%", "568%"]}, "Q切割伤害": {"name": "Q切割伤害", "type": "攻击力", "plus": 1, "value": ["112%", "121%", "129%", "140%", "149%", "157%", "168%", "180%", "191%", "202%", "213%", "225%", "239%", "253%", "267%"]}, "Q绽放伤害": {"name": "Q绽放伤害", "type": "攻击力", "plus": 1, "value": ["168%", "181%", "194%", "211%", "223%", "236%", "253%", "270%", "286%", "303%", "320%", "337%", "358%", "379%", "400%"]}}, "琴": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["48.3%", "52.3%", "56.2%", "61.8%", "65.8%", "70.2%", "76.4%", "82.6%", "88.8%", "95.5%", "103.3%", "112.4%", "121.4%", "130.5%", "140.4%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["162%", "175%", "188%", "207%", "220%", "236%", "256%", "277%", "298%", "320%", "346%", "377%", "407%", "438%", "471%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["292%", "314%", "336%", "365%", "387%", "409%", "438%", "467%", "496%", "526%", "555%", "584%", "620%", "657%", "693%"]}, "Q爆发伤害": {"name": "Q爆发伤害", "type": "攻击力", "plus": 1, "value": ["425%", "457%", "489%", "531%", "563%", "595%", "637%", "680%", "722%", "765%", "807%", "850%", "903%", "956%", "1009%"]}, "Q出入领域伤害": {"name": "Q出入领域伤害", "type": "攻击力", "plus": 1, "value": ["78.4%", "84.3%", "90.2%", "98.0%", "103.9%", "109.8%", "117.6%", "125.4%", "133.3%", "141.1%", "149.0%", "156.8%", "166.6%", "176.4%", "186.2%"]}, "Q领域发动治疗量": {"name": "Q领域发动治疗量", "type": "攻击", "plus": 1, "value": ["251%+1540.32", "270%+1694.38", "289%+1861.27", "314%+2041.00", "333%+2233.57", "352%+2438.97", "377%+2657.22", "402%+2888.30", "427%+3132.22", "452%+3388.97", "477%+3658.57", "502%+3941.00", "534%+4236.27", "565%+4544.38", "597%+4865.32"]}, "Q持续治疗": {"name": "Q持续治疗", "type": "攻击", "plus": 1, "value": ["25.12%+154.03", "27.00%+169.44", "28.89%+186.13", "31.40%+204.10", "33.28%+223.36", "35.17%+243.90", "37.68%+265.72", "40.19%+288.83", "42.70%+313.22", "45.22%+338.90", "47.73%+365.86", "50.24%+394.10", "53.38%+423.63", "56.52%+454.44", "59.66%+486.53"]}}, "旅行者": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.5%", "48.1%", "51.7%", "56.9%", "60.5%", "64.6%", "70.3%", "76.0%", "81.7%", "87.9%", "94.1%", "100.3%", "106.5%", "112.7%", "118.9%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.9%+72.2%", "60.4%+78.1%", "65.0%+84.0%", "71.5%+92.4%", "76.1%+98.3%", "81.2%+105.0%", "88.4%+114.2%", "95.6%+123.5%", "102.7%+132.7%", "110.5%+142.8%", "118.3%+152.9%", "126.1%+163.0%", "133.9%+173.0%", "141.7%+183.1%", "149.5%+193.2%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["248%", "267%", "285%", "310%", "329%", "347%", "372%", "397%", "422%", "446%", "471%", "496%", "527%", "558%", "589%"]}, "Q地震波单次伤害": {"name": "Q地震波单次伤害", "type": "攻击力", "plus": 1, "value": ["148%", "159%", "170%", "185%", "196%", "207%", "222%", "237%", "252%", "266%", "281%", "296%", "314%", "333%", "352%"]}}, "丽莎": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["39.6%", "42.6%", "45.5%", "49.5%", "52.5%", "55.4%", "59.4%", "63.4%", "67.3%", "71.3%", "75.4%", "80.8%", "86.2%", "91.6%", "96.9%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["177%", "190%", "204%", "221%", "235%", "248%", "266%", "283%", "301%", "319%", "337%", "361%", "385%", "410%", "434%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["80.0%", "86.0%", "92.0%", "100.0%", "106.0%", "112.0%", "120.0%", "128.0%", "136.0%", "144.0%", "152.0%", "160.0%", "170.0%", "180.0%", "190.0%"]}, "E无引雷长按伤害": {"name": "E无引雷长按伤害", "type": "攻击力", "plus": 1, "value": ["320%", "344%", "368%", "400%", "424%", "448%", "480%", "512%", "544%", "576%", "608%", "640%", "680%", "720%", "760%"]}, "E一层引雷长按伤害": {"name": "E一层引雷长按伤害", "type": "攻击力", "plus": 1, "value": ["368%", "396%", "423%", "460%", "488%", "515%", "552%", "589%", "626%", "662%", "699%", "736%", "782%", "828%", "874%"]}, "E二层引雷长按伤害": {"name": "E二层引雷长按伤害", "type": "攻击力", "plus": 1, "value": ["424%", "456%", "488%", "530%", "562%", "594%", "636%", "678%", "721%", "763%", "806%", "848%", "901%", "954%", "1007%"]}, "E三层引雷长按伤害": {"name": "E三层引雷长按伤害", "type": "攻击力", "plus": 1, "value": ["487%", "524%", "560%", "609%", "646%", "682%", "731%", "780%", "828%", "877%", "926%", "974%", "1035%", "1096%", "1157%"]}, "Q放电伤害": {"name": "Q放电伤害", "type": "攻击力", "plus": 1, "value": ["36.6%", "39.3%", "42.0%", "45.7%", "48.4%", "51.2%", "54.8%", "58.5%", "62.2%", "65.8%", "69.5%", "73.1%", "77.7%", "82.3%", "86.8%"]}}, "芭芭拉": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["37.8%", "40.7%", "43.5%", "47.3%", "50.1%", "53.0%", "56.8%", "60.5%", "64.3%", "68.1%", "72.0%", "77.2%", "82.3%", "87.5%", "92.6%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["166%", "179%", "191%", "208%", "220%", "233%", "249%", "266%", "283%", "299%", "317%", "339%", "362%", "384%", "407%"]}, "A重击伤害(蒸发)": {"name": "A重击伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["166%", "179%", "191%", "208%", "220%", "233%", "249%", "266%", "283%", "299%", "317%", "339%", "362%", "384%", "407%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E命中治疗量": {"name": "E命中治疗量", "type": "生命值", "plus": 1, "value": ["0.75%+72.22", "0.81%+79.45", "0.86%+87.27", "0.94%+95.70", "0.99%+104.73", "1.05%+114.36", "1.13%+124.59", "1.20%+135.43", "1.27%+146.86", "1.35%+158.90", "1.43%+171.54", "1.50%+184.79", "1.59%+198.63", "1.69%+213.08", "1.78%+228.13"]}, "E持续治疗量": {"name": "E持续治疗量", "type": "生命值", "plus": 1, "value": ["4.00%+385.19", "4.30%+423.71", "4.60%+465.45", "5.00%+510.39", "5.30%+558.55", "5.60%+609.91", "6.00%+664.49", "6.40%+722.27", "6.80%+783.27", "7.20%+847.48", "7.60%+914.89", "8.00%+985.52", "8.50%+1059.36", "9.00%+1136.41", "9.50%+1216.67"]}, "E水珠伤害": {"name": "E水珠伤害", "type": "攻击力", "plus": 1, "value": ["58.4%", "62.8%", "67.2%", "73.0%", "77.4%", "81.8%", "87.6%", "93.4%", "99.3%", "105.1%", "111.0%", "116.8%", "124.1%", "131.4%", "138.7%"]}, "Q治疗量": {"name": "Q治疗量", "type": "生命值", "plus": 1, "value": ["17.6%+1694.28", "18.9%+1863.73", "20.2%+2047.31", "22.0%+2245.00", "23.3%+2456.81", "24.6%+2682.75", "26.4%+2922.81", "28.2%+3176.98", "29.9%+3445.28", "31.7%+3727.70", "33.4%+4024.24", "35.2%+4334.90", "37.4%+4659.69", "39.6%+4998.59", "41.8%+5351.62"]}}, "凯亚": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["53.8%", "58.1%", "62.5%", "68.8%", "73.1%", "78.1%", "85.0%", "91.9%", "98.8%", "106.2%", "114.8%", "125.0%", "135.1%", "145.2%", "156.2%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.0%+73.1%", "59.5%+79.0%", "64.0%+85.0%", "70.4%+93.5%", "74.9%+99.4%", "80.0%+106.2%", "87.0%+115.6%", "94.1%+125.0%", "101.1%+134.3%", "108.8%+144.5%", "117.6%+156.2%", "127.9%+169.9%", "138.3%+183.7%", "148.6%+197.4%", "159.9%+212.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["191%", "206%", "220%", "239%", "253%", "268%", "287%", "306%", "325%", "344%", "363%", "382%", "406%", "430%", "454%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["77.6%", "83.4%", "89.2%", "97.0%", "102.8%", "108.6%", "116.4%", "124.2%", "131.9%", "139.7%", "147.4%", "155.2%", "164.9%", "174.6%", "184.3%"]}}, "迪卢克": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["89.7%", "97.0%", "104.3%", "114.7%", "122.0%", "130.4%", "141.8%", "153.3%", "164.8%", "177.3%", "191.7%", "208.5%", "225.4%", "242.2%", "260.6%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["68.8%", "74.4%", "80.0%", "88.0%", "93.6%", "100.0%", "108.8%", "117.6%", "126.4%", "136.0%", "147.0%", "159.9%", "172.9%", "185.8%", "199.9%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["125%", "135%", "145%", "160%", "170%", "181%", "197%", "213%", "229%", "246%", "266%", "290%", "313%", "337%", "362%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["224%", "242%", "260%", "286%", "304%", "325%", "354%", "382%", "411%", "442%", "473%", "504%", "535%", "567%", "598%"]}, "E一段伤害": {"name": "E一段伤害", "type": "攻击力", "plus": 1, "value": ["94.4%", "101.5%", "108.6%", "118.0%", "125.1%", "132.2%", "141.6%", "151.0%", "160.5%", "169.9%", "179.4%", "188.8%", "200.6%", "212.4%", "224.2%"]}, "Q斩击伤害": {"name": "Q斩击伤害", "type": "攻击力", "plus": 1, "value": ["204%", "219%", "235%", "255%", "270%", "286%", "306%", "326%", "347%", "367%", "388%", "408%", "434%", "459%", "484%"]}, "Q斩击伤害(蒸发)": {"name": "Q斩击伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["204%", "219%", "235%", "255%", "270%", "286%", "306%", "326%", "347%", "367%", "388%", "408%", "434%", "459%", "484%"]}, "Q持续伤害": {"name": "Q持续伤害", "type": "攻击力", "plus": 1, "value": ["60.0%", "64.5%", "69.0%", "75.0%", "79.5%", "84.0%", "90.0%", "96.0%", "102.0%", "108.0%", "114.0%", "120.0%", "127.5%", "135.0%", "142.5%"]}, "Q爆裂伤害": {"name": "Q爆裂伤害", "type": "攻击力", "plus": 1, "value": ["204%", "219%", "235%", "255%", "270%", "286%", "306%", "326%", "347%", "367%", "388%", "408%", "434%", "459%", "484%"]}}, "雷泽": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["95.9%", "102.5%", "109.0%", "117.7%", "124.3%", "131.9%", "141.7%", "151.5%", "161.3%", "171.1%", "180.9%", "190.8%", "200.6%", "210.4%", "220.2%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["62.5%", "67.6%", "72.7%", "80.0%", "85.1%", "90.9%", "98.9%", "106.9%", "114.9%", "123.6%", "132.4%", "141.1%", "149.8%", "158.5%", "167.3%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["113%", "122%", "132%", "145%", "154%", "164%", "179%", "193%", "208%", "224%", "239%", "255%", "271%", "287%", "302%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["205%", "222%", "238%", "262%", "279%", "298%", "324%", "350%", "376%", "405%", "434%", "462%", "491%", "519%", "548%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["199%", "214%", "229%", "249%", "264%", "279%", "299%", "319%", "339%", "359%", "378%", "398%", "423%", "448%", "473%"]}, "E长按伤害": {"name": "E长按伤害", "type": "攻击力", "plus": 1, "value": ["295%", "317%", "339%", "369%", "391%", "413%", "443%", "472%", "502%", "531%", "561%", "590%", "627%", "664%", "701%"]}, "Q爆发伤害": {"name": "Q爆发伤害", "type": "攻击力", "plus": 1, "value": ["160%", "172%", "184%", "200%", "212%", "224%", "240%", "256%", "272%", "288%", "304%", "320%", "340%", "360%", "380%"]}, "Q狼魂伤害": {"name": "Q狼魂伤害", "type": "普通攻击", "plus": 1, "value": ["24.0%", "25.8%", "27.6%", "30.0%", "31.8%", "33.6%", "36.0%", "38.4%", "40.8%", "43.2%", "45.6%", "48.0%", "51.0%", "54.0%", "57.0%"]}}, "安柏": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["36.1%", "39.1%", "42.0%", "46.2%", "49.1%", "52.5%", "57.1%", "61.7%", "66.4%", "71.4%", "76.4%", "81.5%", "86.5%", "91.6%", "96.6%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A满蓄力瞄准射击(融化)": {"name": "A满蓄力瞄准射击(融化)", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A满蓄力瞄准射击(蒸发)": {"name": "A满蓄力瞄准射击(蒸发)", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E爆炸伤害": {"name": "E爆炸伤害", "type": "攻击力", "plus": 1, "value": ["123%", "132%", "142%", "154%", "163%", "172%", "185%", "197%", "209%", "222%", "234%", "246%", "262%", "277%", "293%"]}, "Q箭雨单次伤害": {"name": "Q箭雨单次伤害", "type": "攻击力", "plus": 1, "value": ["28.1%", "30.2%", "32.3%", "35.1%", "37.2%", "39.3%", "42.1%", "44.9%", "47.7%", "50.5%", "53.4%", "56.2%", "59.7%", "63.2%", "66.7%"]}, "Q箭雨总伤害": {"name": "Q箭雨总伤害", "type": "攻击力", "plus": 1, "value": ["505%", "543%", "581%", "632%", "670%", "708%", "758%", "809%", "859%", "910%", "960%", "1011%", "1074%", "1137%", "1200%"]}}, "温迪": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["20.4%+20.4%", "22.0%+22.0%", "23.7%+23.7%", "26.1%+26.1%", "27.7%+27.7%", "29.6%+29.6%", "32.2%+32.2%", "34.8%+34.8%", "37.4%+37.4%", "40.3%+40.3%", "43.5%+43.5%", "47.4%+47.4%", "51.2%+51.2%", "55.0%+55.0%", "59.2%+59.2%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "253%", "270%", "287%", "304%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["276%", "297%", "317%", "345%", "366%", "386%", "414%", "442%", "469%", "497%", "524%", "552%", "586%", "621%", "655%"]}, "E长按伤害": {"name": "E长按伤害", "type": "攻击力", "plus": 1, "value": ["380%", "409%", "437%", "475%", "503%", "532%", "570%", "608%", "646%", "684%", "722%", "760%", "807%", "855%", "902%"]}, "Q持续伤害": {"name": "Q持续伤害", "type": "攻击力", "plus": 1, "value": ["37.6%", "40.4%", "43.2%", "47.0%", "49.8%", "52.6%", "56.4%", "60.2%", "63.9%", "67.7%", "71.4%", "75.2%", "79.9%", "84.6%", "89.3%"]}, "Q附加元素伤害": {"name": "Q附加元素伤害", "type": "攻击力", "plus": 1, "value": ["18.8%", "20.2%", "21.6%", "23.5%", "24.9%", "26.3%", "28.2%", "30.1%", "32.0%", "33.8%", "35.7%", "37.6%", "40.0%", "42.3%", "44.7%"]}}, "香菱": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["42.1%", "45.5%", "48.9%", "53.8%", "57.2%", "61.1%", "66.5%", "71.9%", "77.3%", "83.1%", "89.9%", "97.8%", "105.7%", "113.6%", "122.2%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["122%", "132%", "141%", "156%", "166%", "177%", "192%", "208%", "224%", "241%", "260%", "283%", "306%", "329%", "354%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E喷火伤害": {"name": "E喷火伤害", "type": "攻击力", "plus": 1, "value": ["111%", "120%", "128%", "139%", "147%", "156%", "167%", "178%", "189%", "200%", "211%", "223%", "236%", "250%", "264%"]}, "E喷火伤害(蒸发)": {"name": "E喷火伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["111%", "120%", "128%", "139%", "147%", "156%", "167%", "178%", "189%", "200%", "211%", "223%", "236%", "250%", "264%"]}, "Q一段挥舞伤害": {"name": "Q一段挥舞伤害", "type": "攻击力", "plus": 1, "value": ["72.0%", "77.4%", "82.8%", "90.0%", "95.4%", "100.8%", "108.0%", "115.2%", "122.4%", "129.6%", "136.8%", "144.0%", "153.0%", "162.0%", "171.0%"]}, "Q旋火轮伤害": {"name": "Q旋火轮伤害", "type": "攻击力", "plus": 1, "value": ["112%", "120%", "129%", "140%", "148%", "157%", "168%", "179%", "190%", "202%", "213%", "224%", "238%", "252%", "266%"]}, "Q旋火轮伤害(蒸发)": {"name": "Q旋火轮伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["112%", "120%", "129%", "140%", "148%", "157%", "168%", "179%", "190%", "202%", "213%", "224%", "238%", "252%", "266%"]}}, "北斗": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["71.1%", "76.9%", "82.7%", "91.0%", "96.8%", "103.4%", "112.5%", "121.6%", "130.7%", "140.6%", "152.0%", "165.3%", "178.7%", "192.1%", "206.7%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["56.2%", "60.8%", "65.4%", "71.9%", "76.5%", "81.7%", "88.9%", "96.1%", "103.3%", "111.2%", "120.2%", "130.7%", "141.3%", "151.9%", "163.4%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["102%", "110%", "118%", "130%", "139%", "148%", "161%", "174%", "187%", "201%", "218%", "237%", "256%", "275%", "296%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "394%", "420%", "446%", "472%", "498%"]}, "E护盾吸收量": {"name": "E护盾吸收量", "type": "生命值", "plus": 1, "value": ["14.4%+1386.37", "15.5%+1525.02", "16.6%+1675.23", "18.0%+1837.00", "19.1%+2010.32", "20.2%+2195.19", "21.6%+2391.62", "23.0%+2599.61", "24.5%+2819.15", "25.9%+3050.24", "27.4%+3292.89", "28.8%+3547.09", "30.6%+3812.85", "32.4%+4090.16", "34.2%+4379.03"]}, "E基础伤害": {"name": "E基础伤害", "type": "攻击力", "plus": 1, "value": ["122%", "131%", "140%", "152%", "161%", "170%", "182%", "195%", "207%", "219%", "231%", "243%", "258%", "274%", "289%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["122%", "131%", "140%", "152%", "161%", "170%", "182%", "195%", "207%", "219%", "231%", "243%", "258%", "274%", "289%"]}, "Q闪雷伤害": {"name": "Q闪雷伤害", "type": "攻击力", "plus": 1, "value": ["96.0%", "103.2%", "110.4%", "120.0%", "127.2%", "134.4%", "144.0%", "153.6%", "163.2%", "172.8%", "182.4%", "192.0%", "204.0%", "216.0%", "228.0%"]}, "Q闪雷伤害(超激化)": {"name": "Q闪雷伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["96.0%", "103.2%", "110.4%", "120.0%", "127.2%", "134.4%", "144.0%", "153.6%", "163.2%", "172.8%", "182.4%", "192.0%", "204.0%", "216.0%", "228.0%"]}, "Q伤害减免": {"name": "Q伤害减免", "type": "攻击力", "plus": 1, "value": ["20%", "21%", "22%", "24%", "25%", "26%", "28%", "30%", "32%", "34%", "35%", "36%", "37%", "38%", "39%"]}}, "行秋": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["46.6%", "50.4%", "54.2%", "59.6%", "63.4%", "67.8%", "73.7%", "79.7%", "85.6%", "92.1%", "99.6%", "108.4%", "117.1%", "125.9%", "135.4%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["47.3%+56.2%", "51.2%+60.7%", "55.0%+65.3%", "60.5%+71.8%", "64.3%+76.4%", "68.8%+81.6%", "74.8%+88.8%", "80.8%+96.0%", "86.9%+103.2%", "93.5%+111.0%", "101.1%+120.0%", "110.0%+130.5%", "118.8%+141.1%", "127.7%+151.7%", "137.4%+163.2%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["168%+191%", "181%+206%", "193%+220%", "210%+239%", "223%+253%", "235%+268%", "252%+287%", "269%+306%", "286%+325%", "302%+344%", "319%+363%", "336%+382%", "357%+406%", "378%+430%", "399%+454%"]}, "E伤害(蒸发)": {"name": "E伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["168%+191%", "181%+206%", "193%+220%", "210%+239%", "223%+253%", "235%+268%", "252%+287%", "269%+306%", "286%+325%", "302%+344%", "319%+363%", "336%+382%", "357%+406%", "378%+430%", "399%+454%"]}, "Q剑雨伤害": {"name": "Q剑雨伤害", "type": "攻击力", "plus": 1, "value": ["54.3%", "58.3%", "62.4%", "67.8%", "71.9%", "76.0%", "81.4%", "86.8%", "92.3%", "97.7%", "103.1%", "108.5%", "115.3%", "122.1%", "128.9%"]}}, "魈": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["27.5%+27.5%", "29.4%+29.4%", "31.3%+31.3%", "33.8%+33.8%", "35.7%+35.7%", "37.9%+37.9%", "40.7%+40.7%", "43.5%+43.5%", "46.3%+46.3%", "49.1%+49.1%", "52.0%+52.0%", "54.8%+54.8%", "57.6%+57.6%", "60.4%+60.4%", "63.2%+63.2%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["121%", "129%", "138%", "149%", "157%", "166%", "179%", "191%", "204%", "216%", "228%", "241%", "253%", "266%", "278%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["204%", "221%", "238%", "261%", "278%", "297%", "323%", "349%", "375%", "404%", "433%", "461%", "490%", "518%", "547%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["253%", "272%", "291%", "316%", "335%", "354%", "379%", "404%", "430%", "455%", "480%", "506%", "537%", "569%", "600%"]}}, "凝光": {"A普通攻击伤害": {"name": "A普通攻击伤害", "type": "攻击力", "plus": 1, "value": ["28.0%", "30.1%", "32.2%", "35.0%", "37.1%", "39.2%", "42.0%", "44.8%", "47.6%", "50.4%", "53.3%", "57.1%", "60.9%", "64.7%", "68.5%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["174%", "187%", "200%", "218%", "231%", "244%", "261%", "279%", "296%", "313%", "331%", "355%", "379%", "402%", "426%"]}, "A星璇伤害": {"name": "A星璇伤害", "type": "攻击力", "plus": 1, "value": ["49.6%", "53.3%", "57.0%", "62.0%", "65.7%", "69.4%", "74.4%", "79.4%", "84.3%", "89.3%", "94.4%", "101.2%", "107.9%", "114.7%", "121.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["230%", "248%", "265%", "288%", "305%", "323%", "346%", "369%", "392%", "415%", "438%", "461%", "490%", "518%", "547%"]}, "Q宝石伤害": {"name": "Q宝石伤害", "type": "攻击力", "plus": 1, "value": ["87.0%", "93.5%", "100.0%", "108.7%", "115.2%", "121.7%", "130.4%", "139.1%", "147.8%", "156.5%", "165.2%", "173.9%", "184.8%", "195.7%", "206.5%"]}}, "可莉": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["72.2%", "77.6%", "83.0%", "90.2%", "95.6%", "101.0%", "108.2%", "115.5%", "122.7%", "129.9%", "137.4%", "147.2%", "157.0%", "166.8%", "176.6%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["157%", "169%", "181%", "197%", "209%", "220%", "236%", "252%", "268%", "283%", "300%", "321%", "342%", "364%", "385%"]}, "A重击伤害(蒸发)": {"name": "A重击伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["157%", "169%", "181%", "197%", "209%", "220%", "236%", "252%", "268%", "283%", "300%", "321%", "342%", "364%", "385%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E蹦蹦炸弹伤害": {"name": "E蹦蹦炸弹伤害", "type": "攻击力", "plus": 1, "value": ["95.2%", "102.3%", "109.5%", "119.0%", "126.1%", "133.3%", "142.8%", "152.3%", "161.8%", "171.4%", "180.9%", "190.4%", "202.3%", "214.2%", "226.1%"]}, "E诡雷伤害": {"name": "E诡雷伤害", "type": "攻击力", "plus": 1, "value": ["32.8%", "35.3%", "37.7%", "41.0%", "43.5%", "45.9%", "49.2%", "52.5%", "55.8%", "59.0%", "62.3%", "65.6%", "69.7%", "73.8%", "77.9%"]}, "Q轰轰火花伤害": {"name": "Q轰轰火花伤害", "type": "攻击力", "plus": 1, "value": ["42.6%", "45.8%", "49.0%", "53.3%", "56.5%", "59.7%", "64.0%", "68.2%", "72.5%", "76.8%", "81.0%", "85.3%", "90.6%", "95.9%", "101.3%"]}}, "钟离": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["30.8%", "33.3%", "35.8%", "39.4%", "41.9%", "44.7%", "48.7%", "52.6%", "56.5%", "60.8%", "65.7%", "71.5%", "77.3%", "83.1%", "89.4%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["111%", "120%", "129%", "142%", "151%", "161%", "176%", "190%", "204%", "219%", "237%", "258%", "279%", "300%", "323%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E岩脊伤害/共鸣伤害": {"name": "E岩脊伤害/共鸣伤害", "type": "攻击力", "plus": 1, "value": ["16.0%+32.0%", "17.2%+34.4%", "18.4%+36.8%", "20.0%+40.0%", "21.2%+42.4%", "22.4%+44.8%", "24.0%+48.0%", "25.6%+51.2%", "27.2%+54.4%", "28.8%+57.6%", "30.4%+60.8%", "32.0%+64.0%", "34.0%+68.0%", "36.0%+72.0%", "38.0%+76.0%"]}, "E长按伤害": {"name": "E长按伤害", "type": "攻击力", "plus": 1, "value": ["80%", "86%", "92%", "100%", "106%", "112%", "120%", "128%", "136%", "144%", "152%", "160%", "170%", "180%", "190%"]}, "E护盾基础吸收量": {"name": "E护盾基础吸收量", "type": "攻击力", "plus": 1, "value": ["1232.41", "1355.67", "1489.20", "1633.00", "1787.07", "1951.42", "2126.03", "2310.92", "2506.08", "2711.51", "2927.21", "3153.18", "3389.43", "3635.95", "3892.73"]}, "E护盾附加吸收量": {"name": "E护盾附加吸收量", "type": "生命值", "plus": 1, "value": ["12.8%", "13.8%", "14.7%", "16.0%", "17.0%", "17.9%", "19.2%", "20.5%", "21.8%", "23.0%", "24.3%", "25.6%", "27.2%", "28.8%", "30.4%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["401%", "444%", "488%", "542%", "591%", "640%", "705%", "770%", "835%", "900%", "965%", "1030%", "1084%", "1138%", "1192%"]}}, "菲谢尔": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.1%", "47.7%", "51.3%", "56.4%", "60.0%", "64.1%", "69.8%", "75.4%", "81.1%", "87.2%", "93.4%", "99.5%", "105.7%", "111.8%", "118.0%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E奥兹攻击伤害": {"name": "E奥兹攻击伤害", "type": "攻击力", "plus": 1, "value": ["88.8%", "95.5%", "102.1%", "111.0%", "117.7%", "124.3%", "133.2%", "142.1%", "151.0%", "159.8%", "168.7%", "177.6%", "188.7%", "199.8%", "210.9%"]}, "E奥兹攻击伤害(超激化)": {"name": "E奥兹攻击伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["88.8%", "95.5%", "102.1%", "111.0%", "117.7%", "124.3%", "133.2%", "142.1%", "151.0%", "159.8%", "168.7%", "177.6%", "188.7%", "199.8%", "210.9%"]}, "E召唤伤害": {"name": "E召唤伤害", "type": "攻击力", "plus": 1, "value": ["115%", "124%", "133%", "144%", "153%", "162%", "173%", "185%", "196%", "208%", "219%", "231%", "245%", "260%", "274%"]}, "Q落雷伤害": {"name": "Q落雷伤害", "type": "攻击力", "plus": 1, "value": ["208%", "224%", "239%", "260%", "276%", "291%", "312%", "333%", "354%", "374%", "395%", "416%", "442%", "468%", "494%"]}}, "班尼特": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.5%", "48.2%", "51.8%", "57.0%", "60.6%", "64.7%", "70.4%", "76.1%", "81.8%", "88.1%", "94.3%", "100.5%", "106.7%", "112.9%", "119.1%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.9%+60.7%", "60.4%+65.7%", "65.0%+70.6%", "71.5%+77.7%", "76.1%+82.6%", "81.2%+88.2%", "88.4%+96.0%", "95.6%+103.8%", "102.7%+111.5%", "110.5%+120.0%", "118.3%+128.5%", "126.1%+137.0%", "133.9%+145.4%", "141.7%+153.9%", "149.5%+162.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["138%", "148%", "158%", "172%", "182%", "193%", "206%", "220%", "234%", "248%", "261%", "275%", "292%", "310%", "327%"]}, "E一段蓄力伤害": {"name": "E一段蓄力伤害", "type": "攻击力", "plus": 1, "value": ["84.0%+92.0%", "90.3%+98.9%", "96.6%+105.8%", "105.0%+115.0%", "111.3%+121.9%", "117.6%+128.8%", "126.0%+138.0%", "134.4%+147.2%", "142.8%+156.4%", "151.2%+165.6%", "159.6%+174.8%", "168.0%+184.0%", "178.5%+195.5%", "189.0%+207.0%", "199.5%+218.5%"]}, "E爆炸伤害": {"name": "E爆炸伤害", "type": "攻击力", "plus": 1, "value": ["132%", "142%", "152%", "165%", "175%", "185%", "198%", "211%", "224%", "238%", "251%", "264%", "281%", "297%", "313%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["233%", "250%", "268%", "291%", "308%", "326%", "349%", "372%", "396%", "419%", "442%", "466%", "495%", "524%", "553%"]}, "Q伤害(蒸发)": {"name": "Q伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["233%", "250%", "268%", "291%", "308%", "326%", "349%", "372%", "396%", "419%", "442%", "466%", "495%", "524%", "553%"]}, "Q持续治疗": {"name": "Q持续治疗", "type": "生命值", "plus": 1, "value": ["6.00%+577.34", "6.45%+635.08", "6.90%+697.63", "7.50%+765.00", "7.95%+837.18", "8.40%+914.17", "9.00%+995.97", "9.60%+1082.58", "10.20%+1174.01", "10.80%+1270.24", "11.40%+1371.29", "12.00%+1477.15", "12.75%+1587.82", "13.50%+1703.31", "14.25%+1823.60"]}}, "达达利亚": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["41.3%", "44.6%", "48.0%", "52.8%", "56.2%", "60.0%", "65.3%", "70.6%", "75.8%", "81.6%", "87.4%", "93.1%", "98.9%", "104.6%", "110.4%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A满蓄力瞄准射击(蒸发)": {"name": "A满蓄力瞄准射击(蒸发)", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A断流·闪 伤害": {"name": "A断流·闪 伤害", "type": "攻击力", "plus": 3, "value": ["12.4%", "13.3%", "14.3%", "15.5%", "16.4%", "17.4%", "18.6%", "19.8%", "21.1%", "22.3%", "23.6%", "24.8%", "26.4%", "27.9%", "29.4%"]}, "A断流·破 伤害": {"name": "A断流·破 伤害", "type": "攻击力", "plus": 1, "value": ["62.0%", "66.6%", "71.3%", "77.5%", "82.2%", "86.8%", "93.0%", "99.2%", "105.4%", "111.6%", "117.8%", "124.0%", "131.7%", "139.5%", "147.2%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E状态激发伤害": {"name": "E状态激发伤害", "type": "攻击力", "plus": 1, "value": ["72%", "77%", "83%", "90%", "95%", "101%", "108%", "115%", "122%", "130%", "137%", "144%", "153%", "162%", "171%"]}, "E一段伤害": {"name": "E一段伤害", "type": "攻击力", "plus": 1, "value": ["38.9%", "42.0%", "45.2%", "49.7%", "52.9%", "56.5%", "61.5%", "66.4%", "71.4%", "76.8%", "82.3%", "87.7%", "93.1%", "98.5%", "104.0%"]}, "E重击伤害": {"name": "E重击伤害", "type": "攻击力", "plus": 1, "value": ["60.2%+72.0%", "65.1%+77.8%", "70.0%+83.7%", "77.0%+92.1%", "81.9%+97.9%", "87.5%+104.6%", "95.2%+113.8%", "102.9%+123.0%", "110.6%+132.2%", "119.0%+142.3%", "127.4%+152.3%", "135.8%+162.4%", "144.2%+172.4%", "152.6%+182.5%", "161.0%+192.5%"]}, "E断流·斩 伤害": {"name": "E断流·斩 伤害", "type": "攻击力", "plus": 1, "value": ["60%", "65%", "70%", "77%", "82%", "88%", "95%", "103%", "111%", "119%", "127%", "136%", "144%", "153%", "161%"]}, "Q伤害·近战": {"name": "Q伤害·近战", "type": "攻击力", "plus": 1, "value": ["464%", "499%", "534%", "580%", "615%", "650%", "696%", "742%", "789%", "835%", "882%", "928%", "986%", "1044%", "1102%"]}, "Q伤害·近战(蒸发)": {"name": "Q伤害·近战(蒸发)", "type": "攻击力", "plus": 1, "value": ["464%", "499%", "534%", "580%", "615%", "650%", "696%", "742%", "789%", "835%", "882%", "928%", "986%", "1044%", "1102%"]}, "Q伤害·远程": {"name": "Q伤害·远程", "type": "攻击力", "plus": 1, "value": ["378%", "407%", "435%", "473%", "501%", "530%", "568%", "605%", "643%", "681%", "719%", "757%", "804%", "851%", "899%"]}, "Q伤害·远程(蒸发)": {"name": "Q伤害·远程(蒸发)", "type": "攻击力", "plus": 1, "value": ["378%", "407%", "435%", "473%", "501%", "530%", "568%", "605%", "643%", "681%", "719%", "757%", "804%", "851%", "899%"]}, "Q断流·爆 伤害": {"name": "Q断流·爆 伤害", "type": "攻击力", "plus": 1, "value": ["120%", "129%", "138%", "150%", "159%", "168%", "180%", "192%", "204%", "216%", "228%", "240%", "255%", "270%", "285%"]}}, "诺艾尔": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["79.1%", "85.6%", "92.0%", "101.2%", "107.6%", "115.0%", "125.1%", "135.2%", "145.4%", "156.4%", "167.4%", "178.5%", "189.5%", "200.6%", "211.6%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["50.7%", "54.9%", "59.0%", "64.9%", "69.0%", "73.8%", "80.2%", "86.7%", "93.2%", "100.3%", "107.4%", "114.5%", "121.5%", "128.6%", "135.7%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["90.5%", "97.8%", "105.2%", "115.7%", "123.1%", "131.5%", "143.1%", "154.6%", "166.2%", "178.8%", "191.5%", "204.1%", "216.7%", "229.3%", "242.0%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "394%", "420%", "446%", "472%", "498%"]}, "E伤害": {"name": "E伤害", "type": "防御", "plus": 1, "value": ["120%", "129%", "138%", "150%", "159%", "168%", "180%", "192%", "204%", "216%", "228%", "240%", "255%", "270%", "285%"]}, "E治疗量": {"name": "E治疗量", "type": "防御", "plus": 1, "value": ["21.3%+102.72", "22.9%+112.99", "24.5%+124.12", "26.6%+136.11", "28.2%+148.95", "29.8%+162.65", "31.9%+177.20", "34.0%+192.61", "36.2%+208.87", "38.3%+226.00", "40.4%+243.97", "42.6%+262.81", "45.2%+282.50", "47.9%+303.05", "50.5%+324.45"]}, "E治疗触发几率": {"name": "E治疗触发几率", "type": "攻击力", "plus": 1, "value": ["50%", "51%", "52%", "53%", "54%", "55%", "56%", "57%", "58%", "59%", "59%", "60%", "60%", "60%", "60%"]}, "Q爆发伤害": {"name": "Q爆发伤害", "type": "攻击力", "plus": 1, "value": ["67.2%", "72.2%", "77.3%", "84.0%", "89.0%", "94.1%", "100.8%", "107.5%", "114.2%", "121.0%", "127.7%", "134.4%", "142.8%", "151.2%", "159.6%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["92.8%", "99.8%", "106.7%", "116.0%", "123.0%", "129.9%", "139.2%", "148.5%", "157.8%", "167.0%", "176.3%", "185.6%", "197.2%", "208.8%", "220.4%"]}}, "七七": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["37.8%", "40.8%", "43.9%", "48.3%", "51.4%", "54.9%", "59.7%", "64.5%", "69.4%", "74.6%", "79.9%", "85.2%", "90.4%", "95.7%", "101.0%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["64.3%+64.3%", "69.6%+69.6%", "74.8%+74.8%", "82.3%+82.3%", "87.5%+87.5%", "93.5%+93.5%", "101.7%+101.7%", "110.0%+110.0%", "118.2%+118.2%", "127.2%+127.2%", "136.1%+136.1%", "145.1%+145.1%", "154.1%+154.1%", "163.1%+163.1%", "172.0%+172.0%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["96%", "103%", "110%", "120%", "127%", "134%", "144%", "154%", "163%", "173%", "182%", "192%", "204%", "216%", "228%"]}, "E命中治疗量": {"name": "E命中治疗量", "type": "攻击", "plus": 1, "value": ["10.56%+67.41", "11.35%+74.15", "12.14%+81.45", "13.20%+89.32", "13.99%+97.75", "14.78%+106.73", "15.84%+116.29", "16.90%+126.40", "17.95%+137.07", "19.01%+148.31", "20.06%+160.11", "21.12%+172.47", "22.44%+185.39", "23.76%+198.87", "25.08%+212.92"]}, "E持续治疗量": {"name": "E持续治疗量", "type": "攻击", "plus": 1, "value": ["69.60%+450.55", "74.82%+495.61", "80.04%+544.43", "87.00%+597.00", "92.22%+653.33", "97.44%+713.41", "104.40%+777.25", "111.36%+844.84", "118.32%+916.18", "125.28%+991.29", "132.24%+1070.14", "139.20%+1152.76", "147.90%+1239.12", "156.60%+1329.25", "165.30%+1423.12"]}, "E寒病鬼差伤害": {"name": "E寒病鬼差伤害", "type": "攻击力", "plus": 1, "value": ["36.0%", "38.7%", "41.4%", "45.0%", "47.7%", "50.4%", "54.0%", "57.6%", "61.2%", "64.8%", "68.4%", "72.0%", "76.5%", "81.0%", "85.5%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["285%", "306%", "328%", "356%", "377%", "399%", "427%", "456%", "484%", "513%", "541%", "570%", "605%", "641%", "676%"]}, "Q伤害(融化)": {"name": "Q伤害(融化)", "type": "攻击力", "plus": 1, "value": ["285%", "306%", "328%", "356%", "377%", "399%", "427%", "456%", "484%", "513%", "541%", "570%", "605%", "641%", "676%"]}, "Q治疗量": {"name": "Q治疗量", "type": "攻击", "plus": 1, "value": ["90.0%+577.34", "96.7%+635.08", "103.5%+697.63", "112.5%+765.00", "119.2%+837.18", "126.0%+914.17", "135.0%+995.97", "144.0%+1082.58", "153.0%+1174.01", "162.0%+1270.24", "171.0%+1371.29", "180.0%+1477.15", "191.3%+1587.82", "202.5%+1703.31", "213.8%+1823.60"]}}, "重云": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["70.0%", "75.7%", "81.4%", "89.5%", "95.2%", "101.8%", "110.7%", "119.7%", "128.6%", "138.4%", "148.1%", "157.9%", "167.7%", "177.5%", "187.2%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["56.3%", "60.9%", "65.4%", "72.0%", "76.6%", "81.8%", "89.0%", "96.2%", "103.4%", "111.3%", "119.1%", "127.0%", "134.8%", "142.7%", "150.5%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["102%", "110%", "118%", "130%", "138%", "148%", "161%", "174%", "187%", "201%", "215%", "230%", "244%", "258%", "272%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "394%", "420%", "446%", "472%", "498%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["172%", "185%", "198%", "215%", "228%", "241%", "258%", "275%", "292%", "310%", "327%", "344%", "366%", "387%", "409%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "164%", "178%", "189%", "199%", "214%", "228%", "242%", "256%", "271%", "285%", "303%", "320%", "338%"]}, "Q伤害(融化)": {"name": "Q伤害(融化)", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "164%", "178%", "189%", "199%", "214%", "228%", "242%", "256%", "271%", "285%", "303%", "320%", "338%"]}}, "甘雨": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["31.7%", "34.3%", "36.9%", "40.6%", "43.2%", "46.1%", "50.2%", "54.2%", "58.3%", "62.7%", "67.8%", "73.8%", "79.7%", "85.7%", "92.2%"]}, "A霜华矢命中伤害": {"name": "A霜华矢命中伤害", "type": "攻击力", "plus": 1, "value": ["128%", "138%", "147%", "160%", "170%", "179%", "192%", "205%", "218%", "230%", "243%", "256%", "272%", "288%", "304%"]}, "A霜华矢命中伤害(融化)": {"name": "A霜华矢命中伤害(融化)", "type": "攻击力", "plus": 1, "value": ["128%", "138%", "147%", "160%", "170%", "179%", "192%", "205%", "218%", "230%", "243%", "256%", "272%", "288%", "304%"]}, "A霜华矢·霜华绽发伤害": {"name": "A霜华矢·霜华绽发伤害", "type": "攻击力", "plus": 1, "value": ["218%", "234%", "250%", "272%", "288%", "305%", "326%", "348%", "370%", "392%", "413%", "435%", "462%", "490%", "517%"]}, "A霜华矢·霜华绽发伤害(融化)": {"name": "A霜华矢·霜华绽发伤害(融化)", "type": "攻击力", "plus": 1, "value": ["218%", "234%", "250%", "272%", "288%", "305%", "326%", "348%", "370%", "392%", "413%", "435%", "462%", "490%", "517%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["132%", "142%", "152%", "165%", "175%", "185%", "198%", "211%", "224%", "238%", "251%", "264%", "281%", "297%", "313%"]}, "Q冰棱伤害": {"name": "Q冰棱伤害", "type": "攻击力", "plus": 1, "value": ["70%", "76%", "81%", "88%", "93%", "98%", "105%", "112%", "119%", "126%", "134%", "141%", "149%", "158%", "167%"]}}, "阿贝多": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["36.7%", "39.7%", "42.7%", "47.0%", "50.0%", "53.4%", "58.1%", "62.8%", "67.5%", "72.6%", "78.5%", "85.4%", "92.3%", "99.2%", "106.8%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["47.3%+60.2%", "51.2%+65.1%", "55.0%+70.0%", "60.5%+77.0%", "64.3%+81.9%", "68.8%+87.5%", "74.8%+95.2%", "80.8%+102.9%", "86.9%+110.6%", "93.5%+119.0%", "101.1%+128.6%", "110.0%+139.9%", "118.8%+151.3%", "127.7%+162.6%", "137.4%+174.9%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["130%", "140%", "150%", "163%", "173%", "183%", "196%", "209%", "222%", "235%", "248%", "261%", "277%", "293%", "310%"]}, "E刹那之花伤害": {"name": "E刹那之花伤害", "type": "防御", "plus": 1, "value": ["134%", "144%", "154%", "167%", "177%", "187%", "200%", "214%", "227%", "240%", "254%", "267%", "284%", "301%", "317%"]}, "Q爆发伤害": {"name": "Q爆发伤害", "type": "攻击力", "plus": 1, "value": ["367%", "395%", "422%", "459%", "487%", "514%", "551%", "588%", "624%", "661%", "698%", "734%", "780%", "826%", "872%"]}, "Q生灭之花伤害": {"name": "Q生灭之花伤害", "type": "攻击力", "plus": 1, "value": ["72.0%", "77.4%", "82.8%", "90.0%", "95.4%", "100.8%", "108.0%", "115.2%", "122.4%", "129.6%", "136.8%", "144.0%", "153.0%", "162.0%", "171.0%"]}}, "迪奥娜": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["36.1%", "39.1%", "42.0%", "46.2%", "49.1%", "52.5%", "57.1%", "61.7%", "66.4%", "71.4%", "77.2%", "84.0%", "90.8%", "97.5%", "105.0%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "253%", "270%", "287%", "304%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E猫爪伤害": {"name": "E猫爪伤害", "type": "攻击力", "plus": 1, "value": ["41.9%", "45.1%", "48.2%", "52.4%", "55.5%", "58.7%", "62.9%", "67.1%", "71.3%", "75.5%", "79.6%", "83.8%", "89.1%", "94.3%", "99.6%"]}, "E护盾基础吸收量": {"name": "E护盾基础吸收量", "type": "生命值", "plus": 1, "value": ["7.2%+692.81", "7.7%+762.10", "8.3%+837.16", "9.0%+918.00", "9.5%+1004.61", "10.1%+1097.00", "10.8%+1195.16", "11.5%+1299.10", "12.2%+1408.81", "13.0%+1524.29", "13.7%+1645.55", "14.4%+1772.58", "15.3%+1905.39", "16.2%+2043.97", "17.1%+2188.32"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["80%", "86%", "92%", "100%", "106%", "112%", "120%", "128%", "136%", "144%", "152%", "160%", "170%", "180%", "190%"]}, "Q领域持续伤害": {"name": "Q领域持续伤害", "type": "攻击力", "plus": 1, "value": ["52.6%", "56.6%", "60.5%", "65.8%", "69.7%", "73.7%", "79.0%", "84.2%", "89.5%", "94.8%", "100.0%", "105.3%", "111.9%", "118.4%", "125.0%"]}, "Q持续治疗量": {"name": "Q持续治疗量", "type": "生命值", "plus": 1, "value": ["5.34%+513.19", "5.74%+564.52", "6.14%+620.12", "6.67%+680.00", "7.07%+744.16", "7.47%+812.59", "8.00%+885.30", "8.54%+962.29", "9.07%+1043.56", "9.60%+1129.10", "10.14%+1218.92", "10.67%+1313.02", "11.34%+1411.40", "12.01%+1514.05", "12.67%+1620.98"]}}, "莫娜": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["37.6%", "40.4%", "43.2%", "47.0%", "49.8%", "52.6%", "56.4%", "60.2%", "63.9%", "67.7%", "71.4%", "75.2%", "79.9%", "84.6%", "89.3%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["150%", "161%", "172%", "187%", "198%", "210%", "225%", "240%", "255%", "269%", "285%", "305%", "326%", "346%", "367%"]}, "A重击伤害(蒸发)": {"name": "A重击伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["150%", "161%", "172%", "187%", "198%", "210%", "225%", "240%", "255%", "269%", "285%", "305%", "326%", "346%", "367%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E持续伤害": {"name": "E持续伤害", "type": "攻击力", "plus": 1, "value": ["32.0%", "34.4%", "36.8%", "40.0%", "42.4%", "44.8%", "48.0%", "51.2%", "54.4%", "57.6%", "60.8%", "64.0%", "68.0%", "72.0%", "76.0%"]}, "E爆裂伤害": {"name": "E爆裂伤害", "type": "攻击力", "plus": 1, "value": ["133%", "143%", "153%", "166%", "176%", "186%", "199%", "212%", "226%", "239%", "252%", "266%", "282%", "299%", "315%"]}, "Q泡影破裂伤害": {"name": "Q泡影破裂伤害", "type": "攻击力", "plus": 1, "value": ["442%", "476%", "509%", "553%", "586%", "619%", "664%", "708%", "752%", "796%", "841%", "885%", "940%", "995%", "1051%"]}, "Q泡影破裂伤害(蒸发)": {"name": "Q泡影破裂伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["442%", "476%", "509%", "553%", "586%", "619%", "664%", "708%", "752%", "796%", "841%", "885%", "940%", "995%", "1051%"]}, "Q伤害加成": {"name": "Q伤害加成", "type": "攻击力", "plus": 1, "value": ["42%", "44%", "46%", "48%", "50%", "52%", "54%", "56%", "58%", "60%", "60%", "60%", "60%", "60%", "60%"]}}, "刻晴": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["41.0%", "44.4%", "47.7%", "52.5%", "55.8%", "59.6%", "64.9%", "70.1%", "75.4%", "81.1%", "86.8%", "92.5%", "98.3%", "104.0%", "109.7%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["76.8%+86.0%", "83.0%+93.0%", "89.3%+100.0%", "98.2%+110.0%", "104.5%+117.0%", "111.6%+125.0%", "121.4%+136.0%", "131.3%+147.0%", "141.1%+158.0%", "151.8%+170.0%", "162.5%+182.0%", "173.2%+194.0%", "184.0%+206.0%", "194.7%+218.0%", "205.4%+230.0%"]}, "A重击伤害(超激化)": {"name": "A重击伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["76.8%+86.0%", "83.0%+93.0%", "89.3%+100.0%", "98.2%+110.0%", "104.5%+117.0%", "111.6%+125.0%", "121.4%+136.0%", "131.3%+147.0%", "141.1%+158.0%", "151.8%+170.0%", "162.5%+182.0%", "173.2%+194.0%", "184.0%+206.0%", "194.7%+218.0%", "205.4%+230.0%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E雷楔伤害": {"name": "E雷楔伤害", "type": "攻击力", "plus": 1, "value": ["50.4%", "54.2%", "58.0%", "63.0%", "66.8%", "70.6%", "75.6%", "80.6%", "85.7%", "90.7%", "95.8%", "100.8%", "107.1%", "113.4%", "119.7%"]}, "E雷楔伤害(超激化)": {"name": "E雷楔伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["50.4%", "54.2%", "58.0%", "63.0%", "66.8%", "70.6%", "75.6%", "80.6%", "85.7%", "90.7%", "95.8%", "100.8%", "107.1%", "113.4%", "119.7%"]}, "E斩击伤害": {"name": "E斩击伤害", "type": "攻击力", "plus": 1, "value": ["168%", "181%", "193%", "210%", "223%", "235%", "252%", "269%", "286%", "302%", "319%", "336%", "357%", "378%", "399%"]}, "E斩击伤害(超激化)": {"name": "E斩击伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["168%", "181%", "193%", "210%", "223%", "235%", "252%", "269%", "286%", "302%", "319%", "336%", "357%", "378%", "399%"]}, "E雷暴连斩伤害": {"name": "E雷暴连斩伤害", "type": "攻击力", "plus": 2, "value": ["84.0%", "90.3%", "96.6%", "105.0%", "111.3%", "117.6%", "126.0%", "134.4%", "142.8%", "151.2%", "159.6%", "168.0%", "178.5%", "189.0%", "199.5%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["88.0%", "94.6%", "101.2%", "110.0%", "116.6%", "123.2%", "132.0%", "140.8%", "149.6%", "158.4%", "167.2%", "176.0%", "187.0%", "198.0%", "209.0%"]}, "Q伤害(超激化)": {"name": "Q伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["88.0%", "94.6%", "101.2%", "110.0%", "116.6%", "123.2%", "132.0%", "140.8%", "149.6%", "158.4%", "167.2%", "176.0%", "187.0%", "198.0%", "209.0%"]}, "Q连斩伤害": {"name": "Q连斩伤害", "type": "攻击力", "plus": 8, "value": ["24.0%", "25.8%", "27.6%", "30.0%", "31.8%", "33.6%", "36.0%", "38.4%", "40.8%", "43.2%", "45.6%", "48.0%", "51.0%", "54.0%", "57.0%"]}, "Q连斩伤害(超激化*2)": {"name": "Q连斩伤害(超激化*2)", "type": "攻击力", "plus": 8, "value": ["24.0%", "25.8%", "27.6%", "30.0%", "31.8%", "33.6%", "36.0%", "38.4%", "40.8%", "43.2%", "45.6%", "48.0%", "51.0%", "54.0%", "57.0%"]}, "Q最后一击伤害": {"name": "Q最后一击伤害", "type": "攻击力", "plus": 1, "value": ["189%", "203%", "217%", "236%", "250%", "264%", "283%", "302%", "321%", "340%", "359%", "378%", "401%", "425%", "448%"]}, "Q最后一击伤害(超激化)": {"name": "Q最后一击伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["189%", "203%", "217%", "236%", "250%", "264%", "283%", "302%", "321%", "340%", "359%", "378%", "401%", "425%", "448%"]}}, "砂糖": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["33.5%", "36.0%", "38.5%", "41.8%", "44.3%", "46.8%", "50.2%", "53.5%", "56.9%", "60.2%", "63.6%", "66.9%", "71.1%", "75.3%", "79.5%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["120%", "129%", "138%", "150%", "159%", "168%", "180%", "192%", "204%", "216%", "228%", "240%", "255%", "270%", "285%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["211%", "227%", "243%", "264%", "280%", "296%", "317%", "338%", "359%", "380%", "401%", "422%", "449%", "475%", "502%"]}, "Q持续伤害": {"name": "Q持续伤害", "type": "攻击力", "plus": 1, "value": ["148%", "159%", "170%", "185%", "196%", "207%", "222%", "237%", "252%", "266%", "281%", "296%", "314%", "333%", "352%"]}, "Q附加元素伤害": {"name": "Q附加元素伤害", "type": "攻击力", "plus": 1, "value": ["44.0%", "47.3%", "50.6%", "55.0%", "58.3%", "61.6%", "66.0%", "70.4%", "74.8%", "79.2%", "83.6%", "88.0%", "93.5%", "99.0%", "104.5%"]}}, "辛焱": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["76.5%", "82.8%", "89.0%", "97.9%", "104.1%", "111.2%", "121.0%", "130.8%", "140.6%", "151.3%", "162.0%", "172.7%", "183.3%", "194.0%", "204.7%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["62.5%", "67.6%", "72.7%", "80.0%", "85.1%", "90.9%", "98.9%", "106.9%", "114.9%", "123.6%", "132.4%", "141.1%", "149.8%", "158.5%", "167.3%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["113%", "122%", "132%", "145%", "154%", "164%", "179%", "193%", "208%", "224%", "239%", "255%", "271%", "287%", "302%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "394%", "420%", "446%", "472%", "498%"]}, "E挥舞伤害": {"name": "E挥舞伤害", "type": "攻击力", "plus": 1, "value": ["170%", "182%", "195%", "212%", "225%", "237%", "254%", "271%", "288%", "305%", "322%", "339%", "360%", "382%", "403%"]}, "E一级护盾吸收量": {"name": "E一级护盾吸收量", "type": "防御", "plus": 1, "value": ["104.0%+500.55", "111.8%+550.61", "119.6%+604.85", "130.1%+663.26", "137.9%+725.83", "145.7%+792.58", "156.1%+863.50", "166.5%+938.60", "176.9%+1017.86", "187.3%+1101.30", "197.7%+1188.91", "208.1%+1280.69", "221.1%+1376.64", "234.1%+1476.77", "247.1%+1581.06"]}, "E二级护盾吸收量": {"name": "E二级护盾吸收量", "type": "防御", "plus": 1, "value": ["122.4%+588.89", "131.6%+647.78", "140.8%+711.59", "153.0%+780.30", "162.2%+853.92", "171.4%+932.45", "183.6%+1015.89", "195.8%+1104.23", "208.1%+1197.49", "220.3%+1295.65", "232.6%+1398.72", "244.8%+1506.69", "260.1%+1619.58", "275.4%+1737.37", "290.7%+1860.07"]}, "E三级护盾吸收量": {"name": "E三级护盾吸收量", "type": "防御", "plus": 1, "value": ["144.0%+692.81", "154.8%+762.10", "165.6%+837.16", "180.0%+918.00", "190.8%+1004.61", "201.6%+1097.00", "216.0%+1195.16", "230.4%+1299.10", "244.8%+1408.81", "259.2%+1524.29", "273.6%+1645.55", "288.0%+1772.58", "306.0%+1905.39", "324.0%+2043.97", "342.0%+2188.32"]}, "E持续伤害": {"name": "E持续伤害", "type": "攻击力", "plus": 1, "value": ["33.6%", "36.1%", "38.6%", "42.0%", "44.5%", "47.0%", "50.4%", "53.8%", "57.1%", "60.5%", "63.8%", "67.2%", "71.4%", "75.6%", "79.8%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["341%", "366%", "392%", "426%", "452%", "477%", "511%", "545%", "579%", "613%", "648%", "682%", "724%", "767%", "809%"]}, "Q火元素持续伤害": {"name": "Q火元素持续伤害", "type": "攻击力", "plus": 1, "value": ["40%", "43%", "46%", "50%", "53%", "56%", "60%", "64%", "68%", "72%", "76%", "80%", "85%", "90%", "95%"]}}, "罗莎莉亚": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["52.5%", "56.7%", "61.0%", "67.1%", "71.4%", "76.2%", "83.0%", "89.7%", "96.4%", "103.7%", "111.0%", "118.3%", "125.7%", "133.0%", "140.3%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["137%", "148%", "159%", "175%", "186%", "199%", "216%", "234%", "251%", "270%", "289%", "308%", "328%", "347%", "366%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["58%+136%", "63%+146%", "67%+156%", "73%+170%", "77%+180%", "82%+190%", "88%+204%", "93%+218%", "99%+231%", "105%+245%", "111%+258%", "117%+272%", "124%+289%", "131%+306%", "139%+323%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["104%+152%", "112%+163%", "120%+175%", "130%+190%", "138%+201%", "146%+213%", "156%+228%", "166%+243%", "177%+258%", "187%+274%", "198%+289%", "208%+304%", "221%+323%", "234%+342%", "247%+361%"]}, "Q冰枪持续伤害": {"name": "Q冰枪持续伤害", "type": "攻击力", "plus": 1, "value": ["132%", "142%", "152%", "165%", "175%", "185%", "198%", "211%", "224%", "238%", "251%", "264%", "281%", "297%", "313%"]}}, "胡桃": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["46.9%", "50.1%", "53.3%", "57.5%", "60.7%", "64.5%", "69.3%", "74.1%", "78.9%", "83.6%", "88.4%", "93.2%", "98.0%", "102.8%", "107.6%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["136.0%", "145.2%", "154.5%", "166.9%", "176.1%", "186.9%", "200.9%", "214.8%", "228.7%", "242.6%", "256.5%", "270.4%", "284.3%", "298.2%", "312.1%"]}, "A重击伤害(蒸发)": {"name": "A重击伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["136.0%", "145.2%", "154.5%", "166.9%", "176.1%", "186.9%", "200.9%", "214.8%", "228.7%", "242.6%", "256.5%", "270.4%", "284.3%", "298.2%", "312.1%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["163%", "175%", "186%", "201%", "212%", "225%", "241%", "258%", "275%", "292%", "308%", "325%", "342%", "358%", "375%"]}, "E血梅香伤害": {"name": "E血梅香伤害", "type": "攻击力", "plus": 1, "value": ["64%", "69%", "74%", "80%", "85%", "90%", "96%", "102%", "109%", "115%", "122%", "128%", "136%", "144%", "152%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["303%", "321%", "340%", "363%", "381%", "400%", "423%", "447%", "470%", "494%", "518%", "541%", "565%", "588%", "612%"]}, "Q低血量时伤害": {"name": "Q低血量时伤害", "type": "攻击力", "plus": 1, "value": ["379%", "402%", "424%", "454%", "477%", "499%", "529%", "558%", "588%", "617%", "647%", "676%", "706%", "735%", "765%"]}, "Q低血量时伤害(蒸发)": {"name": "Q低血量时伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["379%", "402%", "424%", "454%", "477%", "499%", "529%", "558%", "588%", "617%", "647%", "676%", "706%", "735%", "765%"]}, "Q治疗量": {"name": "Q治疗量", "type": "生命值", "plus": 1, "value": ["6.26%", "6.64%", "7.01%", "7.50%", "7.87%", "8.25%", "8.74%", "9.22%", "9.71%", "10.20%", "10.69%", "11.17%", "11.66%", "12.15%", "12.64%"]}, "Q低血量时治疗量": {"name": "Q低血量时治疗量", "type": "生命值", "plus": 1, "value": ["8.35%", "8.85%", "9.35%", "10.00%", "10.50%", "11.00%", "11.65%", "12.30%", "12.95%", "13.60%", "14.25%", "14.90%", "15.55%", "16.20%", "16.85%"]}}, "枫原万叶": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["45.0%", "48.6%", "52.3%", "57.5%", "61.2%", "65.4%", "71.1%", "76.9%", "82.6%", "88.9%", "96.1%", "104.6%", "113.0%", "121.5%", "130.7%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["43.0%+74.6%", "46.5%+80.7%", "50.0%+86.8%", "55.0%+95.5%", "58.5%+101.6%", "62.5%+108.5%", "68.0%+118.0%", "73.5%+127.6%", "79.0%+137.1%", "85.0%+147.6%", "91.9%+159.5%", "100.0%+173.5%", "108.0%+187.6%", "116.1%+201.6%", "125.0%+216.9%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["204%", "221%", "238%", "261%", "278%", "297%", "323%", "349%", "375%", "404%", "433%", "461%", "490%", "518%", "547%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["192%", "206%", "221%", "240%", "254%", "269%", "288%", "307%", "326%", "346%", "365%", "384%", "408%", "432%", "456%"]}, "E长按伤害": {"name": "E长按伤害", "type": "攻击力", "plus": 1, "value": ["261%", "280%", "300%", "326%", "346%", "365%", "391%", "417%", "443%", "469%", "496%", "522%", "554%", "587%", "619%"]}, "Q斩击伤害": {"name": "Q斩击伤害", "type": "攻击力", "plus": 1, "value": ["262%", "282%", "302%", "328%", "348%", "367%", "394%", "420%", "446%", "472%", "499%", "525%", "558%", "590%", "623%"]}, "Q持续伤害": {"name": "Q持续伤害", "type": "攻击力", "plus": 1, "value": ["120%", "129%", "138%", "150%", "159%", "168%", "180%", "192%", "204%", "216%", "228%", "240%", "255%", "270%", "285%"]}, "Q附加元素伤害": {"name": "Q附加元素伤害", "type": "攻击力", "plus": 1, "value": ["36%", "39%", "41%", "45%", "48%", "50%", "54%", "58%", "61%", "65%", "68%", "72%", "76%", "81%", "86%"]}}, "烟绯": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["58.3%", "62.7%", "67.1%", "72.9%", "77.3%", "81.7%", "87.5%", "93.3%", "99.2%", "105.0%", "110.8%", "116.7%", "124.0%", "131.3%", "138.6%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["168%", "178%", "188%", "201%", "211%", "221%", "234%", "247%", "260%", "273%", "286%", "299%", "312%", "325%", "338%"]}, "A重击伤害(蒸发)": {"name": "A重击伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["168%", "178%", "188%", "201%", "211%", "221%", "234%", "247%", "260%", "273%", "286%", "299%", "312%", "325%", "338%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["170%", "182%", "195%", "212%", "225%", "237%", "254%", "271%", "288%", "305%", "322%", "339%", "360%", "382%", "403%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["182%", "196%", "210%", "228%", "242%", "255%", "274%", "292%", "310%", "328%", "347%", "365%", "388%", "410%", "433%"]}}, "宵宫": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 2, "value": ["35.6%", "38.1%", "40.5%", "43.7%", "46.2%", "49.0%", "52.6%", "56.3%", "59.9%", "63.6%", "67.2%", "70.9%", "74.5%", "78.2%", "81.8%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A焰硝矢伤害": {"name": "A焰硝矢伤害", "type": "攻击力", "plus": 1, "value": ["16%", "18%", "19%", "20%", "22%", "23%", "25%", "26%", "28%", "30%", "31%", "33%", "35%", "37%", "39%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["127%", "137%", "146%", "159%", "169%", "178%", "191%", "204%", "216%", "229%", "242%", "254%", "270%", "286%", "302%"]}, "Q琉金火光爆炸伤害": {"name": "Q琉金火光爆炸伤害", "type": "攻击力", "plus": 1, "value": ["122%", "131%", "140%", "152%", "162%", "171%", "183%", "195%", "207%", "220%", "232%", "244%", "259%", "274%", "290%"]}}, "托马": {"A元素反应(烈绽放)": {"name": "A元素反应(烈绽放)", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.4%", "48.0%", "51.6%", "56.8%", "60.4%", "64.5%", "70.2%", "75.9%", "81.6%", "87.8%", "93.9%", "100.1%", "106.3%", "112.5%", "118.7%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["113%", "122%", "131%", "144%", "153%", "164%", "178%", "193%", "207%", "223%", "239%", "254%", "270%", "286%", "302%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["146%", "157%", "168%", "183%", "194%", "205%", "220%", "234%", "249%", "264%", "278%", "293%", "311%", "329%", "348%"]}, "E护盾吸收量": {"name": "E护盾吸收量", "type": "生命值", "plus": 1, "value": ["7.2%+693.33", "7.7%+762.68", "8.3%+837.80", "9.0%+918.70", "9.5%+1005.38", "10.1%+1097.84", "10.8%+1196.07", "11.5%+1300.09", "12.2%+1409.88", "13.0%+1525.45", "13.7%+1646.80", "14.4%+1773.93", "15.3%+1906.84", "16.2%+2045.53", "17.1%+2189.99"]}, "E护盾吸收量上限": {"name": "E护盾吸收量上限", "type": "生命值", "plus": 1, "value": ["19.6%+1887.42", "21.1%+2076.19", "22.5%+2280.69", "24.5%+2500.92", "26.0%+2736.88", "27.4%+2988.57", "29.4%+3255.99", "31.4%+3539.14", "33.3%+3838.02", "35.3%+4152.64", "37.2%+4482.98", "39.2%+4829.06", "41.7%+5190.86", "44.1%+5568.40", "46.5%+5961.67"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["88%", "95%", "101%", "110%", "117%", "123%", "132%", "141%", "150%", "158%", "167%", "176%", "187%", "198%", "209%"]}, "Q炽火崩破伤害": {"name": "Q炽火崩破伤害", "type": "攻击力", "plus": 1, "value": ["58%", "62%", "67%", "73%", "77%", "81%", "87%", "93%", "99%", "104%", "110%", "116%", "123%", "130%", "138%"]}, "Q护盾吸收量": {"name": "Q护盾吸收量", "type": "生命值", "plus": 1, "value": ["1.1%+110.03", "1.2%+121.04", "1.3%+132.96", "1.4%+145.80", "1.5%+159.56", "1.6%+174.23", "1.7%+189.82", "1.8%+206.33", "1.9%+223.75", "2.1%+242.09", "2.2%+261.35", "2.3%+281.53", "2.4%+302.62", "2.6%+324.63", "2.7%+347.56"]}}, "优菈": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["89.7%", "97.0%", "104.3%", "114.8%", "122.1%", "130.4%", "141.9%", "153.4%", "164.9%", "177.4%", "191.7%", "208.6%", "225.5%", "242.3%", "260.7%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["68.8%", "74.4%", "80.0%", "88.0%", "93.6%", "100.0%", "108.8%", "117.6%", "126.4%", "136.0%", "147.0%", "159.9%", "172.9%", "185.8%", "199.9%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["124%", "135%", "145%", "159%", "169%", "181%", "197%", "213%", "229%", "246%", "266%", "289%", "313%", "336%", "361%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "398%", "433%", "468%", "503%", "541%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["146%", "157%", "168%", "183%", "194%", "205%", "220%", "234%", "249%", "264%", "278%", "293%", "311%", "329%", "348%"]}, "E长按伤害": {"name": "E长按伤害", "type": "攻击力", "plus": 1, "value": ["246%", "264%", "282%", "307%", "325%", "344%", "368%", "393%", "418%", "442%", "467%", "491%", "522%", "553%", "583%"]}, "E冰涡之剑伤害": {"name": "E冰涡之剑伤害", "type": "攻击力", "plus": 1, "value": ["96%", "103%", "110%", "120%", "127%", "134%", "144%", "154%", "163%", "173%", "182%", "192%", "204%", "216%", "228%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["246%", "264%", "282%", "307%", "325%", "344%", "368%", "393%", "418%", "442%", "467%", "491%", "522%", "553%", "583%"]}, "Q光降之剑基础伤害": {"name": "Q光降之剑基础伤害", "type": "攻击力", "plus": 1, "value": ["367.0%", "396.9%", "426.8%", "469.5%", "499.4%", "533.5%", "580.4%", "627.4%", "674.3%", "725.6%", "784.2%", "853.3%", "922.3%", "991.3%", "1066.6%"]}, "Q光降之剑基础伤害(13层)": {"name": "Q光降之剑基础伤害(13层)", "type": "攻击力", "plus": 1, "value": ["367.0%", "396.9%", "426.8%", "469.5%", "499.4%", "533.5%", "580.4%", "627.4%", "674.3%", "725.6%", "784.2%", "853.3%", "922.3%", "991.3%", "1066.6%"]}, "Q光降之剑基础伤害(24层)": {"name": "Q光降之剑基础伤害(24层)", "type": "攻击力", "plus": 1, "value": ["367.0%", "396.9%", "426.8%", "469.5%", "499.4%", "533.5%", "580.4%", "627.4%", "674.3%", "725.6%", "784.2%", "853.3%", "922.3%", "991.3%", "1066.6%"]}, "Q每层能量伤害": {"name": "Q每层能量伤害", "type": "攻击力", "plus": 1, "value": ["75.0%", "81.1%", "87.2%", "95.9%", "102.0%", "109.0%", "118.6%", "128.2%", "137.8%", "148.2%", "160.2%", "174.3%", "188.4%", "202.5%", "217.9%"]}}, "雷电将军": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["39.6%", "42.9%", "46.1%", "50.7%", "53.9%", "57.6%", "62.7%", "67.8%", "72.8%", "78.4%", "84.7%", "92.2%", "99.6%", "107.1%", "115.2%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["99.6%", "107.7%", "115.8%", "127.4%", "135.5%", "144.7%", "157.5%", "170.2%", "183.0%", "196.9%", "212.8%", "231.5%", "250.2%", "269.0%", "289.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["117.2%", "126.0%", "134.8%", "146.5%", "155.3%", "164.1%", "175.8%", "187.5%", "199.2%", "211.0%", "222.7%", "234.4%", "249.0%", "263.7%", "278.3%"]}, "E协同攻击伤害": {"name": "E协同攻击伤害", "type": "攻击力", "plus": 1, "value": ["42.0%", "45.1%", "48.3%", "52.5%", "55.7%", "58.8%", "63.0%", "67.2%", "71.4%", "75.6%", "79.8%", "84.0%", "89.2%", "94.5%", "99.8%"]}, "E协同攻击伤害(超激化)": {"name": "E协同攻击伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["42.0%", "45.1%", "48.3%", "52.5%", "55.7%", "58.8%", "63.0%", "67.2%", "71.4%", "75.6%", "79.8%", "84.0%", "89.2%", "94.5%", "99.8%"]}, "Q梦想一刀基础伤害": {"name": "Q梦想一刀基础伤害", "type": "攻击力", "plus": 1, "value": ["401%", "431%", "461%", "501%", "531%", "561%", "601%", "641%", "681%", "721%", "762%", "802%", "852%", "902%", "952%"]}, "Q梦想一刀基础伤害(满愿力)": {"name": "Q梦想一刀基础伤害(满愿力)", "type": "攻击力", "plus": 1, "value": ["401%", "431%", "461%", "501%", "531%", "561%", "601%", "641%", "681%", "721%", "762%", "802%", "852%", "902%", "952%"]}, "Q一段伤害": {"name": "Q一段伤害", "type": "攻击力", "plus": 1, "value": ["44.7%", "47.8%", "50.8%", "54.9%", "58.0%", "61.5%", "66.1%", "70.7%", "75.2%", "79.8%", "84.4%", "89.0%", "93.5%", "98.1%", "102.7%"]}, "Q一段伤害(满愿力)": {"name": "Q一段伤害(满愿力)", "type": "攻击力", "plus": 1, "value": ["44.7%", "47.8%", "50.8%", "54.9%", "58.0%", "61.5%", "66.1%", "70.7%", "75.2%", "79.8%", "84.4%", "89.0%", "93.5%", "98.1%", "102.7%"]}, "Q重击伤害": {"name": "Q重击伤害", "type": "攻击力", "plus": 1, "value": ["61.6%+74.4%", "65.8%+79.4%", "70.0%+84.5%", "75.6%+91.3%", "79.8%+96.3%", "84.7%+102.2%", "91.0%+109.9%", "97.3%+117.5%", "103.6%+125.1%", "109.9%+132.7%", "116.2%+140.3%", "122.5%+147.9%", "128.8%+155.5%", "135.1%+163.1%", "141.4%+170.7%"]}, "Q重击伤害(满愿力)": {"name": "Q重击伤害(满愿力)", "type": "攻击力", "plus": 1, "value": ["61.6%+74.4%", "65.8%+79.4%", "70.0%+84.5%", "75.6%+91.3%", "79.8%+96.3%", "84.7%+102.2%", "91.0%+109.9%", "97.3%+117.5%", "103.6%+125.1%", "109.9%+132.7%", "116.2%+140.3%", "122.5%+147.9%", "128.8%+155.5%", "135.1%+163.1%", "141.4%+170.7%"]}, "Q高空下落伤害": {"name": "Q高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}}, "早柚": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["72.2%", "78.1%", "84.0%", "92.4%", "98.3%", "105.0%", "114.2%", "123.5%", "132.7%", "142.8%", "154.3%", "167.9%", "181.5%", "195.1%", "209.9%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["62.5%", "67.6%", "72.7%", "80.0%", "85.1%", "90.9%", "98.9%", "106.9%", "114.9%", "123.6%", "133.6%", "145.4%", "157.2%", "168.9%", "181.7%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["113%", "122%", "132%", "145%", "154%", "164%", "179%", "193%", "208%", "224%", "242%", "263%", "284%", "305%", "329%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "394%", "420%", "446%", "472%", "498%"]}, "E风风轮伤害": {"name": "E风风轮伤害", "type": "攻击力", "plus": 1, "value": ["36.0%", "38.7%", "41.4%", "45.0%", "47.7%", "50.4%", "54.0%", "57.6%", "61.2%", "64.8%", "68.4%", "72.0%", "76.5%", "81.0%", "85.5%"]}, "E风风轮舞踢点按伤害": {"name": "E风风轮舞踢点按伤害", "type": "攻击力", "plus": 1, "value": ["158.4%", "170.3%", "182.2%", "198.0%", "209.9%", "221.8%", "237.6%", "253.4%", "269.3%", "285.1%", "301.0%", "316.8%", "336.6%", "356.4%", "376.2%"]}, "E风风轮舞踢长按伤害": {"name": "E风风轮舞踢长按伤害", "type": "攻击力", "plus": 1, "value": ["217.6%", "233.9%", "250.2%", "272.0%", "288.3%", "304.6%", "326.4%", "348.2%", "369.9%", "391.7%", "413.4%", "435.2%", "462.4%", "489.6%", "516.8%"]}, "E风风轮附带元素伤害": {"name": "E风风轮附带元素伤害", "type": "攻击力", "plus": 1, "value": ["16.8%", "18.1%", "19.3%", "21.0%", "22.3%", "23.5%", "25.2%", "26.9%", "28.6%", "30.2%", "31.9%", "33.6%", "35.7%", "37.8%", "39.9%"]}, "E风风轮舞踢长按附带元素伤害": {"name": "E风风轮舞踢长按附带元素伤害", "type": "攻击力", "plus": 1, "value": ["76.2%", "81.9%", "87.6%", "95.2%", "100.9%", "106.6%", "114.2%", "121.9%", "129.5%", "137.1%", "144.7%", "152.3%", "161.8%", "171.4%", "180.9%"]}, "Q发动伤害": {"name": "Q发动伤害", "type": "攻击力", "plus": 1, "value": ["117%", "126%", "134%", "146%", "155%", "164%", "175%", "187%", "199%", "210%", "222%", "234%", "248%", "263%", "277%"]}, "Q发动治疗量": {"name": "Q发动治疗量", "type": "攻击", "plus": 1, "value": ["92.2%+577.34", "99.1%+635.08", "106.0%+697.63", "115.2%+765.00", "122.1%+837.18", "129.0%+914.17", "138.2%+995.97", "147.5%+1082.58", "156.7%+1174.01", "165.9%+1270.24", "175.1%+1371.29", "184.3%+1477.15", "195.8%+1587.82", "207.4%+1703.31", "218.9%+1823.60"]}, "Q不倒貉貉伤害": {"name": "Q不倒貉貉伤害", "type": "攻击力", "plus": 1, "value": ["52%", "56%", "60%", "65%", "69%", "73%", "78%", "83%", "88%", "94%", "99%", "104%", "111%", "117%", "124%"]}, "Q不倒貉貉治疗量": {"name": "Q不倒貉貉治疗量", "type": "攻击", "plus": 1, "value": ["79.9%+500.36", "85.9%+550.40", "91.9%+604.62", "99.8%+663.00", "105.8%+725.55", "111.8%+792.28", "119.8%+863.17", "127.8%+938.24", "135.8%+1017.47", "143.8%+1100.88", "151.8%+1188.45", "159.7%+1280.20", "169.7%+1376.11", "179.7%+1476.20", "189.7%+1580.45"]}}, "珊瑚宫心海": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["68.4%", "73.5%", "78.6%", "85.5%", "90.6%", "95.7%", "102.6%", "109.4%", "116.2%", "123.1%", "129.9%", "136.8%", "145.3%", "153.8%", "162.4%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["148%", "159%", "171%", "185%", "197%", "208%", "222%", "237%", "252%", "267%", "282%", "297%", "315%", "334%", "352%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E治疗量": {"name": "E治疗量", "type": "生命值", "plus": 1, "value": ["4.4%+423.71", "4.7%+466.08", "5.1%+511.99", "5.5%+561.43", "5.8%+614.40", "6.2%+670.90", "6.6%+730.94", "7.0%+794.50", "7.5%+861.60", "7.9%+932.22", "8.4%+1006.38", "8.8%+1084.07", "9.4%+1165.30", "9.9%+1250.05", "10.5%+1338.33"]}, "E波纹伤害": {"name": "E波纹伤害", "type": "攻击力", "plus": 1, "value": ["109.2%", "117.4%", "125.6%", "136.5%", "144.7%", "152.9%", "163.8%", "174.7%", "185.6%", "196.5%", "207.5%", "218.4%", "232.0%", "245.7%", "259.3%"]}, "Q伤害": {"name": "Q伤害", "type": "生命值", "plus": 1, "value": ["10.4%", "11.2%", "12.0%", "13.0%", "13.8%", "14.6%", "15.6%", "16.7%", "17.7%", "18.7%", "19.8%", "20.8%", "22.1%", "23.4%", "24.7%"]}, "Q命中治疗量": {"name": "Q命中治疗量", "type": "生命值", "plus": 1, "value": ["0.81%+77.04", "0.87%+84.74", "0.93%+93.09", "1.01%+102.08", "1.07%+111.71", "1.13%+121.98", "1.21%+132.90", "1.29%+144.45", "1.37%+156.65", "1.45%+169.50", "1.54%+182.98", "1.62%+197.10", "1.72%+211.87", "1.82%+227.28", "1.92%+243.33"]}}, "五郎": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["37.8%", "40.8%", "43.9%", "48.3%", "51.4%", "54.9%", "59.7%", "64.5%", "69.4%", "74.6%", "79.9%", "85.2%", "90.4%", "95.7%", "101.0%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["107.2%", "115.2%", "123.3%", "134.0%", "142.0%", "150.1%", "160.8%", "171.5%", "182.2%", "193.0%", "203.7%", "214.4%", "227.8%", "241.2%", "254.6%"]}, "E岩元素伤害加成": {"name": "E岩元素伤害加成", "type": "攻击力", "plus": 1, "value": ["15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%", "15%"]}, "Q伤害": {"name": "Q伤害", "type": "防御", "plus": 1, "value": ["98%", "106%", "113%", "123%", "130%", "138%", "147%", "157%", "167%", "177%", "187%", "196%", "209%", "221%", "233%"]}, "Q岩晶崩破伤害": {"name": "Q岩晶崩破伤害", "type": "防御", "plus": 1, "value": ["61%", "66%", "70%", "77%", "81%", "86%", "92%", "98%", "104%", "110%", "116%", "123%", "130%", "138%", "146%"]}}, "九条裟罗": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["36.9%", "39.9%", "42.9%", "47.2%", "50.2%", "53.6%", "58.3%", "63.1%", "67.8%", "72.9%", "78.1%", "83.2%", "88.4%", "93.5%", "98.7%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E天狗咒雷·伏 伤害": {"name": "E天狗咒雷·伏 伤害", "type": "攻击力", "plus": 1, "value": ["125.8%", "135.2%", "144.6%", "157.2%", "166.6%", "176.1%", "188.6%", "201.2%", "213.8%", "226.4%", "238.9%", "251.5%", "267.2%", "283.0%", "298.7%"]}, "Q天狗咒雷·金刚坏 伤害": {"name": "Q天狗咒雷·金刚坏 伤害", "type": "攻击力", "plus": 1, "value": ["409.6%", "440.3%", "471.0%", "512.0%", "542.7%", "573.4%", "614.4%", "655.4%", "696.3%", "737.3%", "778.2%", "819.2%", "870.4%", "921.6%", "972.8%"]}, "Q天狗咒雷·雷砾 伤害": {"name": "Q天狗咒雷·雷砾 伤害", "type": "攻击力", "plus": 1, "value": ["34.1%", "36.7%", "39.2%", "42.6%", "45.2%", "47.8%", "51.2%", "54.6%", "58.0%", "61.4%", "64.8%", "68.2%", "72.5%", "76.8%", "81.0%"]}}, "荒泷一斗": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["79.2%", "85.7%", "92.1%", "101.3%", "107.8%", "115.2%", "125.3%", "135.4%", "145.6%", "156.6%", "169.3%", "184.2%", "199.1%", "214.0%", "230.2%"]}, "A荒泷逆袈裟连斩伤害": {"name": "A荒泷逆袈裟连斩伤害", "type": "攻击力", "plus": 1, "value": ["91.2%", "98.6%", "106.0%", "116.6%", "124.0%", "132.5%", "144.2%", "155.8%", "167.5%", "180.2%", "194.8%", "211.9%", "229.1%", "246.2%", "264.9%"]}, "A荒泷逆袈裟终结伤害": {"name": "A荒泷逆袈裟终结伤害", "type": "攻击力", "plus": 1, "value": ["190.9%", "206.5%", "222.0%", "244.2%", "259.7%", "277.5%", "301.9%", "326.3%", "350.8%", "377.4%", "407.9%", "443.8%", "479.7%", "515.6%", "554.8%"]}, "A左一文字斩伤害": {"name": "A左一文字斩伤害", "type": "攻击力", "plus": 1, "value": ["90.5%", "97.8%", "105.2%", "115.7%", "123.1%", "131.5%", "143.1%", "154.6%", "166.2%", "178.8%", "193.3%", "210.3%", "227.3%", "244.3%", "262.9%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["204%", "221%", "238%", "261%", "278%", "297%", "323%", "349%", "375%", "404%", "433%", "461%", "490%", "518%", "547%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["307%", "330%", "353%", "384%", "407%", "430%", "461%", "492%", "522%", "553%", "584%", "614%", "653%", "691%", "730%"]}}, "八重神子": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["39.7%", "42.6%", "45.6%", "49.6%", "52.5%", "55.5%", "59.5%", "63.5%", "67.4%", "71.4%", "75.4%", "79.3%", "84.3%", "89.2%", "94.2%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["142.9%", "153.6%", "164.3%", "178.6%", "189.3%", "200.1%", "214.3%", "228.6%", "242.9%", "257.2%", "271.5%", "285.8%", "303.7%", "321.5%", "339.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E杀生樱伤害·壹阶": {"name": "E杀生樱伤害·壹阶", "type": "攻击力", "plus": 1, "value": ["60.7%", "65.2%", "69.8%", "75.8%", "80.4%", "84.9%", "91.0%", "97.1%", "103.1%", "109.2%", "115.3%", "121.3%", "128.9%", "136.5%", "144.1%"]}, "E杀生樱伤害·贰阶": {"name": "E杀生樱伤害·贰阶", "type": "攻击力", "plus": 1, "value": ["75.8%", "81.5%", "87.2%", "94.8%", "100.5%", "106.2%", "113.8%", "121.3%", "128.9%", "136.5%", "144.1%", "151.7%", "161.2%", "170.6%", "180.1%"]}, "E杀生樱伤害·叁阶": {"name": "E杀生樱伤害·叁阶", "type": "攻击力", "plus": 1, "value": ["94.8%", "101.9%", "109.0%", "118.5%", "125.6%", "132.7%", "142.2%", "151.7%", "161.2%", "170.6%", "180.1%", "189.6%", "201.4%", "213.3%", "225.1%"]}, "E杀生樱伤害·叁阶(超激化)": {"name": "E杀生樱伤害·叁阶(超激化)", "type": "攻击力", "plus": 1, "value": ["94.8%", "101.9%", "109.0%", "118.5%", "125.6%", "132.7%", "142.2%", "151.7%", "161.2%", "170.6%", "180.1%", "189.6%", "201.4%", "213.3%", "225.1%"]}, "E杀生樱伤害·肆阶": {"name": "E杀生樱伤害·肆阶", "type": "攻击力", "plus": 1, "value": ["118.5%", "127.4%", "136.3%", "148.1%", "157.0%", "165.9%", "177.8%", "189.6%", "201.4%", "213.3%", "225.1%", "237.0%", "251.8%", "266.6%", "281.4%"]}, "E杀生樱伤害·肆阶(超激化)": {"name": "E杀生樱伤害·肆阶(超激化)", "type": "攻击力", "plus": 1, "value": ["118.5%", "127.4%", "136.3%", "148.1%", "157.0%", "165.9%", "177.8%", "189.6%", "201.4%", "213.3%", "225.1%", "237.0%", "251.8%", "266.6%", "281.4%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["260%", "280%", "299%", "325%", "344%", "364%", "390%", "416%", "442%", "468%", "494%", "520%", "553%", "585%", "618%"]}, "Q伤害(超激化)": {"name": "Q伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["260%", "280%", "299%", "325%", "344%", "364%", "390%", "416%", "442%", "468%", "494%", "520%", "553%", "585%", "618%"]}, "Q天狐霆雷伤害": {"name": "Q天狐霆雷伤害", "type": "攻击力", "plus": 1, "value": ["334%", "359%", "384%", "417%", "442%", "467%", "501%", "534%", "567%", "601%", "634%", "668%", "709%", "751%", "793%"]}, "Q天狐霆雷伤害(超激化)": {"name": "Q天狐霆雷伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["334%", "359%", "384%", "417%", "442%", "467%", "501%", "534%", "567%", "601%", "634%", "668%", "709%", "751%", "793%"]}}, "鹿野院平藏": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["37.5%", "40.3%", "43.1%", "46.8%", "49.7%", "52.5%", "56.2%", "60.0%", "63.7%", "67.5%", "71.2%", "74.9%", "79.6%", "84.3%", "89.0%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["73.0%", "78.5%", "84.0%", "91.3%", "96.7%", "102.2%", "109.5%", "116.8%", "124.1%", "131.4%", "138.7%", "146.0%", "155.1%", "164.3%", "173.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["227.5%", "244.6%", "261.6%", "284.4%", "301.5%", "318.5%", "341.3%", "364.0%", "386.8%", "409.5%", "432.3%", "455.0%", "483.5%", "511.9%", "540.4%"]}, "Q不动流·真空弹伤害": {"name": "Q不动流·真空弹伤害", "type": "攻击力", "plus": 1, "value": ["314.7%", "338.3%", "361.9%", "393.4%", "417.0%", "440.6%", "472.0%", "503.5%", "535.0%", "566.4%", "597.9%", "629.4%", "668.7%", "708.0%", "747.4%"]}, "Q聚风真眼伤害": {"name": "Q聚风真眼伤害", "type": "攻击力", "plus": 1, "value": ["21.5%", "23.1%", "24.7%", "26.8%", "28.4%", "30.0%", "32.2%", "34.3%", "36.5%", "38.6%", "40.8%", "42.9%", "45.6%", "48.3%", "51.0%"]}}, "夜兰": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["40.7%", "44.0%", "47.3%", "52.0%", "55.3%", "59.1%", "64.3%", "69.5%", "74.7%", "80.4%", "86.1%", "91.8%", "97.4%", "103.1%", "108.8%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A破局矢伤害": {"name": "A破局矢伤害", "type": "生命值", "plus": 1, "value": ["11.58%", "12.44%", "13.31%", "14.47%", "15.34%", "16.21%", "17.36%", "18.52%", "19.68%", "20.84%", "21.99%", "23.15%", "24.60%", "26.05%", "27.49%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "生命值", "plus": 1, "value": ["22.6%", "24.3%", "26.0%", "28.3%", "30.0%", "31.7%", "33.9%", "36.2%", "38.4%", "40.7%", "43.0%", "45.2%", "48.1%", "50.9%", "53.7%"]}, "E伤害(蒸发)": {"name": "E伤害(蒸发)", "type": "生命值", "plus": 1, "value": ["22.6%", "24.3%", "26.0%", "28.3%", "30.0%", "31.7%", "33.9%", "36.2%", "38.4%", "40.7%", "43.0%", "45.2%", "48.1%", "50.9%", "53.7%"]}, "Q伤害": {"name": "Q伤害", "type": "生命值", "plus": 1, "value": ["7.31%", "7.86%", "8.40%", "9.13%", "9.68%", "10.23%", "10.96%", "11.69%", "12.42%", "13.15%", "13.89%", "14.62%", "15.53%", "16.44%", "17.36%"]}, "Q玄掷玲珑伤害": {"name": "Q玄掷玲珑伤害", "type": "生命值", "plus": 3, "value": ["4.87%", "5.24%", "5.60%", "6.09%", "6.46%", "6.82%", "7.31%", "7.80%", "8.28%", "8.77%", "9.26%", "9.74%", "10.35%", "10.96%", "11.57%"]}}, "埃洛伊": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["21.1%+23.8%", "22.6%+25.4%", "24.0%+27.0%", "25.9%+29.2%", "27.4%+30.8%", "29.0%+32.7%", "31.2%+35.1%", "33.4%+37.5%", "35.5%+40.0%", "37.7%+42.4%", "39.8%+44.8%", "42.0%+47.2%", "44.2%+49.7%", "46.3%+52.1%", "48.5%+54.5%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E冰尘弹伤害": {"name": "E冰尘弹伤害", "type": "攻击力", "plus": 1, "value": ["178%", "191%", "204%", "222%", "235%", "249%", "266%", "284%", "302%", "320%", "337%", "355%", "377%", "400%", "422%"]}, "E冷冻炸弹伤害": {"name": "E冷冻炸弹伤害", "type": "攻击力", "plus": 1, "value": ["40.0%", "43.0%", "46.0%", "50.0%", "53.0%", "56.0%", "60.0%", "64.0%", "68.0%", "72.0%", "76.0%", "80.0%", "85.0%", "90.0%", "95.0%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["359%", "386%", "413%", "449%", "476%", "503%", "539%", "575%", "611%", "647%", "682%", "718%", "763%", "808%", "853%"]}}, "申鹤": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["43.3%", "46.8%", "50.3%", "55.3%", "58.9%", "62.9%", "68.4%", "73.9%", "79.5%", "85.5%", "91.5%", "97.6%", "103.6%", "109.7%", "115.7%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["110.7%", "119.7%", "128.7%", "141.6%", "150.6%", "160.9%", "175.0%", "189.2%", "203.3%", "218.8%", "234.2%", "249.7%", "265.1%", "280.5%", "296.0%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["139%", "150%", "160%", "174%", "184%", "195%", "209%", "223%", "237%", "251%", "264%", "278%", "296%", "313%", "331%"]}, "E长按伤害": {"name": "E长按伤害", "type": "攻击力", "plus": 1, "value": ["188.8%", "203.0%", "217.1%", "236.0%", "250.2%", "264.3%", "283.2%", "302.1%", "321.0%", "339.8%", "358.7%", "377.6%", "401.2%", "424.8%", "448.4%"]}, "E伤害值提升": {"name": "E伤害值提升", "type": "攻击", "plus": 1, "value": ["45.7%", "49.1%", "52.5%", "57.1%", "60.5%", "63.9%", "68.5%", "73.0%", "77.6%", "82.2%", "86.7%", "91.3%", "97.0%", "102.7%", "108.4%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["101%", "108%", "116%", "126%", "134%", "141%", "151%", "161%", "171%", "181%", "192%", "202%", "214%", "227%", "239%"]}, "Q持续伤害": {"name": "Q持续伤害", "type": "攻击力", "plus": 1, "value": ["33.1%", "35.6%", "38.1%", "41.4%", "43.9%", "46.4%", "49.7%", "53.0%", "56.3%", "59.6%", "62.9%", "66.2%", "70.4%", "74.5%", "78.7%"]}}, "云堇": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["40.5%", "43.8%", "47.1%", "51.8%", "55.1%", "58.9%", "64.1%", "69.2%", "74.4%", "80.1%", "85.7%", "91.4%", "97.0%", "102.7%", "108.3%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["121.7%", "131.6%", "141.5%", "155.6%", "165.6%", "176.9%", "192.4%", "208.0%", "223.6%", "240.5%", "260.0%", "282.9%", "305.8%", "328.6%", "353.6%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E点按伤害": {"name": "E点按伤害", "type": "防御", "plus": 1, "value": ["149.1%", "160.3%", "171.5%", "186.4%", "197.6%", "208.8%", "223.7%", "238.6%", "253.5%", "268.4%", "283.3%", "298.2%", "316.9%", "335.5%", "354.2%"]}, "E一段蓄力伤害": {"name": "E一段蓄力伤害", "type": "防御", "plus": 1, "value": ["261.0%", "280.5%", "300.1%", "326.2%", "345.8%", "365.3%", "391.4%", "417.5%", "443.6%", "469.7%", "495.8%", "521.9%", "554.5%", "587.2%", "619.8%"]}, "E护盾吸收量": {"name": "E护盾吸收量", "type": "生命值", "plus": 1, "value": ["12%+1155.43", "13%+1270.99", "14%+1396.18", "15%+1531.00", "16%+1675.45", "17%+1829.53", "18%+1993.24", "19%+2166.58", "20%+2349.54", "22%+2542.14", "23%+2744.37", "24%+2956.23", "25%+3177.72", "27%+3408.84", "28%+3649.59"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["244%", "262%", "281%", "305%", "323%", "342%", "366%", "390%", "415%", "439%", "464%", "488%", "518%", "549%", "580%"]}, "Q伤害值提升": {"name": "Q伤害值提升", "type": "防御", "plus": 1, "value": ["32%", "35%", "37%", "40%", "43%", "45%", "48%", "51%", "55%", "58%", "61%", "64%", "68%", "72%", "76%"]}}, "久岐忍": {"A元素反应(超绽放)": {"name": "A元素反应(超绽放)", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["48.8%", "52.7%", "56.7%", "62.4%", "66.3%", "70.9%", "77.1%", "83.3%", "89.6%", "96.4%", "103.2%", "110.0%", "116.8%", "123.6%", "130.4%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.6%+66.8%", "60.2%+72.2%", "64.7%+77.6%", "71.2%+85.4%", "75.7%+90.8%", "80.9%+97.0%", "88.0%+105.6%", "95.1%+114.1%", "102.2%+122.7%", "110.0%+132.0%", "117.7%+141.3%", "125.5%+150.6%", "133.3%+159.9%", "141.0%+169.2%", "148.8%+178.6%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["76%", "81%", "87%", "95%", "100%", "106%", "114%", "121%", "129%", "136%", "144%", "151%", "161%", "170%", "180%"]}, "E越祓草轮治疗量": {"name": "E越祓草轮治疗量", "type": "生命值", "plus": 1, "value": ["3.0%+288.89", "3.2%+317.78", "3.4%+349.08", "3.8%+382.79", "4.0%+418.91", "4.2%+457.43", "4.5%+498.37", "4.8%+541.71", "5.1%+587.45", "5.4%+635.61", "5.7%+686.17", "6.0%+739.14", "6.4%+794.52", "6.8%+852.31", "7.1%+912.50"]}, "E越祓草轮伤害": {"name": "E越祓草轮伤害", "type": "攻击力", "plus": 1, "value": ["25.2%", "27.1%", "29.0%", "31.5%", "33.4%", "35.3%", "37.9%", "40.4%", "42.9%", "45.4%", "48.0%", "50.5%", "53.6%", "56.8%", "59.9%"]}, "Q单次伤害": {"name": "Q单次伤害", "type": "生命值", "plus": 1, "value": ["3.6%", "3.9%", "4.1%", "4.5%", "4.8%", "5.0%", "5.4%", "5.8%", "6.1%", "6.5%", "6.8%", "7.2%", "7.7%", "8.1%", "8.6%"]}, "Q单次伤害(超激化)": {"name": "Q单次伤害(超激化)", "type": "生命值", "plus": 1, "value": ["3.6%", "3.9%", "4.1%", "4.5%", "4.8%", "5.0%", "5.4%", "5.8%", "6.1%", "6.5%", "6.8%", "7.2%", "7.7%", "8.1%", "8.6%"]}, "Q总伤害": {"name": "Q总伤害", "type": "生命值", "plus": 1, "value": ["43.3%", "46.5%", "49.7%", "54.1%", "57.3%", "60.6%", "64.9%", "69.2%", "73.5%", "77.9%", "82.2%", "86.5%", "91.9%", "97.3%", "102.7%"]}}, "神里绫人": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["45.0%", "48.6%", "52.3%", "57.5%", "61.2%", "65.4%", "71.1%", "76.9%", "82.6%", "88.9%", "95.2%", "101.4%", "107.7%", "114.0%", "120.2%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["129.5%", "140.1%", "150.6%", "165.7%", "176.2%", "188.3%", "204.8%", "221.4%", "238.0%", "256.0%", "274.1%", "292.2%", "310.3%", "328.3%", "346.4%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E一段瞬水剑伤害": {"name": "E一段瞬水剑伤害", "type": "攻击力", "plus": 1, "value": ["52.9%", "57.2%", "61.5%", "67.7%", "72.0%", "76.9%", "83.6%", "90.4%", "97.2%", "104.6%", "111.9%", "119.3%", "126.7%", "134.1%", "141.4%"]}, "E浪闪伤害值提高": {"name": "E浪闪伤害值提高", "type": "生命值", "plus": 1, "value": ["0.56%", "0.61%", "0.65%", "0.72%", "0.76%", "0.82%", "0.89%", "0.96%", "1.03%", "1.11%", "1.19%", "1.27%", "1.34%", "1.42%", "1.50%"]}, "E水影伤害": {"name": "E水影伤害", "type": "攻击力", "plus": 1, "value": ["101.5%", "109.7%", "118.0%", "129.8%", "138.1%", "147.5%", "160.5%", "173.5%", "186.4%", "200.6%", "214.8%", "228.9%", "243.1%", "257.2%", "271.4%"]}, "Q水花剑伤害": {"name": "Q水花剑伤害", "type": "攻击力", "plus": 1, "value": ["66.5%", "71.4%", "76.4%", "83.1%", "88.1%", "93.0%", "99.7%", "106.3%", "113.0%", "119.6%", "126.3%", "132.9%", "141.2%", "149.5%", "157.8%"]}}, "柯莱": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["43.6%", "47.2%", "50.7%", "55.8%", "59.3%", "63.4%", "69.0%", "74.5%", "80.1%", "86.2%", "92.3%", "98.4%", "104.4%", "110.5%", "116.6%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["151.2%", "162.5%", "173.9%", "189.0%", "200.3%", "211.7%", "226.8%", "241.9%", "257.0%", "272.2%", "287.3%", "302.4%", "321.3%", "340.2%", "359.1%"]}, "E伤害(蔓激化)": {"name": "E伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["151.2%", "162.5%", "173.9%", "189.0%", "200.3%", "211.7%", "226.8%", "241.9%", "257.0%", "272.2%", "287.3%", "302.4%", "321.3%", "340.2%", "359.1%"]}, "Q爆发伤害": {"name": "Q爆发伤害", "type": "攻击力", "plus": 1, "value": ["201.8%", "217.0%", "232.1%", "252.3%", "267.4%", "282.6%", "302.7%", "322.9%", "343.1%", "363.3%", "383.5%", "403.6%", "428.9%", "454.1%", "479.3%"]}, "Q跃动伤害": {"name": "Q跃动伤害", "type": "攻击力", "plus": 1, "value": ["43.2%", "46.5%", "49.7%", "54.1%", "57.3%", "60.5%", "64.9%", "69.2%", "73.5%", "77.8%", "82.2%", "86.5%", "91.9%", "97.3%", "102.7%"]}, "Q跃动伤害(蔓激化)": {"name": "Q跃动伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["43.2%", "46.5%", "49.7%", "54.1%", "57.3%", "60.5%", "64.9%", "69.2%", "73.5%", "77.8%", "82.2%", "86.5%", "91.9%", "97.3%", "102.7%"]}}, "多莉": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["90.2%", "97.6%", "104.9%", "115.4%", "122.7%", "131.1%", "142.7%", "154.2%", "165.7%", "178.3%", "190.9%", "203.5%", "216.1%", "228.7%", "241.3%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["62.5%", "67.6%", "72.7%", "80.0%", "85.1%", "90.9%", "98.9%", "106.9%", "114.9%", "123.6%", "133.6%", "145.4%", "157.2%", "168.9%", "181.7%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["113%", "122%", "132%", "145%", "154%", "164%", "179%", "193%", "208%", "224%", "242%", "263%", "284%", "305%", "329%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "394%", "420%", "446%", "472%", "498%"]}, "E断除烦恼炮伤害": {"name": "E断除烦恼炮伤害", "type": "攻击力", "plus": 1, "value": ["147.3%", "158.3%", "169.4%", "184.1%", "195.1%", "206.2%", "220.9%", "235.6%", "250.4%", "265.1%", "279.8%", "294.6%", "313.0%", "331.4%", "349.8%"]}, "E售后服务弹伤害": {"name": "E售后服务弹伤害", "type": "攻击力", "plus": 1, "value": ["31.6%", "33.9%", "36.3%", "39.4%", "41.8%", "44.2%", "47.3%", "50.5%", "53.7%", "56.8%", "60.0%", "63.1%", "67.1%", "71.0%", "75.0%"]}, "Q连接伤害": {"name": "Q连接伤害", "type": "攻击力", "plus": 1, "value": ["16%", "17%", "18%", "20%", "21%", "22%", "24%", "25%", "27%", "29%", "30%", "32%", "34%", "36%", "38%"]}, "Q持续治疗量": {"name": "Q持续治疗量", "type": "生命值", "plus": 1, "value": ["6.7%+641.98", "7.2%+706.19", "7.7%+775.74", "8.3%+850.65", "8.8%+930.91", "9.3%+1016.52", "10.0%+1107.48", "10.7%+1203.79", "11.3%+1305.45", "12.0%+1412.46", "12.7%+1524.82", "13.3%+1642.54", "14.2%+1765.60", "15.0%+1894.01", "15.8%+2027.78"]}}, "提纳里": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.6%", "48.3%", "51.9%", "57.1%", "60.7%", "64.9%", "70.6%", "76.3%", "82.0%", "88.2%", "94.5%", "100.7%", "106.9%", "113.1%", "119.4%"]}, "A花筥箭伤害": {"name": "A花筥箭伤害", "type": "攻击力", "plus": 1, "value": ["87.2%", "93.7%", "100.3%", "109.0%", "115.5%", "122.1%", "130.8%", "139.5%", "148.2%", "157.0%", "165.7%", "174.4%", "185.3%", "196.2%", "207.1%"]}, "A藏蕴花矢伤害": {"name": "A藏蕴花矢伤害", "type": "攻击力", "plus": 1, "value": ["38.6%", "41.5%", "44.4%", "48.2%", "51.1%", "54.0%", "57.9%", "61.8%", "65.6%", "69.5%", "73.3%", "77.2%", "82.0%", "86.8%", "91.7%"]}, "A藏蕴花矢伤害(蔓激化)": {"name": "A藏蕴花矢伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["38.6%", "41.5%", "44.4%", "48.2%", "51.1%", "54.0%", "57.9%", "61.8%", "65.6%", "69.5%", "73.3%", "77.2%", "82.0%", "86.8%", "91.7%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["149.6%", "160.8%", "172.0%", "187.0%", "198.2%", "209.4%", "224.4%", "239.4%", "254.3%", "269.3%", "284.2%", "299.2%", "317.9%", "336.6%", "355.3%"]}, "E伤害(蔓激化)": {"name": "E伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["149.6%", "160.8%", "172.0%", "187.0%", "198.2%", "209.4%", "224.4%", "239.4%", "254.3%", "269.3%", "284.2%", "299.2%", "317.9%", "336.6%", "355.3%"]}, "Q缠藤箭伤害": {"name": "Q缠藤箭伤害", "type": "攻击力", "plus": 1, "value": ["55.6%", "59.8%", "64.0%", "69.5%", "73.7%", "77.9%", "83.4%", "89.0%", "94.6%", "100.1%", "105.7%", "111.2%", "118.2%", "125.1%", "132.1%"]}, "Q缠藤箭伤害(蔓激化)": {"name": "Q缠藤箭伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["55.6%", "59.8%", "64.0%", "69.5%", "73.7%", "77.9%", "83.4%", "89.0%", "94.6%", "100.1%", "105.7%", "111.2%", "118.2%", "125.1%", "132.1%"]}, "Q次级缠藤箭伤害": {"name": "Q次级缠藤箭伤害", "type": "攻击力", "plus": 1, "value": ["68.0%", "73.1%", "78.2%", "85.0%", "90.1%", "95.2%", "102.0%", "108.8%", "115.6%", "122.4%", "129.2%", "136.0%", "144.5%", "153.0%", "161.5%"]}, "Q次级缠藤箭伤害(蔓激化)": {"name": "Q次级缠藤箭伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["68.0%", "73.1%", "78.2%", "85.0%", "90.1%", "95.2%", "102.0%", "108.8%", "115.6%", "122.4%", "129.2%", "136.0%", "144.5%", "153.0%", "161.5%"]}}, "妮露": {"A丰穰之核(绽放)": {"name": "A丰穰之核(绽放)", "type": "绽放", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["50.3%", "54.4%", "58.5%", "64.3%", "68.4%", "73.1%", "79.6%", "86.0%", "92.4%", "99.4%", "106.5%", "113.5%", "120.5%", "127.5%", "134.5%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["50.2%+54.4%", "54.3%+58.9%", "58.4%+63.3%", "64.2%+69.6%", "68.3%+74.1%", "73.0%+79.1%", "79.4%+86.1%", "85.8%+93.1%", "92.3%+100.0%", "99.3%+107.6%", "106.3%+115.2%", "113.3%+122.8%", "120.3%+130.4%", "127.3%+138.0%", "134.3%+145.6%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "生命值", "plus": 1, "value": ["3.34%", "3.59%", "3.84%", "4.17%", "4.42%", "4.67%", "5.01%", "5.34%", "5.68%", "6.01%", "6.34%", "6.68%", "7.10%", "7.51%", "7.93%"]}, "E剑舞步/旋舞步一段伤害": {"name": "E剑舞步/旋舞步一段伤害", "type": "生命值", "plus": 1, "value": ["4.55%+3.26%", "4.89%+3.51%", "5.24%+3.75%", "5.69%+4.08%", "6.03%+4.32%", "6.37%+4.57%", "6.83%+4.89%", "7.28%+5.22%", "7.74%+5.55%", "8.19%+5.87%", "8.65%+6.20%", "9.10%+6.52%", "9.67%+6.93%", "10.24%+7.34%", "10.81%+7.75%"]}, "E水月/水轮伤害": {"name": "E水月/水轮伤害", "type": "生命值", "plus": 1, "value": ["7.17%+5.06%", "7.71%+5.44%", "8.24%+5.82%", "8.96%+6.33%", "9.50%+6.71%", "10.04%+7.09%", "10.75%+7.59%", "11.47%+8.10%", "12.19%+8.60%", "12.90%+9.11%", "13.62%+9.62%", "14.34%+10.12%", "15.23%+10.76%", "16.13%+11.39%", "17.03%+12.02%"]}, "Q伤害": {"name": "Q伤害", "type": "生命值", "plus": 1, "value": ["18.4%", "19.8%", "21.2%", "23.0%", "24.4%", "25.8%", "27.6%", "29.5%", "31.3%", "33.2%", "35.0%", "36.9%", "39.2%", "41.5%", "43.8%"]}, "Q永世流沔伤害": {"name": "Q永世流沔伤害", "type": "生命值", "plus": 1, "value": ["22.5%", "24.2%", "25.9%", "28.2%", "29.8%", "31.5%", "33.8%", "36.0%", "38.3%", "40.6%", "42.8%", "45.1%", "47.9%", "50.7%", "53.5%"]}}, "赛诺": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["49.3%", "53.3%", "57.3%", "63.0%", "67.0%", "71.6%", "77.9%", "84.2%", "90.5%", "97.4%", "104.2%", "111.1%", "118.0%", "124.9%", "131.7%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["122.4%", "132.3%", "142.3%", "156.5%", "166.5%", "177.9%", "193.5%", "209.2%", "224.8%", "241.9%", "259.0%", "276.1%", "293.1%", "310.2%", "327.3%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["130.4%", "140.2%", "150.0%", "163.0%", "172.8%", "182.6%", "195.6%", "208.6%", "221.7%", "234.7%", "247.8%", "260.8%", "277.1%", "293.4%", "309.7%"]}, "E冥祭伤害": {"name": "E冥祭伤害", "type": "攻击力", "plus": 1, "value": ["156.8%", "168.6%", "180.3%", "196.0%", "207.8%", "219.5%", "235.2%", "250.9%", "266.6%", "282.2%", "297.9%", "313.6%", "333.2%", "352.8%", "372.4%"]}, "E冥祭伤害(超激化)": {"name": "E冥祭伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["156.8%", "168.6%", "180.3%", "196.0%", "207.8%", "219.5%", "235.2%", "250.9%", "266.6%", "282.2%", "297.9%", "313.6%", "333.2%", "352.8%", "372.4%"]}, "Q一段伤害": {"name": "Q一段伤害", "type": "攻击力", "plus": 1, "value": ["78.3%", "84.7%", "91.0%", "100.1%", "106.5%", "113.8%", "123.8%", "133.8%", "143.8%", "154.7%", "165.7%", "176.6%", "187.5%", "198.4%", "209.4%"]}, "Q一段伤害(超激化)": {"name": "Q一段伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["78.3%", "84.7%", "91.0%", "100.1%", "106.5%", "113.8%", "123.8%", "133.8%", "143.8%", "154.7%", "165.7%", "176.6%", "187.5%", "198.4%", "209.4%"]}, "Q重击伤害": {"name": "Q重击伤害", "type": "攻击力", "plus": 1, "value": ["101.0%", "109.3%", "117.5%", "129.3%", "137.5%", "146.9%", "159.8%", "172.7%", "185.7%", "199.7%", "213.8%", "228.0%", "242.1%", "256.2%", "270.3%"]}, "Q重击伤害(超激化)": {"name": "Q重击伤害(超激化)", "type": "攻击力", "plus": 1, "value": ["101.0%", "109.3%", "117.5%", "129.3%", "137.5%", "146.9%", "159.8%", "172.7%", "185.7%", "199.7%", "213.8%", "228.0%", "242.1%", "256.2%", "270.3%"]}, "Q高空下落伤害": {"name": "Q高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}}, "坎蒂丝": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["60.8%", "65.8%", "70.7%", "77.8%", "82.7%", "88.4%", "96.2%", "103.9%", "111.7%", "120.2%", "128.7%", "137.2%", "145.6%", "154.1%", "162.6%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["124.2%", "134.3%", "144.4%", "158.8%", "168.9%", "180.5%", "196.4%", "212.3%", "228.2%", "245.5%", "262.8%", "280.1%", "297.5%", "314.8%", "332.1%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E护盾吸收量": {"name": "E护盾吸收量", "type": "生命值", "plus": 1, "value": ["12.0%+1155.56", "12.9%+1271.14", "13.8%+1396.34", "15.0%+1531.17", "15.9%+1675.64", "16.8%+1829.73", "18.0%+1993.46", "19.2%+2166.82", "20.4%+2349.81", "21.6%+2542.43", "22.8%+2744.68", "24.0%+2956.57", "25.5%+3178.08", "27.0%+3409.22", "28.5%+3650.00"]}, "E基础伤害": {"name": "E基础伤害", "type": "生命值", "plus": 1, "value": ["12.0%", "12.9%", "13.8%", "15.0%", "15.9%", "16.8%", "18.0%", "19.2%", "20.4%", "21.6%", "22.8%", "24.0%", "25.5%", "27.0%", "28.5%"]}, "E蓄力完成伤害": {"name": "E蓄力完成伤害", "type": "生命值", "plus": 1, "value": ["19.0%", "20.5%", "21.9%", "23.8%", "25.2%", "26.7%", "28.6%", "30.5%", "32.4%", "34.3%", "36.2%", "38.1%", "40.5%", "42.8%", "45.2%"]}, "Q伤害": {"name": "Q伤害", "type": "生命值", "plus": 1, "value": ["6.6%", "7.1%", "7.6%", "8.3%", "8.8%", "9.3%", "9.9%", "10.6%", "11.2%", "11.9%", "12.6%", "13.2%", "14.0%", "14.9%", "15.7%"]}, "Q伤害加成": {"name": "Q伤害加成", "type": "攻击力", "plus": 1, "value": ["20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%", "20.0%"]}, "Q水波冲击伤害": {"name": "Q水波冲击伤害", "type": "生命值", "plus": 1, "value": ["6.6%", "7.1%", "7.6%", "8.3%", "8.8%", "9.3%", "9.9%", "10.6%", "11.2%", "11.9%", "12.6%", "13.2%", "14.0%", "14.9%", "15.7%"]}}, "纳西妲": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["40.3%", "43.3%", "46.4%", "50.4%", "53.4%", "56.4%", "60.5%", "64.5%", "68.5%", "72.5%", "76.6%", "80.6%", "85.6%", "90.7%", "95.7%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["132.0%", "141.9%", "151.8%", "165.0%", "174.9%", "184.8%", "198.0%", "211.2%", "224.4%", "237.6%", "250.8%", "264.0%", "280.5%", "297.0%", "313.5%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E点按伤害": {"name": "E点按伤害", "type": "攻击力", "plus": 1, "value": ["98.4%", "105.8%", "113.2%", "123.0%", "130.4%", "137.8%", "147.6%", "157.4%", "167.3%", "177.1%", "187.0%", "196.8%", "209.1%", "221.4%", "233.7%"]}, "E长按伤害": {"name": "E长按伤害", "type": "攻击力", "plus": 1, "value": ["130.4%", "140.2%", "150.0%", "163.0%", "172.8%", "182.6%", "195.6%", "208.6%", "221.7%", "234.7%", "247.8%", "260.8%", "277.1%", "293.4%", "309.7%"]}, "E长按伤害(蔓激化)": {"name": "E长按伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["130.4%", "140.2%", "150.0%", "163.0%", "172.8%", "182.6%", "195.6%", "208.6%", "221.7%", "234.7%", "247.8%", "260.8%", "277.1%", "293.4%", "309.7%"]}, "E灭净三业伤害": {"name": "E灭净三业伤害", "type": "攻击", "plus": 1, "value": ["103.2%+206.4%", "110.9%+221.9%", "118.7%+237.4%", "129.0%+258.0%", "136.7%+273.5%", "144.5%+289.0%", "154.8%+309.6%", "165.1%+330.2%", "175.4%+350.9%", "185.8%+371.5%", "196.1%+392.2%", "206.4%+412.8%", "219.3%+438.6%", "232.2%+464.4%", "245.1%+490.2%"]}, "E灭净三业伤害(蔓激化)": {"name": "E灭净三业伤害(蔓激化)", "type": "攻击", "plus": 1, "value": ["103.2%+206.4%", "110.9%+221.9%", "118.7%+237.4%", "129.0%+258.0%", "136.7%+273.5%", "144.5%+289.0%", "154.8%+309.6%", "165.1%+330.2%", "175.4%+350.9%", "185.8%+371.5%", "196.1%+392.2%", "206.4%+412.8%", "219.3%+438.6%", "232.2%+464.4%", "245.1%+490.2%"]}, "E灭净三业伤害(蔓激化·前台)": {"name": "E灭净三业伤害(蔓激化·前台)", "type": "攻击", "plus": 1, "value": ["103.2%+206.4%", "110.9%+221.9%", "118.7%+237.4%", "129.0%+258.0%", "136.7%+273.5%", "144.5%+289.0%", "154.8%+309.6%", "165.1%+330.2%", "175.4%+350.9%", "185.8%+371.5%", "196.1%+392.2%", "206.4%+412.8%", "219.3%+438.6%", "232.2%+464.4%", "245.1%+490.2%"]}}, "莱依拉": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["51.2%", "55.4%", "59.6%", "65.5%", "69.7%", "74.4%", "81.0%", "87.5%", "94.1%", "101.2%", "108.4%", "115.5%", "122.7%", "129.8%", "137.0%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["47.7%+52.5%", "51.6%+56.8%", "55.5%+61.1%", "61.0%+67.2%", "64.9%+71.5%", "69.4%+76.4%", "75.5%+83.1%", "81.6%+89.8%", "87.7%+96.5%", "94.3%+103.9%", "101.0%+111.2%", "107.7%+118.5%", "114.3%+125.9%", "121.0%+133.2%", "127.6%+140.5%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["12.8%", "13.8%", "14.7%", "16.0%", "17.0%", "17.9%", "19.2%", "20.5%", "21.8%", "23.0%", "24.3%", "25.6%", "27.2%", "28.8%", "30.4%"]}, "E飞星伤害": {"name": "E飞星伤害", "type": "攻击力", "plus": 1, "value": ["14.7%", "15.8%", "16.9%", "18.4%", "19.5%", "20.6%", "22.1%", "23.6%", "25.0%", "26.5%", "28.0%", "29.4%", "31.3%", "33.1%", "35.0%"]}, "E护盾基础吸收量": {"name": "E护盾基础吸收量", "type": "生命值", "plus": 1, "value": ["10.8%+1040.01", "11.6%+1144.02", "12.4%+1256.71", "13.5%+1378.06", "14.3%+1508.08", "15.1%+1646.76", "16.2%+1794.12", "17.3%+1950.14", "18.4%+2114.83", "19.4%+2288.19", "20.5%+2470.22", "21.6%+2660.91", "22.9%+2860.27", "24.3%+3068.30", "25.7%+3285.00"]}, "Q星光弹伤害": {"name": "Q星光弹伤害", "type": "生命值", "plus": 1, "value": ["4.6%", "5.0%", "5.3%", "5.8%", "6.2%", "6.5%", "7.0%", "7.4%", "7.9%", "8.4%", "8.8%", "9.3%", "9.9%", "10.5%", "11.0%"]}}, "流浪者": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["68.7%", "74.3%", "79.9%", "87.9%", "93.5%", "99.9%", "108.7%", "117.5%", "126.2%", "135.8%", "145.4%", "155.0%", "164.6%", "174.2%", "183.8%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["132.1%", "142.0%", "151.9%", "165.1%", "175.0%", "184.9%", "198.1%", "211.3%", "224.5%", "237.7%", "251.0%", "264.2%", "280.7%", "297.2%", "313.7%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["95.2%", "102.3%", "109.5%", "119.0%", "126.1%", "133.3%", "142.8%", "152.3%", "161.8%", "171.4%", "180.9%", "190.4%", "202.3%", "214.2%", "226.1%"]}, "E空居·不生断伤害": {"name": "E空居·不生断伤害", "type": "普通攻击", "plus": 1, "value": ["133.0%", "135.0%", "136.9%", "139.5%", "141.5%", "143.4%", "146.0%", "148.6%", "151.2%", "153.7%", "156.3%", "158.9%", "161.4%", "164.0%", "166.6%"]}, "E空居·刀风界伤害": {"name": "E空居·刀风界伤害", "type": "重击", "plus": 1, "value": ["126.4%", "128.0%", "129.5%", "131.6%", "133.2%", "134.8%", "136.8%", "138.9%", "140.9%", "143.0%", "145.0%", "147.1%", "149.1%", "151.2%", "153.2%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 5, "value": ["147.2%", "158.2%", "169.3%", "184.0%", "195.0%", "206.1%", "220.8%", "235.5%", "250.2%", "265.0%", "279.7%", "294.4%", "312.8%", "331.2%", "349.6%"]}}, "珐露珊": {"A扩散伤害": {"name": "A扩散伤害", "type": "扩散", "plus": 0, "value": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]}, "A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.7%", "48.4%", "52.0%", "57.2%", "60.9%", "65.0%", "70.7%", "76.5%", "82.2%", "88.4%", "94.7%", "100.9%", "107.1%", "113.4%", "119.6%"]}, "A满蓄力瞄准射击": {"name": "A满蓄力瞄准射击", "type": "攻击力", "plus": 1, "value": ["124%", "133%", "143%", "155%", "164%", "174%", "186%", "198%", "211%", "223%", "236%", "248%", "263%", "279%", "294%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["142%", "153%", "165%", "182%", "193%", "206%", "224%", "243%", "261%", "281%", "300%", "320%", "340%", "360%", "380%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["148.8%", "160.0%", "171.1%", "186.0%", "197.2%", "208.3%", "223.2%", "238.1%", "253.0%", "267.8%", "282.7%", "297.6%", "316.2%", "334.8%", "353.4%"]}, "E风压坍陷风涡伤害": {"name": "E风压坍陷风涡伤害", "type": "攻击力", "plus": 1, "value": ["108.0%", "116.1%", "124.2%", "135.0%", "143.1%", "151.2%", "162.0%", "172.8%", "183.6%", "194.4%", "205.2%", "216.0%", "229.5%", "243.0%", "256.5%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["377.6%", "405.9%", "434.2%", "472.0%", "500.3%", "528.6%", "566.4%", "604.2%", "641.9%", "679.7%", "717.4%", "755.2%", "802.4%", "849.6%", "896.8%"]}, "Q风元素伤害加成": {"name": "Q风元素伤害加成", "type": "攻击力", "plus": 1, "value": ["18.0%", "19.3%", "20.7%", "22.5%", "23.8%", "25.2%", "27.0%", "28.8%", "30.6%", "32.4%", "34.2%", "36.0%", "38.2%", "40.5%", "42.8%"]}}, "瑶瑶": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["51.0%", "55.2%", "59.3%", "65.2%", "69.4%", "74.1%", "80.7%", "87.2%", "93.7%", "100.8%", "107.9%", "115.0%", "122.2%", "129.3%", "136.4%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["112.7%", "121.8%", "131.0%", "144.1%", "153.3%", "163.8%", "178.2%", "192.6%", "207.0%", "222.7%", "238.4%", "254.1%", "269.9%", "285.6%", "301.3%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E白玉萝卜伤害": {"name": "E白玉萝卜伤害", "type": "攻击力", "plus": 1, "value": ["29.9%", "32.2%", "34.4%", "37.4%", "39.6%", "41.9%", "44.9%", "47.9%", "50.9%", "53.9%", "56.8%", "59.8%", "63.6%", "67.3%", "71.1%"]}, "E白玉萝卜治疗量": {"name": "E白玉萝卜治疗量", "type": "生命值", "plus": 1, "value": ["1.71%+165.08", "1.84%+181.59", "1.97%+199.48", "2.14%+218.74", "2.27%+239.38", "2.40%+261.39", "2.57%+284.78", "2.74%+309.54", "2.91%+335.69", "3.09%+363.20", "3.26%+392.10", "3.43%+422.37", "3.64%+454.01", "3.86%+487.03", "4.07%+521.43"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["114.6%", "123.2%", "131.7%", "143.2%", "151.8%", "160.4%", "171.8%", "183.3%", "194.8%", "206.2%", "217.7%", "229.1%", "243.4%", "257.8%", "272.1%"]}, "Q桂子仙机白玉萝卜伤害": {"name": "Q桂子仙机白玉萝卜伤害", "type": "攻击力", "plus": 1, "value": ["72.2%", "77.6%", "83.0%", "90.2%", "95.6%", "101.0%", "108.2%", "115.5%", "122.7%", "129.9%", "137.1%", "144.3%", "153.3%", "162.4%", "171.4%"]}, "Q桂子仙机白玉萝卜治疗量": {"name": "Q桂子仙机白玉萝卜治疗量", "type": "生命值", "plus": 1, "value": ["2.02%+194.21", "2.17%+213.64", "2.32%+234.68", "2.52%+257.34", "2.67%+281.62", "2.82%+307.52", "3.03%+335.04", "3.23%+364.17", "3.43%+394.93", "3.63%+427.30", "3.83%+461.29", "4.03%+496.90", "4.29%+534.13", "4.54%+572.98", "4.79%+613.45"]}}, "艾尔海森": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["49.5%", "53.6%", "57.6%", "63.3%", "67.4%", "72.0%", "78.3%", "84.7%", "91.0%", "97.9%", "104.8%", "111.7%", "118.6%", "125.5%", "132.5%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.3%+55.3%", "59.8%+59.8%", "64.2%+64.2%", "70.7%+70.7%", "75.2%+75.2%", "80.3%+80.3%", "87.4%+87.4%", "94.4%+94.4%", "101.5%+101.5%", "109.2%+109.2%", "116.9%+116.9%", "124.6%+124.6%", "132.4%+132.4%", "140.1%+140.1%", "147.8%+147.8%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E突进攻击伤害": {"name": "E突进攻击伤害", "type": "攻击", "plus": 1, "value": ["193.6%+154.9%", "208.1%+166.5%", "222.6%+178.1%", "242.0%+193.6%", "256.5%+205.2%", "271.0%+216.8%", "290.4%+232.3%", "309.8%+247.8%", "329.1%+263.3%", "348.5%+278.8%", "367.8%+294.3%", "387.2%+309.8%", "411.4%+329.1%", "435.6%+348.5%", "459.8%+367.8%"]}, "E突进攻击伤害(蔓激化)": {"name": "E突进攻击伤害(蔓激化)", "type": "攻击", "plus": 1, "value": ["193.6%+154.9%", "208.1%+166.5%", "222.6%+178.1%", "242.0%+193.6%", "256.5%+205.2%", "271.0%+216.8%", "290.4%+232.3%", "309.8%+247.8%", "329.1%+263.3%", "348.5%+278.8%", "367.8%+294.3%", "387.2%+309.8%", "411.4%+329.1%", "435.6%+348.5%", "459.8%+367.8%"]}, "E1枚光幕攻击伤害": {"name": "E1枚光幕攻击伤害", "type": "攻击", "plus": 1, "value": ["67.2%+134.4%", "72.2%+144.5%", "77.3%+154.6%", "84.0%+168.0%", "89.0%+178.1%", "94.1%+188.2%", "100.8%+201.6%", "107.5%+215.0%", "114.2%+228.5%", "121.0%+241.9%", "127.7%+255.4%", "134.4%+268.8%", "142.8%+285.6%", "151.2%+302.4%", "159.6%+319.2%"]}, "E1枚光幕攻击伤害(蔓激化)": {"name": "E1枚光幕攻击伤害(蔓激化)", "type": "攻击", "plus": 1, "value": ["67.2%+134.4%", "72.2%+144.5%", "77.3%+154.6%", "84.0%+168.0%", "89.0%+178.1%", "94.1%+188.2%", "100.8%+201.6%", "107.5%+215.0%", "114.2%+228.5%", "121.0%+241.9%", "127.7%+255.4%", "134.4%+268.8%", "142.8%+285.6%", "151.2%+302.4%", "159.6%+319.2%"]}, "E2枚光幕攻击伤害": {"name": "E2枚光幕攻击伤害", "type": "攻击", "plus": 2, "value": ["67.2%+134.4%", "72.2%+144.5%", "77.3%+154.6%", "84.0%+168.0%", "89.0%+178.1%", "94.1%+188.2%", "100.8%+201.6%", "107.5%+215.0%", "114.2%+228.5%", "121.0%+241.9%", "127.7%+255.4%", "134.4%+268.8%", "142.8%+285.6%", "151.2%+302.4%", "159.6%+319.2%"]}, "E3枚光幕攻击伤害": {"name": "E3枚光幕攻击伤害", "type": "攻击", "plus": 3, "value": ["67.2%+134.4%", "72.2%+144.5%", "77.3%+154.6%", "84.0%+168.0%", "89.0%+178.1%", "94.1%+188.2%", "100.8%+201.6%", "107.5%+215.0%", "114.2%+228.5%", "121.0%+241.9%", "127.7%+255.4%", "134.4%+268.8%", "142.8%+285.6%", "151.2%+302.4%", "159.6%+319.2%"]}, "Q单次伤害": {"name": "Q单次伤害", "type": "攻击", "plus": 1, "value": ["121.6%+97.3%", "130.7%+104.6%", "139.8%+111.9%", "152.0%+121.6%", "161.1%+128.9%", "170.2%+136.2%", "182.4%+145.9%", "194.6%+155.6%", "206.7%+165.4%", "218.9%+175.1%", "231.0%+184.8%", "243.2%+194.6%", "258.4%+206.7%", "273.6%+218.9%", "288.8%+231.0%"]}, "Q单次伤害(蔓激化)": {"name": "Q单次伤害(蔓激化)", "type": "攻击", "plus": 1, "value": ["121.6%+97.3%", "130.7%+104.6%", "139.8%+111.9%", "152.0%+121.6%", "161.1%+128.9%", "170.2%+136.2%", "182.4%+145.9%", "194.6%+155.6%", "206.7%+165.4%", "218.9%+175.1%", "231.0%+184.8%", "243.2%+194.6%", "258.4%+206.7%", "273.6%+218.9%", "288.8%+231.0%"]}}, "迪希雅": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["62.1%", "67.2%", "72.2%", "79.5%", "84.5%", "90.3%", "98.2%", "106.2%", "114.1%", "122.8%", "131.5%", "140.1%", "148.8%", "157.5%", "166.1%"]}, "A重击循环伤害": {"name": "A重击循环伤害", "type": "攻击力", "plus": 1, "value": ["56.3%", "60.9%", "65.5%", "72.0%", "76.6%", "81.9%", "89.1%", "96.3%", "103.5%", "111.3%", "119.2%", "127.1%", "134.9%", "142.8%", "150.7%"]}, "A重击终结伤害": {"name": "A重击终结伤害", "type": "攻击力", "plus": 1, "value": ["102%", "110%", "118%", "130%", "139%", "148%", "161%", "174%", "187%", "201%", "215%", "230%", "244%", "258%", "272%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["186%", "201%", "217%", "238%", "253%", "271%", "295%", "318%", "342%", "368%", "394%", "420%", "446%", "472%", "498%"]}, "E净焰昂藏伤害": {"name": "E净焰昂藏伤害", "type": "攻击力", "plus": 1, "value": ["112.9%", "121.3%", "129.8%", "141.1%", "149.6%", "158.0%", "169.3%", "180.6%", "191.9%", "203.2%", "214.5%", "225.8%", "239.9%", "254.0%", "268.1%"]}, "E净焰昂藏伤害(蒸发)": {"name": "E净焰昂藏伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["112.9%", "121.3%", "129.8%", "141.1%", "149.6%", "158.0%", "169.3%", "180.6%", "191.9%", "203.2%", "214.5%", "225.8%", "239.9%", "254.0%", "268.1%"]}, "E剑域炽焰伤害": {"name": "E剑域炽焰伤害", "type": "攻击力", "plus": 1, "value": ["132.8%", "142.8%", "152.7%", "166.0%", "176.0%", "185.9%", "199.2%", "212.5%", "225.8%", "239.0%", "252.3%", "265.6%", "282.2%", "298.8%", "315.4%"]}, "E剑域炽焰伤害(蒸发)": {"name": "E剑域炽焰伤害(蒸发)", "type": "攻击力", "plus": 1, "value": ["132.8%", "142.8%", "152.7%", "166.0%", "176.0%", "185.9%", "199.2%", "212.5%", "225.8%", "239.0%", "252.3%", "265.6%", "282.2%", "298.8%", "315.4%"]}, "E领域伤害": {"name": "E领域伤害", "type": "攻击", "plus": 1, "value": ["60.2%+1.03%", "64.7%+1.11%", "69.2%+1.19%", "75.2%+1.29%", "79.8%+1.37%", "84.3%+1.44%", "90.3%+1.55%", "96.3%+1.65%", "102.3%+1.75%", "108.4%+1.86%", "114.4%+1.96%", "120.4%+2.06%", "127.9%+2.19%", "135.5%+2.32%", "143.0%+2.45%"]}, "E领域伤害(蒸发)": {"name": "E领域伤害(蒸发)", "type": "攻击", "plus": 1, "value": ["60.2%+1.03%", "64.7%+1.11%", "69.2%+1.19%", "75.2%+1.29%", "79.8%+1.37%", "84.3%+1.44%", "90.3%+1.55%", "96.3%+1.65%", "102.3%+1.75%", "108.4%+1.86%", "114.4%+1.96%", "120.4%+2.06%", "127.9%+2.19%", "135.5%+2.32%", "143.0%+2.45%"]}, "Q炽鬃拳伤害": {"name": "Q炽鬃拳伤害", "type": "攻击", "plus": 1, "value": ["98.7%+1.69%", "106.1%+1.82%", "113.5%+1.95%", "123.4%+2.11%", "130.8%+2.24%", "138.2%+2.37%", "148.0%+2.54%", "157.9%+2.71%", "167.8%+2.88%", "177.7%+3.05%", "187.5%+3.21%", "197.4%+3.38%", "209.7%+3.60%", "222.1%+3.81%", "234.4%+4.02%"]}, "Q炽鬃拳伤害(蒸发)": {"name": "Q炽鬃拳伤害(蒸发)", "type": "攻击", "plus": 1, "value": ["98.7%+1.69%", "106.1%+1.82%", "113.5%+1.95%", "123.4%+2.11%", "130.8%+2.24%", "138.2%+2.37%", "148.0%+2.54%", "157.9%+2.71%", "167.8%+2.88%", "177.7%+3.05%", "187.5%+3.21%", "197.4%+3.38%", "209.7%+3.60%", "222.1%+3.81%", "234.4%+4.02%"]}, "Q焚落踢伤害": {"name": "Q焚落踢伤害", "type": "攻击", "plus": 1, "value": ["139.3%+2.39%", "149.7%+2.57%", "160.2%+2.75%", "174.1%+2.99%", "184.6%+3.16%", "195.0%+3.34%", "209.0%+3.58%", "222.9%+3.82%", "236.8%+4.06%", "250.7%+4.30%", "264.7%+4.54%", "278.6%+4.78%", "296.0%+5.07%", "313.4%+5.37%", "330.8%+5.67%"]}, "Q焚落踢伤害(蒸发)": {"name": "Q焚落踢伤害(蒸发)", "type": "攻击", "plus": 1, "value": ["139.3%+2.39%", "149.7%+2.57%", "160.2%+2.75%", "174.1%+2.99%", "184.6%+3.16%", "195.0%+3.34%", "209.0%+3.58%", "222.9%+3.82%", "236.8%+4.06%", "250.7%+4.30%", "264.7%+4.54%", "278.6%+4.78%", "296.0%+5.07%", "313.4%+5.37%", "330.8%+5.67%"]}}, "米卡": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["43.3%", "46.8%", "50.3%", "55.3%", "58.9%", "62.9%", "68.4%", "74.0%", "79.5%", "85.5%", "91.6%", "97.6%", "103.6%", "109.7%", "115.7%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["112.7%", "121.9%", "131.1%", "144.2%", "153.4%", "163.9%", "178.3%", "192.7%", "207.1%", "222.9%", "238.6%", "254.3%", "270.1%", "285.8%", "301.5%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E霜流矢伤害": {"name": "E霜流矢伤害", "type": "攻击力", "plus": 1, "value": ["67.20%", "72.24%", "77.28%", "84.00%", "89.04%", "94.08%", "100.80%", "107.52%", "114.24%", "120.96%", "127.68%", "134.40%", "142.80%", "151.20%", "159.60%"]}, "E冰星信标伤害": {"name": "E冰星信标伤害", "type": "攻击力", "plus": 1, "value": ["84.00%", "90.30%", "96.60%", "105.00%", "111.30%", "117.60%", "126.00%", "134.40%", "142.80%", "151.20%", "159.60%", "168.00%", "178.50%", "189.00%", "199.50%"]}, "E冰星破片伤害": {"name": "E冰星破片伤害", "type": "攻击力", "plus": 1, "value": ["25.20%", "27.09%", "28.98%", "31.50%", "33.39%", "35.28%", "37.80%", "40.32%", "42.84%", "45.36%", "47.88%", "50.40%", "53.55%", "56.70%", "59.85%"]}, "Q施放回复量": {"name": "Q施放回复量", "type": "生命值", "plus": 1, "value": ["12.2%+1172.04", "13.1%+1289.26", "14.0%+1416.24", "15.2%+1553.00", "16.1%+1699.52", "17.0%+1855.82", "18.3%+2021.88", "19.5%+2197.71", "20.7%+2383.31", "21.9%+2578.67", "23.1%+2783.81", "24.3%+2998.71", "25.9%+3223.38", "27.4%+3457.82", "28.9%+3702.03"]}, "Q鹰翎回复量": {"name": "Q鹰翎回复量", "type": "生命值", "plus": 1, "value": ["2.4%+233.95", "2.6%+257.35", "2.8%+282.70", "3.0%+310.00", "3.2%+339.25", "3.4%+370.45", "3.6%+403.59", "3.9%+438.69", "4.1%+475.74", "4.4%+514.74", "4.6%+555.69", "4.9%+598.58", "5.2%+643.43", "5.5%+690.23", "5.8%+738.98"]}, "Q鹰翎回复间隔": {"name": "Q鹰翎回复间隔", "type": "攻击力", "plus": 1, "value": ["2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5", "2.5"]}}, "旅行者(风)": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.5%", "48.1%", "51.7%", "56.9%", "60.5%", "64.6%", "70.3%", "76.0%", "81.7%", "87.9%", "94.1%", "100.3%", "106.5%", "112.7%", "118.9%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.9%+72.2%", "60.4%+78.1%", "65.0%+84.0%", "71.5%+92.4%", "76.1%+98.3%", "81.2%+105.0%", "88.4%+114.2%", "95.6%+123.5%", "102.7%+132.7%", "110.5%+142.8%", "118.3%+152.9%", "126.1%+163.0%", "133.9%+173.0%", "141.7%+183.1%", "149.5%+193.2%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E初始切割伤害": {"name": "E初始切割伤害", "type": "攻击力", "plus": 1, "value": ["12.0%", "12.9%", "13.8%", "15.0%", "15.9%", "16.8%", "18.0%", "19.2%", "20.4%", "21.6%", "22.8%", "24.0%", "25.5%", "27.0%", "28.5%"]}, "E最大切割伤害": {"name": "E最大切割伤害", "type": "攻击力", "plus": 1, "value": ["16.8%", "18.1%", "19.3%", "21.0%", "22.3%", "23.5%", "25.2%", "26.9%", "28.6%", "30.2%", "31.9%", "33.6%", "35.7%", "37.8%", "39.9%"]}, "E初始爆风伤害": {"name": "E初始爆风伤害", "type": "攻击力", "plus": 1, "value": ["176%", "189%", "202%", "220%", "233%", "246%", "264%", "282%", "299%", "317%", "334%", "352%", "374%", "396%", "418%"]}, "E最大爆风伤害": {"name": "E最大爆风伤害", "type": "攻击力", "plus": 1, "value": ["192%", "206%", "221%", "240%", "254%", "269%", "288%", "307%", "326%", "346%", "365%", "384%", "408%", "432%", "456%"]}, "Q龙卷风伤害": {"name": "Q龙卷风伤害", "type": "攻击力", "plus": 1, "value": ["80.8%", "86.9%", "92.9%", "101.0%", "107.1%", "113.1%", "121.2%", "129.3%", "137.4%", "145.4%", "153.5%", "161.6%", "171.7%", "181.8%", "191.9%"]}, "Q附加元素伤害": {"name": "Q附加元素伤害", "type": "攻击力", "plus": 1, "value": ["24.8%", "26.7%", "28.5%", "31.0%", "32.9%", "34.7%", "37.2%", "39.7%", "42.2%", "44.6%", "47.1%", "49.6%", "52.7%", "55.8%", "58.9%"]}}, "旅行者(雷)": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.5%", "48.1%", "51.7%", "56.9%", "60.5%", "64.6%", "70.3%", "76.0%", "81.7%", "87.9%", "94.1%", "100.3%", "106.5%", "112.7%", "118.9%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.9%+72.2%", "60.4%+78.1%", "65.0%+84.0%", "71.5%+92.4%", "76.1%+98.3%", "81.2%+105.0%", "88.4%+114.2%", "95.6%+123.5%", "102.7%+132.7%", "110.5%+142.8%", "118.3%+152.9%", "126.1%+163.0%", "133.9%+173.0%", "141.7%+183.1%", "149.5%+193.2%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["79%", "85%", "90%", "98%", "104%", "110%", "118%", "126%", "134%", "142%", "149%", "157%", "167%", "177%", "187%"]}, "Q伤害": {"name": "Q伤害", "type": "攻击力", "plus": 1, "value": ["114.4%", "123.0%", "131.6%", "143.0%", "151.6%", "160.2%", "171.6%", "183.0%", "194.5%", "205.9%", "217.4%", "228.8%", "243.1%", "257.4%", "271.7%"]}, "Q威光落雷伤害": {"name": "Q威光落雷伤害", "type": "攻击力", "plus": 1, "value": ["32.8%", "35.3%", "37.7%", "41.0%", "43.5%", "45.9%", "49.2%", "52.5%", "55.8%", "59.0%", "62.3%", "65.6%", "69.7%", "73.8%", "77.9%"]}}, "旅行者(岩)": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.5%", "48.1%", "51.7%", "56.9%", "60.5%", "64.6%", "70.3%", "76.0%", "81.7%", "87.9%", "94.1%", "100.3%", "106.5%", "112.7%", "118.9%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.9%+72.2%", "60.4%+78.1%", "65.0%+84.0%", "71.5%+92.4%", "76.1%+98.3%", "81.2%+105.0%", "88.4%+114.2%", "95.6%+123.5%", "102.7%+132.7%", "110.5%+142.8%", "118.3%+152.9%", "126.1%+163.0%", "133.9%+173.0%", "141.7%+183.1%", "149.5%+193.2%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["248%", "267%", "285%", "310%", "329%", "347%", "372%", "397%", "422%", "446%", "471%", "496%", "527%", "558%", "589%"]}, "Q地震波单次伤害": {"name": "Q地震波单次伤害", "type": "攻击力", "plus": 1, "value": ["148%", "159%", "170%", "185%", "196%", "207%", "222%", "237%", "252%", "266%", "281%", "296%", "314%", "333%", "352%"]}}, "旅行者(草)": {"A一段伤害": {"name": "A一段伤害", "type": "攻击力", "plus": 1, "value": ["44.5%", "48.1%", "51.7%", "56.9%", "60.5%", "64.6%", "70.3%", "76.0%", "81.7%", "87.9%", "94.1%", "100.3%", "106.5%", "112.7%", "118.9%"]}, "A重击伤害": {"name": "A重击伤害", "type": "攻击力", "plus": 1, "value": ["55.9%+72.2%", "60.4%+78.1%", "65.0%+84.0%", "71.5%+92.4%", "76.1%+98.3%", "81.2%+105.0%", "88.4%+114.2%", "95.6%+123.5%", "102.7%+132.7%", "110.5%+142.8%", "118.3%+152.9%", "126.1%+163.0%", "133.9%+173.0%", "141.7%+183.1%", "149.5%+193.2%"]}, "A高空下落伤害": {"name": "A高空下落伤害", "type": "攻击力", "plus": 1, "value": ["160%", "173%", "186%", "204%", "217%", "232%", "253%", "273%", "293%", "316%", "338%", "360%", "382%", "405%", "427%"]}, "E伤害": {"name": "E伤害", "type": "攻击力", "plus": 1, "value": ["230%", "248%", "265%", "288%", "305%", "323%", "346%", "369%", "392%", "415%", "438%", "461%", "490%", "518%", "547%"]}, "Q草灯莲攻击伤害": {"name": "Q草灯莲攻击伤害", "type": "攻击力", "plus": 1, "value": ["80.2%", "86.2%", "92.2%", "100.2%", "106.2%", "112.2%", "120.2%", "128.3%", "136.3%", "144.3%", "152.3%", "160.3%", "170.3%", "180.4%", "190.4%"]}, "Q草灯莲攻击伤害(蔓激化)": {"name": "Q草灯莲攻击伤害(蔓激化)", "type": "攻击力", "plus": 1, "value": ["80.2%", "86.2%", "92.2%", "100.2%", "106.2%", "112.2%", "120.2%", "128.3%", "136.3%", "144.3%", "152.3%", "160.3%", "170.3%", "180.4%", "190.4%"]}, "Q激烈爆发伤害": {"name": "Q激烈爆发伤害", "type": "攻击力", "plus": 1, "value": ["400.8%", "430.9%", "460.9%", "501.0%", "531.1%", "561.1%", "601.2%", "641.3%", "681.4%", "721.4%", "761.5%", "801.6%", "851.7%", "901.8%", "951.9%"]}}} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/effect/char_effect.json b/GenshinUID/genshinuid_enka/effect/char_effect.json new file mode 100644 index 00000000..72b6218f --- /dev/null +++ b/GenshinUID/genshinuid_enka/effect/char_effect.json @@ -0,0 +1,2984 @@ +{ + "神里绫华": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "AB:dmgBonus+30", + "70": "dmgBonus+18" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "d+30", + "5": "", + "6": "B:dmgBonus+298" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "琴": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "E:dmgBonus+40", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "旅行者": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "丽莎": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "d+15" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "芭芭拉": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "HydroDmgBonus+15", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "HydroDmgBonus+15", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "凯亚": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "AB:critRate+15", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "迪卢克": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "ABCE:dmgBonus+20" + }, + "fight_talent": { + "1": "dmgBonus+15", + "2": "addAtk+30", + "3": "", + "4": "E:dmgBonus+40", + "5": "", + "6": "A:dmgBonus+30" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "雷泽": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "dmgBonus+10", + "2": "", + "3": "", + "4": "d+15", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "安柏": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "Q:critRate+10", + "70": "addAtk+15" + }, + "fight_talent": { + "1": "", + "2": "E:dmgBonus+200", + "3": "", + "4": "", + "5": "", + "6": "addAtk+15" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "温迪": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "AnemoResist+-12;PhysicalResist+-12", + "3": "", + "4": "dmgBonus+25", + "5": "", + "6": "Resist+-20" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "香菱": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "addAtk+10" + }, + "fight_talent": { + "1": "PyroResist+-15", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "EQ:dmgBonus+15" + }, + "group_skill": { + "50": "", + "70": "addAtk+10" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "北斗": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "AB:dmgBonus+15" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "ElectroResist+-15" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "行秋": { + "normal": { + "normal_skill": { + "50": "", + "70": "dmgBonus+20" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "HydroResist+-15", + "3": "", + "4": "E:dmgBonus+50", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "魈": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "dmgBonus+15", + "70": "E:dmgBonus+15" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "addDef+100", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "凝光": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "dmgBonus+12" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "GeoDmgBonus+12" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "可莉": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "B:dmgBonus+50", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "d+23", + "3": "", + "4": "", + "5": "", + "6": "dmgBonus+10" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "PyroDmgBonus+10" + } + } + }, + "钟离": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "ABC:addDmg+1.39%hp;E:addDmg+1.9%hp;Q:addDmg+33%hp" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "菲谢尔": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "A:addDmg+22%atk", + "2": "召唤伤害:addDmg+200%atk", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "班尼特": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "energyRecharge+30", + "3": "", + "4": "", + "5": "", + "6": "dmgBonus+15" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "PyroDmgBonus+15" + } + } + }, + "达达利亚": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "诺艾尔": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "B:dmgBonus+15", + "3": "", + "4": "", + "5": "", + "6": "exAtk+50%def" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "七七": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "AB:dmgBonus+15", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "重云": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "CryoResist+-10" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "Q:dmgBonus+15" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "甘雨": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "B:critRate+20", + "70": "BE:dmgBonus+20" + }, + "fight_talent": { + "1": "CryoResist+-15", + "2": "", + "3": "", + "4": "dmgBonus+15", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "CryoDmgBonus+20" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "dmgBonus+15", + "5": "", + "6": "" + } + } + }, + "阿贝多": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "E:dmgBonus+12", + "70": "elementalMastery+125" + }, + "fight_talent": { + "1": "", + "2": "Q:addDmg+120%def", + "3": "", + "4": "C:dmgBonus+30", + "5": "", + "6": "dmgBonus+17" + }, + "group_skill": { + "50": "", + "70": "elementalMastery+125" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "C:dmgBonus+30", + "5": "", + "6": "dmgBonus+17" + } + } + }, + "迪奥娜": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "E:dmgBonus+15;shieldBonus+15", + "3": "", + "4": "", + "5": "", + "6": "elementalMastery+200" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "elementalMastery+200" + } + } + }, + "莫娜": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "dmgBonus+20%energyrecharge" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "B:dmgBonus+180" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "刻晴": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "Q:critRate+15;energyRecharge+15" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "addAtk+25", + "5": "", + "6": "dmgBonus+18" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "砂糖": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "elementalMastery+50", + "70": "elementalMastery+20%elementalMastery" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "dmgBonus+20" + } + } + }, + "辛焱": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "physicalDmgBonus+15" + }, + "fight_talent": { + "1": "", + "2": "Q:critRate+100", + "3": "", + "4": "PhysicalResist+-15", + "5": "", + "6": "B:exAtk+50%def" + }, + "group_skill": { + "50": "", + "70": "physicalDmgBonus+15" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "罗莎莉亚": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "E:critRate+12", + "70": "" + }, + "fight_talent": { + "1": "A:dmgBonus+10", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "PhysicalResist+-20" + }, + "group_skill": { + "50": "", + "70": "critRate+15%critRate" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "胡桃": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "dmgBonus+33" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "critRate+12" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "枫原万叶": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "dmgBonus+0.04%elementalMastery" + }, + "fight_talent": { + "1": "", + "2": "elementalMastery+200", + "3": "", + "4": "", + "5": "", + "6": "ABC:dmgBonus+0.2%elementalMastery" + }, + "group_skill": { + "50": "", + "70": "dmgBonus+0.04%elementalMastery" + }, + "group_talent": { + "1": "", + "2": "elementalMastery+200", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "烟绯": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "B:dmgBonus+15", + "70": "B:addDmg+80%atk" + }, + "fight_talent": { + "1": "", + "2": "B:critRate+20", + "3": "", + "4": "", + "5": "", + "6": "B:dmgBonus+10" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "宵宫": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "dmgBonus+20", + "70": "" + }, + "fight_talent": { + "1": "addAtk+20", + "2": "dmgBonus+25", + "3": "", + "4": "", + "5": "", + "6": "A:dmgBonus+30" + }, + "group_skill": { + "50": "", + "70": "addAtk+15" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "托马": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "E:addDmg+2.2%hp" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "ABC:dmgBonus+15" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "ABC:dmgBonus+15" + } + } + }, + "优菈": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "dmgBonus+30", + "2": "", + "3": "", + "4": "Q:dmgBonus+25", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "雷电将军": { + "normal": { + "normal_skill": { + "50": "", + "70": "dmgBonus+40%energyRecharge" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "Q:ignoreDef+60", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "addAtk+30", + "5": "", + "6": "" + } + } + }, + "早柚": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "Q:addDmg+0.2%elementalMastery" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "珊瑚宫心海": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "dmgBonus+40" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "五郎": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "addDef+25", + "70": "E:addDmg+156%def;Q:addDmg+15.6%def" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "addDef+25", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "critDmg+40" + } + } + }, + "九条裟罗": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "critDmg+60" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "critDmg+60" + } + } + }, + "荒泷一斗": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "荒泷逆袈裟连斩伤害:addDmg+35%def;荒泷逆袈裟终结伤害:addDmg+35%def" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "addAtk+20;addDef+20", + "5": "", + "6": "B:critDmg+70" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "addAtk+20;addDef+20", + "5": "", + "6": "" + } + } + }, + "八重神子": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "E:dmgBonus+0.15%elementalMastery" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "dmgBonus+20", + "5": "", + "6": "E:ignoreDef+60" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "ElectroDmgBonus+20", + "5": "", + "6": "" + } + } + }, + "夜兰": { + "normal": { + "normal_skill": { + "50": "hp+52", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "dmgBonus+15" + }, + "fight_talent": { + "1": "", + "2": "Q:addDmg+14%hp", + "3": "", + "4": "hp+20", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "dmgBonus+15" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "hp+20", + "5": "", + "6": "" + } + } + }, + "埃洛伊": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "addAtk+16", + "70": "BEQ:dmgBonus+35" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "申鹤": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "dmgBonus+15", + "70": "Q:dmgBonus+15" + }, + "fight_talent": { + "1": "", + "2": "EQ:critDmg+15", + "3": "", + "4": "E:dmgBonus+105", + "5": "", + "6": "" + }, + "group_skill": { + "50": "dmgBonus+15", + "70": "ABC:dmgBonus+15" + }, + "group_talent": { + "1": "", + "2": "critDmg+15", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "云堇": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "A:dmgBonus+15", + "3": "", + "4": "addDef+20", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "A:dmgBonus+15", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "久岐忍": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "E:addDmg+25%elementalMastery;E:addHeal+75%elementalMastery" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "ABC:addDmg+9.7%hp", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "神里绫人": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "E:dmgBonus+40", + "2": "addHp+50", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "阿葵丽雅": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "瑶瑶": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "鹿野院平藏": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "E:critDmg+32" + }, + "group_skill": { + "50": "", + "70": "elementalMastery+80" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "柯莱": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "energyRecharge+20", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "elementalMastery+60", + "5": "", + "6": "" + } + } + }, + "提纳里": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "elementalMastery+50", + "70": "B:dmgBonus+60%0.06%elementalMastery" + }, + "fight_talent": { + "1": "B:critRate+15", + "2": "dmgBonus+20", + "3": "", + "4": "elementalMastery+60", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "多莉": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "赛诺": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "Q:addDmg+150%elementalMastery" + }, + "fight_talent": { + "1": "", + "2": "dmgBonus+50", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "妮露": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "critRate+30%0.0006%hp;critDmg+60%0.0012%hp" + } + }, + "fight": { + "fight_skill": { + "50": "elementalMastery+100", + "70": "" + }, + "fight_talent": { + "1": "水月:dmgBonus+65", + "2": "HydroResist+-35;DendroResist+-35", + "3": "", + "4": "Q:dmgBonus+50", + "5": "", + "6": "" + }, + "group_skill": { + "50": "elementalMastery+100", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "坎蒂丝": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "A:dmgBonus+0.05%hp" + }, + "fight_talent": { + "1": "", + "2": "addHp+20", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "A:dmgBonus+0.05%hp" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "纳西妲": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "灭净三业:dmgBonus+80%10%elementalMastery;业障除:dmgBonus+80%10%elementalMastery" + }, + "fight_talent": { + "1": "", + "2": "d+30", + "3": "", + "4": "elementalMastery+160", + "5": "", + "6": "" + }, + "group_skill": { + "50": "elementalMastery+25%elementalMastery", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "莱依拉": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "飞星伤害:addDmg+1.5%hp" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "AB:addDmg+5%hp", + "5": "", + "6": "飞星伤害:dmgBonus+40;星光弹伤害:dmgBonus+40" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "流浪者": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "Q:dmgBonus+200", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "珐露珊": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "addDmg+45.9%baseAtk" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "critDmg+40" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "旅行者(风)": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "energyRecharge+16", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "Resist+-20" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "旅行者(岩)": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "critRate+10", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "旅行者(雷)": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "ElectroResist+-15", + "3": "", + "4": "", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "旅行者(草)": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "elementalMastery+60", + "70": "Q:dmgBonus+0.12%elementalMastery;光幕攻击伤害:dmgBonus+0.12%elementalMastery" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "dmgBonus+12" + }, + "group_skill": { + "50": "elementalMastery+60", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "dmgBonus+12" + } + } + }, + "艾尔海森": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "E:dmgBonus+100%0.15%elementalMastery;Q:dmgBonus+100%0.1%elementalMastery" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "critDmg+70;critRate+10" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "elementalMastery+90", + "5": "", + "6": "" + } + } + }, + "瑶瑶": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "DendroDmgBonus+15", + "2": "", + "3": "", + "4": "elementalMastery+120%0.3%hp", + "5": "", + "6": "" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "DendroDmgBonus+15", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "迪希雅": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "addHp+15;E:addDmg+5.2%hp;Q:addDmg+8.4%hp", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "Q:critRate+10;Q:critDmg+60" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + }, + "米卡": { + "normal": { + "normal_skill": { + "50": "", + "70": "" + }, + "normal_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + }, + "fight": { + "fight_skill": { + "50": "", + "70": "" + }, + "fight_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "A:critDmg+60" + }, + "group_skill": { + "50": "", + "70": "" + }, + "group_talent": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "", + "6": "" + } + } + } +} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/effect/dmg_map.json b/GenshinUID/genshinuid_enka/effect/dmg_map.json new file mode 100644 index 00000000..6f82a24d --- /dev/null +++ b/GenshinUID/genshinuid_enka/effect/dmg_map.json @@ -0,0 +1 @@ +{"胡桃": [{"skill": "A重击伤害(蒸发)", "value": 53386.94877412422, "seq": "护摩之杖|追忆之注连|生火暴", "critRate": 0.7000000000000001, "critDmg": 2.056, "atk": 4039.8860032000002, "other": {"生命": 35355.232, "元素精通": 80.0}}, {"skill": "A重击伤害(蒸发)", "value": 57740.61478722524, "seq": "护摩之杖|追忆之注连|精火暴", "critRate": 0.7000000000000001, "critDmg": 2.056, "atk": 3477.5008, "other": {"生命": 28108.0, "元素精通": 267.0}}, {"skill": "A重击伤害(蒸发)", "value": 46743.00694572758, "seq": "匣里灭辰|追忆之注连|生火暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 3005.5919872, "other": {"生命": 32244.832, "元素精通": 301.0}}, {"skill": "A重击伤害(蒸发)", "value": 43824.0067038785, "seq": "决斗之枪|追忆之注连|精火暴", "critRate": 0.7999999999999999, "critDmg": 1.93, "atk": 2752.85696, "other": {"生命": 24997.600000000002, "元素精通": 267.0}}, {"skill": "A重击伤害(蒸发)", "value": 51430.721148416014, "seq": "护摩之杖|炽烈的炎之魔女|生火暴", "critRate": 0.7000000000000001, "critDmg": 2.056, "atk": 3911.3660032000007, "other": {}}, {"skill": "A重击伤害(蒸发)", "value": 54026.46460369234, "seq": "护摩之杖|炽烈的炎之魔女|精火暴", "critRate": 0.7000000000000001, "critDmg": 2.056, "atk": 3348.9808000000003, "other": {}}, {"skill": "A重击伤害(蒸发)", "value": 44569.63379842758, "seq": "匣里灭辰|炽烈的炎之魔女|生火暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 2904.7919872, "other": {}}, {"skill": "A重击伤害(蒸发)", "value": 43179.15870616433, "seq": "匣里灭辰|炽烈的炎之魔女|精火暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 2472.85696, "other": {}}], "托马": [{"skill": "E护盾吸收量上限", "value": 13854.622032, "seq": "西风长枪|绝缘之旗印千岩牢固|充生暴", "critRate": 0.7, "critDmg": "any", "atk": 1492.18, "other": {"生命": 23024.546, "充能效率": 2.224}}, {"skill": "E护盾吸收量上限", "value": 18046.115352, "seq": "黑缨枪|绝缘之旗印千岩牢固|充生生", "critRate": "any", "critDmg": "any", "atk": 1167.24, "other": {"生命": 33717.130999999994, "充能效率": 1.918}}], "宵宫": [{"skill": "A一段伤害", "value": 7089.366766962436, "seq": "飞雷之弦振|追忆之注连|攻火暴", "critRate": 0.8, "critDmg": 1.8559999999999999, "atk": 2308.926, "other": {}}, {"skill": "A一段伤害", "value": 6856.8701182019595, "seq": "弓藏|追忆之注连|攻火暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 2276.047, "other": {}}], "烟绯": [{"skill": "A重击伤害(蒸发)", "value": 35355.2635135044, "seq": "四风原典|流浪大地的乐团|攻火暴", "critRate": 0.768, "critDmg": 1.536, "atk": 1808.568, "other": {"元素精通": 160.0}}, {"skill": "A重击伤害(蒸发)", "value": 39960.35636679036, "seq": "流浪乐章|流浪大地的乐团|攻火暴", "critRate": 0.7402500000000001, "critDmg": 1.4805000000000001, "atk": 1635.5, "other": {"元素精通": 640.0}}], "可莉": [{"skill": "A重击伤害(蒸发)", "value": 36017.470103856205, "seq": "四风原典|炽烈的炎之魔女|攻火暴", "critRate": 0.768, "critDmg": 1.536, "atk": 1933.954, "other": {"元素精通": 80.0}}, {"skill": "A重击伤害(蒸发)", "value": 41469.15074467482, "seq": "流浪乐章|炽烈的炎之魔女|攻火暴", "critRate": 0.7402500000000001, "critDmg": 1.4805000000000001, "atk": 1760.886, "other": {"元素精通": 560.0}}], "迪卢克": [{"skill": "Q斩击伤害(蒸发)", "value": 37712.22099890101, "seq": "狼的末路|炽烈的炎之魔女|精火暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 2193.228, "other": {"元素精通": 267.0}}, {"skill": "Q斩击伤害(蒸发)", "value": 33706.608095392454, "seq": "螭骨剑|炽烈的炎之魔女|攻火暴", "critRate": 0.8365, "critDmg": 1.673, "atk": 1803.27, "other": {"元素精通": 80.0}}], "辛焱": [{"skill": "Q伤害", "value": 47697.99647331423, "seq": "无工之剑|苍白之火染血的骑士道|攻物暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 2798.014, "other": {"防御": 1038.7}}, {"skill": "Q伤害", "value": 32809.409010970165, "seq": "白影剑|苍白之火染血的骑士道|攻物暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1924.6340000000002, "other": {"防御": 1739.423}}, {"skill": "E三级护盾吸收量", "value": 9617.518079999998, "seq": "祭礼大剑|千岩牢固|防防防", "critRate": "any", "critDmg": "any", "atk": 1727.36, "other": {"防御": 2723.7909999999997}}, {"skill": "E三级护盾吸收量", "value": 10807.19712, "seq": "白影剑|千岩牢固|防防防", "critRate": "any", "critDmg": "any", "atk": 1904.9, "other": {"防御": 3136.8740000000003}}], "安柏": [{"skill": "Q箭雨总伤害", "value": 38608.26212256513, "seq": "终末嗟叹之诗|昔日宗室之仪|攻火暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 2310.3860000000004, "other": {"元素精通": 240.0}}, {"skill": "A满蓄力瞄准射击", "value": 26619.34915305543, "seq": "阿莫斯之弓|流浪大地的乐团|攻火暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 2390.1620000000003, "other": {"元素精通": 160.0}}], "香菱": [{"skill": "Q旋火轮伤害(蒸发)", "value": 29492.70529685512, "seq": "薙草之稻光|绝缘之旗印|充火暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1936.61616, "other": {"元素精通": 156.0, "充能效率": 2.434}}, {"skill": "Q旋火轮伤害(蒸发)", "value": 32166.85138111173, "seq": "薙草之稻光|绝缘之旗印|精火暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1815.7978400000002, "other": {"元素精通": 343.0, "充能效率": 1.916}}, {"skill": "Q旋火轮伤害(蒸发)", "value": 28530.600854572553, "seq": "天空之脊|绝缘之旗印|充火暴", "critRate": 0.6425000000000001, "critDmg": 1.2850000000000001, "atk": 1704.45, "other": {"元素精通": 156.0, "充能效率": 2.251}}, {"skill": "Q旋火轮伤害(蒸发)", "value": 32314.717098039797, "seq": "天空之脊|绝缘之旗印|精火暴", "critRate": 0.6425000000000001, "critDmg": 1.2850000000000001, "atk": 1704.45, "other": {"元素精通": 343.0, "充能效率": 1.733}}, {"skill": "Q旋火轮伤害(蒸发)", "value": 30876.375181652355, "seq": "渔获|绝缘之旗印|充火暴", "critRate": 0.5425000000000001, "critDmg": 1.3250000000000002, "atk": 1450.25, "other": {"元素精通": 156.0, "充能效率": 2.342}}, {"skill": "Q旋火轮伤害(蒸发)", "value": 35316.25359413867, "seq": "渔获|绝缘之旗印|精火暴", "critRate": 0.5425000000000001, "critDmg": 1.3250000000000002, "atk": 1450.25, "other": {"元素精通": 343.0, "充能效率": 1.824}}], "班尼特": [{"skill": "Q伤害(蒸发)", "value": 39661.290350547235, "seq": "风鹰剑|昔日宗室之仪|充火暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1608.5, "other": {"元素精通": 80.0, "充能效率": 1.985}}, {"skill": "Q伤害(蒸发)", "value": 35344.89962409378, "seq": "天空之刃|昔日宗室之仪|充火暴", "critRate": 0.6225, "critDmg": 1.245, "atk": 1349.7, "other": {"元素精通": 80.0, "充能效率": 2.536}}, {"skill": "Q持续治疗", "value": 6774.81824579, "seq": "风鹰剑|昔日宗室之仪|充生治", "critRate": "any", "critDmg": "any", "atk": 1522, "other": {"生命值": 26673.102, "充能效率": 1.985}}, {"skill": "Q持续治疗", "value": 6774.81824579, "seq": "天空之刃|昔日宗室之仪|充生治", "critRate": "any", "critDmg": "any", "atk": 1269.8, "other": {"生命值": 26673.102, "充能效率": 2.536}}], "妮露": [{"skill": "A丰穰之核(绽放)", "value": 22607.88534819233, "seq": "圣显之钥|千岩牢固流浪大地的乐团|生生生", "critRate": "any", "critDmg": "any", "atk": 66739.63, "other": {"元素精通": 120.0, "充能效率": 1.7}}, {"skill": "A丰穰之核(绽放)", "value": 25175.510885092877, "seq": "圣显之钥|千岩牢固流浪大地的乐团|生生生", "critRate": "any", "critDmg": "any", "atk": 66739.63, "other": {"元素精通": 360.0, "充能效率": 1.2}}, {"skill": "A丰穰之核(绽放)", "value": 18610.079804023466, "seq": "磐岩结绿|千岩牢固流浪大地的乐团|生生生", "critRate": "any", "critDmg": "any", "atk": 56687.16, "other": {"元素精通": 360.0, "充能效率": 1.2}}, {"skill": "A丰穰之核(绽放)", "value": 19899.749186272347, "seq": "西福斯的月光|千岩牢固流浪大地的乐团|生生生", "critRate": "any", "critDmg": "any", "atk": 53650.16, "other": {"元素精通": 525.0, "充能效率": 1.5779999999999998}}], "坎蒂丝": [{"skill": "Q水波冲击伤害", "value": 3436.018099200001, "seq": "西风长枪|昔日宗室之仪|生生暴", "critRate": 0.5, "critDmg": 0.6, "atk": 1088, "other": {"生命值": 31663.000000000004, "充能效率": 1.9060000000000001}}, {"skill": "Q水波冲击伤害", "value": 3681.520632, "seq": "喜多院十文字|昔日宗室之仪|生生生", "critRate": "any", "critDmg": "any", "atk": 1088, "other": {"生命值": 36187.0, "充能效率": 1.7}}, {"skill": "Q水波冲击伤害", "value": 3740.1587190000005, "seq": "黑缨枪|昔日宗室之仪|充生生", "critRate": "any", "critDmg": "any", "atk": 877, "other": {"生命值": 36763.375, "充能效率": 2.068}}], "夜兰": [{"skill": "Q玄掷玲珑伤害", "value": 7417.139425152661, "seq": "若水|绝缘之旗印|充水暴", "critRate": 0.8, "critDmg": 2.076, "atk": 1254.1999999999998, "other": {"生命值3": 28478.0, "充能效率": 1.918}}, {"skill": "Q玄掷玲珑伤害", "value": 8617.394180864447, "seq": "若水|绝缘之旗印|生水暴", "critRate": 0.8, "critDmg": 2.076, "atk": 1254.1999999999998, "other": {"生命值3": 35211.7, "充能效率": 1.4}}, {"skill": "Q玄掷玲珑伤害", "value": 6080.524882270644, "seq": "终末嗟叹之诗|绝缘之旗印|生水暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 1333.4, "other": {"生命值3": 32899.7, "充能效率": 1.951}}, {"skill": "Q玄掷玲珑伤害", "value": 6128.764491061532, "seq": "西风猎弓|绝缘之旗印|生水暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 1148.6, "other": {"生命值3": 32899.7, "充能效率": 2.013}}], "神里绫人": [{"skill": "E一段瞬水剑伤害", "value": 10452.566919848408, "seq": "波乱月白经津|来歆余响|攻水暴", "critRate": 0.8, "critDmg": 1.8559999999999999, "atk": 2076.022, "other": {"生命值": 21238.0}}, {"skill": "E一段瞬水剑伤害", "value": 7190.3867934877135, "seq": "磐岩结绿|沉沦之心|攻水暴", "critRate": 0.8, "critDmg": 2.076, "atk": 2083.978, "other": {"生命值": 23981.0}}, {"skill": "E一段瞬水剑伤害", "value": 8675.170414631431, "seq": "黑剑|来歆余响|攻水暴", "critRate": 0.8, "critDmg": 1.746, "atk": 1885.3139999999999, "other": {"生命值": 21238.0}}], "珊瑚宫心海": [{"skill": "A一段伤害", "value": 8241.43136370588, "seq": "不灭月华|海染砗磲|生水治", "critRate": 0, "critDmg": 0, "atk": 1321.4, "other": {"生命值": 40639.802}}, {"skill": "A一段伤害", "value": 7173.440106852961, "seq": "试作金珀|海染砗磲|生水治", "critRate": 0, "critDmg": 0, "atk": 1203.8, "other": {"生命值": 39521.709}}, {"skill": "E治疗量", "value": 7119.967471257602, "seq": "讨龙英杰谭|千岩牢固|生生治", "critRate": 0, "critDmg": 0, "atk": 1073, "other": {"生命值": 47671.664000000004}}, {"skill": "E治疗量", "value": 7218.8039611680015, "seq": "试作金珀|千岩牢固|生生治", "critRate": 0, "critDmg": 0, "atk": 1203.8, "other": {"生命值": 48493.395000000004}}], "达达利亚": [{"skill": "Q伤害·近战(蒸发)", "value": 120257.11002258841, "seq": "冬极百星|沉沦之心流浪大地的乐团|攻水暴", "critRate": 0.768, "critDmg": 1.536, "atk": 1916.294, "other": {"元素精通": 160.0}}, {"skill": "Q伤害·近战(蒸发)", "value": 107637.6488319348, "seq": "冬极百星|沉沦之心角斗士的终幕礼|攻水暴", "critRate": 0.768, "critDmg": 1.536, "atk": 2079.9139999999998, "other": {"元素精通": 80.0}}, {"skill": "Q伤害·近战(蒸发)", "value": 91833.48932062383, "seq": "天空之翼|沉沦之心角斗士的终幕礼|攻水暴", "critRate": 0.7630000000000001, "critDmg": 1.5260000000000002, "atk": 2208.35, "other": {"元素精通": 80.0}}, {"skill": "Q伤害·近战(蒸发)", "value": 77162.43334804256, "seq": "苍翠猎弓|沉沦之心角斗士的终幕礼|攻水暴", "critRate": 0.7405, "critDmg": 1.481, "atk": 1889.206, "other": {"元素精通": 80.0}}], "行秋": [{"skill": "Q剑雨伤害", "value": 4274.701095015893, "seq": "祭礼剑|沉沦之心昔日宗室之仪|攻水暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1626.9360000000001, "other": {"生命值": 17046.4, "充能效率": 1.813}}, {"skill": "Q剑雨伤害", "value": 5755.17539043798, "seq": "磐岩结绿|绝缘之旗印|充水暴", "critRate": 0.8, "critDmg": 1.6920000000000002, "atk": 1685.8496, "other": {"生命值": 19090.8, "充能效率": 1.918}}], "莫娜": [{"skill": "Q泡影破裂伤害(蒸发)", "value": 135118.75827766486, "seq": "流浪乐章|绝缘之旗印|攻水暴", "critRate": 0.7402500000000001, "critDmg": 1.4805000000000001, "atk": 1718.502, "other": {"充能效率": 1.82, "元素精通": 80.0}}, {"skill": "Q泡影破裂伤害", "value": 25655.05922055149, "seq": "讨龙英杰谭|昔日宗室之仪|充水暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1205.4, "other": {"充能效率": 2.138}}, {"skill": "Q泡影破裂伤害", "value": 28670.92274432132, "seq": "试作金珀|昔日宗室之仪|充水暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1347.1000000000001, "other": {"充能效率": 2.138}}], "芭芭拉": [{"skill": "Q治疗量", "value": 30923.394195456003, "seq": "不灭月华|被怜爱的少女|生生治", "critRate": "any", "critDmg": "any", "atk": 1231.4, "other": {"生命值": 36274.566000000006}}, {"skill": "Q治疗量", "value": 28365.718929408005, "seq": "讨龙英杰谭|被怜爱的少女|生生治", "critRate": "any", "critDmg": "any", "atk": 983, "other": {"生命值": 34865.238}}, {"skill": "Q治疗量", "value": 28724.64908992, "seq": "试作金珀|被怜爱的少女|生生治", "critRate": "any", "critDmg": "any", "atk": 1113.8, "other": {"生命值": 35462.245}}], "流浪者": [{"skill": "E空居·不生断伤害", "value": 12642.485025967248, "seq": "图莱杜拉的回忆|沙上楼阁史话|攻风暴", "critRate": 0.7999499999999999, "critDmg": 1.6351, "atk": 2080.532, "other": {}}, {"skill": "E空居·不生断伤害", "value": 12105.523744051497, "seq": "四风原典|沙上楼阁史话|攻风暴", "critRate": 0.8, "critDmg": 1.8560000000000003, "atk": 1963.976, "other": {}}, {"skill": "E空居·不生断伤害", "value": 13448.964297218055, "seq": "流浪乐章|沙上楼阁史话|攻风暴", "critRate": 0.79995, "critDmg": 1.7451, "atk": 1692.012, "other": {}}], "珐露珊": [{"skill": "Q伤害", "value": 32921.30685915236, "seq": "终末嗟叹之诗|千岩牢固|充风暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1549.16, "other": {"充能效率": 2.269}}, {"skill": "Q伤害", "value": 27881.403211552002, "seq": "西风猎弓|千岩牢固|充风暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1312, "other": {"充能效率": 2.3310000000000004}}], "鹿野院平藏": [{"skill": "E伤害", "value": 59600.76567524704, "seq": "天空之卷|翠绿之影|攻风暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 2196.203, "other": {}}, {"skill": "E伤害", "value": 69017.30654599123, "seq": "流浪乐章|翠绿之影|攻风暴", "critRate": 0.7402500000000001, "critDmg": 1.4805000000000001, "atk": 1609.01, "other": {}}, {"skill": "E伤害", "value": 55302.14585175603, "seq": "匣里日月|翠绿之影|攻风暴", "critRate": 0.7405, "critDmg": 1.481, "atk": 1609.01, "other": {}}], "早柚": [{"skill": "Q不倒貉貉治疗量", "value": 6963.193857580801, "seq": "狼的末路|翠绿之影|精攻治", "critRate": "any", "critDmg": "any", "atk": 2408.6240000000003, "other": {"元素精通": 443.0}}, {"skill": "Q不倒貉貉治疗量", "value": 5086.871447425601, "seq": "西风大剑|翠绿之影|精攻治", "critRate": "any", "critDmg": "any", "atk": 1543.6680000000001, "other": {"元素精通": 443.0}}], "枫原万叶": [{"skill": "A扩散伤害", "value": 7029.7518706697465, "seq": "苍古自由之誓|翠绿之影|精精精", "critRate": "any", "critDmg": "any", "atk": 1397, "other": {"元素精通": 1031.0, "充能效率": 1.22}}, {"skill": "A扩散伤害", "value": 6924.401306231256, "seq": "西斯福的月光|翠绿之影|精精精", "critRate": "any", "critDmg": "any", "atk": 1279.4, "other": {"元素精通": 1001.0, "充能效率": 1.9407199999999998}}, {"skill": "A扩散伤害", "value": 6305.132411847671, "seq": "祭礼剑|翠绿之影|精精精", "critRate": "any", "critDmg": "any", "atk": 1212.1999999999998, "other": {"元素精通": 836.0, "充能效率": 1.833}}], "魈": [{"skill": "A高空下落伤害", "value": 33082.59570181664, "seq": "和璞鸢|辰砂往生录|攻风暴", "critRate": 0.8, "critDmg": 1.6360000000000001, "atk": 2301.758, "other": {}}, {"skill": "A高空下落伤害", "value": 31779.765441943833, "seq": "护摩之杖|辰砂往生录|攻风暴", "critRate": 0.8, "critDmg": 1.8559999999999999, "atk": 2354.2052000000003, "other": {"生命": 22610.399999999998}}, {"skill": "A高空下落伤害", "value": 28530.9012742665, "seq": "决斗之枪|辰砂往生录|攻风暴", "critRate": 0.8, "critDmg": 1.9300000000000002, "atk": 2066.358, "other": {}}], "温迪": [{"skill": "A扩散伤害", "value": 6481.058632419298, "seq": "终末嗟叹之诗|翠绿之影|精精精", "critRate": "any", "critDmg": "any", "atk": 1356.2, "other": {"元素精通": 781.0, "充能效率": 2.071}}, {"skill": "A扩散伤害", "value": 5829.106475560455, "seq": "西风猎弓|翠绿之影|精精精", "critRate": "any", "critDmg": "any", "atk": 1171.4, "other": {"元素精通": 721.0, "充能效率": 2.133}}, {"skill": "A扩散伤害", "value": 5733.418184512781, "seq": "绝弦|翠绿之影|充精精", "critRate": "any", "critDmg": "any", "atk": 1238.6, "other": {"元素精通": 699.0, "充能效率": 2.038}}], "琴": [{"skill": "Q领域发动治疗量", "value": 21354.744807232004, "seq": "天目影打刀|翠绿之影|攻攻治", "critRate": "any", "critDmg": "any", "atk": 2239.619, "other": {"充能效率": 1.659}}, {"skill": "Q领域发动治疗量", "value": 18626.809539328002, "seq": "西风剑|翠绿之影|攻攻治", "critRate": "any", "critDmg": "any", "atk": 1857.776, "other": {"充能效率": 1.813}}, {"skill": "Q领域发动治疗量", "value": 20399.853514624003, "seq": "风鹰剑|翠绿之影|充攻治", "critRate": "any", "critDmg": "any", "atk": 2105.958, "other": {"充能效率": 1.718}}], "砂糖": [{"skill": "A扩散伤害", "value": 5973.982431941923, "seq": "祭礼残章|翠绿之影|充精精", "critRate": "any", "critDmg": "any", "atk": 1059.8, "other": {"元素精通": 755.0}}, {"skill": "A扩散伤害", "value": 4962.795138121547, "seq": "试作金珀|翠绿之影|充精精", "critRate": "any", "critDmg": "any", "atk": 1127, "other": {"元素精通": 534.0}}, {"skill": "A扩散伤害", "value": 4962.795138121547, "seq": "讨龙英杰谭|翠绿之影|充精精", "critRate": "any", "critDmg": "any", "atk": 996.1999999999999, "other": {"元素精通": 534.0}}], "旅行者(风)": [{"skill": "A扩散伤害", "value": 5829.106475560455, "seq": "西风剑|翠绿之影|精精精", "critRate": "any", "critDmg": "any", "atk": 1270.04, "other": {"元素精通": 721.0}}], "赛诺": [{"skill": "E渡荒之雷(超激化)", "value": 24368.11593714102, "seq": "赤沙之杖|饰金之梦|精雷暴", "critRate": 0.8, "critDmg": 2.076, "atk": 1351.44, "other": {"元素精通": 347.0, "充能效率": 1.2}}, {"skill": "E渡荒之雷(超激化)", "value": 21246.514556260678, "seq": "和璞鸢|饰金之梦|攻雷暴", "critRate": 0.8, "critDmg": 1.6360000000000001, "atk": 1765.272, "other": {"元素精通": 160.0, "充能效率": 1.2}}, {"skill": "E渡荒之雷(超激化)", "value": 19596.963331743613, "seq": "决斗之枪|饰金之梦|精雷暴", "critRate": 0.7999999999999999, "critDmg": 1.93, "atk": 1083, "other": {"元素精通": 347.0, "充能效率": 1.2}}, {"skill": "E渡荒之雷(超激化)", "value": 22850.98977525427, "seq": "赤沙之杖|如雷的盛怒|精雷暴", "critRate": 0.8, "critDmg": 2.076, "atk": 1309.84, "other": {"元素精通": 267.0, "充能效率": 1.2}}, {"skill": "E渡荒之雷(超激化)", "value": 22870.817850891133, "seq": "和璞鸢|如雷的盛怒|精雷暴", "critRate": 0.8, "critDmg": 1.6360000000000001, "atk": 1303, "other": {"元素精通": 267.0, "充能效率": 1.2}}, {"skill": "E渡荒之雷(超激化)", "value": 19629.908466322642, "seq": "决斗之枪|如雷的盛怒|精雷暴", "critRate": 0.7999999999999999, "critDmg": 1.93, "atk": 1083, "other": {"元素精通": 267.0, "充能效率": 1.2}}], "多莉": [{"skill": "Q持续治疗量", "value": 10351.5365617248, "seq": "祭礼大剑|海染砗磲|生生治", "critRate": "any", "critDmg": "any", "atk": 1099, "other": {"充能效率": 1.506, "生命值": 39144.484000000004}}, {"skill": "Q持续治疗量", "value": 10351.5365617248, "seq": "西风大剑|海染砗磲|生生治", "critRate": "any", "critDmg": "any", "atk": 988, "other": {"充能效率": 1.813, "生命值": 39144.484000000004}}, {"skill": "Q持续治疗量", "value": 10219.361463469599, "seq": "钟剑|海染砗磲|充生治", "critRate": "any", "critDmg": "any", "atk": 1044, "other": {"充能效率": 1.718, "生命值": 38487.443}}], "久岐忍": [{"skill": "E越祓草轮治疗量", "value": 4586.9674448, "seq": "西福斯的月光|饰金之梦|精精治", "critRate": "any", "critDmg": "any", "atk": 1141.3, "other": {"元素精通": 779.0, "生命值": 27391.760000000002}}, {"skill": "E越祓草轮治疗量", "value": 25640.78336594912, "seq": "西福斯的月光|饰金之梦|精精精", "critRate": "any", "critDmg": "any", "atk": 1141.3, "other": {"元素精通": 966.0, "生命值": 22476.16}}, {"skill": "E越祓草轮治疗量", "value": 27391.50509777478, "seq": "西福斯的月光|乐园遗落之花|精精精", "critRate": "any", "critDmg": "any", "atk": 1141.3, "other": {"元素精通": 966.0, "生命值": 22476.16}}], "八重神子": [{"skill": "E杀生樱伤害·叁阶", "value": 10476.866128124067, "seq": "神乐之真意|如雷的盛怒角斗士的终幕礼|攻雷暴", "critRate": 0.8, "critDmg": 1.8559999999999999, "atk": 2155.808, "other": {"元素精通": 80.0}}, {"skill": "E杀生樱伤害·叁阶", "value": 10849.941270406101, "seq": "神乐之真意|饰金之梦|攻雷暴", "critRate": 0.8, "critDmg": 1.8559999999999999, "atk": 1985.1680000000001, "other": {"元素精通": 160.0}}, {"skill": "E杀生樱伤害·叁阶", "value": 8371.28598982942, "seq": "天空之卷|如雷的盛怒角斗士的终幕礼|攻雷暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 2619.878, "other": {"元素精通": 80.0}}, {"skill": "E杀生樱伤害·叁阶", "value": 10923.457701043038, "seq": "流浪乐章|如雷的盛怒角斗士的终幕礼|攻雷暴", "critRate": 0.79995, "critDmg": 1.7451, "atk": 1965.1, "other": {"元素精通": 80.0}}], "雷电将军": [{"skill": "Q梦想一刀基础伤害(满愿力)", "value": 75155.80587351158, "seq": "薙草之稻光|绝缘之旗印|充雷暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 2012.8694000000003, "other": {"充能效率": 2.7890000000000006}}, {"skill": "Q梦想一刀基础伤害(满愿力)", "value": 63503.368345612056, "seq": "渔获|绝缘之旗印|充攻暴", "critRate": 0.5425000000000001, "critDmg": 1.3250000000000002, "atk": 1806.802, "other": {"充能效率": 2.697}}], "九条裟罗": [{"skill": "Q天狗咒雷·金刚坏 伤害", "value": 51562.3486832146, "seq": "天空之翼|绝缘之旗印|充雷暴", "critRate": 0.8, "critDmg": 1.4520000000000002, "atk": 1649.26, "other": {"充能效率": 1.918}}, {"skill": "Q天狗咒雷·金刚坏 伤害", "value": 40839.34435865396, "seq": "祭礼弓|绝缘之旗印|充雷暴", "critRate": 0.7, "critDmg": 1.01, "atk": 1481.4, "other": {"充能效率": 2.2239999999999998}}], "刻晴": [{"skill": "A重击伤害", "value": 8842.333233938401, "seq": "雾切之回光|如雷的盛怒|攻雷暴", "critRate": 0.73375, "critDmg": 1.7675, "atk": 2071.702, "other": {"元素精通": 80.0}}, {"skill": "A重击伤害", "value": 8308.362750218495, "seq": "磐岩结绿|如雷的盛怒|攻雷暴", "critRate": 0.75, "critDmg": 2.176, "atk": 2116.0804, "other": {"元素精通": 80.0}}, {"skill": "A重击伤害", "value": 8185.824657817559, "seq": "匣里龙吟|如雷的盛怒|攻雷暴", "critRate": 0.6234999999999999, "critDmg": 1.547, "atk": 2126.107, "other": {"元素精通": 80.0}}], "雷泽": [{"skill": "A一段伤害", "value": 10291.831170291554, "seq": "螭骨剑|角斗士的终幕礼|攻物暴", "critRate": 0.7405, "critDmg": 1.481, "atk": 1758.824, "other": {}}, {"skill": "A一段伤害", "value": 10859.125216509341, "seq": "狼的末路|角斗士的终幕礼|攻物暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 2535.5640000000003, "other": {}}], "菲谢尔": [{"skill": "E奥兹攻击伤害", "value": 7689.052239443568, "seq": "绝弦|如雷的盛怒角斗士的终幕礼|攻雷暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1959.244, "other": {"元素精通": 245.0}}, {"skill": "E奥兹攻击伤害", "value": 8033.879835215827, "seq": "天空之翼|如雷的盛怒角斗士的终幕礼|攻雷暴", "critRate": 0.7630000000000001, "critDmg": 1.5260000000000002, "atk": 2317.748, "other": {"元素精通": 80.0}}], "丽莎": [{"skill": "E三层引雷长按伤害", "value": 48112.07452593096, "seq": "四风原典|绝缘之旗印角斗士的终幕礼|攻雷暴", "critRate": 0.768, "critDmg": 1.536, "atk": 1945.6399999999999, "other": {"元素精通": 176.0}}, {"skill": "Q放电伤害", "value": 3923.108737878488, "seq": "流浪乐章|昔日宗室之仪|攻雷暴", "critRate": 0.7402500000000001, "critDmg": 1.4805000000000001, "atk": 1621.372, "other": {"元素精通": 176.0}}], "北斗": [{"skill": "Q闪雷伤害", "value": 8423.083621785672, "seq": "狼的末路|绝缘之旗印|充雷暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1973.668, "other": {"充能效率": 1.918}}, {"skill": "Q闪雷伤害", "value": 7493.013866421251, "seq": "螭骨剑|绝缘之旗印|充攻暴", "critRate": 0.7405, "critDmg": 1.481, "atk": 1609.01, "other": {"充能效率": 1.918}}], "旅行者(雷)": [{"skill": "", "seq": "西风剑|绝缘之旗印|充雷暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1270.04, "other": {"充能效率": 2.5309999999999997}}], "艾尔海森": [{"skill": "E1枚光幕攻击伤害(蔓激化)", "value": 20017.58775831216, "seq": "裁叶萃光|饰金之梦|精草暴", "critRate": 0.8, "critDmg": 1.7720000000000002, "atk": 1166, "other": {"元素精通": 347.0, "实际精通": 447.0}}, {"skill": "E1枚光幕攻击伤害(蔓激化)", "value": 18814.584467661098, "seq": "磐岩结绿|饰金之梦|精草暴", "critRate": 0.8, "critDmg": 1.6920000000000002, "atk": 1415.5711999999999, "other": {"元素精通": 347.0, "实际精通": 447.0}}, {"skill": "E1枚光幕攻击伤害(蔓激化)", "value": 16500.29899797668, "seq": "黑剑|饰金之梦|精草暴", "critRate": 0.7403000000000001, "critDmg": 1.4806000000000001, "atk": 1134, "other": {"元素精通": 347.0, "实际精通": 447.0}}], "瑶瑶": [{"skill": "E白玉萝卜治疗量", "value": 2411.5809959052003, "seq": "西风长枪|千岩牢固|生生治", "critRate": 0.3, "critDmg": "any", "atk": 1088, "other": {"生命值": 39459.558}}, {"skill": "E白玉萝卜治疗量", "value": 2766.019897399921, "seq": "黑缨枪|千岩牢固|生生治", "critRate": "any", "critDmg": "any", "atk": 877, "other": {"生命值": 47068.906800000004}}], "纳西妲": [{"skill": "E灭净三业伤害(蔓激化)", "value": 26997.953369458883, "seq": "千夜浮梦|深林的记忆|精精精", "critRate": 0.281, "critDmg": 0.962, "atk": 1152, "other": {"元素精通": 941.0, "充能效率": 1.3}}, {"skill": "E灭净三业伤害(蔓激化)", "value": 26238.601950948134, "seq": "千夜浮梦|深林的记忆|精精暴", "critRate": 0.46950000000000003, "critDmg": 1.273, "atk": 1152, "other": {"元素精通": 774.0, "充能效率": 1.3}}, {"skill": "E灭净三业伤害(蔓激化)", "value": 22205.488547515655, "seq": "流浪的晚星|深林的记忆|精精精", "critRate": 0.281, "critDmg": 0.962, "atk": 1523.68, "other": {"元素精通": 841.0, "充能效率": 1.3}}, {"skill": "E灭净三业伤害(蔓激化)", "value": 21895.53737372846, "seq": "祭礼残章|深林的记忆|精精精", "critRate": 0.281, "critDmg": 0.962, "atk": 1064, "other": {"元素精通": 897.0, "充能效率": 1.3}}], "提纳里": [{"skill": "A藏蕴花矢伤害(蔓激化)", "value": 16317.196606132664, "seq": "猎人之径|流浪大地的乐团|精草暴", "critRate": 0.8, "critDmg": 1.6920000000000002, "atk": 1121, "other": {"元素精通": 347.0}}, {"skill": "A藏蕴花矢伤害(蔓激化)", "value": 15633.236346764515, "seq": "猎人之径|饰金之梦|精草暴", "critRate": 0.8, "critDmg": 1.6920000000000002, "atk": 1234.4, "other": {"元素精通": 347.0}}, {"skill": "A藏蕴花矢伤害(蔓激化)", "value": 13117.832066414805, "seq": "天空之翼|流浪大地的乐团|精草暴", "critRate": 0.7630000000000001, "critDmg": 1.5260000000000002, "atk": 1253, "other": {"元素精通": 347.0}}, {"skill": "A藏蕴花矢伤害(蔓激化)", "value": 12586.175333064644, "seq": "苍翠猎弓|流浪大地的乐团|精草暴", "critRate": 0.7405, "critDmg": 1.481, "atk": 1089, "other": {"元素精通": 347.0}}], "柯莱": [{"skill": "Q跃动伤害(蔓激化)", "value": 10055.655243596919, "seq": "终末嗟叹之诗|深林的记忆|攻草暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1851.048, "other": {"元素精通": 120.0, "充能效率": 1.701}}, {"skill": "Q跃动伤害(蔓激化)", "value": 8481.913519492135, "seq": "终末嗟叹之诗|昔日宗室之仪|攻草暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1851.048, "other": {"元素精通": 120.0, "充能效率": 1.701}}, {"skill": "Q跃动伤害(蔓激化)", "value": 7028.7015824810405, "seq": "西风猎弓|深林的记忆|攻草暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1557.524, "other": {"元素精通": 60.0, "充能效率": 1.763}}, {"skill": "Q跃动伤害(蔓激化)", "value": 6374.115069425711, "seq": "西风猎弓|昔日宗室之仪|攻草暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1557.524, "other": {"元素精通": 60.0, "充能效率": 1.763}}], "旅行者(草)": [{"skill": "Q草灯莲攻击伤害(蔓激化)", "value": 12980.945965680772, "seq": "天空之刃|深林的记忆|精草暴", "critRate": 0.6225, "critDmg": 1.245, "atk": 1327.8, "other": {"元素精通": 267.0, "充能效率": 1.751}}, {"skill": "Q草灯莲攻击伤害(蔓激化)", "value": 12050.539643975299, "seq": "西风剑|深林的记忆|精草暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1136.8400000000001, "other": {"元素精通": 267.0, "充能效率": 1.813}}, {"skill": "Q草灯莲攻击伤害(蔓激化)", "value": 12554.450797909794, "seq": "原木刀|深林的记忆|精草暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1274.48, "other": {"元素精通": 267.0, "充能效率": 1.506}}], "莱依拉": [{"skill": "E护盾基础吸收量", "value": 21162.027414528002, "seq": "西风剑|千岩牢固|生生生", "critRate": "any", "critDmg": "any", "atk": 1082.65, "other": {"生命值": 40695.89600000001}}], "申鹤": [{"skill": "atk", "value": 0, "seq": "息灾|角斗士的终幕礼追忆之注连|攻攻攻", "critRate": "any", "critDmg": "any", "atk": 4084.495, "other": {"充能效率": 1.8}}, {"skill": "atk", "value": 0, "seq": "天空之脊|角斗士的终幕礼追忆之注连|攻攻攻", "critRate": "any", "critDmg": "any", "atk": 3681.1879999999996, "other": {"充能效率": 2.168}}, {"skill": "atk", "value": 0, "seq": "西风长枪|角斗士的终幕礼追忆之注连|攻攻攻", "critRate": "any", "critDmg": "any", "atk": 3305.5739999999996, "other": {"充能效率": 2.106}}], "神里绫华": [{"skill": "Q切割伤害", "value": 14866.32860493826, "seq": "雾切之回光|冰风迷途的勇士|攻冰暴", "critRate": 0.3499499999999999, "critDmg": 2.5351, "atk": 2105.2560000000003, "other": {}}, {"skill": "Q切割伤害", "value": 10894.45711665022, "seq": "天目影打刀|冰风迷途的勇士|攻冰暴", "critRate": 0.35, "critDmg": 2.094, "atk": 2155.3320000000003, "other": {}}], "优菈": [{"skill": "Q光降之剑基础伤害(13层)", "value": 231380.92743819082, "seq": "松籁响起之时|苍白之火|攻物暴", "critRate": 0.6234999999999999, "critDmg": 1.547, "atk": 2396.8579999999997, "other": {}}, {"skill": "Q光降之剑基础伤害(13层)", "value": 211402.62753167227, "seq": "狼的末路|苍白之火|攻物暴", "critRate": 0.6234999999999999, "critDmg": 1.547, "atk": 2649.8999999999996, "other": {}}, {"skill": "Q光降之剑基础伤害(13层)", "value": 196544.113868971, "seq": "螭骨剑|苍白之火|攻物暴", "critRate": 0.75, "critDmg": 1.846, "atk": 1815.632, "other": {}}], "甘雨": [{"skill": "A霜华矢·霜华绽发伤害", "value": 30309.703124595053, "seq": "阿莫斯之弓|冰风迷途的勇士|攻冰暴", "critRate": 0.25, "critDmg": 2.294, "atk": 2444.066, "other": {}}, {"skill": "A霜华矢·霜华绽发伤害", "value": 24540.769257763008, "seq": "破魔之弓|冰风迷途的勇士|攻冰暴", "critRate": 0.25, "critDmg": 2.294, "atk": 2139.1130000000003, "other": {}}, {"skill": "A霜华矢·霜华绽发伤害", "value": 21612.271206342022, "seq": "天空之翼|冰风迷途的勇士|攻冰暴", "critRate": 0.39999999999999986, "critDmg": 2.6254999999999997, "atk": 2092.8940000000002, "other": {}}, {"skill": "A霜华矢·霜华绽发伤害(融化)", "value": 47695.72904806796, "seq": "阿莫斯之弓|流浪大地的乐团|攻冰暴", "critRate": 0.5235000000000001, "critDmg": 1.747, "atk": 2444.066, "other": {"元素精通": 80.0}}, {"skill": "A霜华矢·霜华绽发伤害(融化)", "value": 49152.83020229909, "seq": "阿莫斯之弓|流浪大地的乐团|精冰暴", "critRate": 0.5235000000000001, "critDmg": 1.747, "atk": 2004.628, "other": {"元素精通": 267.0}}, {"skill": "A霜华矢·霜华绽发伤害(融化)", "value": 38885.379490859355, "seq": "破魔之弓|流浪大地的乐团|攻冰暴", "critRate": 0.5235000000000001, "critDmg": 1.747, "atk": 2139.1130000000003, "other": {"元素精通": 80.0}}, {"skill": "A霜华矢·霜华绽发伤害(融化)", "value": 36247.17756584372, "seq": "天空之翼|流浪大地的乐团|攻冰暴", "critRate": 0.65, "critDmg": 2.136, "atk": 2092.8940000000002, "other": {"元素精通": 80.0}}], "凯亚": [{"skill": "Q伤害", "value": 5360.368283996418, "seq": "西风剑|绝缘之旗印|攻冰暴", "critRate": 0.5275, "critDmg": 1.355, "atk": 1506.582, "other": {"充能效率": 2.28}}, {"skill": "Q伤害", "value": 6506.02651204331, "seq": "磐岩结绿|绝缘之旗印|充冰暴", "critRate": 0.748, "critDmg": 1.796, "atk": 1558.3448, "other": {"充能效率": 2.185}}], "重云": [{"skill": "Q伤害", "value": 14887.115105702473, "seq": "狼的末路|冰风迷途的勇士昔日宗室之仪|攻冰暴", "critRate": 0.5275, "critDmg": 1.355, "atk": 2556.362, "other": {}}, {"skill": "Q伤害", "value": 14142.721913956359, "seq": "螭骨剑|冰风迷途的勇士昔日宗室之仪|攻冰暴", "critRate": 0.6655000000000001, "critDmg": 1.6310000000000002, "atk": 1781.3980000000001, "other": {}}], "七七": [{"skill": "Q治疗量", "value": 7231.945572800001, "seq": "祭礼剑|海染砗磲|攻攻治", "critRate": "any", "critDmg": "any", "atk": 1964.9120000000003, "other": {}}, {"skill": "Q治疗量", "value": 9040.413528800002, "seq": "风鹰剑|海染砗磲|攻攻治", "critRate": "any", "critDmg": "any", "atk": 2648.1520000000005, "other": {}}, {"skill": "Q治疗量", "value": 8434.0431485, "seq": "笛剑|海染砗磲|攻攻治", "critRate": "any", "critDmg": "any", "atk": 2419.065, "other": {}}], "迪奥娜": [{"skill": "E护盾基础吸收量", "value": 13304.967018, "seq": "祭礼弓|被怜爱的少女千岩牢固|生生生", "critRate": "any", "critDmg": "any", "atk": 1243.4, "other": {"生命值": 33317.740000000005}}], "罗莎莉亚": [{"skill": "Q冰枪持续伤害", "value": 7661.352466706398, "seq": "西风长枪|昔日宗室之仪|攻冰暴", "critRate": 0.7, "critDmg": 1.0099999999999998, "atk": 1925.8300000000002, "other": {}}], "埃洛伊": [{"skill": "Q伤害", "value": 21388.34091490468, "seq": "西风猎弓|冰风迷途的勇士角斗士的终幕礼|攻冰暴", "critRate": 0.5275, "critDmg": 1.355, "atk": 1649.848, "other": {}}], "荒泷一斗": [{"skill": "A荒泷逆袈裟连斩伤害", "value": 21056.901954893372, "seq": "赤角石溃杵|华馆梦醒形骸记|防岩暴", "critRate": 0.8, "critDmg": 2.076, "atk": 1233.8, "other": {"防御": 2431.065, "充能效率": 1.22}}, {"skill": "A荒泷逆袈裟连斩伤害", "value": 18779.50143476701, "seq": "螭骨剑|华馆梦醒形骸记|防岩暴", "critRate": 0.8, "critDmg": 1.746, "atk": 1195.4, "other": {"防御": 2162.545, "充能效率": 1.22}}, {"skill": "A荒泷逆袈裟连斩伤害", "value": 17428.45252338404, "seq": "白影剑|华馆梦醒形骸记|防岩暴", "critRate": 0.6985, "critDmg": 1.397, "atk": 1195.4, "other": {"防御": 2658.348, "充能效率": 1.22}}], "五郎": [{"skill": "def", "value": 0, "seq": "西风猎弓|流放者|充岩暴", "critRate": 0.6025, "critDmg": "any", "atk": 1075.4, "other": {"防御": 1083.456, "充能效率": 2.5309999999999997}}], "阿贝多": [{"skill": "E刹那之花伤害", "value": 17696.894878418516, "seq": "辰砂之纺锤|华馆梦醒形骸记|防岩暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1157, "other": {"防御": 2579.8199999999997}}, {"skill": "E刹那之花伤害", "value": 13672.706241036269, "seq": "黎明神剑|华馆梦醒形骸记|防岩暴", "critRate": 0.79995, "critDmg": 1.8991, "atk": 1093.4, "other": {"防御": 1975.3799999999999}}, {"skill": "E刹那之花伤害", "value": 14034.047095327793, "seq": "辰砂之纺锤|悠古的磐岩|防岩暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1157, "other": {"防御": 2317.02}}, {"skill": "E刹那之花伤害", "value": 12928.423637187472, "seq": "辰砂之纺锤|千岩牢固|防岩暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1157, "other": {"防御": 2317.02}}], "钟离": [{"skill": "E总护盾量", "value": 29880.512902500002, "seq": "黑缨枪|千岩牢固|生生生", "critRate": "any", "critDmg": "any", "atk": 1037, "other": {"生命值": 55727.565}}, {"skill": "Q伤害", "value": 46442.27412694044, "seq": "护摩之杖|千岩牢固|生生生", "critRate": 0.6125, "critDmg": 1.225, "atk": 1738.3628800000001, "other": {"生命值": 49570.36000000001}}, {"skill": "Q伤害", "value": 71732.50539821698, "seq": "护摩之杖|悠古的磐岩昔日宗室之仪|生岩暴", "critRate": 0.768, "critDmg": 1.536, "atk": 1611.1629599999999, "other": {"生命值": 33670.369999999995}}], "诺艾尔": [{"skill": "A一段伤害", "value": 16872.5082416256, "seq": "赤角石溃杵|华馆梦醒形骸记|防岩暴", "critRate": 0.7, "critDmg": 1.8920000000000001, "atk": 1190.6, "other": {"防御": 2166.0889999999995}}, {"skill": "A一段伤害", "value": 14864.19681788028, "seq": "螭骨剑|华馆梦醒形骸记|防岩暴", "critRate": 0.7405, "critDmg": 1.481, "atk": 1152.1999999999998, "other": {"防御": 2041.4449999999997}}, {"skill": "A一段伤害", "value": 13592.823118030803, "seq": "白影剑|华馆梦醒形骸记|防岩暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 1152.1999999999998, "other": {"防御": 2454.528}}], "凝光": [{"skill": "Q宝石伤害", "value": 6828.907102769468, "seq": "四风原典|悠古的磐岩角斗士的终幕礼|攻岩暴", "critRate": 0.768, "critDmg": 1.536, "atk": 1906.72, "other": {}}, {"skill": "Q宝石伤害", "value": 7257.585184561472, "seq": "尘世之锁|悠古的磐岩角斗士的终幕礼|攻岩暴", "critRate": 0.6025, "critDmg": 1.205, "atk": 2313.44, "other": {}}, {"skill": "Q宝石伤害", "value": 8767.764011526478, "seq": "流浪乐章|悠古的磐岩角斗士的终幕礼|攻岩暴", "critRate": 0.7, "critDmg": 1.5611000000000002, "atk": 1716.012, "other": {}}], "旅行者(岩)": [{"skill": "Q地震波单次伤害", "value": 15555.424394098514, "seq": "雾切之回光|悠古的磐岩角斗士的终幕礼|攻岩暴", "critRate": 0.71275, "critDmg": 1.4255, "atk": 2247.7960000000003, "other": {}}, {"skill": "Q地震波单次伤害", "value": 13540.504306776194, "seq": "磐岩结绿|悠古的磐岩角斗士的终幕礼|攻岩暴", "critRate": 0.8, "critDmg": 1.6920000000000002, "atk": 2199.304, "other": {}}, {"skill": "Q地震波单次伤害", "value": 10720.137847395887, "seq": "黑剑|悠古的磐岩角斗士的终幕礼|攻岩暴", "critRate": 0.7405, "critDmg": 1.481, "atk": 1889.292, "other": {}}], "云堇": [{"skill": "def", "value": 0, "seq": "西风长枪|华馆梦醒形骸记|防防暴", "critRate": 0.6, "critDmg": "any", "atk": 1218.1999999999998, "other": {"充能效率": 2.173, "防御": 2083.092}}, {"skill": "def", "value": 0, "seq": "喜多院十文字|华馆梦醒形骸记|防防防", "critRate": "any", "critDmg": "any", "atk": 1218.1999999999998, "other": {"充能效率": 1.967, "防御": 2511.0139999999997}}]} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/effect/skill_add.json b/GenshinUID/genshinuid_enka/effect/skill_add.json new file mode 100644 index 00000000..02271ebe --- /dev/null +++ b/GenshinUID/genshinuid_enka/effect/skill_add.json @@ -0,0 +1,258 @@ +{ + "旅行者": [ + "E", + "Q" + ], + "胡桃": [ + "E", + "Q" + ], + "托马": [ + "E", + "Q" + ], + "宵宫": [ + "E", + "Q" + ], + "烟绯": [ + "E", + "Q" + ], + "可莉": [ + "E", + "Q" + ], + "迪卢克": [ + "E", + "Q" + ], + "辛焱": [ + "E", + "Q" + ], + "安柏": [ + "Q", + "E" + ], + "香菱": [ + "Q", + "E" + ], + "班尼特": [ + "E", + "Q" + ], + "珊瑚宫心海": [ + "Q", + "E" + ], + "达达利亚": [ + "E", + "Q" + ], + "行秋": [ + "Q", + "E" + ], + "莫娜": [ + "Q", + "E" + ], + "芭芭拉": [ + "Q", + "E" + ], + "申鹤": [ + "E", + "Q" + ], + "神里绫华": [ + "Q", + "E" + ], + "优菈": [ + "Q", + "E" + ], + "甘雨": [ + "Q", + "E" + ], + "凯亚": [ + "E", + "Q" + ], + "重云": [ + "Q", + "E" + ], + "七七": [ + "Q", + "E" + ], + "迪奥娜": [ + "Q", + "E" + ], + "罗莎莉亚": [ + "E", + "Q" + ], + "埃洛伊": [ + null, + null + ], + "八重神子": [ + "E", + "Q" + ], + "雷电将军": [ + "Q", + "E" + ], + "九条裟罗": [ + "Q", + "E" + ], + "刻晴": [ + "Q", + "E" + ], + "雷泽": [ + "Q", + "E" + ], + "菲谢尔": [ + "E", + "Q" + ], + "丽莎": [ + "Q", + "E" + ], + "北斗": [ + "E", + "Q" + ], + "雷主": [ + "E", + "Q" + ], + "早柚": [ + "Q", + "E" + ], + "枫原万叶": [ + "E", + "Q" + ], + "魈": [ + "E", + "Q" + ], + "温迪": [ + "Q", + "E" + ], + "琴": [ + "Q", + "E" + ], + "砂糖": [ + "E", + "Q" + ], + "风主": [ + "E", + "Q" + ], + "荒泷一斗": [ + "E", + "Q" + ], + "五郎": [ + "E", + "Q" + ], + "阿贝多": [ + "E", + "Q" + ], + "钟离": [ + "E", + "Q" + ], + "诺艾尔": [ + "E", + "Q" + ], + "凝光": [ + "Q", + "E" + ], + "岩主": [ + "E", + "Q" + ], + "云堇": [ + "Q", + "E" + ], + "神里绫人": [ + "E", + "Q" + ], + "夜兰": [ + "Q", + "E" + ], + "久岐忍": [ + "E", + "Q" + ], + "鹿野院平藏": [ + "E", + "Q" + ], + "柯莱": [ + "E", + "Q" + ], + "提纳里": [ + "Q", + "E" + ], + "多莉": [ + "E", + "Q" + ], + "妮露": [ + "Q", + "E" + ], + "赛诺": [ + "Q", + "E" + ], + "坎蒂丝": [ + "Q", + "E" + ], + "莱依拉": [ + "E", + "Q" + ], + "纳西妲": [ + "E", + "Q" + ], + "流浪者": [ + "E", + "Q" + ], + "珐露珊": [ + "E", + "Q" + ] +} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/effect/value_attr.json b/GenshinUID/genshinuid_enka/effect/value_attr.json new file mode 100644 index 00000000..b084f49d --- /dev/null +++ b/GenshinUID/genshinuid_enka/effect/value_attr.json @@ -0,0 +1,350 @@ +{ + "神里绫人": [ + "血量", + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "八重神子": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通", + "" + ], + "申鹤": [ + "攻击力", + "元素充能效率" + ], + "云堇": [ + "防御力", + "元素充能效率" + ], + "荒泷一斗": [ + "防御力", + "暴击率", + "暴击伤害" + ], + "五郎": [ + "防御力", + "元素充能效率" + ], + "班尼特": [ + "血量", + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "枫原万叶": [ + "元素精通", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "雷电将军": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "行秋": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "钟离": [ + "血量", + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "神里绫华": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "香菱": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率", + "元素精通" + ], + "胡桃": [ + "血量", + "暴击率", + "暴击伤害", + "元素精通" + ], + "甘雨": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "温迪": [ + "元素精通", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "珊瑚宫心海": [ + "血量", + "元素充能效率" + ], + "莫娜": [ + "元素精通", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "阿贝多": [ + "防御力", + "暴击率", + "暴击伤害" + ], + "迪奥娜": [ + "血量", + "元素充能效率" + ], + "优菈": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "达达利亚": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "魈": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "宵宫": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "九条裟罗": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "琴": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "菲谢尔": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "罗莎莉亚": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "可莉": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "凝光": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "北斗": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "刻晴": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "托马": [ + "血量", + "元素充能效率" + ], + "迪卢克": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "芭芭拉": [ + "血量", + "元素充能效率" + ], + "诺艾尔": [ + "防御力", + "暴击率", + "暴击伤害" + ], + "旅行者": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "重云": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "七七": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "凯亚": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "烟绯": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "早柚": [ + "元素精通", + "元素充能效率" + ], + "安柏": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "丽莎": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "埃洛伊": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "辛焱": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "砂糖": [ + "元素精通", + "元素充能效率" + ], + "雷泽": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "夜兰": [ + "血量", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "久岐忍": [ + "血量", + "元素充能效率", + "元素精通" + ], + "鹿野院平藏": [ + "攻击力", + "暴击率", + "暴击伤害" + ], + "柯莱": [ + "元素充能效率", + "元素精通", + "暴击率", + "暴击伤害" + ], + "提纳里": [ + "攻击力", + "元素精通", + "暴击率", + "暴击伤害" + ], + "多莉": [ + "元素充能效率", + "血量" + ], + "妮露": [ + "血量", + "暴击率", + "暴击伤害", + "元素精通" + ], + "坎蒂丝": [ + "血量", + "元素充能效率", + "暴击率", + "暴击伤害" + ], + "赛诺": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素精通" + ], + "莱依拉": [ + "血量", + "元素充能效率" + ], + "纳西妲": [ + "元素精通", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "流浪者": [ + "暴击率", + "暴击伤害", + "攻击力" + ], + "珐露珊": [ + "攻击力", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "艾尔海森": [ + "元素精通", + "暴击率", + "暴击伤害", + "元素充能效率" + ], + "瑶瑶": [ + "元素充能效率", + "血量", + "攻击力" + ], + "迪希雅": [ + "血量", + "攻击力", + "暴击率", + "暴击伤害" + ], + "米卡": [ + "元素充能效率", + "血量" + ] +} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/effect/weapon_effect.json b/GenshinUID/genshinuid_enka/effect/weapon_effect.json new file mode 100644 index 00000000..aff45588 --- /dev/null +++ b/GenshinUID/genshinuid_enka/effect/weapon_effect.json @@ -0,0 +1,4745 @@ +{ + "恶王丸": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "Q:dmgBonus+40", + "2": "Q:dmgBonus+50", + "3": "Q:dmgBonus+60", + "4": "Q:dmgBonus+70", + "5": "Q:dmgBonus+80" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "暗巷猎手": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "天目影打刀": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "阿莫斯之弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AB:dmgBonus+52", + "2": "AB:dmgBonus+65", + "3": "AB:dmgBonus+78", + "4": "AB:dmgBonus+91", + "5": "AB:dmgBonus+104" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "学徒笔记": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "若水": { + "normal": { + "normal_effect": { + "1": "addHp+16", + "2": "addHp+20", + "3": "addHp+24", + "4": "addHp+28", + "5": "addHp+32" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+20", + "2": "dmgBonus+25", + "3": "dmgBonus+30", + "4": "dmgBonus+35", + "5": "dmgBonus+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "风鹰剑": { + "normal": { + "normal_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "新手长枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黑岩绯玉": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+36", + "2": "addAtk+45", + "3": "addAtk+54", + "4": "addAtk+63", + "5": "addAtk+72" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黑岩长剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+36", + "2": "addAtk+45", + "3": "addAtk+54", + "4": "addAtk+63", + "5": "addAtk+72" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黑岩刺枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+36", + "2": "addAtk+45", + "3": "addAtk+54", + "4": "addAtk+63", + "5": "addAtk+72" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黑岩斩刀": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+36", + "2": "addAtk+45", + "3": "addAtk+54", + "4": "addAtk+63", + "5": "addAtk+72" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黑岩战弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+36", + "2": "addAtk+45", + "3": "addAtk+54", + "4": "addAtk+63", + "5": "addAtk+72" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黑缨枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "沐浴龙血的剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "limit": ["Pyro", "Electro"] + } + } + }, + "息灾": { + "normal": { + "normal_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+19.2", + "2": "addAtk+24", + "3": "addAtk+28.8", + "4": "addAtk+33.6", + "5": "addAtk+38.4" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "up": "bg:2" + } + } + }, + "辰砂之纺锤": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "E:addDmg+40%def", + "2": "E:addDmg+50%def", + "3": "E:addDmg+60%def", + "4": "E:addDmg+70%def", + "5": "E:addDmg+80%def" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "钢轮弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+16", + "2": "addAtk+20", + "3": "addAtk+24", + "4": "addAtk+28", + "5": "addAtk+32" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "冷刃": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "limit": ["Hydro", "Cryo"] + } + } + }, + "流月针": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AB:addDmg+20%atk", + "2": "AB:addDmg+25%atk", + "3": "AB:addDmg+30%atk", + "4": "AB:addDmg+35%atk", + "5": "AB:addDmg+40%atk" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "暗铁剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 12, + "extra": { + "trigger": ["Electro"] + } + } + }, + "决斗之枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+24", + "2": "addAtk+30", + "3": "addAtk+36", + "4": "addAtk+42", + "5": "addAtk+48" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "以理服人": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AB:extraDmg+60atk", + "2": "AB:extraDmg+75atk", + "3": "AB:extraDmg+90atk", + "4": "AB:extraDmg+105atk", + "5": "AB:extraDmg+120atk" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 15, + "extra": { + "trigger": ["E"] + } + } + }, + "嘟嘟可故事集": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "B:dmgBonus+16;addAtk+8", + "2": "B:dmgBonus+20;addAtk+10", + "3": "B:dmgBonus+24;addAtk+12", + "4": "B:dmgBonus+28;addAtk+14", + "5": "B:dmgBonus+32;addAtk+16" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 6, + "extra": { + "trigger": ["A", "B"] + } + } + }, + "匣里灭辰": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+20", + "2": "dmgBonus+24", + "3": "dmgBonus+28", + "4": "dmgBonus+32", + "5": "dmgBonus+36" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "limit": ["Hydro", "Pyro"] + } + } + }, + "龙脊长枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "无锋剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "终末嗟叹之诗": { + "normal": { + "normal_effect": { + "1": "elementalMastery+60", + "2": "elementalMastery+75", + "3": "elementalMastery+90", + "4": "elementalMastery+105", + "5": "elementalMastery+120" + } + }, + "fight": { + "fight_effect": { + "1": "elementalMastery+100;addAtk+20", + "2": "elementalMastery+125;addAtk+25", + "3": "elementalMastery+150;addAtk+30", + "4": "elementalMastery+175;addAtk+35", + "5": "elementalMastery+200;addAtk+40" + }, + "group_effect": { + "1": "elementalMastery+100;addAtk+20", + "2": "elementalMastery+125;addAtk+25", + "3": "elementalMastery+150;addAtk+30", + "4": "elementalMastery+175;addAtk+35", + "5": "elementalMastery+200;addAtk+40" + }, + "time": 12, + "extra": { + + } + } + }, + "翡玉法球": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 12, + "extra": { + "trigger": ["Hydro"] + } + } + }, + "薙草之稻光": { + "normal": { + "normal_effect": { + "1": "addAtk+28%energyRecharge", + "2": "addAtk+35%energyRecharge", + "3": "addAtk+42%energyRecharge", + "4": "addAtk+49%energyRecharge", + "5": "addAtk+56%energyRecharge" + } + }, + "fight": { + "fight_effect": { + "1": "energyRecharge+30;addAtk+8.4", + "2": "energyRecharge+35;addAtk+12.25", + "3": "energyRecharge+40;addAtk+16.8", + "4": "energyRecharge+45;addAtk+22.05", + "5": "energyRecharge+50;addAtk+28" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 12, + "extra": { + "trigger": ["Q"] + } + } + }, + "不灭月华": { + "normal": { + "normal_effect": { + "1": "healBonus+10", + "2": "healBonus+12.5", + "3": "healBonus+15", + "4": "healBonus+17.5", + "5": "healBonus+20" + } + }, + "fight": { + "fight_effect": { + "1": "A:addDmg+1%hp", + "2": "A:addDmg+1.5%hp", + "3": "A:addDmg+2%hp", + "4": "A:addDmg+2.5%hp", + "5": "A:addDmg+3%hp" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "昭心": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AB:extraDmg+240%atk", + "2": "AB:extraDmg+270%atk", + "3": "AB:extraDmg+300%atk", + "4": "AB:extraDmg+330%atk", + "5": "AB:extraDmg+360%atk" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "落霞": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+10", + "2": "dmgBonus+12.5", + "3": "dmgBonus+15", + "4": "dmgBonus+17.5", + "5": "dmgBonus+20" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "西风秘典": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "西风大剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "西风长枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "西风剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "西风猎弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "铁影阔剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "B:dmgBonus+30", + "2": "B:dmgBonus+35", + "3": "B:dmgBonus+40", + "4": "B:dmgBonus+45", + "5": "B:dmgBonus+50" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "腐殖之剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "E:dmgBonus+16;E:critRate+6", + "2": "E:dmgBonus+20;E:critRate+7.5", + "3": "E:dmgBonus+24;E:critRate+9", + "4": "E:dmgBonus+28;E:critRate+10.5", + "5": "E:dmgBonus+32;E:critRate+12" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "吃虎鱼刀": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "extraDmg+240%atk", + "2": "extraDmg+280%atk", + "3": "extraDmg+320%atk", + "4": "extraDmg+360%atk", + "5": "extraDmg+400%atk" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "苍古自由之誓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+10;ABC:dmgBonus+16;addAtk+20", + "2": "dmgBonus+12.5;ABC:dmgBonus+20;addAtk+25", + "3": "dmgBonus+15;ABC:dmgBonus+24;addAtk+30", + "4": "dmgBonus+17.5;ABC:dmgBonus+28;addAtk+35", + "5": "dmgBonus+20;ABC:dmgBonus+32;addAtk+40" + }, + "group_effect": { + "1": "ABC:dmgBonus+16;addAtk+20", + "2": "ABC:dmgBonus+20;addAtk+25", + "3": "ABC:dmgBonus+24;addAtk+30", + "4": "ABC:dmgBonus+28;addAtk+35", + "5": "ABC:dmgBonus+32;addAtk+40" + }, + "time": 12, + "extra": { + + } + } + }, + "忍冬之果": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "白辰之环": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+10", + "2": "dmgBonus+12.5", + "3": "dmgBonus+15", + "4": "dmgBonus+17.5", + "5": "dmgBonus+20" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 6, + "extra": { + "trigger": ["Electro"] + } + } + }, + "钺矛": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "A:extraDmg+160%atk", + "2": "A:extraDmg+200%atk", + "3": "A:extraDmg+240%atk", + "4": "A:extraDmg+280%atk", + "5": "A:extraDmg+320%atk" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "破魔之弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "A:dmgBonus+32;B:dmgBonus+24", + "2": "A:dmgBonus+40;B:dmgBonus+30", + "3": "A:dmgBonus+48;B:dmgBonus+36", + "4": "A:dmgBonus+56;B:dmgBonus+42", + "5": "A:dmgBonus+64;B:dmgBonus+48" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "波乱月白经津": { + "normal": { + "normal_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + } + }, + "fight": { + "fight_effect": { + "1": "A:dmgBonus+40", + "2": "A:dmgBonus+50", + "3": "A:dmgBonus+60", + "4": "A:dmgBonus+70", + "5": "A:dmgBonus+80" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黎明神剑": { + "normal": { + "normal_effect": { + "1": "critRate+14", + "2": "critRate+17.5", + "3": "critRate+21", + "4": "critRate+24.5", + "5": "critRate+28" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "猎弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "铁尖枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "铁蜂刺": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "神乐之真意": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "E:dmgBonus+36;dmgBonus+12", + "2": "E:dmgBonus+45;dmgBonus+15", + "3": "E:dmgBonus+54;dmgBonus+18", + "4": "E:dmgBonus+63;dmgBonus+21", + "5": "E:dmgBonus+72;dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "桂木斩长正": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "E:dmgBonus+6", + "2": "E:dmgBonus+7.5", + "3": "E:dmgBonus+9", + "4": "E:dmgBonus+10.5", + "5": "E:dmgBonus+12" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "喜多院十文字": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "E:dmgBonus+6", + "2": "E:dmgBonus+7.5", + "3": "E:dmgBonus+9", + "4": "E:dmgBonus+10.5", + "5": "E:dmgBonus+12" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "匣里龙吟": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+20", + "2": "dmgBonus+24", + "3": "dmgBonus+28", + "4": "dmgBonus+32", + "5": "dmgBonus+36" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "limit": ["Pyro", "Electro"] + } + } + }, + "千岩古剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+21;critRate+9", + "2": "addAtk+24;critRate+12", + "3": "addAtk+27;critRate+15", + "4": "addAtk+30;critRate+18", + "5": "addAtk+33;critRate+21" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "千岩长枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+21;critRate+9", + "2": "addAtk+24;critRate+12", + "3": "addAtk+27;critRate+15", + "4": "addAtk+30;critRate+18", + "5": "addAtk+33;critRate+21" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "四风原典": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+32", + "2": "dmgBonus+40", + "3": "dmgBonus+48", + "4": "dmgBonus+56", + "5": "dmgBonus+64" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "trigger": ["fg"] + } + } + }, + "衔珠海皇": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "Q:dmgBonus+12;Q:extraDmg+100%atk", + "2": "Q:dmgBonus+15;Q:extraDmg+125%atk", + "3": "Q:dmgBonus+18;Q:extraDmg+150%atk", + "4": "Q:dmgBonus+21;Q:extraDmg+175%atk", + "5": "Q:dmgBonus+24;Q:extraDmg+200%atk" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "魔导绪论": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "limit": ["Hydro", "Electro"] + } + } + }, + "万国诸海图谱": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+16", + "2": "dmgBonus+20", + "3": "dmgBonus+24", + "4": "dmgBonus+28", + "5": "dmgBonus+32" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "尘世之锁": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "shieldBonus+20;addAtk+20", + "2": "shieldBonus+25;addAtk+25", + "3": "shieldBonus+30;addAtk+30", + "4": "shieldBonus+35;addAtk+35", + "5": "shieldBonus+40;addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "信使": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "雾切之回光": { + "normal": { + "normal_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+28", + "2": "dmgBonus+35", + "3": "dmgBonus+42", + "4": "dmgBonus+49", + "5": "dmgBonus+56" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "幽夜华尔兹": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AE:dmgBonus+20", + "2": "AE:dmgBonus+25", + "3": "AE:dmgBonus+30", + "4": "AE:dmgBonus+35", + "5": "AE:dmgBonus+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "曚云之月": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "Q:dmgBonus+40", + "2": "Q:dmgBonus+50", + "3": "Q:dmgBonus+60", + "4": "Q:dmgBonus+70", + "5": "Q:dmgBonus+80" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "证誓之明瞳": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "energyRecharge+24", + "2": "energyRecharge+30", + "3": "energyRecharge+36", + "4": "energyRecharge+42", + "5": "energyRecharge+48" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "佣兵重剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "异世界行记": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "口袋魔导书": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "冬极白星": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "EQ:dmgBonus+12;addAtk+48", + "2": "EQ:dmgBonus+15;addAtk+60", + "3": "EQ:dmgBonus+18;addAtk+72", + "4": "EQ:dmgBonus+21;addAtk+84", + "5": "EQ:dmgBonus+24;addAtk+96" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "掠食者": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "磐岩结绿": { + "normal": { + "normal_effect": { + "1": "addHp+20;exAtk+1.2%hp", + "2": "addHp+25;exAtk+1.5%hp", + "3": "addHp+30;exAtk+1.8%hp", + "4": "addHp+35;exAtk+2.1%hp", + "5": "addHp+40;exAtk+2.4%hp" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "和璞鸢": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+22.4;dmgBonus+12", + "2": "addAtk+27.3;dmgBonus+15", + "3": "addAtk+32.2;dmgBonus+18", + "4": "addAtk+37.1;dmgBonus+21", + "5": "addAtk+42;dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "试作金珀": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "试作古华": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "试作澹月": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+36", + "2": "addAtk+45", + "3": "addAtk+54", + "4": "addAtk+63", + "5": "addAtk+72" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "试作斩岩": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+16;addDef+16", + "2": "addAtk+20;addDef+20", + "3": "addAtk+24;addDef+24", + "4": "addAtk+28;addDef+28", + "5": "addAtk+32;addDef+32" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "试作星镰": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AB:dmgBonus+16", + "2": "AB:dmgBonus+20", + "3": "AB:dmgBonus+24", + "4": "AB:dmgBonus+28", + "5": "AB:dmgBonus+32" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "雨裁": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+20", + "2": "dmgBonus+24", + "3": "dmgBonus+28", + "4": "dmgBonus+32", + "5": "dmgBonus+36" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "limit": ["Hydro", "Electro"] + } + } + }, + "鸦羽弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + "limit": ["Hydro", "Pyro"] + } + } + }, + "反曲弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "赤角石溃杵": { + "normal": { + "normal_effect": { + "1": "addDef+28", + "2": "addDef+35", + "3": "addDef+42", + "4": "addDef+49", + "5": "addDef+56" + } + }, + "fight": { + "fight_effect": { + "1": "AB:addDmg+40%def", + "2": "AB:addDmg+50%def", + "3": "AB:addDmg+60%def", + "4": "AB:addDmg+70%def", + "5": "AB:addDmg+80%def" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "宗室长弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "critRate+14", + "2": "critRate+16", + "3": "critRate+18", + "4": "critRate+22", + "5": "critRate+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "宗室大剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "critRate+14", + "2": "critRate+16", + "3": "critRate+18", + "4": "critRate+22", + "5": "critRate+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "宗室秘法录": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "critRate+14", + "2": "critRate+16", + "3": "critRate+18", + "4": "critRate+22", + "5": "critRate+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "宗室长剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "critRate+14", + "2": "critRate+16", + "3": "critRate+18", + "4": "critRate+22", + "5": "critRate+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "宗室猎枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "critRate+14", + "2": "critRate+16", + "3": "critRate+18", + "4": "critRate+22", + "5": "critRate+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "弓藏": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "A:dmgBonus+40", + "2": "A:dmgBonus+50", + "3": "A:dmgBonus+60", + "4": "A:dmgBonus+70", + "5": "A:dmgBonus+80" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "祭礼弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "祭礼残章": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "祭礼大剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "祭礼剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "历练的猎弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "螭骨剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+30", + "2": "dmgBonus+35", + "3": "dmgBonus+40", + "4": "dmgBonus+45", + "5": "dmgBonus+50" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "神射手之誓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "B:dmgBonus+24", + "2": "B:dmgBonus+30", + "3": "B:dmgBonus+36", + "4": "B:dmgBonus+42", + "5": "B:dmgBonus+48" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "银剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "飞天大御剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+24", + "2": "addAtk+28", + "3": "addAtk+32", + "4": "addAtk+36", + "5": "addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "飞天御剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+12", + "2": "addAtk+15", + "3": "addAtk+18", + "4": "addAtk+21", + "5": "addAtk+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "天空之卷": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "天空之刃": { + "normal": { + "normal_effect": { + "1": "critRate+4", + "2": "critRate+5", + "3": "critRate+6", + "4": "critRate+7", + "5": "critRate+8" + } + }, + "fight": { + "fight_effect": { + "1": "AB:extraDmg+20%atk", + "2": "AB:extraDmg+25%atk", + "3": "AB:extraDmg+30%atk", + "4": "AB:extraDmg+35%atk", + "5": "AB:extraDmg+40%atk" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 12, + "extra": { + + } + } + }, + "天空之翼": { + "normal": { + "normal_effect": { + "1": "critDmg+20", + "2": "critDmg+25", + "3": "critDmg+30", + "4": "critDmg+35", + "5": "critDmg+40" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "天空之傲": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+8", + "2": "dmgBonus+10", + "3": "dmgBonus+12", + "4": "dmgBonus+14", + "5": "dmgBonus+16" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "天空之脊": { + "normal": { + "normal_effect": { + "1": "critRate+8", + "2": "critRate+10", + "3": "critRate+12", + "4": "critRate+14", + "5": "critRate+16" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "弹弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AB:dmgBonus+36", + "2": "AB:dmgBonus+42", + "3": "AB:dmgBonus+48", + "4": "AB:dmgBonus+54", + "5": "AB:dmgBonus+60" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "雪葬的星银": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "匣里日月": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AEQ:dmgBonus+20", + "2": "AEQ:dmgBonus+25", + "3": "AEQ:dmgBonus+30", + "4": "AEQ:dmgBonus+35", + "5": "AEQ:dmgBonus+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "松籁响起之时": { + "normal": { + "normal_effect": { + "1": "addAtk+16", + "2": "addAtk+20", + "3": "addAtk+24", + "4": "addAtk+28", + "5": "addAtk+32" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + }, + "group_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + }, + "time": 0, + "extra": { + + } + } + }, + "护摩之杖": { + "normal": { + "normal_effect": { + "1": "addHp+20;exAtk+0.8%hp", + "2": "addHp+25;exAtk+1%hp", + "3": "addHp+30;exAtk+1.2%hp", + "4": "addHp+35;exAtk+1.4%hp", + "5": "addHp+40;exAtk+1.6%hp" + } + }, + "fight": { + "fight_effect": { + "1": "exAtk+1%hp", + "2": "exAtk+1.2%hp", + "3": "exAtk+1.4%hp", + "4": "exAtk+1.6%hp", + "5": "exAtk+1.8%hp" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "斫峰之刃": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "shieldBonus+20;addAtk+20", + "2": "shieldBonus+25;addAtk+25", + "3": "shieldBonus+30;addAtk+30", + "4": "shieldBonus+35;addAtk+35", + "5": "shieldBonus+40;addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "降临之剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "暗巷闪光": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "钟剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "黑剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "AB:dmgBonus+20", + "2": "AB:dmgBonus+25", + "3": "AB:dmgBonus+30", + "4": "AB:dmgBonus+35", + "5": "AB:dmgBonus+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "「渔获」": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "Q:dmgBonus+16;Q:critRate+6", + "2": "Q:dmgBonus+20;Q:critRate+7.5", + "3": "Q:dmgBonus+24;Q:critRate+9", + "4": "Q:dmgBonus+28;Q:critRate+10.5", + "5": "Q:dmgBonus+32;Q:critRate+12" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "笛剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "绝弦": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "EQ:dmgBonus+24", + "2": "EQ:dmgBonus+30", + "3": "EQ:dmgBonus+36", + "4": "EQ:dmgBonus+42", + "5": "EQ:dmgBonus+48" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "无工之剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "shieldBonus+20;addAtk+20", + "2": "shieldBonus+25;addAtk+25", + "3": "shieldBonus+30;addAtk+30", + "4": "shieldBonus+35;addAtk+35", + "5": "shieldBonus+40;addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "苍翠猎弓": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "流浪乐章": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+48", + "2": "dmgBonus+60", + "3": "dmgBonus+72", + "4": "dmgBonus+84", + "5": "dmgBonus+96" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "讨龙英杰谭": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "atk+24", + "2": "atk+30", + "3": "atk+36", + "4": "atk+42", + "5": "atk+48" + }, + "time": 10, + "extra": { + + } + } + }, + "飞雷之弦振": { + "normal": { + "normal_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + } + }, + "fight": { + "fight_effect": { + "1": "A:dmgBonus+40", + "2": "A:dmgBonus+50", + "3": "A:dmgBonus+60", + "4": "A:dmgBonus+70", + "5": "A:dmgBonus+80" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "旅行剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "甲级宝珏": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+12", + "2": "addAtk+14", + "3": "addAtk+16", + "4": "addAtk+18", + "5": "addAtk+20" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "贯虹之槊": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "shieldBonus+20;addAtk+20", + "2": "shieldBonus+25;addAtk+25", + "3": "shieldBonus+30;addAtk+30", + "4": "shieldBonus+35;addAtk+35", + "5": "shieldBonus+40;addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "训练大剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "断浪长鳍": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "Q:dmgBonus+40", + "2": "Q:dmgBonus+50", + "3": "Q:dmgBonus+60", + "4": "Q:dmgBonus+70", + "5": "Q:dmgBonus+80" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "白影剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+24;addDef+24", + "2": "addAtk+30;addDef+30", + "3": "addAtk+36;addDef+36", + "4": "addAtk+42;addDef+42", + "5": "addAtk+46;addDef+46" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "白铁大剑": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "白缨枪": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "A:dmgBonus+24", + "2": "A:dmgBonus+30", + "3": "A:dmgBonus+36", + "4": "A:dmgBonus+42", + "5": "A:dmgBonus+48" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "风花之颂": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+16", + "2": "addAtk+20", + "3": "addAtk+24", + "4": "addAtk+28", + "5": "addAtk+32" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 6, + "extra": { + + } + } + }, + "暗巷的酒与诗": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "狼的末路": { + "normal": { + "normal_effect": { + "1": "addAtk+20", + "2": "addAtk+25", + "3": "addAtk+30", + "4": "addAtk+35", + "5": "addAtk+40" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+40", + "2": "addAtk+50", + "3": "addAtk+60", + "4": "addAtk+70", + "5": "addAtk+80" + }, + "group_effect": { + "1": "addAtk+40", + "2": "addAtk+50", + "3": "addAtk+60", + "4": "addAtk+70", + "5": "addAtk+80" + }, + "time": 12, + "extra": { + + } + } + }, + "笼钓瓶一心": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+15", + "2": "addAtk+15", + "3": "addAtk+15", + "4": "addAtk+15", + "5": "addAtk+15" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "猎人之径": { + "normal": { + "normal_effect": { + "1": "dmgBonus+12", + "2": "dmgBonus+15", + "3": "dmgBonus+18", + "4": "dmgBonus+21", + "5": "dmgBonus+24" + } + }, + "fight": { + "fight_effect": { + "1": "B:addDmg+160%elementalMastery", + "2": "B:addDmg+200%elementalMastery", + "3": "B:addDmg+240%elementalMastery", + "4": "B:addDmg+280%elementalMastery", + "5": "B:addDmg+320%elementalMastery" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "竭泽": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "王下近侍": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "elementalMastery+60", + "2": "elementalMastery+80", + "3": "elementalMastery+100", + "4": "elementalMastery+120", + "5": "elementalMastery+140" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "森林王器": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "elementalMastery+60", + "2": "elementalMastery+75", + "3": "elementalMastery+90", + "4": "elementalMastery+105", + "5": "elementalMastery+120" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 12, + "extra": { + + } + } + }, + "原木刀": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "elementalMastery+60", + "2": "elementalMastery+75", + "3": "elementalMastery+90", + "4": "elementalMastery+105", + "5": "elementalMastery+120" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 12, + "extra": { + + } + } + }, + "盈满之实": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "elementalMastery+120;addAtk+-25", + "2": "elementalMastery+135;addAtk+-25", + "3": "elementalMastery+150;addAtk+-25", + "4": "elementalMastery+165;addAtk+-25", + "5": "elementalMastery+180;addAtk+-25" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "贯月矢": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+16", + "2": "addAtk+20", + "3": "addAtk+24", + "4": "addAtk+28", + "5": "addAtk+32" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "赤沙之杖": { + "normal": { + "normal_effect": { + "1": "exAtk+52%elementalMastery", + "2": "exAtk+65%elementalMastery", + "3": "exAtk+78%elementalMastery", + "4": "exAtk+91%elementalMastery", + "5": "exAtk+104%elementalMastery" + } + }, + "fight": { + "fight_effect": { + "1": "exAtk+84%elementalMastery", + "2": "exAtk+105%elementalMastery", + "3": "exAtk+126%elementalMastery", + "4": "exAtk+147%elementalMastery", + "5": "exAtk+168%elementalMastery" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "圣显之钥": { + "normal": { + "normal_effect": { + "1": "addHp+20", + "2": "addHp+25", + "3": "addHp+30", + "4": "addHp+35", + "5": "addHp+40" + } + }, + "fight": { + "fight_effect": { + "1": "elementalMastery+0.56%hp", + "2": "elementalMastery+0.70%hp", + "3": "elementalMastery+0.84%hp", + "4": "elementalMastery+0.98%hp", + "5": "elementalMastery+1.12%hp" + }, + "group_effect": { + "1": "elementalMastery+0.2%hp", + "2": "elementalMastery+0.25%hp", + "3": "elementalMastery+0.30%hp", + "4": "elementalMastery+0.35%hp", + "5": "elementalMastery+0.4%hp" + }, + "time": 0, + "extra": { + + } + } + }, + "玛海菈的水色": { + "normal": { + "normal_effect": { + "1": "exAtk+24%elementalMastery", + "2": "exAtk+30%elementalMastery", + "3": "exAtk+36%elementalMastery", + "4": "exAtk+42%elementalMastery", + "5": "exAtk+48%elementalMastery" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "exAtk+7.2%elementalMastery", + "2": "exAtk+9%elementalMastery", + "3": "exAtk+10.8%elementalMastery", + "4": "exAtk+12.6%elementalMastery", + "5": "exAtk+14.4%elementalMastery" + }, + "time": 0, + "extra": { + + } + } + }, + "西福斯的月光": { + "normal": { + "normal_effect": { + "1": "energyRecharge+0.036%elementalMastery", + "2": "energyRecharge+0.045%elementalMastery", + "3": "energyRecharge+0.054%elementalMastery", + "4": "energyRecharge+0.063%elementalMastery", + "5": "energyRecharge+0.072%elementalMastery" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "energyRecharge+0.0108%elementalMastery", + "2": "energyRecharge+0.0135%elementalMastery", + "3": "energyRecharge+0.0162%elementalMastery", + "4": "energyRecharge+0.0189%elementalMastery", + "5": "energyRecharge+0.0216%elementalMastery" + }, + "time": 0, + "extra": { + + } + } + }, + "流浪的晚星": { + "normal": { + "normal_effect": { + "1": "exAtk+24%elementalMastery", + "2": "exAtk+30%elementalMastery", + "3": "exAtk+36%elementalMastery", + "4": "exAtk+42%elementalMastery", + "5": "exAtk+48%elementalMastery" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "exAtk+7.2%elementalMastery", + "2": "exAtk+9%elementalMastery", + "3": "exAtk+10.8%elementalMastery", + "4": "exAtk+12.6%elementalMastery", + "5": "exAtk+14.4%elementalMastery" + }, + "time": 0, + "extra": { + + } + } + }, + "风信之锋": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+12;elementalMastery+48", + "2": "addAtk+15;elementalMastery+60", + "3": "addAtk+18;elementalMastery+72", + "4": "addAtk+21;elementalMastery+84", + "5": "addAtk+24;elementalMastery+96" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "千夜浮梦": { + "normal": { + "normal_effect": { + "1": "dmgBonus+30", + "2": "dmgBonus+42", + "3": "dmgBonus+54", + "4": "dmgBonus+66", + "5": "dmgBonus+78" + } + }, + "fight": { + "fight_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "图莱杜拉的回忆": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "A:dmgBonus+48", + "2": "A:dmgBonus+60", + "3": "A:dmgBonus+72", + "4": "A:dmgBonus+84", + "5": "A:dmgBonus+96" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "东花坊时雨": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "dmgBonus+16", + "2": "dmgBonus+20", + "3": "dmgBonus+24", + "4": "dmgBonus+28", + "5": "dmgBonus+32" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "裁叶萃光": { + "normal": { + "normal_effect": { + "1": "critRate+4", + "2": "critRate+5", + "3": "critRate+6", + "4": "critRate+7", + "5": "critRate+8" + } + }, + "fight": { + "fight_effect": { + "1": "AE:addDmg+200%elementalMastery", + "2": "AE:addDmg+230%elementalMastery", + "3": "AE:addDmg+260%elementalMastery", + "4": "AE:addDmg+290%elementalMastery", + "5": "AE:addDmg+320%elementalMastery" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 0, + "extra": { + + } + } + }, + "饰铁之花": { + "normal": { + "normal_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+12;elementalMastery+48", + "2": "addAtk+15;elementalMastery+60", + "3": "addAtk+18;elementalMastery+72", + "4": "addAtk+21;elementalMastery+84", + "5": "addAtk+24;elementalMastery+96" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 8, + "extra": { + + } + } + }, + "苇海信标": { + "normal": { + "normal_effect": { + "1": "addHp+32", + "2": "addHp+40", + "3": "addHp+48", + "4": "addHp+56", + "5": "addHp+64" + } + }, + "fight": { + "fight_effect": { + "1": "addAtk+40", + "2": "addAtk+50", + "3": "addAtk+60", + "4": "addAtk+70", + "5": "addAtk+80" + }, + "group_effect": { + "1": "", + "2": "", + "3": "", + "4": "", + "5": "" + }, + "time": 8, + "extra": { + + } + } + } +} \ No newline at end of file diff --git a/GenshinUID/genshinuid_enka/etc/MAP_PATH.py b/GenshinUID/genshinuid_enka/etc/MAP_PATH.py new file mode 100644 index 00000000..711dbdba --- /dev/null +++ b/GenshinUID/genshinuid_enka/etc/MAP_PATH.py @@ -0,0 +1,48 @@ +import json +from pathlib import Path +from typing import Dict, List, TypedDict + +EFFECT_PATH = Path(__file__).parents[1] / 'effect' + + +class ActionMAP(TypedDict): + name: str + type: str + plus: float + value: List[str] + + +with open(EFFECT_PATH / 'weapon_effect.json', "r", encoding='UTF-8') as f: + weapon_effect_map: Dict[ + str, Dict[str, Dict[str, Dict[str, str]]] + ] = json.load(f) + +with open(EFFECT_PATH / 'char_effect.json', "r", encoding='UTF-8') as f: + char_effect_map: Dict[ + str, Dict[str, Dict[str, Dict[str, str]]] + ] = json.load(f) + +with open(EFFECT_PATH / 'artifact_effect.json', "r", encoding='UTF-8') as f: + artifact_effect_map: Dict[str, Dict[str, Dict[str, str]]] = json.load(f) + +with open(EFFECT_PATH / 'value_attr.json', 'r', encoding='UTF-8') as f: + ATTR_MAP: Dict[str, List[str]] = json.load(f) + +with open(EFFECT_PATH / 'char_action.json', 'r', encoding='UTF-8') as f: + char_action: Dict[str, Dict[str, ActionMAP]] = json.load(f) + +with open(EFFECT_PATH / 'dmg_map.json', 'r', encoding='UTF-8') as f: + dmgMap = json.load(f) + +with open(EFFECT_PATH / 'skill_add.json', 'r', encoding='UTF-8') as f: + avatarName2SkillAdd: Dict[str, List[str]] = json.load(f) + +COLOR_MAP = { + 'Anemo': (0, 145, 137), + 'Cryo': (4, 126, 152), + 'Dendro': (28, 145, 0), + 'Electro': (133, 12, 159), + 'Geo': (147, 112, 3), + 'Hydro': (51, 73, 162), + 'Pyro': (136, 28, 33), +} diff --git a/GenshinUID/genshinuid_enka/etc/base_info.py b/GenshinUID/genshinuid_enka/etc/base_info.py new file mode 100644 index 00000000..c24d2003 --- /dev/null +++ b/GenshinUID/genshinuid_enka/etc/base_info.py @@ -0,0 +1,83 @@ +PERCENT_ATTR = ['dmgBonus', 'addAtk', 'addDef', 'addHp'] + +baseWeaponInfo = { + 'itemId': 0, + 'nameTextMapHash': '0', + 'weaponIcon': 'UI_EquipIcon_Bow_Changed', + 'weaponType': '', + 'weaponName': '', + 'weaponStar': 0, + 'promoteLevel': 0, + 'weaponLevel': 0, + 'weaponAffix': 1, + 'weaponStats': [ + { + 'appendPropId': '', + 'statName': '基础攻击力', + 'statValue': 0, + }, + { + 'appendPropId': '', + 'statName': '', + 'statValue': 0, + }, + ], + 'weaponEffect': '', +} + +baseFightProp = { + 'hp': 0.0, + 'baseHp': 0.0, + 'addHp': 0.0, + 'exHp': 0.0, + 'atk': 0.0, + 'baseAtk': 0.0, + 'addAtk': 0.0, + 'exAtk': 0.0, + 'def': 0.0, + 'baseDef': 0.0, + 'addDef': 0.0, + 'exDef': 0.0, + 'elementalMastery': 0.0, + 'critRate': 0.05, + 'critDmg': 0.5, + 'energyRecharge': 1.0, + 'healBonus': 0.0, + 'healedBonus': 0.0, + 'physicalDmgSub': 0.0, + 'physicalDmgBonus': 0.0, + 'dmgBonus': 0.0, +} + +ATTR_MAP = { + '元素精通': 'elementalMastery', + '物理伤害加成': 'physicalDmgBonus', + '元素伤害加成': 'dmgBonus', + '充能效率': 'energyRecharge', + '暴击伤害': 'critDmg', + '暴击率': 'critRate', + '攻击力': 'addAtk', + '防御力': 'addDef', + '生命值': 'addHp', + '百分比血量': 'addHp', +} + +ELEMENT_MAP = { + '风': 'Anemo', + '冰': 'Cryo', + '草': 'Dendro', + '雷': 'Electro', + '岩': 'Geo', + '水': 'Hydro', + '火': 'Pyro', +} + +ICON_ELEMENT = { + '风': 'Wind', + '冰': 'Ice', + '草': 'Grass', + '水': 'Water', + '雷': 'Electric', + '岩': 'Rock', + '火': 'Fire', +} diff --git a/GenshinUID/genshinuid_enka/etc/etc.py b/GenshinUID/genshinuid_enka/etc/etc.py new file mode 100644 index 00000000..23cabe56 --- /dev/null +++ b/GenshinUID/genshinuid_enka/etc/etc.py @@ -0,0 +1,201 @@ +from pathlib import Path + +from PIL import Image + +from .MAP_PATH import ATTR_MAP, dmgMap + +R_PATH = Path(__file__).parents[1] +TEXT_PATH = R_PATH / 'texture2D' + +SCORE_MAP = { + '暴击率': 2, + '暴击伤害': 1, + '元素精通': 0.25, + '元素充能效率': 0.65, + '百分比血量': 0.86, + '百分比攻击力': 1, + '百分比防御力': 0.7, + '血量': 0.014, + '攻击力': 0.12, + '防御力': 0.18, +} + +VALUE_MAP = { + '攻击力': 4.975, + '血量': 4.975, + '防御力': 6.2, + '元素精通': 19.75, + '元素充能效率': 5.5, + '暴击率': 3.3, + '暴击伤害': 6.6, +} + + +def get_star_png(star: int) -> Image.Image: + png = Image.open(TEXT_PATH / 's-{}.png'.format(str(star))) + return png + + +def strLenth(r: str, size: int, limit: int = 540) -> str: + result = '' + temp = 0 + for i in r: + if temp >= limit: + result += '\n' + i + temp = 0 + else: + result += i + + if i.isdigit(): + temp += round(size / 10 * 6) + elif i == '/': + temp += round(size / 10 * 2.2) + elif i == '.': + temp += round(size / 10 * 3) + elif i == '%': + temp += round(size / 10 * 9.4) + else: + temp += size + return result + + +async def get_artifacts_score(subName: str, subValue: int) -> int: + score = subValue * SCORE_MAP[subName] + return score + + +async def get_artifacts_value( + subName: str, + subValue: float, + baseAtk: int, + baseHp: int, + baseDef: int, + charName: str, +) -> float: + if charName not in ATTR_MAP: + ATTR_MAP[charName] = ['攻击力', '暴击率', '暴击伤害'] + if subName in ATTR_MAP[charName] and subName in ['血量', '防御力', '攻击力']: + if subName == '血量': + base = (subValue / baseHp) * 100 + elif subName == '防御力': + base = (subValue / baseDef) * 100 + elif subName == '攻击力': + base = (subValue / baseAtk) * 100 + else: + base = 1.0 + value = float('{:.2f}'.format(base / VALUE_MAP[subName])) + elif subName in ['百分比血量', '百分比防御力', '百分比攻击力']: + subName = subName.replace('百分比', '') + if subName in ATTR_MAP[charName]: + value = float('{:.2f}'.format(subValue / VALUE_MAP[subName])) + else: + return 0 + else: + if subName in ATTR_MAP[charName]: + value = float('{:.2f}'.format(subValue / VALUE_MAP[subName])) + else: + value = 0 + + if charName == '胡桃' and subName == '攻击力': + value = value * 0.4 + return value + + +async def get_all_artifacts_value( + raw_data: dict, baseHp: int, baseAtk: int, baseDef: int, char_name: str +) -> float: + artifactsValue = 0 + raw_data = raw_data['equipList'] + for aritifact in raw_data: + for i in aritifact['reliquarySubstats']: + subName = i['statName'] + subValue = i['statValue'] + value_temp = await get_artifacts_value( + subName, subValue, baseAtk, baseHp, baseDef, char_name + ) + artifactsValue += value_temp + return artifactsValue + + +async def get_first_main(mainName: str) -> str: + if '伤害加成' in mainName: + equipMain = mainName[0] + elif '元素' in mainName: + equipMain = mainName[2] + elif '百分比' in mainName: + if '血量' in mainName: + equipMain = '生' + else: + equipMain = mainName[3] + else: + equipMain = mainName[0] + return equipMain + + +async def get_char_std(raw_data: dict, char_name: str) -> dmgMap: + weaponName = raw_data['weaponInfo']['weaponName'] + + equipMain = '' + for aritifact in raw_data['equipList']: + mainName = aritifact['reliquaryMainstat']['statName'] + artifactsPos = aritifact['aritifactPieceName'] + if artifactsPos == '时之沙': + equipMain += await get_first_main(mainName) + elif artifactsPos == '空之杯': + equipMain += await get_first_main(mainName) + elif artifactsPos == '理之冠': + equipMain += await get_first_main(mainName) + + if 'equipSets' in raw_data: + equipSets = raw_data['equipSets'] + else: + artifact_set_list = [] + for i in raw_data['equipList']: + artifact_set_list.append(i['aritifactSetsName']) + equipSetList = set(artifact_set_list) + equipSets = {'type': '', 'set': ''} + for equip in equipSetList: + if artifact_set_list.count(equip) >= 4: + equipSets['type'] = '4' + equipSets['set'] = equip + break + elif artifact_set_list.count(equip) == 1: + pass + elif artifact_set_list.count(equip) >= 2: + equipSets['type'] += '2' + equipSets['set'] += equip + + if equipSets['type'] in ['2', '']: + seq = '' + else: + seq = '{}|{}|{}'.format( + weaponName.replace('「', '').replace('」', ''), + equipSets['set'], + equipMain, + ) + + std_prop = dmgMap[char_name] + seq_temp_a = '' + seq_temp_w = '' + for std_seq in std_prop: + # 如果序列完全相同, 则直接使用这个序列 + if std_seq['seq'] == seq: + std = std_seq + break + # 如果不完全相同, 但是杯子的主词条相同, 也可以使用这个 + if len(seq) >= 2 and len(std_seq['seq']) >= 2: + if std_seq['seq'][:2] == seq[:2] and seq_temp_w == '': + seq_temp_w = std_seq + if std_seq['seq'][-2] == seq[-2] and seq_temp_a == '': + seq_temp_a = std_seq + else: + # 如果存在备选那就用备选 + if seq_temp_w: + std = seq_temp_w + elif seq_temp_a: + std = seq_temp_a + # 不存在则使用第一个 + else: + std = dmgMap[char_name][0] + + return std diff --git a/GenshinUID/genshinuid_enka/etc/get_buff_list.py b/GenshinUID/genshinuid_enka/etc/get_buff_list.py new file mode 100644 index 00000000..b946c6ca --- /dev/null +++ b/GenshinUID/genshinuid_enka/etc/get_buff_list.py @@ -0,0 +1,109 @@ +from typing import List, Literal + +from ..etc.base_info import ELEMENT_MAP +from .MAP_PATH import char_effect_map, weapon_effect_map, artifact_effect_map + + +async def get_buff_list( + raw_data: dict, + type: Literal['group', 'normal', 'fight'], + with_talent: bool = True, +) -> List[str]: + + all_effect: List[str] = [] + + # 获取初始数据 + char_name = raw_data['avatarName'] + # 处理旅行者 + if char_name == '旅行者': + for element in ELEMENT_MAP: + if raw_data['avatarElement'] == ELEMENT_MAP[element]: + char_name += f'({element})' + break + char_level = int(raw_data['avatarLevel']) + weaponName = raw_data['weaponInfo']['weaponName'] + weaponAffix = raw_data['weaponInfo']['weaponAffix'] + + main = type + if type == 'group': + main = 'fight' + + # 计算武器效果 + WEM = weapon_effect_map[weaponName] + weapon_effet = WEM[main][f'{type}_effect'][str(weaponAffix)] + all_effect.append(weapon_effet) + + # 计算圣遗物套装 + if 'equipSets' in raw_data: + equipSets = raw_data['equipSets'] + else: + artifact_set_list = [] + for i in raw_data['equipList']: + artifact_set_list.append(i['aritifactSetsName']) + equipSetList = set(artifact_set_list) + equipSets = {'type': '', 'set': ''} + for equip in equipSetList: + if artifact_set_list.count(equip) >= 4: + equipSets['type'] = '4' + equipSets['set'] = equip + break + elif artifact_set_list.count(equip) == 1: + pass + elif artifact_set_list.count(equip) >= 2: + equipSets['type'] += '2' + equipSets['set'] += '|' + equip + + if equipSets['set'].startswith('|'): + equipSets['set'] = equipSets['set'][1:] + + # 计算圣遗物buff + if equipSets['type'] == '4': + all_effect.append( + artifact_effect_map[equipSets['set']][f'{type}_effect']['2'] + ) + all_effect.append( + artifact_effect_map[equipSets['set']][f'{type}_effect']['4'] + ) + elif equipSets['type'] == '2': + all_effect.append( + artifact_effect_map[equipSets['set']][f'{type}_effect']['2'] + ) + elif equipSets['type'] == '22': + if equipSets['set'][-2] == '之': + e = equipSets['set'][-3:] + else: + e = equipSets['set'][-2:] + + if equipSets['set'][2] == '之': + t = equipSets['set'][:3] + else: + t = equipSets['set'][:2] + + for i in artifact_effect_map: + if i.startswith(t): + all_effect.extend( + artifact_effect_map[i][f'{type}_effect']['2'].split(';') + ) + elif i.endswith(e): + all_effect.extend( + artifact_effect_map[i][f'{type}_effect']['2'].split(';') + ) + + # 计算技能buff + if char_name in char_effect_map: + if with_talent: + for talent in char_effect_map[char_name][main][f'{type}_talent']: + if len(raw_data['talentList']) >= int(talent): + all_effect.append( + char_effect_map[char_name][main][f'{type}_talent'][ + talent + ] + ) + # 计算角色buff + for skill in char_effect_map[char_name][main][f'{type}_skill']: + if char_level >= int(skill): + all_effect.append( + char_effect_map[char_name][main][f'{type}_skill'][skill] + ) + + return all_effect diff --git a/GenshinUID/genshinuid_enka/etc/status_change.py b/GenshinUID/genshinuid_enka/etc/status_change.py new file mode 100644 index 00000000..7e73e28e --- /dev/null +++ b/GenshinUID/genshinuid_enka/etc/status_change.py @@ -0,0 +1,433 @@ +STATUS_CHAR_LIST = { + '魈': [ + { + 'name': 'Q普通攻击/重击/下落攻击伤害提升', + 'type': '攻击力', + 'plus': 1, + 'value': [ + '58.5%', + '61.9%', + '65.5%', + '70.0%', + '73.5%', + '77.0%', + '81.6%', + '86.1%', + '90.6%', + '95.2%', + '99.8%', + '104.3%', + '108.9%', + '113.4%', + '117.9%', + ], + 'effect': 'ABC:dmgBonus+{}', + } + ], + '诺艾尔': [ + { + 'name': 'Q攻击力提高', + 'type': '防御', + 'plus': 1, + 'value': [ + '40%', + '43%', + '46%', + '50%', + '53%', + '56%', + '60%', + '64%', + '68%', + '72%', + '76%', + '80%', + '85%', + '90%', + '95%', + ], + 'effect': 'exAtk+{}def', + } + ], + '胡桃': [ + { + 'name': 'E攻击力提高', + 'type': '生命值', + 'plus': 1, + 'value': [ + '3.84%', + '4.07%', + '4.30%', + '4.60%', + '4.83%', + '5.06%', + '5.36%', + '5.66%', + '5.96%', + '6.26%', + '6.55%', + '6.85%', + '7.15%', + '7.45%', + '7.75%', + ], + 'effect': 'exAtk+{}hp', + } + ], + '烟绯': [ + { + 'name': 'Q重击伤害提升', + 'type': '攻击力', + 'plus': 1, + 'value': [ + '33%', + '35%', + '37%', + '40%', + '42%', + '44%', + '47%', + '49%', + '52%', + '54%', + '57%', + '60%', + '62%', + '65%', + '67%', + ], + 'effect': 'B:dmgBonus+{}', + } + ], + '珊瑚宫心海': [ + { + 'name': 'Q普通攻击伤害提高', + 'type': '生命值', + 'plus': 1, + 'value': [ + '4.8%', + '5.2%', + '5.6%', + '6.0%', + '6.4%', + '6.8%', + '7.3%', + '7.7%', + '8.2%', + '8.7%', + '9.2%', + '9.7%', + '10.3%', + '10.9%', + '11.5%', + ], + 'effect': 'A:addDmg+{}hp', + }, + { + 'name': 'Q重击伤害提高', + 'type': '生命值', + 'plus': 1, + 'value': [ + '6.8%', + '7.3%', + '7.8%', + '8.5%', + '9.0%', + '9.5%', + '10.2%', + '10.8%', + '11.5%', + '12.2%', + '12.9%', + '13.6%', + '14.4%', + '15.2%', + '16.1%', + ], + 'effect': 'B:addDmg+{}hp', + }, + { + 'name': 'Q化海月伤害提高', + 'type': '生命值', + 'plus': 1, + 'value': [ + '7.1%', + '7.6%', + '8.2%', + '8.9%', + '9.4%', + '9.9%', + '10.6%', + '11.4%', + '12.1%', + '12.8%', + '13.5%', + '14.2%', + '15.1%', + '16.0%', + '16.9%', + ], + 'effect': 'E:addDmg+{}hp', + }, + ], + '荒泷一斗': [ + { + 'name': 'Q攻击力提高', + 'type': '防御', + 'plus': 1, + 'value': [ + '57.6%', + '61.9%', + '66.2%', + '72.0%', + '76.3%', + '80.6%', + '86.4%', + '92.2%', + '97.9%', + '103.7%', + '109.4%', + '115.2%', + '122.4%', + '129.6%', + '136.8%', + ], + 'effect': 'exAtk+{}def', + } + ], + '宵宫': [ + { + 'name': 'A普通攻击伤害提升', + 'type': '攻击力', + 'plus': 1, + 'value': [ + 1.3790899515151978, + 1.4017900228500366, + 1.424489974975586, + 1.4539999961853027, + 1.476699948310852, + 1.499400019645691, + 1.5289100408554077, + 1.558419942855835, + 1.5879299640655518, + 1.6174399852752686, + 1.6469500064849854, + 1.6764600276947021, + 1.705970048904419, + 1.7354799509048462, + 1.764989972114563, + ], + 'effect': 'A:baseArea+{}', + } + ], + '流浪者': [ + { + 'name': 'A普通攻击伤害提升', + 'type': '攻击力', + 'plus': 1, + 'value': [ + 1.3298250436782837, + 1.3495750427246094, + 1.369325041770935, + 1.3949999809265137, + 1.4147499799728394, + 1.434499979019165, + 1.4601750373840332, + 1.4858499765396118, + 1.51152503490448, + 1.5371999740600586, + 1.5628750324249268, + 1.5885499715805054, + 1.6142250299453735, + 1.6398999691009521, + 1.6655750274658203, + ], + 'effect': 'A:baseArea+{}', + }, + { + 'name': 'A普通攻击伤害提升', + 'type': '攻击力', + 'plus': 1, + 'value': [ + 1.2638599872589111, + 1.2796599864959717, + 1.2954599857330322, + 1.315999984741211, + 1.3317999839782715, + 1.347599983215332, + 1.3681399822235107, + 1.3886799812316895, + 1.4092199802398682, + 1.4297599792480469, + 1.4502999782562256, + 1.4708399772644043, + 1.491379976272583, + 1.5119199752807617, + 1.5324599742889404, + ], + 'effect': 'B:baseArea+{}', + }, + ], + '神里绫人': [ + { + 'name': 'Q普通攻击伤害提升', + 'type': '攻击力', + 'plus': 1, + 'value': [ + '11.0%', + '12.0%', + '13.0%', + '14.0%', + '15.0%', + '16.0%', + '17.0%', + '18.0%', + '19.0%', + '20.0%', + '20.0%', + '20.0%', + '20.0%', + '20.0%', + '20.0%', + ], + 'effect': 'A:dmgBonus+{}', + }, + { + 'name': 'E浪闪', + 'type': '生命值', + 'plus': 4, + 'value': [ + 0.005611000116914511, + 0.006066999863833189, + 0.006523999851197004, + 0.0071760001592338085, + 0.007633000146597624, + 0.008155000396072865, + 0.00887299980968237, + 0.009589999914169312, + 0.01030800025910139, + 0.011091000400483608, + 0.011873999610543251, + 0.012656999751925468, + 0.013438999652862549, + 0.014221999794244766, + 0.015004999935626984, + ], + 'effect': '瞬水剑:addDmg+{}hp', + }, + ], +} + +EXTRA_CHAR_LIST = { + '雷电将军': { + "Q愿力加成": { + "type": "攻击", + "plus": 1, + "value": [ + "3.89+0.73", + "4.18+0.78", + "4.47+0.84", + "4.86+0.91", + "5.15+0.96", + "5.44+1.02", + "5.83+1.09", + "6.22+1.16", + "6.61+1.23", + "7.00+1.31", + "7.39+1.38", + "7.78+1.45", + "8.26+1.54", + "8.75+1.63", + "9.23+1.72", + ], + }, + 'Q伤害提升': { + "type": "攻击", + "plus": 1, + 'value': [ + 0.002199999988079071, + 0.002300000051036477, + 0.002400000113993883, + 0.0024999999441206455, + 0.0026000000070780516, + 0.0027000000700354576, + 0.00279999990016222, + 0.002899999963119626, + 0.003000000026077032, + 0.003000000026077032, + 0.003000000026077032, + 0.003000000026077032, + 0.003000000026077032, + 0.003000000026077032, + 0.003000000026077032, + ], + }, + }, + '优菈': { + "Q每层能量伤害": { + "type": "攻击", + "plus": 1, + 'value': [ + 0.7499200105667114, + 0.8109599947929382, + 0.871999979019165, + 0.9592000246047974, + 1.0202399492263794, + 1.090000033378601, + 1.185920000076294, + 1.2818399667739868, + 1.3777600526809692, + 1.4823999404907227, + 1.6023000478744507, + 1.7433019876480103, + 1.8843050003051758, + 2.0253069400787354, + 2.1791279315948486, + ], + } + }, + '纳西妲': { + "E灭净三业伤害提升0": { + "type": "攻击", + "plus": 1, + 'value': [ + 0.14880000054836273, + 0.15996000170707703, + 0.17112000286579132, + 0.1860000044107437, + 0.197160005569458, + 0.2083200067281723, + 0.2231999933719635, + 0.2380799949169159, + 0.2529599964618683, + 0.2678399980068207, + 0.28271999955177307, + 0.29760000109672546, + 0.31619998812675476, + 0.33480000495910645, + 0.35339999198913574, + ], + }, + "E灭净三业伤害提升1": { + "type": "攻击", + "plus": 1, + 'value': [ + 0.2231999933719635, + 0.23994000256061554, + 0.2566800117492676, + 0.27900001406669617, + 0.295740008354187, + 0.31248000264167786, + 0.33480000495910645, + 0.35712000727653503, + 0.3794400095939636, + 0.4017600119113922, + 0.4240800142288208, + 0.446399986743927, + 0.47429999709129333, + 0.5022000074386597, + 0.5300999879837036, + ], + }, + }, +} diff --git a/GenshinUID/genshinuid_enka/get_enka_img.py b/GenshinUID/genshinuid_enka/get_enka_img.py new file mode 100644 index 00000000..87248d0b --- /dev/null +++ b/GenshinUID/genshinuid_enka/get_enka_img.py @@ -0,0 +1,272 @@ +import re +import json +from typing import Dict, List, Tuple, Union, Optional + +from gsuid_core.logger import logger + +from .to_card import draw_enka_card +from ..utils.error_reply import CHAR_HINT +from .draw_char_card import draw_char_img +from .draw_group_dmg import draw_group_dmg_img +from .mono.Character import Character, get_char +from ..utils.map.GS_MAP_PATH import avatarName2Element +from ..utils.resource.RESOURCE_PATH import PLAYER_PATH +from ..utils.map.name_covert import ( + name_to_avatar_id, + alias_to_char_name, + avatarId_to_enName, +) + +CHAR_TO_INT = { + '零': 0, + '一': 1, + '二': 2, + '三': 3, + '四': 4, + '五': 5, + '六': 6, + '满': 6, +} + +WEAPON_TO_INT = { + '一': 1, + '二': 2, + '三': 3, + '四': 4, + '五': 5, + '满': 5, +} + + +async def draw_enka_img( + raw_mes: str, uid: str, url: Optional[str] +) -> Union[str, Tuple[Union[bytes, str], Optional[bytes]]]: + # 获取角色名 + msg = ' '.join(re.findall('[\u4e00-\u9fa5]+', raw_mes)) + # msg = raw_mes.strip() + + # 判断是否开启成长曲线或最佳, 并且去除 + is_curve = False + is_group = False + if '成长曲线' in msg or '曲线' in msg: + is_curve = True + msg = msg.replace('成长曲线', '').replace('曲线', '') + if '队伍' in msg or '队伍伤害' in msg: + is_group = True + msg = msg.replace('队伍', '').replace('伤害', '').strip() + + if '展柜角色' in msg: + sc = await get_showcase(uid) + if isinstance(sc, str): + return sc + return sc, None + + msg_list = msg.split(' ') + char_list = [] + for msg in msg_list: + _args = await get_char_args(msg, uid) + if isinstance(_args, str): + return _args + else: + if isinstance(_args[0], str): + return _args[0] + if is_group: + char = await get_char(*_args) + char_list.append(char) + else: + break + else: + im = await draw_group_dmg_img(uid, char_list) + if isinstance(im, str): + return im + return im, None + + char = await get_char(*_args) + + if isinstance(char, str): + logger.info('[查询角色] 绘图失败, 替换的武器不正确!') + return char + + im = await draw_char_img(char, url, is_curve) + logger.info('[查询角色] 绘图完成,等待发送...') + return im + + +async def get_char_data(uid: str, char_name: str) -> Union[Dict, str]: + player_path = PLAYER_PATH / str(uid) + if '旅行者' in char_name: + char_name = '旅行者' + else: + char_name = await alias_to_char_name(char_name) + char_path = player_path / f'{char_name}.json' + if char_path.exists(): + with open(char_path, 'r', encoding='utf8') as fp: + char_data = json.load(fp) + else: + return CHAR_HINT.format(char_name) + return char_data + + +async def get_showcase(uid: str) -> Union[bytes, str]: + player_path = PLAYER_PATH / str(uid) + char_file_list = player_path.glob('*') + char_list = [] + for i in char_file_list: + file_name = i.name + if '\u4e00' <= file_name[0] <= '\u9fff': + char_list.append(file_name.split('.')[0]) + if char_list == []: + return '您还没有已缓存的角色噢~\n请先使用[强制刷新]命令缓存~' + img = await draw_enka_card(uid=uid, char_list=char_list) + return img + + +async def change_equip( + uid: str, char_data: Dict, part: str, s: str, i: int +) -> Dict: + char_name = part.replace(part[-1], '') + fake_data = await get_char_data(uid, char_name) + if isinstance(fake_data, str): + return {} + for equip in fake_data['equipList']: + if equip['aritifactPieceName'] == s: + char_data['equipList'][i] = equip + break + return char_data + + +async def get_char_args( + msg: str, uid: str +) -> Union[Tuple[Dict, Optional[str], Optional[int], Optional[int]], str]: + # 可能进来的值 + # 六命公子带天空之卷换可莉圣遗物换刻晴羽换可莉花 + # 六命公子带天空之卷换刻晴羽 + # 公子换刻晴羽 + fake_name = '' + talent_num = None + char_data = {} + weapon, weapon_affix = None, None + + msg = msg.replace('带', '换').replace('拿', '换') + + # 公子带天空之卷换可莉圣遗物 + msg_list = msg.split('换') + for index, part in enumerate(msg_list): + # 判断主体 + if index == 0: + fake_name, talent_num = await get_fake_char_str(part) + # 判断是否开启fake_char + if '圣遗物' in msg: + char_data = await get_fake_char_data(char_data, fake_name, uid) + else: + char_data = await get_char_data(uid, fake_name) + if isinstance(char_data, str): + return char_data + continue + + if '圣遗物' in part: + fake_data = await get_char_data(uid, part.replace('圣遗物', '')) + if isinstance(fake_data, str): + return fake_data + char_data = await get_fake_char_data(fake_data, fake_name, uid) + if isinstance(char_data, str): + return char_data + else: + for i, s in enumerate(['生之花', '死之羽', '时之沙', '空之杯', '理之冠']): + if '赤沙' in part: + continue + if part[-1] == s[-1]: + if isinstance(char_data, str): + return char_data + char_data = await change_equip(uid, char_data, part, s, i) + if not char_data: + return '要替换的部件不存在噢~' + break + else: + weapon, weapon_affix = await get_fake_weapon_str(part) + + return char_data, weapon, weapon_affix, talent_num + + +async def get_single_percent(char_data: Dict, uid: str, num: int, best: List): + char = Character(char_data) + await char.init_prop() + percent = float(char.percent.replace('%', '')) + logger.info(f'[查找最佳圣遗物] UID:{uid}第{num}次迭代...毕业度为{percent}!') + best.append({'percent': percent, 'char_data': char.card_prop}) + + +async def get_artifacts_repo(uid: str) -> Dict[str, List[Dict]]: + artifacts_repo = { + 'flower': [], + 'plume': [], + 'sands': [], + 'goblet': [], + 'circlet': [], + } + logger.info(f'[建立圣遗物仓库] UID:{uid}开始...') + # 开始查找全部角色 + uid_fold = PLAYER_PATH / str(uid) + char_file_list = uid_fold.glob('*') + for i in char_file_list: + if '\u4e00' <= i.name[0] <= '\u9fff': + with open(uid_fold / f'{i.name}', 'r', encoding='UTF-8') as f: + raw_data = json.load(f) + for equip in raw_data['equipList']: + if equip not in artifacts_repo[equip['aritifactSetPiece']]: + artifacts_repo[equip['aritifactSetPiece']].append(equip) + logger.info( + f'[建立圣遗物仓库] UID:{uid}完成!共计\ + {len(artifacts_repo["flower"])},\ + {len(artifacts_repo["plume"])},\ + {len(artifacts_repo["sands"])},\ + {len(artifacts_repo["goblet"])},\ + {len(artifacts_repo["circlet"])}个圣遗物!' + ) + return artifacts_repo + + +async def get_fake_char_data( + char_data: Dict, fake_name: str, uid: str +) -> Union[Dict, str]: + fake_name = await alias_to_char_name(fake_name) + original_data = await get_char_data(uid, fake_name) + if isinstance(original_data, Dict): + char_data['weaponInfo'] = original_data['weaponInfo'] + char_data['avatarName'] = fake_name + char_data['avatarId'] = await name_to_avatar_id(fake_name) + en_name = await avatarId_to_enName(char_data['avatarId']) + char_data['avatarEnName'] = en_name + if fake_name in avatarName2Element: + char_data['avatarElement'] = avatarName2Element[fake_name] + else: + return '要查询的角色不存在...' + char_data['avatarLevel'] = '90' + char_data['avatarSkill'] = [ + {'skillLevel': 10, 'skillIcon': 'Skill_A_02'}, + {'skillLevel': 10, 'skillIcon': f'Skill_S_{en_name}_01'}, + {'skillLevel': 10, 'skillIcon': f'Skill_E_{en_name}_01'}, + ] + return char_data + + +async def get_fake_char_str(char_name: str) -> Tuple[str, Optional[int]]: + ''' + 获取一个角色信息 + + ''' + talent_num = None + if '命' in char_name and char_name[0] in CHAR_TO_INT: + talent_num = CHAR_TO_INT[char_name[0]] + char_name = char_name[2:] + return char_name, talent_num + + +async def get_fake_weapon_str(msg: str) -> Tuple[str, Optional[int]]: + weapon_affix = None + if '精' in msg and msg[1] in WEAPON_TO_INT: + weapon_affix = WEAPON_TO_INT[msg[1]] + weapon = msg[2:] + else: + weapon = msg + return weapon, weapon_affix diff --git a/GenshinUID/genshinuid_enka/mono/Character.py b/GenshinUID/genshinuid_enka/mono/Character.py new file mode 100644 index 00000000..08f8e21e --- /dev/null +++ b/GenshinUID/genshinuid_enka/mono/Character.py @@ -0,0 +1,903 @@ +from copy import deepcopy +from typing import Dict, List, Tuple, Optional + +from nonebot.log import logger + +from .Power import sp_prop +from ..etc.get_buff_list import get_buff_list +from ...genshinuid_config.gs_config import gsconfig +from ...gsuid_utils.api.minigg.models import MiniGGError +from ..etc.status_change import EXTRA_CHAR_LIST, STATUS_CHAR_LIST +from ..etc.MAP_PATH import ActionMAP, char_action, avatarName2SkillAdd +from ...utils.map.GS_MAP_PATH import avatarName2Weapon, avatarName2Element +from ...utils.map.name_covert import name_to_avatar_id, avatar_id_to_char_star +from ...utils.ambr_to_minigg import ( + convert_ambr_to_minigg, + convert_ambr_to_weapon, +) +from ..etc.base_info import ( + ATTR_MAP, + ELEMENT_MAP, + ICON_ELEMENT, + PERCENT_ATTR, + baseFightProp, + baseWeaponInfo, +) +from ...gsuid_utils.api.minigg.request import ( + get_weapon_info, + get_weapon_stats, + get_character_info, + get_character_stats, +) + + +class Character: + def __init__(self, card_prop: Dict): + # 面板数据 + self.card_prop: Dict = card_prop + # 无命座效果 + self.without_talent_card = card_prop + # 战斗数据 + self.fight_prop: Dict[str, float] = {} + # 战斗数据 + self.without_talent_fight: Dict[str, float] = {} + # 实时数据 + self.real_prop: Dict[str, float] = {} + + # 角色等级,名称,元素,武器类型 + self.char_level: int = int(card_prop['avatarLevel']) + self.char_id: str = '10000029' + self.char_name: str = card_prop['avatarName'] + self.char_element = self.card_prop['avatarElement'] + self.char_fetter = self.card_prop['avatarFetter'] + self.char_talent: int = len(self.card_prop['talentList']) + self.weapon_type = self.card_prop['weaponInfo']['weaponType'] + self.char_bytes: Optional[bytes] = None + self.rarity: str = '4' + + self.power_name: str = '' + self.attack_type: str = '' + + # 角色的圣遗物总分 + self.artifacts_all_score: float = 0 + self.percent: str = '0.0' + self.dmg_data: Dict = {} + self.seq_str: str = '无匹配' + + # 特殊 + self.sp_list: List = [] + self.sp: sp_prop = sp_prop() + self.extra_effect: Dict = {} + + self.time: float = 0 + self.buff: List = [] + self.enemy_debuff: List = [] + self.power_list: Dict[str, ActionMAP] = {} + + # 处理旅行者 + self.s_char_name = self.char_name + if self.char_name == '旅行者': + for element in ELEMENT_MAP: + if self.char_element == ELEMENT_MAP[element]: + self.s_char_name += f'({element})' + break + + async def new( + self, + weapon: Optional[str] = None, + weapon_affix: Optional[int] = None, + talent_num: Optional[int] = None, + ): + ''' + <初始化角色 - 1> + + <新生成角色的基础属性> + 如果要替换武器也在这边进行处理 + + 参数: + weapon: `Optional[str]` + 武器名称(fake) + weapon_affix: `Optional[int]` + 武器精炼次数(fake) + talent_num: `Optional[int]` + 命座数量(fake) + ''' + if not gsconfig.get_config('OldPanle').data: + self.card_prop = await self.get_card_prop( + weapon, weapon_affix, talent_num + ) + if self.card_prop == {}: + return '要替换的武器不正确或发生了未知错误~' + self.baseHp = self.card_prop['avatarFightProp']['baseHp'] + self.baseAtk = self.card_prop['avatarFightProp']['baseAtk'] + self.baseDef = self.card_prop['avatarFightProp']['baseDef'] + self.rarity = await avatar_id_to_char_star( + str(self.card_prop['avatarId']) + ) + self.char_id = await name_to_avatar_id(self.char_name) + + async def get_card_prop( + self, + weapon: Optional[str] = None, + weapon_affix: Optional[int] = None, + talent_num: Optional[int] = None, + ) -> dict: + # 创造一个假武器 + if weapon: + weapon_info = deepcopy(baseWeaponInfo) + weapon_raw_data = await get_weapon_info(weapon) + if isinstance(weapon_raw_data, MiniGGError) or isinstance( + weapon_raw_data, List + ): + weapon_raw_data = await convert_ambr_to_weapon(weapon) + if not weapon_raw_data: + return {} + else: + weapon_level_data = weapon_raw_data + weapon_info['weaponLevel'] = 90 + weapon_info['promoteLevel'] = 6 + else: + weapon_info['weaponStar'] = int(weapon_raw_data['rarity']) + if weapon_info['weaponStar'] >= 3: + weapon_level_data = await get_weapon_stats(weapon, 90) + weapon_info['weaponLevel'] = 90 + weapon_info['promoteLevel'] = 6 + else: + weapon_level_data = await get_weapon_stats(weapon, 70) + weapon_info['weaponLevel'] = 70 + weapon_info['promoteLevel'] = 4 + if isinstance(weapon_level_data, MiniGGError) or isinstance( + weapon_level_data, List + ): + return {} + weapon_info['weaponName'] = weapon_raw_data['name'] + if weapon_affix is None: + if weapon_info['weaponStar'] >= 5: + weapon_info['weaponAffix'] = 1 + else: + weapon_info['weaponAffix'] = 5 + else: + weapon_info['weaponAffix'] = weapon_affix + weapon_info['weaponStats'][0]['statValue'] = round( + weapon_level_data['attack'] + ) + if weapon_raw_data['substat'] != '': + weapon_info['weaponStats'][1]['statName'] = weapon_raw_data[ + 'substat' + ] + if weapon_raw_data['substat'] == '元素精通': + fake_value = round(weapon_level_data['specialized']) + else: + fake_value = float( + '{:.2f}'.format(weapon_level_data['specialized'] * 100) + ) + weapon_info['weaponStats'][1]['statValue'] = fake_value + if 'effect' in weapon_raw_data: + weapon_info['weaponEffect'] = weapon_raw_data['effect'].format( + *weapon_raw_data[ + 'r{}'.format(str(weapon_info['weaponAffix'])) + ] + ) + else: + weapon_info['weaponEffect'] = '无特效。' + weapon_info['weaponType'] = weapon_raw_data['weapontype'] + self.card_prop['weaponInfo'] = weapon_info + + # 修改假命座: + + if self.s_char_name.startswith('旅行者'): + icon_name = f'Player{ICON_ELEMENT[self.s_char_name[-2]]}' + else: + icon_name = self.card_prop['avatarEnName'] + + if talent_num is None: + talent_num = len(self.card_prop['talentList']) + + if talent_num or talent_num == 0: + talent_list = [] + for i in range(1, talent_num + 1): + talent_list.append( + { + 'talentId': 300 + i, + 'talentName': f'FakeTalent{i}', + 'talentIcon': f'UI_Talent_S_{icon_name}_0{i}', + } + ) + self.card_prop['talentList'] = talent_list + + fight_prop = await self.get_base_prop(self.char_name, self.char_level) + self.card_prop['avatarFightProp'] = fight_prop + + self.without_talent_card = self.card_prop + # 计算圣遗物效果 + all_effects = await get_artifacts_value(self.card_prop) + part_effects = deepcopy(all_effects) + + all_effects.extend(await get_buff_list(self.card_prop, 'normal')) + part_effects.extend( + await get_buff_list(self.card_prop, 'normal', False) + ) + + fight_prop_part = await self.get_effect_prop( + deepcopy(fight_prop), part_effects, self.char_name + ) + fight_prop_all = await self.get_effect_prop( + deepcopy(fight_prop), all_effects, self.char_name + ) + + self.card_prop['avatarFightProp'] = fight_prop_all + self.without_talent_card['avatarFightProp'] = fight_prop_part + return self.card_prop + + async def get_base_prop(self, char_name: str, char_level: int) -> Dict: + # 武器基本属 + weapon_atk = self.card_prop['weaponInfo']['weaponStats'][0][ + 'statValue' + ] + if len(self.card_prop['weaponInfo']['weaponStats']) > 1: + weapon_sub = self.card_prop['weaponInfo']['weaponStats'][1][ + 'statName' + ] + weapon_sub_val = self.card_prop['weaponInfo']['weaponStats'][1][ + 'statValue' + ] + else: + weapon_sub = '' + weapon_sub_val = 0 + + fight_prop = deepcopy(baseFightProp) + if '珊瑚宫心海' == char_name: + fight_prop['critRate'] -= 1.0 + fight_prop['healBonus'] += 0.25 + + char_name_covert = char_name + if char_name == '旅行者': + char_name_covert = '荧' + + char_raw = await get_character_info(name=char_name_covert) + self.char_id = await name_to_avatar_id(char_name_covert) + if not self.char_id and char_name != '旅行者': + return {} + if isinstance(char_raw, MiniGGError) or isinstance(char_raw, List): + char_raw = char_data = await convert_ambr_to_minigg(self.char_id) + else: + char_data = await get_character_stats(char_name_covert, char_level) + + if ( + isinstance(char_data, List) + or isinstance(char_data, MiniGGError) + or char_data is None + ): + return {} + + fight_prop['baseHp'] = char_data['hp'] + fight_prop['baseAtk'] = char_data['attack'] + weapon_atk + fight_prop['baseDef'] = char_data['defense'] + fight_prop['exHp'] = 0 + fight_prop['exAtk'] = 0 + fight_prop['exDef'] = 0 + + # 计算突破加成 + if isinstance(char_raw, dict): + for attr in ATTR_MAP: + if attr in char_raw['substat']: + sp = char_data['specialized'] + if attr == '暴击伤害': + sp -= 0.5 + elif attr == '暴击率': + sp -= 0.05 + fight_prop[ATTR_MAP[attr]] += sp + if attr in weapon_sub: + if attr == '元素精通': + weapon_sub_val *= 100 + fight_prop[ATTR_MAP[attr]] += weapon_sub_val / 100 + else: + return {} + + return fight_prop + + async def init_prop(self): + ''' + <初始化角色 - 2> + + 生成角色的战斗属性和毕业度 + ''' + await self.get_fight_prop() + + async def get_effect_prop( + self, + prop: dict, + effect_list: List[str], + char_name: str, + ) -> dict: + logger.debug(effect_list) + if 'A_d' not in prop: + for attr in [ + 'shieldBonus', + 'addDmg', + 'addHeal', + 'ignoreDef', + 'd', + 'g', + 'a', + ]: + prop[attr] = 0 + prop['k'] = 1 + prop['sp'] = [] + prop['baseArea'] = 1 + if prop['baseHp'] + prop['addHp'] == prop['hp']: + prop['exHp'] = prop['addHp'] + prop['exAtk'] = prop['addAtk'] + prop['exDef'] = prop['addDef'] + prop['addHp'] = 0 + prop['addAtk'] = 0 + prop['addDef'] = 0 + + # 给每个技能 分别添加上属性 + for prop_attr in deepcopy(prop): + for prop_limit in ['A', 'B', 'C', 'E', 'Q']: + prop[f'{prop_limit}_{prop_attr}'] = prop[prop_attr] + + weapon_type = avatarName2Weapon[char_name] + + # 计算角色伤害加成应该使用什么 + for prop_limit in ['A', 'B', 'C', 'E', 'Q']: + if weapon_type == '法器' or char_name in [ + '荒泷一斗', + '刻晴', + '诺艾尔', + '胡桃', + '宵宫', + '魈', + '神里绫华', + ]: + prop['{}_dmgBonus'.format(prop_limit)] = prop['dmgBonus'] + elif weapon_type == '弓': + if prop_limit in ['A', 'C']: + prop['{}_dmgBonus'.format(prop_limit)] = prop[ + 'physicalDmgBonus' + ] + elif prop_limit in ['B', 'E', 'Q']: + prop['{}_dmgBonus'.format(prop_limit)] = prop[ + 'dmgBonus' + ] + else: + if prop_limit in ['A', 'B', 'C']: + prop['{}_dmgBonus'.format(prop_limit)] = prop[ + 'physicalDmgBonus' + ] + elif prop_limit in ['E', 'Q']: + prop['{}_dmgBonus'.format(prop_limit)] = prop[ + 'dmgBonus' + ] + + # 防止复数效果 + with_trans_effect: List[str] = [] + without_trans_effect: List[str] = [] + for effect in effect_list: + if ';' in effect: + effect = effect.split(';') + else: + effect = [effect] + + for _effect in effect: + if _effect == '': + continue + else: + if '%' in _effect: + with_trans_effect.append(_effect) + else: + without_trans_effect.append(_effect) + + new_effect_list: List[str] = without_trans_effect + with_trans_effect + + # 建立一份基于基础属性的effect_list, 确保hp,atk,def有正确的值 + base_effect_list: List[List] = [] + # 正式开始计算 + for effect in new_effect_list: + if 'Resist' in effect: + self.enemy_debuff.append(effect) + continue + else: + self.buff.append(effect) + # 分割效果 + # 例如:Q:dmgBonus+96%27%em + # 分割后: + # effect_limit = Q + effect_limit = '' + if ':' in effect: + effect_limit = effect.split(':')[0] + effect = effect.split(':')[1] + + effect_attr, effect_value = effect.split('+') + effect_max = 9999999 + effect_base: str = '' + + # 判断effect_value中有几个百分号 + p_count = effect_value.count('%') + # 如果有%,则认为是基于值的提升 + base_check = True + if p_count >= 2: + effect_max, effect_value, effect_base = effect_value.split('%') + elif p_count == 1: + effect_value, effect_base = effect_value.split('%') + else: + base_check = False + + # effect_attr, effect_value, effect_base, effect_max + # dmgBonus, 27, em, 96 + + # 暂时不处理extraDmg + if effect_attr == 'extraDmg': + continue + + effect_max = float(effect_max) / 100 + # 如果要增加的属性不是em元素精通,那么都要除于100 + if effect_attr not in [ + 'exHp', + 'exAtk', + 'exDef', + 'elementalMastery', + ]: + # 正常除100 + effect_value = float(effect_value) / 100 + # 元素精通则为正常值 + else: + if effect_base in ['hp', 'elementalMastery', 'def']: + effect_value = float(effect_value) / 100 + else: + effect_value = float(effect_value) + + # 如果属性是血量,攻击,防御值,并且是按照%增加的,那么增加值应为百分比乘上基础值 + if base_check: + if effect_base in ['hp', 'atk', 'def']: + base_effect_list.append( + [effect_limit, effect_attr, effect_value, effect_base] + ) + continue + + if effect_base == 'energyRecharge': + if effect_attr in PERCENT_ATTR: + effect_base_value = prop[effect_base] - 1 + else: + effect_base_value = (prop[effect_base] - 1) / 100 + + elif effect_base == 'energyrecharge': + effect_base = 'energyRecharge' + if effect_attr in PERCENT_ATTR: + effect_base_value = prop[effect_base] + else: + effect_base_value = prop[effect_base] / 100 + + elif effect_base == 'elementalMastery': + # 针对草神的 + if char_name == '纳西妲' and effect_attr == 'dmgBonus': + effect_base_value = (prop[effect_base] - 200) / 100 + else: + effect_base_value = prop[effect_base] + else: + effect_base_value = prop[effect_base] + effect_value = effect_value * effect_base_value + + # 判断是否超过上限,超过则使用上限值 + if effect_value >= effect_max: + effect_value = effect_max + + if char_name == '旅行者': + char_element = 'Hydro' + else: + char_element = avatarName2Element[char_name] + + # 判断是否是自己属性的叠加 + if 'DmgBonus' in effect_attr: + if effect_attr.replace('DmgBonus', '') == char_element: + effect_attr = 'dmgBonus' + elif effect_attr == 'physicalDmgBonus': + effect_attr = 'physicalDmgBonus' + else: + continue + + # 如果效果有限制条件 + prop = await self.get_buff_value( + prop, + effect_limit, + effect_attr, + effect_value, + effect_base, + False, + ) + + prop = await self.get_base_value(prop) + + # 重新计算加成值 + # base_effect_list = [ + # [limit_list, effect_attr, effect_value,effect_base] + # ] + for effect in base_effect_list: + prop = await self.get_buff_value(prop, *effect) + + prop = await self.get_base_value(prop) + logger.debug(prop) + return prop + + async def get_base_value(self, prop: Dict) -> Dict: + prop['hp'] = (prop['addHp'] + 1) * prop['baseHp'] + prop['exHp'] + prop['atk'] = (prop['addAtk'] + 1) * prop['baseAtk'] + prop['exAtk'] + prop['def'] = (prop['addDef'] + 1) * prop['baseDef'] + prop['exDef'] + for prop_limit in ['A', 'B', 'C', 'E', 'Q']: + for attr in ['hp', 'atk', 'def']: + attr_up = attr[0].upper() + attr[1:] + prop[f'{prop_limit}_{attr}'] = ( + prop[f'{prop_limit}_add{attr_up}'] + 1 + ) * prop[f'base{attr_up}'] + prop[f'ex{attr_up}'] + return prop + + async def get_buff_value( + self, + prop: Dict, + effect_limit: Optional[str], + effect_attr: str, + effect_value: float, + effect_base: Optional[str] = None, + is_calc_base: Optional[bool] = True, + ) -> Dict: + if effect_base and is_calc_base: + effect_value = prop[effect_base] * effect_value + if effect_limit: + # 如果限制条件为中文,则为特殊label才生效 + if '\u4e00' <= effect_limit[-1] <= '\u9fff': + prop['sp'].append( + { + 'effect_name': effect_limit, + 'effect_attr': effect_attr, + 'effect_value': effect_value, + } + ) + # 如果限制条件为英文,例如Q,则为Q才生效 + else: + # 形如ABC:dmgBonus+75,则遍历ABC,增加值 + for limit in effect_limit: + prop['{}_{}'.format(limit, effect_attr)] += effect_value + else: + if effect_attr in ['a', 'addDmg']: + pass + else: + for attr in ['A', 'B', 'C', 'E', 'Q']: + prop[f'{attr}_{effect_attr}'] += effect_value + prop[f'{effect_attr}'] += effect_value + + logger.debug(f'{effect_attr} + {effect_value} 基于[{effect_base}]') + + return prop + + async def get_fight_prop(self) -> Dict: + ''' + 生成角色的倍率表 + + 返回: + self.fight_prop + ''' + # 拿到倍率表 + if self.s_char_name not in char_action: + self.power_list = {} + else: + self.power_list = char_action[self.s_char_name] + # 额外增加钟离倍率 + if self.char_name == '钟离': + self.power_list['E总护盾量'] = { + 'name': 'E总护盾量', + 'type': '生命值', + 'plus': 1.5, + 'value': [ + f'{self.power_list["E护盾附加吸收量"]["value"][index]}+{i}' + for index, i in enumerate( + self.power_list['E护盾基础吸收量']['value'] + ) + ], + } + elif self.char_name == '赛诺': + for power_name in ['E渡荒之雷', 'E渡荒之雷(超激化)']: + self.power_list[power_name] = { + 'name': power_name, + 'type': '攻击力', + 'plus': 1, + 'value': ['100%'] * 15, + } + elif self.char_name == '纳西妲': + for power_name in [ + 'E业障除(前台)', + 'E业障除(蔓激化·前台)', + ]: + self.power_list[power_name] = { + 'name': power_name, + 'type': '攻击力', + 'plus': 1, + 'value': ['200%+400%'] * 15, + } + elif self.char_name == '甘雨': + for power_name in [ + 'A霜华矢两段伤害', + 'A霜华矢两段伤害(融化)', + ]: + self.power_list[power_name] = { + 'name': power_name, + 'type': '攻击力', + 'plus': 1, + 'value': [ + f'''{int(i[:-1]) + + int(self.power_list["A霜华矢·霜华绽发伤害"]["value"][index][:-1]) + }%''' + for index, i in enumerate( + self.power_list['A霜华矢命中伤害']['value'] + ) + ], + } + + # 获取值 + skillList = self.card_prop['avatarSkill'] + prop = deepcopy(self.card_prop['avatarFightProp']) + prop['A_skill_level'] = skillList[0]['skillLevel'] + prop['E_skill_level'] = skillList[1]['skillLevel'] + prop['Q_skill_level'] = skillList[-1]['skillLevel'] + + if self.char_name in avatarName2SkillAdd: + skill_add = avatarName2SkillAdd[self.char_name] + else: + skill_add = ['E', 'Q'] + for skillAdd_index in range(0, 2): + if len(self.card_prop['talentList']) >= 3 + skillAdd_index * 2: + if skill_add[skillAdd_index] == 'E': + prop['E_skill_level'] += 3 + elif skill_add[skillAdd_index] == 'Q': + prop['Q_skill_level'] += 3 + + prop = await self.get_effect_prop(prop, [], self.char_name) + all_effect = await get_buff_list(self.card_prop, 'fight') + part_effect = await get_buff_list(self.card_prop, 'fight', False) + + ex_effect = [] + # 开启效果 + if self.char_name in STATUS_CHAR_LIST: + for skill_effect in STATUS_CHAR_LIST[self.char_name]: + skill_level = ( + prop[f'{skill_effect["name"][0]}_skill_level'] - 1 + ) + skill_value = skill_effect['value'][skill_level] + plus = skill_effect['plus'] + if isinstance(skill_value, float): + skill_value = '{:.4f}%'.format(skill_value * 100 * plus) + skill: str = skill_effect['effect'].format(skill_value) + if skill.endswith('%'): + skill = skill[:-1] + ex_effect.append(skill) + + # 特殊效果,目前有雷神满愿力 + if self.char_name in EXTRA_CHAR_LIST: + if self.char_name == '雷电将军': + skill1 = EXTRA_CHAR_LIST[self.char_name]['Q愿力加成']['value'] + skill2 = EXTRA_CHAR_LIST[self.char_name]['Q伤害提升']['value'] + attack_type = 'Q' + skill_level = prop[f'{attack_type}_skill_level'] - 1 + + value_1 = float(skill1[skill_level].split('+')[0]) + value_1 *= 0.6 + value_2 = float(skill1[skill_level].split('+')[1]) + value_2 *= 0.6 + value_3 = skill2[skill_level] * 90 + ex_effect.append((f'Q梦想一刀基础伤害:dmgBonus+{value_3}')) + self.extra_effect = { + 'Q梦想一刀基础伤害(满愿力)': value_1, + 'Q一段伤害(满愿力)': value_2, + 'Q重击伤害(满愿力)': value_2, + 'Q高空下落伤害(满愿力)': value_2, + } + if self.card_prop['weaponInfo']['weaponName'] == '薙草之稻光': + weaponAffix = self.card_prop['weaponInfo']['weaponAffix'] + _ex = 10 + weaponAffix * 2 + ex_effect.append(f'Q:dmgBonus+{_ex}') + elif self.char_name == '优菈': + skill_effect = EXTRA_CHAR_LIST[self.char_name]['Q每层能量伤害'][ + 'value' + ] + attack_type = 'Q' + skill_level = prop[f'{attack_type}_skill_level'] - 1 + value = float(skill_effect[skill_level]) + self.extra_effect = { + 'Q光降之剑基础伤害(13层)': value * 13, + 'Q光降之剑基础伤害(24层)': value * 24, + } + elif self.char_name == '纳西妲': + self.char_talent = len(self.card_prop['talentList']) + if self.char_talent >= 1: + char_talent = 1 + else: + char_talent = 0 + skill_effect = EXTRA_CHAR_LIST[self.char_name][ + f'E灭净三业伤害提升{char_talent}' + ]['value'] + attack_type = 'E' + skill_level = prop[f'{attack_type}_skill_level'] - 1 + value = float(skill_effect[skill_level]) + ex_effect.append((f'前台:dmgBonus+{value*100}')) + + # 在计算buff前, 引入特殊效果 + if self.char_name == '雷电将军': + ex_effect.append('Q:dmgBonus+27') + elif self.char_name == '钟离': + ex_effect.append('AnemoResist+-20;PhysicalResist+-20') + ex_effect.append('CryoResist+-20;DendroResist+-20') + ex_effect.append('ElectroResist+-20;HydroResist+-20') + ex_effect.append('PyroResist+-20;GeoResist+-20') + elif self.char_name == '妮露': + ex_effect.append('addHp+25') + ex_effect.append('elementalMastery+80') + + all_effect.extend(ex_effect) + part_effect.extend(ex_effect) + + # 计算全部的buff,添加入属性 + self.fight_prop = await self.get_effect_prop( + deepcopy(prop), all_effect, self.char_name + ) + + if self.rarity != '5' and self.char_name != '香菱': + self.without_talent_fight = self.fight_prop + else: + if self.char_name == '香菱': + part_effect.append('exAtk+1202') + self.without_talent_fight = await self.get_effect_prop( + deepcopy(prop), part_effect, self.char_name + ) + return self.fight_prop + + async def get_sp_fight_prop(self, power_name: str) -> sp_prop: + ''' + 获得角色的特殊状态战斗加成 + + 返回: + self.sp: `sp_prop` + ''' + self.sp = sp_prop() + for sp_single in self.fight_prop['sp']: # type:ignore + if sp_single['effect_name'] in power_name: + if sp_single['effect_attr'] == 'dmgBonus': + self.sp.dmgBonus += sp_single['effect_value'] + elif sp_single['effect_attr'] == 'addDmg': + self.sp.addDmg += sp_single['effect_value'] + elif sp_single['effect_attr'] == 'atk': + self.sp.attack += sp_single['effect_value'] + else: + self.sp.attack += sp_single['effect_value'] + return self.sp + + async def get_attack_type(self, power_name: str) -> str: + ''' + 获得角色的当前攻击类型 + + 参数: + power_name: `str` + 返回: + self.attack_type: `Literal['A','B','C','E','Q']` + ''' + # 攻击类型ABCEQ应为label首位 + self.attack_type = power_name[0] + # 如果是雷电将军, 则就按首位,因为Q的几段伤害均视为元素爆发 + if self.char_name == '雷电将军': + pass + else: + # 重击或瞄准射击在label内,则视为B重击伤害,例如公子E内的重击伤害,不视为E伤害,而是B伤害 + if '重击' in power_name or '瞄准射击' in power_name: + self.attack_type = 'B' + # 特殊重击类型,例如甘雨和夜兰 + elif ( + '破局矢' in power_name + or '霜华矢' in power_name + or '藏蕴花矢' in power_name + or '花筥箭' in power_name + or '刀风界' in power_name + ): + self.attack_type = 'B' + # 下落伤害类型,例如魈 + elif '高空下落' in power_name: + self.attack_type = 'C' + # 一段伤害, 二段伤害等等 应视为A伤害 + elif '段' in power_name and '伤害' in power_name: + self.attack_type = 'A' + elif '不生断' in power_name: + self.attack_type = 'A' + return self.attack_type + + async def update(self, time): + self.time += time + # TODO 遍历buff列表, 超过时间的移除 + + +async def p2v(power: str, power_plus: int) -> Tuple[float, float]: + """ + 将power转换为value + """ + # 如果存在123%+123%形式的 + if '+' in power: + power_percent = ( + float(power.split('+')[0].replace('%', '')) / 100 + ) * power_plus + power_value = power.split('+')[1] + if '%' in power_value: + power_percent += ( + float(power_value.replace('%', '')) / 100 * power_plus + ) + power_value = 0 + else: + power_value = float(power_value) + elif '%' in power: + power_percent = float(power.replace('%', '')) / 100 * power_plus + power_value = 0 + else: + power_percent = 0 + power_value = float(power) + + return power_percent, power_value + + +async def get_artifacts_value(raw_data: Dict) -> List[str]: + # 计算圣遗物效果 + all_effects = [] + for equip in raw_data['equipList']: + statNmae = equip['reliquaryMainstat']['statName'] + statValue = equip['reliquaryMainstat']['statValue'] + all_effects.append(await text_to_effect(statNmae, statValue)) + for sub in equip['reliquarySubstats']: + sub_name = sub['statName'] + sub_value = sub['statValue'] + all_effects.append(await text_to_effect(sub_name, sub_value)) + return all_effects + + +async def text_to_effect(name: str, value: float) -> str: + str = '' + if name == '血量': + str = f'exHp+{value}' + elif name == '百分比血量': + str = f'addHp+{value}' + elif name == '攻击力': + str = f'exAtk+{value}' + elif name == '百分比攻击力': + str = f'addAtk+{value}' + elif name == '防御力': + str = f'exDef+{value}' + elif name == '百分比防御力': + str = f'addDef+{value}' + elif name == '暴击率': + str = f'critRate+{value}' + elif name == '暴击伤害': + str = f'critDmg+{value}' + elif name == '元素精通': + str = f'elementalMastery+{value}' + elif name == '元素充能效率': + str = f'energyRecharge+{value}' + elif name == '物理伤害加成': + str = f'physicalDmgBonus+{value}' + elif '元素伤害加成' in name: + str = f'{ELEMENT_MAP[name[0]]}DmgBonus+{value}' + elif '治疗加成' in name: + str = f'healBonus+{value}' + return str + + +async def get_char( + raw_data: dict, + weapon: Optional[str] = None, + weapon_affix: Optional[int] = None, + talent_num: Optional[int] = None, +): + char = Character(card_prop=raw_data) + err = await char.new( + weapon=weapon, + weapon_affix=weapon_affix, + talent_num=talent_num, + ) + if isinstance(err, str): + return err + + await char.init_prop() + return char diff --git a/GenshinUID/genshinuid_enka/mono/Element.py b/GenshinUID/genshinuid_enka/mono/Element.py new file mode 100644 index 00000000..74427878 --- /dev/null +++ b/GenshinUID/genshinuid_enka/mono/Element.py @@ -0,0 +1,179 @@ +from typing import Dict +from enum import IntEnum + + +class Element(IntEnum): + Physical = 0 + Anemo = 1 + Cryo = 2 + Dendro = 3 + Electro = 4 + Geo = 5 + Hydro = 6 + Pyro = 7 + + +# 消耗后面元素量,抵消前面1单位元素量 +reactable_elements_dict: Dict[Element, Dict[Element, Dict[str, str]]] = { + # 风反应,被所有元素克制 + Element.Anemo: { + Element.Cryo: { + 'value': '2', + 'reaction': '扩散', + 'dmg': '0', + }, + Element.Dendro: { + 'value': '2', + 'reaction': '扩散', + 'dmg': '0', + }, + Element.Electro: { + 'value': '2', + 'reaction': '扩散', + 'dmg': '0', + }, + Element.Hydro: { + 'value': '2', + 'reaction': '扩散', + 'dmg': '0', + }, + Element.Pyro: { + 'value': '2', + 'reaction': '扩散', + 'dmg': '0', + }, + }, + # 冰反应,被火克制,与雷水反应 + Element.Cryo: { + Element.Pyro: { + 'value': '2', + 'reaction': '融化', + 'dmg': '2', + }, + Element.Electro: { + 'value': '2', + 'reaction': '超导', + 'dmg': '0', + }, + Element.Hydro: { + 'value': '1', + 'reaction': '冻结', + 'dmg': '0', + }, + }, + # 草反应, 火,水,雷 + Element.Dendro: { + Element.Hydro: { + 'value': '1', + 'reaction': '燃烧', + 'dmg': '0', + }, + Element.Pyro: { + 'value': '2', + 'reaction': '绽放', + 'dmg': '0', + }, + Element.Electro: { + 'value': '2', + 'reaction': '激化', + 'dmg': '0', + }, + }, + # 雷反应, 水,火,冰,草 + Element.Electro: { + Element.Hydro: { + 'value': '1', + 'reaction': '感电', + 'dmg': '0', + }, + Element.Pyro: { + 'value': '1', + 'reaction': '超载', + 'dmg': '0', + }, + Element.Cryo: { + 'value': '1', + 'reaction': '超导', + 'dmg': '0', + }, + Element.Dendro: { + 'value': '1', + 'reaction': '激化', + 'dmg': '0', + }, + }, + # 岩反应,被所有元素克制 + Element.Geo: { + Element.Cryo: { + 'value': '2', + 'reaction': '结晶', + 'dmg': '0', + }, + Element.Dendro: { + 'value': '2', + 'reaction': '结晶', + 'dmg': '0', + }, + Element.Electro: { + 'value': '2', + 'reaction': '结晶', + 'dmg': '0', + }, + Element.Hydro: { + 'value': '2', + 'reaction': '结晶', + 'dmg': '0', + }, + Element.Pyro: { + 'value': '2', + 'reaction': '结晶', + 'dmg': '0', + }, + }, + # 水反应,草,火,冰,雷 + Element.Hydro: { + Element.Dendro: { + 'value': '1', + 'reaction': '绽放', + 'dmg': '0', + }, + Element.Pyro: { + 'value': '0.5', + 'reaction': '蒸发', + 'dmg': '1.5', + }, + Element.Cryo: { + 'value': '1', + 'reaction': '冻结', + 'dmg': '0', + }, + Element.Electro: { + 'value': '1', + 'reaction': '感电', + 'dmg': '0', + }, + }, + # 火反应, 雷,水,冰,草 + Element.Pyro: { + Element.Dendro: { + 'value': '1', + 'reaction': '燃烧', + 'dmg': '0', + }, + Element.Hydro: { + 'value': '2', + 'reaction': '蒸发', + 'dmg': '2', + }, + Element.Cryo: { + 'value': '0.5', + 'reaction': '融化', + 'dmg': '1.5', + }, + Element.Electro: { + 'value': '1', + 'reaction': '超载', + 'dmg': '0', + }, + }, +} diff --git a/GenshinUID/genshinuid_enka/mono/Enemy.py b/GenshinUID/genshinuid_enka/mono/Enemy.py new file mode 100644 index 00000000..813630e8 --- /dev/null +++ b/GenshinUID/genshinuid_enka/mono/Enemy.py @@ -0,0 +1,160 @@ +from typing import Dict, List, Optional + +from .Character import Character +from .Element import Element, reactable_elements_dict + + +class Enemy: + def __init__(self, char_level: int, enemy_level: int): + self.char_level = char_level + self.level: int = enemy_level + self.hp: int = 10000000 + + self.time: float = 0 + + self.defense_resist: float = 0 + self.ignore_defense: float = 0 + self.element: Dict[Element, float] = {} + + self.PhysicalResist: float = 0.1 + self.AnemoResist: float = 0.1 + self.CryoResist: float = 0.1 + self.DendroResist: float = 0.1 + self.ElectroResist: float = 0.1 + self.GeoResist: float = 0.1 + self.HydroResist: float = 0.1 + self.PyroResist: float = 0.1 + + self.total_dmg: float = 0 + self.debuff: List = [] + + async def update(self, time): + self.time += time + # TODO 遍历debuff列表, 超过时间的移除 + + async def update_resist(self, effect: str): + name, val = effect.split('+') + val = float(val) / 100 + if name != 'Resist': + r = getattr(self, name) + setattr(self, name, r + val) + else: + for element in self.element: + r = getattr(self, f'{element.name}Resist') + setattr(self, name, r + val) + + async def get_dmg_reaction( + self, + dmg_type: Optional[Element] = None, + char: Optional[Character] = None, + ) -> float: + if char: + for react in ['蒸发', '融化']: + if react in char.power_name: + em = char.real_prop[f'{char.attack_type}_elementalMastery'] + k = 0 + if react == '蒸发': + if char.char_element == 'Pyro': + k = 1.5 + else: + k = 2 + elif react == '融化': + if char.char_element == 'Pyro': + k = 2 + else: + k = 1.5 + reaction_add_dmg = k * ( + 1 + (2.78 * em) / (em + 1400) + char.real_prop['a'] + ) + break + else: + reaction_add_dmg = 1 + return reaction_add_dmg + else: + if dmg_type: + reaction: float = 1 + # 如果是物理伤害,则不反应 + if dmg_type == Element.Physical: + return 1 + + # 如果怪物头上没元素,给定此次伤害类型元素量1 + if self.element == {}: + self.element[dmg_type] = 1 + # 如果怪物头上元素相同,则刷新元素量 + elif dmg_type in self.element: + self.element[dmg_type] = 1 + else: + # 遍历怪物头上的元素 + new_element_list = self.element + for element in self.element: + # 如果本次伤害类型,在这个元素的可反应列表里 + if dmg_type in reactable_elements_dict[element]: + # 元素列表里的这个元素 就要减去反应量 + new_element_list[element] -= float( + reactable_elements_dict[element][dmg_type][ + 'value' + ] + ) + # 如果是增幅反应,给出相对应的倍率 + reaction_name = reactable_elements_dict[element][ + dmg_type + ]['reaction'] + if reaction_name in [ + '蒸发', + '融化', + ]: + reaction *= float( + reactable_elements_dict[element][dmg_type][ + 'dmg' + ] + ) + else: + self.debuff.append(reaction_name) + + # 结算怪物的元素 + result_element: Dict[Element, float] = {} + for element in new_element_list: + if new_element_list[element] > 0: + result_element[element] = new_element_list[element] + self.element = result_element + + return reaction + return 1 + + async def get_resist(self, dmg_type: Element): + # 计算抗性 + r = getattr(self, f'{dmg_type.name}Resist') + if r > 0.75: + r = 1 / (1 + 4 * r) + elif r > 0: + r = 1 - r + else: + r = 1 - r / 2 + + return r + + async def get_dmg_proof( + self, + dmg_type: Element, + extra_d: float = 0, + extra_ignoreD: float = 0, + ) -> float: + proof: float = 0 + + # 计算抗性 + r = await self.get_resist(dmg_type) + + # 计算防御 + d_up = self.char_level + 100 + d_down = ( + self.char_level + + 100 + + (1 - self.defense_resist - extra_d) + * (1 - self.ignore_defense - extra_ignoreD) + * (self.level + 100) + ) + d = d_up / d_down + proof = r * d + + # 返回减伤百分比 + return proof diff --git a/GenshinUID/genshinuid_enka/mono/Fight.py b/GenshinUID/genshinuid_enka/mono/Fight.py new file mode 100644 index 00000000..e6830c54 --- /dev/null +++ b/GenshinUID/genshinuid_enka/mono/Fight.py @@ -0,0 +1,514 @@ +from copy import deepcopy +from typing import Dict, List, Tuple, Optional + +from nonebot.log import logger + +from .Enemy import Enemy +from .Power import Power +from .Element import Element +from .Character import Character +from ..dmg_calc.base_value import base_value_list + + +class Fight: + def __init__( + self, + Character_list: Dict[str, Character], + Enemy: Enemy, + SEQ: List = [], + ): + self.time = 0 + self.total_crit_dmg: float = 0 + self.total_normal_dmg: float = 0 + self.total_avg_dmg: float = 0 + + self.SEQ: List = SEQ + self.seq_history: Dict = {} + self.char_list: Dict[str, Character] = Character_list + self.enemy = Enemy + + self.dmg_data: Dict[str, Dict[str, float]] = {} + + # 进行队伍伤害计算 + async def update_dmg(self) -> Dict: + result = {} + for seq in self.SEQ: + # 获取本次攻击的信息 + char_name = seq['char'] + char = self.char_list[char_name] + char.power_name = seq['action'] + self.time += 0.4 + + # 更新角色和怪物 + for _char in self.char_list: + await self.char_list[_char].update(self.time) + await self.enemy.update(self.time) + + # 获取本次攻击的类型 + await char.get_sp_fight_prop(char.power_name) + await char.get_attack_type(char.power_name) + # 获取本次攻击的元素 + dmg_type = await self.get_dmg_type(char, seq) + # 更新角色的属性 + await self.get_new_fight_prop(char) + + # 更新self.seq_history + self.seq_history = seq + + # 聚变反应 + for i in ['扩散', '绽放)', '感电', '超载']: + if i in char.power_name: + dmg = await self.get_transform_dmg(char) + break + else: + # 进行攻击 + dmg = await self.get_dmg(char, dmg_type) + normal_dmg, avg_dmg, crit_dmg = dmg[0], dmg[1], dmg[2] + + result[self.time] = { + 'char': char_name, + 'action': seq['action'], + 'normal_dmg': normal_dmg, + 'avg_dmg': avg_dmg, + 'crit_dmg': crit_dmg, + 'enemy_element': self.enemy.element, + } + logger.debug(result) + return result + + # 进行单人伤害计算 + async def get_dmg_dict( + self, char_name: str, without_talent: bool = False + ) -> Dict: + result = {} + char = self.char_list[char_name] + # 获取本次攻击的类型 + if without_talent: + if char.rarity == '4' and char_name != '香菱': + return self.dmg_data + char.fight_prop = char.without_talent_fight + + for power_name in char.power_list: + # 更新powername + char.power_name = power_name + await char.get_sp_fight_prop(char.power_name) + await char.get_attack_type(char.power_name) + # 更新角色的属性 + await self.get_new_fight_prop(char) + # 聚变反应 + for i in ['扩散', '绽放)', '感电', '超载']: + if i in power_name: + dmg = await self.get_transform_dmg(char) + break + else: + dmg = [] + + # 正常伤害 + if not dmg: + if '治疗' in power_name or '回复' in power_name: + dmg = await self.get_heal(char) + elif '护盾' in power_name: + dmg = await self.get_shield(char) + else: + # 获取本次攻击的元素 + dmg_type = await self.get_dmg_type(char) + dmg = await self.get_dmg(char, dmg_type, True) + + # 得到结果 + result[power_name] = { + 'normal': dmg[0], + 'avg': dmg[1], + 'crit': dmg[2], + } + self.dmg_data = result + logger.debug(result) + return result + + # 伤害类型 + async def get_dmg_type( + self, char: Character, seq: Optional[Dict] = None + ) -> Element: + # TODO 获取本次攻击的元素 + dmg_type: Element = Element.Physical + char_element_dmg_type = getattr(Element, char.char_element) + + # 对重复的计数 + if seq: + if seq['action'] == self.seq_history: + return dmg_type + + # 计算角色伤害加成应该使用什么 + if char.weapon_type == '法器' or char.char_name in [ + '荒泷一斗', + '刻晴', + '诺艾尔', + '胡桃', + '宵宫', + '魈', + '神里绫华', + ]: + dmg_type = char_element_dmg_type + elif char.weapon_type == '弓': + if char.attack_type in ['B', 'E', 'Q']: + dmg_type = char_element_dmg_type + else: + if char.attack_type in ['E', 'Q']: + dmg_type = char_element_dmg_type + + if char.power_name in [ + 'Q光降之剑基础伤害', + 'Q光降之剑基础伤害(13层)', + 'Q每层能量伤害', + 'Q光降之剑基础伤害(24层)', + ]: + dmg_type = Element.Physical + + if '段' in char.power_name and 'A' not in char.power_name: + dmg_type = char_element_dmg_type + + if char.char_name == '辛焱' and char.power_name == 'Q伤害': + dmg_type = Element.Physical + + return dmg_type + + # 计算倍率 + async def get_power(self, char: Character) -> Power: + # 按照ABCEQ等级查找倍率 + power_name = char.power_name + real_prop = char.real_prop + power_list = char.power_list + power_level = int(real_prop[f'{power_name[0]}_skill_level']) + + # 拿到倍率 + power = power_list[power_name]['value'][power_level - 1] + # 计算是否多次伤害 + power_plus = power_list[power_name]['plus'] + + if char.char_name == '宵宫' and power_name == 'A一段伤害': + power_plus = 1 + + # 拿到百分比和固定值,百分比为float,形如2.2 也就是202% + power_percent, power_value = await p2v(power, power_plus) + + # 额外加成,目前有雷神和优菈 + if char.extra_effect and power_name in char.extra_effect: + power_percent += char.extra_effect[power_name] + + return Power( + name=power_name, + level=power_level, + percent=power_percent, + value=power_value, + plus=power_plus, + raw=power, + ) + + # 额外加成和抗性计算 + async def get_new_fight_prop(self, char: Character) -> Dict: + # 抗性传达 + if char.enemy_debuff: + for effect in char.enemy_debuff: + await self.enemy.update_resist(effect) + char.enemy_debuff = [] + + # 特殊buff计算 + effect_list = [] + if '前台' in char.power_list[char.power_name]['name']: + if char.char_name == '纳西妲': + em = char.fight_prop[f'{char.attack_type}_elementalMastery'] + effect = f'''elementalMastery+ + {0.25 * em if 0.25 * em <= 250 else 250} + '''.strip() + effect_list.append(effect) + + if '丰穰之核' in char.power_name and char.fight_prop['hp'] >= 30000: + ex_add = ((char.fight_prop['hp'] - 30000) / 1000) * 9 + if ex_add >= 400: + ex_add = 400 + effect = f'a+{ex_add}' + effect_list.append(effect) + + if effect_list: + char.real_prop = await char.get_effect_prop( + deepcopy(char.fight_prop), effect_list, char.char_name + ) + return char.real_prop + else: + char.real_prop = char.fight_prop + + return char.real_prop + + # 治疗值加成 + async def get_add_heal(self, char: Character) -> float: + add_heal: float = char.real_prop[f'{char.attack_type}_addHeal'] + return add_heal + + # 增幅反应 + async def get_amplify_dmg(self, char: Character) -> float: + # 计算元素反应 增幅 + em_cal = char.real_prop[f'{char.attack_type}_elementalMastery'] + for reaction in ['蒸发', '融化']: + if reaction in char.power_list[char.power_name]['name']: + if reaction == '蒸发': + if char.char_element == 'Pyro': + k = 1.5 + else: + k = 2 + else: + if char.char_element == 'Pyro': + k = 2 + else: + k = 1.5 + reaction_add_dmg = k * ( + 1 + (2.78 * em_cal) / (em_cal + 1400) + char.real_prop['a'] + ) + break + else: + reaction_add_dmg = 1 + return reaction_add_dmg + + # 激化反应 + async def get_quicken_dmg(self, char: Character) -> float: + quicken_dmg = 0 + char_level = char.char_level + power_name = char.power_list[char.power_name]['name'] + em_cal = char.real_prop[f'{char.attack_type}_elementalMastery'] + for reaction in ['超激化', '蔓激化']: + if reaction in power_name: + if reaction == '超激化': + k = 2.3 + else: + k = 2.5 + power_times = 1 + if '*' in power_name: + power_times = float( + (power_name.split('*')[-1].replace(')', '')) + ) + quicken_dmg = ( + k + * base_value_list[char_level - 1] + * (1 + (5 * em_cal) / (em_cal + 1200)) + ) * power_times + break + return quicken_dmg + + # 有效数值 + async def get_effect_prop(self, char: Character): + # 根据type计算有效属性 + _type = char.power_list[char.power_name]['type'] + if '攻击' in _type: + effect_prop = char.real_prop[f'{char.attack_type}_atk'] + elif '生命值' in _type: + effect_prop = char.real_prop[f'{char.attack_type}_hp'] + elif '防御' in _type: + effect_prop = char.real_prop[f'{char.attack_type}_def'] + else: + effect_prop = char.real_prop[f'{char.attack_type}_atk'] + + return effect_prop + + # 伤害值加成 + async def get_add_dmg(self, char: Character) -> float: + # 计算直接增加的伤害 + add_dmg: float = char.real_prop[f'{char.attack_type}_addDmg'] + return add_dmg + + # 防御值加成 + async def get_extra_d(self, char: Character) -> float: + # 计算直接增加的伤害 + extra_d: float = char.real_prop[f'{char.attack_type}_d'] + return extra_d + + # 防御值加成 + async def get_base_area_plus(self, char: Character) -> float: + # 计算直接增加的伤害 + base_area_plus: float = char.real_prop[f'{char.attack_type}_baseArea'] + return base_area_plus + + # 防御值加成 + async def get_extra_ignoreD(self, char: Character) -> float: + # 计算直接增加的伤害 + extra_ignoreD: float = char.real_prop[f'{char.attack_type}_ignoreDef'] + return extra_ignoreD + + async def get_sp_base(self, power: Power, char: Character) -> float: + power_sp = power.raw.replace('%', '').split('+') + power_sp = [float(x) / 100 for x in power_sp] + real_prop = char.real_prop + atk = real_prop['E_atk'] + char.sp.attack + em = real_prop[f'{char.attack_type}_elementalMastery'] + base = (power_sp[0] * atk + power_sp[1] * em) * power.plus + return base + + # 基础乘区 + async def get_base_area(self, char: Character) -> float: + # 获得该次伤害的倍率信息 + power = await self.get_power(char) + # 获得激化乘区的信息 + reaction_power = await self.get_quicken_dmg(char) + # 获得该次伤害的有效属性 + effect_prop = await self.get_effect_prop(char) + # 获得伤害提高值的信息 + add_dmg = await self.get_add_dmg(char) + + base_area_plus = await self.get_base_area_plus(char) + + # 对草神进行特殊计算 + if '灭净三业' in power.name or '业障除' in power.name: + base = await self.get_sp_base(power, char) + elif char.char_name == '艾尔海森' and power.name.startswith('E'): + base = await self.get_sp_base(power, char) + else: + base = effect_prop * power.percent + power.value + + if char.char_name == '珊瑚宫心海': + hp = char.real_prop['hp'] + hb = char.real_prop['healBonus'] + add_dmg += 0.15 * hp * hb + + # 基本乘区 = 有效数值(例如攻击力) * 倍率 + 固定值 + 激化区 + 额外加成值 + 特殊加成值 + base_area = base + reaction_power + add_dmg + char.sp.addDmg + if base_area_plus != 1: + base_area_plus -= 1 + base_area = base_area_plus * base_area + return base_area + + # 聚变反应 + async def get_transform_dmg( + self, char: Character + ) -> Tuple[float, float, float]: + em = char.real_prop[f'{char.attack_type}_elementalMastery'] + is_crit = False + if '绽放)' in char.power_name: + # 获取激变反应基数 + if '烈绽放' in char.power_name: + dmg_type = Element.Pyro + base_time = 6 + elif '超绽放' in char.power_name: + dmg_type = Element.Dendro + base_time = 6 + else: + dmg_type = Element.Dendro + base_time = 4 + base_area = ( + base_value_list[char.char_level - 1] + * base_time + * (1 + (16.0 * em) / (em + 2000) + char.real_prop['a']) + ) + is_crit = True + elif '扩散伤害' in char.power_name: + dmg_type = Element.Anemo + base_area = ( + base_value_list[char.char_level - 1] + * 1.2 + * (1 + (16.0 * em) / (em + 2000) + char.real_prop['a']) + * (1 + char.real_prop['g'] / 100) + ) + else: + dmg_type = Element.Physical + base_area = 0 + + # 获得这次攻击的减伤乘区(抗性区+防御区) + logger.debug(self.enemy.__dict__) + proof = await self.enemy.get_resist(dmg_type) + + normal_dmg = base_area * proof + if is_crit: + crit_dmg = normal_dmg * 2 + avg_dmg = normal_dmg * 1.2 + else: + crit_dmg = avg_dmg = 0 + return normal_dmg, avg_dmg, crit_dmg + + async def get_heal(self, char: Character) -> Tuple[float, float, float]: + # 获得治疗增加值 + add_heal = await self.get_add_heal(char) + # 获得治疗倍率 + power = await self.get_power(char) + # 获得该次治疗的有效属性 + effect_prop = await self.get_effect_prop(char) + heal_bonus = 1 + char.real_prop['healBonus'] + base_area = effect_prop * power.percent + power.value + add_heal + normal_value = base_area * heal_bonus + return normal_value, normal_value, 0 + + async def get_shield(self, char: Character) -> Tuple[float, float, float]: + # 获得护盾倍率 + power = await self.get_power(char) + # 获得该次护盾的有效属性 + effect_prop = await self.get_effect_prop(char) + shield_bonus = 1 + char.real_prop['shieldBonus'] + base_area = effect_prop * power.percent + power.value + normal_value = base_area * shield_bonus + return normal_value, 0, 0 + + async def get_dmg( + self, + char: Character, + dmg_type: Element, + is_single: bool = False, + ) -> Tuple[float, float, float]: + # 获得基础乘区(攻击区+倍率区+激化区) + base_area = await self.get_base_area(char) + # 获得这次攻击的减伤乘区(抗性区+防御区) + d = await self.get_extra_d(char) + i_d = await self.get_extra_ignoreD(char) + # logger.debug(self.enemy.__dict__) + proof = await self.enemy.get_dmg_proof(dmg_type, d, i_d) + # 获得这次攻击的增幅乘区 + _char = char if is_single else None + reactio = await self.enemy.get_dmg_reaction(dmg_type, _char) + + if dmg_type == Element.Physical: + _dmgBonus = char.real_prop[f'{char.attack_type}_physicalDmgBonus'] + else: + _dmgBonus = char.real_prop[f'{char.attack_type}_dmgBonus'] + critrate = char.real_prop[f'{char.attack_type}_critRate'] + critdmg = char.real_prop[f'{char.attack_type}_critDmg'] + dmgBonus = _dmgBonus + char.sp.dmgBonus + + # 基础乘区 = 攻击*倍率+激化 + # 普通伤害 = 基础 * 增伤区 * 增幅区 * 抗性区 + normal_dmg = base_area * (1 + dmgBonus) * reactio * proof + # 暴击伤害 = 普通伤害 * 暴击区 + crit_dmg = normal_dmg * (1 + critdmg) + # 平均伤害 + avg_dmg = ( + normal_dmg + if critrate < 0 + else crit_dmg + if critrate > 1 + else crit_dmg * critrate + (1 - critrate) * normal_dmg + ) + + self.total_normal_dmg += normal_dmg + self.total_avg_dmg += avg_dmg + self.total_crit_dmg += crit_dmg + + return normal_dmg, avg_dmg, crit_dmg + + +async def p2v(power: str, power_plus: float) -> Tuple[float, float]: + """ + 将power转换为value + """ + if '+' in power: + power_percent = ( + float(power.split('+')[0].replace('%', '')) / 100 + ) * power_plus + power_value = power.split('+')[1] + if '%' in power_value: + power_percent += ( + float(power_value.replace('%', '')) / 100 * power_plus + ) + power_value = 0 + else: + power_value = float(power_value) + elif '%' in power: + power_percent = float(power.replace('%', '')) / 100 * power_plus + power_value = 0 + else: + power_percent = 0 + power_value = float(power) + + return power_percent, power_value diff --git a/GenshinUID/genshinuid_enka/mono/Power.py b/GenshinUID/genshinuid_enka/mono/Power.py new file mode 100644 index 00000000..08d26574 --- /dev/null +++ b/GenshinUID/genshinuid_enka/mono/Power.py @@ -0,0 +1,16 @@ +from pydantic import BaseModel + + +class Power(BaseModel): + name: str + level: int + raw: str + percent: float + value: float + plus: float + + +class sp_prop(BaseModel): + dmgBonus: float = 0 + addDmg: float = 0 + attack: float = 0 diff --git a/GenshinUID/genshinuid_enka/mono/SEQ.py b/GenshinUID/genshinuid_enka/mono/SEQ.py new file mode 100644 index 00000000..d54aa67f --- /dev/null +++ b/GenshinUID/genshinuid_enka/mono/SEQ.py @@ -0,0 +1,28 @@ +WAN_DA = [ + {'char': '达达利亚', 'action': 'E状态激发伤害', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'E一段伤害', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'E重击伤害', 'type': '伤害'}, + {'char': '班尼特', 'action': 'Q伤害', 'type': '伤害'}, + {'char': '枫原万叶', 'action': 'Q斩击伤害', 'type': '伤害'}, + {'char': '枫原万叶', 'action': 'A扩散伤害', 'type': '持续'}, + {'char': '枫原万叶', 'action': 'E长按伤害', 'type': '伤害'}, + {'char': '枫原万叶', 'action': 'Q持续伤害', 'type': '持续'}, + {'char': '枫原万叶', 'action': 'A高空下落伤害', 'type': '伤害'}, + {'char': '香菱', 'action': 'Q旋火轮伤害', 'type': '持续'}, + {'char': '香菱', 'action': 'E喷火伤害', 'type': '持续'}, + {'char': '达达利亚', 'action': 'E状态激发伤害', 'type': '伤害'}, + {'char': '枫原万叶', 'action': 'Q持续伤害', 'type': '持续'}, + {'char': '达达利亚', 'action': 'E一段伤害', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'Q伤害·近战', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'E一段伤害', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'E重击伤害', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'E一段伤害', 'type': '伤害'}, + {'char': '枫原万叶', 'action': 'Q持续伤害', 'type': '持续'}, + {'char': '达达利亚', 'action': 'E重击伤害', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'E一段伤害', 'type': '伤害'}, + {'char': '达达利亚', 'action': 'E重击伤害', 'type': '伤害'}, +] + +ALL_SEQ = {'万达国际': WAN_DA} + +SEQ_ARG = {'万达国际': ['香菱', '达达利亚', '班尼特', '枫原万叶']} diff --git a/GenshinUID/genshinuid_enka/texture2D/204.png b/GenshinUID/genshinuid_enka/texture2D/204.png new file mode 100644 index 00000000..6ea825ad Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/204.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/500.png b/GenshinUID/genshinuid_enka/texture2D/500.png new file mode 100644 index 00000000..9dddc25e Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/500.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/adv.png b/GenshinUID/genshinuid_enka/texture2D/adv.png new file mode 100644 index 00000000..f3a32390 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/adv.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_card_4.png b/GenshinUID/genshinuid_enka/texture2D/char_card_4.png new file mode 100644 index 00000000..fa3a5e89 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_card_4.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_card_5.png b/GenshinUID/genshinuid_enka/texture2D/char_card_5.png new file mode 100644 index 00000000..f72bb2d6 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_card_5.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_info_1.png b/GenshinUID/genshinuid_enka/texture2D/char_info_1.png new file mode 100644 index 00000000..246e75bc Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_info_1.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_info_2.png b/GenshinUID/genshinuid_enka/texture2D/char_info_2.png new file mode 100644 index 00000000..a7c33c39 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_info_2.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_info_artifacts.png b/GenshinUID/genshinuid_enka/texture2D/char_info_artifacts.png new file mode 100644 index 00000000..d231f38c Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_info_artifacts.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_info_mask.png b/GenshinUID/genshinuid_enka/texture2D/char_info_mask.png new file mode 100644 index 00000000..0a1e40c7 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_info_mask.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_mask.png b/GenshinUID/genshinuid_enka/texture2D/char_mask.png new file mode 100644 index 00000000..280f2a16 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_mask.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_rank.png b/GenshinUID/genshinuid_enka/texture2D/char_rank.png new file mode 100644 index 00000000..eee578fd Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_rank.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/char_rank_title.png b/GenshinUID/genshinuid_enka/texture2D/char_rank_title.png new file mode 100644 index 00000000..768561fb Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/char_rank_title.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/dmgBar_1.png b/GenshinUID/genshinuid_enka/texture2D/dmgBar_1.png new file mode 100644 index 00000000..89c929f8 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/dmgBar_1.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/dmgBar_2.png b/GenshinUID/genshinuid_enka/texture2D/dmgBar_2.png new file mode 100644 index 00000000..09fc435c Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/dmgBar_2.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/equip_mask.png b/GenshinUID/genshinuid_enka/texture2D/equip_mask.png new file mode 100644 index 00000000..467392cb Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/equip_mask.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/footbar.png b/GenshinUID/genshinuid_enka/texture2D/footbar.png new file mode 100644 index 00000000..c97e10a4 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/footbar.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/holo.png b/GenshinUID/genshinuid_enka/texture2D/holo.png new file mode 100644 index 00000000..09f834cc Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/holo.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/icon_lock.png b/GenshinUID/genshinuid_enka/texture2D/icon_lock.png new file mode 100644 index 00000000..cf1c4277 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/icon_lock.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/overlay.png b/GenshinUID/genshinuid_enka/texture2D/overlay.png new file mode 100644 index 00000000..e11af300 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/overlay.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/percent_mask.png b/GenshinUID/genshinuid_enka/texture2D/percent_mask.png new file mode 100644 index 00000000..8e51477b Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/percent_mask.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/s-1.png b/GenshinUID/genshinuid_enka/texture2D/s-1.png new file mode 100644 index 00000000..bff5edac Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/s-1.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/s-2.png b/GenshinUID/genshinuid_enka/texture2D/s-2.png new file mode 100644 index 00000000..ea4b049d Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/s-2.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/s-3.png b/GenshinUID/genshinuid_enka/texture2D/s-3.png new file mode 100644 index 00000000..d390794a Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/s-3.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/s-4.png b/GenshinUID/genshinuid_enka/texture2D/s-4.png new file mode 100644 index 00000000..08f0d6b8 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/s-4.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/s-5.png b/GenshinUID/genshinuid_enka/texture2D/s-5.png new file mode 100644 index 00000000..b4ee48a1 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/s-5.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/shin-w.jpg b/GenshinUID/genshinuid_enka/texture2D/shin-w.jpg new file mode 100644 index 00000000..b0971705 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/shin-w.jpg differ diff --git a/GenshinUID/genshinuid_enka/texture2D/skillHolo.png b/GenshinUID/genshinuid_enka/texture2D/skillHolo.png new file mode 100644 index 00000000..e371f635 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/skillHolo.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/skill_mask.png b/GenshinUID/genshinuid_enka/texture2D/skill_mask.png new file mode 100644 index 00000000..f979e678 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/skill_mask.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/star.png b/GenshinUID/genshinuid_enka/texture2D/star.png new file mode 100644 index 00000000..c52dfdac Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/star.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/tag.png b/GenshinUID/genshinuid_enka/texture2D/tag.png new file mode 100644 index 00000000..bcf7e255 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/tag.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/team_dmg/action_title.png b/GenshinUID/genshinuid_enka/texture2D/team_dmg/action_title.png new file mode 100644 index 00000000..40bd479f Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/team_dmg/action_title.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/team_dmg/char_bg.png b/GenshinUID/genshinuid_enka/texture2D/team_dmg/char_bg.png new file mode 100644 index 00000000..b3398470 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/team_dmg/char_bg.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/team_dmg/dmg_bar.png b/GenshinUID/genshinuid_enka/texture2D/team_dmg/dmg_bar.png new file mode 100644 index 00000000..4068da3f Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/team_dmg/dmg_bar.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/team_dmg/team_title.png b/GenshinUID/genshinuid_enka/texture2D/team_dmg/team_title.png new file mode 100644 index 00000000..f6737d36 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/team_dmg/team_title.png differ diff --git a/GenshinUID/genshinuid_enka/texture2D/value_mask.png b/GenshinUID/genshinuid_enka/texture2D/value_mask.png new file mode 100644 index 00000000..3a7e1460 Binary files /dev/null and b/GenshinUID/genshinuid_enka/texture2D/value_mask.png differ diff --git a/GenshinUID/genshinuid_enka/to_card.py b/GenshinUID/genshinuid_enka/to_card.py new file mode 100644 index 00000000..d1611790 --- /dev/null +++ b/GenshinUID/genshinuid_enka/to_card.py @@ -0,0 +1,144 @@ +import asyncio +from pathlib import Path +from typing import List, Union, Optional + +from PIL import Image, ImageDraw + +from .to_data import enka_to_dict +from ..utils.image.convert import convert_img +from ..gsuid_utils.api.enka.models import EnkaData +from ..utils.resource.RESOURCE_PATH import CHAR_PATH +from ..utils.fonts.genshin_fonts import genshin_font_origin +from ..utils.map.name_covert import name_to_avatar_id, avatar_id_to_char_star + +half_color = (255, 255, 255, 120) +first_color = (29, 29, 29) +second_color = (67, 61, 56) +white_color = (247, 247, 247) +gs_font_18 = genshin_font_origin(18) +gs_font_28 = genshin_font_origin(28) +gs_font_58 = genshin_font_origin(58) + +MAP_PATH = Path(__file__).parent / 'map' +TEXT_PATH = Path(__file__).parent / 'texture2d' +char_mask = Image.open(TEXT_PATH / 'char_mask.png') +tag = Image.open(TEXT_PATH / 'tag.png') +footbar = Image.open(TEXT_PATH / 'footbar.png') +pic_500 = Image.open(TEXT_PATH / '500.png') +pic_204 = Image.open(TEXT_PATH / '204.png') + + +async def enka_to_card( + uid: str, enka_data: Optional[EnkaData] = None +) -> Union[str, bytes]: + char_data_list = await enka_to_dict(uid, enka_data) + if isinstance(char_data_list, str): + if '服务器正在维护或者关闭中' in char_data_list: + return await convert_img(pic_500) + elif '未打开角色展柜' in char_data_list: + return await convert_img(pic_204) + else: + return await convert_img(pic_500) + else: + if char_data_list == []: + return await convert_img(pic_500) + + img = await draw_enka_card(uid=uid, char_data_list=char_data_list) + return img + + +async def draw_enka_card( + uid: str, + char_data_list: Optional[List] = None, + char_list: Optional[List] = None, +): + if char_list: + char_data_list = [] + for char in char_list: + char_data_list.append( + {'avatarName': char, 'avatarId': await name_to_avatar_id(char)} + ) + line1 = f'展柜内有 {len(char_data_list)} 个角色!' + else: + if char_data_list is None: + return await convert_img( + Image.new('RGBA', (0, 1), (255, 255, 255)) + ) + else: + line1 = '刷新成功!' + + line2 = f'UID {uid}请使用 查询{char_data_list[0]["avatarName"]} 命令进行查询!' + char_num = len(char_data_list) + if char_num <= 8: + based_w, based_h = 1000, 240 + ((char_num + 3) // 4) * 220 + else: + based_w, based_h = 1200, 660 + (char_num - 5) // 5 * 110 + if (char_num - 5) % 5 >= 4: + based_h += 110 + + img = Image.open(TEXT_PATH / 'shin-w.jpg').resize((based_w, based_h)) + img.paste(tag, (0, 0), tag) + img.paste(footbar, ((based_w - 800) // 2, based_h - 36), footbar) + img_draw = ImageDraw.Draw(img, 'RGBA') + + img_draw.text( + (97, 98), + line1, + white_color, + gs_font_58, + 'lm', + ) + img_draw.text( + (99, 140), + line2, + white_color, + gs_font_18, + 'lm', + ) + tasks = [] + for index, char_data in enumerate(char_data_list): + tasks.append(draw_enka_char(index, img, char_data)) + await asyncio.gather(*tasks) + img = await convert_img(img) + return img + + +async def draw_enka_char(index: int, img: Image.Image, char_data: dict): + char_id = char_data['avatarId'] + char_star = await avatar_id_to_char_star(str(char_id)) + char_card = Image.open(TEXT_PATH / f'char_card_{char_star}.png') + char_img = ( + Image.open(str(CHAR_PATH / f'{char_id}.png')) + .convert('RGBA') + .resize((204, 204)) + ) + char_temp = Image.new('RGBA', (220, 220)) + char_temp.paste(char_img, (8, 8), char_img) + char_card.paste(char_temp, (0, 0), char_mask) + if index <= 7: + if img.size[0] <= 1100: + x = 60 + (index % 4) * 220 + else: + x = 160 + (index % 4) * 220 + img.paste( + char_card, + (x, 187 + (index // 4) * 220), + char_card, + ) + elif index <= 12: + img.paste( + char_card, + (50 + (index % 8) * 220, 296), + char_card, + ) + else: + _i = index - 13 + x, y = 50 + (_i % 9) * 220, 512 + (_i // 9) * 220 + if _i % 9 >= 5: + y += 110 + x = 160 + ((_i - 5) % 9) * 220 + img.paste( + char_card, + (x, y), + char_card, + ) diff --git a/GenshinUID/genshinuid_enka/to_data.py b/GenshinUID/genshinuid_enka/to_data.py new file mode 100644 index 00000000..8a2532b9 --- /dev/null +++ b/GenshinUID/genshinuid_enka/to_data.py @@ -0,0 +1,352 @@ +import json +import time +from typing import List, Union, Literal, Optional + +from ..utils.error_reply import UID_HINT +from ..gsuid_utils.api.enka.models import EnkaData +from ..utils.resource.RESOURCE_PATH import PLAYER_PATH +from ..gsuid_utils.api.minigg.models import MiniGGError +from ..gsuid_utils.api.enka.request import get_enka_info +from ..gsuid_utils.api.minigg.request import get_weapon_info +from ..utils.map.GS_MAP_PATH import ( + icon2Name, + propId2Name, + skillId2Name, + artifact2attr, + avatarId2Name, + talentId2Name, + weaponHash2Name, + weaponHash2Type, + artifactId2Piece, + avatarName2Element, +) + +PROP_ATTR_MAP = { + 'Anemo': '44', + 'Cryo': '46', + 'Dendro': '43', + 'Electro': '41', + 'Geo': '45', + 'Hydro': '42', + 'Pyro': '40', +} + +ENKA_API: List[Literal['enka', 'microgg']] = ['enka', 'microgg'] + + +async def switch_api(): + global ENKA_API + if ENKA_API[0] == 'enka': + ENKA_API = ['microgg', 'enka'] + else: + ENKA_API = ['enka', 'microgg'] + return f'切换成功!当前api为{ENKA_API[0]}!' + + +async def enka_to_dict( + uid: str, enka_data: Optional[EnkaData] = None +) -> Union[List[dict], str]: + """ + :说明: + 访问enkaAPI并转换为genshinUID的数据Json。 + :参数: + * ``uid: str``: 玩家uid。 + * ``enka_data: Optional[dict] = None``: 来自enka的dict, 可留空。 + :返回: + * ``刷新完成提示语: str``: 包含刷新成功的角色列表。 + """ + if '未找到绑定的UID' in uid: + return UID_HINT + if enka_data: + pass + else: + enka_data = await get_enka_info(uid, ENKA_API[0]) + if isinstance(enka_data, str): + return [] + if isinstance(enka_data, dict): + if 'playerInfo' not in enka_data: + im = ( + '服务器正在维护或者关闭中...\n' + f'检查{ENKA_API[0]}是否可以访问\n' + '如可以访问,尝试[切换api]或上报Bug!' + ) + return im + elif enka_data is None: + return [] + + now = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) + playerInfo = enka_data['playerInfo'] + path = PLAYER_PATH / str(uid) + path.mkdir(parents=True, exist_ok=True) + with open( + path / '{}.json'.format(str(uid)), 'w', encoding='UTF-8' + ) as file: + json.dump(playerInfo, file, ensure_ascii=False) + with open(path / 'rawData.json', 'w', encoding='UTF-8') as file: + json.dump(enka_data, file, ensure_ascii=False) + + if 'avatarInfoList' not in enka_data: + return f'UID{uid}刷新失败!未打开角色展柜!' + + char_dict_list = [] + for char in enka_data['avatarInfoList']: + # 处理基本信息 + char_data = {} + avatarId = char['avatarId'] + char_data['playerUid'] = str(uid) + char_data['playerName'] = enka_data['playerInfo']['nickname'] + char_data['avatarId'] = avatarId + avatarName = avatarId2Name[str(char['avatarId'])] + char_data['avatarName'] = avatarId2Name[str(char['avatarId'])] + char_data['avatarFetter'] = char['fetterInfo']['expLevel'] + char_data['avatarLevel'] = char['propMap']['4001']['val'] + + try: + char_data['avatarElement'] = avatarName2Element[ + char_data['avatarName'] + ] + except KeyError: + check = skillId2Name['Name'][ + str(list(char['skillLevelMap'].keys())[2]) + ] + if '风' in check: + char_data['avatarElement'] = 'Anemo' + elif '雷' in check: + char_data['avatarElement'] = 'Electro' + elif '岩' in check: + char_data['avatarElement'] = 'Geo' + elif '草' in check: + char_data['avatarElement'] = 'Dendro' + elif '冰' in check: + char_data['avatarElement'] = 'Cryo' + elif '水' in check: + char_data['avatarElement'] = 'Hydro' + else: + char_data['avatarElement'] = 'Pyro' + + char_data['dataTime'] = now + + char_data['avatarSkill'] = [] + # 处理天赋 + for skill in char['skillLevelMap']: + skill_temp = {} + skill_temp['skillId'] = skill + skill_temp['skillName'] = skillId2Name['Name'][ + skill_temp['skillId'] + ] + skill_temp['skillLevel'] = char['skillLevelMap'][skill] + skill_temp['skillIcon'] = skillId2Name['Icon'][ + skill_temp['skillId'] + ] + char_data['avatarSkill'].append(skill_temp) + + if char_data['avatarName'] in ['神里绫华', '安柏']: + char_data['avatarSkill'][0], char_data['avatarSkill'][-1] = ( + char_data['avatarSkill'][-1], + char_data['avatarSkill'][0], + ) + char_data['avatarSkill'][2], char_data['avatarSkill'][-1] = ( + char_data['avatarSkill'][-1], + char_data['avatarSkill'][2], + ) + char_data['avatarEnName'] = char_data['avatarSkill'][1][ + 'skillIcon' + ].split('_')[-2] + elif char_data['avatarName'] in ['旅行者']: + char_data['avatarSkill'][0], char_data['avatarSkill'][-1] = ( + char_data['avatarSkill'][-1], + char_data['avatarSkill'][0], + ) + char_data['avatarSkill'][1], char_data['avatarSkill'][-1] = ( + char_data['avatarSkill'][-1], + char_data['avatarSkill'][1], + ) + char_data['avatarEnName'] = str(avatarId) + else: + char_data['avatarEnName'] = char_data['avatarSkill'][-1][ + 'skillIcon' + ].split('_')[-2] + + # 处理命座 + talent_temp = [] + if 'talentIdList' in char: + for index, talent in enumerate(char['talentIdList']): + talentTemp = {} + talentTemp['talentId'] = char['talentIdList'][index] + talentTemp['talentName'] = talentId2Name['Name'][str(talent)] + talentTemp['talentIcon'] = talentId2Name['Icon'][str(talent)] + talent_temp.append(talentTemp) + char_data['talentList'] = talent_temp + + # 处理属性 + fight_prop = {} + # 血量 + fight_prop['hp'] = char["fightPropMap"]["2000"] + fight_prop['baseHp'] = char["fightPropMap"]["1"] + fight_prop['addHp'] = ( + char["fightPropMap"]["2000"] - char["fightPropMap"]["1"] + ) + # 攻击力 + fight_prop['atk'] = char["fightPropMap"]["2001"] + fight_prop['baseAtk'] = char["fightPropMap"]["4"] + fight_prop['addAtk'] = ( + char["fightPropMap"]["2001"] - char["fightPropMap"]["4"] + ) + # 防御力 + fight_prop['def'] = char["fightPropMap"]["2002"] + fight_prop['baseDef'] = char["fightPropMap"]["7"] + fight_prop['addDef'] = ( + char["fightPropMap"]["2002"] - char["fightPropMap"]["7"] + ) + # 元素精通 + fight_prop['elementalMastery'] = char["fightPropMap"]["28"] + # 暴击率 + fight_prop['critRate'] = char["fightPropMap"]["20"] + # 暴击伤害 + fight_prop['critDmg'] = char["fightPropMap"]["22"] + # 充能效率 + fight_prop['energyRecharge'] = char["fightPropMap"]["23"] + # 治疗&受治疗 + fight_prop['healBonus'] = char["fightPropMap"]["26"] + fight_prop['healedBonus'] = char["fightPropMap"]["27"] + # 物理伤害加成 & 抗性 + fight_prop['physicalDmgSub'] = char["fightPropMap"]["29"] + fight_prop['physicalDmgBonus'] = char["fightPropMap"]["30"] + # 伤害加成 + fight_prop['dmgBonus'] = char["fightPropMap"][ + PROP_ATTR_MAP[char_data['avatarElement']] + ] + + char_data['avatarFightProp'] = fight_prop + + # 处理武器 + weapon_info = {} + weapon_data = char['equipList'][-1] + weapon_info['itemId'] = weapon_data['itemId'] + weapon_info['nameTextMapHash'] = weapon_data['flat']['nameTextMapHash'] + weapon_info['weaponIcon'] = weapon_data['flat']['icon'] + weapon_info['weaponType'] = weaponHash2Type[ + weapon_info['nameTextMapHash'] + ] + weapon_info['weaponName'] = weaponHash2Name[ + weapon_info['nameTextMapHash'] + ] + weapon_info['weaponStar'] = weapon_data['flat']['rankLevel'] + # 防止未精炼 + if 'promoteLevel' in weapon_data['weapon']: + weapon_info['promoteLevel'] = weapon_data['weapon']['promoteLevel'] + else: + weapon_info['promoteLevel'] = 0 + weapon_info['weaponLevel'] = weapon_data['weapon']['level'] + if 'affixMap' in weapon_data['weapon']: + weapon_info['weaponAffix'] = ( + list(weapon_data['weapon']['affixMap'].values())[0] + 1 + ) + else: + weapon_info['weaponAffix'] = 1 + weapon_info['weaponStats'] = [] + for k in weapon_data['flat']['weaponStats']: + weapon_prop_temp = {} + weapon_prop_temp['appendPropId'] = k['appendPropId'] + weapon_prop_temp['statName'] = propId2Name[k['appendPropId']] + weapon_prop_temp['statValue'] = k['statValue'] + weapon_info['weaponStats'].append(weapon_prop_temp) + # 武器特效,须请求API + effect_raw = await get_weapon_info(weapon_info['weaponName']) + if not isinstance(effect_raw, List) and not isinstance( + effect_raw, MiniGGError + ): + effect = effect_raw['effect'].format( + *effect_raw[ + 'r{}'.format(str(weapon_info['weaponAffix'])) + ] # type:ignore + ) + else: + effect = '无特效。' + weapon_info['weaponEffect'] = effect + char_data['weaponInfo'] = weapon_info + + # 处理圣遗物 + artifacts_info = [] + artifacts_data = char['equipList'][:-1] + artifact_set_list = [] + for artifact in artifacts_data: + artifact_temp = {} + artifact_temp['itemId'] = artifact['itemId'] + artifact_temp['nameTextMapHash'] = artifact['flat'][ + 'nameTextMapHash' + ] + artifact_temp['icon'] = artifact['flat']['icon'] + artifact_temp['aritifactName'] = icon2Name[ + artifact['flat']['icon'] + ] + artifact_temp['aritifactSetsName'] = artifact2attr[ + artifact_temp['aritifactName'] + ] + artifact_set_list.append(artifact_temp['aritifactSetsName']) + artifact_temp['aritifactSetPiece'] = artifactId2Piece[ + artifact_temp['icon'].split('_')[-1] + ][0] + artifact_temp['aritifactPieceName'] = artifactId2Piece[ + artifact_temp['icon'].split('_')[-1] + ][1] + + artifact_temp['aritifactStar'] = artifact['flat']['rankLevel'] + artifact_temp['aritifactLevel'] = ( + artifact['reliquary']['level'] - 1 + ) + + artifact_temp['reliquaryMainstat'] = artifact['flat'][ + 'reliquaryMainstat' + ] + artifact_temp['reliquaryMainstat']['statName'] = propId2Name[ + artifact_temp['reliquaryMainstat']['mainPropId'] + ] + + if 'reliquarySubstats' in artifact['flat']: + artifact_temp['reliquarySubstats'] = artifact['flat'][ + 'reliquarySubstats' + ] + else: + artifact_temp['reliquarySubstats'] = [] + for sub in artifact_temp['reliquarySubstats']: + sub['statName'] = propId2Name[sub['appendPropId']] + artifacts_info.append(artifact_temp) + + equipSetList = set(artifact_set_list) + char_data['equipSets'] = {'type': '', 'set': ''} + char_data['equipList'] = artifacts_info + for equip in equipSetList: + if artifact_set_list.count(equip) >= 4: + char_data['equipSets']['type'] = '4' + char_data['equipSets']['set'] = equip + break + elif artifact_set_list.count(equip) == 1: + pass + elif artifact_set_list.count(equip) >= 2: + char_data['equipSets']['type'] += '2' + char_data['equipSets']['set'] += '|' + equip + + if char_data['equipSets']['set'].startswith('|'): + char_data['equipSets']['set'] = char_data['equipSets']['set'][1:] + + char_dict_list.append(char_data) + with open( + path / '{}.json'.format(avatarName), 'w', encoding='UTF-8' + ) as file: + json.dump(char_data, file, ensure_ascii=False) + return char_dict_list + + +async def enka_to_data( + uid: str, enka_data: Optional[EnkaData] = None +) -> Union[dict, str]: + raw_data = await enka_to_dict(uid, enka_data) + if isinstance(raw_data, str): + return raw_data + char_name_list = [] + char_name_list_str = '' + for char_data in raw_data: + char_name_list.append(char_data['avatarName']) + char_name_list_str = ','.join(char_name_list) + return f'UID{uid}刷新完成!\n本次缓存:{char_name_list_str}' diff --git a/GenshinUID/genshinuid_etcimg/__init__.py b/GenshinUID/genshinuid_etcimg/__init__.py new file mode 100644 index 00000000..41d90819 --- /dev/null +++ b/GenshinUID/genshinuid_etcimg/__init__.py @@ -0,0 +1,38 @@ +from pathlib import Path + +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.models import Event + +from ..version import Genshin_version +from ..utils.image.convert import convert_img + +PRIMOGEMS_DATA_PATH = Path(__file__).parent / 'primogems_data' +IMG_PATH = Path(__file__).parent / 'img_data' + + +@SV('版本规划').on_command(('版本规划', '原石预估')) +async def send_primogems_data(bot: Bot, ev: Event): + await bot.logger.info('开始执行[图片][版本规划]') + if ev.text: + path = PRIMOGEMS_DATA_PATH / f'{ev.text}.png' + if path.exists(): + img = f'{ev.text}.png' + else: + return + else: + img = f'{Genshin_version[:3]}.png' + primogems_img = PRIMOGEMS_DATA_PATH / img + await bot.logger.info('[图片][版本规划]访问图片: {}'.format(img)) + primogems_img = await convert_img(primogems_img) + await bot.send(primogems_img) + + +@SV('杂图').on_fullmatch(('伤害乘区', '血量表', '抗性表', '血量排行')) +async def send_img_data(bot: Bot, ev: Event): + await bot.logger.info('开始执行[图片][杂图]') + img = IMG_PATH / f'{ev.command}.jpg' + if img.exists(): + await bot.send(await convert_img(img)) + else: + return diff --git a/GenshinUID/genshinuid_etcimg/img_data/伤害乘区.jpg b/GenshinUID/genshinuid_etcimg/img_data/伤害乘区.jpg new file mode 100644 index 00000000..253fff70 Binary files /dev/null and b/GenshinUID/genshinuid_etcimg/img_data/伤害乘区.jpg differ diff --git a/GenshinUID/genshinuid_etcimg/img_data/抗性表.jpg b/GenshinUID/genshinuid_etcimg/img_data/抗性表.jpg new file mode 100644 index 00000000..1ee51688 Binary files /dev/null and b/GenshinUID/genshinuid_etcimg/img_data/抗性表.jpg differ diff --git a/GenshinUID/genshinuid_etcimg/img_data/血量排行.jpg b/GenshinUID/genshinuid_etcimg/img_data/血量排行.jpg new file mode 100644 index 00000000..fcdf709f Binary files /dev/null and b/GenshinUID/genshinuid_etcimg/img_data/血量排行.jpg differ diff --git a/GenshinUID/genshinuid_etcimg/img_data/血量表.jpg b/GenshinUID/genshinuid_etcimg/img_data/血量表.jpg new file mode 100644 index 00000000..75b69744 Binary files /dev/null and b/GenshinUID/genshinuid_etcimg/img_data/血量表.jpg differ diff --git a/GenshinUID/genshinuid_etcimg/primogems_data/3.2.png b/GenshinUID/genshinuid_etcimg/primogems_data/3.2.png new file mode 100644 index 00000000..c581a8c5 Binary files /dev/null and b/GenshinUID/genshinuid_etcimg/primogems_data/3.2.png differ diff --git a/GenshinUID/genshinuid_etcimg/primogems_data/3.3.png b/GenshinUID/genshinuid_etcimg/primogems_data/3.3.png new file mode 100644 index 00000000..88cf2df0 Binary files /dev/null and b/GenshinUID/genshinuid_etcimg/primogems_data/3.3.png differ diff --git a/GenshinUID/genshinuid_etcimg/primogems_data/3.4.png b/GenshinUID/genshinuid_etcimg/primogems_data/3.4.png new file mode 100644 index 00000000..65348487 Binary files /dev/null and b/GenshinUID/genshinuid_etcimg/primogems_data/3.4.png differ diff --git a/GenshinUID/genshinuid_eventlist/__init__.py b/GenshinUID/genshinuid_eventlist/__init__.py new file mode 100644 index 00000000..ce91906b --- /dev/null +++ b/GenshinUID/genshinuid_eventlist/__init__.py @@ -0,0 +1,23 @@ +from gsuid_core.sv import SV +from gsuid_core.bot import Bot +from gsuid_core.aps import scheduler + +from ..utils.image.convert import convert_img +from .draw_event_img import get_event_img, get_all_event_img + + +@scheduler.scheduled_job('cron', hour='2') +async def draw_event(): + await get_all_event_img() + + +@SV('活动列表').on_fullmatch('活动列表') +async def send_events(bot: Bot): + img = await get_event_img('EVENT') + await bot.send(await convert_img(img)) + + +@SV('活动列表').on_fullmatch('卡池列表') +async def send_gachas(bot: Bot): + img = await get_event_img('GACHA') + await bot.send(await convert_img(img)) diff --git a/GenshinUID/genshinuid_eventlist/draw_event_img.py b/GenshinUID/genshinuid_eventlist/draw_event_img.py new file mode 100644 index 00000000..a5bb353e --- /dev/null +++ b/GenshinUID/genshinuid_eventlist/draw_event_img.py @@ -0,0 +1,275 @@ +from io import BytesIO +from re import findall +from pathlib import Path +from typing import List, Literal + +from httpx import get +from PIL import Image, ImageDraw + +from ..version import Genshin_version +from ..utils.image.convert import convert_img +from ..utils.image.image_tools import get_color_bg +from ..utils.fonts.genshin_fonts import genshin_font_origin +from ..gsuid_utils.api.ambr.request import get_ambr_event_info + +TEXT_PATH = Path(__file__).parent / 'texture2d' +EVENT_IMG_PATH = Path(__file__).parent / 'event.jpg' +GACHA_IMG_PATH = Path(__file__).parent / 'gacha.jpg' + +PATTERN = r'<[a-zA-Z]+.*?>([\s\S]*?)[a-zA-Z]*?>' + +text_color = (60, 59, 64) + + +async def get_month_and_time(time_data: str) -> List: + """ + :说明: + 接收时间字符串`2022/02/09 18:59:59` + 转换为`['02/09', '18:59PM']` + :参数: + * time_data (str): 时间字符串。 + :返回: + * [month, time] (list): ['02/09', '18:59PM']。 + """ + if '永久开放' in time_data: + month = time_data[:5] + time = '永久开放' + if '更新后' in time_data or '版本' in time_data: + month = time_data[:5] + time = '更新后' + else: + time_data = time_data.split(' ') # type: ignore + time_data[0] = time_data[0].replace('-', '/') # type: ignore + month = time_data[0].split('/', 1)[1] + time = ':'.join(time_data[1].split(':')[:-1]) + if int(time.split(':')[0]) <= 12: + time = time + 'AM' + else: + time = time + 'PM' + return [month, time] + + +class DrawEventList: + def __init__(self): + self.gacha_event: List = [] + self.normal_event: List = [] + self.other_event: List = [] + + async def get_event_data(self): + event_list = await get_ambr_event_info() + assert event_list is not None + for event in event_list: + # 跳过一部分活动 + flag = False + name_full = event_list[event]['nameFull']['CHS'] + for ban_word in ['首充', '深境螺旋', '传说任务', '纪行', '更新修复']: + if ban_word in name_full: + flag = True + break + + if flag: + continue + + event_data = {} + + # 确定结束时间 + start_time = f'{Genshin_version[:-2]}更新后' + end_time = event_list[event]['endAt'] # 2022-11-01 14:59:59 + + event_data['banner'] = event_list[event]['banner']['CHS'] + desc = event_list[event]['description']['CHS'] + desc_content = findall( + r'(
)?(
|)',
+ desc,
+ )
+ if desc_content:
+ start_time = desc_content[0][2]
+
+ event_data['full_name'] = event_list[event]['nameFull']['CHS']
+ event_data['start_time'] = await get_month_and_time(start_time)
+ event_data['end_time'] = await get_month_and_time(end_time)
+ if '祈愿' in name_full or '扭蛋' in name_full:
+ self.gacha_event.append(event_data)
+ else:
+ self.normal_event.append(event_data)
+
+ async def get_and_save_event_img(self):
+ base_h = 100 + len(self.normal_event) * 380
+ base_img = await get_color_bg(950, base_h)
+
+ font_l = genshin_font_origin(62)
+ # font_m = genshin_font_origin(34)
+ font_s = genshin_font_origin(26)
+
+ # now_time = datetime.now().strftime('%Y/%m/%d')
+ event_cover = Image.open(TEXT_PATH / 'normal_event_cover.png')
+
+ for index, value in enumerate(self.normal_event):
+ event_img = Image.open(TEXT_PATH / 'normal_event_bg.png')
+ banner_img = Image.open(BytesIO(get(value['banner']).content))
+ banner_img = banner_img.resize(
+ (576, 208), Image.Resampling.LANCZOS
+ )
+ event_img.paste(banner_img, (315, 118))
+ event_img_draw = ImageDraw.Draw(event_img)
+
+ # 写标题
+ event_img_draw.text(
+ (475, 47), value['full_name'], text_color, font_s, 'mm'
+ )
+ # 纠错
+ if isinstance(value['start_time'], str):
+ value['start_time'] = await get_month_and_time(
+ value['start_time']
+ )
+ if isinstance(value['end_time'], str):
+ value['end_time'] = await get_month_and_time(value['end_time'])
+
+ # 画三角
+ event_img_draw.polygon(
+ [(98, 211), (98, 237), (121, 224)], fill=(243, 110, 110)
+ )
+
+ # 写字
+ event_img_draw.text(
+ (74, 149),
+ value['start_time'][0],
+ text_color,
+ font_l,
+ anchor='lm',
+ )
+ event_img_draw.text(
+ (74, 191),
+ value['start_time'][1],
+ text_color,
+ font_s,
+ anchor='lm',
+ )
+ event_img_draw.text(
+ (115, 275),
+ value['end_time'][0],
+ text_color,
+ font_l,
+ anchor='lm',
+ )
+ event_img_draw.text(
+ (115, 318),
+ value['end_time'][1],
+ text_color,
+ font_s,
+ anchor='lm',
+ )
+ event_img.paste(event_cover, (0, 0), event_cover)
+ base_img.paste(event_img, (0, 50 + 380 * index), event_img)
+
+ base_img = base_img.convert('RGB')
+ base_img.save(EVENT_IMG_PATH, format='JPEG', subsampling=0, quality=90)
+ base_img = await convert_img(base_img)
+ if isinstance(base_img, bytes):
+ return base_img
+ else:
+ return bytes(base_img, 'utf8')
+
+ async def get_and_save_gacha_img(self):
+ base_h = 100 + len(self.gacha_event) * 480
+ base_img = await get_color_bg(950, base_h)
+
+ font_l = genshin_font_origin(62)
+ # font_m = genshin_font_origin(34)
+ font_s = genshin_font_origin(26)
+
+ # now_time = datetime.now().strftime('%Y/%m/%d')
+ gacha_cover = Image.open(TEXT_PATH / 'gacha_event_cover.png')
+
+ for index, value in enumerate(self.gacha_event):
+ gacha_img = Image.open(TEXT_PATH / 'gacha_event_bg.png')
+ banner_img = Image.open(BytesIO(get(value['banner']).content))
+ banner_img = banner_img.resize(
+ (576, 284), Image.Resampling.LANCZOS
+ )
+ gacha_img.paste(banner_img, (315, 130))
+ gacha_img_draw = ImageDraw.Draw(gacha_img)
+
+ # 写标题
+ gacha_img_draw.text(
+ (475, 47), value['full_name'], text_color, font_s, 'mm'
+ )
+ # 纠错
+ if isinstance(value['start_time'], str):
+ value['start_time'] = await get_month_and_time(
+ value['start_time']
+ )
+ if isinstance(value['end_time'], str):
+ value['end_time'] = await get_month_and_time(value['end_time'])
+
+ # 画三角
+ gacha_img_draw.polygon(
+ [(98, 261), (98, 287), (121, 274)], fill=(243, 110, 110)
+ )
+
+ # 写字
+ gacha_img_draw.text(
+ (74, 199),
+ value['start_time'][0],
+ text_color,
+ font_l,
+ anchor='lm',
+ )
+ gacha_img_draw.text(
+ (74, 241),
+ value['start_time'][1],
+ text_color,
+ font_s,
+ anchor='lm',
+ )
+ gacha_img_draw.text(
+ (115, 325),
+ value['end_time'][0],
+ text_color,
+ font_l,
+ anchor='lm',
+ )
+ gacha_img_draw.text(
+ (115, 368),
+ value['end_time'][1],
+ text_color,
+ font_s,
+ anchor='lm',
+ )
+ gacha_img.paste(gacha_cover, (0, 0), gacha_cover)
+ base_img.paste(gacha_img, (0, 50 + 480 * index), gacha_img)
+
+ base_img = base_img.convert('RGB')
+ base_img.save(GACHA_IMG_PATH, format='JPEG', subsampling=0, quality=90)
+ base_img = await convert_img(base_img)
+ if isinstance(base_img, bytes):
+ return base_img
+ else:
+ return bytes(base_img, 'utf8')
+
+
+async def get_all_event_img():
+ event_list = DrawEventList()
+ await event_list.get_event_data()
+ await event_list.get_and_save_event_img()
+ await event_list.get_and_save_gacha_img()
+
+
+async def get_event_img(event_type: Literal['EVENT', 'GACHA']) -> bytes:
+ if event_type == 'EVENT':
+ if EVENT_IMG_PATH.exists():
+ with open(EVENT_IMG_PATH, 'rb') as f:
+ return f.read()
+ else:
+ if GACHA_IMG_PATH.exists():
+ with open(GACHA_IMG_PATH, 'rb') as f:
+ return f.read()
+
+ event_list = DrawEventList()
+ await event_list.get_event_data()
+ if event_type == 'EVENT':
+ return await event_list.get_and_save_event_img()
+ else:
+ return await event_list.get_and_save_gacha_img()
diff --git a/GenshinUID/genshinuid_eventlist/texture2d/gacha_event_bg.png b/GenshinUID/genshinuid_eventlist/texture2d/gacha_event_bg.png
new file mode 100644
index 00000000..a57c7cc5
Binary files /dev/null and b/GenshinUID/genshinuid_eventlist/texture2d/gacha_event_bg.png differ
diff --git a/GenshinUID/genshinuid_eventlist/texture2d/gacha_event_cover.png b/GenshinUID/genshinuid_eventlist/texture2d/gacha_event_cover.png
new file mode 100644
index 00000000..d842875d
Binary files /dev/null and b/GenshinUID/genshinuid_eventlist/texture2d/gacha_event_cover.png differ
diff --git a/GenshinUID/genshinuid_eventlist/texture2d/normal_event_bg.png b/GenshinUID/genshinuid_eventlist/texture2d/normal_event_bg.png
new file mode 100644
index 00000000..e94c19bc
Binary files /dev/null and b/GenshinUID/genshinuid_eventlist/texture2d/normal_event_bg.png differ
diff --git a/GenshinUID/genshinuid_eventlist/texture2d/normal_event_cover.png b/GenshinUID/genshinuid_eventlist/texture2d/normal_event_cover.png
new file mode 100644
index 00000000..5aec58cf
Binary files /dev/null and b/GenshinUID/genshinuid_eventlist/texture2d/normal_event_cover.png differ
diff --git a/GenshinUID/genshinuid_gachalog/__init__.py b/GenshinUID/genshinuid_gachalog/__init__.py
new file mode 100644
index 00000000..5961935f
--- /dev/null
+++ b/GenshinUID/genshinuid_gachalog/__init__.py
@@ -0,0 +1,32 @@
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+
+from ..utils.convert import get_uid
+from ..utils.error_reply import UID_HINT
+from .get_gachalogs import save_gachalogs
+from .draw_gachalogs import draw_gachalogs_img
+
+
+@SV('抽卡记录').on_fullmatch(('抽卡记录'))
+async def send_gacha_log_card_info(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[抽卡记录]')
+ uid = await get_uid(bot, ev)
+ if uid is None:
+ return await bot.send(UID_HINT)
+ im = await draw_gachalogs_img(uid, ev.user_id)
+ await bot.send(im)
+
+
+@SV('抽卡记录').on_fullmatch(('刷新抽卡记录', '强制刷新抽卡记录'))
+async def send_daily_info(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[刷新抽卡记录]')
+ uid = await get_uid(bot, ev)
+ if uid is None:
+ return await bot.send(UID_HINT)
+ is_force = False
+ if ev.command.startswith('强制'):
+ await bot.logger.info('[WARNING]本次为强制刷新')
+ is_force = True
+ im = await save_gachalogs(uid, None, is_force)
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_gachalog/draw_gachalogs.py b/GenshinUID/genshinuid_gachalog/draw_gachalogs.py
new file mode 100644
index 00000000..3f1477e6
--- /dev/null
+++ b/GenshinUID/genshinuid_gachalog/draw_gachalogs.py
@@ -0,0 +1,422 @@
+import json
+import random
+import asyncio
+import datetime
+from pathlib import Path
+from typing import List, Tuple, Union
+
+from nonebot.log import logger
+from PIL import Image, ImageDraw
+
+from ..utils.image.convert import convert_img
+from ..utils.map.name_covert import name_to_avatar_id
+from ..utils.resource.RESOURCE_PATH import CHAR_PATH, PLAYER_PATH, WEAPON_PATH
+from ..utils.image.image_tools import (
+ get_color_bg,
+ get_qq_avatar,
+ draw_pic_with_ring,
+)
+from ..utils.fonts.genshin_fonts import (
+ gs_font_24,
+ gs_font_28,
+ gs_font_36,
+ gs_font_40,
+ gs_font_62,
+)
+
+TEXT_PATH = Path(__file__).parent / 'texture2d'
+
+up_tag = Image.open(TEXT_PATH / 'up.png')
+
+first_color = (29, 29, 29)
+brown_color = (41, 25, 0)
+red_color = (255, 66, 66)
+green_color = (74, 189, 119)
+
+CHANGE_MAP = {'常驻祈愿': 'normal', '角色祈愿': 'char', '武器祈愿': 'weapon'}
+HOMO_TAG = ['非到极致', '运气不好', '平稳保底', '小欧一把', '欧狗在此']
+NORMAL_LIST = [
+ '莫娜',
+ '迪卢克',
+ '七七',
+ '琴',
+ '阿莫斯之弓',
+ '天空之翼',
+ '四风原典',
+ '天空之卷',
+ '和璞鸢',
+ '天空之脊',
+ '狼的末路',
+ '天空之傲',
+ '风鹰剑',
+ '天空之刃',
+]
+
+
+async def _draw_card(
+ img: Image.Image,
+ xy_point: Tuple[int, int],
+ type: str,
+ name: str,
+ gacha_num: int,
+ is_up: bool,
+):
+ card_img = Image.open(TEXT_PATH / 'item_bg.png')
+ card_img_draw = ImageDraw.Draw(card_img)
+ point = (1, 0)
+ text_point = (55, 124)
+ if type == '角色':
+ _id = await name_to_avatar_id(name)
+ item_pic = (
+ Image.open(CHAR_PATH / f'{_id}.png')
+ .convert('RGBA')
+ .resize((108, 108))
+ )
+ else:
+ item_pic = (
+ Image.open(WEAPON_PATH / f'{name}.png')
+ .convert('RGBA')
+ .resize((108, 108))
+ )
+ card_img.paste(item_pic, point, item_pic)
+ if gacha_num >= 81:
+ text_color = red_color
+ elif gacha_num <= 55:
+ text_color = green_color
+ else:
+ text_color = brown_color
+ card_img_draw.text(
+ text_point, f'{gacha_num}抽', text_color, gs_font_24, 'mm'
+ )
+ if is_up:
+ card_img.paste(up_tag, (47, -2), up_tag)
+ img.paste(card_img, xy_point, card_img)
+
+
+async def random_emo_pic(level: int) -> Image.Image:
+ emo_fold = TEXT_PATH / str(level)
+ return Image.open(random.choice(list(emo_fold.iterdir())))
+
+
+async def get_level_from_list(ast: int, lst: List) -> int:
+ if ast == 0:
+ return 3
+
+ for num_index, num in enumerate(lst):
+ if ast <= num:
+ level = 5 - num_index
+ break
+ else:
+ level = 1
+ return level
+
+
+async def draw_gachalogs_img(uid: str, user_id: str) -> Union[bytes, str]:
+ path = PLAYER_PATH / str(uid) / 'gacha_logs.json'
+ if not path.exists():
+ return '你还没有祈愿数据噢~\n请添加Stoken后使用命令`刷新抽卡记录`更新祈愿数据~'
+ with open(path, 'r', encoding='UTF-8') as f:
+ gacha_data = json.load(f)
+
+ # 数据初始化
+ total_data = {}
+ for i in ['常驻祈愿', '角色祈愿', '武器祈愿']:
+ total_data[i] = {
+ 'total': 0, # 五星总数
+ 'avg': 0, # 抽卡平均数
+ 'avg_up': 0, # up平均数
+ 'remain': 0, # 已xx抽未出金
+ 'r_num': [], # 不包含首位的抽卡数量
+ 'e_num': [], # 包含首位的up抽卡数量
+ 'up_list': [], # 抽到的UP列表(不包含首位)
+ 'normal_list': [], # 抽到的五星列表(不包含首位)
+ 'list': [], # 抽到的五星列表
+ 'time_range': '', # 抽卡时间
+ 'all_time': 0, # 抽卡总计秒数
+ 'type': '一般型', # 抽卡类型: 随缘型, 氪金型, 规划型, 仓鼠型, 佛系型
+ 'short_gacha_data': {'time': 0, 'num': 0},
+ 'long_gacha_data': {'time': 0, 'num': 0},
+ }
+ # 拿到数据列表
+ data_list = gacha_data['data'][i]
+ # 初始化开关
+ is_not_first = False
+ # 开始初始化抽卡数
+ num = 1
+ # 从后面开始循环
+ temp_time = datetime.datetime(2020, 9, 15, 18, 0, 0)
+ for index, data in enumerate(data_list[::-1]):
+ # 计算抽卡时间跨度
+ if index == 0:
+ total_data[i]['time_range'] = data['time']
+ if index == len(data_list) - 1:
+ total_data[i]['all_time'] = (
+ datetime.datetime.strptime(
+ data['time'], '%Y-%m-%d %H:%M:%S'
+ )
+ - datetime.datetime.strptime(
+ total_data[i]['time_range'], '%Y-%m-%d %H:%M:%S'
+ )
+ ).total_seconds()
+ total_data[i]['time_range'] += '~' + data['time']
+
+ # 计算时间间隔
+ if index != 0:
+ now_time = datetime.datetime.strptime(
+ data['time'], '%Y-%m-%d %H:%M:%S'
+ )
+ dis = (now_time - temp_time).total_seconds()
+ temp_time = now_time
+ if dis <= 5000:
+ total_data[i]['short_gacha_data']['num'] += 1
+ total_data[i]['short_gacha_data']['time'] += dis
+ elif dis >= 86400:
+ total_data[i]['long_gacha_data']['num'] += 1
+ total_data[i]['long_gacha_data']['time'] += dis
+ else:
+ temp_time = datetime.datetime.strptime(
+ data['time'], '%Y-%m-%d %H:%M:%S'
+ )
+
+ # 如果这是个五星
+ if data['rank_type'] == '5':
+ # 抽到这个五星花了多少抽
+ data['gacha_num'] = num
+
+ # 判断是否是UP
+ if data['name'] in NORMAL_LIST:
+ data['is_up'] = False
+ # 判断刻晴时间
+ elif data['name'] == '刻晴':
+ s_time = datetime.datetime(2021, 2, 17, 18, 0, 0)
+ e_time = datetime.datetime(2021, 3, 2, 15, 59, 59)
+ gacha_time = datetime.datetime.strptime(
+ data['time'], '%Y-%m-%d %H:%M:%S'
+ )
+ if gacha_time < s_time or gacha_time > e_time:
+ data['is_up'] = False
+ else:
+ data['is_up'] = True
+ # 判断提哪里时间
+ elif data['name'] == '提纳里':
+ s_time = datetime.datetime(2022, 8, 24, 11, 0, 0)
+ e_time = datetime.datetime(2022, 9, 9, 17, 59, 59)
+ gacha_time = datetime.datetime.strptime(
+ data['time'], '%Y-%m-%d %H:%M:%S'
+ )
+ if gacha_time < s_time or gacha_time > e_time:
+ data['is_up'] = False
+ else:
+ data['is_up'] = True
+ else:
+ data['is_up'] = True
+
+ # 往里加东西
+ if is_not_first:
+ total_data[i]['r_num'].append(num)
+ total_data[i]['normal_list'].append(data)
+ if data['is_up']:
+ total_data[i]['up_list'].append(data)
+
+ # 把这个数据扔到抽到的五星列表内
+ total_data[i]['list'].append(data)
+
+ # 判断经过了第一个
+ if total_data[i]['list']:
+ is_not_first = True
+
+ num = 1
+ # 五星总数增加1
+ total_data[i]['total'] += 1
+ else:
+ num += 1
+
+ # 计算已多少抽
+ total_data[i]['remain'] = num - 1
+
+ # 计算平均抽卡数
+ if len(total_data[i]['normal_list']) == 0:
+ total_data[i]['avg'] = 0
+ else:
+ total_data[i]['avg'] = float(
+ '{:.2f}'.format(
+ sum(total_data[i]['r_num']) / len(total_data[i]['r_num'])
+ )
+ )
+ # 计算平均up数量
+ if len(total_data[i]['up_list']) == 0:
+ total_data[i]['avg_up'] = 0
+ else:
+ total_data[i]['avg_up'] = float(
+ '{:.2f}'.format(
+ sum(total_data[i]['r_num']) / len(total_data[i]['up_list'])
+ )
+ )
+
+ # 计算抽卡类型
+ # 如果抽卡总数小于40
+ if gacha_data[f'{CHANGE_MAP[i]}_gacha_num'] <= 40:
+ total_data[i]['type'] = '佛系型'
+ # 如果长时抽卡总数占据了总抽卡数的70%
+ elif (
+ total_data[i]['long_gacha_data']['num']
+ / gacha_data[f'{CHANGE_MAP[i]}_gacha_num']
+ >= 0.7
+ ):
+ total_data[i]['type'] = '随缘型'
+ # 如果短时抽卡总数占据了总抽卡数的70%
+ elif (
+ total_data[i]['short_gacha_data']['num']
+ / gacha_data[f'{CHANGE_MAP[i]}_gacha_num']
+ >= 0.7
+ ):
+ total_data[i]['type'] = '规划型'
+ # 如果抽卡数量远远大于标称抽卡数量
+ elif (
+ total_data[i]['all_time'] / 30000
+ <= gacha_data[f'{CHANGE_MAP[i]}_gacha_num']
+ ):
+ # 如果长时抽卡数量大于短时抽卡数量
+ if (
+ total_data[i]['long_gacha_data']['num']
+ >= total_data[i]['short_gacha_data']['num']
+ ):
+ total_data[i]['type'] = '规划型'
+ else:
+ total_data[i]['type'] = '氪金型'
+ # 如果抽卡数量远远小于标称抽卡数量
+ elif (
+ total_data[i]['all_time'] / 32000
+ >= gacha_data[f'{CHANGE_MAP[i]}_gacha_num'] * 2
+ ):
+ total_data[i]['type'] = '仓鼠型'
+
+ # 常量偏移数据
+ single_y = 150
+
+ # 计算图片尺寸
+ normal_y = (1 + ((total_data['常驻祈愿']['total'] - 1) // 6)) * single_y
+ char_y = (1 + ((total_data['角色祈愿']['total'] - 1) // 6)) * single_y
+ weapon_y = (1 + ((total_data['武器祈愿']['total'] - 1) // 6)) * single_y
+
+ # 获取背景图片各项参数
+ _id = str(user_id)
+ if _id.startswith('http'):
+ char_pic = await get_qq_avatar(avatar_url=_id)
+ else:
+ char_pic = await get_qq_avatar(qid=user_id)
+ char_pic = await draw_pic_with_ring(char_pic, 320)
+
+ avatar_title = Image.open(TEXT_PATH / 'avatar_title.png')
+ img = await get_color_bg(950, 530 + 900 + normal_y + char_y + weapon_y)
+ img.paste(avatar_title, (0, 0), avatar_title)
+ img.paste(char_pic, (318, 83), char_pic)
+ img_draw = ImageDraw.Draw(img)
+ img_draw.text((475, 454), f'UID {uid}', first_color, gs_font_36, 'mm')
+
+ # 处理title
+ # {'total': 0, 'avg': 0, 'remain': 0, 'list': []}
+ type_list = ['常驻祈愿', '角色祈愿', '武器祈愿']
+ y_extend = 0
+ level = 3
+ for index, i in enumerate(type_list):
+ title = Image.open(TEXT_PATH / 'gahca_title.png')
+ if i == '常驻祈愿':
+ level = await get_level_from_list(
+ total_data[i]['avg'], [54, 61, 67, 73, 80]
+ )
+ else:
+ if i == '武器祈愿':
+ level = await get_level_from_list(
+ total_data[i]['avg_up'], [62, 75, 88, 99, 111]
+ )
+ else:
+ level = await get_level_from_list(
+ total_data[i]['avg_up'], [74, 87, 99, 105, 120]
+ )
+
+ emo_pic = await random_emo_pic(level)
+ emo_pic = emo_pic.resize((154, 154))
+ title.paste(emo_pic, (703, 28), emo_pic)
+ title_draw = ImageDraw.Draw(title)
+ # 欧非描述
+ title_draw.text(
+ (778, 207), HOMO_TAG[level - 1], first_color, gs_font_36, 'mm'
+ )
+ # 卡池
+ title_draw.text((69, 72), i, first_color, gs_font_62, 'lm')
+ # 抽卡时间
+ if total_data[i]['time_range']:
+ time_range = total_data[i]['time_range']
+ else:
+ time_range = '暂未抽过卡!'
+ title_draw.text((68, 122), time_range, brown_color, gs_font_28, 'lm')
+ # 平均抽卡数量
+ title_draw.text(
+ (123, 176),
+ str(total_data[i]['avg']),
+ first_color,
+ gs_font_40,
+ 'mm',
+ )
+ # 平均up
+ title_draw.text(
+ (272, 176),
+ str(total_data[i]['avg_up']),
+ first_color,
+ gs_font_40,
+ 'mm',
+ )
+ # 抽卡总数
+ title_draw.text(
+ (424, 176),
+ str(gacha_data[f'{CHANGE_MAP[i]}_gacha_num']),
+ first_color,
+ gs_font_40,
+ 'mm',
+ )
+ # 抽卡类型
+ title_draw.text(
+ (585, 176),
+ str(total_data[i]['type']),
+ first_color,
+ gs_font_40,
+ 'mm',
+ )
+ # 已抽数
+ title_draw.text(
+ (383, 85),
+ str(total_data[i]['remain']),
+ red_color,
+ gs_font_28,
+ 'mm',
+ )
+ y_extend += (
+ (1 + ((total_data[type_list[index - 1]]['total'] - 1) // 6)) * 150
+ if index != 0
+ else 0
+ )
+ y = 540 + index * 300 + y_extend
+ img.paste(title, (0, y), title)
+ tasks = []
+ for item_index, item in enumerate(total_data[i]['list']):
+ item_x = (item_index % 6) * 138 + 60
+ item_y = (item_index // 6) * 150 + y + 275
+ xy_point = (item_x, item_y)
+ tasks.append(
+ _draw_card(
+ img,
+ xy_point,
+ item['item_type'],
+ item['name'],
+ item['gacha_num'],
+ item['is_up'],
+ )
+ )
+ await asyncio.gather(*tasks)
+ tasks.clear()
+
+ # 发送图片
+ res = await convert_img(img)
+ logger.info('[查询抽卡]绘图已完成,等待发送!')
+ return res
diff --git a/GenshinUID/genshinuid_gachalog/export_and_import.py b/GenshinUID/genshinuid_gachalog/export_and_import.py
new file mode 100644
index 00000000..b6267db7
--- /dev/null
+++ b/GenshinUID/genshinuid_gachalog/export_and_import.py
@@ -0,0 +1,86 @@
+import json
+from datetime import datetime
+
+from httpx import get
+
+from .get_gachalogs import save_gachalogs
+from ..utils.resource.RESOURCE_PATH import PLAYER_PATH
+
+INT_TO_TYPE = {
+ '100': '新手祈愿',
+ '200': '常驻祈愿',
+ '301': '角色祈愿',
+ '400': '角色祈愿',
+ '302': '武器祈愿',
+}
+
+
+async def import_gachalogs(history_url: str, uid: str) -> str:
+ history_data: dict = json.loads(get(history_url).text)
+ data_uid = history_data['info']['uid']
+ if data_uid != uid:
+ return f'该抽卡记录UID{data_uid}与你绑定UID{uid}不符合!'
+ raw_data = history_data['list']
+ result = {'新手祈愿': [], '常驻祈愿': [], '角色祈愿': [], '武器祈愿': []}
+ for item in raw_data:
+ item['uid'] = uid
+ item['item_id'] = ''
+ item['count'] = '1'
+ item['lang'] = 'zh-cn'
+ item['id'] = str(item['id'])
+ del item['uigf_gacha_type']
+ result[INT_TO_TYPE[item['gacha_type']]].append(item)
+ im = await save_gachalogs(uid, result)
+ return im
+
+
+async def export_gachalogs(uid: str) -> dict:
+ path = PLAYER_PATH / uid
+ if not path.exists():
+ path.mkdir(parents=True, exist_ok=True)
+
+ # 获取当前时间
+ now = datetime.now()
+ current_time = now.strftime('%Y-%m-%d %H:%M:%S')
+
+ # 抽卡记录json路径
+ gachalogs_path = path / 'gacha_logs.json'
+ if gachalogs_path.exists():
+ with open(gachalogs_path, "r", encoding='UTF-8') as f:
+ raw_data = json.load(f)
+ result = {
+ 'info': {
+ 'uid': uid,
+ 'lang': 'zh-cn',
+ 'export_time': current_time,
+ 'export_app': 'GenshinUID',
+ 'export_app_version': '3.1',
+ 'uigf_version': '2.1',
+ },
+ 'list': [],
+ }
+ for i in ['新手祈愿', '常驻祈愿', '角色祈愿', '武器祈愿']:
+ for item in raw_data['data'][i]:
+ if item['gacha_type'] == '400':
+ item['uigf_gacha_type'] = '301'
+ else:
+ item['uigf_gacha_type'] = item['gacha_type']
+ result['list'].append(item)
+ # 保存文件
+ with open(path / f'UIGF_{uid}.json', 'w', encoding='UTF-8') as file:
+ json.dump(result, file, ensure_ascii=False)
+ im = {
+ 'retcode': 'ok',
+ 'data': '导出成功!',
+ 'name': f'UIGF_{uid}.json',
+ 'url': str((path / f'UIGF_{uid}.json').absolute()),
+ }
+ else:
+ im = {
+ 'retcode': 'error',
+ 'data': '你还没有抽卡记录可以导出!',
+ 'name': '',
+ 'url': '',
+ }
+
+ return im
diff --git a/GenshinUID/genshinuid_gachalog/get_gachalogs.py b/GenshinUID/genshinuid_gachalog/get_gachalogs.py
new file mode 100644
index 00000000..8cdff3ac
--- /dev/null
+++ b/GenshinUID/genshinuid_gachalog/get_gachalogs.py
@@ -0,0 +1,138 @@
+import json
+import asyncio
+from datetime import datetime
+from typing import Dict, Optional
+
+from ..utils.mys_api import mys_api
+from ..utils.error_reply import SK_HINT
+from ..utils.resource.RESOURCE_PATH import PLAYER_PATH
+
+gacha_type_meta_data = {
+ '新手祈愿': ['100'],
+ '常驻祈愿': ['200'],
+ '角色祈愿': ['301', '400'],
+ '武器祈愿': ['302'],
+}
+
+
+async def get_new_gachalog(uid: str, full_data: Dict, is_force: bool):
+ temp = []
+ for gacha_name in gacha_type_meta_data:
+ for gacha_type in gacha_type_meta_data[gacha_name]:
+ end_id = '0'
+ for page in range(1, 999):
+ data = await mys_api.get_gacha_log_by_authkey(
+ uid, gacha_type, page, end_id
+ )
+ await asyncio.sleep(0.9)
+ if isinstance(data, int):
+ return {}
+ data = data['list']
+ if data == []:
+ break
+ end_id = data[-1]['id']
+ if data[-1] in full_data[gacha_name] and not is_force:
+ for item in data:
+ if item not in full_data[gacha_name]:
+ temp.append(item)
+ full_data[gacha_name][0:0] = temp
+ temp = []
+ break
+ if len(full_data[gacha_name]) >= 1:
+ if int(data[-1]['id']) <= int(
+ full_data[gacha_name][0]['id']
+ ):
+ full_data[gacha_name].extend(data)
+ else:
+ full_data[gacha_name][0:0] = data
+ else:
+ full_data[gacha_name].extend(data)
+ await asyncio.sleep(0.5)
+ return full_data
+
+
+async def save_gachalogs(
+ uid: str, raw_data: Optional[dict] = None, is_force: bool = False
+) -> str:
+ path = PLAYER_PATH / str(uid)
+ if not path.exists():
+ path.mkdir(parents=True, exist_ok=True)
+
+ # 获取当前时间
+ now = datetime.now()
+ current_time = now.strftime('%Y-%m-%d %H-%M-%S')
+
+ # 初始化最后保存的数据
+ result = {}
+
+ # 抽卡记录json路径
+ gachalogs_path = path / 'gacha_logs.json'
+
+ # 如果有老的,准备合并, 先打开文件
+ gachalogs_history = {}
+ old_normal_gacha_num, old_char_gacha_num, old_weapon_gacha_num = 0, 0, 0
+ if gachalogs_path.exists():
+ with open(gachalogs_path, "r", encoding='UTF-8') as f:
+ gachalogs_history: Dict = json.load(f)
+ gachalogs_history = gachalogs_history['data']
+ old_normal_gacha_num = len(gachalogs_history['常驻祈愿'])
+ old_char_gacha_num = len(gachalogs_history['角色祈愿'])
+ old_weapon_gacha_num = len(gachalogs_history['武器祈愿'])
+
+ # 获取新抽卡记录
+ if raw_data is None:
+ raw_data = await get_new_gachalog(uid, gachalogs_history, is_force)
+ else:
+ new_data = {'新手祈愿': [], '常驻祈愿': [], '角色祈愿': [], '武器祈愿': []}
+ if gachalogs_history:
+ for i in ['新手祈愿', '常驻祈愿', '角色祈愿', '武器祈愿']:
+ for item in raw_data[i]:
+ if (
+ item not in gachalogs_history[i]
+ and item not in new_data[i]
+ ):
+ new_data[i].append(item)
+ raw_data = new_data
+ for i in ['新手祈愿', '常驻祈愿', '角色祈愿', '武器祈愿']:
+ raw_data[i].extend(gachalogs_history[i])
+
+ if raw_data == {} or not raw_data:
+ return SK_HINT
+
+ temp_data = {'新手祈愿': [], '常驻祈愿': [], '角色祈愿': [], '武器祈愿': []}
+ for i in ['新手祈愿', '常驻祈愿', '角色祈愿', '武器祈愿']:
+ for item in raw_data[i]:
+ if item not in temp_data[i]:
+ temp_data[i].append(item)
+ raw_data = temp_data
+
+ result['uid'] = uid
+ result['data_time'] = current_time
+ result['normal_gacha_num'] = len(raw_data['常驻祈愿'])
+ result['char_gacha_num'] = len(raw_data['角色祈愿'])
+ result['weapon_gacha_num'] = len(raw_data['武器祈愿'])
+ for i in ['常驻祈愿', '角色祈愿', '武器祈愿']:
+ if len(raw_data[i]) > 1:
+ raw_data[i].sort(key=lambda x: (-int(x['id'])))
+ result['data'] = raw_data
+
+ # 计算数据
+ normal_add = result['normal_gacha_num'] - old_normal_gacha_num
+ char_add = result['char_gacha_num'] - old_char_gacha_num
+ weapon_add = result['weapon_gacha_num'] - old_weapon_gacha_num
+ all_add = normal_add + char_add + weapon_add
+
+ # 保存文件
+ with open(gachalogs_path, 'w', encoding='UTF-8') as file:
+ json.dump(result, file, ensure_ascii=False)
+
+ # 回复文字
+ if all_add == 0:
+ im = f'UID{uid}没有新增祈愿数据!'
+ else:
+ im = (
+ f'UID{uid}数据更新成功!'
+ f'本次更新{all_add}个数据\n'
+ f'常驻祈愿{normal_add}个\n角色祈愿{char_add}个\n武器祈愿{weapon_add}个!'
+ )
+ return im
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/1/100.png b/GenshinUID/genshinuid_gachalog/texture2d/1/100.png
new file mode 100644
index 00000000..24eba964
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/1/100.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/1/133.png b/GenshinUID/genshinuid_gachalog/texture2d/1/133.png
new file mode 100644
index 00000000..8685fc3e
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/1/133.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/1/166.png b/GenshinUID/genshinuid_gachalog/texture2d/1/166.png
new file mode 100644
index 00000000..1086b218
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/1/166.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/1/200.png b/GenshinUID/genshinuid_gachalog/texture2d/1/200.png
new file mode 100644
index 00000000..2e40ac61
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/1/200.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/1/48.png b/GenshinUID/genshinuid_gachalog/texture2d/1/48.png
new file mode 100644
index 00000000..7458b337
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/1/48.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/1/55.png b/GenshinUID/genshinuid_gachalog/texture2d/1/55.png
new file mode 100644
index 00000000..435827e1
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/1/55.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/2/10.png b/GenshinUID/genshinuid_gachalog/texture2d/2/10.png
new file mode 100644
index 00000000..926e9b64
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/2/10.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/2/25.png b/GenshinUID/genshinuid_gachalog/texture2d/2/25.png
new file mode 100644
index 00000000..bd704168
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/2/25.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/2/37.png b/GenshinUID/genshinuid_gachalog/texture2d/2/37.png
new file mode 100644
index 00000000..999269e2
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/2/37.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/2/39.png b/GenshinUID/genshinuid_gachalog/texture2d/2/39.png
new file mode 100644
index 00000000..ab1ec015
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/2/39.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/2/60.png b/GenshinUID/genshinuid_gachalog/texture2d/2/60.png
new file mode 100644
index 00000000..01a8bdf8
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/2/60.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/2/63.png b/GenshinUID/genshinuid_gachalog/texture2d/2/63.png
new file mode 100644
index 00000000..32f346a9
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/2/63.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/3/130.png b/GenshinUID/genshinuid_gachalog/texture2d/3/130.png
new file mode 100644
index 00000000..41218c15
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/3/130.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/3/144.png b/GenshinUID/genshinuid_gachalog/texture2d/3/144.png
new file mode 100644
index 00000000..1e750dd6
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/3/144.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/3/147.png b/GenshinUID/genshinuid_gachalog/texture2d/3/147.png
new file mode 100644
index 00000000..265cf5f2
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/3/147.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/3/33.png b/GenshinUID/genshinuid_gachalog/texture2d/3/33.png
new file mode 100644
index 00000000..d4f99a81
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/3/33.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/3/63.png b/GenshinUID/genshinuid_gachalog/texture2d/3/63.png
new file mode 100644
index 00000000..32f346a9
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/3/63.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/3/9.png b/GenshinUID/genshinuid_gachalog/texture2d/3/9.png
new file mode 100644
index 00000000..f84e0bad
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/3/9.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/4/117.png b/GenshinUID/genshinuid_gachalog/texture2d/4/117.png
new file mode 100644
index 00000000..cc1d664a
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/4/117.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/4/17.png b/GenshinUID/genshinuid_gachalog/texture2d/4/17.png
new file mode 100644
index 00000000..470912c1
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/4/17.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/4/196.png b/GenshinUID/genshinuid_gachalog/texture2d/4/196.png
new file mode 100644
index 00000000..c2d11f21
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/4/196.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/4/205.png b/GenshinUID/genshinuid_gachalog/texture2d/4/205.png
new file mode 100644
index 00000000..ef12d1cd
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/4/205.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/4/23.png b/GenshinUID/genshinuid_gachalog/texture2d/4/23.png
new file mode 100644
index 00000000..bc35b023
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/4/23.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/4/97.png b/GenshinUID/genshinuid_gachalog/texture2d/4/97.png
new file mode 100644
index 00000000..6704a146
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/4/97.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/5/175.png b/GenshinUID/genshinuid_gachalog/texture2d/5/175.png
new file mode 100644
index 00000000..a51b6237
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/5/175.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/5/199.png b/GenshinUID/genshinuid_gachalog/texture2d/5/199.png
new file mode 100644
index 00000000..71996f52
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/5/199.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/5/204.png b/GenshinUID/genshinuid_gachalog/texture2d/5/204.png
new file mode 100644
index 00000000..3bf974d7
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/5/204.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/5/22.png b/GenshinUID/genshinuid_gachalog/texture2d/5/22.png
new file mode 100644
index 00000000..87915d3b
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/5/22.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/5/70.png b/GenshinUID/genshinuid_gachalog/texture2d/5/70.png
new file mode 100644
index 00000000..48e0da8b
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/5/70.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/5/99.png b/GenshinUID/genshinuid_gachalog/texture2d/5/99.png
new file mode 100644
index 00000000..2d77aed3
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/5/99.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/avatar_title.png b/GenshinUID/genshinuid_gachalog/texture2d/avatar_title.png
new file mode 100644
index 00000000..9e11a396
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/avatar_title.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/gahca_title.png b/GenshinUID/genshinuid_gachalog/texture2d/gahca_title.png
new file mode 100644
index 00000000..2683ea1d
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/gahca_title.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/item_bg.png b/GenshinUID/genshinuid_gachalog/texture2d/item_bg.png
new file mode 100644
index 00000000..83390bbd
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/item_bg.png differ
diff --git a/GenshinUID/genshinuid_gachalog/texture2d/up.png b/GenshinUID/genshinuid_gachalog/texture2d/up.png
new file mode 100644
index 00000000..5b240b06
Binary files /dev/null and b/GenshinUID/genshinuid_gachalog/texture2d/up.png differ
diff --git a/GenshinUID/genshinuid_gcg/__init__.py b/GenshinUID/genshinuid_gcg/__init__.py
new file mode 100644
index 00000000..1290056d
--- /dev/null
+++ b/GenshinUID/genshinuid_gcg/__init__.py
@@ -0,0 +1,18 @@
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+
+from ..utils.convert import get_uid
+from .draw_gcginfo import draw_gcg_info
+from ..utils.error_reply import UID_HINT
+
+
+@SV('查询七圣').on_command(('七圣召唤', '七圣', 'qszh'))
+async def send_gcg_pic(bot: Bot, ev: Event):
+ uid = await get_uid(bot, ev)
+ if uid is None:
+ return await bot.send(UID_HINT)
+ await bot.logger.info('[七圣召唤]uid: {}'.format(uid))
+
+ im = await draw_gcg_info(uid)
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_gcg/draw_gcginfo.py b/GenshinUID/genshinuid_gcg/draw_gcginfo.py
new file mode 100644
index 00000000..8f71df74
--- /dev/null
+++ b/GenshinUID/genshinuid_gcg/draw_gcginfo.py
@@ -0,0 +1,99 @@
+from pathlib import Path
+from typing import Union
+
+from nonebot.log import logger
+from PIL import Image, ImageDraw
+
+from ..utils.mys_api import mys_api
+from ..utils.error_reply import get_error
+from ..utils.image.convert import convert_img
+from ..utils.resource.download_url import download
+from ..utils.resource.RESOURCE_PATH import CARD_PATH
+from ..utils.fonts.genshin_fonts import (
+ gs_font_18,
+ gs_font_26,
+ gs_font_32,
+ gs_font_50,
+)
+
+TEXT_PATH = Path(__file__).parent / 'texture2d'
+
+rank1 = Image.open(TEXT_PATH / '1.png').resize((400, 54))
+rank2 = Image.open(TEXT_PATH / '2.png').resize((400, 54))
+rank3 = Image.open(TEXT_PATH / '3.png').resize((400, 54))
+rank4 = Image.open(TEXT_PATH / '4.png').resize((400, 54))
+
+frist_color = (45, 45, 45)
+second_color = (53, 53, 53)
+
+
+async def draw_gcg_info(uid: str) -> Union[bytes, str]:
+ # 获得数据
+ raw_data = await mys_api.get_gcg_info(uid)
+ if isinstance(raw_data, int):
+ return get_error(raw_data)
+
+ if raw_data['covers'] == []:
+ return f'UID{uid}还没有开启七圣召唤玩法 或 未去米游社激活数据!'
+
+ # 解析数据
+ nickname: str = raw_data['nickname']
+ level: int = raw_data['level']
+ avatar_card_num_gained: int = raw_data['avatar_card_num_gained']
+ avatar_card_num_total: int = raw_data['avatar_card_num_total']
+ action_card_num_gained: int = raw_data['action_card_num_gained']
+ action_card_num_total: int = raw_data['action_card_num_total']
+
+ avatar_rate = avatar_card_num_gained / avatar_card_num_total
+ action_rate = action_card_num_gained / action_card_num_total
+
+ avatar = f'{avatar_card_num_gained} / {avatar_card_num_total}'
+ action = f'{action_card_num_gained} / {action_card_num_total}'
+
+ # 制作图片
+ img = Image.open(TEXT_PATH / 'BG.png')
+ avatar_bar = await get_bar(avatar_rate)
+ action_bar = await get_bar(action_rate)
+ img.paste(avatar_bar, (440, 36), avatar_bar)
+ img.paste(action_bar, (440, 101), action_bar)
+
+ img_draw = ImageDraw.Draw(img)
+ # 右上区域
+ img_draw.text((469, 63), '已解锁角色牌', frist_color, gs_font_26, 'lm')
+ img_draw.text((469, 128), '已收集行动牌', frist_color, gs_font_26, 'lm')
+
+ img_draw.text((805, 63), avatar, frist_color, gs_font_26, 'rm')
+ img_draw.text((805, 128), action, frist_color, gs_font_26, 'rm')
+
+ # 左上区域
+ img_draw.text((165, 87), nickname, frist_color, gs_font_32, 'lm')
+ img_draw.text((165, 120), f'UID{uid}', frist_color, gs_font_18, 'lm')
+ img_draw.text((102, 97), str(level), 'white', gs_font_50, 'mm')
+
+ for i, card in enumerate(raw_data['covers']):
+ file_name = f'{card["id"]}.png'
+ path = CARD_PATH / file_name
+ if path.exists():
+ card_img = Image.open(path).resize((160, 275))
+ else:
+ await download(card['image'], 9, file_name)
+ card_img = Image.open(path).resize((160, 275))
+
+ img.paste(card_img, (65 + i * 204, 198), card_img)
+
+ img = await convert_img(img)
+ logger.info('[七圣召唤]绘图已结束,等待发送...')
+ return img
+
+
+async def get_bar(rate: float) -> Image.Image:
+ if rate <= 0.25:
+ bar = rank1
+ elif rate <= 0.58:
+ bar = rank2
+ elif rate <= 0.8:
+ bar = rank3
+ else:
+ bar = rank4
+
+ return bar
diff --git a/GenshinUID/genshinuid_gcg/texture2d/1.png b/GenshinUID/genshinuid_gcg/texture2d/1.png
new file mode 100644
index 00000000..f53dcc48
Binary files /dev/null and b/GenshinUID/genshinuid_gcg/texture2d/1.png differ
diff --git a/GenshinUID/genshinuid_gcg/texture2d/2.png b/GenshinUID/genshinuid_gcg/texture2d/2.png
new file mode 100644
index 00000000..9d3fbc73
Binary files /dev/null and b/GenshinUID/genshinuid_gcg/texture2d/2.png differ
diff --git a/GenshinUID/genshinuid_gcg/texture2d/3.png b/GenshinUID/genshinuid_gcg/texture2d/3.png
new file mode 100644
index 00000000..740e2748
Binary files /dev/null and b/GenshinUID/genshinuid_gcg/texture2d/3.png differ
diff --git a/GenshinUID/genshinuid_gcg/texture2d/4.png b/GenshinUID/genshinuid_gcg/texture2d/4.png
new file mode 100644
index 00000000..a8f6d1a6
Binary files /dev/null and b/GenshinUID/genshinuid_gcg/texture2d/4.png differ
diff --git a/GenshinUID/genshinuid_gcg/texture2d/BG.png b/GenshinUID/genshinuid_gcg/texture2d/BG.png
new file mode 100644
index 00000000..5787a060
Binary files /dev/null and b/GenshinUID/genshinuid_gcg/texture2d/BG.png differ
diff --git a/GenshinUID/genshinuid_guide/__init__.py b/GenshinUID/genshinuid_guide/__init__.py
new file mode 100644
index 00000000..c7c7acbf
--- /dev/null
+++ b/GenshinUID/genshinuid_guide/__init__.py
@@ -0,0 +1,62 @@
+import asyncio
+import threading
+from typing import List
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+from gsuid_core.segment import MessageSegment
+
+from .get_guide import get_gs_guide
+from ..version import Genshin_version
+from ..utils.image.convert import convert_img
+from ..utils.resource.RESOURCE_PATH import REF_PATH
+from .get_abyss_data import get_review, generate_data
+from ..utils.map.name_covert import alias_to_char_name
+
+
+@SV('查询角色攻略').on_suffix(('攻略', '推荐'))
+async def send_guide_pic(bot: Bot, ev: Event):
+ im = await get_gs_guide(ev.text)
+
+ if im:
+ await bot.logger.info('获得{}攻略成功!'.format(ev.text))
+ await bot.send(im)
+ else:
+ await bot.logger.warning('未找到{}攻略图片'.format(ev.text))
+
+
+@SV('查询角色攻略').on_prefix(('参考面板'))
+async def send_bluekun_pic(bot: Bot, ev: Event):
+ if ev.text in ['冰', '水', '火', '草', '雷', '风', '岩']:
+ name = ev.text
+ else:
+ name = await alias_to_char_name(ev.text)
+ img = REF_PATH / '{}.jpg'.format(name)
+ if img.exists():
+ img = await convert_img(img)
+ await bot.logger.info('获得{}参考面板图片成功!'.format(name))
+ await bot.send(img)
+ else:
+ await bot.logger.warning('未找到{}参考面板图片'.format(name))
+
+
+@SV('查询深渊阵容').on_command(('版本深渊'))
+async def send_abyss_review(bot: Bot, ev: Event):
+ if not ev.text:
+ version = Genshin_version[:-2]
+ else:
+ version = ev.text
+
+ im = await get_review(version)
+
+ if isinstance(im, List):
+ mes = [MessageSegment.text(msg) for msg in im]
+ await bot.send(MessageSegment.node(mes))
+ elif isinstance(im, str):
+ await bot.send(im)
+
+
+threading.Thread(
+ target=lambda: asyncio.run(generate_data()), daemon=True
+).start()
diff --git a/GenshinUID/genshinuid_guide/abyss_history.py b/GenshinUID/genshinuid_guide/abyss_history.py
new file mode 100644
index 00000000..bbb6dfe3
--- /dev/null
+++ b/GenshinUID/genshinuid_guide/abyss_history.py
@@ -0,0 +1,23 @@
+history_data = {
+ '3.4': {'9': '1044', '10': '1045', '11': '1054', '12': '1055'},
+ '3.3': {'9': '1044', '10': '1045', '11': '1052', '12': '1053'},
+ '3.2': {'9': '1044', '10': '1045', '11': '1050', '12': '1051'},
+ '3.1': {'9': '1044', '10': '1045', '11': '1048', '12': '1049'},
+ '3.0': {'9': '1044', '10': '1045', '11': '1046', '12': '1047'},
+ '2.8': {'9': '1024', '10': '1025', '11': '1042', '12': '1043'},
+ '2.7': {'9': '1024', '10': '1025', '11': '1040', '12': '1041'},
+ '2.6': {'9': '1024', '10': '1025', '11': '1038', '12': '1039'},
+ '2.5': {'9': '1024', '10': '1025', '11': '1036', '12': '1037'},
+ '2.4': {'9': '1024', '10': '1025', '11': '1034', '12': '1035'},
+ '2.3': {'9': '1024', '10': '1025', '11': '1032', '12': '1033'},
+ '2.2': {'9': '1024', '10': '1025', '11': '1030', '12': '1031'},
+ '2.1': {'9': '1024', '10': '1025', '11': '1028', '12': '1029'},
+ '2.0': {'9': '1024', '10': '1025', '11': '1026', '12': '1027'},
+ '1.6': {'9': '1020', '10': '1021', '11': '1022', '12': '1023'},
+ '1.5': {'9': '1013', '10': '1014', '11': '1018', '12': '1019'},
+ '1.4': {'9': '1013', '10': '1014', '11': '1015', '12': '1017'},
+ '1.3': {'9': '1013', '10': '1014', '11': '1015', '12': '1016'},
+ '1.2': {'9': '1009', '10': '1010', '11': '1011', '12': '1012'},
+ '1.1': {'9': '1009', '10': '1010', '11': '1011', '12': '1012'},
+ '1.0': {'9': '1009', '10': '1010', '11': '1011', '12': '1012'},
+}
diff --git a/GenshinUID/genshinuid_guide/get_abyss_data.py b/GenshinUID/genshinuid_guide/get_abyss_data.py
new file mode 100644
index 00000000..60640518
--- /dev/null
+++ b/GenshinUID/genshinuid_guide/get_abyss_data.py
@@ -0,0 +1,53 @@
+import json
+from pathlib import Path
+from typing import Dict, List, Union
+
+from nonebot.log import logger
+
+from .abyss_history import history_data
+from ..gsuid_utils.api.hhw.request import (
+ get_abyss_review,
+ get_abyss_review_raw,
+)
+
+REVIEW_PATH = Path(__file__).parent / "review.json"
+
+
+async def generate_data():
+ raw_data = await get_abyss_review_raw()
+ result = {}
+ for version in history_data:
+ for floor in history_data[version]:
+ _id = history_data[version][floor]
+ data = await get_abyss_review(raw_data, _id, floor)
+ if version not in result:
+ result[version] = {}
+ result[version][floor] = data
+
+ with open(REVIEW_PATH, 'w', encoding='UTF-8') as file:
+ json.dump(result, file, ensure_ascii=False)
+
+ logger.info('[深渊预览] 数据已刷新!')
+
+
+async def get_review(version: Union[str, float]) -> Union[List, str]:
+ if not REVIEW_PATH.exists():
+ return '请等待数据加载完成...'
+
+ with open(REVIEW_PATH, "r", encoding='UTF-8') as f:
+ review: Dict[str, Dict[str, Dict[str, List[str]]]] = json.load(f)
+
+ if isinstance(version, float):
+ version = str(version)
+
+ im_list = []
+ if version in review:
+ im_list.append(f'{version}版本深渊阵容')
+ for floor in review[version]:
+ for half in review[version][floor]:
+ im_list.append(
+ '\n'.join([half] + review[version][floor][half])
+ )
+ return im_list
+ else:
+ return '暂无该版本的深渊阵容...'
diff --git a/GenshinUID/genshinuid_guide/get_card.py b/GenshinUID/genshinuid_guide/get_card.py
new file mode 100644
index 00000000..2045f7ee
--- /dev/null
+++ b/GenshinUID/genshinuid_guide/get_card.py
@@ -0,0 +1,28 @@
+from pathlib import Path
+from typing import Optional
+
+from ..utils.map.name_covert import alias_to_char_name
+
+CARD_PATH = Path(__file__).parent / 'card'
+
+# CARD_DATA = {i.name[:-4]: i for i in CARD_PATH.rglob('*.jpg')}
+CARD_DATA = {}
+
+
+async def get_gs_card(msg: str) -> Optional[bytes]:
+ if not msg:
+ return None
+ msg = await alias_to_char_name(msg)
+ if msg in CARD_DATA:
+ img = CARD_DATA[msg]
+ else:
+ for filename in CARD_DATA:
+ similarity = len(set(msg) & set(filename))
+ if similarity >= 2:
+ img = CARD_DATA[filename]
+ break
+ else:
+ return None
+
+ with open(img, 'rb') as f:
+ return f.read()
diff --git a/GenshinUID/genshinuid_guide/get_guide.py b/GenshinUID/genshinuid_guide/get_guide.py
new file mode 100644
index 00000000..e436f4d4
--- /dev/null
+++ b/GenshinUID/genshinuid_guide/get_guide.py
@@ -0,0 +1,18 @@
+from typing import Optional
+
+from ..utils.resource.RESOURCE_PATH import GUIDE_PATH
+from ..utils.map.name_covert import alias_to_char_name
+
+
+async def get_gs_guide(msg: str) -> Optional[bytes]:
+ if not msg:
+ return None
+ name = await alias_to_char_name(msg)
+ if name.startswith('旅行者'):
+ name = f'{name[:3]}-{name[-1]}'
+ img = GUIDE_PATH / f'{name}.png'
+ if img.exists():
+ with open(img, 'rb') as f:
+ return f.read()
+ else:
+ return None
diff --git a/GenshinUID/genshinuid_guide/review.json b/GenshinUID/genshinuid_guide/review.json
new file mode 100644
index 00000000..7f12a2c3
--- /dev/null
+++ b/GenshinUID/genshinuid_guide/review.json
@@ -0,0 +1 @@
+{"3.4": {"9": {"9-1上": ["有翼冰本真蕈", "大型水史莱姆", "伸缩火蕈兽", "伸缩岩蕈兽", "旋转雷蕈兽", "旋转冰蕈兽", "浮游水蕈兽", "浮游草蕈兽", "水史莱姆"], "9-1下": ["镀金旅团·沙中净水", "镀金旅团·刀舞者", "镀金旅团·破阵者", "镀金旅团·鸦喙戟手", "镀金旅团·机弩兵", "镀金旅团·阵前斧手"], "9-2上": ["木盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘暴徒", "雷斧丘丘暴徒", "岩丘丘萨满", "冰丘丘萨满", "木盾丘丘人", "冲锋丘丘人", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人", "爆弹丘丘人", "冰弹丘丘人", "雷弹丘丘人"], "9-2下": ["水深渊法师", "草丘丘萨满", "大型水史莱姆", "大型火史莱姆"], "9-3上": ["陆行水本真蕈", "有翼草本真蕈", "旋转雷蕈兽", "浮游草蕈兽"], "9-3下": ["镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "镀金旅团·破阵者"]}, "10": {"10-1上": ["有翼冰本真蕈", "大型雷史莱姆", "变异雷史莱姆", "旋转冰蕈兽", "旋转雷蕈兽", "浮游草蕈兽", "雷史莱姆"], "10-1下": ["深海龙蜥·原种"], "10-2上": ["海乱鬼·雷腾", "海乱鬼·炎威", "镀金旅团·机弩兵"], "10-2下": ["雷深渊法师", "丘丘雷兜王"], "10-3上": ["镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "愚人众先遣队·火铳游击兵", "愚人众先遣队·水铳重卫士"], "10-3下": ["愚人众·藏镜仕女", "愚人众·雷萤术士"]}, "11": {"11-1上": ["镀金旅团·魔岩役使", "镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "镀金旅团·机弩兵", "镀金旅团·鸦喙戟手", "镀金旅团·破阵者", "镀金旅团·刀舞者", "盗宝团·粉碎者", "盗宝团·水之药剂师"], "11-1下": ["丘丘雷兜王", "火斧丘丘暴徒", "雷斧丘丘暴徒"], "11-2上": ["陆行岩本真蕈", "陆行水本真蕈", "有翼草本真蕈", "有翼冰本真蕈", "深海龙蜥幼体·啮冰", "深海龙蜥幼体·吞雷"], "11-2下": ["深渊使徒·激流", "圣骸飞蛇"], "11-3上": ["海乱鬼·雷腾", "海乱鬼·炎威", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番", "大型火史莱姆", "大型水史莱姆", "大型雷史莱姆", "变异雷史莱姆"], "11-3下": ["掣电树"]}, "12": {"12-1上": ["遗迹龙兽·地巡", "遗迹重机", "遗迹守卫"], "12-1下": ["镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "火深渊法师", "冰深渊法师", "雷深渊法师", "冰霜骗骗花", "炽热骗骗花", "电气骗骗花"], "12-2上": ["圣骸赤鹫", "圣骸毒蝎", "海乱鬼·雷腾", "野伏·阵刀番"], "12-2下": ["魔偶剑鬼·孤风", "魔偶剑鬼·凶面", "魔偶剑鬼·霜驰"], "12-3上": ["半永恒统辖矩阵"], "12-3下": ["镀金旅团·灵风猎手", "镀金旅团·炽沙叙事人", "镀金旅团·叶轮舞者", "镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷"]}}, "3.3": {"9": {"9-1上": ["有翼冰本真蕈", "大型水史莱姆", "伸缩火蕈兽", "伸缩岩蕈兽", "旋转雷蕈兽", "旋转冰蕈兽", "浮游水蕈兽", "浮游草蕈兽", "水史莱姆"], "9-1下": ["镀金旅团·沙中净水", "镀金旅团·刀舞者", "镀金旅团·破阵者", "镀金旅团·鸦喙戟手", "镀金旅团·机弩兵", "镀金旅团·阵前斧手"], "9-2上": ["木盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘暴徒", "雷斧丘丘暴徒", "岩丘丘萨满", "冰丘丘萨满", "木盾丘丘人", "冲锋丘丘人", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人", "爆弹丘丘人", "冰弹丘丘人", "雷弹丘丘人"], "9-2下": ["水深渊法师", "草丘丘萨满", "大型水史莱姆", "大型火史莱姆"], "9-3上": ["陆行水本真蕈", "有翼草本真蕈", "旋转雷蕈兽", "浮游草蕈兽"], "9-3下": ["镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "镀金旅团·破阵者"]}, "10": {"10-1上": ["有翼冰本真蕈", "大型雷史莱姆", "变异雷史莱姆", "旋转冰蕈兽", "旋转雷蕈兽", "浮游草蕈兽", "雷史莱姆"], "10-1下": ["深海龙蜥·原种"], "10-2上": ["海乱鬼·雷腾", "海乱鬼·炎威", "镀金旅团·机弩兵"], "10-2下": ["雷深渊法师", "丘丘雷兜王"], "10-3上": ["镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "愚人众先遣队·火铳游击兵", "愚人众先遣队·水铳重卫士"], "10-3下": ["愚人众·藏镜仕女", "愚人众·雷萤术士"]}, "11": {"11-1上": ["水飘浮灵", "冰飘浮灵", "火飘浮灵", "大型冰史莱姆", "大型水史莱姆", "大型火史莱姆", "冰史莱姆", "水史莱姆", "火史莱姆"], "11-1下": ["元能构装体·力场发生器", "元能构装体·重塑仪", "元能构装体·勘探机"], "11-2上": ["深渊咏者·渊火", "火深渊法师", "冰深渊法师", "水深渊法师"], "11-2下": ["遗迹龙兽·地巡", "遗迹歼击者"], "11-3上": ["愚人众·藏镜仕女", "愚人众先遣队·火铳游击兵", "愚人众先遣队·冰铳重卫士", "有翼草本真蕈", "有翼冰本真蕈", "陆行水本真蕈", "陆行岩本真蕈"], "11-3下": ["遗迹龙兽·空巡"]}, "12": {"12-1上": ["恒常机关阵列"], "12-1下": ["镀金旅团·魔岩役使", "愚人众先遣队·岩使游击兵", "镀金旅团·沙中净水", "镀金旅团·炽阳凝冰"], "12-2上": ["镀金旅团·灵风猎手", "元能构装体·力场发生器", "元能构装体·重塑仪", "元能构装体·勘探机"], "12-2下": ["黄金王兽"], "12-3上": ["翠翎恐蕈"], "12-3下": ["嗜岩·兽境猎犬", "嗜岩·兽境幼兽"]}}, "3.2": {"9": {"9-1上": ["有翼冰本真蕈", "大型水史莱姆", "伸缩火蕈兽", "伸缩岩蕈兽", "旋转雷蕈兽", "旋转冰蕈兽", "浮游水蕈兽", "浮游草蕈兽", "水史莱姆"], "9-1下": ["镀金旅团·沙中净水", "镀金旅团·刀舞者", "镀金旅团·破阵者", "镀金旅团·鸦喙戟手", "镀金旅团·机弩兵", "镀金旅团·阵前斧手"], "9-2上": ["木盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘暴徒", "雷斧丘丘暴徒", "岩丘丘萨满", "冰丘丘萨满", "木盾丘丘人", "冲锋丘丘人", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人", "爆弹丘丘人", "冰弹丘丘人", "雷弹丘丘人"], "9-2下": ["水深渊法师", "草丘丘萨满", "大型水史莱姆", "大型火史莱姆"], "9-3上": ["陆行水本真蕈", "有翼草本真蕈", "旋转雷蕈兽", "浮游草蕈兽"], "9-3下": ["镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "镀金旅团·破阵者"]}, "10": {"10-1上": ["有翼冰本真蕈", "大型雷史莱姆", "变异雷史莱姆", "旋转冰蕈兽", "旋转雷蕈兽", "浮游草蕈兽", "雷史莱姆"], "10-1下": ["深海龙蜥·原种"], "10-2上": ["海乱鬼·雷腾", "海乱鬼·炎威", "镀金旅团·机弩兵"], "10-2下": ["雷深渊法师", "丘丘雷兜王"], "10-3上": ["镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "愚人众先遣队·火铳游击兵", "愚人众先遣队·水铳重卫士"], "10-3下": ["愚人众·藏镜仕女", "愚人众·雷萤术士"]}, "11": {"11-1上": ["水飘浮灵", "岩飘浮灵", "风飘浮灵", "冰飘浮灵"], "11-1下": ["愚人众·火之债务处理人", "镀金旅团·白日鸣雷", "镀金旅团·阵前斧手", "镀金旅团·机弩兵", "镀金旅团·鸦喙戟手", "镀金旅团·破阵者", "镀金旅团·刀舞者"], "11-2上": ["遗迹龙兽·空巡"], "11-2下": ["愚人众·藏镜仕女", "盗宝团·火之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番"], "11-3上": ["岩龙蜥"], "11-3下": ["无相之草"]}, "12": {"12-1上": ["嗜雷·兽境猎犬", "嗜雷·兽境幼兽"], "12-1下": ["雷音权现"], "12-2上": ["黑蛇骑士·斩风之剑", "黯色空壳·旗令", "黯色空壳·破阵", "黯色空壳·近卫"], "12-2下": ["丘丘霜铠王", "丘丘雷兜王"], "12-3上": ["兆载永劫龙兽"], "12-3下": ["镀金旅团·灵风猎手", "愚人众先遣队·风拳前锋军", "镀金旅团·魔岩役使", "愚人众先遣队·岩使游击兵"]}}, "3.1": {"9": {"9-1上": ["有翼冰本真蕈", "大型水史莱姆", "伸缩火蕈兽", "伸缩岩蕈兽", "旋转雷蕈兽", "旋转冰蕈兽", "浮游水蕈兽", "浮游草蕈兽", "水史莱姆"], "9-1下": ["镀金旅团·沙中净水", "镀金旅团·刀舞者", "镀金旅团·破阵者", "镀金旅团·鸦喙戟手", "镀金旅团·机弩兵", "镀金旅团·阵前斧手"], "9-2上": ["木盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘暴徒", "雷斧丘丘暴徒", "岩丘丘萨满", "冰丘丘萨满", "木盾丘丘人", "冲锋丘丘人", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人", "爆弹丘丘人", "冰弹丘丘人", "雷弹丘丘人"], "9-2下": ["水深渊法师", "草丘丘萨满", "大型水史莱姆", "大型火史莱姆"], "9-3上": ["陆行水本真蕈", "有翼草本真蕈", "旋转雷蕈兽", "浮游草蕈兽"], "9-3下": ["镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "镀金旅团·破阵者"]}, "10": {"10-1上": ["有翼冰本真蕈", "大型雷史莱姆", "变异雷史莱姆", "旋转冰蕈兽", "旋转雷蕈兽", "浮游草蕈兽", "雷史莱姆"], "10-1下": ["深海龙蜥·原种"], "10-2上": ["海乱鬼·雷腾", "海乱鬼·炎威", "镀金旅团·机弩兵"], "10-2下": ["雷深渊法师", "丘丘雷兜王"], "10-3上": ["镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "愚人众先遣队·火铳游击兵", "愚人众先遣队·水铳重卫士"], "10-3下": ["愚人众·藏镜仕女", "愚人众·雷萤术士"]}, "11": {"11-1上": ["陆行岩本真蕈", "陆行水本真蕈", "有翼冰本真蕈", "浮游草蕈兽", "浮游风蕈兽", "伸缩雷蕈兽", "旋转火蕈兽", "旋转冰蕈兽", "伸缩风蕈兽"], "11-1下": ["镀金旅团·魔岩役使", "元能构装体·勘探机", "元能构装体·力场发生器"], "11-2上": ["愚人众先遣队·火铳游击兵", "镀金旅团·沙中净水", "镀金旅团·机弩兵"], "11-2下": ["愚人众·藏镜仕女", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军", "镀金旅团·白日鸣雷", "镀金旅团·机弩兵"], "11-3上": ["镀金旅团·沙中净水", "海乱鬼·雷腾", "海乱鬼·炎威", "镀金旅团·机弩兵", "野伏·火付番", "野伏·机巧番"], "11-3下": ["翠翎恐蕈"]}, "12": {"12-1上": ["镀金旅团·沙中净水", "海乱鬼·雷腾", "海乱鬼·炎威", "镀金旅团·阵前斧手", "镀金旅团·鸦喙戟手", "镀金旅团·破阵者", "镀金旅团·刀舞者"], "12-1下": ["镀金旅团·魔岩役使", "镀金旅团·灵风猎手", "元能构装体·力场发生器", "元能构装体·重塑仪", "元能构装体·勘探机"], "12-2上": ["遗迹龙兽·地巡", "遗迹歼击者", "遗迹侦察者"], "12-2下": ["魔偶剑鬼"], "12-3上": ["深海龙蜥幼体·原种"], "12-3下": ["半永恒统辖矩阵"]}}, "3.0": {"9": {"9-1上": ["有翼冰本真蕈", "大型水史莱姆", "伸缩火蕈兽", "伸缩岩蕈兽", "旋转雷蕈兽", "旋转冰蕈兽", "浮游水蕈兽", "浮游草蕈兽", "水史莱姆"], "9-1下": ["镀金旅团·沙中净水", "镀金旅团·刀舞者", "镀金旅团·破阵者", "镀金旅团·鸦喙戟手", "镀金旅团·机弩兵", "镀金旅团·阵前斧手"], "9-2上": ["木盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘暴徒", "雷斧丘丘暴徒", "岩丘丘萨满", "冰丘丘萨满", "木盾丘丘人", "冲锋丘丘人", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人", "爆弹丘丘人", "冰弹丘丘人", "雷弹丘丘人"], "9-2下": ["水深渊法师", "草丘丘萨满", "大型水史莱姆", "大型火史莱姆"], "9-3上": ["陆行水本真蕈", "有翼草本真蕈", "旋转雷蕈兽", "浮游草蕈兽"], "9-3下": ["镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "镀金旅团·破阵者"]}, "10": {"10-1上": ["有翼冰本真蕈", "大型雷史莱姆", "变异雷史莱姆", "旋转冰蕈兽", "旋转雷蕈兽", "浮游草蕈兽", "雷史莱姆"], "10-1下": ["深海龙蜥·原种"], "10-2上": ["海乱鬼·雷腾", "海乱鬼·炎威", "镀金旅团·机弩兵"], "10-2下": ["雷深渊法师", "丘丘雷兜王"], "10-3上": ["镀金旅团·沙中净水", "镀金旅团·炽阳凝冰", "镀金旅团·白日鸣雷", "愚人众先遣队·火铳游击兵", "愚人众先遣队·水铳重卫士"], "10-3下": ["愚人众·藏镜仕女", "愚人众·雷萤术士"]}, "11": {"11-1上": ["镀金旅团·白日鸣雷", "镀金旅团·阵前斧手", "镀金旅团·机弩兵", "镀金旅团·鸦喙戟手", "镀金旅团·破阵者", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "11-1下": ["丘丘雷兜王", "木盾丘丘暴徒", "火斧丘丘暴徒", "雷斧丘丘暴徒"], "11-2上": ["幻形雀·水", "幻形蛙·水", "幻形豕兽·水", "幻形鹤·水", "幻形蟹·水", "幻形游禽·水", "幻形花鼠·水", "幻形飞鸢·水"], "11-2下": ["岩龙蜥"], "11-3上": ["愚人众·火之债务处理人", "愚人众先遣队·火铳游击兵", "镀金旅团·沙中净水", "镀金旅团·白日鸣雷", "镀金旅团·机弩兵"], "11-3下": ["掣电树"]}, "12": {"12-1上": ["遗迹龙兽·空巡", "遗迹龙兽·地巡"], "12-1下": ["愚人众先遣队·雷锤前锋军", "愚人众先遣队·火铳游击兵", "镀金旅团·炽阳凝冰", "镀金旅团·沙中净水", "镀金旅团·机弩兵"], "12-2上": ["愚人众·藏镜仕女", "愚人众·雷萤术士", "镀金旅团·机弩兵"], "12-2下": ["古岩龙蜥"], "12-3上": ["有翼草本真蕈", "有翼冰本真蕈", "陆行水本真蕈", "深海龙蜥·原种", "深海龙蜥幼体·啮冰", "深海龙蜥幼体·吞雷"], "12-3下": ["翠翎恐蕈"]}}, "2.8": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["冰盾丘丘暴徒", "冰飘浮灵", "水飘浮灵", "大型冰史莱姆", "冰史莱姆"], "11-1下": ["盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "11-2上": ["深海龙蜥幼体·啮冰", "深海龙蜥幼体·吞雷", "冰飘浮灵", "雷飘浮灵", "水飘浮灵"], "11-2下": ["愚人众·火之债务处理人", "愚人众·冰萤术士", "愚人众·雷萤术士", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·火铳游击兵"], "11-3上": ["雷音权现"], "11-3下": ["冰深渊法师", "水深渊法师", "雷深渊法师"]}, "12": {"12-1上": ["丘丘霜铠王", "冰盾丘丘暴徒", "冰丘丘萨满", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人", "冰盾丘丘人"], "12-1下": ["海乱鬼·雷腾", "海乱鬼·炎威", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番"], "12-2上": ["无相之冰"], "12-2下": ["遗迹重机", "遗迹巡弋者", "遗迹歼击者", "遗迹侦察者"], "12-3上": ["愚人众·藏镜仕女", "愚人众先遣队·冰铳重卫士"], "12-3下": ["遗迹巨蛇"]}}, "2.7": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["丘丘岩盔王", "岩盾丘丘暴徒", "岩盾丘丘人"], "11-1下": ["海乱鬼·雷腾", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番", "盗宝团·粉碎者", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师"], "11-2上": ["冰深渊法师", "丘丘霜铠王", "冰盾丘丘暴徒"], "11-2下": ["愚人众·藏镜仕女", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·水铳重卫士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·风拳前锋军"], "11-3上": ["嗜岩·兽境猎犬", "嗜岩·兽境幼兽"], "11-3下": ["丘丘雷兜王", "深海龙蜥幼体·啮冰", "深海龙蜥幼体·吞雷"]}, "12": {"12-1上": ["岩龙蜥", "冰霜骗骗花", "电气骗骗花"], "12-1下": ["遗迹重机", "遗迹守卫"], "12-2上": ["丘丘霜铠王", "冰盾丘丘暴徒", "大型冰史莱姆"], "12-2下": ["魔偶剑鬼"], "12-3上": ["深海龙蜥幼体·原种"], "12-3下": ["恒常机关阵列"]}}, "2.6": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["火斧丘丘暴徒", "雷斧丘丘暴徒", "水丘丘萨满", "风丘丘萨满", "打手丘丘人", "冲锋丘丘人", "爆弹丘丘人", "冰弹丘丘人", "火箭丘丘人", "雷箭丘丘人"], "11-1下": ["盗宝团·海上男儿", "盗宝团·掘墓者", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·神射手", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "11-2上": ["愚人众先遣队·火铳游击兵", "愚人众先遣队·冰铳重卫士", "火深渊法师", "大型火史莱姆", "大型雷史莱姆", "变异雷史莱姆"], "11-2下": ["愚人众先遣队·雷锤前锋军", "愚人众先遣队·水铳重卫士", "水深渊法师", "大型水史莱姆", "大型雷史莱姆", "变异雷史莱姆"], "11-3上": ["愚人众·火之债务处理人", "嗜雷·兽境幼兽"], "11-3下": ["愚人众·藏镜仕女", "愚人众·雷萤术士", "嗜岩·兽境幼兽"]}, "12": {"12-1上": ["海乱鬼·雷腾", "海乱鬼·炎威", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "12-1下": ["遗迹守卫"], "12-2上": ["冰霜骗骗花", "炽热骗骗花"], "12-2下": ["深渊咏者·渊火", "深渊咏者·紫电", "深渊使徒·激流"], "12-3上": ["深渊咏者·渊火"], "12-3下": ["深渊使徒·激流"]}}, "2.5": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["深渊使徒·激流", "冰深渊法师"], "11-1下": ["岩龙蜥", "炽热骗骗花", "电气骗骗花"], "11-2上": ["水深渊法师", "水飘浮灵", "冰飘浮灵", "大型冰史莱姆", "大型水史莱姆"], "11-2下": ["火深渊法师", "草丘丘萨满", "火飘浮灵", "雷飘浮灵", "大型雷史莱姆", "变异雷史莱姆", "大型火史莱姆"], "11-3上": ["嗜雷·兽境猎犬", "嗜雷·兽境幼兽"], "11-3下": ["深渊咏者·渊火", "深渊咏者·紫电"]}, "12": {"12-1上": ["嗜雷·兽境猎犬", "嗜雷·兽境幼兽"], "12-1下": ["深海龙蜥·原种", "深海龙蜥幼体·原种", "深海龙蜥幼体·啮冰"], "12-2上": ["遗迹重机"], "12-2下": ["黄金王兽"], "12-3上": ["遗迹歼击者", "遗迹侦察者"], "12-3下": ["深海龙蜥·啮冰", "深海龙蜥·吞雷"]}}, "2.4": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["遗迹巡弋者", "遗迹歼击者"], "11-1下": ["雷深渊法师", "丘丘雷兜王", "雷弹丘丘人", "爆弹丘丘人", "火箭丘丘人"], "11-2上": ["大型火史莱姆", "大型雷史莱姆", "火飘浮灵", "雷飘浮灵"], "11-2下": ["幻形豕兽·水", "幻形鹤·水", "幻形蟹·水", "幻形雀·水", "幻形游禽·水", "幻形花鼠·水", "幻形蛙·水", "幻形飞鸢·水"], "11-3上": ["愚人众·藏镜仕女", "海乱鬼·雷腾", "海乱鬼·炎威"], "11-3下": ["雷音权现"]}, "12": {"12-1上": ["恒常机关阵列"], "12-1下": ["深渊咏者·渊火", "草丘丘萨满", "火深渊法师", "嗜岩·兽境幼兽"], "12-2上": ["古岩龙蜥"], "12-2下": ["深渊使徒·激流"], "12-3上": ["遗迹守卫", "遗迹重机"], "12-3下": ["魔偶剑鬼"]}}, "2.3": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["岩盾丘丘暴徒", "雷丘丘萨满", "水丘丘萨满", "冲锋丘丘人", "岩盾丘丘人", "打手丘丘人", "雷弹丘丘人", "爆弹丘丘人", "冰箭丘丘人", "火箭丘丘人"], "11-1下": ["野伏·阵刀番", "野伏·火付番", "野伏·机巧番", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·粉碎者", "盗宝团·神射手", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "11-2上": ["丘丘霜铠王", "大型火史莱姆", "大型冰史莱姆", "大型水史莱姆"], "11-2下": ["海乱鬼·雷腾", "海乱鬼·炎威", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番"], "11-3上": ["幻形蛙·水", "幻形雀·水", "幻形豕兽·水", "幻形花鼠·水", "幻形蟹·水", "幻形鹤·水", "水飘浮灵", "风飘浮灵"], "11-3下": ["遗迹巡弋者", "遗迹防卫者", "遗迹侦察者"]}, "12": {"12-1上": ["嗜雷·兽境猎犬", "嗜雷·兽境幼兽"], "12-1下": ["嗜岩·兽境猎犬", "嗜岩·兽境幼兽"], "12-2上": ["岩龙蜥"], "12-2下": ["魔偶剑鬼·孤风", "魔偶剑鬼·霜驰", "魔偶剑鬼·凶面"], "12-3上": ["嗜雷·兽境猎犬", "遗迹巡弋者", "遗迹防卫者"], "12-3下": ["嗜岩·兽境猎犬", "嗜岩·兽境幼兽", "遗迹守卫"]}}, "2.2": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["雷深渊法师", "水深渊法师", "电气骗骗花", "大型水史莱姆"], "11-1下": ["火深渊法师", "雷斧丘丘暴徒", "炽热骗骗花", "大型火史莱姆"], "11-2上": ["愚人众·雷萤术士", "愚人众·冰萤术士", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·风拳前锋军"], "11-2下": ["海乱鬼·雷腾", "海乱鬼·炎威", "野伏·火付番", "野伏·机巧番"], "11-3上": ["无相之水"], "11-3下": ["无相之火"]}, "12": {"12-1上": ["愚人众·火之债务处理人", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番"], "12-1下": ["岩龙蜥", "幻形豕兽·水", "幻形花鼠·水"], "12-2上": ["魔偶剑鬼"], "12-2下": ["愚人众·藏镜仕女", "愚人众·冰萤术士", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "12-3上": ["遗迹守卫", "遗迹猎者", "遗迹巡弋者", "遗迹歼击者"], "12-3下": ["遗迹守卫", "遗迹重机", "遗迹巡弋者", "遗迹防卫者"]}}, "2.1": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["火斧丘丘暴徒", "雷弹丘丘人", "冲锋丘丘人"], "11-1下": ["火深渊法师", "草丘丘萨满", "火箭丘丘人", "爆弹丘丘人"], "11-2上": ["愚人众先遣队·火铳游击兵", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·斥候"], "11-2下": ["海乱鬼·炎威", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "11-3上": ["愚人众·火之债务处理人", "愚人众·冰萤术士", "愚人众·雷萤术士"], "11-3下": ["岩龙蜥", "大型火史莱姆"]}, "12": {"12-1上": ["野伏·火付番", "野伏·机巧番", "盗宝团·掘墓者", "盗宝团·杂工", "盗宝团·海上男儿", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "12-1下": ["丘丘岩盔王", "狂风之核", "风飘浮灵", "岩飘浮灵"], "12-2上": ["魔偶剑鬼"], "12-2下": ["愚人众·藏镜仕女", "愚人众·冰萤术士"], "12-3上": ["遗迹守卫"], "12-3下": ["恒常机关阵列"]}}, "2.0": {"9": {"9-1上": ["木盾丘丘暴徒", "风丘丘萨满", "水丘丘萨满", "雷箭丘丘人", "冰箭丘丘人", "大型水史莱姆"], "9-1下": ["水深渊法师", "雷丘丘萨满", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "9-2上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-2下": ["盗宝团·杂工", "盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师", "盗宝团·神射手"], "9-3上": ["丘丘霜铠王", "丘丘岩盔王"], "9-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "10": {"10-1上": ["雷深渊法师", "草丘丘萨满", "风丘丘萨满", "水丘丘萨满", "火斧丘丘暴徒", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "10-1下": ["丘丘岩盔王", "火箭丘丘人", "冰箭丘丘人"], "10-2上": ["愚人众·火之债务处理人", "愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "10-2下": ["愚人众·雷萤术士", "愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵"], "10-3上": ["深渊咏者·紫电", "风丘丘萨满", "水丘丘萨满"], "10-3下": ["深渊使徒·激流", "雷丘丘萨满"]}, "11": {"11-1上": ["雷斧丘丘暴徒", "火斧丘丘暴徒", "电气骗骗花", "大型雷史莱姆", "变异雷史莱姆", "大型水史莱姆"], "11-1下": ["丘丘雷兜王", "雷深渊法师"], "11-2上": ["丘丘霜铠王", "冰深渊法师", "水深渊法师"], "11-2下": ["深渊咏者·紫电", "雷深渊法师", "火深渊法师"], "11-3上": ["无相之冰"], "11-3下": ["无相之火"]}, "12": {"12-1上": ["海乱鬼·雷腾", "海乱鬼·炎威", "野伏·阵刀番", "野伏·火付番", "野伏·机巧番"], "12-1下": ["愚人众·藏镜仕女", "愚人众·火之债务处理人", "愚人众·雷萤术士"], "12-2上": ["水深渊法师", "丘丘雷兜王", "雷斧丘丘暴徒", "火斧丘丘暴徒"], "12-2下": ["魔偶剑鬼"], "12-3上": ["遗迹猎者", "遗迹巡弋者", "遗迹防卫者", "遗迹侦察者"], "12-3下": ["遗迹守卫", "遗迹歼击者", "遗迹侦察者"]}}, "1.6": {"9": {"9-1上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰霜骗骗花"], "9-1下": ["冰深渊法师", "冰盾丘丘暴徒", "冰丘丘萨满", "冰箭丘丘人", "雷箭丘丘人"], "9-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人", "冰霜骗骗花"], "9-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-3上": ["丘丘霜铠王", "冰丘丘萨满", "冰箭丘丘人", "雷箭丘丘人"], "9-3下": ["冰深渊法师", "水深渊法师", "冰盾丘丘暴徒"]}, "10": {"10-1上": ["水深渊法师", "冰霜骗骗花", "冰弹丘丘人", "大型冰史莱姆", "大型水史莱姆"], "10-1下": ["深渊使徒·激流", "冰深渊法师"], "10-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人", "风丘丘萨满", "水丘丘萨满"], "10-2下": ["深渊咏者·紫电", "冰深渊法师"], "10-3上": ["无相之冰"], "10-3下": ["丘丘霜铠王", "水深渊法师"]}, "11": {"11-1上": ["火斧丘丘暴徒", "木盾丘丘暴徒", "冲锋丘丘人", "木盾丘丘人", "火箭丘丘人", "冰箭丘丘人", "雷箭丘丘人"], "11-1下": ["丘丘岩盔王", "岩盾丘丘人", "冰弹丘丘人", "爆弹丘丘人"], "11-2上": ["愚人众先遣队·火铳游击兵", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军"], "11-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·水铳重卫士", "愚人众先遣队·岩使游击兵"], "11-3上": ["遗迹猎者", "遗迹守卫"], "11-3下": ["深渊咏者·紫电", "深渊使徒·激流"]}, "12": {"12-1上": ["岩龙蜥"], "12-1下": ["岩龙蜥"], "12-2上": ["愚人众·冰萤术士", "盗宝团·海上男儿", "盗宝团·掘墓者", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "12-2下": ["丘丘岩盔王", "幼岩龙蜥"], "12-3上": ["深渊咏者·紫电", "火深渊法师", "水深渊法师"], "12-3下": ["深渊使徒·激流", "火深渊法师", "冰深渊法师"]}}, "1.5": {"9": {"9-1上": ["冰盾丘丘暴徒", "冰盾丘丘人", "大型冰史莱姆"], "9-1下": ["冰深渊法师", "冰盾丘丘暴徒", "冰丘丘萨满", "冰箭丘丘人"], "9-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人", "大型冰史莱姆"], "9-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军"], "9-3上": ["丘丘霜铠王", "冰箭丘丘人"], "9-3下": ["冰深渊法师", "冰盾丘丘暴徒"]}, "10": {"10-1上": ["冰深渊法师", "冰弹丘丘人", "大型冰史莱姆"], "10-1下": ["愚人众·雷萤术士", "冰深渊法师", "水丘丘萨满"], "10-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人"], "10-2下": ["愚人众·冰萤术士", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "10-3上": ["愚人众·冰萤术士", "愚人众·火之债务处理人"], "10-3下": ["丘丘霜铠王"]}, "11": {"11-1上": ["盗宝团·粉碎者", "盗宝团·拳术家", "盗宝团·神射手"], "11-1下": ["盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·杂工", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "11-2上": ["愚人众先遣队·雷锤前锋军", "愚人众先遣队·水铳重卫士", "愚人众先遣队·风拳前锋军"], "11-2下": ["愚人众先遣队·雷锤前锋军", "愚人众先遣队·水铳重卫士", "愚人众先遣队·岩使游击兵"], "11-3上": ["愚人众·雷萤术士", "愚人众·冰萤术士"], "11-3下": ["深渊使徒·激流"]}, "12": {"12-1上": ["岩龙蜥", "炽热骗骗花"], "12-1下": ["岩龙蜥", "冰霜骗骗花"], "12-2上": ["盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师", "盗宝团·雷之药剂师", "雷萤", "水萤", "冰萤"], "12-2下": ["火深渊法师", "水深渊法师", "幻形豕兽·水", "幻形鹤·水", "幻形蟹·水", "幻形游禽·水", "幻形花鼠·水"], "12-3上": ["深渊咏者·紫电"], "12-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士", "愚人众·冰萤术士"]}}, "1.4": {"9": {"9-1上": ["冰盾丘丘暴徒", "冰盾丘丘人", "大型冰史莱姆"], "9-1下": ["冰深渊法师", "冰盾丘丘暴徒", "冰丘丘萨满", "冰箭丘丘人"], "9-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人", "大型冰史莱姆"], "9-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军"], "9-3上": ["丘丘霜铠王", "冰箭丘丘人"], "9-3下": ["冰深渊法师", "冰盾丘丘暴徒"]}, "10": {"10-1上": ["冰深渊法师", "冰弹丘丘人", "大型冰史莱姆"], "10-1下": ["愚人众·雷萤术士", "冰深渊法师", "水丘丘萨满"], "10-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人"], "10-2下": ["愚人众·冰萤术士", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "10-3上": ["愚人众·冰萤术士", "愚人众·火之债务处理人"], "10-3下": ["丘丘霜铠王"]}, "11": {"11-1上": ["水深渊法师", "大型雷史莱姆", "变异雷史莱姆", "大型水史莱姆"], "11-1下": ["岩盾丘丘暴徒", "火斧丘丘暴徒"], "11-2上": ["木盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘人", "冲锋丘丘人", "雷箭丘丘人", "火箭丘丘人"], "11-2下": ["愚人众·雷萤术士", "愚人众·火之债务处理人", "盗宝团·掘墓者", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师"], "11-3上": ["愚人众先遣队·风拳前锋军", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·水铳重卫士"], "11-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "12": {"12-1上": ["岩龙蜥"], "12-1下": ["岩龙蜥"], "12-2上": ["愚人众·雷萤术士", "愚人众·冰萤术士"], "12-2下": ["愚人众·火之债务处理人", "盗宝团·掘墓者"], "12-3上": ["遗迹守卫"], "12-3下": ["遗迹重机"]}}, "1.3": {"9": {"9-1上": ["冰盾丘丘暴徒", "冰盾丘丘人", "大型冰史莱姆"], "9-1下": ["冰深渊法师", "冰盾丘丘暴徒", "冰丘丘萨满", "冰箭丘丘人"], "9-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人", "大型冰史莱姆"], "9-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军"], "9-3上": ["丘丘霜铠王", "冰箭丘丘人"], "9-3下": ["冰深渊法师", "冰盾丘丘暴徒"]}, "10": {"10-1上": ["冰深渊法师", "冰弹丘丘人", "大型冰史莱姆"], "10-1下": ["愚人众·雷萤术士", "冰深渊法师", "水丘丘萨满"], "10-2上": ["冰盾丘丘暴徒", "冰盾丘丘人", "冰弹丘丘人"], "10-2下": ["愚人众·冰萤术士", "盗宝团·雷之药剂师", "盗宝团·冰之药剂师"], "10-3上": ["愚人众·冰萤术士", "愚人众·火之债务处理人"], "10-3下": ["丘丘霜铠王"]}, "11": {"11-1上": ["水深渊法师", "大型雷史莱姆", "变异雷史莱姆", "大型水史莱姆"], "11-1下": ["岩盾丘丘暴徒", "火斧丘丘暴徒"], "11-2上": ["木盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘人", "冲锋丘丘人", "雷箭丘丘人", "火箭丘丘人"], "11-2下": ["愚人众·雷萤术士", "愚人众·火之债务处理人", "盗宝团·掘墓者", "盗宝团·拳术家", "盗宝团·粉碎者", "盗宝团·火之药剂师", "盗宝团·水之药剂师"], "11-3上": ["愚人众先遣队·风拳前锋军", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·水铳重卫士"], "11-3下": ["愚人众·火之债务处理人", "愚人众·雷萤术士"]}, "12": {"12-1上": ["岩盾丘丘暴徒", "火斧丘丘暴徒", "岩盾丘丘人"], "12-1下": ["遗迹守卫", "狂风之核"], "12-2上": ["盗宝团·掘墓者", "盗宝团·海上男儿", "盗宝团·杂工", "盗宝团·拳术家", "盗宝团·粉碎者"], "12-2下": ["愚人众·火之债务处理人"], "12-3上": ["愚人众·雷萤术士", "岩盾丘丘暴徒", "盗宝团·火之药剂师", "盗宝团·冰之药剂师"], "12-3下": ["愚人众·火之债务处理人", "岩盾丘丘暴徒"]}}, "1.2": {"9": {"9-1上": ["大型火史莱姆", "大型雷史莱姆", "变异雷史莱姆"], "9-1下": ["大型雷史莱姆", "变异雷史莱姆", "大型火史莱姆"], "9-2上": ["愚人众·雷萤术士", "盗宝团·海上男儿", "盗宝团·雷之药剂师", "盗宝团·火之药剂师", "盗宝团·冰之药剂师", "盗宝团·斥候"], "9-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-3上": ["幼岩龙蜥", "丘丘岩盔王"], "9-3下": ["遗迹守卫"]}, "10": {"10-1上": ["火斧丘丘暴徒", "大型火史莱姆", "冲锋丘丘人"], "10-1下": ["火深渊法师", "火斧丘丘暴徒"], "10-2上": ["火斧丘丘暴徒", "炽热骗骗花", "爆弹丘丘人", "打手丘丘人"], "10-2下": ["火深渊法师", "火斧丘丘暴徒", "火箭丘丘人"], "10-3上": ["愚人众先遣队·风拳前锋军", "愚人众先遣队·火铳游击兵"], "10-3下": ["火深渊法师", "草丘丘萨满", "火箭丘丘人", "炽热骗骗花"]}, "11": {"11-1上": ["大型冰史莱姆", "大型雷史莱姆", "变异雷史莱姆", "冰箭丘丘人", "木盾丘丘人"], "11-1下": ["愚人众·雷萤术士", "冰深渊法师", "水丘丘萨满", "冰箭丘丘人", "雷箭丘丘人"], "11-2上": ["火斧丘丘暴徒", "岩盾丘丘暴徒", "爆弹丘丘人", "岩盾丘丘人"], "11-2下": ["火斧丘丘暴徒", "岩盾丘丘暴徒", "大型雷史莱姆", "变异雷史莱姆", "雷箭丘丘人", "冰箭丘丘人"], "11-3上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "11-3下": ["愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军", "愚人众先遣队·岩使游击兵"]}, "12": {"12-1上": ["木盾丘丘暴徒", "大型冰史莱姆", "冰霜骗骗花"], "12-1下": ["冰深渊法师", "大型冰史莱姆", "冰箭丘丘人"], "12-2上": ["冰霜骗骗花", "火箭丘丘人", "冰箭丘丘人"], "12-2下": ["冰深渊法师", "木盾丘丘暴徒", "大型冰史莱姆", "冰箭丘丘人", "雷箭丘丘人", "火箭丘丘人"], "12-3上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军"], "12-3下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军", "愚人众先遣队·岩使游击兵"]}}, "1.1": {"9": {"9-1上": ["大型火史莱姆", "大型雷史莱姆", "变异雷史莱姆"], "9-1下": ["大型雷史莱姆", "变异雷史莱姆", "大型火史莱姆"], "9-2上": ["愚人众·雷萤术士", "盗宝团·海上男儿", "盗宝团·雷之药剂师", "盗宝团·火之药剂师", "盗宝团·冰之药剂师", "盗宝团·斥候"], "9-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-3上": ["幼岩龙蜥", "丘丘岩盔王"], "9-3下": ["遗迹守卫"]}, "10": {"10-1上": ["火斧丘丘暴徒", "大型火史莱姆", "冲锋丘丘人"], "10-1下": ["火深渊法师", "火斧丘丘暴徒"], "10-2上": ["火斧丘丘暴徒", "炽热骗骗花", "爆弹丘丘人", "打手丘丘人"], "10-2下": ["火深渊法师", "火斧丘丘暴徒", "火箭丘丘人"], "10-3上": ["愚人众先遣队·风拳前锋军", "愚人众先遣队·火铳游击兵"], "10-3下": ["火深渊法师", "草丘丘萨满", "火箭丘丘人", "炽热骗骗花"]}, "11": {"11-1上": ["大型冰史莱姆", "大型雷史莱姆", "变异雷史莱姆", "冰箭丘丘人", "木盾丘丘人"], "11-1下": ["愚人众·雷萤术士", "冰深渊法师", "水丘丘萨满", "冰箭丘丘人", "雷箭丘丘人"], "11-2上": ["火斧丘丘暴徒", "岩盾丘丘暴徒", "爆弹丘丘人", "岩盾丘丘人"], "11-2下": ["火斧丘丘暴徒", "岩盾丘丘暴徒", "大型雷史莱姆", "变异雷史莱姆", "雷箭丘丘人", "冰箭丘丘人"], "11-3上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "11-3下": ["愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军", "愚人众先遣队·岩使游击兵"]}, "12": {"12-1上": ["木盾丘丘暴徒", "大型冰史莱姆", "冰霜骗骗花"], "12-1下": ["冰深渊法师", "大型冰史莱姆", "冰箭丘丘人"], "12-2上": ["冰霜骗骗花", "火箭丘丘人", "冰箭丘丘人"], "12-2下": ["冰深渊法师", "木盾丘丘暴徒", "大型冰史莱姆", "冰箭丘丘人", "雷箭丘丘人", "火箭丘丘人"], "12-3上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军"], "12-3下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军", "愚人众先遣队·岩使游击兵"]}}, "1.0": {"9": {"9-1上": ["大型火史莱姆", "大型雷史莱姆", "变异雷史莱姆"], "9-1下": ["大型雷史莱姆", "变异雷史莱姆", "大型火史莱姆"], "9-2上": ["愚人众·雷萤术士", "盗宝团·海上男儿", "盗宝团·雷之药剂师", "盗宝团·火之药剂师", "盗宝团·冰之药剂师", "盗宝团·斥候"], "9-2下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "9-3上": ["幼岩龙蜥", "丘丘岩盔王"], "9-3下": ["遗迹守卫"]}, "10": {"10-1上": ["火斧丘丘暴徒", "大型火史莱姆", "冲锋丘丘人"], "10-1下": ["火深渊法师", "火斧丘丘暴徒"], "10-2上": ["火斧丘丘暴徒", "炽热骗骗花", "爆弹丘丘人", "打手丘丘人"], "10-2下": ["火深渊法师", "火斧丘丘暴徒", "火箭丘丘人"], "10-3上": ["愚人众先遣队·风拳前锋军", "愚人众先遣队·火铳游击兵"], "10-3下": ["火深渊法师", "草丘丘萨满", "火箭丘丘人", "炽热骗骗花"]}, "11": {"11-1上": ["大型冰史莱姆", "大型雷史莱姆", "变异雷史莱姆", "冰箭丘丘人", "木盾丘丘人"], "11-1下": ["愚人众·雷萤术士", "冰深渊法师", "水丘丘萨满", "冰箭丘丘人", "雷箭丘丘人"], "11-2上": ["火斧丘丘暴徒", "岩盾丘丘暴徒", "爆弹丘丘人", "岩盾丘丘人"], "11-2下": ["火斧丘丘暴徒", "岩盾丘丘暴徒", "大型雷史莱姆", "变异雷史莱姆", "雷箭丘丘人", "冰箭丘丘人"], "11-3上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·岩使游击兵", "愚人众先遣队·风拳前锋军"], "11-3下": ["愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军", "愚人众先遣队·岩使游击兵"]}, "12": {"12-1上": ["木盾丘丘暴徒", "大型冰史莱姆", "冰霜骗骗花"], "12-1下": ["冰深渊法师", "大型冰史莱姆", "冰箭丘丘人"], "12-2上": ["冰霜骗骗花", "火箭丘丘人", "冰箭丘丘人"], "12-2下": ["冰深渊法师", "木盾丘丘暴徒", "大型冰史莱姆", "冰箭丘丘人", "雷箭丘丘人", "火箭丘丘人"], "12-3上": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军"], "12-3下": ["愚人众先遣队·冰铳重卫士", "愚人众先遣队·雷锤前锋军", "愚人众先遣队·风拳前锋军", "愚人众先遣队·岩使游击兵"]}}}
\ No newline at end of file
diff --git a/GenshinUID/genshinuid_help/__init__.py b/GenshinUID/genshinuid_help/__init__.py
new file mode 100644
index 00000000..54bb0a32
--- /dev/null
+++ b/GenshinUID/genshinuid_help/__init__.py
@@ -0,0 +1,23 @@
+import asyncio
+import threading
+from pathlib import Path
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+
+from .draw_help_card import draw_help_img
+from ..utils.image.convert import convert_img
+
+HELP_IMG = Path(__file__).parent / 'help.png'
+
+
+@SV('原神帮助').on_fullmatch('gs帮助')
+async def send_guide_pic(bot: Bot):
+ img = await convert_img(HELP_IMG)
+ await bot.logger.info('获得gs帮助图片成功!')
+ await bot.send(img)
+
+
+threading.Thread(
+ target=lambda: asyncio.run(draw_help_img()), daemon=True
+).start()
diff --git a/GenshinUID/genshinuid_help/draw_help_card.py b/GenshinUID/genshinuid_help/draw_help_card.py
new file mode 100644
index 00000000..1900ce84
--- /dev/null
+++ b/GenshinUID/genshinuid_help/draw_help_card.py
@@ -0,0 +1,85 @@
+import json
+from pathlib import Path
+
+from PIL import Image, ImageDraw
+
+from ..utils.image.image_tools import CustomizeImage
+from ..utils.resource.RESOURCE_PATH import TEXT2D_PATH
+from ..utils.fonts.genshin_fonts import (
+ gs_font_18,
+ gs_font_24,
+ gs_font_28,
+ gs_font_40,
+)
+
+TEXT_PATH = Path(__file__).parent / 'texture2d'
+help_title = Image.open(TEXT_PATH / 'help_title.png')
+
+first_color = (20, 20, 20)
+second_color = (57, 57, 57)
+
+with open(Path(__file__).parent / 'help.json', "r", encoding='UTF-8') as f:
+ help_data = json.load(f)
+
+all_help_num = 0
+module_row = 0
+help_row = 0
+
+for module in help_data:
+ all_help_num += len(help_data[module]['data'])
+ module_row += 1
+ help_row += (len(help_data[module]['data']) + 2) // 3
+
+
+async def draw_help_img():
+ # 获取背景图片各项参数
+ based_w = 850
+ based_h = 30 + 720 + 110 * help_row + module_row * 100
+
+ CI_img = CustomizeImage('', based_w, based_h)
+ img = CI_img.bg_img
+ color = CI_img.bg_color
+ color_mask = Image.new('RGBA', (based_w, based_h), color)
+ help_mask = Image.open(TEXT2D_PATH / 'mask.png').resize((based_w, based_h))
+ img.paste(color_mask, (0, 0), help_mask)
+
+ module_temp = 0
+ alpha_img = Image.new('RGBA', (based_w, based_h))
+ alpha_img.paste(help_title, (0, 0))
+ for module in help_data:
+ module_title = Image.open(TEXT_PATH / 'module_title.png')
+ module_title_draw = ImageDraw.Draw(module_title)
+ module_desc = help_data[module]['desc']
+ module_title_draw.text((76, 53), module, first_color, gs_font_40, 'lm')
+ module_title_draw.text(
+ (767, 59), module_desc, second_color, gs_font_24, 'rm'
+ )
+ alpha_img.paste(module_title, (0, 720 + module_temp))
+ for index, data in enumerate(help_data[module]['data']):
+ func = Image.open(TEXT_PATH / 'func.png')
+ func_draw = ImageDraw.Draw(func)
+ func_draw.text(
+ (125, 30), data['name'], first_color, gs_font_28, 'mm'
+ )
+ func_draw.text(
+ (125, 65), data['desc'], second_color, gs_font_18, 'mm'
+ )
+ func_draw.text(
+ (125, 85), data['eg'], second_color, gs_font_18, 'mm'
+ )
+ alpha_img.paste(
+ func,
+ (
+ 51 + (index % 3) * 254,
+ 820 + module_temp + (index // 3) * 110,
+ ),
+ )
+ module_temp += 100 + 110 * ((len(help_data[module]['data']) + 2) // 3)
+ img = Image.alpha_composite(img, alpha_img)
+
+ img.save(
+ Path(__file__).parent / 'help.png',
+ format='PNG',
+ quality=80,
+ subsampling=0,
+ )
diff --git a/GenshinUID/genshinuid_help/help.json b/GenshinUID/genshinuid_help/help.json
new file mode 100644
index 00000000..52d84dc3
--- /dev/null
+++ b/GenshinUID/genshinuid_help/help.json
@@ -0,0 +1,605 @@
+{
+ "私人服务": {
+ "desc": "需要加 [gs开启/设置] 前缀",
+ "data": [
+ {
+ "name": "推送",
+ "desc": "所有推送总开关",
+ "eg": "gs开启推送",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "自动签到",
+ "desc": "每晚0:30进行米游社签到",
+ "eg": "gs开启自动签到",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "自动米游币",
+ "desc": "每晚1:16进行米游币获取",
+ "eg": "gs开启自动米游币",
+ "need_ck": false,
+ "need_sk": true,
+ "need_admin": false
+ },
+ {
+ "name": "[推送项]",
+ "desc": "体力/派遣/宝钱/质变仪推送",
+ "eg": "gs开启体力、gs开启派遣",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "[推送项]阈值",
+ "desc": "设置推送的阈值",
+ "eg": "gs设置体力阈值140",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "刷新抽卡记录",
+ "desc": "更新抽卡记录,需要SK",
+ "eg": "刷新抽卡记录",
+ "need_ck": false,
+ "need_sk": true,
+ "need_admin": false
+ },
+ {
+ "name": "抽卡记录",
+ "desc": "查询你的抽卡记录",
+ "eg": "抽卡记录",
+ "need_ck": false,
+ "need_sk": true,
+ "need_admin": false
+ },
+ {
+ "name": "导出抽卡记录",
+ "desc": "仅限群聊,导出UIGF",
+ "eg": "导出抽卡记录",
+ "need_ck": false,
+ "need_sk": true,
+ "need_admin": false
+ },
+ {
+ "name": "导入抽卡记录",
+ "desc": "导入符合UIGF格式的文件",
+ "eg": "私聊直接发Json文件",
+ "need_ck": false,
+ "need_sk": true,
+ "need_admin": false
+ },
+ {
+ "name": "扫码登陆",
+ "desc": "私聊扫码登陆,米游社扫码即可",
+ "eg": "扫码登陆",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "清除原神公告红点",
+ "desc": "清除自己的原神公告红点",
+ "eg": "清除原神公告红点",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ }
+ ]
+ },
+ "查询服务": {
+ "desc": "可加 [查询]前缀",
+ "data": [
+ {
+ "name": "查询",
+ "desc": "角色信息一览,后可跟UID",
+ "eg": "查询100740568",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "[上期]深渊/sy",
+ "desc": "深渊信息一览,后可跟UID",
+ "eg": "深渊100740568",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "收集/sj",
+ "desc": "收集百分比,后可跟UID",
+ "eg": "收集100740568",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "探索/ts",
+ "desc": "探索百分比,后可跟UID",
+ "eg": "探索100740568",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "每日/mr",
+ "desc": "自己的游戏日常和树脂",
+ "eg": "便签",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "签到",
+ "desc": "进行一次米游社签到",
+ "eg": "签到",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "当前状态",
+ "desc": "游戏树脂和派遣状态",
+ "eg": "当前状态",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "每月统计",
+ "desc": "每月的原石获取情况",
+ "eg": "每月统计",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "原石札记/zj",
+ "desc": "原石获取状态图片版",
+ "eg": "当前信息",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "七圣召唤/召唤",
+ "desc": "查询自己的七圣召唤进度",
+ "eg": "召唤100740568",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "原神注册时间",
+ "desc": "获取自己的原神注册时间",
+ "eg": "原神注册时间",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": false
+ }
+ ]
+ },
+ "面板服务": {
+ "desc": "数据源由Enka提供",
+ "data": [
+ {
+ "name": "强制刷新",
+ "desc": "刷新自己游戏内面板数据",
+ "eg": "强制刷新100740568",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查询xx",
+ "desc": "查询角色面板",
+ "eg": "查询100740568心海",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查询x命xx",
+ "desc": "为自己的面板增加虚构数据",
+ "eg": "查询六命公子",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查询xx换xx",
+ "desc": "查询角色面板更换武器",
+ "eg": "查询六命心海换护摩",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查询xx带xx换xx",
+ "desc": "查询不存在的角色",
+ "eg": "查询莱依拉带月光换公子",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查询xx成长曲线",
+ "desc": "输出当前角色成长表",
+ "eg": "查询刻晴曲线",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查询展柜角色",
+ "desc": "查询所有已缓存角色列表",
+ "eg": "查询展柜角色",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查询队伍 xx",
+ "desc": "查询队伍伤害",
+ "eg": "查询队伍 万叶 公子 ...",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "毕业度统计",
+ "desc": "查询所有已缓存角色的毕业度",
+ "eg": "毕业度统计",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ }
+ ]
+ },
+ "游戏建议": {
+ "desc": "获取一些没用的建议",
+ "data": [
+ {
+ "name": "xx用什么",
+ "desc": "角色该如何养成",
+ "eg": "公子怎么养",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "xx给谁用",
+ "desc": "武器/圣遗物能给谁用",
+ "eg": "护摩谁能用",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "xx攻略/推荐",
+ "desc": "西风驿站攻略图",
+ "eg": "可莉推荐",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "参考面板xx",
+ "desc": "角色的小毕业面板",
+ "eg": "参考面板公子",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "活动列表",
+ "desc": "游戏当前的活动列表",
+ "eg": "活动列表",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "卡池列表",
+ "desc": "游戏当前的卡池列表",
+ "eg": "卡池列表",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "任务xx",
+ "desc": "某个任务的攻略",
+ "eg": "任务须弥",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "抽表情",
+ "desc": "随机抽一个表情",
+ "eg": "抽表情",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "御神签",
+ "desc": "随机抽一签,当天内签文固定",
+ "eg": "御神签",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "原神公告",
+ "desc": "获取原神公告",
+ "eg": "原神公告#3898",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "订阅原神公告",
+ "desc": "在本群订阅原神公告",
+ "eg": "订阅原神公告",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "取消订阅原神公告",
+ "desc": "在本群取消订阅原神公告",
+ "eg": "取消订阅原神公告",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "版本深渊",
+ "desc": "获取当前版本深渊阵容",
+ "eg": "版本深渊3.4",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查成就",
+ "desc": "查询这个成就的攻略",
+ "eg": "查成就捉猫记",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "查委托",
+ "desc": "查询当天的委托有没有成就",
+ "eg": "查委托这本小说",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ }
+ ]
+ },
+ "WIKI": {
+ "desc": "获取游戏信息",
+ "data": [
+ {
+ "name": "武器",
+ "desc": "武器信息,可后跟数字",
+ "eg": "武器天空、武器天空90",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "角色",
+ "desc": "角色信息,可后跟数字",
+ "eg": "角色七七90、角色真珠",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "命座、天赋",
+ "desc": "角色命座和技能",
+ "eg": "命座6可莉、天赋4北斗",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "圣遗物",
+ "desc": "查询圣遗物",
+ "eg": "圣遗物冰封",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "食物、原魔",
+ "desc": "查询食物和怪物信息",
+ "eg": "食物鸡、原魔公子",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "语音",
+ "desc": "查询角色语音",
+ "eg": "语音可莉357",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "原牌",
+ "desc": "查询原牌",
+ "eg": "原牌神里、原牌运筹帷幄",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "切换地图",
+ "desc": "切换地图至其他区域",
+ "eg": "切换地图",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": true
+ },
+ {
+ "name": "xx在哪",
+ "desc": "查找地图资源点",
+ "eg": "甜甜花在哪",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ }
+ ]
+ },
+ "数据模块": {
+ "desc": "有关插件的一些数据",
+ "data": [
+ {
+ "name": "校验全部Cookies",
+ "desc": "校验全部ck的状态",
+ "eg": "校验全部Cookies",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "校验全部Stoken",
+ "desc": "校验全部sk的状态",
+ "eg": "校验全部Stoken",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "清除无效用户",
+ "desc": "清理失效的用户",
+ "eg": "清除无效用户",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": true
+ },
+ {
+ "name": "gs配置",
+ "desc": "查看全局的插件配置",
+ "eg": "gs配置",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "全部重签",
+ "desc": "重新进行全部签到",
+ "eg": "全部重签",
+ "need_ck": true,
+ "need_sk": false,
+ "need_admin": true
+ },
+ {
+ "name": "全部重获取",
+ "desc": "重新进行全部米游币获取",
+ "eg": "全部重获取",
+ "need_ck": true,
+ "need_sk": true,
+ "need_admin": true
+ },
+ {
+ "name": "gs更新",
+ "desc": "可尝试gs强制更新",
+ "eg": "gs强行强制更新",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": true
+ },
+ {
+ "name": "gs重启",
+ "desc": "重启你的Bot",
+ "eg": "gs重启",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": true
+ },
+ {
+ "name": "刷新ck",
+ "desc": "通过sk重新获取ck",
+ "eg": "刷新ck",
+ "need_ck": true,
+ "need_sk": true,
+ "need_admin": false
+ },
+ {
+ "name": "刷新全部ck",
+ "desc": "刷新绑定的全部ck",
+ "eg": "刷新全部ck",
+ "need_ck": true,
+ "need_sk": true,
+ "need_admin": true
+ }
+ ]
+ },
+ "杂图": {
+ "desc": "可能会用得上",
+ "data": [
+ {
+ "name": "原石预估",
+ "desc": "当前版本奖励,后可跟版本",
+ "eg": "版本规划3.0",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "血量排行",
+ "desc": "常见怪物的血量排行",
+ "eg": "血量排行",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "血量表",
+ "desc": "所有怪物的血量",
+ "eg": "血量表",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "抗性表",
+ "desc": "所有怪物的抗性",
+ "eg": "抗性表",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "伤害乘区",
+ "desc": "伤害到底有几个乘区",
+ "eg": "伤害乘区",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ },
+ {
+ "name": "深渊概览",
+ "desc": "从虚空数据库获取当期深渊完成率",
+ "eg": "深渊概览",
+ "need_ck": false,
+ "need_sk": false,
+ "need_admin": false
+ }
+ ]
+ }
+}
\ No newline at end of file
diff --git a/GenshinUID/genshinuid_help/texture2d/func.png b/GenshinUID/genshinuid_help/texture2d/func.png
new file mode 100644
index 00000000..4c237534
Binary files /dev/null and b/GenshinUID/genshinuid_help/texture2d/func.png differ
diff --git a/GenshinUID/genshinuid_help/texture2d/help_title.png b/GenshinUID/genshinuid_help/texture2d/help_title.png
new file mode 100644
index 00000000..8a302c3c
Binary files /dev/null and b/GenshinUID/genshinuid_help/texture2d/help_title.png differ
diff --git a/GenshinUID/genshinuid_help/texture2d/module_title.png b/GenshinUID/genshinuid_help/texture2d/module_title.png
new file mode 100644
index 00000000..03241d12
Binary files /dev/null and b/GenshinUID/genshinuid_help/texture2d/module_title.png differ
diff --git a/GenshinUID/genshinuid_map/__init__.py b/GenshinUID/genshinuid_map/__init__.py
new file mode 100644
index 00000000..15f06d66
--- /dev/null
+++ b/GenshinUID/genshinuid_map/__init__.py
@@ -0,0 +1,50 @@
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+
+from ..utils.image.convert import convert_img
+from .draw_genshinmap_card import MAP_DATA, draw_genshin_map
+
+MAP_ID_LIST = [
+ '2', # 提瓦特
+ '9', # 层岩巨渊
+ '7', # 渊下宫
+ # MapID.golden_apple_archipelago, # 金苹果群岛
+]
+MAP_CHN_NAME = {
+ '2': '提瓦特',
+ '9': '层岩巨渊',
+ '7': '渊下宫',
+ # MapID.golden_apple_archipelago: '金苹果群岛',
+}
+
+
+@SV('查询地图设置', pm=2).on_fullmatch(('切换地图'))
+async def send_change_map_msg(bot: Bot):
+ await bot.logger.info('[切换地图]正在执行...')
+ MAP_ID_LIST.append(MAP_ID_LIST[0])
+ MAP_ID_LIST.pop(0)
+ current = MAP_ID_LIST[0]
+ chn = MAP_CHN_NAME.get(current)
+ await bot.logger.info(f'[切换地图]当前地图为{chn}')
+ await bot.send(f'切换到{chn}地图')
+
+
+@SV('查询地图').on_prefix(('哪里有', '哪儿有', '哪有'))
+async def send_find_map_msg(bot: Bot, ev: Event):
+ map_id = MAP_ID_LIST[0]
+ map_name = MAP_CHN_NAME[map_id]
+ await bot.logger.info(f'[查找资源点]正在执行...当前地图为{map_name}')
+
+ if not MAP_DATA.exists():
+ MAP_DATA.mkdir()
+
+ resource_temp_path = MAP_DATA / f'{map_name}_{ev.text}.jpg'
+ if resource_temp_path.exists():
+ await bot.logger.info(f'本地已有{map_name}_{ev.text}的资源点,直接发送...')
+ resource_temp = await convert_img(resource_temp_path)
+ await bot.send(resource_temp)
+ else:
+ await bot.logger.info('本地未缓存,正在渲染...')
+ im = await draw_genshin_map(ev.text, map_id, map_name)
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_map/draw_genshinmap_card.py b/GenshinUID/genshinuid_map/draw_genshinmap_card.py
new file mode 100644
index 00000000..67c87c3c
--- /dev/null
+++ b/GenshinUID/genshinuid_map/draw_genshinmap_card.py
@@ -0,0 +1,21 @@
+from pathlib import Path
+from typing import Union
+
+from ..gsuid_utils.api.minigg.request import get_map_data
+from ..gsuid_utils.api.minigg.exception import MiniggNotFoundError
+
+MAP_DATA = Path(__file__).parent / 'map_data'
+
+
+async def draw_genshin_map(
+ resource_name: str,
+ map_id: str,
+ map_name: str,
+) -> Union[bytes, str]:
+ try:
+ raw_data = await get_map_data(resource_name, map_id)
+ except MiniggNotFoundError:
+ return f'{resource_name} {map_id} 未找到...'
+ with open(MAP_DATA / f'{map_name}_{resource_name}.jpg', 'wb') as f:
+ f.write(raw_data) # 保存到文件夹中
+ return raw_data
diff --git a/GenshinUID/genshinuid_mys/__init__.py b/GenshinUID/genshinuid_mys/__init__.py
new file mode 100644
index 00000000..61e1b0ff
--- /dev/null
+++ b/GenshinUID/genshinuid_mys/__init__.py
@@ -0,0 +1,36 @@
+import asyncio
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+from gsuid_core.segment import MessageSegment
+
+from .get_lots_data import get_lots_msg
+from .get_meme_card import get_meme_img
+from .get_mys_data import get_region_task, get_task_detail
+
+
+@SV('查询游戏攻略').on_prefix(('原神任务', '任务详情', 'qszh'))
+async def send_task_adv(bot: Bot, ev: Event):
+ if ev.text in ['须弥', '层岩', '海岛']:
+ im = await get_region_task(ev.text)
+ for i in im:
+ mes = [MessageSegment.text(_msg) for _msg in i]
+ await bot.send(MessageSegment.node(mes))
+ await asyncio.sleep(1)
+ return
+ else:
+ im = await get_task_detail(ev.text)
+ await bot.send(im)
+
+
+@SV('娱乐功能').on_fullmatch(('抽表情'))
+async def send_meme_card(bot: Bot):
+ await bot.logger.info('开始执行[抽表情]')
+ await bot.send(await get_meme_img())
+
+
+@SV('娱乐功能').on_fullmatch(('御神签'))
+async def send_lots_data(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[御神签]')
+ await bot.send(await get_lots_msg(ev.user_id))
diff --git a/GenshinUID/genshinuid_mys/get_lots_data.py b/GenshinUID/genshinuid_mys/get_lots_data.py
new file mode 100644
index 00000000..75375cf6
--- /dev/null
+++ b/GenshinUID/genshinuid_mys/get_lots_data.py
@@ -0,0 +1,186 @@
+import random
+import datetime
+from typing import Union
+
+
+async def get_lots_msg(qid: Union[str, int]) -> str:
+ seed = str(datetime.date.today()) + str(qid)
+ random.seed(seed)
+ return lots_data[random.randint(0, 15)]
+
+
+lots_data = [
+ (
+ '——大吉——\n'
+ '宝剑出匣来,无往不利。出匣之光,亦能照亮他人。\n'
+ '今日能一箭射中空中的猎物,能一击命中守卫要害。\n'
+ '若没有目标,不妨四处转转,说不定会有意外之喜。\n'
+ '同时,也不要忘记和倒霉的同伴分享一下好运气哦。\n\n'
+ '今天的幸运物是:难得一见的「马尾」。\n'
+ '马尾随大片荻草生长,但却更为挺拔。\n'
+ '与傲然挺立于此世的你一定很是相配。'
+ ),
+ (
+ '——大吉——\n'
+ '失而复得的一天。\n'
+ '原本以为石沉大海的事情有了好的回应,\n'
+ '原本分道扬镳的朋友或许可以再度和好,\n'
+ '不经意间想起了原本已经忘记了的事情。\n'
+ '世界上没有什么是永远无法挽回的,\n'
+ '今天就是能够挽回失去事物的日子。\n\n'
+ '今天的幸运物是:活蹦乱跳的「鬼兜虫」。\n'
+ '鬼兜虫是爱好和平、不愿意争斗的小生物。\n'
+ '这份追求平和的心一定能为你带来幸福吧。'
+ ),
+ (
+ '——大吉——\n'
+ '会起风的日子,无论干什么都会很顺利的一天。\n'
+ '周围的人心情也非常愉快,绝对不会发生冲突,\n'
+ '还可以吃到一直想吃,但没机会吃的美味佳肴。\n'
+ '无论是工作,还是旅行,都一定会十分顺利吧。\n'
+ '那么,应当在这样的好时辰里,一鼓作气前进...\n\n'
+ '今天的幸运物是:茁壮成长的「鸣草」。\n'
+ '许多人或许不知道,鸣草是能预报雷暴的植物。\n'
+ '向往着雷神大人的青睐,只在稻妻列岛上生长。\n'
+ '摘下鸣草时酥酥麻麻的触感,据说和幸福的滋味很像。'
+ ),
+ (
+ '——大吉——\n'
+ '浮云散尽月当空,逢此签者皆为上吉。\n'
+ '明镜在心清如许,所求之事心想则成。\n'
+ '合适顺心而为的一天,不管是想做的事情,\n'
+ '还是想见的人,现在是行动起来的好时机。\n\n'
+ '今天的幸运物是:不断发热的「烈焰花花蕊」。\n'
+ '烈焰花的炙热来自于火辣辣的花心。\n'
+ '万事顺利是因为心中自有一条明路。'
+ ),
+ (
+ '——中吉——\n'
+ '十年磨一剑,今朝示霜刃。\n'
+ '恶运已销,身临否极泰来之时。\n'
+ '苦练多年未能一显身手的才能,\n'
+ '现今有了大展身手的极好机会。\n'
+ '若是遇到阻碍之事,亦不必迷惘,\n'
+ '大胆地拔剑,痛快地战斗一番吧。\n\n'
+ '今天的幸运物是:生长多年的「海灵芝」。\n'
+ '弱小的海灵芝虫经历多年的风风雨雨,才能结成海灵芝。\n'
+ '为目标而努力前行的人们,最终也必将拥有胜利的果实。'
+ ),
+ (
+ '——中吉——\n'
+ '天上有云飘过的日子,天气令人十分舒畅。\n'
+ '工作非常顺利,连午睡时也会想到好点子。\n'
+ '突然发现,与老朋友还有其他的共同话题...\n'
+ '——每一天每一天都要积极开朗地度过——\n\n'
+ '今天的幸运物是:色泽艳丽的「堇瓜」。\n'
+ '人们常说表里如一是美德,\n'
+ '但堇瓜明艳的外貌下隐藏着的是谦卑而甘甜的内在。'
+ ),
+ (
+ '——吉——\n'
+ '一如既往的一天。身体和心灵都适应了的日常。\n'
+ '出现了能替代弄丢的东西的物品,令人很舒心。\n'
+ '和常常遇见的人关系会变好,可能会成为朋友。\n'
+ '——无论是多寻常的日子,都能成为宝贵的回忆——\n\n'
+ '今天的幸运物是:闪闪发亮的「晶核」。\n'
+ '晶蝶是凝聚天地间的元素,而长成的细小生物。\n'
+ '而元素是这个世界许以天地当中的人们的祝福。'
+ ),
+ (
+ '——吉——\n'
+ '明明没有什么特别的事情,却感到心情轻快的日子。\n'
+ '在没注意过的角落可以找到本以为丢失已久的东西。\n'
+ '食物比平时更加鲜美,路上的风景也令人眼前一高。\n'
+ '——这个世界上充满了新奇的美好事物——\n\n'
+ '今天的幸运物是:散发暖意的「鸟蛋」。\n'
+ '鸟蛋孕育着无限的可能性,是未来之种。\n'
+ '反过来,这个世界对鸟蛋中的生命而言,\n'
+ '也充满了令其兴奋的未知事物吧。\n'
+ '要温柔 对待鸟蛋喔。'
+ ),
+ (
+ '——吉——\n'
+ '枯木逢春,正当万物复苏之时。\n'
+ '陷入困境时,能得到解决办法。\n'
+ '举棋不定时,会有贵人来相助。\n'
+ '可以整顿一番心情,清理一番家装,\n'
+ '说不定能发现意外之财。\n\n'
+ '今天的幸运物是:节节高升的「竹笋」。\n'
+ '竹笋拥有着无限的潜力,\n'
+ '没有人知道一颗竹笋,到底能长成多高的竹子。\n'
+ '看着竹笋,会让人不由自主期待起未来吧。'
+ ),
+ (
+ '——末吉——\n'
+ '气压稍微有点低,是会令人想到遥远的过去的日子。\n'
+ '早已过往的年轻岁月,与再没联系过的故友的回忆,\n'
+ '会让人感到丝平淡的怀念,又稍微有一点点感伤。\n'
+ '——偶尔怀念过去也很好。放松心情面对未来吧——\n\n'
+ '今天的幸运物是:清新怡人的「薄荷」。\n'
+ '只要有草木生长的空间,就一定有薄荷。\n'
+ '这么看来,薄荷是世界上最强韧的生灵。\n'
+ '据说连蒙德的雪山上也长着薄荷呢 。'
+ ),
+ (
+ '——末吉——\n'
+ '空中的云层偏低,并且仍有堆积之势,\n'
+ '不知何时雷雨会骤然从头顶倾盆而下。\n'
+ '但是等雷雨过后,还会有彩虹在等着。\n'
+ '宜循于旧,守于静,若妄为则难成之。\n\n'
+ '今天的幸运物是:树上掉落的「松果」。\n'
+ '并不是所有的松果都能长成高大的松树,\n'
+ '成长需要适宜的环境,更需要一点运气。\n'
+ '所以不用给自己过多压力,耐心等待彩虹吧。'
+ ),
+ (
+ '——末吉——\n'
+ '云遮月半边,雾起更迷离。\n'
+ '抬头即是浮云遮月,低头则是浓雾漫漫。\n'
+ '虽然一时前路迷惘,但也会有一切明了的时刻。\n'
+ '现下不如趁此机会磨炼自我,等待拨云见皎月。\n\n'
+ '今天的幸运物是:暗中发亮的「发光髓」。\n'
+ '发光髓努力地发出微弱的光芒。\n'
+ '虽然比不过其他光源,但看清前路也够用了。'
+ ),
+ (
+ '——末吉——\n'
+ '平稳安详的一天。没有什么令人难过的事情会发生。\n'
+ '适合和久未联系的朋友聊聊过去的事情,一同欢笑。\n'
+ '吃东西的时候会尝到很久以前体验过的过去的味道。\n'
+ '——要珍惜身边的人与事——\n\n'
+ '今天的幸运物是:酥酥麻麻的「电气水晶」。\n'
+ '电气水晶蕴含着无限的能量。\n'
+ '如果能够好好导引这股能量,说不定就能成就什么事业。'
+ ),
+ (
+ '——凶——\n'
+ '隐约感觉会下雨的一天。可能会遇到不顺心的事情。\n'
+ '应该的褒奖迟迟没有到来,服务生也可能会上错菜。\n'
+ '明明没什么大不了的事,却总感觉有些心烦的日子。\n'
+ '——难免有这样的日子——\n\n'
+ '今天的幸运物是:随波摇曳的「海草」。\n'
+ '海草是相当温柔而坚强的植物,\n'
+ '即使在苦涩的海水中,也不愿改变自己。\n'
+ '即使在逆境中,也不要放弃温柔的心灵。'
+ ),
+ (
+ '——凶——\n'
+ '珍惜的东西可能会遗失,需要小心。\n'
+ '如果身体有不适,一定要注意休息。\n'
+ '在做出决定之前,一定要再三思考。\n\n'
+ '今天的幸运物是:冰凉冰凉的「冰雾花」。\n'
+ '冰雾花散发着「生人 勿进」的寒气。\n'
+ '但有时冰冷的气质,也能让人的心情与头脑冷静下来。\n'
+ '据此采取正确的判断,明智地行动。'
+ ),
+ (
+ '——大凶——\n'
+ '内心空落落的一天。可能会陷入深深的无力感之中。\n'
+ '很多事情都无法理清头绪,过于钻牛角尖则易生病。\n'
+ '虽然一切皆陷于低潮谷底中,但也不必因此而气馁。\n'
+ '若能撑过一时困境,他日必另有一番作为。\n\n'
+ '今天的幸运物是:弯弯曲曲的「蜥蜴尾巴」。\n'
+ '蜥蜴遇到潜在的危险时,大多数会断尾求生。\n'
+ '若是遇到无法整理的情绪,那么该断则断吧。'
+ ),
+]
diff --git a/GenshinUID/genshinuid_mys/get_meme_card.py b/GenshinUID/genshinuid_mys/get_meme_card.py
new file mode 100644
index 00000000..b6f7c1d1
--- /dev/null
+++ b/GenshinUID/genshinuid_mys/get_meme_card.py
@@ -0,0 +1,75 @@
+# flake8: noqa
+import random
+
+import httpx
+
+title = 'https://webstatic.mihoyo.com/upload/event'
+meme_dict = {
+ 'card_other_Fischl1': f'{title}/2020/08/31/4bb5924e073f073f400389da2062407f_4225300656656631729.png',
+ 'card_other_Fischl2': f'{title}/2020/08/31/9a477826d4587eaafa7161507e53cec1_3070825784718745991.png',
+ 'card_other_albedo1': f'{title}/2021/01/05/929f01ef0b7db16e6e3289e6f09bc664_3314543116725683931.png',
+ 'card_other_albedo2': f'{title}/2021/01/05/f486f444ebe67ebdb70307433aa08fd3_8750695094071258948.png',
+ 'card_other_ambor1': f'{title}/2020/08/31/997dca7a05c35b09881b19c08e265477_1299947423447392337.png',
+ 'card_other_ambor2': f'{title}/2020/08/31/0ad6dd1e9903507a659df257959a763f_2854888966169652134.png',
+ 'card_other_ambor3': f'{title}/2020/08/31/fd905e0fb575f67da73137b453a596fd_2915100968963816162.png',
+ 'card_other_bannite1': f'{title}/2020/08/31/9cefb9bd9811f166bf14b8367dc785df_3763750909505644121.png',
+ 'card_other_bannite2': f'{title}/2020/08/31/8d4d7f176808b85529d5e53f9ef59eb3_873542905371029363.png',
+ 'card_other_barbara1': f'{title}/2020/08/31/160b860e2968c0a930373bf74dbe34a6_6782336143409269316.png',
+ 'card_other_barbara2': f'{title}/2020/08/31/837fc37bd0831b74c0281c945d5323da_4271787076408799417.png',
+ 'card_other_barbara3': f'{title}/2020/08/31/ca72b6a24f48ef04796e3c63a7c25163_5778250222995475858.png',
+ 'card_other_beidou1': f'{title}/2020/08/31/15e08973b2d2896bb403f1f5f7499382_1462646223869539529.png',
+ 'card_other_beidou2': f'{title}/2020/08/31/b11c93805674e62fc43a9adceaa8e893_8926566513833977124.png',
+ 'card_other_chongyun1': f'{title}/2020/08/31/b9920d1400bf55a2307b9b2e216a4a8e_2000240380863580838.png',
+ 'card_other_chongyun2': f'{title}/2020/08/31/1f80b78033c55c31553d2fba2201c857_8778762270527512136.png',
+ 'card_other_chongyun3': f'{title}/2020/08/31/645cf32a7a133b57605bb341a84d65a2_7809384165096554836.png',
+ 'card_other_diaona1': f'{title}/2020/11/16/f975f0e6311346306e5151f04fbbbc0a_6762294099269212599.png',
+ 'card_other_diaona2': f'{title}/2020/11/16/0530db8dbacbebf662c3b4cad1f407c8_7326500760952263133.png',
+ 'card_other_diluc1': f'{title}/2020/08/31/4d25ea66387705c7360ea6d5cc90bb01_4560335127797724868.png',
+ 'card_other_diluc2': f'{title}/2020/08/31/378f274d1f40a840c14da114f97c689d_6631287774563316092.png',
+ 'card_other_ganyu1': f'{title}/2021/01/12/745fc70073f22a37bb0238a06a53cfdb_1162143275141578017.png',
+ 'card_other_ganyu2': f'{title}/2021/01/12/57f6fcf67cd8859c3a6ff32597d9c99a_3170022474475150543.png',
+ 'card_other_gongzi1': f'{title}/2020/11/16/40e0bc9a555fcbbbdfb74a95d2e387ef_8519449231927106780.png',
+ 'card_other_gongzi2': f'{title}/2020/11/16/04b40cd1a848577f9cde336a3039c750_3996605459102489069.png',
+ 'card_other_kaeya1': f'{title}/2020/08/31/e05c2fe7d9ab737a25285c060aab1aa0_2111907448530751567.png',
+ 'card_other_kaeya2': f'{title}/2020/08/31/9c1e67747a78b5e22ae3834814c57a8f_6116180424455008670.png',
+ 'card_other_keqing1': f'{title}/2020/08/31/1f62425cec6ffc21ecf4c8f0da499ac7_4928089850342437737.png',
+ 'card_other_keqing2': f'{title}/2020/08/31/3a6f0d284e2ab862c82ee3a07d6ffbc7_7794570330643971174.png',
+ 'card_other_klee1': f'{title}/2020/08/31/b120c4ac7c695d3aaf55441eb43600d1_4487729736509862376.png',
+ 'card_other_klee2': f'{title}/2020/08/31/08aa6011f26df790dbf2681678f1d7e9_2796140925707265189.png',
+ 'card_other_klee3': f'{title}/2020/08/31/c00aa8fa9d2cbf9edcccd50b457ae5a6_5422323085963273352.png',
+ 'card_other_leize1': f'{title}/2020/08/31/34bde2a566136897ab22932a9001d572_4843575850627066457.png',
+ 'card_other_leize2': f'{title}/2020/08/31/bd6894fa5c5daa833b4eede40cf01385_2519521084432177379.png',
+ 'card_other_lisa1': f'{title}/2020/08/31/c23a633e2eb72a10fb51198550d59a8a_542776791456547653.png',
+ 'card_other_lisa2': f'{title}/2020/08/31/a46cccf622c2d4dbff6c5353b936eee4_1652272197678612672.png',
+ 'card_other_mona1': f'{title}/2020/08/31/20ae5d9e7ea88ee27dd02208714e622e_2311908118844083107.png',
+ 'card_other_mona2': f'{title}/2020/08/31/da669761dcbd5c029bda0a62bccb301e_8046604345851128002.png',
+ 'card_other_ningguang1': f'{title}/2020/08/31/c11a5c5c90d54c98f10c6f257e8eac01_6529728627802398273.png',
+ 'card_other_ningguang2': f'{title}/2020/08/31/4165b7cb43e3369a279ccef46c295769_3879970605580805258.png',
+ 'card_other_nuoaier1': f'{title}/2020/08/31/3df9ee03bc4629e6e2af3c7225674543_2742734744870268629.png',
+ 'card_other_nuoaier2': f'{title}/2020/08/31/051cb060351937831252e395f65834c8_6289474038603880117.png',
+ 'card_other_qin1': f'{title}/2020/08/31/95c9ef420173047f635e963db2dae3f6_5948753857591750018.png',
+ 'card_other_qin2': f'{title}/2020/08/31/b45dd906708dbd5ceff7960bd48baab7_605993513095277023.png',
+ 'card_other_qiqi1': f'{title}/2020/08/31/b373e3bcb24285b96fd106747c9be482_2380875567755087743.png',
+ 'card_other_qiqi2': f'{title}/2020/08/31/e17547277f4dfb7bc96f764536b19406_3629575916992344590.png',
+ 'card_other_qiqi3': f'{title}/2020/08/31/58b24db38da079a9230e37d741b940c3_7709490267389090600.png',
+ 'card_other_shatang1': f'{title}/2020/08/31/315f96761caa9b22993180d529e6c935_169150677634938584.png',
+ 'card_other_shatang2': f'{title}/2020/08/31/e4a7ff004ee5d04678add5bb7c3c5fd9_506219715714537000.png',
+ 'card_other_venti1': f'{title}/2020/08/31/80905774b30aaa4b26a5b75926dcf7b3_222995534350028202.png',
+ 'card_other_venti2': f'{title}/2020/08/31/c75eb06e4d0b7856652c9893af2da63e_5411923475027982287.png',
+ 'card_other_xiangling1': f'{title}/2020/08/31/d19849df8be15bff53cdc0a0146f534a_1468443590902001424.png',
+ 'card_other_xiangling2': f'{title}/2020/08/31/a105a4aca30bdf8348519140736c306d_5118343542859881269.png',
+ 'card_other_xingqiu1': f'{title}/2020/09/27/ad7183031224452a2894b9516fd571ad_3529083730481381114.png',
+ 'card_other_xingqiu2': f'{title}/2020/09/27/1761487a5da1ea037be6ae80d24e1423_9220243684814419617.png',
+ 'card_zero_paimeng1': f'{title}/2020/08/31/a27f1224a0b149c684ecb3a1d3f7a4ec_2661825294156591596.png',
+ 'card_zero_paimeng2': f'{title}/2020/08/31/cb137a55d6527cd2cde1d0b47e13592f_4335931514300413032.png',
+ 'card_zero_paimeng3': f'{title}/2020/08/31/1231b4066fb103409b43466c61fa4e5c_7013106042012366406.png',
+ 'card_zero_qiu1': f'{title}/2020/08/31/dd329cd9e5980421bef3354e334d73a0_2484329576384567186.png',
+ 'card_zero_qiu2': f'{title}/2020/08/31/b3eb2286d9945c3caf695c3992bc93e2_4449302548761785968.png',
+ 'card_zero_qiu3': f'{title}/2020/08/31/7a15e33790ef2d513a5e6e7760cbc7be_8171554806202001370.png',
+}
+
+
+async def get_meme_img() -> bytes:
+ url = random.choice(list(meme_dict.values()))
+ data = httpx.get(url).content
+ return data
diff --git a/GenshinUID/genshinuid_mys/get_mys_data.py b/GenshinUID/genshinuid_mys/get_mys_data.py
new file mode 100644
index 00000000..2e70696d
--- /dev/null
+++ b/GenshinUID/genshinuid_mys/get_mys_data.py
@@ -0,0 +1,85 @@
+import json
+from typing import List
+from pathlib import Path
+
+TASK_PATH = Path(__file__).parent / 'task.json'
+
+with open(TASK_PATH, "r", encoding='UTF-8') as f:
+ task_data = json.load(f)
+
+task_im = '''「任务」 {}{}
+「攻略」 {}'''
+
+extra_im = '''
+「类型」 {}
+「地区」 {}
+「时长预估」 {}
+「版本」 {}'''
+
+
+async def _get_tag(result_task: dict) -> str:
+ if result_task['ext'] != '{}':
+ detail = json.loads(r'%s' % result_task['ext'])
+ detail = detail['c_231']
+ tag = detail['filter']['text'].replace('","', '|')[2:-2]
+ tag_list = tag.split('|')
+ tag_data = {}
+ for i in tag_list:
+ tag_data[i.split('/')[0]] = i.split('/')[1]
+
+ type = tag_data['任务类型']
+ region = tag_data['所属区域']
+ time = tag_data['任务耗时']
+ version = tag_data['版本']
+ extra = extra_im.format(type, region, time, version)
+ else:
+ extra = ''
+ title = result_task['title']
+ url = result_task['bbs_url']
+ title = title.replace('羊皮卷', '')
+ im = task_im.format(title, extra, url)
+
+ return im
+
+
+async def get_task_detail(task_name: str) -> str:
+ all_task = task_data['data']['list'][0]['children']
+ task_list = []
+
+ for item in all_task:
+ task_list.extend(item['list'])
+
+ for task in task_list:
+ if task_name in task['title']:
+ result_task = task
+ break
+ else:
+ return '没有找到该任务...'
+
+ im = await _get_tag(result_task)
+
+ return im
+
+
+async def get_region_task(region: str) -> List[List[str]]:
+ all_task = task_data['data']['list'][0]['children']
+
+ task_list = []
+ for item in all_task:
+ if region in item['name']:
+ task_list.extend(item['list'])
+ break
+ else:
+ return []
+
+ all_list = []
+ mes_list = []
+ for index, task in enumerate(task_list):
+ tag = await _get_tag(task)
+ mes_list.append(tag)
+ if index != 0 and index % 44 == 0:
+ all_list.append(mes_list)
+ mes_list = []
+ all_list.append(mes_list)
+
+ return all_list
diff --git a/GenshinUID/genshinuid_mys/task.json b/GenshinUID/genshinuid_mys/task.json
new file mode 100644
index 00000000..deb57cae
--- /dev/null
+++ b/GenshinUID/genshinuid_mys/task.json
@@ -0,0 +1 @@
+{"retcode":0,"message":"OK","data":{"list":[{"id":45,"name":"任务手册","parent_id":37,"depth":2,"ch_ext":"[{\"type\":\"text\",\"attribute_name\":\"每行展示词条个数\",\"attribute_key\":\"col_per_row\",\"value\":\"1\"},{\"type\":\"text\",\"attribute_name\":\"展示样式\",\"attribute_key\":\"display_type\",\"value\":\"collection\"},{\"type\":\"text\",\"attribute_name\":\"频道icon\",\"attribute_key\":\"icon_url\",\"value\":\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/75379475/3e25a8e5e9e7f7b09e685c40ab3f70e8_1164774549560676666.png\"},{\"type\":\"text\",\"attribute_name\":\"跳转链接\",\"attribute_key\":\"jump_url\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc\",\"attribute_key\":\"icon_url_pc\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc-hover\",\"attribute_key\":\"icon_url_pc_hover\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"筛选器\",\"attribute_key\":\"filter\",\"value\":\"[]\"},{\"type\":\"text\",\"attribute_name\":\"首页更多\",\"attribute_key\":\"home_more\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"在目录中展示\",\"attribute_key\":\"show_in_catalog\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"最新词条\",\"attribute_key\":\"is_latest\",\"value\":\"0\"},{\"type\":\"text\",\"attribute_name\":\"更多入口icon\",\"attribute_key\":\"king_kong_icon\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道描述\",\"attribute_key\":\"description\",\"value\":\"雪山攻略已更新\"},{\"type\":\"text\",\"attribute_name\":\"频道图片\",\"attribute_key\":\"img\",\"value\":\"https://uploadstatic.mihoyo.com/ys-obc/2020/10/18/75379477/5d6c9cc4c5bf9c2b14d3af5ea0df1dc8_6534098018014147011.png\"}]","children":[{"id":231,"name":"任务大全","parent_id":45,"depth":3,"ch_ext":"[{\"type\":\"text\",\"attribute_name\":\"每行个数\",\"attribute_key\":\"col_per_row\",\"value\":\"2\"},{\"type\":\"text\",\"attribute_name\":\"展示样式\",\"attribute_key\":\"display_type\",\"value\":\"taskFilter\"},{\"type\":\"text\",\"attribute_name\":\"频道icon\",\"attribute_key\":\"icon_url\",\"value\":\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/16314655/eed5d182c713c7fe4c7ce02590424409_3952777547060978175.png\"},{\"type\":\"text\",\"attribute_name\":\"跳转链接\",\"attribute_key\":\"jump_url\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc\",\"attribute_key\":\"icon_url_pc\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc-hover\",\"attribute_key\":\"icon_url_pc_hover\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"筛选器\",\"attribute_key\":\"filter\",\"value\":\"[{\\\"label\\\":\\\"任务类型\\\",\\\"children\\\":[{\\\"label\\\":\\\"魔神任务\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"世界任务\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"传说任务\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"其他\\\",\\\"children\\\":[]}]},{\\\"label\\\":\\\"所属区域\\\",\\\"children\\\":[{\\\"label\\\":\\\"蒙德\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"璃月\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"稻妻\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"须弥\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"其他\\\",\\\"children\\\":[]}]},{\\\"label\\\":\\\"任务奖励\\\",\\\"children\\\":[{\\\"label\\\":\\\"原石\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"摩拉\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"经验书\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"小道具\\\",\\\"children\\\":[]}]},{\\\"label\\\":\\\"任务耗时\\\",\\\"children\\\":[{\\\"label\\\":\\\"长流程\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"短流程\\\",\\\"children\\\":[]}]},{\\\"label\\\":\\\"版本\\\",\\\"children\\\":[{\\\"label\\\":\\\"1.0\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"1.1\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"1.2\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"1.3\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"1.4\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"1.5\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"1.6\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.0\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.1\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.2\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.3\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.4\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.5\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.6\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.7\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"2.8\\\",\\\"children\\\":[]},{\\\"label\\\":\\\"3.0\\\",\\\"children\\\":[]}]}]\"},{\"type\":\"text\",\"attribute_name\":\"首页更多\",\"attribute_key\":\"home_more\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"在目录中展示\",\"attribute_key\":\"show_in_catalog\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"最新词条\",\"attribute_key\":\"is_latest\",\"value\":\"0\"},{\"type\":\"text\",\"attribute_name\":\"更多入口icon\",\"attribute_key\":\"king_kong_icon\",\"value\":\"\"}]","children":[],"list":[{"content_id":2189,"title":"最后的宝藏","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_6336054298422935650.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8997401237227358173.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/16/232866066/6058a9cda347decae60db9c4d345d4eb_5260600747926828086.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27381527","article_user_name":"Dramaturge","article_time":"1660603732","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"最后的宝藏"},{"content_id":2188,"title":"凶猛动物在哪里","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6896380468654831788.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1297699461776464867.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/8cd38553664732f29ee5bacc9a7baf41_6669277956419965812.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27984789","article_user_name":"Dramaturge","article_time":"1661473749","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"凶猛动物在哪里"},{"content_id":2187,"title":"勇气戴于心上","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8194896462743542567.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2561843745400712757.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/b56dbea1f8f05941db4020e74a8dca9e_1415533372434792074.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27985036","article_user_name":"猫冬","article_time":"1661474072","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"勇气戴于心上"},{"content_id":2186,"title":"静态风景·后篇","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2836147513472315096.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9103756581087362988.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/4fdcf5b3051e0df768a11c8ae592991a_3073948150550658238.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27985316","article_user_name":"猫冬","article_time":"1661474509","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"静态风景·后篇"},{"content_id":2185,"title":"静态风景","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6876009251616964269.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_773441285183487681.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/4fdcf5b3051e0df768a11c8ae592991a_3073948150550658238.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27985316","article_user_name":"猫冬","article_time":"1661474509","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"静态风景"},{"content_id":2184,"title":"石锁机关秘话","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8450892092184006925.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_944901787911909039.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/51dcad740bdf98b4cba25f4c4614585d_1385128218782090439.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27987198","article_user_name":"猫冬","article_time":"1661477067","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"石锁机关秘话"},{"content_id":2183,"title":"揭示兽径的曲调","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8815908055799384888.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4319182456171938685.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/6014189fc075d3a462ddb815aeb91b79_1674619304987474490.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28035385","article_user_name":"FTFuture","article_time":"1661541079","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"揭示兽径的曲调"},{"content_id":2182,"title":"新芽迸发的曲调","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2625436603906985636.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3696380346220986365.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/34f64d0da1d24d56352a5d436a57b744_5274808509522822828.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28034627","article_user_name":"FTFuture","article_time":"1661538173","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"新芽迸发的曲调"},{"content_id":2181,"title":"通往黯道的曲调","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2121418007132829565.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4922028749378678087.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/b8726240a2b221b90c8c1e0c006e690f_3596767994698589456.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28033210","article_user_name":"FTFuture","article_time":"1661534442","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"通往黯道的曲调"},{"content_id":2180,"title":"兽有失蹄","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_7074004279443824092.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2963441312392590380.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/feb0cd21f8fe1c31b0b80b4f97e34675_8651490379371147852.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28041173","article_user_name":"FTFuture","article_time":"1661562230","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"兽有失蹄"},{"content_id":2179,"title":"趁梦想气息逗留","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6901631443039286580.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1971527676767072854.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/c8db14500c04a4de67d553a5fe80ce62_7581181511570361553.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28044182","article_user_name":"FTFuture","article_time":"1661566888","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"趁梦想气息逗留"},{"content_id":2178,"title":"智中之宝·新计划","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1363530333373981315.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7168198754792083396.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/28/4896641/6715657adab8d6ec577da0f4fefc866c_8895717428669179399.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28111431","article_user_name":"FTFuture","article_time":"1661676906","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"智中之宝·新计划"},{"content_id":2177,"title":"回忆终章","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6586654049307533492.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2239993992952543344.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"回忆终章"},{"content_id":2176,"title":"兰纳迦的回忆","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6140986953698036021.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7571888457080150566.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"兰纳迦的回忆"},{"content_id":2175,"title":"兰迦鲁的涂鸦","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1504769124654212096.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3834592621276750803.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"兰迦鲁的涂鸦"},{"content_id":2174,"title":"兰纳真的老友","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_4709525942510959216.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_492268168440378479.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"兰纳真的老友"},{"content_id":2173,"title":"直到「桓那」痊愈","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_5937986080553022133.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4160779603201013436.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/dbfe679aaf9ce323c84c753b65eaa5a5_6568719843398160196.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28144183","article_user_name":"Dramaturge","article_time":"1661733972","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"直到「桓那」痊愈"},{"content_id":2172,"title":"愚人者人愚之","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2004493427828713331.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_433756104049598898.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/4896641/e748dc06d66b0956711332a86799ceeb_5124801985741034622.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28177038","article_user_name":"FTFuture","article_time":"1661775481","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"愚人者人愚之"},{"content_id":2171,"title":"代价","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_214819351608391735.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6077774127711856614.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/680a016eef5641fe716e3fbb16e7963f_2719878020671264632.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28039883","article_user_name":"FTFuture","article_time":"1661559924","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"代价"},{"content_id":2128,"title":"失梦的苗圃","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_3317717166177454705.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6753638149780139936.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/8f0d344a7dc40d44629683039f8cd876_5307527649532857098.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27958072","article_user_name":"猫冬","article_time":"1661429434","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"失梦的苗圃"},{"content_id":2127,"title":"最终,森林会记住一切","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_7925555625519373913.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2085189661920724822.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/2718f42b6e85a20805f477a761ec1157_8569919818260092316.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27959018","article_user_name":"猫冬","article_time":"1661430574","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"最终,森林会记住一切"},{"content_id":2126,"title":"正法炬书","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1689409855256863338.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6923718180415545233.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/6de162d5ab3aee0a6a9b426a1fc6a866_4007012364048682657.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27959566","article_user_name":"猫冬","article_time":"1661431198","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"正法炬书"},{"content_id":2125,"title":"愿为一炊之梦","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6318013461213137071.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5559288044984593996.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/2e22a9d8e5cccbe9d6db5357bdecfbfb_8587794117813420061.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27961264","article_user_name":"猫冬","article_time":"1661433128","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"愿为一炊之梦"},{"content_id":2124,"title":"新蓓萌生","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8790557952753057663.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2129702648662016238.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/29dd4bc6cd202b5f66ba9c899e7968bf_8573965571868981533.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27897177","article_user_name":"猫冬","article_time":"1661348359","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"新蓓萌生"},{"content_id":2123,"title":"吉祥具书","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_5543754515835864638.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_523562964340647717.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/271194bfd9d016dae53247d182d67df0_2353390460500254146.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27895851","article_user_name":"猫冬","article_time":"1661347411","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"吉祥具书"},{"content_id":2122,"title":"水天供书","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_3184385665349189779.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9124913837172865328.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/58054f92155f0b10251a6866337acb17_6540688010847579351.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27948126","article_user_name":"Slothw","article_time":"1661417671","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"水天供书"},{"content_id":2121,"title":"梦中的苗圃","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_7836224974905062767.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1522514970762790553.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/a05f1198d43b353845199fa9a1ecb2ff_602651168112755263.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27891900","article_user_name":"猫冬","article_time":"1661343893","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"梦中的苗圃"},{"content_id":2120,"title":"林中奇遇","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1003988700627651088.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7341723604240082635.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/549b1e58cf08302d07accf44ac131558_372965616930859556.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27890599","article_user_name":"猫冬","article_time":"1661342749","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"林中奇遇"},{"content_id":2060,"title":"陌野不识故人","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_7772986626557647459.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/a76af11210fa399a660b2b3c92935b43_4142828051285079742.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/13/74019947/2493677cea8676622a2b7f3821b4d8f3_458987288809130050.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25510155","article_user_name":"猫冬","article_time":"1657699082","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"陌野不识故人"},{"content_id":2059,"title":"妖狸的赠礼","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/6ca84128f3c051b4c181c2d2357d6548_8268268941914562417.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9218814128184060706.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/21/232866066/4dc51398fc51453b410b1bb559a1b17b_595031931138515006.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25997258","article_user_name":"Dramaturge","article_time":"1658362238","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"妖狸的赠礼"},{"content_id":2058,"title":"极夜幻想剧·王女执剑记!","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"任务类型/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/9a467e4df89f786c71dbcdc2b74e7b60_3239756429787623094.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3416285704718339727.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/18/74019947/2968c4d11dc2975b4f99609b9c390172_8071063023184365057.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25826795","article_user_name":"猫冬","article_time":"1658111219","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"极夜幻想剧·王女执剑记!"},{"content_id":2057,"title":"浪花不再归海","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.5\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/6ca84128f3c051b4c181c2d2357d6548_6111499561800750791.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/a76af11210fa399a660b2b3c92935b43_6514398131468841094.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/05/18/4896641/4f94a960e8275871f56e16b1134f519b_5281633889814609727.png","bbs_url":"https://bbs.mihoyo.com/ys/article/6235729","article_user_name":"FTFuture","article_time":"1621341278","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"浪花不再归海"},{"content_id":2056,"title":"翠石砌玉壶","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.5\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/67bba95f420cf06d291edb5a63b86a5a_1217804064916116076.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3864142894171385166.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/13/74019947/e438f15653230d6c64826c73b81d4deb_421722047606896237.png","bbs_url":"https://bbs.mihoyo.com/ys/article/24049373","article_user_name":"猫冬","article_time":"1655110357","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"翠石砌玉壶"},{"content_id":2055,"title":"渴望旅行的妖狸","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_4860389088362908406.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/28/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2432562458999248308.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/16/74019947/b07ee1e997e6de5f9f50d7810bb563c8_4143720779343259010.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25732823","article_user_name":"猫冬","article_time":"1657972203","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"渴望旅行的妖狸"},{"content_id":2051,"title":"正因其徒劳","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/2.8\\\",\\\"任务耗时/长流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_7780303261622322255.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6652327358358541425.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/a831114d80e6582068bab00f19bb767c_2256646260569956917.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25916077","article_user_name":"猫冬","article_time":"1658229361","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"正因其徒劳"},{"content_id":2050,"title":"被错置的海螺","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/2.8\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_7501671441228976566.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1283944495827197487.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/ae2a5561a67e6a933ff71911bae2be56_7515901277912766648.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25913567","article_user_name":"猫冬","article_time":"1658226198","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"被错置的海螺"},{"content_id":2049,"title":"被抛出的徽记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_3760184969666303188.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4086614389241536644.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/45d23ed5535179358f2db7acd3f67d1d_8297823968339103587.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25912577","article_user_name":"猫冬","article_time":"1658224975","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"被抛出的徽记"},{"content_id":2048,"title":"被丢失的合照","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_1299297672548550989.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6609236783984434341.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/8642a0e003303729b70ef96c24f86579_4559897197163066566.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25911910","article_user_name":"猫冬","article_time":"1658224140","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"被丢失的合照"},{"content_id":2047,"title":"四礁觅宝记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/25/6276411/9a467e4df89f786c71dbcdc2b74e7b60_6405841825108820889.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_4029839878280702424.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/d67b3214e0f4c9d6f263838131b5a982_6448656731502144503.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25918395","article_user_name":"猫冬","article_time":"1658232188","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"四礁觅宝记"},{"content_id":2046,"title":"寻物航行","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_2681198054229352335.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2006688078062460103.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/6f325536344bc7265d0425c9bdef7d3c_1494279792781904305.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25916760","article_user_name":"猫冬","article_time":"1658230233","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"寻物航行"},{"content_id":2005,"title":"映影书写札记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"版本/2.8\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/13/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2879436985357147155.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/13/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6747731111452498378.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/13/74019947/30a55bff3ff0e57204dad3f3a5367531_676209823905276327.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25486917","article_user_name":"猫冬","article_time":"1657688040","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"映影书写札记"},{"content_id":2004,"title":"鹿野院平藏 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/2.8\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/13/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2796510025722665558.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/13/6276411/a76af11210fa399a660b2b3c92935b43_4162764820540527238.png\"]}}}","icon":"https://uploadstatic.mihoyo.com/ys-obc/2022/07/13/6276411/58ec16ba19371238952ee2c328938298_93010993743454947.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25493196","article_user_name":"橙柒柒","article_time":"1657690263","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"鹿野院平藏邀约事件"},{"content_id":1953,"title":"久歧忍 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/21/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_8034861791453206220.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/21/6276411/a76af11210fa399a660b2b3c92935b43_2165998223463217596.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/21/82367888/380be623f99b19f3799deb6f2814bb05_3397563807258576791.png","bbs_url":"https://bbs.mihoyo.com/ys/article/24452369","article_user_name":"橙柒柒","article_time":"1655811254","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"久歧忍邀约事件"},{"content_id":1942,"title":"暗夜英雄的不在场证明","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/11/6276411/6ca84128f3c051b4c181c2d2357d6548_5557470954196569402.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/11/6276411/a76af11210fa399a660b2b3c92935b43_7266500048156049225.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/10/74019947/97826d9dc33dd38d835fcca263e71007_3548015588281288541.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23900728","article_user_name":"猫冬","article_time":"1654851290","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"暗夜英雄的不在场证明"},{"content_id":1941,"title":"拾枝者·戴因斯雷布","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/魔神任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/14/16314655/6ca84128f3c051b4c181c2d2357d6548_634686705127026937.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/14/16314655/588c58cb2bf7d27ff62a1a4be3bb084b_242514224644271840.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/10/74019947/eaa8b76efcb9239ef9eb604704a5da05_9166185606647011953.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23894979","article_user_name":"猫冬","article_time":"1654842237","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"拾枝者·戴因斯雷布"},{"content_id":1938,"title":"台上台下","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.7\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/67bba95f420cf06d291edb5a63b86a5a_474304883291235598.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8607769840127960875.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/31/74019947/87b66a6ab89452ac3ba495818030dd0c_8904485415515933522.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23377233","article_user_name":"猫冬","article_time":"1653980157","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"台上台下"},{"content_id":1937,"title":"加尔恰的赞歌","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.7\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/67bba95f420cf06d291edb5a63b86a5a_7843716229925511888.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5203352933914335460.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/31/74019947/132aa1ba2baa43bef20303a3ba8626dd_1886473812289285899.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23378548","article_user_name":"猫冬","article_time":"1653981364","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"加尔恰的赞歌"},{"content_id":1936,"title":"扇底春秋","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.7\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/67bba95f420cf06d291edb5a63b86a5a_5031719552336485639.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_83944588503103329.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/02/74019947/a41ad627711dae76e74ac309da954721_157733338651539999.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23504204","article_user_name":"猫冬","article_time":"1654138561","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"扇底春秋"},{"content_id":1935,"title":"棋生断处","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.7\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/67bba95f420cf06d291edb5a63b86a5a_1989955147237773426.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/06/09/6276411/a76af11210fa399a660b2b3c92935b43_6997424737750676218.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/02/74019947/4bc4c93eab803dc088b3db113dfb645e_6220946137099171357.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23551644","article_user_name":"猫冬","article_time":"1654193697","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"棋生断处"},{"content_id":1910,"title":"卢皮卡的意义","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/30/6276411/6ca84128f3c051b4c181c2d2357d6548_1528895320241094403.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/30/6276411/a76af11210fa399a660b2b3c92935b43_7533479055703892627.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/27/74019947/147589d27492f18a210adb6d08828f82_3994922304295190820.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23171672","article_user_name":"猫冬","article_time":"1653652747","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"卢皮卡的意义"},{"content_id":1909,"title":"风、勇气与翅膀","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/30/6276411/6ca84128f3c051b4c181c2d2357d6548_6319651216952941420.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/30/6276411/a76af11210fa399a660b2b3c92935b43_7305296475267348800.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/27/74019947/f2a82e342637bfc4f68c82aca37d4a51_586906584908941998.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23168004","article_user_name":"猫冬","article_time":"1653646871","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"风、勇气与翅膀"},{"content_id":1902,"title":"海盗秘宝","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/19/6276411/6ca84128f3c051b4c181c2d2357d6548_7774659715844378117.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/19/6276411/a76af11210fa399a660b2b3c92935b43_6553252970932585473.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/17/74019947/464b8d0375359d65bc8e60f94838b1cb_8187557145545397469.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22595122","article_user_name":"猫冬","article_time":"1652784780","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"海盗秘宝"},{"content_id":1900,"title":"每天都是新的冒险","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ca84128f3c051b4c181c2d2357d6548_4941526891063414583.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8571919167383626947.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/13/74019947/5ac0d5cf7437c566f5f77367d4bc26bc_2339282446843313637.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22320493","article_user_name":"猫冬","article_time":"1652440970","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"每天都是新的冒险"},{"content_id":1899,"title":"巨龙与自由之歌","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.0\\\",\\\"任务类型/魔神任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ca84128f3c051b4c181c2d2357d6548_531929239853172181.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/588c58cb2bf7d27ff62a1a4be3bb084b_3843547205830421203.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/12/74019947/345fbe45d1a400042e0ea1d915aed470_3254492627465597355.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22252508","article_user_name":"猫冬","article_time":"1652347857","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"巨龙与自由之歌"},{"content_id":1898,"title":"蒙德城的骑士","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ca84128f3c051b4c181c2d2357d6548_5817822313039942176.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3059640524231655080.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/13/74019947/083bb34f54e6b96d64b37d6629315125_2544918646516292733.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22331425","article_user_name":"猫冬","article_time":"1652454045","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"蒙德城的骑士"},{"content_id":1897,"title":"采矿之道","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ca84128f3c051b4c181c2d2357d6548_5427324977537283209.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1907585282191621793.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/14/74019947/7354adacd6c7004e2c0be23832d30505_557264409741338950.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22390183","article_user_name":"猫冬","article_time":"1652532702","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"采矿之道"},{"content_id":1896,"title":"收集风之印的少女","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ca84128f3c051b4c181c2d2357d6548_5619161475082218255.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4273401169298203290.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/11/74019947/9473884d5cdb0045ef5d7100e2df8f87_9039749716360438968.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22204184","article_user_name":"猫冬","article_time":"1652276990","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"收集风之印的少女"},{"content_id":1895,"title":"欢迎来到冒险家协会","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ca84128f3c051b4c181c2d2357d6548_2087622792481639510.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1773321972672582740.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/13/74019947/5ac0d5cf7437c566f5f77367d4bc26bc_2339282446843313637.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22320493","article_user_name":"猫冬","article_time":"1652440970","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"欢迎来到冒险家协会"},{"content_id":1894,"title":"繁忙的冒险家协会","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ca84128f3c051b4c181c2d2357d6548_2893643786627442560.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/16/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1676923690010523160.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/13/74019947/5ac0d5cf7437c566f5f77367d4bc26bc_2339282446843313637.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22320493","article_user_name":"猫冬","article_time":"1652440970","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"繁忙的冒险家协会"},{"content_id":1863,"title":"凝光 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/67bba95f420cf06d291edb5a63b86a5a_6974120060208386543.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_2023766442358485456.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/01/05/82367888/458e886030cc0eb724fdbf695d56bfab_6263738397353651495.png","bbs_url":"https://bbs.mihoyo.com/ys/article/14173044","article_user_name":"橙柒柒","article_time":"1641365787","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"凝光 邀约事件(一)"},{"content_id":1862,"title":"云堇 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/67bba95f420cf06d291edb5a63b86a5a_1221765900255039332.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_6517523119314876312.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/01/05/82367888/f08c63de5eb1f1eaf06040748b23fbbd_7569905650344798903.png","bbs_url":"https://bbs.mihoyo.com/ys/article/14160451","article_user_name":"橙柒柒","article_time":"1641358046","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"云堇 邀约事件(一)"},{"content_id":1861,"title":"班尼特 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_280313318317473735.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_4527294276089992965.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/03/18/82367888/fc6b952e2e286dd349b6a21fbcc8df51_8192525976918436117.png","bbs_url":"https://bbs.mihoyo.com/ys/article/5023317","article_user_name":"橙柒柒","article_time":"1616038529","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"班尼特 邀约事件(一)"},{"content_id":1860,"title":"重云 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/67bba95f420cf06d291edb5a63b86a5a_3808420617171960919.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_7007656085792866737.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/03/17/82367888/a9c0f994e12ac9b117a4cdff47c3ff43_7918499513727753838.png","bbs_url":"https://bbs.mihoyo.com/ys/article/5012121","article_user_name":"橙柒柒","article_time":"1615987202","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"重云 邀约事件(一)"},{"content_id":1859,"title":"芭芭拉 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_7730020472711279327.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_7186102749525118028.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/03/17/82367888/d8a8d08198ac3a81f1d1b71fa0d03007_7917787979546557952.png","bbs_url":"https://bbs.mihoyo.com/ys/article/4996360","article_user_name":"橙柒柒","article_time":"1615956121","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"芭芭拉 邀约事件(一)"},{"content_id":1858,"title":"诺艾尔 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_2594584343147924217.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_4465477392474687720.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/03/17/82367888/8c603cdcebb46ea8ac0a085311eaca1a_7432846257085712443.png","bbs_url":"https://bbs.mihoyo.com/ys/article/5003545","article_user_name":"橙柒柒","article_time":"1615967826","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"诺艾尔 邀约事件(一)"},{"content_id":1857,"title":"诺艾尔 邀约事件(二)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.5\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_5405552197429042169.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_1688673587152102842.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/04/28/82367888/d90a394af121c6954fd8a47b559bc5c6_4867189166646906316.png","bbs_url":"https://bbs.mihoyo.com/ys/article/5782692","article_user_name":"橙柒柒","article_time":"1619599240","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"诺艾尔 邀约事件(二)"},{"content_id":1856,"title":"迪奥娜 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"版本/1.5\\\",\\\"任务奖励/经验书\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_7360997150667603263.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_1572017014500221409.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/04/28/82367888/d350ec10320eb9cd58f80fc050789537_5978792343140836735.png","bbs_url":"https://bbs.mihoyo.com/ys/article/5784945","article_user_name":"橙柒柒","article_time":"1619603285","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"迪奥娜 邀约事件(一)"},{"content_id":1855,"title":"托马 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_6198741198722184814.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_3616017817092116157.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/10/13/82367888/f2005e0698eeb872dac7f2bab222369e_1473467123692402920.png","bbs_url":"https://bbs.mihoyo.com/ys/article/10855461","article_user_name":"橙柒柒","article_time":"1634110257","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"托马 邀约事件(一)"},{"content_id":1854,"title":"早柚 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3149872634882033234.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_8176569195545939251.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/10/13/82367888/9f605b3c3d28219451bf0437d562b0de_5981922913879700324.png","bbs_url":"https://bbs.mihoyo.com/ys/article/10851272","article_user_name":"橙柒柒","article_time":"1634104611","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"早柚 邀约事件(一)"},{"content_id":1853,"title":"北斗 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/67bba95f420cf06d291edb5a63b86a5a_2985461162390565713.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_337650951842534965.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/11/24/82367888/ee67519a326dce698bcba236642497bc_6402329460993443799.png","bbs_url":"https://bbs.mihoyo.com/ys/article/12312308","article_user_name":"橙柒柒","article_time":"1637737337","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"北斗 邀约事件(一)"},{"content_id":1852,"title":"五郎 邀约事件(一)","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_6757481059417714927.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/a76af11210fa399a660b2b3c92935b43_8572748533260817856.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/11/24/82367888/4270ee5e1d2cd0e4b5850eae8e5be4c2_1300415455224384974.png","bbs_url":"https://bbs.mihoyo.com/ys/article/12306281","article_user_name":"橙柒柒","article_time":"1637728833","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"五郎 邀约事件(一)"},{"content_id":1851,"title":"为了没有眼泪的明天","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/魔神任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_1731230712593465191.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/588c58cb2bf7d27ff62a1a4be3bb084b_2394551656019074018.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/10/74019947/bdf8dfdca611fdc6ffe2f0167725dd02_5610998866037341269.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22141322","article_user_name":"猫冬","article_time":"1652189038","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"【魔神任务】为了没有眼泪的明天"},{"content_id":1850,"title":"天遒宝迹","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/67bba95f420cf06d291edb5a63b86a5a_5888957064734106655.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8201518030598651005.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/02/03/4896641/0540239847c8c93c74706456aae71454_4275868569305635227.png","bbs_url":"https://bbs.mihoyo.com/ys/article/4045161","article_user_name":"FTFuture","article_time":"1612324690","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"1.3版本新增世界任务——「天遒宝迹」"},{"content_id":1849,"title":"循仙踪兮天遒","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/67bba95f420cf06d291edb5a63b86a5a_7796655257105216024.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_973957200169889667.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/02/07/254624368/7d5ea286fcacce12fca8dce1e571f4e5_6438587129899848290.jpg","bbs_url":"https://bbs.mihoyo.com/ys/article/17235065","article_user_name":"牛马随心所欲","article_time":"1644222021","avatar_url":"https://img-static.mihoyo.com/avatar/avatar1.png","summary":"璃月隐藏任务:循仙踪兮天遒"},{"content_id":1848,"title":"自外而来","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_7676146549451634521.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_183373825571230431.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/06/11/4896641/2e8151ae83f83440e909aa78ae412eef_2078337468295793865.png","bbs_url":"https://bbs.mihoyo.com/ys/article/6734452","article_user_name":"FTFuture","article_time":"1623384825","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"群岛世界任务——「自外而来」"},{"content_id":1847,"title":"雾与风的旅行","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_7947486623837102670.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8709685610248451646.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/06/11/4896641/54f22785f440a5bb3843685313dca8dd_4736487188305439591.png","bbs_url":"https://bbs.mihoyo.com/ys/article/6734561","article_user_name":"FTFuture","article_time":"1623385060","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"群岛世界任务系列的第二篇:「雾与风的旅行」"},{"content_id":1846,"title":"听海人","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_8886815812927188353.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1419410495173035521.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/06/11/4896641/b1295bf9e4fa5645e48e3cf0a5581eb2_2107811688743777324.png","bbs_url":"https://bbs.mihoyo.com/ys/article/6735048","article_user_name":"FTFuture","article_time":"1623386183","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"群岛世界任务系列的第六篇,世界任务「听海人」"},{"content_id":1845,"title":"狂风,听谁号令","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_5228827683588419951.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7638661618115361212.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/06/11/4896641/ad16333f12a542e55b25b7e2293849bf_7043222932879957059.png","bbs_url":"https://bbs.mihoyo.com/ys/article/6734711","article_user_name":"FTFuture","article_time":"1623385464","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"世界任务「狂风,听谁号令」"},{"content_id":1844,"title":"归乡路漫漫","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_722716852513858229.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4880859858252666108.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/06/11/4896641/4c8b43199f22968173b287b396c9b497_8179065170910637388.png","bbs_url":"https://bbs.mihoyo.com/ys/article/6734874","article_user_name":"FTFuture","article_time":"1623385804","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"群岛世界任务系列的第四篇「归乡路漫漫」"},{"content_id":1843,"title":"岛与海的彼端","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_7678734390165825341.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1620252052881587626.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2021/06/11/4896641/4a19a3e6e664f06c4f5359b4cf56a410_5215939564441771524.png","bbs_url":"https://bbs.mihoyo.com/ys/article/6734991","article_user_name":"FTFuture","article_time":"1623386025","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"1.6版本的群岛世界任务系列的第五篇,世界任务「岛与海的彼端」"},{"content_id":1842,"title":"随风而来的好味道","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_7277227492232562875.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_418254303591499693.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/02/21/297416354/953fb87c4b6d4e64d3d2a78e9b2a6068_472042462030540478.jpg","bbs_url":"https://bbs.mihoyo.com/ys/article/22317732","article_user_name":"猫冬","article_time":"1652437814","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"支线任务--随风而来的好味道"},{"content_id":1841,"title":"七神的赐福","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_3397962975771646644.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8948785423883719693.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22322044","article_user_name":"猫冬","article_time":"1652443064","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"七神的赐福"},{"content_id":1840,"title":"烹饪的诀窍","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_8427071108465305747.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7334483788879541102.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22199064","article_user_name":"猫冬","article_time":"1652271328","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"烹饪的诀窍"},{"content_id":1839,"title":"磨刀不误砍柴工","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_3020076777114425121.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_807300408725040810.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22201557","article_user_name":"猫冬","article_time":"1652274108","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"磨刀不误砍柴工"},{"content_id":1838,"title":"冒险要朝着远方","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_2912168087839674741.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7514996294974715007.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/03/74019947/01227071c1fd226c4e71f083fad9da74_9094086767247735297.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23555738","article_user_name":"猫冬","article_time":"1654209247","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"冒险要朝着远方"},{"content_id":1837,"title":"时不再来","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_2209518422909596321.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8459476922772307157.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/18/74019947/080f890b289a51eb9db8dd8c512d4f88_3087666961064499727.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22658562","article_user_name":"猫冬","article_time":"1652870903","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"时不再来"},{"content_id":1836,"title":"古代文明的智慧","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_7571849495373301137.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4589767290865797850.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22324079","article_user_name":"猫冬","article_time":"1652445936","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"古代文明的智慧"},{"content_id":1835,"title":"孤身犯险","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ca84128f3c051b4c181c2d2357d6548_1185053621690125158.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7792925542686182765.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/18/74019947/5a10ca30075763aea5a548f8adb3a04c_383129266074826270.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22663177","article_user_name":"猫冬","article_time":"1652876561","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"孤身犯险"},{"content_id":1834,"title":"风起鹤归","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/魔神任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_729242925672625624.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/588c58cb2bf7d27ff62a1a4be3bb084b_5199773028776752881.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14161476","article_user_name":"韩牧九","article_time":"1641358522","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"风起鹤归"},{"content_id":1833,"title":"须臾百梦","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.5\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3020209990235179768.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_3774267051321043694.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/17758139","article_user_name":"南有山","article_time":"1645014241","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/ac024f9aeb9c69fba82e02d861b9ca15.png","summary":"须臾百梦"},{"content_id":1832,"title":"梧桐一叶落","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_4655492432569653288.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_2841898077325814000.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19979681","article_user_name":"妍妍w","article_time":"1648982234","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/e910bdba0b8c2123c405a710f5d75387.png","summary":"梧桐一叶落"},{"content_id":1831,"title":"鸣神御祓祈愿祭","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.5\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_8691093581871990333.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_2765994931711129638.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/17760983","article_user_name":"阿怪ii","article_time":"1645016835","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/48fb4e10ae38e5f27d6657193fc5dcf4.png","summary":"鸣神御祓祈愿祭"},{"content_id":1830,"title":"赤金魂","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_1371598196466221943.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_812315433061001767.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/13090670","article_user_name":"韩牧九","article_time":"1639579316","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"赤金魂"},{"content_id":1829,"title":"云之海,人之海","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_7093570485148860605.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_3579340232139883787.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3967165","article_user_name":"墨小菊ぃ","article_time":"1611923882","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/22da75a41a928f397684a01826c26f33.png","summary":"云之海,人之海"},{"content_id":1828,"title":"奈何蝶飞去","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_6197201651732091131.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_6534014392862801433.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/4762026","article_user_name":"奥托世界第一可爱","article_time":"1614751425","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/92f9a25c45ed7de6056def887710e2be.png","summary":"奈何蝶飞去"},{"content_id":1827,"title":"槐柯胡蝶,傩佑之梦","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_6961534351531125588.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_8994566185218313003.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/4246665","article_user_name":"子旖","article_time":"1612940948","avatar_url":"https://img-static.mihoyo.com/avatar/avatar30015.png","summary":"槐柯胡蝶,傩佑之梦"},{"content_id":1826,"title":"匪石","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.5\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_8939415519798490996.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_4303531771151594968.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/5781243","article_user_name":"O丶Ha丶Yo","article_time":"1619596711","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6ccdb0f1f61743895ac049702f74a507.png","summary":"匪石"},{"content_id":1825,"title":"蒙德食遇之旅","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_559170994922704400.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_2989265623384747509.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/21993252","article_user_name":"封印的五花肉","article_time":"1651991354","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6ccdb0f1f61743895ac049702f74a507.png","summary":"蒙德食遇之旅"},{"content_id":1824,"title":"旅行者观察报告","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/传说任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_3385263068827239629.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_6320344997786747201.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3291028","article_user_name":"猫小火火","article_time":"1608738075","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6726c4c896d767d616f77d37b8072ff5.png","summary":"旅行者观察报告"},{"content_id":1823,"title":"险恶的教喻","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_356516173349270225.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6325069584874807931.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7804452","article_user_name":"Dramaturge","article_time":"1627106527","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"险恶的教喻"},{"content_id":1822,"title":"诸国游记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3003665526605459382.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4779353616139771368.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7768866","article_user_name":"Dramaturge","article_time":"1627029450","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"诸国游记"},{"content_id":1821,"title":"刀剑成梦","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_4696583568400947032.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4655582812129446149.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7762099","article_user_name":"Dramaturge","article_time":"1627018535","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"刀剑成梦"},{"content_id":1820,"title":"孤岛诊疗谭","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_7815877724667561617.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_401152779767256952.png\"]}}}","icon":"","bbs_url":"","article_user_name":"","article_time":"0","avatar_url":"","summary":"孤岛诊疗谭"},{"content_id":1819,"title":"「八重堂」的邀约","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_6987692083084225933.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7218672960440642929.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7753074","article_user_name":"Dramaturge","article_time":"1627003564","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"「八重堂」的邀约"},{"content_id":1818,"title":"海的那头是故乡","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_6028161931850004855.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2264704452844697190.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7731657","article_user_name":"Dramaturge","article_time":"1626953943","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"海的那头是故乡"},{"content_id":1817,"title":"离岛之路","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3312951584331428311.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7757166004281499522.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7728979","article_user_name":"Dramaturge","article_time":"1626950138","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"离岛之路"},{"content_id":1816,"title":"武者的宿命","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2568572986927056647.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5188382161024218396.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7723394","article_user_name":"Dramaturge","article_time":"1626941212","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"武者的宿命"},{"content_id":1815,"title":"执望三千里","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_7967637796879361491.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1763761166284701818.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7721614","article_user_name":"Dramaturge","article_time":"1626938155","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"执望三千里"},{"content_id":1814,"title":"医樱","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_4291665819433297271.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4413970371925872682.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7712806","article_user_name":"Dramaturge","article_time":"1626924627","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"医樱"},{"content_id":1813,"title":"农民的宝藏","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_7377306453515535154.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8611539596154071905.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7709362","article_user_name":"Dramaturge","article_time":"1626919806","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"农民的宝藏"},{"content_id":1812,"title":"远吕羽氏遗事","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3132018894989085762.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_771848345970388907.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7683376","article_user_name":"Dramaturge","article_time":"1626870358","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"远吕羽氏遗事"},{"content_id":1811,"title":"踏鞴物语","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_7879422188203004894.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2401577520338106465.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7674312","article_user_name":"Dramaturge","article_time":"1626860680","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"踏鞴物语"},{"content_id":1810,"title":"神樱大祓","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2134468269517322287.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8458771974488786304.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7659694","article_user_name":"Dramaturge","article_time":"1626846382","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"神樱大祓"},{"content_id":1809,"title":"全能美食队","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3560670042860620032.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8097120058968603992.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7651530","article_user_name":"Dramaturge","article_time":"1626840743","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"全能美食队包含:全能美食队!、全能美食队·神社的树、全能美食队·海滩横行者、全能美食队·深潜者、全能美食队·寻食之旅、每日委托:全能美食队·突破性思维、全能美食队·吃饱的重要性 以上任务"},{"content_id":1808,"title":"洗刷耻辱的一战","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_1320804586579329443.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2565747355959159534.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/8058534","article_user_name":"祈1","article_time":"1627789625","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fd15de4619235be293682c536bce6bd4.png","summary":"洗刷耻辱的一战"},{"content_id":1807,"title":"「手鞠游戏」","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_1952147355610299035.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1236664343456593865.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7938524","article_user_name":"Dramaturge","article_time":"1627445992","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"「手鞠游戏」"},{"content_id":1806,"title":"故事构思法","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3378799974736792973.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4538115039588559961.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18927750","article_user_name":"leopan","article_time":"1647130193","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/d3183774d0d6f7a41d670e7dbc4654e3.png","summary":"故事构思法"},{"content_id":1805,"title":"龙蛇藏归辑录","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务类型/世界任务\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/9080cd350b3601912c6e7d6cf5ce4cad_3318268422052076278.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2845021469077032724.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14175679","article_user_name":"猫冬","article_time":"1641367852","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"龙蛇藏归辑录包括:三色档案、安提戈努斯、伊达的挑战状。"},{"content_id":1804,"title":"千里之信","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2185523852419971192.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5126062130020719872.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18224596","article_user_name":"子秦月夜","article_time":"1645892482","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"千里之信"},{"content_id":1803,"title":"凯瑟琳,在稻妻","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_281241560301659967.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5214914313682423832.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18221364","article_user_name":"子秦月夜","article_time":"1645888439","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"凯瑟琳,在稻妻"},{"content_id":1802,"title":"南天门之谜","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_4661422431939195512.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2233489597484604773.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18134892","article_user_name":"子秦月夜","article_time":"1645704118","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"南天门之谜"},{"content_id":1801,"title":"永无止境的研究","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_5925853474669409431.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9039335288607791814.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18134791","article_user_name":"子秦月夜","article_time":"1645703913","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"永无止境的研究"},{"content_id":1800,"title":"畅畅和她的小伙伴","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_3155608326982011779.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_889592670263339245.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18134254","article_user_name":"子秦月夜","article_time":"1645702943","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"畅畅和她的小伙伴"},{"content_id":1799,"title":"冒险家协会的诸多事宜","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_5999109513780062632.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7640430174912451458.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18134129","article_user_name":"子秦月夜","article_time":"1645702717","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"冒险家协会的诸多事宜"},{"content_id":1798,"title":"承仙所托","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_3561805848193760301.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_557818141877006585.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18106490","article_user_name":"子秦月夜","article_time":"1645633644","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"承仙所托"},{"content_id":1797,"title":"捕风的异乡人","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/魔神任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_3008890471132619828.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/588c58cb2bf7d27ff62a1a4be3bb084b_2375831772571807661.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/21118137","article_user_name":"猫冬","article_time":"1651041437","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"捕风的异乡人"},{"content_id":1796,"title":"古云有「螭」","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_6829009621138598508.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4118329173678523119.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/23/74019947/a429ea9607679cd9e24f803400f69869_3456989866094800678.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22969109","article_user_name":"猫冬","article_time":"1653302664","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"古云有「螭」"},{"content_id":1795,"title":"怀宝应自珍","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_1666320571057713380.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7260506672916073285.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/1800598","article_user_name":"橙柒柒","article_time":"1600596104","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/a57113d5e6173a05f7980c978c5a2bd6.png","summary":"怀宝应自珍"},{"content_id":1794,"title":"灵矩有宝予何人","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_1460681250837133665.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2587809935460036812.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18137117","article_user_name":"子秦月夜","article_time":"1645708128","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"灵矩有宝予何人"},{"content_id":1793,"title":"靖世九柱","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_1907155362834064111.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3478336009507296325.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/23/74019947/e44db15688f95a7bcc35677f7e586e92_906032875446051760.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22982292","article_user_name":"猫冬","article_time":"1653318637","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"靖世九柱"},{"content_id":1792,"title":"探索剑冢封印","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_8338639409755485548.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2713062249454394221.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22388944","article_user_name":"猫冬","article_time":"1652531389","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"探索剑冢封印"},{"content_id":1791,"title":"书抵万金","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_6613153257003503413.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1672050219257555847.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18135143","article_user_name":"子秦月夜","article_time":"1645704566","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"书抵万金"},{"content_id":1790,"title":"必要手续","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_639649006435544375.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_645612207995184258.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18135232","article_user_name":"子秦月夜","article_time":"1645704778","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"必要手续"},{"content_id":1789,"title":"独木难支","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_3076038196451394295.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6028325981066126703.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18137209","article_user_name":"子秦月夜","article_time":"1645708330","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"独木难支"},{"content_id":1788,"title":"浮世浮生千岩间","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"任务类型/魔神任务\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_463860584247629426.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/588c58cb2bf7d27ff62a1a4be3bb084b_3494392319538190471.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/03/74019947/03ab3fe296fcb5264fdefa38afc8c13e_1451078376405344928.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23560601","article_user_name":"猫冬","article_time":"1654217894","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"浮世浮生千岩间"},{"content_id":1787,"title":"四方八方之网","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.3\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_1064038401962043264.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2324755506549962881.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/13261280","article_user_name":"mr.xiaoba","article_time":"1640001093","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/15ed0f56b48f97eefb749fd54c88f823.png","summary":"四方八方之网"},{"content_id":1786,"title":"肥料...推销员?","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_8455205113908812662.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6080405213182483974.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9857259","article_user_name":"千面xixi","article_time":"1632415632","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/318cd0420037d017cba3bfabd92d6d8e.png","summary":"肥料...推销员?"},{"content_id":1785,"title":"辞行久远之躯","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.1\\\",\\\"任务类型/魔神任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_2710324930688907335.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/588c58cb2bf7d27ff62a1a4be3bb084b_2977190133627894396.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/03/74019947/e0d7121d002c2e4e43185afd0c9c70bc_7981218133847509441.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23567086","article_user_name":"猫冬","article_time":"1654225275","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"辞行久远之躯"},{"content_id":1784,"title":"门户清理","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_8419879500463525370.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_209692488250791391.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/11034946","article_user_name":"Dramaturge","article_time":"1634459385","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"门户清理"},{"content_id":1783,"title":"健忘大王历险记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_4418858994740193497.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7843686761295372220.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/10928788","article_user_name":"猫冬","article_time":"1634246701","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"健忘大王历险记"},{"content_id":1782,"title":"迫近的客星","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.1\\\",\\\"任务类型/魔神任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_8250818542178515662.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/588c58cb2bf7d27ff62a1a4be3bb084b_1911660385664203165.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/07/74019947/1c907240a38bada556c22e03d5376cd5_9094975808716464652.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23744282","article_user_name":"猫冬","article_time":"1654570457","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"迫近的客星"},{"content_id":1781,"title":"风神与蒙德","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_3940848282947163240.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_895675482137406054.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19634639","article_user_name":"子秦月夜","article_time":"1648475010","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"风神与蒙德"},{"content_id":1780,"title":"此诗送此城","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_4419290192769820196.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4056252095384145125.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/2689933","article_user_name":"夜魇的克苏鲁","article_time":"1605483674","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/e910bdba0b8c2123c405a710f5d75387.png","summary":"此诗送此城"},{"content_id":1779,"title":"雾海纪行","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.2\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_1486652281030097424.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8714801874178025269.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/10843544","article_user_name":"猫冬","article_time":"1634097430","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"雾海纪行,要求特别多的作家,倾听木簧笛的八音曲,雾海与树之祭,日轮与菅名山"},{"content_id":1778,"title":"鸣神寻踪","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_6781731691985723633.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4720342583443262367.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9673463","article_user_name":"Dramaturge","article_time":"1632009216","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"鸣神寻踪"},{"content_id":1777,"title":"月浴之渊","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3428295248843421876.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4839115036443096053.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9140604","article_user_name":"Dramaturge","article_time":"1630500100","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"月浴之渊"},{"content_id":1776,"title":"寝子是只猫","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.1\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_4913543977945704192.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_797898234218714173.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9125698","article_user_name":"三土呀","article_time":"1630486339","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"寝子是只猫"},{"content_id":1775,"title":"海渊仙草灵验记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_4772317909530678635.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7071434806352442970.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9119783","article_user_name":"Dramaturge","article_time":"1630481068","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"海渊仙草灵验记"},{"content_id":1774,"title":"此菜不应人间有","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"版本/1.6\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_4511018735918636084.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8405530807475990910.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/6685626","article_user_name":"xxxAA啊","article_time":"1623221271","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/bc0bd4bbc6da6ab930f64652868a033f.png","summary":"此菜不应人间有"},{"content_id":1773,"title":"恨繁囿兮作土","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_4813739094020715713.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2988579901708053433.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18137340","article_user_name":"子秦月夜","article_time":"1645708586","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"恨繁囿兮作土"},{"content_id":1772,"title":"完美留影","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.3\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_4603590724979159436.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5789838209219442080.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18136680","article_user_name":"子秦月夜","article_time":"1645707413","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"完美留影"},{"content_id":1771,"title":"孤独的海兽","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_5577277373128027689.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_860621406626914153.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9114337","article_user_name":"Dramaturge","article_time":"1630476696","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"孤独的海兽"},{"content_id":1770,"title":"低温调查","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_2218814225530700907.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4309228324510145677.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18021077","article_user_name":"子秦月夜","article_time":"1645452744","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"低温调查"},{"content_id":1769,"title":"低温预警","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_7536099532615541017.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3007040792570457385.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18021077","article_user_name":"子秦月夜","article_time":"1645452744","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"低温预警"},{"content_id":1768,"title":"山中之物","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_6919593839914078995.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7703005254556536986.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18022146","article_user_name":"","article_time":"0","avatar_url":"","summary":"山中之物"},{"content_id":1767,"title":"群玉阁…再现?","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_8684179722750525421.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2807293869482529002.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3711823","article_user_name":"FTFuture","article_time":"1610470778","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"群玉阁…再现?"},{"content_id":1766,"title":"海上拾玉","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_7075008148168184183.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5454991323779664081.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3710644","article_user_name":"FTFuture","article_time":"1610467636","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"海上拾玉"},{"content_id":1765,"title":"覆雪之国","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_2474646301912329536.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4320894355894135893.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3339349","article_user_name":"弥悦","article_time":"1608871344","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"覆雪之国"},{"content_id":1764,"title":"腐殖之牙","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_6305118044159659707.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4211301724382820029.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3339349","article_user_name":"弥悦","article_time":"1608871344","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"腐殖之牙"},{"content_id":1763,"title":"雪山谜踪","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_3443265856527208895.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3347446261814752561.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3302415","article_user_name":"悦弥","article_time":"1608783415","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"雪山谜踪"},{"content_id":1762,"title":"啊,新鲜的肉!","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_3424836226646827274.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1662689065278254656.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3302415","article_user_name":"弥悦","article_time":"1608783415","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"啊,新鲜的肉!"},{"content_id":1761,"title":"雪山大勘测","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_4038845740108937027.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4549155982112467512.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3282768","article_user_name":"三土呀","article_time":"1608723038","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"雪山大勘测"},{"content_id":1760,"title":"雪山再勘测","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_2875807273447707240.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2014350971538135677.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/3282768","article_user_name":"三土呀","article_time":"1608723038","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"雪山再勘测"},{"content_id":1759,"title":"暂行之策","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_567825350119151278.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2099457700405275875.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/1773201","article_user_name":"mr.xiaoba","article_time":"1600330084","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/15ed0f56b48f97eefb749fd54c88f823.png","summary":"暂行之策"},{"content_id":1758,"title":"黑岩之困","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_8951981266114536828.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7871738905392952074.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/1773201","article_user_name":"mr.xiaoba","article_time":"1600330084","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/15ed0f56b48f97eefb749fd54c88f823.png","summary":"黑岩之困"},{"content_id":1757,"title":"善后工作","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_2425267006727752782.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3619560697911674647.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22335023","article_user_name":"猫冬","article_time":"1652457580","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"善后工作"},{"content_id":1756,"title":"酒庄大扫除","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_2395028668475277398.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_582346863323348719.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22333985","article_user_name":"猫冬","article_time":"1652456533","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"酒庄大扫除"},{"content_id":1755,"title":"风后宝矿","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_7190560401642318829.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_717891612274764186.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22390183","article_user_name":"猫冬","article_time":"1652532702","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"风后宝矿"},{"content_id":1754,"title":"捕盗","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_6907587426381172756.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3380406758673033114.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/18/74019947/669bf9f0385983f08a794c4c632be0d1_2700344460052387621.png","bbs_url":"https://bbs.mihoyo.com/ys/article/22659639","article_user_name":"猫冬","article_time":"1652872355","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"捕盗"},{"content_id":1753,"title":"许伯利翁哀歌","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/2.4\\\",\\\"任务耗时/短流程\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/9080cd350b3601912c6e7d6cf5ce4cad_4903292867292728283.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5857315113379661097.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14187464","article_user_name":"猫冬","article_time":"1641378194","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"许伯利翁哀歌"},{"content_id":1752,"title":"白夜国晨昏记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.4\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/9080cd350b3601912c6e7d6cf5ce4cad_7183154970832116629.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5805608114094438980.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14161840","article_user_name":"猫冬","article_time":"1641358707","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"白夜国晨昏记"},{"content_id":1751,"title":"龙蛇洞宫试炼记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/9080cd350b3601912c6e7d6cf5ce4cad_1847598095060220624.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8570566913106053715.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14165556","article_user_name":"猫冬","article_time":"1641360670","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"龙蛇洞宫试炼记"},{"content_id":1750,"title":"厄瑞玻斯的秘密","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务耗时/长流程\\\",\\\"任务奖励/小道具\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/原石\\\",\\\"版本/2.4\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/9080cd350b3601912c6e7d6cf5ce4cad_8190145994339564854.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_5350568108691565926.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/01/05/74019947/2bf7c5aa1cd9ed537893af2f34b54b60_4226347022378124701.png","bbs_url":"https://bbs.mihoyo.com/ys/article/14182142","article_user_name":"猫冬","article_time":"1641373468","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"厄瑞玻斯的秘密包含:三隅道大演武"},{"content_id":1749,"title":"食莲者","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/9080cd350b3601912c6e7d6cf5ce4cad_2194281486538900666.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4457359378039874452.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14194307","article_user_name":"猫冬","article_time":"1641384053","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"食莲者"},{"content_id":1748,"title":"法厄同们全跳舞","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/9080cd350b3601912c6e7d6cf5ce4cad_5581139286716942658.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_465606526322820482.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14227598","article_user_name":"猫冬","article_time":"1641430129","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"法厄同们全跳舞"},{"content_id":1747,"title":"特别的御神签","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.4\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2699205438326445387.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_855563293842865764.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14232900","article_user_name":"猫冬","article_time":"1641437631","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"特别的御神签"},{"content_id":1746,"title":"身后事","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/璃月\\\",\\\"任务类型/世界任务\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_3391296217330000639.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1997009002265719225.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14285998","article_user_name":"猫冬","article_time":"1641522335","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"身后事包括:身后事·铜雀之迹、身后事·诸事平安、身后事·归于山中以上任务"},{"content_id":1745,"title":"文谷疑云","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.5\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_9179105774335805157.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1716665529828453575.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/17813126","article_user_name":"猫冬","article_time":"1645090693","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"文谷疑云"},{"content_id":1744,"title":"海洲逐雾","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.5\\\",\\\"任务类型/传说任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_8053625750570662997.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/a76af11210fa399a660b2b3c92935b43_679905080812453780.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/17815107","article_user_name":"猫冬","article_time":"1645092979","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"海洲逐雾"},{"content_id":1743,"title":"风暴后遗症","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_2028111121827263460.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4519036729751658810.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/29/74019947/6fcd65f0b752a8dc5da5ae5afddca9ea_2300697988411716026.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23280240","article_user_name":"猫冬","article_time":"1653834926","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"风暴后遗症"},{"content_id":1742,"title":"骑士团手册问答","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_7972144706453313665.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3838266596597680766.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22333419","article_user_name":"猫冬","article_time":"1652455905","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"骑士团手册问答"},{"content_id":1741,"title":"轻飘飘的花与芙萝拉","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_4035547785627014488.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4488382668973549572.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22338997","article_user_name":"猫冬","article_time":"1652460065","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"轻飘飘的花与芙萝拉"},{"content_id":1740,"title":"风起风息","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ca84128f3c051b4c181c2d2357d6548_5736335735773700705.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_598641729192696217.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22334403","article_user_name":"猫冬","article_time":"1652456965","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"风起风息"},{"content_id":1739,"title":"大生意","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_7751462779494821376.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5574369046861118659.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18137546","article_user_name":"子秦月夜","article_time":"1645708883","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"大生意"},{"content_id":1738,"title":"千年千岩","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/d3b4fdfa5ea4d518b0ada52633dba414_113337717103763298.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9026048867197945842.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19725004","article_user_name":"猫冬","article_time":"1648625770","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"千年千岩"},{"content_id":1737,"title":"潜身敌营无人知","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"版本/2.6\\\",\\\"任务耗时/长流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/d3b4fdfa5ea4d518b0ada52633dba414_5715433292417219415.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7314764492200369075.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19724578","article_user_name":"猫冬","article_time":"1648625279","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"潜身敌营无人知"},{"content_id":1736,"title":"灵石何故堕此间","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/d3b4fdfa5ea4d518b0ada52633dba414_7330533872996045672.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8011138792717301346.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19719317","article_user_name":"猫冬","article_time":"1648620433","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"灵石何故堕此间"},{"content_id":1735,"title":"孤木孑立,无林可依","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/67bba95f420cf06d291edb5a63b86a5a_2778557407532694609.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6643612205672639847.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18137011","article_user_name":"子秦月夜","article_time":"1645707896","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"孤木孑立,无林可依"},{"content_id":1734,"title":"勇气的余辉","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/2.6\\\",\\\"任务耗时/长流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_55376498892196375.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_201588248356446006.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19778642","article_user_name":"猫冬","article_time":"1648701059","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"勇气的余辉"},{"content_id":1733,"title":"方入巨渊初探勘","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"版本/2.6\\\",\\\"任务耗时/长流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_9102531138202962129.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7136328128645390911.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19717576","article_user_name":"猫冬","article_time":"1648618910","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"方入巨渊初探勘"},{"content_id":1732,"title":"九霄之石悬残片","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"版本/2.6\\\",\\\"任务耗时/长流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_2512122862052508769.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5189685185024708674.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19718251","article_user_name":"猫冬","article_time":"1648619481","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"九霄之石悬残片"},{"content_id":1731,"title":"黑翳渐浓隐凶险","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_3852672861501712669.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4949318743591771211.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19718817","article_user_name":"猫冬","article_time":"1648619970","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"黑翳渐浓隐凶险"},{"content_id":1730,"title":"冒险家…该干嘛?","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/67bba95f420cf06d291edb5a63b86a5a_6754973223208940091.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3968920380687446712.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18136079","article_user_name":"子秦月夜","article_time":"1645706310","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"冒险家…该干嘛?"},{"content_id":1729,"title":"失踪的矿工","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_7158670062478006180.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1009654289065065895.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19751803","article_user_name":"猫冬","article_time":"1648652814","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"失踪的矿工"},{"content_id":1728,"title":"水生环境调查","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_7747083983686844465.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1249981444064102651.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19736324","article_user_name":"猫冬","article_time":"1648637883","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"水生环境调查"},{"content_id":1727,"title":"层岩菌类调查","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_3992967637115680895.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7388505404812375030.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19735560","article_user_name":"猫冬","article_time":"1648637041","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"层岩菌类调查"},{"content_id":1726,"title":"古代生物调查","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_2515909861620723852.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2975594457629330859.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19734791","article_user_name":"猫冬","article_time":"1648636213","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"古代生物调查"},{"content_id":1725,"title":"他乡迷失客","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_5511644743884302709.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3999913925521526035.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19732091","article_user_name":"猫冬","article_time":"1648633301","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"他乡迷失客"},{"content_id":1724,"title":"物归原主又原主","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/67bba95f420cf06d291edb5a63b86a5a_6000683204250294443.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7455855323838355621.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19726028","article_user_name":"猫冬","article_time":"1648626766","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"物归原主又原主"},{"content_id":1723,"title":"黯淡蘑菇的求救","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_2747559270865233425.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8879124107343210430.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19733395","article_user_name":"猫冬","article_time":"1648634690","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"黯淡蘑菇的求救"},{"content_id":1722,"title":"巨渊的馈赠","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_1739893911413940379.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8416212101218788924.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19730833","article_user_name":"猫冬","article_time":"1648631972","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"巨渊的馈赠"},{"content_id":1721,"title":"连队消失在深岩","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_6010670473845239.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7033947029445654498.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19731525","article_user_name":"猫冬","article_time":"1648632733","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"连队消失在深岩"},{"content_id":1720,"title":"藏石者言","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/璃月\\\",\\\"任务类型/世界任务\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.6\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_127575657687548480.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5540763477822829383.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19730477","article_user_name":"猫冬","article_time":"1648631600","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"藏石者言"},{"content_id":1719,"title":"止水之潘","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.4\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_9186995509718194528.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6785400680289634449.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14157875","article_user_name":"猫冬","article_time":"1641356817","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"止水之潘"},{"content_id":1718,"title":"岩巅大侠往事","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/璃月\\\",\\\"任务耗时/短流程\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/2.6\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/67bba95f420cf06d291edb5a63b86a5a_3066327174170943160.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8550891652545659370.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19725286","article_user_name":"猫冬","article_time":"1648626039","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"岩巅大侠往事"},{"content_id":1717,"title":"巧瞒七星解磐键","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"版本/2.6\\\",\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/长流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/d3b4fdfa5ea4d518b0ada52633dba414_4751451742538932832.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3924915131557641921.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/19716926","article_user_name":"猫冬","article_time":"1648618413","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"巧瞒七星解磐键"},{"content_id":1716,"title":"暂留此影","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.2\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/67bba95f420cf06d291edb5a63b86a5a_1400253177976079786.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4902041852686885118.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18136801","article_user_name":"子秦月夜","article_time":"1645707621","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"暂留此影"},{"content_id":1715,"title":"旧味难寻","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_4994838077000889508.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_4986354608351969003.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18135975","article_user_name":"子秦月夜","article_time":"1645706111","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"旧味难寻"},{"content_id":1714,"title":"林中小书","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\",\\\"任务类型/世界任务\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_2999314882560891227.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1750412708675790077.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18135835","article_user_name":"子秦月夜","article_time":"1645705871","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"林中小书"},{"content_id":1713,"title":"游戏一场","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_4323677689190609250.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_6773667685205279792.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18135650","article_user_name":"子秦月夜","article_time":"1645705493","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"游戏一场"},{"content_id":1712,"title":"工作迫近","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_4987547298490400207.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_4490115586020920921.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18135342","article_user_name":"子秦月夜","article_time":"1645704972","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"工作迫近"},{"content_id":1711,"title":"璃月港平静的一天","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/1.0\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_7335309365701961860.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_9011443874790929649.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18134378","article_user_name":"子秦月夜","article_time":"1645703172","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"璃月港平静的一天"},{"content_id":1710,"title":"海上盛珠钿","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/1.0\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_4983283866355038276.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_115117260001571580.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18107188","article_user_name":"子秦月夜","article_time":"1645634797","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"海上盛珠钿"},{"content_id":1709,"title":"孤舰履孤云","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_1713347165320581354.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_4740490797942876174.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18106990","article_user_name":"子秦月夜","article_time":"1645634447","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"孤舰履孤云"},{"content_id":1708,"title":"渌华景画","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_7471037767326702542.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_6990891585355987615.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18106707","article_user_name":"子秦月夜","article_time":"1645633970","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"渌华景画"},{"content_id":1707,"title":"夜叉之愿","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_933159568797000001.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_1867355418239514355.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/18105828","article_user_name":"子秦月夜","article_time":"1645632800","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/9b3ba0955f25001047823e3ad904c87d.png","summary":"夜叉之愿"},{"content_id":1706,"title":"宝藏归离","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/璃月\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/67bba95f420cf06d291edb5a63b86a5a_1191727924202389437.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_7119288882711911681.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/06/07/74019947/096937dd33728194f4f25191dd032e65_4162429834780962953.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23751302","article_user_name":"猫冬","article_time":"1654581071","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"宝藏归离"},{"content_id":1705,"title":"时与风","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"版本/1.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ca84128f3c051b4c181c2d2357d6548_3841836228334081793.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_6070833744174116745.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/22399872","article_user_name":"猫冬","article_time":"1652542702","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"时与风"},{"content_id":1704,"title":"等量交换","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/蒙德\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"版本/1.0\\\",\\\"任务耗时/短流程\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ca84128f3c051b4c181c2d2357d6548_1663801210886052001.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/09/75379475/6ffa1cfc6fec6d7282fee1bc37443ceb_524182878498794900.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/05/29/74019947/d36c86bb58b06ea485d0e7c3d5f4009f_2560914732264078812.png","bbs_url":"https://bbs.mihoyo.com/ys/article/23276665","article_user_name":"猫冬","article_time":"1653830242","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"等量交换"},{"content_id":1703,"title":"月浴之渊","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_8753276370252586315.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7828461073157928563.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/14117844","article_user_name":"大天狗的夫人","article_time":"1641304477","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/1e823a457ffd5776afade9608721982c.png","summary":"月浴之渊"},{"content_id":1702,"title":"清籁逐雷记","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_6235383313135331862.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_705718381680112517.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9093146","article_user_name":"Dramaturge","article_time":"1630466303","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"清籁逐雷记"},{"content_id":1701,"title":"清籁旧忆","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_5366785262727763207.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5987483578183387894.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9099212","article_user_name":"Dramaturge","article_time":"1630468735","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"清籁旧忆"},{"content_id":1700,"title":"清籁旧宝","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.1\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_7268565127640720348.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7763536543121997446.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/9102715","article_user_name":"Dramaturge","article_time":"1630470323","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"清籁旧宝"},{"content_id":1699,"title":"神明啊,我做得对吗?","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2858810748982975571.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3675812815827743894.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/8830086","article_user_name":"再无四月的友人A.","article_time":"1629781191","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/04280a7a327e785e3948ec65ac4b3580.png","summary":"神明啊,我做得对吗?"},{"content_id":1698,"title":"在他乡","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_7185940780909838222.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8961342540118363443.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7938216","article_user_name":"Dramaturge","article_time":"1627445494","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"在他乡"},{"content_id":1697,"title":"广海的守望","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_2549720806107526237.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1290281822688169348.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7920139","article_user_name":"Dramaturge","article_time":"1627389690","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"广海的守望"},{"content_id":1696,"title":"《第七个武士》","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_3794653141205727946.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9171620016744898317.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7903297","article_user_name":"Dramaturge","article_time":"1627353013","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"《第七个武士》"},{"content_id":1695,"title":"栽种之法","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_5922845084411524087.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3154648185168702931.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7814049","article_user_name":"FTFuture","article_time":"1627124255","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"栽种之法"},{"content_id":1694,"title":"异国的披萨","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/稻妻\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/82e73e1fe8140e0d5ae7835df3dc3e18_4782198663814167325.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/10/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_140954018813581813.png\"]}}}","icon":"","bbs_url":"https://bbs.mihoyo.com/ys/article/7812481","article_user_name":"FTFuture","article_time":"1627121299","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"异国的披萨"}],"layout":"","entry_limit":0,"hidden":false},{"id":251,"name":"须弥专题","parent_id":45,"depth":3,"ch_ext":"[{\"type\":\"text\",\"attribute_name\":\"每行个数\",\"attribute_key\":\"col_per_row\",\"value\":\"2\"},{\"type\":\"text\",\"attribute_name\":\"展示样式\",\"attribute_key\":\"display_type\",\"value\":\"summaryVerti\"},{\"type\":\"text\",\"attribute_name\":\"频道icon\",\"attribute_key\":\"icon_url\",\"value\":\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/16314655/80e10875b12852129bd3af1d35b64dd9_7119753518051319261.png\"},{\"type\":\"text\",\"attribute_name\":\"跳转链接\",\"attribute_key\":\"jump_url\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc\",\"attribute_key\":\"icon_url_pc\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc-hover\",\"attribute_key\":\"icon_url_pc_hover\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"筛选器\",\"attribute_key\":\"filter\",\"value\":\"[]\"},{\"type\":\"text\",\"attribute_name\":\"首页更多\",\"attribute_key\":\"home_more\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"在目录中展示\",\"attribute_key\":\"show_in_catalog\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"最新词条\",\"attribute_key\":\"is_latest\",\"value\":\"0\"},{\"type\":\"text\",\"attribute_name\":\"更多入口icon\",\"attribute_key\":\"king_kong_icon\",\"value\":\"\"}]","children":[],"list":[{"content_id":2217,"title":"须弥隐藏成就「请安全玩耍」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/09/01/4896641/283be4fd3aff299dda04d1d304bd8d12_1653997692028520179.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28328240","article_user_name":"FTFuture","article_time":"1662040382","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——须弥隐藏成就「请安全玩耍」获取方式。"},{"content_id":2216,"title":"须弥隐藏成就「漫长的重逢」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/09/01/4896641/11d414368e26c22f5f1fbfb96bbeafa6_6952277351695922215.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28319483","article_user_name":"FTFuture","article_time":"1662027854","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——须弥隐藏成就「漫长的重逢」获取方式介绍。"},{"content_id":2215,"title":"须弥世界任务「求学路漫漫」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/09/02/4896641/34b608e9e5a6299dd819ad784a5db260_3391391884552035171.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28349998","article_user_name":"FTFuture","article_time":"1662087878","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「求学路漫漫」攻略详情。"},{"content_id":2211,"title":"须弥隐藏成就「蔷薇绽放的若干条件」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/28/4896641/796170306b3bc1e5a6a292216fe8ba18_4094202848874359261.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28107076","article_user_name":"FTFuture","article_time":"1661670703","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——须弥隐藏成就「蔷薇绽放的若干条件」获取方式。"},{"content_id":2210,"title":"成就「我明白了!我明白了!」及后续任务「智中之宝·新计划」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/28/4896641/6715657adab8d6ec577da0f4fefc866c_8895717428669179399.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28111431","article_user_name":"FTFuture","article_time":"1661676906","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——成就「我明白了!我明白了!」获取方式及后续任务「智中之宝·新计划」攻略详情。"},{"content_id":2209,"title":"7个深渊法师成就「宵暗与晓光之歌」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/4896641/cc074c36786eb075184c492e70a58626_8798559180957832963.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28167941","article_user_name":"FTFuture","article_time":"1661764063","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——7个深渊法师成就「宵暗与晓光之歌」获取攻略。"},{"content_id":2208,"title":"1摩拉挖掘精致箱隐藏成就「啊,美好的日子!」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/4896641/eaa65526ba15b12d8ada458df68db02f_2388560423778631722.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28171294","article_user_name":"FTFuture","article_time":"1661768412","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——1摩拉挖掘精致箱地点及隐藏成就「啊,美好的日子!」获取方式。"},{"content_id":2207,"title":"须弥隐藏任务「愚人者人愚之」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/4896641/e748dc06d66b0956711332a86799ceeb_5124801985741034622.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28177038","article_user_name":"FTFuture","article_time":"1661775481","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——须弥隐藏任务「愚人者人愚之」攻略详情"},{"content_id":2206,"title":"须弥每日委托「御用在他乡」隐藏成就「为了工作」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/30/4896641/163fef2e41eb59b6bc0b70e9f17b4409_782460518238615900.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28215394","article_user_name":"FTFuture","article_time":"1661841545","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——隐藏成就「为了工作」获取方式。"},{"content_id":2205,"title":"法留纳神机隐藏成就「呼风唤雨」、「…都汇进了激流」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/30/4896641/d91ac8478cadbaeab9ca3fd487d4b5df_6815499945282779059.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28224266","article_user_name":"FTFuture","article_time":"1661855349","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——隐藏成就「呼风唤雨」、「…都汇进了激流」获取方式。"},{"content_id":2204,"title":"须弥世界任务「与珍稀之鸟的短暂邂逅」流程攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/30/4896641/aefe3586687bfd4a67b4643a58abb27f_820838674596360274.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28236210","article_user_name":"FTFuture","article_time":"1661871566","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——须弥世界任务「与珍稀之鸟的短暂邂逅」攻略流程。"},{"content_id":2203,"title":"须弥世界任务「勇气戴于心上」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/09/01/4896641/ce2381f0e90f05f2d684acbef23cf087_7494729158057249033.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28301833","article_user_name":"FTFuture","article_time":"1662000665","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——须弥世界任务「勇气戴于心上」攻略流程。"},{"content_id":2202,"title":"隐藏成就「以『安弗塔斯』之名」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/09/01/4896641/5c8cd1692b06b99cacefa323a8fbfbf5_3081464746876289431.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28308801","article_user_name":"FTFuture","article_time":"1662010334","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——隐藏成就「以『安弗塔斯』之名」获取方式。"},{"content_id":2201,"title":"须弥隐藏世界任务「石锁机关秘话」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/09/01/4896641/ea11b6e2f1096d6d94199c81a95069fc_872291910138555935.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28311463","article_user_name":"FTFuture","article_time":"1662014954","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——须弥隐藏世界任务「石锁机关秘话」攻略流程。"},{"content_id":2200,"title":"【森林书VI神秘的剪贴簿】静态风景(附地图,对比图,挖掘图)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/09/01/232866066/e4b5e1117e383f985c32cf2b372a1e45_2022513495464632669.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28296506","article_user_name":"Dramaturge","article_time":"1661992306","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神探索攻略——【森林书VI神秘的剪贴簿】宝箱收集攻略。"},{"content_id":2194,"title":"须弥隐藏世界任务【石锁机关秘话】","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/31/158741257/b4a05df2f2642fd31baa699daaf2cf38_4442067890764248058.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28259175","article_user_name":"Slothw","article_time":"1661919584","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——须弥隐藏世界任务【石锁机关秘话】"},{"content_id":2193,"title":"【须弥世界任务】静态风景及其后篇","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/30/158741257/3b482cc3f69518fc5e1468c5c215c69b_2976669138065718456.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28212805","article_user_name":"Slothw","article_time":"1661837409","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——静态风景及其后篇攻略详情。"},{"content_id":2192,"title":"【须弥隐藏世界任务】-兽有失蹄","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/30/158741257/a1368855ae2ab2b16e03641e86a8cad9_4317762457442804035.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28210433","article_user_name":"Slothw","article_time":"1661833895","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——须弥隐藏任务【兽有失蹄】攻略合集。"},{"content_id":2191,"title":"【须弥世界任务】林中奇遇后续任务","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/158741257/d66437611c3d5159d90161d144bc4593_6653477656921417394.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28150979","article_user_name":"Slothw","article_time":"1661742262","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——林中奇遇后续任务攻略。"},{"content_id":2190,"title":"【须弥世界任务】水天供书后续任务-两个成就","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/158741257/b5f238da8ee137910896c1f8a7a8577f_5050723728490417782.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28148732","article_user_name":"Slothw","article_time":"1661739652","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——水天供书后续任务攻略,及两个成就获取"},{"content_id":2188,"title":"凶猛动物在哪里","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6896380468654831788.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1297699461776464867.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/8cd38553664732f29ee5bacc9a7baf41_6669277956419965812.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27984789","article_user_name":"Dramaturge","article_time":"1661473749","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"凶猛动物在哪里"},{"content_id":2187,"title":"勇气戴于心上","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8194896462743542567.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2561843745400712757.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/b56dbea1f8f05941db4020e74a8dca9e_1415533372434792074.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27985036","article_user_name":"猫冬","article_time":"1661474072","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"勇气戴于心上"},{"content_id":2186,"title":"静态风景·后篇","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2836147513472315096.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9103756581087362988.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/4fdcf5b3051e0df768a11c8ae592991a_3073948150550658238.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27985316","article_user_name":"猫冬","article_time":"1661474509","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"静态风景·后篇"},{"content_id":2185,"title":"静态风景","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6876009251616964269.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_773441285183487681.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/4fdcf5b3051e0df768a11c8ae592991a_3073948150550658238.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27985316","article_user_name":"猫冬","article_time":"1661474509","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"静态风景"},{"content_id":2184,"title":"石锁机关秘话","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8450892092184006925.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_944901787911909039.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/74019947/51dcad740bdf98b4cba25f4c4614585d_1385128218782090439.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27987198","article_user_name":"猫冬","article_time":"1661477067","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"石锁机关秘话"},{"content_id":2183,"title":"揭示兽径的曲调","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8815908055799384888.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4319182456171938685.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/6014189fc075d3a462ddb815aeb91b79_1674619304987474490.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28035385","article_user_name":"FTFuture","article_time":"1661541079","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"揭示兽径的曲调"},{"content_id":2182,"title":"新芽迸发的曲调","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2625436603906985636.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3696380346220986365.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/34f64d0da1d24d56352a5d436a57b744_5274808509522822828.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28034627","article_user_name":"FTFuture","article_time":"1661538173","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"新芽迸发的曲调"},{"content_id":2181,"title":"通往黯道的曲调","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2121418007132829565.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4922028749378678087.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/b8726240a2b221b90c8c1e0c006e690f_3596767994698589456.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28033210","article_user_name":"FTFuture","article_time":"1661534442","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"通往黯道的曲调"},{"content_id":2180,"title":"兽有失蹄","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_7074004279443824092.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2963441312392590380.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/feb0cd21f8fe1c31b0b80b4f97e34675_8651490379371147852.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28041173","article_user_name":"FTFuture","article_time":"1661562230","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"兽有失蹄"},{"content_id":2179,"title":"趁梦想气息逗留","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6901631443039286580.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1971527676767072854.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/c8db14500c04a4de67d553a5fe80ce62_7581181511570361553.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28044182","article_user_name":"FTFuture","article_time":"1661566888","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"趁梦想气息逗留"},{"content_id":2178,"title":"智中之宝·新计划","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1363530333373981315.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7168198754792083396.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/28/4896641/6715657adab8d6ec577da0f4fefc866c_8895717428669179399.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28111431","article_user_name":"FTFuture","article_time":"1661676906","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"智中之宝·新计划"},{"content_id":2177,"title":"回忆终章","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6586654049307533492.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2239993992952543344.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"回忆终章"},{"content_id":2176,"title":"兰纳迦的回忆","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6140986953698036021.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7571888457080150566.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"兰纳迦的回忆"},{"content_id":2175,"title":"兰迦鲁的涂鸦","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1504769124654212096.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_3834592621276750803.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"兰迦鲁的涂鸦"},{"content_id":2174,"title":"兰纳真的老友","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_4709525942510959216.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_492268168440378479.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"兰纳真的老友"},{"content_id":2173,"title":"直到「桓那」痊愈","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_5937986080553022133.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_4160779603201013436.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/dbfe679aaf9ce323c84c753b65eaa5a5_6568719843398160196.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28144183","article_user_name":"Dramaturge","article_time":"1661733972","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"直到「桓那」痊愈"},{"content_id":2172,"title":"愚人者人愚之","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_2004493427828713331.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_433756104049598898.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/4896641/e748dc06d66b0956711332a86799ceeb_5124801985741034622.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28177038","article_user_name":"FTFuture","article_time":"1661775481","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"愚人者人愚之"},{"content_id":2171,"title":"代价","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_214819351608391735.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6077774127711856614.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/680a016eef5641fe716e3fbb16e7963f_2719878020671264632.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28039883","article_user_name":"FTFuture","article_time":"1661559924","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"代价"},{"content_id":2166,"title":"【森林书I:林中奇遇后续】解决潜伏在维摩庄的恶人","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/232866066/c59520d529aeff4c1c1199998d9fd0c9_549565538812454696.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28066469","article_user_name":"Dramaturge","article_time":"1661599966","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——【森林书I:林中奇遇后续】解决潜伏在维摩庄的恶人,攻略流程。"},{"content_id":2165,"title":"【森林书III:水天供书后续】收集12个桓斯弥利底,予人以花","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/676666067b9ebe0df8f466aaf649c585_480972372705576963.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143884","article_user_name":"Dramaturge","article_time":"1661733584","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——【水天供书】后续任务攻略。"},{"content_id":2164,"title":"【森林书V:吉祥具书后续】直到「桓那」痊愈","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/dbfe679aaf9ce323c84c753b65eaa5a5_6568719843398160196.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28144183","article_user_name":"Dramaturge","article_time":"1661733972","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——【吉祥具书】后续任务攻略。"},{"content_id":2163,"title":"【森林书IV:正法炬书后续】回忆终章,众花园中的一颗核桃树","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/232866066/9b725417ad1d971dd20c89a63312e766_3734740166499574099.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28143779","article_user_name":"Dramaturge","article_time":"1661733419","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——【正法炬书】后续任务攻略。"},{"content_id":2162,"title":"须弥隐藏任务「代价」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/680a016eef5641fe716e3fbb16e7963f_2719878020671264632.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28039883","article_user_name":"FTFuture","article_time":"1661559924","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——须弥隐藏任务「代价」攻略流程。"},{"content_id":2161,"title":"须弥隐藏任务「兽有失蹄」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/feb0cd21f8fe1c31b0b80b4f97e34675_8651490379371147852.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28041173","article_user_name":"FTFuture","article_time":"1661562230","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——须弥隐藏任务「兽有失蹄」攻略流程。"},{"content_id":2160,"title":"【须弥任务攻略】「趁梦想气息逗留」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/c8db14500c04a4de67d553a5fe80ce62_7581181511570361553.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28044182","article_user_name":"FTFuture","article_time":"1661566888","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「趁梦想气息逗留」攻略流程。"},{"content_id":2159,"title":"【须弥任务攻略】隐藏任务「凶猛动物在哪里」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/27/4896641/8cd38553664732f29ee5bacc9a7baf41_6669277956419965812.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28047675","article_user_name":"FTFuture","article_time":"1661571793","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「凶猛动物在哪里」任务攻略流程。"},{"content_id":2158,"title":"羊皮卷解谜隐藏成就「无名之城的呼唤」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/4896641/5d09d0082035d778806c45ad1ac31018_1502966088656231355.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28163350","article_user_name":"FTFuture","article_time":"1661757789","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索攻略——羊皮卷解谜隐藏成就「无名之城的呼唤」获取方式。"},{"content_id":2151,"title":"水天供书后续任务-两个成就","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/29/158741257/b5f238da8ee137910896c1f8a7a8577f_5050723728490417782.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28148732","article_user_name":"Slothw","article_time":"1661739652","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【水天供书】后续任务攻略。"},{"content_id":2150,"title":"吉祥具书后续任务-直到「桓那」痊愈(包含一个华丽的宝箱)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/158741257/98fd8dc3dc5e5fb348f234766be8b154_6741773588313948059.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28008197","article_user_name":"Slothw","article_time":"1661504960","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【吉祥具书】后续任务攻略。"},{"content_id":2149,"title":"【回忆终章】-正法炬书后续任务","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/158741257/5667a244da375ede85ab1f5a1326eec1_8992965887830032137.png","bbs_url":"https://bbs.mihoyo.com/ys/article/28011102","article_user_name":"Slothw","article_time":"1661508745","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【正法炬书】后续任务攻略"},{"content_id":2146,"title":"森林书系列任务-无忧节","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/98cc877a7a53481a00f2c7e23c78b40f_4422778043779908837.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27968482","article_user_name":"Slothw","article_time":"1661440548","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书系列任务-无忧节"},{"content_id":2145,"title":"森林书任务第三章-失梦的苗圃","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/158741257/9ad046ae07d28b443b57d28e10d4582f_3303013731467974932.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27991085","article_user_name":"Slothw","article_time":"1661482083","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书任务第三章-失梦的苗圃"},{"content_id":2144,"title":"森林书第四章-最终,森林会忘记一切","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/158741257/8e0a24b783b8b248503ec6bb8cfcbfe4_1692564635947229583.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27991893","article_user_name":"Slothw","article_time":"1661483096","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书第四章-最终,森林会忘记一切"},{"content_id":2142,"title":"森林书第二章梦中的苗圃(2)通往黯道的曲调","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/232866066/628c82d209ea61ed4f82f6c6e952bd13_520152757806228882.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27867968","article_user_name":"Dramaturge","article_time":"1661324539","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第二章梦中的苗圃(2)通往黯道的曲调"},{"content_id":2141,"title":"森林书第二章梦中的苗圃(3)新芽迸发的曲调","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/232866066/b8a3b9babb1bad46fe63af881f76dbc2_6214412551211221806.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27871056","article_user_name":"Dramaturge","article_time":"1661327079","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第二章梦中的苗圃(3)新芽迸发的曲调"},{"content_id":2140,"title":"森林书第二章梦中的苗圃(4)揭示兽径的曲调","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/232866066/513e757dcaec02f932af1d05f3b2d3f7_569633808817792593.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27874600","article_user_name":"Dramaturge","article_time":"1661329848","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第二章梦中的苗圃(4)揭示兽径的曲调"},{"content_id":2139,"title":"吉祥具书全攻略,附解谜步骤","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/232866066/9a046125a1e1f1054c71bfb2cbe26828_5242399377343801434.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27889330","article_user_name":"Dramaturge","article_time":"1661341625","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——【吉祥具书】全攻略接卸"},{"content_id":2137,"title":"正法炬书任务攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/232866066/810bcc195694ea9fdcd48607ea6e8920_3699328435218485879.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27921816","article_user_name":"Dramaturge","article_time":"1661386650","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——正法炬书任务攻略"},{"content_id":2136,"title":"森林书第二章(5):森林的孩子们,完成条件","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/232866066/cc015dd2df3016ab2ef86d7520476498_3179118657460495597.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27922041","article_user_name":"Dramaturge","article_time":"1661387028","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第二章(5):森林的孩子们,完成条件"},{"content_id":2135,"title":"森林书第二章(6)无忧节完结篇,兰那罗全介绍","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/232866066/1beb01aa2d8aed475c4ab2004480df99_6375449655680284452.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27922130","article_user_name":"Dramaturge","article_time":"1661387196","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第二章(6)无忧节完结篇,兰那罗全介绍"},{"content_id":2133,"title":"森林书第三章:失梦的苗圃","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/232866066/38a72eb71f34c15138aa255943e63951_4701794972954080423.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27984057","article_user_name":"Dramaturge","article_time":"1661472608","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第三章:失梦的苗圃"},{"content_id":2132,"title":"森林书第四章:最终,森林会记住一切","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/232866066/75226ff15c718f4e7b41e28230c9ec15_797846611502173917.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27984776","article_user_name":"Dramaturge","article_time":"1661473720","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第四章:最终,森林会记住一切"},{"content_id":2131,"title":"无提示隐藏世界任务:凶猛动物在哪里","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/26/232866066/2c744b8837cd353fd9268779a0777895_278519760658389389.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27984789","article_user_name":"Dramaturge","article_time":"1661473749","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——隐藏世界任务:凶猛动物在哪里"},{"content_id":2128,"title":"失梦的苗圃","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_3317717166177454705.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6753638149780139936.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/8f0d344a7dc40d44629683039f8cd876_5307527649532857098.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27958072","article_user_name":"猫冬","article_time":"1661429434","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"失梦的苗圃"},{"content_id":2127,"title":"最终,森林会记住一切","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_7925555625519373913.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2085189661920724822.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/2718f42b6e85a20805f477a761ec1157_8569919818260092316.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27959018","article_user_name":"猫冬","article_time":"1661430574","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"最终,森林会记住一切"},{"content_id":2126,"title":"正法炬书","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1689409855256863338.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_6923718180415545233.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/6de162d5ab3aee0a6a9b426a1fc6a866_4007012364048682657.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27959566","article_user_name":"猫冬","article_time":"1661431198","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"正法炬书"},{"content_id":2125,"title":"愿为一炊之梦","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_6318013461213137071.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/26/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_5559288044984593996.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/74019947/2e22a9d8e5cccbe9d6db5357bdecfbfb_8587794117813420061.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27961264","article_user_name":"猫冬","article_time":"1661433128","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"愿为一炊之梦"},{"content_id":2119,"title":"如何完成森林的孩子们任务","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/68ba2fbd23492da2a50f8b1ae7dc2b49_4226643220449739167.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27950992","article_user_name":"Slothw","article_time":"1661421086","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书-森林的孩子们"},{"content_id":2118,"title":"「缄默的求知者」剧情副本宝箱收集","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/75720734/6bccb293cf12fc12270086ac0f09347f_9044005735840518997.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27897370","article_user_name":"冬卫","article_time":"1661348555","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神任务攻略——须弥魔神任务攻略"},{"content_id":2117,"title":"一篇须弥开机指南~让你对须弥多了解一点!","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/5861124/1d0c373655d7eb48c217901cd8b54937_7766011589080175375.jpg","bbs_url":"https://bbs.mihoyo.com/ys/article/27901297","article_user_name":"悦弥","article_time":"1661351624","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"原神新手攻略——须弥探索攻略。"},{"content_id":2115,"title":"须弥每日任务与须弥声望的开启方式","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/2895b37f9973d3baf9f51292bbbcc00c_9108432094949969714.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27923696","article_user_name":"Slothw","article_time":"1661389209","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神新手攻略——须弥每日任务与须弥声望的开启方式"},{"content_id":2114,"title":"森林书系列任务-水天供书","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/58054f92155f0b10251a6866337acb17_6540688010847579351.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27948126","article_user_name":"Slothw","article_time":"1661417671","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书系列任务-水天供书"},{"content_id":2113,"title":"森林书系列任务——正法炬书","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/dbc10baa7a51714488df8cba8e6f8b37_8140690487170182234.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27940950","article_user_name":"Slothw","article_time":"1661408439","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书系列任务——正法炬书"},{"content_id":2112,"title":"森林书系列任务-吉祥具书","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/3b6723b2db4bf81a3d09ae36bd590222_4636838153133548575.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27933347","article_user_name":"Slothw","article_time":"1661399760","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书系列任务-吉祥具书"},{"content_id":2110,"title":"森林书系列任务-新芽迸发的曲调","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/158741257/e88208f91489122c6ebbc621fcef1d20_2973367425103219819.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27880832","article_user_name":"Slothw","article_time":"1661334942","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书系列任务-新芽迸发的曲调"},{"content_id":2106,"title":"森林书系列任务-林中奇遇全攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/158741257/9f485ffe3c532e7d885458ed6797b1a4_4107603067320102922.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27862883","article_user_name":"Slothw","article_time":"1661320803","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书系列任务-林中奇遇全攻略。"},{"content_id":2105,"title":"森林书系列任务-愿为一炊之梦","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/158741257/f6bfa52f7004e11edc534cfd5e90c77c_72262480221621754.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27871315","article_user_name":"Slothw","article_time":"1661327301","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——森林书系列任务-愿为一炊之梦。"},{"content_id":2097,"title":"森林书第一章:林中奇遇","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/232866066/1e5021ec5c033b698d282f226b21b162_4930990055457970045.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27849926","article_user_name":"Dramaturge","article_time":"1661313335","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——森林书第一章:林中奇遇"},{"content_id":2096,"title":"森林书第二章:梦中的苗圃","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/232866066/4c8b4858adca3a0e6b1406fc2508ed6a_1058074502298747039.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27856649","article_user_name":"Dramaturge","article_time":"1661316919","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——森林书第二章:梦中的苗圃"},{"content_id":2124,"title":"新蓓萌生","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务耗时/短流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_8790557952753057663.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_2129702648662016238.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/29dd4bc6cd202b5f66ba9c899e7968bf_8573965571868981533.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27897177","article_user_name":"猫冬","article_time":"1661348359","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"新蓓萌生"},{"content_id":2123,"title":"吉祥具书","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_5543754515835864638.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_523562964340647717.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/271194bfd9d016dae53247d182d67df0_2353390460500254146.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27895851","article_user_name":"猫冬","article_time":"1661347411","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"吉祥具书"},{"content_id":2122,"title":"水天供书","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_3184385665349189779.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_9124913837172865328.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/25/158741257/58054f92155f0b10251a6866337acb17_6540688010847579351.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27948126","article_user_name":"Slothw","article_time":"1661417671","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"水天供书"},{"content_id":2121,"title":"梦中的苗圃","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_7836224974905062767.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_1522514970762790553.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/a05f1198d43b353845199fa9a1ecb2ff_602651168112755263.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27891900","article_user_name":"猫冬","article_time":"1661343893","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"梦中的苗圃"},{"content_id":2120,"title":"林中奇遇","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/须弥\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/长流程\\\",\\\"版本/3.0\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/29/6276411/8a0e71f7fb4ffa836ffc74ab336665ed_1003988700627651088.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/25/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_7341723604240082635.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/24/74019947/549b1e58cf08302d07accf44ac131558_372965616930859556.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27890599","article_user_name":"猫冬","article_time":"1661342749","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"林中奇遇"}],"layout":"","entry_limit":0,"hidden":false},{"id":226,"name":"层岩专题","parent_id":45,"depth":3,"ch_ext":"[{\"type\":\"text\",\"attribute_name\":\"每行个数\",\"attribute_key\":\"col_per_row\",\"value\":\"1\"},{\"type\":\"text\",\"attribute_name\":\"展示样式\",\"attribute_key\":\"display_type\",\"value\":\"summaryVerti\"},{\"type\":\"text\",\"attribute_name\":\"频道icon\",\"attribute_key\":\"icon_url\",\"value\":\"https://uploadstatic.mihoyo.com/ys-obc/2022/05/11/75379475/a48ef0d16181e3e6fe0c01e04f890a29_5414760769208868156.png\"},{\"type\":\"text\",\"attribute_name\":\"跳转链接\",\"attribute_key\":\"jump_url\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc\",\"attribute_key\":\"icon_url_pc\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc-hover\",\"attribute_key\":\"icon_url_pc_hover\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"筛选器\",\"attribute_key\":\"filter\",\"value\":\"[]\"},{\"type\":\"text\",\"attribute_name\":\"首页更多\",\"attribute_key\":\"home_more\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"在目录中展示\",\"attribute_key\":\"show_in_catalog\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"最新词条\",\"attribute_key\":\"is_latest\",\"value\":\"0\"},{\"type\":\"text\",\"attribute_name\":\"更多入口icon\",\"attribute_key\":\"king_kong_icon\",\"value\":\"\"}]","children":[],"list":[{"content_id":1588,"title":"层岩巨渊·地下矿区仙灵","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/03/163033432/aa45b8ecf299ef2e776ab1880b8c39fb_3800548239084626461.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19967225","article_user_name":"Lion_X","article_time":"1648965594","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/ec4e226f47a169749d96433dd63f391e.png","summary":"原神探索解密攻略——层岩巨渊·地下矿区仙灵全解锁攻略"},{"content_id":1578,"title":"「挑战者·第五辑」成就全攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/05/4896641/bb1dae403b4caaf0d737e11504271e28_1332167909672190408.png","bbs_url":"https://bbs.mihoyo.com/ys/article/20054181","article_user_name":"FTFuture","article_time":"1649095177","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——「挑战者·第五辑」全成就获取攻略"},{"content_id":1577,"title":"2.6隐藏成就「狡兔之窟」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/04/4896641/b33efddec24b780b16a74bedb787c56f_3562699497858080140.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19998479","article_user_name":"FTFuture","article_time":"1649004303","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——「狡兔之窟」成就获取攻略"},{"content_id":1576,"title":"2.6隐藏成就「层岩巨渊矿产志」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/03/4896641/d6ffd2655ccf28f55d0be8485aac510f_5358563563394451327.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19995383","article_user_name":"FTFuture","article_time":"1649001379","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——「层岩巨渊矿产志」成就获取攻略"},{"content_id":1575,"title":"2.6隐藏成就「舍我其谁!」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/03/4896641/70afb252649e6eafa2405e5d2c9372dd_935028532528002971.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19992291","article_user_name":"FTFuture","article_time":"1648997826","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神解密攻略——「舍我其谁!」成就获取攻略"},{"content_id":1574,"title":"2.6隐藏成就「生命之谷的居民」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/03/4896641/b5f28e8c90ea8ae6ccff7c01898ae9a0_380579067739186056.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19988967","article_user_name":"FTFuture","article_time":"1648994049","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——「生命之谷的居民」成就获取攻略"},{"content_id":1573,"title":"2.6隐藏成就「塔列辛之书」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/03/4896641/f74df428aa5434a4a39ed82f3173540b_9155467935171013379.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19985264","article_user_name":"FTFuture","article_time":"1648989863","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——「塔列辛之书」"},{"content_id":1572,"title":"2.6隐藏成就「9文字之传言」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/02/4896641/bd816677974588334463ffe22f9e4df8_4241059347687611280.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19926496","article_user_name":"FTFuture","article_time":"1648899619","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——「9文字之传言」成就获取攻略"},{"content_id":1571,"title":"2.6隐藏成就「CREDE TENEBRAE」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/02/4896641/4bfc2ce6b5e6e99be928b1c806764306_255047531283114348.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19919167","article_user_name":"FTFuture","article_time":"1648890659","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——「CREDE TENEBRAE」成就获取攻略"},{"content_id":1570,"title":"2.6版本世界任务「勇气的余晖」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/01/4896641/0383823957b08b23c0a2c09375402d64_3691906381217773025.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19862297","article_user_name":"FTFuture","article_time":"1648809875","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「勇气的余晖」攻略流程"},{"content_id":1569,"title":"「深渊文字」——9文字之传言","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/01/168369411/4e5c7f9513a6727deb213053a7cebe19_2018074332557667743.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19858790","article_user_name":"三土呀","article_time":"1648806098","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神探索解密攻略——「深渊文字」攻略流程"},{"content_id":1568,"title":"「渊青宝珠」——九个黯色空壳","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/01/168369411/dad8887e9a49d4d7aec2eaf79de06942_2909293986732729637.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19858775","article_user_name":"三土呀","article_time":"1648806082","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神探索解密攻略——「渊青宝珠」攻略流程"},{"content_id":1567,"title":"「勇气的余晖」——冒险之意义在哪","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/02/168369411/aa12fe87d3436389b6a9f5844e4a0b67_8365426478182073863.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19915503","article_user_name":"三土呀","article_time":"1648886413","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「勇气的余晖」攻略流程"},{"content_id":1566,"title":"「塔列辛之书」——讲层岩巨渊故事","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/02/168369411/17111acd39757afdb43bccc6aa963d20_8033517779143150044.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19886921","article_user_name":"三土呀","article_time":"1648839629","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神探索解密攻略——「塔列辛之书」攻略流程"},{"content_id":1565,"title":"「愚人众行动日志」——舍我其谁","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/02/168369411/d50f840c6af2fa6281afd889237f6b39_3081338622519706634.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19886918","article_user_name":"三土呀","article_time":"1648839618","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神探索解密攻略——「愚人众行动日志」攻略流程"},{"content_id":1564,"title":"「层岩巨渊矿产志」——三本矿产志","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/02/168369411/18df3f5e80c9d90791d0453124faf0fb_8804488077482825083.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19886916","article_user_name":"三土呀","article_time":"1648839606","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神探索解密攻略——「层岩巨渊矿产志」攻略流程"},{"content_id":1563,"title":"「干枯的种子」——生命之谷的居民","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/04/02/168369411/4a8f7d7e61920bbb36327eb1350984be_8389672764521094520.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19886907","article_user_name":"三土呀","article_time":"1648839572","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神探索解密攻略——「干枯的种子」攻略流程"},{"content_id":1557,"title":"「古代生物调查」——五张化石照片","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/60690993b3f8e8c2a44c2840dfad401e_4182389432896548254.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19815705","article_user_name":"三土呀","article_time":"1648743155","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「古代生物调查」任务流程攻略"},{"content_id":1556,"title":"「水生环境调查」——奇怪的物件","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/537f9ca85e8fe619fc0726dc5d2c001d_4775244063691519187.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19808081","article_user_name":"三土呀","article_time":"1648735991","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「水生环境调查」任务攻略流程"},{"content_id":1555,"title":"「千年千岩」——六个供奉之物","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/168369411/14be47af43a559a7ce0b529a43ce6596_7840779975084808843.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19719708","article_user_name":"三土呀","article_time":"1648620767","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「千年千岩」任务流程攻略"},{"content_id":1554,"title":"「潜身敌营无人知」——藏宝图宝藏","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/168369411/609c0fc90ee5df63c755d4857143556c_7672147296599594670.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19720398","article_user_name":"三土呀","article_time":"1648621391","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「潜身敌营无人知」任务流程攻略"},{"content_id":1553,"title":"「藏石者言」——九个老石","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/168369411/2076aec281c2dd8fe3cc47fbeba45cd6_840025082571421123.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19724117","article_user_name":"三土呀","article_time":"1648624784","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「藏石者言」任务流程攻略"},{"content_id":1552,"title":"「岩巅大侠往事」——挖宝游戏","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/168369411/f559d51212bfcb7b200c026c1da55e9f_2420193605254527610.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19725406","article_user_name":"三土呀","article_time":"1648626140","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「岩巅大侠往事」任务流程攻略"},{"content_id":1551,"title":"「物归原主又归原主」——抓盗宝鼬","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/168369411/c9cc746ec4ba6479f606542a6f4ba4e0_623819991235273250.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19727348","article_user_name":"三土呀","article_time":"1648628120","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「物归原主又归原主」任务流程攻略"},{"content_id":1550,"title":"「层岩巨渊深游记」璃月大解谜任务","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/e9cda3c76cf5b180cc7349b8591d26ef_5347134615744917621.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19775297","article_user_name":"三土呀","article_time":"1648696853","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「层岩巨渊深游记」任务流程攻略"},{"content_id":1549,"title":"「暗淡蘑菇的求救」——说话的蘑菇","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/159c1a117fe62072075aee9d48443ad0_6797638540862377484.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19781685","article_user_name":"三土呀","article_time":"1648704710","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「暗淡蘑菇的求救」任务流程攻略"},{"content_id":1548,"title":"「他乡迷失客」——落单的雷莹术士","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/c3decd601980cf8d8aa6dd487098896e_9032554968133912704.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19783851","article_user_name":"三土呀","article_time":"1648707599","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「他乡迷失客」任务流程攻略"},{"content_id":1547,"title":"「连队消失在深岩」—失联的愚人众","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/5dd701bb006622aa76d9921557d4218c_4848376277391829327.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19789457","article_user_name":"三土呀","article_time":"1648715101","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「连队消失在深岩」任务流程攻略"},{"content_id":1546,"title":"「失踪的矿工」——饿了!毒蘑菇!","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/f64a7ad65d8f49b30eb770c77f1d0820_8113128558765255426.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19791183","article_user_name":"三土呀","article_time":"1648717362","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「失踪的矿工」任务流程攻略"},{"content_id":1545,"title":"「巨渊的馈赠」——女儿?幽灵?","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/9d4562bf2d1940aee6ec5bea65ebf59b_6688000232626773782.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19792436","article_user_name":"三土呀","article_time":"1648719120","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「巨渊的馈赠」任务流程攻略"},{"content_id":1544,"title":"「层岩菌类调查」——发光的蘑菇","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/168369411/4f978212dbc0faad3a38fbc6b7506ced_459550048833292748.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19793538","article_user_name":"三土呀","article_time":"1648720643","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/7537c48f03523f00c8dcb0e3297aaa1a.png","summary":"原神任务攻略——「层岩菌类调查」任务流程攻略"},{"content_id":1543,"title":"隐藏成就:《层岩巨渊矿产志》","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/74019947/7508d6ab68aa6870542620e7b7d7f4a5_6386029134336897488.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19799466","article_user_name":"猫冬","article_time":"1648726965","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——《层岩巨渊矿产志》隐藏成就获取攻略"},{"content_id":1542,"title":"隐藏成就:《塔列辛之书》解锁方法","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/74019947/6a861ac438312044b3e3859c649109fe_7018880339894680474.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19798421","article_user_name":"猫冬","article_time":"1648725976","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——《塔列辛之书》解密攻略"},{"content_id":1541,"title":"【世界任务整合】2.6层岩巨原世界任务整合篇","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/73705865/3b9d733f3a147411bbe518cce93f3a35_2770147059429382663.jpg","bbs_url":"https://bbs.mihoyo.com/ys/article/19797650","article_user_name":"mr.xiaoba","article_time":"1648725183","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/15ed0f56b48f97eefb749fd54c88f823.png","summary":"原神任务攻略——层岩巨渊世界任务合计。"},{"content_id":1539,"title":"2.6版本世界任务「千年千岩」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/f39f9cda45d18e3e33a5f8b03b26ef9a_8943368484958800973.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19771827","article_user_name":"FTFuture","article_time":"1648692474","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「千年千岩」流程攻略"},{"content_id":1538,"title":"2.6版本世界任务「潜身敌营无人知」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/abeae215b59933577f36dbbe03c7972b_8482338880805250077.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19766821","article_user_name":"FTFuture","article_time":"1648685277","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「潜身敌营无人知」流程攻略"},{"content_id":1537,"title":"2.6版本世界任务「岩巅大侠往事」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/2047d05233b97aa4ecd46e246895e7e9_4294691802547331297.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19765417","article_user_name":"FTFuture","article_time":"1648682591","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「岩巅大侠往事」流程攻略"},{"content_id":1536,"title":"2.6版本世界任务「巨渊的馈赠」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/c2eab1ddd8ec471d8185b17e37976e23_5790168822109506908.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19764067","article_user_name":"FTFuture","article_time":"1648678573","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「巨渊的馈赠」流程攻略"},{"content_id":1535,"title":"2.6版本世界任务「物归原主又归原主」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/0cd3ffa1b853a068cf26689fad3c56b2_8774382149998365114.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19763685","article_user_name":"FTFuture","article_time":"1648675627","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「物归原主又归原主」流程攻略"},{"content_id":1534,"title":"2.6版本世界任务「连队消失在深岩」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/b9ff41e77e8ec234eec567cd993b2613_3474256479601371621.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19763601","article_user_name":"FTFuture","article_time":"1648674752","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「连队消失在深岩」流程攻略"},{"content_id":1533,"title":"2.6版本世界任务「藏石者言」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/606446a0dfa711ce317481dcaff95593_1088380070600430164.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19763599","article_user_name":"FTFuture","article_time":"1648674732","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「藏石者言」攻略流程"},{"content_id":1532,"title":"2.6版本海迪夫隐藏任务其三「古代生物调查」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/ec35ab3596ebdb3c69db574235ff7175_6783001480275099027.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19763111","article_user_name":"FTFuture","article_time":"1648669934","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「古代生物调查」攻略流程"},{"content_id":1531,"title":"2.6版本海迪夫隐藏任务其二「层岩菌类调查」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/4ef0629c37e1c880c828625a9128bbb6_27066293749297182.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19762245","article_user_name":"FTFuture","article_time":"1648665424","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「层岩菌类调查」攻略流程"},{"content_id":1530,"title":"2.6版本海迪夫隐藏任务其一「水生环境调查」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/aaadf79dc42e78f438b3a95e1a35348a_4789669561143022137.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19761965","article_user_name":"FTFuture","article_time":"1648664553","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「水生环境调查」攻略流程"},{"content_id":1529,"title":"2.6版本隐藏任务「他乡迷失客」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/475ca6b4ff2389573796906d9ce0301a_2337704050682865043.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19761215","article_user_name":"FTFuture","article_time":"1648662531","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「他乡迷失客」攻略流程"},{"content_id":1528,"title":"2.6版本隐藏任务「黯淡蘑菇的求救」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/da425bd525af2bc0b4de7a593f20032b_2088146149572996938.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19760763","article_user_name":"FTFuture","article_time":"1648661642","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「黯淡蘑菇的求救」攻略流程"},{"content_id":1527,"title":"2.6版本隐藏任务「失踪的矿工」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/4896641/17755c17f9ecfe2d2720cc62bdb312b3_3197053926058543210.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19757350","article_user_name":"FTFuture","article_time":"1648657473","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「失踪的矿工」攻略流程"},{"content_id":1526,"title":"「层岩巨渊深游记」其六「灵石何故堕此间」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/4896641/a33777478a24bde94372b976de2e902f_7467438480689679418.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19737972","article_user_name":"FTFuture","article_time":"1648639489","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「灵石何故堕此间」流程攻略"},{"content_id":1525,"title":"「层岩巨渊深游记」其五「黑翳渐浓隐凶险」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/4896641/d63f9432269335584fe34b9d1598e9e6_1390111861741700192.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19734793","article_user_name":"FTFuture","article_time":"1648636213","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「黑翳渐浓隐凶险」攻略流程"},{"content_id":1524,"title":"「层岩巨渊深游记」其四「九霄之石悬残片」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/4896641/a1156f8aff8c1ca90ac12cdbdac8fc00_388884199844339797.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19730675","article_user_name":"FTFuture","article_time":"1648631804","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「九霄之石悬残片」攻略流程"},{"content_id":1523,"title":"「层岩巨渊深游记」其三「方入巨渊初勘探」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/4896641/dcb526571e427fb2e1b8daa70e55f1a3_7400188906813194476.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19728230","article_user_name":"FTFuture","article_time":"1648629090","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「方入巨渊初勘探」攻略流程"},{"content_id":1522,"title":"渊青宝珠与隐藏成就:CREDE THENEBRAE","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/1a7f04d3b5fd3dfe8ae14b6a2e2fbb46_7523817432389527907.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19749468","article_user_name":"猫冬","article_time":"1648650847","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——隐藏成就【CREDE THENEBRAE】获取攻略"},{"content_id":1521,"title":"深渊文字以及隐藏成就:9文字之传言","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/76f2b6b0a9ac8a606a91cd01287b5f31_5934020727650681813.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19745326","article_user_name":"猫冬","article_time":"1648647010","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——隐藏成就【9文字之传言】获取攻略"},{"content_id":1520,"title":"干枯的种子以及隐藏成就:生命之谷的居民","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/f3357448fc4193216cf4de017ab10f48_5262027155453206953.jpeg","bbs_url":"https://bbs.mihoyo.com/ys/article/19740821","article_user_name":"猫冬","article_time":"1648642516","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——隐藏成就【生命之谷的居民】获取攻略"},{"content_id":1519,"title":"密道以及隐藏成就:「只需一些柴火、一些醋」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/f3357448fc4193216cf4de017ab10f48_7768909087924549317.jpeg","bbs_url":"https://bbs.mihoyo.com/ys/article/19740746","article_user_name":"猫冬","article_time":"1648642425","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——隐藏成就【只需一些柴火、一些醋】获取攻略"},{"content_id":1518,"title":"藏宝图碎片以及隐藏成就:狡兔之窟","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/3900260c7f75a10968c9630696508b39_933932468092338223.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19737650","article_user_name":"猫冬","article_time":"1648639150","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——隐藏成就【狡兔之窟】获取攻略"},{"content_id":1517,"title":"层岩巨渊隐藏任务:水生环境调查","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/e3c98930490ea0fd1b413d3731016ed9_4556939907165259059.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19736324","article_user_name":"猫冬","article_time":"1648637883","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【水生环境调查】流程攻略"},{"content_id":1516,"title":"层岩巨渊隐藏任务:层岩菌类调查","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/7468d2ee11906640b1e6be3457f1b1e1_1100822081342252227.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19735560","article_user_name":"猫冬","article_time":"1648637041","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【层岩菌类调查】流程攻略"},{"content_id":1515,"title":"层岩巨渊隐藏任务:古代生物调查","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/b3e3366388a2fb4dc1927361cb14d70b_5699690970282742142.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19734791","article_user_name":"猫冬","article_time":"1648636213","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【古代生物调查】流程攻略"},{"content_id":1514,"title":"层岩巨渊隐藏任务:勇气的余辉","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/31/74019947/a24385750c55b598340a4abf8e2c9b67_4377537738165015524.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19778642","article_user_name":"猫冬","article_time":"1648701059","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【勇气的余辉】流程攻略"},{"content_id":1512,"title":"璃月世界任务6:失踪的矿工","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/d3aa34496c2eec3caa8cb0279ae7ad41_7596510255202274431.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19751803","article_user_name":"猫冬","article_time":"1648652814","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【失踪的矿工】攻略流程"},{"content_id":1511,"title":"层岩巨渊隐藏任务:黯淡蘑菇的求救","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/a0e87cda53be1c83eac44d19c29fb6cf_5400001708843172647.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19733395","article_user_name":"猫冬","article_time":"1648634690","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——隐藏任务【黯淡蘑菇的求救】攻略流程"},{"content_id":1510,"title":"层岩巨渊隐藏任务:他乡迷失客","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/9149d49d9d51491cf4d5e075b17232b9_4085342585571314882.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19732091","article_user_name":"猫冬","article_time":"1648633301","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——隐藏任务【他乡迷失客】攻略流程"},{"content_id":1509,"title":"层岩巨渊隐藏任务:连队消失在深岩","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/4b25d31ae143b72da3db7ae958260135_7860721777075747535.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19731525","article_user_name":"猫冬","article_time":"1648632733","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——隐藏任务【连队消失在深岩】攻略流程"},{"content_id":1508,"title":"层岩巨渊隐藏任务:巨渊的馈赠","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/90df84b6818602d9b36204304ee4433b_2225770835734690883.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19730833","article_user_name":"猫冬","article_time":"1648631972","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——隐藏任务【巨渊的馈赠】攻略流程"},{"content_id":1507,"title":"璃月世界任务5:藏石者言(老石)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/a61e585c0fe188998345e5655d916887_2617545276453113441.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19730477","article_user_name":"猫冬","article_time":"1648631600","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【藏石者言】任务攻略流程"},{"content_id":1505,"title":"璃月世界任务4:物归原主又原主","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/7ace209159e89f262d7761d4d3570183_459642987871544326.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19726028","article_user_name":"猫冬","article_time":"1648626766","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【物归原主又原主】任务攻略流程"},{"content_id":1504,"title":"璃月世界任务3:岩巅大侠往事","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/3284964ab9590823737ea7829eaa7b50_6831482348311697726.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19725286","article_user_name":"猫冬","article_time":"1648626039","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【岩巅大侠往事】任务攻略流程"},{"content_id":1503,"title":"璃月世界任务2:千年千岩(供物)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/5a919dffe72f1e8cbe96e23295a31f1a_3056833650124975742.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19725004","article_user_name":"猫冬","article_time":"1648625770","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【千年千岩】任务攻略流程"},{"content_id":1502,"title":"璃月世界任务1:潜身敌营无人知","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/2959cfc08a685141ca8c791db904c296_7876576541848742714.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19724578","article_user_name":"猫冬","article_time":"1648625279","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【潜身敌营无人知】任务攻略流程"},{"content_id":1501,"title":"【璃月·层岩巨渊攻略】主线世界任务5:灵石何故堕此间","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/7d9797a42ca84902b3c65809370a7b1d_3316917329869190065.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19719317","article_user_name":"猫冬","article_time":"1648620433","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【灵石何故堕此间】任务攻略流程"},{"content_id":1500,"title":"【璃月·层岩巨渊攻略】主线世界任务4:黑翳渐哝隐凶险","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/751a37505a3e75a9ad0399c6072d4026_3085875423691419717.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19718817","article_user_name":"猫冬","article_time":"1648619970","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【黑翳渐哝隐凶险】任务攻略流程"},{"content_id":1499,"title":"【璃月·层岩巨渊攻略】主线世界任务3:九霄之石悬残片","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/72b04119ad286854cf6141e7dbe60d21_6307961926693006432.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19718251","article_user_name":"猫冬","article_time":"1648619481","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【九霄之石悬残片】任务攻略流程"},{"content_id":1498,"title":"【璃月·层岩巨渊攻略】主线世界任务2:方入巨渊初探勘","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/769e4b8275b1b2537456d3ac570d5ed3_3430563944331629052.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19717576","article_user_name":"猫冬","article_time":"1648618910","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【方入巨渊初探勘】任务攻略流程"},{"content_id":1497,"title":"【璃月·层岩巨渊攻略】主线世界任务1:巧瞒七星解磐键","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/74019947/c64794e4a9594ec78393e6974ea645de_8781091133149436465.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19716926","article_user_name":"猫冬","article_time":"1648618413","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神任务攻略——【巧瞒七星解磐键】任务攻略流程"},{"content_id":1496,"title":"层岩巨渊圣遗物副本开启方法","ext":"{}","icon":"https://uploadstatic.mihoyo.com/ys-obc/2022/03/30/6276411/86882bb53da7eb2324380d72c7afbeed_5097350910030587981.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19708125","article_user_name":"猫冬","article_time":"1648612316","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6e5de7180fcd774da7ca493d8809d6e2.png","summary":"原神探索解密攻略——祝圣秘境:机巢解锁攻略视频。"},{"content_id":1495,"title":"【层岩谜云】6处供物点位/任务·千年千岩","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/79695828/d3de411eb58b6eb8c7d72c949c8c032c_4668600702804377689.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19719879","article_user_name":"Asgater","article_time":"1648620912","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/36e323070844ffa2f1905855ea0b2cef.png","summary":"原神任务攻略——【千年千岩】6个供物点位展示"},{"content_id":1494,"title":"【层岩谜云】藏石者岩/老石点位标记","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/79695828/cc88d7ee21ee869abc37a8fea9ea5f93_4572664002196943829.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19725373","article_user_name":"Asgater","article_time":"1648626105","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/36e323070844ffa2f1905855ea0b2cef.png","summary":"原神任务攻略——【藏石者岩】老石收集攻略"},{"content_id":1492,"title":"「层岩巨渊深游记」其二「巧瞒七星解磐键」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/4896641/565e7525fe3e9055dad762b84557198d_9122942402399904332.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19725081","article_user_name":"FTFuture","article_time":"1648625853","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「巧瞒七星解磐键」任务攻略流程"},{"content_id":1491,"title":"「层岩巨渊深游记」其一「层岩巨渊寻访记」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/4896641/e91f0fdccacc3cf4d9962d53416b289c_4491513775819567202.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19724940","article_user_name":"FTFuture","article_time":"1648625685","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「层岩巨渊寻访记」任务攻略流程"},{"content_id":1489,"title":"2.6版本「岩中幽谷」解锁攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/4896641/0a689e9ea2e23614f24107eaa1db993d_265181979334484695.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19708186","article_user_name":"FTFuture","article_time":"1648612366","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神探索解密攻略——秘境「岩中幽谷」解锁攻略"},{"content_id":1488,"title":"层岩巨渊深游记之方入巨渊初勘探","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/158741257/0d78af0e6dfbe54f4a1a8da2e4024059_2797416063373973192.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19717814","article_user_name":"Slothw","article_time":"1648619105","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【方入巨渊初勘探】任务攻略流程"},{"content_id":1487,"title":"层岩 世界任务:物归原主又归原主","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/75720734/39e7feb68259fc90d965b70ab7c4f162_2004664237656557050.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19720271","article_user_name":"韩牧九","article_time":"1648621268","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神任务攻略——【物归原主又归原主】任务攻略流程"},{"content_id":1486,"title":"层岩巨渊 世界任务:千年千岩","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/75720734/f41f01b4e8f5779289da797cfa8199c0_3748444087341266521.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19719337","article_user_name":"韩牧九","article_time":"1648620451","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神任务攻略——【千年千岩】任务攻略流程。"},{"content_id":1485,"title":"层岩巨渊 世界任务:岩巅大侠往事","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/75720734/3cb1132869751839ddbc079b473f1bec_5307678985142065396.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19716685","article_user_name":"韩牧九","article_time":"1648618222","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神任务攻略——【岩巅大侠往事】任务攻略流程"},{"content_id":1484,"title":"层岩巨渊 世界任务:藏石者言","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/75720734/67c9850655da06b7258da15694347c51_5756817717810631238.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19714321","article_user_name":"韩牧九","article_time":"1648616570","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神任务攻略——【藏石者言】任务攻略流程"},{"content_id":1483,"title":"层岩巨渊世界任务:潜身敌营无人知","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/75720734/3e1c6552a71479275b690a7d124a30a0_417000157452151360.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19711206","article_user_name":"韩牧九","article_time":"1648614564","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神任务攻略——【潜身敌营无人知】任务攻略流程。"},{"content_id":1482,"title":"世界任务:层岩巨渊探游记•地面篇","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/75720734/011793683b6297e9f22fb77c910d4e94_833198855708078173.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19707700","article_user_name":"韩牧九","article_time":"1648611988","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神任务攻略——【层岩巨渊探游记•地面篇】任务攻略流程"},{"content_id":1481,"title":"「祝圣秘境:机巢」解锁方式及成就","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/75720734/8dd5a2573e7482e248f2350fe33fd104_8173297660227166334.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19709437","article_user_name":"韩牧九","article_time":"1648613272","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/b38028644b8e38ce070835ec428b8028.png","summary":"原神探索解密攻略——「祝圣秘境:机巢」解锁方式与成就攻略。"},{"content_id":1480,"title":"层岩隐藏任务-潜身敌营无人知","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/158741257/037e5fd1561c0fa177e8596c792e3064_1885576325018668585.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19707874","article_user_name":"Slothw","article_time":"1648612134","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【潜身敌营无人知】任务攻略流程。"},{"content_id":1479,"title":"层岩巨渊世界任务-物归原主又归原","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/158741257/ac744a957ff851d6f009b9c27f6e0587_2462585095504912877.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19714829","article_user_name":"Slothw","article_time":"1648616908","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【物归原主又归原】任务攻略流程。"},{"content_id":1478,"title":"层岩巨渊世界任务-千年千岩","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/158741257/80117320b3bea72c7d09a76d233accd6_390164172347844868.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19712498","article_user_name":"Slothw","article_time":"1648615412","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【千年千岩】任务攻略流程。"},{"content_id":1477,"title":"层岩隐藏任务-岩巅大侠往事","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/158741257/a20dcb750aafad7f16015402735e2e7d_7891357697157759817.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19709878","article_user_name":"Slothw","article_time":"1648613635","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【岩巅大侠往事】任务攻略流程。"},{"content_id":1476,"title":"层岩巨渊深游记之巧瞒七星解磐键","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/03/30/158741257/cfd13fa69169300c4e57c3f46693165d_7637013805783814544.png","bbs_url":"https://bbs.mihoyo.com/ys/article/19705508","article_user_name":"Slothw","article_time":"1648610452","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/798ca4a21e5cb4313b9d3b0ceec7b7d6.png","summary":"原神任务攻略——【巧瞒七星解磐键】攻略详情"}],"layout":"","entry_limit":0,"hidden":false},{"id":242,"name":"海岛专题","parent_id":45,"depth":3,"ch_ext":"[{\"type\":\"text\",\"attribute_name\":\"每行个数\",\"attribute_key\":\"col_per_row\",\"value\":\"1\"},{\"type\":\"text\",\"attribute_name\":\"展示样式\",\"attribute_key\":\"display_type\",\"value\":\"summaryVerti\"},{\"type\":\"text\",\"attribute_name\":\"频道icon\",\"attribute_key\":\"icon_url\",\"value\":\"https://uploadstatic.mihoyo.com/ys-obc/2022/07/14/75379475/129e57d099fa60c6d9f50237b6ba01a7_7510561457536354992.png\"},{\"type\":\"text\",\"attribute_name\":\"跳转链接\",\"attribute_key\":\"jump_url\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc\",\"attribute_key\":\"icon_url_pc\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"频道icon-pc-hover\",\"attribute_key\":\"icon_url_pc_hover\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"筛选器\",\"attribute_key\":\"filter\",\"value\":\"[]\"},{\"type\":\"text\",\"attribute_name\":\"首页更多\",\"attribute_key\":\"home_more\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"在目录中展示\",\"attribute_key\":\"show_in_catalog\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"最新词条\",\"attribute_key\":\"is_latest\",\"value\":\"\"},{\"type\":\"text\",\"attribute_name\":\"更多入口icon\",\"attribute_key\":\"king_kong_icon\",\"value\":\"\"}]","children":[],"list":[{"content_id":2189,"title":"最后的宝藏","ext":"{\"c_231\":{\"filter\":{\"text\":\"[\\\"任务类型/世界任务\\\",\\\"所属区域/其他\\\",\\\"任务奖励/原石\\\",\\\"任务奖励/摩拉\\\",\\\"任务奖励/经验书\\\",\\\"任务奖励/小道具\\\",\\\"任务耗时/短流程\\\",\\\"版本/2.8\\\"]\"},\"regionIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/ff50ecc5c6cd0133e599295814d2f570_6336054298422935650.png\"]},\"taskIcon\":{\"list\":[\"https://uploadstatic.mihoyo.com/ys-obc/2022/08/30/6276411/6ffa1cfc6fec6d7282fee1bc37443ceb_8997401237227358173.png\"]}}}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/16/232866066/6058a9cda347decae60db9c4d345d4eb_5260600747926828086.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27381527","article_user_name":"Dramaturge","article_time":"1660603732","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"最后的宝藏"},{"content_id":2089,"title":"海岛冲刺提醒——检查一下你的绝版物品都收集全了吗?","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/22/232866066/d09c56f6e1d9ee20e5c0c1b6bb290cc4_1792942683608396790.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27719248","article_user_name":"Dramaturge","article_time":"1661126578","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神探索攻略——金苹果群岛,绝版物品收集。"},{"content_id":2087,"title":"【远海诗夏游纪】如诗如歌,夏之梦","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/2ba996fdbe0b0c3d1e1a61130dcae6a6_4355808914325897050.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25910900","article_user_name":"猫冬","article_time":"1658222980","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神任务攻略流程——【如诗如歌,夏之梦】攻略解密流程(寻找佩尔西科夫的笔记,寻找装置缺失的晶核)"},{"content_id":2086,"title":"【远海诗夏游纪】如诗如歌,夏之梦攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/20/232866066/5d7f3c432a9f182ef1c8d725078b95aa_4740929216228791836.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25946749","article_user_name":"Dramaturge","article_time":"1658281586","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——【如诗如歌,夏之梦攻略】攻略流程(寻找佩尔西科夫的笔记,寻找装置缺失的晶核)"},{"content_id":2085,"title":"最后的宝藏","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/16/232866066/6058a9cda347decae60db9c4d345d4eb_5260600747926828086.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27381527","article_user_name":"Dramaturge","article_time":"1660603732","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神任务攻略——【最后的宝藏】任务攻略流程。"},{"content_id":2084,"title":"限时世界任务「最后的宝藏」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/08/16/4896641/014907959f919d7b788ed108f11eae04_94728035530379223.png","bbs_url":"https://bbs.mihoyo.com/ys/article/27380323","article_user_name":"FTFuture","article_time":"1660598944","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「最后的宝藏」攻略解析。"},{"content_id":2044,"title":"【限时世界任务】四礁觅宝记","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/d67b3214e0f4c9d6f263838131b5a982_6448656731502144503.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25918395","article_user_name":"猫冬","article_time":"1658232188","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神任务攻略——金苹果群岛限时世界任务【四礁觅宝记】"},{"content_id":2043,"title":"【限时世界任务】寻物航行","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/6f325536344bc7265d0425c9bdef7d3c_1494279792781904305.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25916760","article_user_name":"猫冬","article_time":"1658230233","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神任务攻略——金苹果群岛限时世界任务【寻物航行】"},{"content_id":2042,"title":"【限时世界任务】正因其徒劳","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/a831114d80e6582068bab00f19bb767c_2256646260569956917.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25916077","article_user_name":"猫冬","article_time":"1658229361","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神任务攻略——金苹果群岛限时世界任务【正因其徒劳】"},{"content_id":2041,"title":"【限时世界任务】被错置的海螺","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/ae2a5561a67e6a933ff71911bae2be56_7515901277912766648.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25913567","article_user_name":"猫冬","article_time":"1658226198","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神任务攻略——金苹果群岛限时世界任务【被错置的海螺】。"},{"content_id":2040,"title":"【限时世界任务】被抛出的徽记","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/45d23ed5535179358f2db7acd3f67d1d_8297823968339103587.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25912577","article_user_name":"猫冬","article_time":"1658224975","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神任务攻略——金苹果群岛限时世界任务【被抛出的徽记】。"},{"content_id":2039,"title":"【限时世界任务】被丢失的合照","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/74019947/8642a0e003303729b70ef96c24f86579_4559897197163066566.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25911910","article_user_name":"猫冬","article_time":"1658224140","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神任务攻略——金苹果群岛限时世界任务【被丢失的合照】"},{"content_id":2038,"title":"【远海诗夏游纪】世界任务:寻物航行","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/232866066/012b0c8d0c19bac12734c04a0b3a3a69_6308195530484662866.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25881890","article_user_name":"Dramaturge","article_time":"1658185435","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——金苹果群岛,限时世界任务《寻物航行》攻略流程。"},{"content_id":2037,"title":"【远海诗夏游纪】亘古的苍星房间解谜#1(海螺)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/232866066/0366c5ebc4a47d5ab143bf9b32e1a554_3123781347932375539.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25885590","article_user_name":"Dramaturge","article_time":"1658191825","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——亘古的苍星房间解谜·其一"},{"content_id":2036,"title":"【远海诗夏游纪】亘古的苍星房间解谜#2","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/232866066/b6d152ead868080df7ed8c2e7ff13398_2968046659552944948.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25885668","article_user_name":"Dramaturge","article_time":"1658191914","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——亘古的苍星房间解谜·其二"},{"content_id":2035,"title":"【远海诗夏游纪】关于危危岛玩法、解密的岛屿攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/5861124/7f48aa3255c72869e48d2e0ba9cba56d_6135724859892866606.jpg","bbs_url":"https://bbs.mihoyo.com/ys/article/25881162","article_user_name":"悦弥","article_time":"1658183601","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"原神活动攻略——【远海诗夏游纪】危危岛探索攻略。"},{"content_id":2034,"title":"【远海诗夏游纪】危危岛世界任务-正因其徒劳","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/5861124/7f48aa3255c72869e48d2e0ba9cba56d_6799057966422967542.jpg","bbs_url":"https://bbs.mihoyo.com/ys/article/25882335","article_user_name":"悦弥","article_time":"1658186470","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"原神活动攻略——危危岛世界任务《正因其徒劳》攻略流程。"},{"content_id":2033,"title":"【远海诗夏游纪】星核点位全收集(含三华丽、方碑)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/19/5861124/7f48aa3255c72869e48d2e0ba9cba56d_263408212539156871.jpg","bbs_url":"https://bbs.mihoyo.com/ys/article/25886133","article_user_name":"悦弥","article_time":"1658192534","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/6fe85ccbdea0f27b716aef7b2e477ea5.png","summary":"原神活动攻略——【远海诗夏游纪】危危岛星核全收集攻略"},{"content_id":2032,"title":"【远海诗夏游纪】春庭景如旧,秘境宝箱攻略(一)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/16/232866066/0b921d06871e9cc7bab511c1e94d1357_666880127872027966.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25740986","article_user_name":"Dramaturge","article_time":"1657980598","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】春庭景如旧,秘境宝箱收集攻略一"},{"content_id":2031,"title":"【远海诗夏游纪】春庭景如旧,秘境宝箱攻略(二)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/17/232866066/e5c8a3d73b731ae2b70a51419c4f2773_6226954703808440185.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25749800","article_user_name":"Dramaturge","article_time":"1657988421","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】春庭景如旧,秘境宝箱收集攻略二"},{"content_id":2030,"title":"【远海诗夏游纪】春庭景如旧,秘境宝箱攻略(三)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/17/232866066/e438ef327bbab258d640620fc83dbd4c_1779258881941903556.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25753292","article_user_name":"Dramaturge","article_time":"1657993002","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】春庭景如旧,秘境宝箱收集攻略三"},{"content_id":2029,"title":"【远海诗夏游纪】烈火踏歌行,剧情任务攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/17/232866066/0eca930eb179769cef133961c5ff6530_2192500290369491872.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25757710","article_user_name":"Dramaturge","article_time":"1658009501","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】烈火踏歌行,剧情任务攻略"},{"content_id":2028,"title":"【远海诗夏游纪】烈火踏歌行,秘境全收集攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/17/232866066/aa19a1a0197335ee4a65221b08274185_9058419523356990686.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25761676","article_user_name":"Dramaturge","article_time":"1658017739","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】烈火踏歌行,秘境全收集攻略"},{"content_id":2027,"title":"【远海诗夏游纪】幽夜默示录秘境全收集(其一)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/18/232866066/3e7c77a33b9c5ec0a97bb75b8619b55b_7074585848661676048.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25817664","article_user_name":"Dramaturge","article_time":"1658098046","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】幽夜默示录秘境全收集(其一)"},{"content_id":2026,"title":"【远海诗夏游纪】幽夜默示录秘境全收集(其二)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/18/232866066/9754fdf2e4624211f17bbe23dd87d787_6920383395423732058.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25819912","article_user_name":"Dramaturge","article_time":"1658102411","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】幽夜默示录秘境全收集(其二)"},{"content_id":2025,"title":"【远海诗夏游纪】幽夜默示录秘境全收集(其三)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/18/232866066/9dcc5df1c3a457c4881e3bc832e446c0_7544239735956175191.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25821322","article_user_name":"Dramaturge","article_time":"1658104535","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2e3a18fbccd5fc1ce5cda7b86beeb967.png","summary":"原神活动攻略——【远海诗夏游纪】幽夜默示录秘境全收集(其三)"},{"content_id":2024,"title":"金苹果群岛宝箱收集(7.17)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/17/4896641/4373e4c0113d41a9de868ce79a31c4e4_1355706716781241180.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25784723","article_user_name":"FTFuture","article_time":"1658045824","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神活动攻略——金苹果群岛第三天宝箱收集攻略。"},{"content_id":2023,"title":"金苹果群岛宝箱收集(7.16)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/16/4896641/c706ef79cb083529163d29f61ef34723_2507349846227234539.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25730411","article_user_name":"FTFuture","article_time":"1657969592","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神活动攻略—— 金苹果群岛第二天宝箱收集攻略。"},{"content_id":2022,"title":"破破岛错置海螺及摆设图纸获得方法","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/17/4896641/ee033aa9d9dc63adfa80d34cba7036b5_6546348521680893935.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25761292","article_user_name":"FTFuture","article_time":"1658017127","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神活动攻略——破破岛,摆设图纸获取攻略。"},{"content_id":2021,"title":"鸣弦列岛宝箱收集流程(共16个)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/17/4896641/17701fa566ce9174ea7a9bf20c462c1d_2420221079382305111.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25809881","article_user_name":"FTFuture","article_time":"1658075036","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神活动攻略——鸣弦列岛宝箱收集流程"},{"content_id":2020,"title":"谜鸦论处宝箱收集","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/18/4896641/6c966c4353bfb10409bce43a90bc3a46_4167029136379809989.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25820922","article_user_name":"FTFuture","article_time":"1658103936","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神活动攻略——谜鸦论处宝箱收集攻略。"},{"content_id":2019,"title":"布丁岛全组合全宝箱收集攻略","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/16/4896641/c3215d383cbac397b7824ea3d9d69a0f_3938633429063870679.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25725713","article_user_name":"FTFuture","article_time":"1657964690","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神活动攻略——布丁岛全组合全宝箱收集攻略"},{"content_id":2018,"title":"悠悠云阶宝箱收集","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/16/4896641/cbcf3b682cb06f19b0c660e26a020c4e_6314629718320319700.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25707074","article_user_name":"FTFuture","article_time":"1657945652","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神解密攻略——金苹果群岛——悠悠云阶宝箱收集"},{"content_id":2017,"title":"布丁岛三种类元素方碑解谜","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/16/4896641/9d972d4025740785f4e669928fb4a829_5678895754772328754.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25701579","article_user_name":"FTFuture","article_time":"1657939986","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神角色攻略——布丁岛解密攻略。"},{"content_id":2016,"title":"限时世界任务「渴望旅行的妖狸」","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/16/4896641/104c35d906beb558194c7a9a981a92b7_5800376888803972430.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25692904","article_user_name":"FTFuture","article_time":"1657929484","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/222b847170feb3f2babcc1bd4f0e30dd.png","summary":"原神任务攻略——「渴望旅行的妖狸」任务攻略流程"},{"content_id":2014,"title":"【远海诗夏游纪】逸速穿浪详解","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/15/73705865/51706829ce1f10f6bb14b85fdd5ad098_2905940499627404396.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25643361","article_user_name":"mr.xiaoba","article_time":"1657861168","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/15ed0f56b48f97eefb749fd54c88f823.png","summary":"原神活动攻略——远海诗夏游纪第一阶段逸速穿浪活动攻略。"},{"content_id":2013,"title":"【远海诗夏游纪】再临!金苹果假日","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/15/74019947/fb85a3f571ee6135704c32f072e979e6_5333016976005366729.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25639117","article_user_name":"猫冬","article_time":"1657857721","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神活动攻略——远海诗夏游纪,活动攻略。"},{"content_id":2012,"title":"【幻声留形】环境海螺全收集(持续更新)当前可收集到14个海螺","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/15/74019947/9893cb538c97a34991b21798b164611b_1411112198728968601.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25645821","article_user_name":"猫冬","article_time":"1657863197","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/fef5df089c483c98792dc3ca6967a586.png","summary":"原神活动攻略——金苹果群岛,海螺收集攻略"},{"content_id":2011,"title":"海螺全收集!来拿菲谢尔皮肤吧(目前版本为14个)","ext":"{}","icon":"https://upload-bbs.mihoyo.com/upload/2022/07/15/184753361/709337eab2432ea266ddcef6328327a1_4209769290300390752.png","bbs_url":"https://bbs.mihoyo.com/ys/article/25642242","article_user_name":"老兵菜鸟","article_time":"1657860206","avatar_url":"https://img-static.mihoyo.com/communityweb/upload/2b88dc71beca9f3e0e4248e8456213f0.png","summary":"原神活动攻略——金苹果群岛,海螺收集攻略(14个)"}],"layout":"","entry_limit":0,"hidden":false}],"list":[],"layout":"","entry_limit":0,"hidden":false}]}}
\ No newline at end of file
diff --git a/GenshinUID/genshinuid_note/__init__.py b/GenshinUID/genshinuid_note/__init__.py
new file mode 100644
index 00000000..14517c7e
--- /dev/null
+++ b/GenshinUID/genshinuid_note/__init__.py
@@ -0,0 +1,29 @@
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+
+from .note_text import award
+from ..utils.convert import get_uid
+from ..utils.database import active_sqla
+from ..utils.error_reply import UID_HINT
+from .draw_note_card import draw_note_img
+
+
+# 群聊内 每月统计 功能
+@SV('查询札记').on_fullmatch(('每月统计'))
+async def send_monthly_data(bot: Bot, ev: Event):
+ sqla = active_sqla[bot.bot_id]
+ uid = await sqla.get_bind_uid(ev.user_id)
+ if uid is None:
+ return UID_HINT
+ await bot.send(await award(uid))
+
+
+@SV('查询札记').on_fullmatch(('当前信息', 'zj', '札记'))
+async def send_monthly_pic(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[每日信息]')
+ uid = await get_uid(bot, ev)
+ if uid is None:
+ return UID_HINT
+ im = await draw_note_img(str(uid))
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_note/draw_note_card.py b/GenshinUID/genshinuid_note/draw_note_card.py
new file mode 100644
index 00000000..6021d903
--- /dev/null
+++ b/GenshinUID/genshinuid_note/draw_note_card.py
@@ -0,0 +1,174 @@
+from pathlib import Path
+from typing import Union
+
+from nonebot.log import logger
+from PIL import Image, ImageDraw
+
+from ..utils.mys_api import mys_api
+from ..utils.error_reply import get_error
+from ..utils.image.convert import convert_img
+from ..utils.image.image_tools import get_color_bg
+from ..utils.fonts.genshin_fonts import gs_font_26, gs_font_38, gs_font_58
+
+TEXT_PATH = Path(__file__).parent / 'texture2d'
+
+note_pic = Image.open(TEXT_PATH / 'note.png')
+oops_pic = Image.open(TEXT_PATH / 'oops.png')
+ok_pic = Image.open(TEXT_PATH / 'ok.png')
+
+first_color = (29, 29, 29)
+second_color = (67, 61, 56)
+
+COLOR_MAP = {
+ '邮件奖励': (127, 115, 173),
+ '每日活跃': (190, 158, 97),
+ '活动奖励': (89, 126, 162),
+ '深境螺旋': (113, 152, 113),
+ '冒险奖励': (220, 99, 96),
+ '任务奖励': (107, 182, 181),
+ '其他': (118, 168, 196),
+ 'Mail': (127, 115, 173),
+ 'Daily Activity': (190, 158, 97),
+ 'Events': (89, 126, 162),
+ 'Spiral Abyss': (113, 152, 113),
+ 'Adventure': (220, 99, 96),
+ 'Quests': (107, 182, 181),
+ 'Other': (118, 168, 196),
+}
+
+
+async def draw_note_img(uid: str) -> Union[bytes, str]:
+ # 获取数据
+ data = await mys_api.get_award(uid)
+ if isinstance(data, int):
+ return get_error(data)
+ # nickname = data['nickname']
+ day_stone = data['day_data']['current_primogems']
+ day_mora = data['day_data']['current_mora']
+ lastday_stone = 0
+ lastday_mora = 0
+ if int(uid[0]) < 6:
+ lastday_stone = data['day_data']['last_primogems']
+ lastday_mora = data['day_data']['last_mora']
+ month_stone = data['month_data']['current_primogems']
+ month_mora = data['month_data']['current_mora']
+ lastmonth_stone = data['month_data']['last_primogems']
+ lastmonth_mora = data['month_data']['last_mora']
+
+ day_stone_str = await int_carry(day_stone)
+ day_mora_str = await int_carry(day_mora)
+ month_stone_str = await int_carry(month_stone)
+ month_mora_str = await int_carry(month_mora)
+ lastday_stone_str = f'昨日原石:{await int_carry(lastday_stone)}'
+ lastday_mora_str = f'昨日摩拉:{await int_carry(lastday_mora)}'
+ lastmonth_stone_str = f'上月原石:{await int_carry(lastmonth_stone)}'
+ lastmonth_mora_str = f'上月摩拉:{await int_carry(lastmonth_mora)}'
+
+ # 处理数据
+ # 今日比昨日 原石
+ day_stone_percent = day_stone / lastday_stone if lastday_stone != 0 else 1
+ day_stone_percent = day_stone_percent if day_stone_percent <= 1 else 1
+ # 今日比昨日 摩拉
+ day_mora_percent = day_mora / lastday_mora if lastday_mora != 0 else 1
+ day_mora_percent = day_mora_percent if day_mora_percent <= 1 else 1
+ # 本月比上月 原石
+ month_stone_percent = (
+ month_stone / lastmonth_stone if lastmonth_stone != 0 else 1
+ )
+ month_stone_percent = (
+ month_stone_percent if month_stone_percent <= 1 else 1
+ )
+ # 本月比上月 摩拉
+ month_mora_percent = (
+ month_mora / lastmonth_mora if lastmonth_mora != 0 else 1
+ )
+ month_mora_percent = month_mora_percent if month_mora_percent <= 1 else 1
+
+ # 获取背景图片各项参数
+ based_w = 850
+ based_h = 1900
+
+ img = await get_color_bg(based_w, based_h)
+ img.paste(note_pic, (0, 0), note_pic)
+
+ ring_pic = Image.open(TEXT_PATH / 'ring.apng')
+ ring_list = []
+ ring_list.append([int(day_stone_percent * 49 + 0.5), (-5, 475)])
+ ring_list.append([int(day_mora_percent * 49 + 0.5), (371, 475)])
+ ring_list.append([int(month_stone_percent * 49 + 0.5), (-5, 948)])
+ ring_list.append([int(month_mora_percent * 49 + 0.5), (371, 948)])
+ ring_list.sort(key=lambda x: -x[0], reverse=True)
+ for i in ring_list:
+ ring_pic.seek(i[0])
+ img.paste(ring_pic, i[1], ring_pic)
+
+ img_draw = ImageDraw.Draw(img)
+ # UID
+ img_draw.text((430, 464), f'UID {uid}', second_color, gs_font_38, 'mm')
+
+ # 具体数据
+ img_draw.text((243, 718), day_stone_str, first_color, gs_font_58, 'mm')
+ img_draw.text((625, 718), day_mora_str, first_color, gs_font_58, 'mm')
+ img_draw.text((245, 1192), month_stone_str, first_color, gs_font_58, 'mm')
+ img_draw.text((621, 1192), month_mora_str, first_color, gs_font_58, 'mm')
+
+ img_draw.text(
+ (245, 923), lastday_stone_str, second_color, gs_font_26, 'mm'
+ )
+ img_draw.text((621, 923), lastday_mora_str, second_color, gs_font_26, 'mm')
+ img_draw.text(
+ (245, 1396), lastmonth_stone_str, second_color, gs_font_26, 'mm'
+ )
+ img_draw.text(
+ (621, 1396), lastmonth_mora_str, second_color, gs_font_26, 'mm'
+ )
+
+ if data['month_data']['group_by'] == []:
+ for index, action in enumerate(COLOR_MAP):
+ if action == '其他':
+ continue
+ img_draw.text(
+ (614, 1535 + index * 52),
+ f'{action}:无',
+ second_color,
+ gs_font_26,
+ 'mm',
+ )
+ img.paste(oops_pic, (106, 1513), oops_pic)
+ else:
+ xy = ((94, 1515), (384, 1805))
+ temp = -90
+ for index, i in enumerate(data['month_data']['group_by']):
+ img_draw.pieslice(
+ xy,
+ temp,
+ temp + (i['percent'] / 100) * 360,
+ COLOR_MAP[i['action']],
+ )
+ temp = temp + (i['percent'] / 100) * 360
+ if i['action'] == '其他':
+ continue
+ img_draw.rectangle(
+ ((407, 1523 + index * 52), (453, 1548 + index * 52)),
+ fill=COLOR_MAP[i['action']],
+ )
+ img_draw.text(
+ (614, 1535 + index * 52),
+ f'{i["action"]}:{i["num"]}',
+ second_color,
+ gs_font_26,
+ 'mm',
+ )
+ img.paste(ok_pic, (115, 1535), ok_pic)
+
+ img = await convert_img(img)
+ logger.info('[原石札记] 图片绘制完成!等待发送...')
+ return img
+
+
+async def int_carry(i: int) -> str:
+ if i >= 100000:
+ i_str = '{:.1f}W'.format(i / 10000)
+ else:
+ i_str = str(i)
+ return i_str
diff --git a/GenshinUID/genshinuid_note/note_text.py b/GenshinUID/genshinuid_note/note_text.py
new file mode 100644
index 00000000..3e4e1868
--- /dev/null
+++ b/GenshinUID/genshinuid_note/note_text.py
@@ -0,0 +1,67 @@
+from ..utils.mys_api import mys_api
+from ..utils.error_reply import get_error
+
+month_im = """
+==============
+{}
+UID:{}
+==============
+本日获取原石:{}
+本日获取摩拉:{}
+==============
+昨日获取原石:{}
+昨日获取摩拉:{}
+==============
+本月获取原石:{}
+本月获取摩拉:{}
+==============
+上月获取原石:{}
+上月获取摩拉:{}
+==============
+原石收入组成:
+{}=============="""
+
+
+async def award(uid) -> str:
+ data = await mys_api.get_award(uid)
+ if isinstance(data, int):
+ return get_error(data)
+ nickname = data['nickname']
+ day_stone = data['day_data']['current_primogems']
+ day_mora = data['day_data']['current_mora']
+ lastday_stone = 0
+ lastday_mora = 0
+ if int(uid[0]) < 6:
+ lastday_stone = data['day_data']['last_primogems']
+ lastday_mora = data['day_data']['last_mora']
+ month_stone = data['month_data']['current_primogems']
+ month_mora = data['month_data']['current_mora']
+ lastmonth_stone = data['month_data']['last_primogems']
+ lastmonth_mora = data['month_data']['last_mora']
+ group_str = ''
+ for i in data['month_data']['group_by']:
+ group_str = (
+ group_str
+ + i['action']
+ + ':'
+ + str(i['num'])
+ + '('
+ + str(i['percent'])
+ + '%)'
+ + '\n'
+ )
+
+ im = month_im.format(
+ nickname,
+ uid,
+ day_stone,
+ day_mora,
+ lastday_stone,
+ lastday_mora,
+ month_stone,
+ month_mora,
+ lastmonth_stone,
+ lastmonth_mora,
+ group_str,
+ )
+ return im
diff --git a/GenshinUID/genshinuid_note/texture2d/note.png b/GenshinUID/genshinuid_note/texture2d/note.png
new file mode 100644
index 00000000..552753ea
Binary files /dev/null and b/GenshinUID/genshinuid_note/texture2d/note.png differ
diff --git a/GenshinUID/genshinuid_note/texture2d/ok.png b/GenshinUID/genshinuid_note/texture2d/ok.png
new file mode 100644
index 00000000..8ef1fff1
Binary files /dev/null and b/GenshinUID/genshinuid_note/texture2d/ok.png differ
diff --git a/GenshinUID/genshinuid_note/texture2d/oops.png b/GenshinUID/genshinuid_note/texture2d/oops.png
new file mode 100644
index 00000000..1186e219
Binary files /dev/null and b/GenshinUID/genshinuid_note/texture2d/oops.png differ
diff --git a/GenshinUID/genshinuid_note/texture2d/ring.apng b/GenshinUID/genshinuid_note/texture2d/ring.apng
new file mode 100644
index 00000000..b9705cff
Binary files /dev/null and b/GenshinUID/genshinuid_note/texture2d/ring.apng differ
diff --git a/GenshinUID/genshinuid_resin/__init__.py b/GenshinUID/genshinuid_resin/__init__.py
new file mode 100644
index 00000000..8bbeb8e1
--- /dev/null
+++ b/GenshinUID/genshinuid_resin/__init__.py
@@ -0,0 +1,61 @@
+import asyncio
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.gss import gss
+from gsuid_core.models import Event
+from gsuid_core.aps import scheduler
+from gsuid_core.logger import logger
+from gsuid_core.segment import MessageSegment
+
+from ..utils.convert import get_uid
+from .notice import get_notice_list
+from .resin_text import get_resin_text
+from ..utils.error_reply import UID_HINT
+from .draw_resin_card import get_resin_img
+
+
+@SV('查询体力').on_fullmatch(('当前状态'))
+async def send_daily_info(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[每日信息文字版]')
+ uid = await get_uid(bot, ev)
+ if uid is None:
+ return await bot.send(UID_HINT)
+ await bot.logger.info('[每日信息文字版]UID: {}'.format(uid))
+
+ im = await get_resin_text(uid)
+ await bot.send(im)
+
+
+@scheduler.scheduled_job('cron', minute='*/30')
+async def notice_job():
+ result = await get_notice_list()
+ logger.info('[推送检查]完成!等待消息推送中...')
+ # 执行私聊推送
+
+ for bot_id in result:
+ bot = gss.active_bot[bot_id]
+ for user_id in result[bot_id]['direct']:
+ msg = result[bot_id]['direct'][user_id]
+ await bot.target_send(msg, 'direct', user_id)
+ await asyncio.sleep(0.5)
+ logger.info('[推送检查] 私聊推送完成')
+ for gid in result[bot_id]['group']:
+ msg_list = []
+ for user_id in result[bot_id]['group'][gid]:
+ msg_list.append(MessageSegment.at(user_id))
+ msg = result[bot_id]['group'][gid][user_id]
+ msg_list.append(MessageSegment.text(msg))
+ await bot.target_send(msg_list, 'group', gid)
+ await asyncio.sleep(0.5)
+ logger.info('[推送检查] 群聊推送完成')
+
+
+@SV('查询体力').on_fullmatch(('每日', 'mr', '实时便笺', '便笺', '便签'))
+async def send_daily_info_pic(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[每日信息]')
+ user_id = ev.at if ev.at else ev.user_id
+ await bot.logger.info('[每日信息]QQ号: {}'.format(user_id))
+
+ im = await get_resin_img(bot.bot_id, user_id)
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_resin/draw_resin_card.py b/GenshinUID/genshinuid_resin/draw_resin_card.py
new file mode 100644
index 00000000..aee53a82
--- /dev/null
+++ b/GenshinUID/genshinuid_resin/draw_resin_card.py
@@ -0,0 +1,339 @@
+import json
+import asyncio
+from typing import List
+from pathlib import Path
+
+from nonebot.log import logger
+from PIL import Image, ImageDraw
+
+from ..utils.mys_api import mys_api
+from ..utils.database import active_sqla
+from ..utils.image.convert import convert_img
+from ..genshinuid_enka.to_data import get_enka_info
+from ..gsuid_utils.api.mys.models import Expedition
+from ..utils.image.image_tools import get_simple_bg
+from ..utils.map.name_covert import enName_to_avatarId
+from ..utils.resource.RESOURCE_PATH import PLAYER_PATH, CHAR_SIDE_PATH
+from ..utils.fonts.genshin_fonts import (
+ gs_font_20,
+ gs_font_26,
+ gs_font_32,
+ gs_font_60,
+)
+
+TEXT_PATH = Path(__file__).parent / 'texture2D'
+
+resin_fg_pic = Image.open(TEXT_PATH / 'resin_fg.png')
+yes_pic = Image.open(TEXT_PATH / 'yes.png')
+no_pic = Image.open(TEXT_PATH / 'no.png')
+warn_pic = Image.open(TEXT_PATH / 'warn.png')
+
+based_w = 500
+based_h = 900
+white_overlay = Image.new('RGBA', (based_w, based_h), (255, 251, 242, 225))
+
+first_color = (29, 29, 29)
+second_color = (98, 98, 98)
+green_color = (15, 196, 35)
+orange_color = (237, 115, 61)
+red_color = (235, 61, 75)
+
+
+async def _draw_task_img(
+ img: Image.Image,
+ img_draw: ImageDraw.ImageDraw,
+ index: int,
+ char: Expedition,
+):
+ char_en_name = char['avatar_side_icon'].split('_')[-1].split('.')[0]
+ avatar_id = await enName_to_avatarId(char_en_name)
+ char_pic = (
+ Image.open(CHAR_SIDE_PATH / f'{avatar_id}.png')
+ .convert('RGBA')
+ .resize((80, 80), Image.Resampling.LANCZOS) # type: ignore
+ )
+ img.paste(char_pic, (22 + index * 90, 770), char_pic)
+ if char['status'] == 'Finished':
+ status_mark = '待收取'
+ status_color = red_color
+ else:
+ status_mark = '已派遣'
+ status_color = green_color
+ img_draw.text(
+ (65 + index * 90, 870),
+ status_mark,
+ font=gs_font_20,
+ fill=status_color,
+ anchor='mm',
+ )
+
+
+async def get_resin_img(bot_id: str, user_id: str):
+ try:
+ sqla = active_sqla[bot_id]
+ uid_list: List = await sqla.get_bind_uid_list(user_id)
+ logger.info('[每日信息]UID: {}'.format(uid_list))
+ # 进行校验UID是否绑定CK
+ useable_uid_list = []
+ for uid in uid_list:
+ status = await sqla.get_user_cookie(uid)
+ if status is not None:
+ useable_uid_list.append(uid)
+ logger.info('[每日信息]可用UID: {}'.format(useable_uid_list))
+ if len(useable_uid_list) == 0:
+ return '请先绑定一个可用CK & UID再来查询哦~'
+ # 开始绘图任务
+ task = []
+ img = Image.new(
+ 'RGBA', (based_w * len(useable_uid_list), based_h), (0, 0, 0, 0)
+ )
+ for uid_index, uid in enumerate(useable_uid_list):
+ task.append(_draw_all_resin_img(img, uid, uid_index))
+ await asyncio.gather(*task)
+ res = await convert_img(img)
+ logger.info('[查询每日信息]绘图已完成,等待发送!')
+ except TypeError:
+ logger.exception('[查询每日信息]绘图失败!')
+ res = '你绑定过的UID中可能存在过期CK~请重新绑定一下噢~'
+
+ return res
+
+
+async def _draw_all_resin_img(img: Image.Image, uid: str, index: int):
+ resin_img = await draw_resin_img(uid)
+ img.paste(resin_img, (500 * index, 0), resin_img)
+
+
+async def seconds2hours(seconds: int) -> str:
+ m, s = divmod(int(seconds), 60)
+ h, m = divmod(m, 60)
+ return '%02d小时%02d分' % (h, m)
+
+
+async def draw_resin_img(uid: str) -> Image.Image:
+ # 获取数据
+ daily_data = await mys_api.get_daily_data(uid)
+
+ # 获取背景图片各项参数
+ img = await get_simple_bg(based_w, based_h)
+ img.paste(white_overlay, (0, 0), white_overlay)
+
+ if isinstance(daily_data, int):
+ img_draw = ImageDraw.Draw(img)
+ img.paste(warn_pic, (0, 0), warn_pic)
+ # 写UID
+ img_draw.text(
+ (250, 553),
+ f'UID{uid}',
+ font=gs_font_26,
+ fill=first_color,
+ anchor='mm',
+ )
+ img_draw.text(
+ (250, 518),
+ f'错误码 {daily_data}',
+ font=gs_font_26,
+ fill=red_color,
+ anchor='mm',
+ )
+ return img
+
+ enta_data_path = PLAYER_PATH / uid / 'rawData.json'
+ if enta_data_path.exists():
+ with open(enta_data_path, 'r', encoding='utf-8') as f:
+ player_data = json.load(f)
+ else:
+ try:
+ player_data = await get_enka_info(uid)
+ except Exception:
+ player_data = {}
+
+ # 处理数据
+ if player_data and 'playerInfo' in player_data:
+ if 'signature' in player_data['playerInfo']:
+ signature = player_data['playerInfo']['signature']
+ else:
+ signature = '该旅行者还没有签名噢~'
+ world_level = player_data['playerInfo']['level']
+ world_level_str = f'探索等级{str(world_level)}'
+ else:
+ signature = '暂无获取数据'
+ world_level_str = '暂无数据'
+
+ img.paste(resin_fg_pic, (0, 0), resin_fg_pic)
+
+ # 树脂
+ resin = daily_data['current_resin']
+ max_resin = daily_data['max_resin']
+ resin_str = f'{resin}/{max_resin}'
+ resin_percent = resin / max_resin
+ if resin_percent > 0.8:
+ resin_color = red_color
+ else:
+ resin_color = second_color
+ resin_recovery_time = await seconds2hours(
+ daily_data['resin_recovery_time']
+ )
+
+ delay = 53
+ # 洞天宝钱
+ home_coin = daily_data['current_home_coin']
+ max_home_coin = daily_data['max_home_coin']
+ home_coin_str = f'{home_coin}/{max_home_coin}'
+ if max_home_coin - home_coin < 200:
+ home_coin_mark = '可收取'
+ home_coin_color = red_color
+ img.paste(no_pic, (35, 559), no_pic)
+ else:
+ home_coin_mark = '已收取'
+ home_coin_color = green_color
+ img.paste(yes_pic, (35, 559), yes_pic)
+ # 完成委托
+ finish_task = daily_data['finished_task_num']
+ total_task = daily_data['total_task_num']
+ is_task_reward = daily_data['is_extra_task_reward_received']
+ task_str = f'{finish_task}/{total_task}'
+ if is_task_reward:
+ task_mark = '已领取'
+ task_color = green_color
+ img.paste(yes_pic, (35, 559 + delay), yes_pic)
+ else:
+ task_mark = '未领取'
+ task_color = red_color
+ img.paste(no_pic, (35, 559 + delay), no_pic)
+ # 周本减半
+ weekly_half = daily_data['remain_resin_discount_num']
+ max_weekly_half = daily_data['resin_discount_num_limit']
+ weekly_half_str = f'{weekly_half}/{max_weekly_half}'
+ if weekly_half == 0:
+ weekly_half_mark = '已使用'
+ weekly_half_color = green_color
+ img.paste(yes_pic, (35, 559 + delay * 2), yes_pic)
+ else:
+ weekly_half_mark = '未用完'
+ weekly_half_color = red_color
+ img.paste(no_pic, (35, 559 + delay * 2), no_pic)
+ # 参量质变仪
+ transformer = daily_data['transformer']['recovery_time']['reached']
+ transformer_day = daily_data['transformer']['recovery_time']['Day']
+ transformer_hour = daily_data['transformer']['recovery_time']['Hour']
+ transformer_str = f'还剩{transformer_day}天{transformer_hour}小时'
+ if transformer:
+ transformer_mark = '可使用'
+ transformer_color = red_color
+ img.paste(no_pic, (35, 559 + delay * 3), no_pic)
+ else:
+ transformer_mark = '已使用'
+ transformer_color = green_color
+ img.paste(yes_pic, (35, 559 + delay * 3), yes_pic)
+
+ img_draw = ImageDraw.Draw(img)
+
+ # 派遣
+ task_task = []
+ for index, char in enumerate(daily_data['expeditions']):
+ task_task.append(_draw_task_img(img, img_draw, index, char))
+ await asyncio.gather(*task_task)
+
+ # 绘制树脂圆环
+ ring_pic = Image.open(TEXT_PATH / 'ring.apng')
+ percent = (
+ round(resin_percent * 49) if round(resin_percent * 49) <= 49 else 49
+ )
+ ring_pic.seek(percent)
+ img.paste(ring_pic, (0, 0), ring_pic)
+
+ # 写树脂剩余时间
+ img_draw.text(
+ (250, 370),
+ f'还剩{resin_recovery_time}',
+ font=gs_font_20,
+ fill=resin_color,
+ anchor='mm',
+ )
+ # 写签名
+ img_draw.text(
+ (48, 137), signature, font=gs_font_26, fill=second_color, anchor='lm'
+ )
+ # 写UID
+ img_draw.text(
+ (250, 518), f'UID{uid}', font=gs_font_26, fill=first_color, anchor='mm'
+ )
+ # 写探索等级
+ img_draw.text(
+ (250, 281),
+ world_level_str,
+ font=gs_font_26,
+ fill=second_color,
+ anchor='mm',
+ )
+ # 写树脂
+ img_draw.text(
+ (250, 327),
+ resin_str,
+ font=gs_font_60,
+ fill=first_color,
+ anchor='mm',
+ )
+ # 写洞天宝钱
+ img_draw.text(
+ (335, 588),
+ home_coin_str,
+ font=gs_font_20,
+ fill=first_color,
+ anchor='lm',
+ )
+ img_draw.text(
+ (225, 584),
+ home_coin_mark,
+ font=gs_font_32,
+ fill=home_coin_color,
+ anchor='lm',
+ )
+ # 写完成委托
+ img_draw.text(
+ (335, 588 + delay),
+ task_str,
+ font=gs_font_20,
+ fill=first_color,
+ anchor='lm',
+ )
+ img_draw.text(
+ (225, 584 + delay),
+ task_mark,
+ font=gs_font_32,
+ fill=task_color,
+ anchor='lm',
+ )
+ # 写周本减半
+ img_draw.text(
+ (335, 588 + delay * 2),
+ weekly_half_str,
+ font=gs_font_20,
+ fill=first_color,
+ anchor='lm',
+ )
+ img_draw.text(
+ (225, 584 + delay * 2),
+ weekly_half_mark,
+ font=gs_font_32,
+ fill=weekly_half_color,
+ anchor='lm',
+ )
+ # 写参量质变仪
+ img_draw.text(
+ (335, 588 + delay * 3),
+ transformer_str,
+ font=gs_font_20,
+ fill=first_color,
+ anchor='lm',
+ )
+ img_draw.text(
+ (225, 584 + delay * 3),
+ transformer_mark,
+ font=gs_font_32,
+ fill=transformer_color,
+ anchor='lm',
+ )
+
+ return img
diff --git a/GenshinUID/genshinuid_resin/notice.py b/GenshinUID/genshinuid_resin/notice.py
new file mode 100644
index 00000000..d1d0fe12
--- /dev/null
+++ b/GenshinUID/genshinuid_resin/notice.py
@@ -0,0 +1,125 @@
+from typing import Dict
+
+from gsuid_core.gss import gss
+from nonebot.log import logger
+
+from ..utils.mys_api import mys_api
+from ..utils.database import active_sqla
+from ..genshinuid_config.gs_config import gsconfig
+from ..gsuid_utils.api.mys.models import DailyNoteData
+
+MR_NOTICE = '\n可发送[mr]或者[每日]来查看更多信息!\n'
+
+NOTICE = {
+ 'coin': f'你的洞天宝钱快满啦!{MR_NOTICE}',
+ 'resin': f'你的树脂/体力快满啦!{MR_NOTICE}',
+ 'go': f'你有派遣信息即将可收取!{MR_NOTICE}',
+ 'transform': f'你的质变仪即将可使用!{MR_NOTICE}',
+}
+
+
+async def get_notice_list() -> Dict[str, Dict[str, Dict]]:
+ msg_dict: Dict[str, Dict[str, Dict]] = {}
+ for bot_id in gss.active_bot:
+ sqla = active_sqla[bot_id]
+ user_list = await sqla.get_all_push_user_list()
+ for user in user_list:
+ raw_data = await mys_api.get_daily_data(user.uid)
+ if isinstance(raw_data, int):
+ logger.error(f'[推送提醒]获取{user.uid}的数据失败!')
+ continue
+ push_data = await sqla.select_push_data(user.uid)
+ msg_dict = await all_check(
+ bot_id,
+ raw_data,
+ push_data.__dict__,
+ msg_dict,
+ user.user_id,
+ user.uid,
+ )
+ return msg_dict
+
+
+async def all_check(
+ bot_id: str,
+ raw_data: DailyNoteData,
+ push_data: Dict,
+ msg_dict: Dict[str, Dict[str, Dict]],
+ user_id: str,
+ uid: str,
+) -> Dict[str, Dict[str, Dict]]:
+ sqla = active_sqla[bot_id]
+ for mode in NOTICE.keys():
+ # 检查条件
+ if push_data[f'{mode}_is_push'] == 'on':
+ if gsconfig.get_config('CrazyNotice').data:
+ if not await check(mode, raw_data, push_data[f'{mode}_value']):
+ await sqla.update_push_data(
+ uid, {f'{mode}_is_push': 'off'}
+ )
+ continue
+ # 准备推送
+ if await check(mode, raw_data, push_data[f'{mode}_value']):
+ if push_data[f'{mode}_push'] == 'off':
+ pass
+ # on 推送到私聊
+ else:
+ # 初始化
+ if bot_id not in msg_dict:
+ msg_dict[bot_id] = {'direct': {}, 'group': {}}
+
+ if push_data[f'{mode}_push'] == 'on':
+ # 添加私聊信息
+ if user_id not in msg_dict[bot_id]['direct']:
+ msg_dict[bot_id]['direct'][user_id] = NOTICE[mode]
+ else:
+ msg_dict[bot_id]['direct'][user_id] += NOTICE[mode]
+ await sqla.update_push_data(uid, {f'{mode}_is_push': 'on'})
+ # 群号推送到群聊
+ else:
+ # 初始化
+ gid = f'{mode}_push'
+ if push_data[gid] not in msg_dict[bot_id]['group']:
+ msg_dict[bot_id]['direct'][gid] = {}
+
+ if user_id not in msg_dict[bot_id]['direct'][gid]:
+ msg_dict[bot_id]['direct'][gid][user_id] = NOTICE[mode]
+ else:
+ msg_dict[bot_id]['direct'][gid][user_id] += NOTICE[
+ mode
+ ]
+ await sqla.update_push_data(uid, {f'{mode}_is_push': 'on'})
+ return msg_dict
+
+
+async def check(mode: str, data: DailyNoteData, limit: int) -> bool:
+ if mode == 'coin':
+ if data['current_home_coin'] >= limit:
+ return True
+ elif data['current_home_coin'] >= data['max_home_coin']:
+ return True
+ else:
+ return False
+ if mode == 'resin':
+ if data['current_resin'] >= limit:
+ return True
+ elif data['current_resin'] >= data['max_resin']:
+ return True
+ else:
+ return False
+ if mode == 'go':
+ for i in data['expeditions']:
+ if i['status'] == 'Ongoing':
+ if int(i['remained_time']) <= limit * 60:
+ return True
+ else:
+ return True
+ return False
+ if mode == 'transform':
+ if data['transformer']['obtained']:
+ time = data['transformer']['recovery_time']
+ time_min = (time['Day'] * 24 + time['Hour']) * 60 + time['Minute']
+ if time_min <= limit:
+ return True
+ return False
+ return False
diff --git a/GenshinUID/genshinuid_resin/resin_text.py b/GenshinUID/genshinuid_resin/resin_text.py
new file mode 100644
index 00000000..059420c8
--- /dev/null
+++ b/GenshinUID/genshinuid_resin/resin_text.py
@@ -0,0 +1,126 @@
+import math
+from typing import List
+
+from nonebot.log import logger
+
+from ..utils.mys_api import mys_api
+from ..utils.error_reply import get_error
+from ..utils.map.name_covert import avatar_id_to_name, enName_to_avatarId
+
+daily_im = """*数据刷新可能存在一定延迟,请以当前游戏实际数据为准
+==============
+原粹树脂:{}/{}{}
+每日委托:{}/{} 奖励{}领取
+减半已用:{}/{}
+洞天宝钱:{}
+参量质变仪:{}
+探索派遣:
+总数/完成/上限:{}/{}/{}
+{}"""
+
+
+def seconds2hours(seconds: int) -> str:
+ m, s = divmod(int(seconds), 60)
+ h, m = divmod(m, 60)
+ return '%02d:%02d:%02d' % (h, m, s)
+
+
+async def get_resin_text(uid: str) -> str:
+ try:
+ dailydata = await mys_api.get_daily_data(uid)
+ if isinstance(dailydata, int):
+ return get_error(dailydata)
+ max_resin = dailydata['max_resin']
+ rec_time = ''
+ current_resin = dailydata['current_resin']
+ if current_resin < 160:
+ resin_recovery_time = seconds2hours(
+ dailydata['resin_recovery_time']
+ )
+ next_resin_rec_time = seconds2hours(
+ 8 * 60
+ - (
+ (dailydata['max_resin'] - dailydata['current_resin'])
+ * 8
+ * 60
+ - int(dailydata['resin_recovery_time'])
+ )
+ )
+ rec_time = f' ({next_resin_rec_time}/{resin_recovery_time})'
+
+ current_expedition_num = dailydata['current_expedition_num']
+ max_expedition_num = dailydata['max_expedition_num']
+ finished_expedition_num = 0
+ expedition_info: List[str] = []
+ for expedition in dailydata['expeditions']:
+ avatar: str = expedition['avatar_side_icon'][89:-4]
+ try:
+ avatar_name: str = await enName_to_avatarId(avatar)
+ avatar_name: str = await avatar_id_to_name(avatar_name)
+ except KeyError:
+ avatar_name: str = avatar
+
+ if expedition['status'] == 'Finished':
+ expedition_info.append(f'{avatar_name} 探索完成')
+ finished_expedition_num += 1
+ else:
+ remained_timed: str = seconds2hours(
+ expedition['remained_time']
+ )
+ expedition_info.append(f'{avatar_name} 剩余时间{remained_timed}')
+
+ if dailydata['transformer']['recovery_time']['reached']:
+ transformer_status = '可用'
+ else:
+ transformer_time = dailydata['transformer']['recovery_time']
+ transformer_status = '还剩{}天{}小时{}分钟可用'.format(
+ transformer_time['Day'],
+ transformer_time['Hour'],
+ transformer_time['Minute'],
+ )
+
+ finished_task_num = dailydata['finished_task_num']
+ total_task_num = dailydata['total_task_num']
+ is_extra_got = (
+ '已' if dailydata['is_extra_task_reward_received'] else '未'
+ )
+
+ resin_discount_num_limit = dailydata['resin_discount_num_limit']
+ used_resin_discount_num = (
+ resin_discount_num_limit - dailydata['remain_resin_discount_num']
+ )
+
+ home_coin = (
+ f'{dailydata["current_home_coin"]}/{dailydata["max_home_coin"]}'
+ )
+ if dailydata['current_home_coin'] < dailydata['max_home_coin']:
+ coin_rec_time = seconds2hours(
+ int(dailydata['home_coin_recovery_time'])
+ )
+ coin_add_speed = math.ceil(
+ (dailydata['max_home_coin'] - dailydata['current_home_coin'])
+ / (int(dailydata['home_coin_recovery_time']) / 60 / 60)
+ )
+ home_coin += f'({coin_rec_time} 约{coin_add_speed}/h)'
+
+ expedition_data = '\n'.join(expedition_info)
+ send_mes = daily_im.format(
+ current_resin,
+ max_resin,
+ rec_time,
+ finished_task_num,
+ total_task_num,
+ is_extra_got,
+ used_resin_discount_num,
+ resin_discount_num_limit,
+ home_coin,
+ transformer_status,
+ current_expedition_num,
+ finished_expedition_num,
+ max_expedition_num,
+ expedition_data,
+ )
+ return send_mes
+ except TypeError:
+ logger.exception('[查询当前状态]查询失败!')
+ return '你绑定过的UID中可能存在过期CK~请重新绑定一下噢~'
diff --git a/GenshinUID/genshinuid_resin/texture2D/no.png b/GenshinUID/genshinuid_resin/texture2D/no.png
new file mode 100644
index 00000000..4866239d
Binary files /dev/null and b/GenshinUID/genshinuid_resin/texture2D/no.png differ
diff --git a/GenshinUID/genshinuid_resin/texture2D/resin_fg.png b/GenshinUID/genshinuid_resin/texture2D/resin_fg.png
new file mode 100644
index 00000000..8447b9fe
Binary files /dev/null and b/GenshinUID/genshinuid_resin/texture2D/resin_fg.png differ
diff --git a/GenshinUID/genshinuid_resin/texture2D/ring.apng b/GenshinUID/genshinuid_resin/texture2D/ring.apng
new file mode 100644
index 00000000..017f187e
Binary files /dev/null and b/GenshinUID/genshinuid_resin/texture2D/ring.apng differ
diff --git a/GenshinUID/genshinuid_resin/texture2D/warn.png b/GenshinUID/genshinuid_resin/texture2D/warn.png
new file mode 100644
index 00000000..8f824782
Binary files /dev/null and b/GenshinUID/genshinuid_resin/texture2D/warn.png differ
diff --git a/GenshinUID/genshinuid_resin/texture2D/yes.png b/GenshinUID/genshinuid_resin/texture2D/yes.png
new file mode 100644
index 00000000..069292a1
Binary files /dev/null and b/GenshinUID/genshinuid_resin/texture2D/yes.png differ
diff --git a/GenshinUID/genshinuid_resource/__init__.py b/GenshinUID/genshinuid_resource/__init__.py
new file mode 100644
index 00000000..8737b68f
--- /dev/null
+++ b/GenshinUID/genshinuid_resource/__init__.py
@@ -0,0 +1,24 @@
+import asyncio
+import threading
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+from gsuid_core.logger import logger
+
+from ..utils.resource.download_all_resource import download_all_resource
+
+
+@SV('下载资源', pm=2).on_fullmatch(('深渊概览', '深渊统计', '深渊使用率'))
+async def send_download_resource_msg(bot: Bot, ev: Event):
+ await bot.send('正在开始下载~可能需要较久的时间!')
+ im = await download_all_resource()
+ await bot.send(im)
+
+
+async def startup():
+ logger.info('[资源文件下载] 正在检查与下载缺失的资源文件,可能需要较长时间,请稍等')
+ logger.info(f'[资源文件下载] {await download_all_resource()}')
+
+
+threading.Thread(target=lambda: asyncio.run(startup()), daemon=True).start()
diff --git a/GenshinUID/genshinuid_roleinfo/__init__.py b/GenshinUID/genshinuid_roleinfo/__init__.py
new file mode 100644
index 00000000..da343ba0
--- /dev/null
+++ b/GenshinUID/genshinuid_roleinfo/__init__.py
@@ -0,0 +1,37 @@
+import re
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+
+from ..utils.convert import get_uid
+from .get_regtime import calc_reg_time
+from ..utils.error_reply import UID_HINT
+from .draw_roleinfo_card import draw_pic
+
+
+@SV('查询注册时间').on_command(('原神注册时间', '注册时间'))
+async def regtime(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[查询注册时间]')
+ uid = await get_uid(bot, ev)
+ if uid is None:
+ return bot.send(UID_HINT)
+ await bot.logger.info('[查询注册时间]uid: {}'.format(uid))
+
+ im = await calc_reg_time(uid)
+ await bot.send(im)
+
+
+@SV('查询原神信息').on_command(('查询'))
+async def send_role_info(bot: Bot, ev: Event):
+ name = ''.join(re.findall('[\u4e00-\u9fa5]', ev.text))
+ if name:
+ return
+ await bot.logger.info('开始执行[查询角色信息]')
+ uid = await get_uid(bot, ev)
+ if uid is None:
+ return bot.send(UID_HINT)
+ await bot.logger.info('[查询角色信息]uid: {}'.format(uid))
+
+ im = await draw_pic(uid)
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_roleinfo/draw_roleinfo_card.py b/GenshinUID/genshinuid_roleinfo/draw_roleinfo_card.py
new file mode 100644
index 00000000..7b59c2c8
--- /dev/null
+++ b/GenshinUID/genshinuid_roleinfo/draw_roleinfo_card.py
@@ -0,0 +1,443 @@
+import asyncio
+from pathlib import Path
+
+from nonebot.log import logger
+from PIL import Image, ImageDraw
+
+from ..utils.mys_api import mys_api
+from ..utils.convert import GsCookie
+from ..utils.error_reply import get_error
+from ..utils.image.convert import convert_img
+from ..gsuid_utils.api.mys.models import MihoyoAvatar
+from ..utils.resource.download_url import download_file
+from ..utils.fonts.genshin_fonts import genshin_font_origin
+from ..utils.resource.RESOURCE_PATH import (
+ REL_PATH,
+ CHAR_PATH,
+ WEAPON_PATH,
+ CHAR_STAND_PATH,
+)
+from ..utils.image.image_tools import (
+ get_level_pic,
+ get_simple_bg,
+ get_fetter_pic,
+ get_talent_pic,
+ get_weapon_pic,
+)
+
+# 确定路径
+TEXT_PATH = Path(__file__).parent / 'texture2d'
+
+
+# 打开图片
+char_card_bg4 = Image.open(TEXT_PATH / 'char_card_bg4.png')
+char_card_bg5 = Image.open(TEXT_PATH / 'char_card_bg5.png')
+char_card_fg = Image.open(TEXT_PATH / 'char_card_fg.png')
+char_card_mask = Image.open(TEXT_PATH / 'char_card_mask.png')
+role_info_fg = Image.open(TEXT_PATH / 'role_info_fg.png')
+
+char_card8_bg4 = Image.open(TEXT_PATH / 'char_card8_bg4.png')
+char_card8_bg5 = Image.open(TEXT_PATH / 'char_card8_bg5.png')
+char_card8_fg = Image.open(TEXT_PATH / 'char_card8_fg.png')
+char_card8_mask = Image.open(TEXT_PATH / 'char_card8_mask.png')
+
+
+# 生成几个字号
+gs_font_16 = genshin_font_origin(16)
+gs_font_23 = genshin_font_origin(23)
+gs_font_28 = genshin_font_origin(28)
+gs_font_40 = genshin_font_origin(40)
+
+# 文字颜色
+text_color = (68, 66, 64)
+
+
+async def _draw_char_full_pic(
+ img: Image.Image, char_data: MihoyoAvatar, index: int
+):
+ result = Image.new('RGBA', (250, 150), (0, 0, 0, 0))
+ char_card_img = Image.new('RGBA', (250, 150), (0, 0, 0, 0))
+ if char_data['rarity'] >= 5:
+ char_card_img.paste(char_card_bg5, (0, 0))
+ else:
+ char_card_img.paste(char_card_bg4, (0, 0))
+ # 确认武器路径
+ weapon_pic_path = WEAPON_PATH / f'{char_data["weapon"]["name"]}.png'
+ # 不存在自动下载
+ if not weapon_pic_path.exists():
+ await download_file(
+ char_data['weapon']['icon'],
+ 5,
+ f'{char_data["weapon"]["name"]}.png',
+ )
+ # 粘贴武器图片
+ weapon_pic = Image.open(weapon_pic_path).convert('RGBA')
+ weapon_pic_scale = weapon_pic.resize((50, 50))
+ # 确认角色头像路径
+ char_pic_path = CHAR_PATH / f'{char_data["id"]}.png'
+ # 不存在自动下载
+ if not char_pic_path.exists():
+ await download_file(char_data['icon'], 1, f'{char_data["id"]}.png')
+ # 粘贴角色头像
+ char_img = Image.open(CHAR_PATH / f'{char_data["id"]}.png').convert('RGBA')
+ # 缩放至合适大小
+ char_img_scale = char_img.resize((148, 148))
+ char_card_img.paste(char_img_scale, (-20, 5), char_img_scale)
+ char_card_img.paste(char_card_fg, (0, 0), char_card_fg)
+ # 命座和好感的图片
+ fetter_pic = await get_fetter_pic(char_data['fetter'])
+ talent_pic = await get_talent_pic(char_data['actived_constellation_num'])
+ char_card_img.paste(fetter_pic, (17, 110), fetter_pic)
+ char_card_img.paste(talent_pic, (177, 24), talent_pic)
+ # 武器
+ weapon_bg_pic = await get_weapon_pic(char_data['weapon']['rarity'])
+ char_card_img.paste(weapon_bg_pic, (105, 83), weapon_bg_pic)
+ char_card_img.paste(weapon_pic_scale, (105, 83), weapon_pic_scale)
+ char_draw = ImageDraw.Draw(char_card_img)
+ # 写字
+ char_draw.text(
+ (114, 37),
+ f'Lv{char_data["level"]}',
+ text_color,
+ gs_font_23,
+ anchor='lm',
+ )
+ char_draw.text(
+ (162, 96),
+ f'Lv{char_data["weapon"]["level"]}',
+ text_color,
+ gs_font_23,
+ anchor='lm',
+ )
+ char_draw.text(
+ (162, 123),
+ f'精炼{char_data["weapon"]["affix_level"]}',
+ text_color,
+ gs_font_23,
+ anchor='lm',
+ )
+ result.paste(char_card_img, (0, 0), char_card_mask)
+ img.paste(
+ result,
+ (15 + (index % 4) * 265, 1199 + (index // 4) * 160),
+ result,
+ )
+
+
+async def draw_pic(uid: str):
+ # 获取Cookies# 获取Cookies
+ data_def = GsCookie()
+ retcode = await data_def.get_cookie(uid)
+ if retcode:
+ return retcode
+ use_cookies = data_def.cookie
+ raw_data = data_def.raw_data
+
+ # 记录数据
+ if raw_data:
+ char_data = raw_data['avatars']
+ else:
+ return '没有找到角色信息!'
+
+ char_ids = []
+ for i in char_data:
+ char_ids.append(i['id'])
+
+ char_rawdata = await mys_api.get_character(uid, char_ids, use_cookies)
+ if isinstance(char_rawdata, int):
+ return get_error(char_rawdata)
+ char_datas = char_rawdata['avatars']
+
+ for index, i in enumerate(char_datas):
+ if i['rarity'] > 5:
+ char_datas[index]['rarity'] = 3
+ break
+
+ char_datas.sort(
+ key=lambda x: (
+ -x['rarity'],
+ -x['fetter'],
+ -x['actived_constellation_num'],
+ )
+ )
+
+ # 确定角色占用行数
+ char_num = len(char_datas)
+ char_hang = (
+ 1 + (char_num - 1) // 4
+ if char_num > 8
+ else (char_num // 2) + (char_num % 2)
+ )
+
+ # 获取背景图片各项参数
+ based_w = 1080
+ if char_num > 8:
+ based_h = 1165 + char_hang * 160 + 50
+ else:
+ based_h = 1165 + char_hang * 260 + 50
+ img = await get_simple_bg(based_w, based_h)
+ white_overlay = Image.new('RGBA', (based_w, based_h), (255, 251, 242, 211))
+ img.paste(white_overlay, (0, 0), white_overlay)
+ char_import = Image.open(
+ CHAR_STAND_PATH / f'{char_datas[0]["id"]}.png'
+ ).convert('RGBA')
+ img.paste(char_import, (-540, -180), char_import)
+ img.paste(role_info_fg, (0, 0), role_info_fg)
+
+ # 绘制基础信息文字
+ text_draw = ImageDraw.Draw(img)
+ text_draw.text((65, 468), f'UID{uid}', text_color, gs_font_40, anchor='lm')
+ # 已获角色
+ text_draw.text(
+ (1024, 569),
+ str(raw_data['stats']['avatar_number']),
+ text_color,
+ gs_font_40,
+ anchor='rm',
+ )
+ # 活跃天数
+ text_draw.text(
+ (1024, 294),
+ str(raw_data['stats']['active_day_number']),
+ text_color,
+ gs_font_40,
+ anchor='rm',
+ )
+ # 成就数量
+ text_draw.text(
+ (1024, 386),
+ str(raw_data['stats']['achievement_number']),
+ text_color,
+ gs_font_40,
+ anchor='rm',
+ )
+ # 深渊
+ text_draw.text(
+ (1024, 477),
+ raw_data['stats']['spiral_abyss'],
+ text_color,
+ gs_font_40,
+ anchor='rm',
+ )
+
+ # 世界探索
+ world_exp = raw_data['world_explorations']
+ world_list = []
+ # 须弥占坑 & 城市补足
+ for city_index in range(1, 9):
+ world_list.append(
+ {
+ 'id': city_index,
+ 'exp': ['0.0%'],
+ 'extra': [{'name': '等阶', 'level': 0}],
+ }
+ )
+ for world_part in world_exp:
+ # 添加探索值
+ temp = {
+ 'id': world_part['id'],
+ 'exp': [f'{world_part["exploration_percentage"] / 10}%'],
+ 'extra': [{'name': '等阶', 'level': world_part['level']}],
+ }
+ # 添加属性值
+ for offering in world_part['offerings']:
+ temp['extra'].append(
+ {'name': offering['name'], 'level': offering['level']}
+ )
+ world_list[world_part['id'] - 1] = temp
+ world_list.sort(key=lambda x: (-x['id']), reverse=True)
+ # 令层岩地下和地上合并
+ world_list[5]['exp'].append(world_list[6]['exp'][0])
+ # 移除地下
+ world_list.pop(6)
+ # 添加宝箱信息和锚点
+ chest_data = [
+ 'magic_chest_number',
+ 'common_chest_number',
+ 'exquisite_chest_number',
+ 'precious_chest_number',
+ 'luxurious_chest_number',
+ # 'way_point_number',
+ ]
+ for status_index, status in enumerate(chest_data):
+ world_list.append(
+ {
+ 'id': 500 + status_index,
+ 'exp': [str(raw_data['stats'][status])],
+ 'extra': [],
+ }
+ )
+ task = []
+ for world_index, world in enumerate(world_list):
+ task.append(_draw_world_exp_pic(img, text_draw, world, world_index))
+ await asyncio.gather(*task)
+
+ tasks = []
+ if char_num > 8:
+ for index, char in enumerate(char_datas):
+ tasks.append(
+ _draw_char_full_pic(
+ img,
+ char,
+ index,
+ )
+ )
+ else:
+ for index, char in enumerate(char_datas):
+ tasks.append(
+ _draw_char_8_pic(
+ img,
+ char,
+ index,
+ )
+ )
+ await asyncio.gather(*tasks)
+
+ res = await convert_img(img)
+ logger.info('[查询角色信息]绘图已完成,等待发送!')
+ return res
+
+
+async def _draw_world_exp_pic(
+ img: Image.Image,
+ text_draw: ImageDraw.ImageDraw,
+ world: dict,
+ world_index: int,
+):
+ offset_x = 258
+ offset_y = 171
+ for world_exp_index, world_exp in enumerate(world['exp']):
+ text_draw.text(
+ (
+ 260 + world_index % 4 * offset_x,
+ 700 + world_index // 4 * offset_y + world_exp_index * 28,
+ ),
+ world_exp,
+ text_color,
+ gs_font_28,
+ anchor='rm',
+ )
+ for offering_index, offering in enumerate(world['extra']):
+ if offering["name"] == "等阶":
+ level_pic = await get_level_pic(offering["level"])
+ img.paste(
+ level_pic,
+ (
+ 199 + world_index % 4 * offset_x,
+ 650 + world_index // 4 * offset_y,
+ ),
+ level_pic,
+ )
+ else:
+ text_draw.text(
+ (
+ 260 + world_index % 4 * offset_x,
+ (len(world['exp']) - 1) * 28
+ + 711
+ + world_index // 4 * offset_y
+ + offering_index * 23,
+ ),
+ f'{str(offering["name"])}:{str(offering["level"])}',
+ text_color,
+ gs_font_23,
+ anchor='rm',
+ )
+
+
+async def _draw_char_8_pic(
+ img: Image.Image, char_data: MihoyoAvatar, index: int
+):
+ """
+ 绘制8人角色图片
+ """
+ result = Image.new('RGBA', (510, 225), (0, 0, 0, 0))
+ char_card_img = Image.new('RGBA', (510, 225), (0, 0, 0, 0))
+ if char_data['rarity'] >= 5:
+ char_card_img.paste(char_card8_bg5, (0, 0))
+ else:
+ char_card_img.paste(char_card8_bg4, (0, 0))
+ # 确认武器路径
+ weapon_pic_path = WEAPON_PATH / f'{char_data["weapon"]["name"]}.png'
+ # 不存在自动下载
+ if not weapon_pic_path.exists():
+ await download_file(
+ char_data['weapon']['icon'],
+ 5,
+ f'{char_data["weapon"]["name"]}.png',
+ )
+ # 粘贴武器图片
+ weapon_pic = Image.open(weapon_pic_path).convert('RGBA')
+ weapon_pic_scale = weapon_pic.resize((50, 50))
+ # 确认角色头像路径
+ char_pic_path = CHAR_PATH / f'{char_data["id"]}.png'
+ # 不存在自动下载
+ if not char_pic_path.exists():
+ await download_file(char_data['icon'], 1, f'{char_data["id"]}.png')
+ # 粘贴角色图片
+ char_img = Image.open(CHAR_PATH / f'{char_data["id"]}.png').convert('RGBA')
+
+ # 角色立绘
+ char_stand_img = Image.open(
+ CHAR_STAND_PATH / f'{char_data["id"]}.png'
+ ).convert('RGBA')
+ char_stand_img.putalpha(
+ char_stand_img.getchannel('A').point(
+ lambda x: round(x * 0.4) if x > 0 else 0
+ )
+ )
+ char_card_img.paste(char_stand_img, (-912, -313), char_stand_img)
+ char_card_img.paste(char_img, (-14, -28), char_img)
+ char_card_img.paste(char_card8_fg, (0, 0), char_card8_fg)
+ fetter_pic = await get_fetter_pic(char_data['fetter'])
+ talent_pic = await get_talent_pic(char_data['actived_constellation_num'])
+ weapon_bg_pic = await get_weapon_pic(char_data['weapon']['rarity'])
+ char_card_img.paste(fetter_pic, (355, 27), fetter_pic)
+ char_card_img.paste(talent_pic, (435, 24), talent_pic)
+ char_card_img.paste(weapon_bg_pic, (21, 158), weapon_bg_pic)
+ char_card_img.paste(weapon_pic_scale, (21, 158), weapon_pic_scale)
+ for equip_index, equip in enumerate(char_data['reliquaries']):
+ equip_bg = await get_weapon_pic(equip['rarity'])
+ equip_pic = (
+ Image.open(REL_PATH / f'{equip["name"]}.png')
+ .convert('RGBA')
+ .resize((50, 50))
+ )
+ char_card_img.paste(equip_bg, (242 + equip_index * 50, 170), equip_bg)
+ char_card_img.paste(
+ equip_pic, (242 + equip_index * 50, 170), equip_pic
+ )
+ char_draw = ImageDraw.Draw(char_card_img)
+ char_draw.text(
+ (254, 36),
+ f'Lv{char_data["level"]}',
+ text_color,
+ gs_font_40,
+ anchor='lm',
+ )
+ char_draw.text(
+ (81, 196),
+ f'Lv{char_data["weapon"]["level"]}',
+ text_color,
+ gs_font_23,
+ anchor='lm',
+ )
+ char_draw.text(
+ (81, 168),
+ f'{char_data["weapon"]["name"]}',
+ text_color,
+ gs_font_23,
+ anchor='lm',
+ )
+ char_draw.text(
+ (138, 196),
+ f'精炼{char_data["weapon"]["affix_level"]}',
+ text_color,
+ gs_font_23,
+ anchor='lm',
+ )
+ result.paste(char_card_img, (0, 0), char_card8_mask)
+ img.paste(
+ result,
+ (15 + (index % 2) * 520, 1199 + (index // 2) * 250),
+ result,
+ )
diff --git a/GenshinUID/genshinuid_roleinfo/get_regtime.py b/GenshinUID/genshinuid_roleinfo/get_regtime.py
new file mode 100644
index 00000000..2a8fbbd0
--- /dev/null
+++ b/GenshinUID/genshinuid_roleinfo/get_regtime.py
@@ -0,0 +1,25 @@
+import json
+import time
+
+from nonebot.log import logger
+
+from ..utils.mys_api import mys_api
+from ..utils.error_reply import get_error
+
+
+async def calc_reg_time(uid: str) -> str:
+ # 获得原始数据
+ try:
+ raw_data = await mys_api.get_regtime_data(uid)
+ if isinstance(raw_data, int):
+ return get_error(raw_data)
+ # 获取时间戳
+ reg_time = json.loads(raw_data['data'])['1']
+ # 转换为日期
+ regtime_date = time.strftime(
+ "%Y-%m-%d %H:%M:%S", time.localtime(reg_time)
+ )
+ return f'UID{uid} 的注册时间为\n{regtime_date}'
+ except Exception as e:
+ logger.error(e)
+ return '数据获取错误, 可尝试使用“刷新ck”功能。'
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_bg4.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_bg4.png
new file mode 100644
index 00000000..db0751bf
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_bg4.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_bg5.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_bg5.png
new file mode 100644
index 00000000..98c82e5c
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_bg5.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_fg.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_fg.png
new file mode 100644
index 00000000..9e6353f8
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_fg.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_mask.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_mask.png
new file mode 100644
index 00000000..5016470d
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card8_mask.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card_bg4.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_bg4.png
new file mode 100644
index 00000000..55a4929b
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_bg4.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card_bg5.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_bg5.png
new file mode 100644
index 00000000..f7a5e4ca
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_bg5.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card_fg.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_fg.png
new file mode 100644
index 00000000..d4a7107c
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_fg.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/char_card_mask.png b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_mask.png
new file mode 100644
index 00000000..04733e82
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/char_card_mask.png differ
diff --git a/GenshinUID/genshinuid_roleinfo/texture2d/role_info_fg.png b/GenshinUID/genshinuid_roleinfo/texture2d/role_info_fg.png
new file mode 100644
index 00000000..1e6f82e8
Binary files /dev/null and b/GenshinUID/genshinuid_roleinfo/texture2d/role_info_fg.png differ
diff --git a/GenshinUID/genshinuid_signin/__init__.py b/GenshinUID/genshinuid_signin/__init__.py
new file mode 100644
index 00000000..9c442951
--- /dev/null
+++ b/GenshinUID/genshinuid_signin/__init__.py
@@ -0,0 +1,86 @@
+import random
+import asyncio
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.gss import gss
+from gsuid_core.models import Event
+from gsuid_core.aps import scheduler
+from gsuid_core.logger import logger
+
+from .sign import sign_in, daily_sign
+from ..utils.database import active_sqla
+from ..utils.error_reply import UID_HINT
+from ..genshinuid_config.gs_config import gsconfig
+
+
+# 每日零点半执行米游社原神签到
+@scheduler.scheduled_job('cron', hour='0', minute='38')
+async def sign_at_night():
+ if gsconfig.get_config('SchedSignin').data:
+ await send_daily_sign()
+
+
+# 群聊内 签到 功能
+@SV('原神签到').on_fullmatch('签到')
+async def get_sign_func(bot: Bot, ev: Event):
+ await bot.logger.info('[签到]QQ号: {}'.format(ev.user_id))
+ sqla = active_sqla[ev.bot_id]
+ uid = await sqla.get_bind_uid(ev.user_id)
+ if uid is None:
+ return await bot.send(UID_HINT)
+ await bot.logger.info('[签到]UID: {}'.format(uid))
+ await bot.send(await sign_in(uid))
+
+
+@SV('原神签到', pm=2).on_fullmatch('全部重签')
+async def recheck(bot: Bot):
+ await bot.logger.info('开始执行[全部重签]')
+ await bot.send('已开始执行')
+ await send_daily_sign()
+ await bot.send('执行完成')
+
+
+async def send_daily_sign():
+ logger.info('开始执行[每日全部签到]')
+ # 执行签到 并获得推送消息
+ result = await daily_sign()
+ private_msg_list = result['private_msg_list']
+ group_msg_list = result['group_msg_list']
+ logger.info('[每日全部签到]完成')
+
+ # 执行私聊推送
+ for qid in private_msg_list:
+ try:
+ for single in private_msg_list[qid]:
+ await gss.active_bot['bot_id'].target_send(
+ single['msg'], 'direct', qid
+ )
+ except Exception:
+ logger.warning(f'[每日全部签到] QQ {qid} 私聊推送失败!')
+ await asyncio.sleep(0.5)
+ logger.info('[每日全部签到]私聊推送完成')
+
+ # 执行群聊推送
+ for gid in group_msg_list:
+ # 根据succee数判断是否为简洁推送
+ if group_msg_list[gid]['success'] >= 0:
+ report = (
+ '以下为签到失败报告:{}'.format(group_msg_list[gid]['push_message'])
+ if group_msg_list[gid]['push_message'] != ''
+ else ''
+ )
+ msg_title = '今日自动签到已完成!\n本群共签到成功{}人,共签到失败{}人。{}'.format(
+ group_msg_list[gid]['success'],
+ group_msg_list[gid]['failed'],
+ report,
+ )
+ else:
+ msg_title = group_msg_list[gid]['push_message']
+ # 发送群消息
+ try:
+ await gss.active_bot['bot_id'].target_send(msg_title, 'group', gid)
+ except Exception:
+ logger.warning(f'[每日全部签到]群 {gid} 推送失败!')
+ await asyncio.sleep(0.5 + random.randint(1, 3))
+ logger.info('[每日全部签到]群聊推送完成')
diff --git a/GenshinUID/genshinuid_signin/sign.py b/GenshinUID/genshinuid_signin/sign.py
new file mode 100644
index 00000000..a0da4041
--- /dev/null
+++ b/GenshinUID/genshinuid_signin/sign.py
@@ -0,0 +1,190 @@
+import random
+import asyncio
+from copy import deepcopy
+
+from nonebot.log import logger
+
+from ..utils.mys_api import mys_api
+from ..utils.database import active_sqla
+from ..genshinuid_config.gs_config import gsconfig
+
+private_msg_list = {}
+group_msg_list = {}
+already = 0
+
+
+# 签到函数
+async def sign_in(uid: str) -> str:
+ logger.info(f'[签到] {uid} 开始执行签到')
+ # 获得签到信息
+ sign_info = await mys_api.get_sign_info(uid)
+ # 初步校验数据
+ if isinstance(sign_info, int):
+ logger.warning(f'[签到] {uid} 出错, 请检查Cookies是否过期!')
+ return '签到失败...请检查Cookies是否过期!'
+ # 检测是否已签到
+ if sign_info['is_sign']:
+ logger.info(f'[签到] {uid} 该用户今日已签到,跳过...')
+ global already
+ already += 1
+ day_of_month = int(sign_info['today'].split('-')[-1])
+ signed_count = int(sign_info['total_sign_day'])
+ sign_missed = day_of_month - signed_count
+ return f'今日已签到!本月漏签次数:{sign_missed}'
+
+ # 实际进行签到
+ Header = {}
+ for index in range(4):
+ # 进行一次签到
+ sign_data = await mys_api.mys_sign(uid=uid, header=Header)
+ # 检测数据
+ if isinstance(sign_data, int):
+ logger.warning(f'[签到] {uid} 出错, 请检查Cookies是否过期!')
+ return '签到失败...请检查Cookies是否过期!'
+ if 'risk_code' in sign_data:
+ # 出现校验码
+ if sign_data['risk_code'] == 375:
+ if gsconfig.get_config('CaptchaPass').data:
+ gt = sign_data['gt']
+ ch = sign_data['challenge']
+ vl, ch = await mys_api._pass(gt, ch, Header)
+ if vl:
+ delay = 1
+ Header['x-rpc-challenge'] = ch
+ Header['x-rpc-validate'] = vl
+ Header['x-rpc-seccode'] = f'{vl}|jordan'
+ logger.info(f'[签到] {uid} 已获取验证码, 等待时间{delay}秒')
+ await asyncio.sleep(delay)
+ else:
+ delay = 605 + random.randint(1, 120)
+ logger.info(f'[签到] {uid} 未获取验证码,等待{delay}秒后重试...')
+ await asyncio.sleep(delay)
+ continue
+ else:
+ logger.info('配置文件暂未开启[跳过无感验证],结束本次任务...')
+ return '签到失败...出现验证码!'
+ # 成功签到!
+ else:
+ if index == 0:
+ logger.info(f'[签到] {uid} 该用户无校验码!')
+ else:
+ logger.info(f'[签到] [无感验证] {uid} 该用户重试 {index} 次验证成功!')
+ break
+ elif (int(str(uid)[0]) > 5) and (sign_data['data']['code'] == 'ok'):
+ # 国际服签到无risk_code字段
+ logger.info(f'[国际服签到] {uid} 签到成功!')
+ break
+ else:
+ # 重试超过阈值
+ logger.warning('[签到] 超过请求阈值...')
+ return '签到失败...出现验证码!\n请过段时间使用[签到]或由管理员[全部重签]或手动至米游社进行签到!'
+ # 签到失败
+ else:
+ im = '签到失败!'
+ logger.warning(f'[签到] {uid} 签到失败, 结果: {im}')
+ return im
+ # 获取签到列表
+ sign_list = await mys_api.get_sign_list(uid)
+ new_sign_info = await mys_api.get_sign_info(uid)
+ if isinstance(sign_list, int) or isinstance(new_sign_info, int):
+ logger.warning(f'[签到] {uid} 出错, 请检查Cookies是否过期!')
+ return '签到失败...请检查Cookies是否过期!'
+ status = sign_data['message']
+ # 获取签到奖励物品,拿旧的总签到天数 + 1 为新的签到天数,再 -1 即为今日奖励物品的下标
+ getitem = sign_list['awards'][int(sign_info['total_sign_day']) + 1 - 1]
+ get_im = f'本次签到获得{getitem["name"]}x{getitem["cnt"]}'
+ day_of_month = int(new_sign_info['today'].split('-')[-1])
+ signed_count = int(new_sign_info['total_sign_day'])
+ sign_missed = day_of_month - signed_count
+ if new_sign_info['is_sign']:
+ mes_im = '签到成功'
+ else:
+ mes_im = f'签到失败, 状态为:{status}'
+ sign_missed -= 1
+ sign_missed = sign_info.get('sign_cnt_missed') or sign_missed
+ im = f'{mes_im}!\n{get_im}\n本月漏签次数:{sign_missed}'
+ logger.info(f'[签到] {uid} 签到完成, 结果: {mes_im}, 漏签次数: {sign_missed}')
+ return im
+
+
+async def single_daily_sign(bot_id: str, uid: str, gid: str, qid: str):
+ im = await sign_in(uid)
+ if gid == 'on':
+ if qid not in private_msg_list:
+ private_msg_list[qid] = []
+ private_msg_list[qid].append({'bot_id': bot_id, 'uid': uid, 'msg': im})
+ else:
+ # 向群消息推送列表添加这个群
+ if gid not in group_msg_list:
+ group_msg_list[gid] = {
+ 'bot_id': bot_id,
+ 'success': 0,
+ 'failed': 0,
+ 'push_message': '',
+ }
+ # 检查是否开启简洁签到
+ if gsconfig.get_config('SignReportSimple').data:
+ # 如果失败, 则添加到推送列表
+ if im.startswith(('签到失败', '网络有点忙', 'OK', 'ok')):
+ message = f'[CQ:at,qq={qid}] {im}'
+ group_msg_list[gid]['failed'] += 1
+ group_msg_list[gid]['push_message'] += '\n' + message
+ else:
+ group_msg_list[gid]['success'] += 1
+ # 没有开启简洁签到, 则每条消息都要携带@信息
+ else:
+ # 不用MessageSegment.at(row[2]),因为不方便移植
+ message = f'[CQ:at,qq={qid}] {im}'
+ group_msg_list[gid]['push_message'] += '\n' + message
+ group_msg_list[gid]['success'] -= 1
+
+
+async def daily_sign():
+ """
+ :说明:
+ 将数据库中全部Status不为`off`的用户进行签到,
+ 并返回签到信息private_msg_list, group_msg_list,
+ private_msg_list = [{'qid': 'msg'}, ...],
+ group_msg_list = [
+ {'gid': {'success': 0, 'failed': 0, 'push_message': ''}}, ...
+ ],
+ 如开启简洁签到,
+ success = 签到成功数,
+ failed = 签到失败数,
+ 不开启简洁签到,
+ success将为负数,
+ :返回:
+ * {'private_msg_list': ..., 'group_msg_list': ...} (dict): 要发送的私聊消息和群聊消息
+ """
+ global already
+ tasks = []
+ for bot_id in active_sqla:
+ sqla = active_sqla[bot_id]
+ user_list = await sqla.get_all_user()
+ for user in user_list:
+ if user.sign_switch != 'off':
+ tasks.append(
+ single_daily_sign(
+ bot_id, user.uid, user.sign_switch, user.user_id
+ )
+ )
+ if len(tasks) >= 1:
+ await asyncio.gather(*tasks)
+ if already >= 1:
+ delay = 1
+ else:
+ delay = 50 + random.randint(3, 45)
+ logger.info(f'[签到] 已签到{len(tasks)}个用户, 等待{delay}秒进行下一次签到')
+ tasks.clear()
+ already = 0
+ await asyncio.sleep(delay)
+ await asyncio.gather(*tasks)
+ tasks.clear()
+ result = {
+ 'private_msg_list': deepcopy(private_msg_list),
+ 'group_msg_list': deepcopy(group_msg_list),
+ }
+ private_msg_list.clear()
+ group_msg_list.clear()
+ logger.info(result)
+ return result
diff --git a/GenshinUID/genshinuid_update/__init__.py b/GenshinUID/genshinuid_update/__init__.py
new file mode 100644
index 00000000..90acd800
--- /dev/null
+++ b/GenshinUID/genshinuid_update/__init__.py
@@ -0,0 +1,65 @@
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.gss import gss
+from gsuid_core.models import Event
+from gsuid_core.logger import logger
+
+from .draw_update_log import draw_update_log_img
+from .restart import restart_message, restart_genshinuid
+
+
+@gss.on_bot_connect
+async def check_msg():
+ try:
+ logger.info('检查遗留信息...')
+ update_log = await restart_message()
+ if update_log == {}:
+ return
+ if update_log['bot_id'] in gss.active_bot:
+ bot = gss.active_bot[update_log['bot_id']]
+ if update_log['send_type'] == 'group':
+ await bot.target_send(
+ update_log['msg'], 'group', update_log['send_to']
+ )
+ else:
+ await bot.target_send(
+ update_log['msg'], 'direct', update_log['send_to']
+ )
+ logger.info('遗留信息检查完毕!')
+ except Exception:
+ logger.warning('遗留信息检查失败!')
+
+
+@SV('Core管理', pm=1).on_fullmatch(('gs重启'))
+async def send_restart_msg(bot: Bot, ev: Event):
+ await bot.logger.warning('开始执行[重启]')
+ if ev.group_id:
+ send_id = ev.group_id
+ send_type = 'group'
+ else:
+ send_id = ev.user_id
+ send_type = 'direct'
+ await bot.send('正在执行[gs重启]...')
+ await restart_genshinuid(bot.bot_id, send_type, str(send_id))
+
+
+@SV('Core更新记录').on_fullmatch(('更新记录'))
+async def send_updatelog_msg(bot: Bot):
+ await bot.logger.info('正在执行[更新记录]...')
+ im = await draw_update_log_img(is_update=False)
+ await bot.send(im)
+
+
+@SV('Core管理', pm=1).on_fullmatch(('gs更新', 'gs强制更新', 'gs强行强制更新'))
+async def send_update_msg(bot: Bot, ev: Event):
+ await bot.logger.info('[gs更新] 正在执行 ...')
+ level = 2
+ if '强制' not in ev.command:
+ level -= 1
+ if '强行' not in ev.command:
+ level -= 1
+ await bot.logger.info(f'[gs更新] 更新等级为{level}')
+ await bot.send(f'开始执行[gs更新], 执行等级为{level}')
+
+ im = await draw_update_log_img(level)
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_update/draw_update_log.py b/GenshinUID/genshinuid_update/draw_update_log.py
new file mode 100644
index 00000000..6fbfe07e
--- /dev/null
+++ b/GenshinUID/genshinuid_update/draw_update_log.py
@@ -0,0 +1,65 @@
+from pathlib import Path
+from typing import Union
+
+from PIL import Image, ImageDraw
+
+from .update import update_from_git
+from ..utils.image.convert import convert_img
+from ..utils.image.image_tools import get_color_bg
+from ..utils.fonts.genshin_fonts import genshin_font_origin
+
+R_PATH = Path(__file__).parent
+TEXT_PATH = R_PATH / 'texture2d'
+
+gs_font_30 = genshin_font_origin(30)
+black_color = (24, 24, 24)
+
+log_config = {
+ 'key': '✨🐛🎨⚡🍱♻️',
+ 'num': 18,
+}
+
+log_map = {'✨': 'feat', '🐛': 'bug', '🍱': 'bento', '⚡️': 'zap', '🎨': 'art'}
+
+
+async def draw_update_log_img(
+ level: int = 0,
+ repo_path: Union[str, Path, None] = None,
+ is_update: bool = True,
+) -> Union[bytes, str]:
+ log_list = await update_from_git(level, repo_path, log_config, is_update)
+ if len(log_list) == 0:
+ return (
+ '更新失败!更多错误信息请查看控制台...\n '
+ '>> 可以尝试使用\n '
+ '>> [gs强制更新](危险)\n '
+ '>> [gs强行强制更新](超级危险)!'
+ )
+
+ log_title = Image.open(TEXT_PATH / 'log_title.png')
+
+ img = await get_color_bg(950, 20 + 475 + 80 * len(log_list))
+ img.paste(log_title, (0, 0), log_title)
+ img_draw = ImageDraw.Draw(img)
+ img_draw.text(
+ (475, 432), 'GenshinUID 更新记录', black_color, gs_font_30, 'mm'
+ )
+
+ for index, log in enumerate(log_list):
+ for key in log_map:
+ if log.startswith(key):
+ log_img = Image.open(TEXT_PATH / f'{log_map[key]}.png')
+ break
+ else:
+ log_img = Image.open(TEXT_PATH / 'other.png')
+
+ log_img_text = ImageDraw.Draw(log_img)
+ if ')' in log:
+ log = log.split(')')[0] + ')'
+ log = log.replace('`', '')
+ log_img_text.text((120, 40), log[2:], black_color, gs_font_30, 'lm')
+
+ img.paste(log_img, (0, 475 + 80 * index), log_img)
+
+ img = await convert_img(img)
+ return img
diff --git a/GenshinUID/genshinuid_update/restart.py b/GenshinUID/genshinuid_update/restart.py
new file mode 100644
index 00000000..800595ce
--- /dev/null
+++ b/GenshinUID/genshinuid_update/restart.py
@@ -0,0 +1,72 @@
+import os
+import sys
+import json
+import time
+import platform
+import subprocess
+from pathlib import Path
+
+from ..genshinuid_config.gs_config import gsconfig
+
+bot_start = Path().cwd() / 'core.py'
+restart_sh_path = Path().cwd() / 'gs_restart.sh'
+update_log_path = Path(__file__).parent / 'update_log.json'
+
+_restart_sh = '''#!/bin/bash
+kill -9 {}
+{} &'''
+
+
+async def get_restart_sh(extra: str) -> str:
+ args = f'{extra} {str(bot_start.absolute())}'
+ return _restart_sh.format(str(bot_start.absolute()), args)
+
+
+async def restart_genshinuid(
+ bot_id: str, send_type: str, send_id: str
+) -> None:
+ pid = os.getpid()
+ extra = ''
+ if gsconfig.get_config('UsePoetry').data:
+ extra = 'poetry run '
+ extra += sys.executable
+ restart_sh = await get_restart_sh(extra)
+ with open(restart_sh_path, "w", encoding="utf8") as f:
+ f.write(restart_sh)
+ if platform.system() == 'Linux':
+ os.system(f'chmod +x {str(restart_sh_path)}')
+ os.system(f'chmod +x {str(bot_start)}')
+ now_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
+ update_log = {
+ 'type': 'restart',
+ 'msg': '重启完成!',
+ 'bot_id': bot_id,
+ 'send_type': send_type,
+ 'send_to': send_id,
+ 'time': now_time,
+ }
+ with open(str(update_log_path), 'w', encoding='utf-8') as f:
+ json.dump(update_log, f)
+ if platform.system() == 'Linux':
+ subprocess.Popen(
+ f'kill -9 {pid} & {extra} {bot_start}',
+ shell=True,
+ )
+ else:
+ subprocess.Popen(
+ f'taskkill /F /PID {pid} & {extra} {bot_start}',
+ shell=True,
+ )
+
+
+async def restart_message() -> dict:
+ if update_log_path.exists():
+ with open(update_log_path, 'r', encoding='utf-8') as f:
+ update_log = json.load(f)
+ msg = f'{update_log["msg"]}\n重启时间:{update_log["time"]}'
+ update_log['msg'] = msg
+ os.remove(update_log_path)
+ os.remove(restart_sh_path)
+ return update_log
+ else:
+ return {}
diff --git a/GenshinUID/genshinuid_update/texture2d/art.png b/GenshinUID/genshinuid_update/texture2d/art.png
new file mode 100644
index 00000000..8d25481c
Binary files /dev/null and b/GenshinUID/genshinuid_update/texture2d/art.png differ
diff --git a/GenshinUID/genshinuid_update/texture2d/bento.png b/GenshinUID/genshinuid_update/texture2d/bento.png
new file mode 100644
index 00000000..4db6eee1
Binary files /dev/null and b/GenshinUID/genshinuid_update/texture2d/bento.png differ
diff --git a/GenshinUID/genshinuid_update/texture2d/bug.png b/GenshinUID/genshinuid_update/texture2d/bug.png
new file mode 100644
index 00000000..08203c84
Binary files /dev/null and b/GenshinUID/genshinuid_update/texture2d/bug.png differ
diff --git a/GenshinUID/genshinuid_update/texture2d/feat.png b/GenshinUID/genshinuid_update/texture2d/feat.png
new file mode 100644
index 00000000..7beb3550
Binary files /dev/null and b/GenshinUID/genshinuid_update/texture2d/feat.png differ
diff --git a/GenshinUID/genshinuid_update/texture2d/log_title.png b/GenshinUID/genshinuid_update/texture2d/log_title.png
new file mode 100644
index 00000000..52405dfe
Binary files /dev/null and b/GenshinUID/genshinuid_update/texture2d/log_title.png differ
diff --git a/GenshinUID/genshinuid_update/texture2d/other.png b/GenshinUID/genshinuid_update/texture2d/other.png
new file mode 100644
index 00000000..4f510726
Binary files /dev/null and b/GenshinUID/genshinuid_update/texture2d/other.png differ
diff --git a/GenshinUID/genshinuid_update/texture2d/zap.png b/GenshinUID/genshinuid_update/texture2d/zap.png
new file mode 100644
index 00000000..4af48969
Binary files /dev/null and b/GenshinUID/genshinuid_update/texture2d/zap.png differ
diff --git a/GenshinUID/genshinuid_update/update.py b/GenshinUID/genshinuid_update/update.py
new file mode 100644
index 00000000..5ef81ed7
--- /dev/null
+++ b/GenshinUID/genshinuid_update/update.py
@@ -0,0 +1,65 @@
+from pathlib import Path
+from typing import List, Union
+
+import git
+from nonebot.log import logger
+from git.exc import GitCommandError
+
+
+async def update_from_git(
+ level: int = 0,
+ repo_path: Union[str, Path, None] = None,
+ log_config: dict = {
+ 'key': '✨🐛',
+ 'num': 7,
+ },
+ is_update: bool = True,
+) -> List[str]:
+ if repo_path is None:
+ repo_path = Path(__file__).parents[2]
+ repo = git.Repo(repo_path) # type: ignore
+ o = repo.remotes.origin
+
+ if is_update:
+ # 清空暂存
+ if level >= 2:
+ logger.warning('[gs更新] 正在执行 git clean --xdf')
+ repo.git.clean('-xdf')
+ # 还原上次更改
+ if level >= 1:
+ logger.warning('[gs更新] 正在执行 git reset --hard')
+ repo.git.reset('--hard')
+
+ try:
+ pull_log = o.pull()
+ logger.info(f'[gs更新] {pull_log}')
+ except GitCommandError as e:
+ logger.warning(e)
+ return []
+
+ commits = list(repo.iter_commits(max_count=40))
+ log_list = []
+ for commit in commits:
+ if isinstance(commit.message, str):
+ for key in log_config['key']:
+ if key in commit.message:
+ log_list.append(commit.message.replace('\n', ''))
+ if len(log_list) >= log_config['num']:
+ break
+ return log_list
+
+
+async def update_genshinuid(
+ level: int = 0, repo_path: Union[str, Path, None] = None
+) -> str:
+ log_list = await update_from_git(level, repo_path)
+ if len(log_list) == 0:
+ return (
+ '更新失败!更多错误信息请查看控制台...\n '
+ '>> 可以尝试使用\n '
+ '>> [gs强制更新](危险)\n '
+ '>> [gs强行强制更新](超级危险)!'
+ )
+ log = '\n'.join(log_list)
+ logger.info(f'[gs更新]\n{log}')
+ return f'更新成功!\n >> 最近有效更新为:\n{log}'
diff --git a/GenshinUID/genshinuid_user/__init__.py b/GenshinUID/genshinuid_user/__init__.py
new file mode 100644
index 00000000..456d12bc
--- /dev/null
+++ b/GenshinUID/genshinuid_user/__init__.py
@@ -0,0 +1,95 @@
+from typing import List
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+from gsuid_core.segment import MessageSegment
+
+from .qrlogin import qrcode_login
+from ..utils.database import active_sqla
+from .get_ck_help_msg import get_ck_help
+from ..utils.message import send_diff_msg
+from .draw_user_card import get_user_card
+from .add_ck import deal_ck, get_ck_by_stoken, get_ck_by_all_stoken
+
+
+@SV('用户管理', pm=2).on_fullmatch(('刷新全部CK', '刷新全部ck'))
+async def send_refresh_all_ck_msg(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[刷新全部CK]')
+ im = await get_ck_by_all_stoken(ev.bot_id)
+ await bot.send(im)
+
+
+@SV('用户添加').on_fullmatch(('刷新CK', '刷新ck'))
+async def send_refresh_ck_msg(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[刷新CK]')
+ im = await get_ck_by_stoken(ev.bot_id, ev.user_id)
+ await bot.send(im)
+
+
+@SV('扫码登陆').on_fullmatch(('扫码登陆', '扫码登录'))
+async def send_qrcode_login(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[扫码登陆]')
+ im = await qrcode_login(bot, ev.user_id)
+ if not im:
+ return
+ im = await deal_ck(ev.bot_id, im, ev.user_id)
+ await bot.send(im)
+
+
+@SV('用户信息').on_fullmatch(('绑定信息'))
+async def send_bind_card(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[查询用户绑定状态]')
+ im = await get_user_card(ev.bot_id, ev.user_id)
+ await bot.logger.info('[查询用户绑定状态]完成!等待图片发送中...')
+ await bot.send(im)
+
+
+@SV('添加CK', area='DIRECT').on_prefix(('添加'))
+async def send_add_ck_msg(bot: Bot, ev: Event):
+ im = await deal_ck(ev.bot_id, ev.text, ev.user_id)
+ await bot.send(im)
+
+
+@SV('用户信息').on_prefix(('绑定uid', '切换uid', '删除uid', '解绑uid'))
+async def send_link_uid_msg(bot: Bot, ev: Event):
+ await bot.logger.info('开始执行[绑定/解绑用户信息]')
+ qid = ev.user_id
+ await bot.logger.info('[绑定/解绑]UserID: {}'.format(qid))
+
+ sqla = active_sqla[ev.bot_id]
+ uid = ev.text
+
+ if ev.command.startswith('绑定'):
+ data = await sqla.insert_bind_data(qid, uid=uid)
+ return await send_diff_msg(
+ bot,
+ data,
+ {
+ 0: f'绑定UID{uid}成功!',
+ -1: f'UID{uid}的位数不正确!',
+ -2: f'UID{uid}已经绑定过了!',
+ },
+ )
+ elif ev.command.startswith('切换'):
+ data = await sqla.switch_uid(qid, uid=uid)
+ if isinstance(data, List):
+ return await bot.send(f'切换UID{uid}成功!')
+ else:
+ return await bot.send(f'尚未绑定该UID{uid}')
+ else:
+ data = await sqla.delete_bind_data(qid, uid=uid)
+ return await send_diff_msg(
+ bot,
+ data,
+ {
+ 0: f'删除UID{uid}成功!',
+ -1: f'该UID{uid}不在已绑定列表中!',
+ },
+ )
+
+
+@SV('帮助').on_fullmatch(('ck帮助', '绑定帮助'))
+async def send_ck_help(bot: Bot):
+ msg_list = await get_ck_help()
+ await bot.send(MessageSegment.node(msg_list))
diff --git a/GenshinUID/genshinuid_user/add_ck.py b/GenshinUID/genshinuid_user/add_ck.py
new file mode 100644
index 00000000..dfae703c
--- /dev/null
+++ b/GenshinUID/genshinuid_user/add_ck.py
@@ -0,0 +1,237 @@
+from pathlib import Path
+from typing import Dict, List
+from http.cookies import SimpleCookie
+
+from ..utils.mys_api import mys_api
+from ..utils.database import active_sqla
+from ..utils.error_reply import UID_HINT
+
+pic_path = Path(__file__).parent / 'pic'
+id_list = [
+ 'login_uid',
+ 'login_uid_v2',
+ 'account_mid_v2',
+ 'account_mid',
+ 'account_id',
+ 'stuid',
+ 'ltuid',
+ 'ltmid',
+ 'stmid',
+ 'stmid_v2',
+ 'ltmid_v2',
+ 'stuid_v2',
+ 'ltuid_v2',
+]
+sk_list = ['stoken', 'stoken_v2']
+ck_list = ['cookie_token', 'cookie_token_v2']
+lt_list = ['login_ticket', 'login_ticket_v2']
+
+
+async def get_ck_by_all_stoken(bot_id: str):
+ sqla = active_sqla[bot_id]
+ uid_list: List = await sqla.get_all_uid_list()
+ uid_dict = {}
+ for uid in uid_list:
+ user_data = await sqla.select_user_data(uid)
+ if user_data:
+ uid_dict[uid] = user_data.user_id
+ im = await refresh_ck_by_uid_list(bot_id, uid_dict)
+ return im
+
+
+async def get_ck_by_stoken(bot_id: str, user_id: str):
+ sqla = active_sqla[bot_id]
+ uid_list: List = await sqla.get_bind_uid_list(user_id)
+ uid_dict = {uid: user_id for uid in uid_list}
+ im = await refresh_ck_by_uid_list(bot_id, uid_dict)
+ return im
+
+
+async def refresh_ck_by_uid_list(bot_id: str, uid_dict: Dict):
+ sqla = active_sqla[bot_id]
+ uid_num = len(uid_dict)
+ if uid_num == 0:
+ return '请先绑定一个UID噢~'
+ error_list = {}
+ skip_num = 0
+ error_num = 0
+ for uid in uid_dict:
+ stoken = await sqla.get_user_stoken(uid)
+ if stoken is None:
+ skip_num += 1
+ error_num += 1
+ continue
+ else:
+ qid = uid_dict[uid]
+ try:
+ mes = await _deal_ck(bot_id, stoken, qid)
+ except TypeError:
+ error_list[uid] = 'SK或CK已过期!'
+ error_num += 1
+ continue
+ ok_num = mes.count('成功')
+ if ok_num < 2:
+ error_list[uid] = '可能是SK已过期~'
+ error_num += 1
+ continue
+
+ s_im = f'执行完成~成功刷新CK{uid_num - error_num}个!跳过{skip_num}个!'
+ f_im = '\n'.join([f'UID{u}:{error_list[u]}' for u in error_list])
+ im = f'{s_im}\n{f_im}' if f_im else s_im
+
+ return im
+
+
+async def deal_ck(bot_id: str, mes: str, user_id: str, mode: str = 'PIC'):
+ im = await _deal_ck(bot_id, mes, user_id)
+ if mode == 'PIC':
+ im = await _deal_ck_to_pic(im)
+ return im
+
+
+async def _deal_ck_to_pic(im: str) -> bytes:
+ ok_num = im.count('成功')
+ if ok_num < 1:
+ status_pic = pic_path / 'ck_no.png'
+ elif ok_num < 2:
+ status_pic = pic_path / 'ck_ok.png'
+ else:
+ status_pic = pic_path / 'all_ok.png'
+ with open(status_pic, 'rb') as f:
+ img = f.read()
+ return img
+
+
+async def get_account_id(simp_dict: SimpleCookie) -> str:
+ for _id in id_list:
+ if _id in simp_dict:
+ account_id = simp_dict[_id].value
+ break
+ else:
+ account_id = ''
+ return account_id
+
+
+async def _deal_ck(bot_id: str, mes: str, user_id: str) -> str:
+ sqla = active_sqla[bot_id]
+ simp_dict = SimpleCookie(mes)
+ uid = await sqla.get_bind_uid(user_id)
+ if uid is None:
+ return UID_HINT
+ im_list = []
+ is_add_stoken = False
+ status = True
+ app_cookie, stoken = '', ''
+ account_id, cookie_token = '', ''
+ if status:
+ for sk in sk_list:
+ if sk in simp_dict:
+ account_id = await get_account_id(simp_dict)
+ if not account_id:
+ return '该CK字段出错, 缺少login_uid或stuid或ltuid字段!'
+ stoken = simp_dict[sk].value
+ if stoken.startswith('v2_'):
+ if 'mid' in simp_dict:
+ mid = simp_dict['mid'].value
+ app_cookie = (
+ f'stuid={account_id};stoken={stoken};mid={mid}'
+ )
+ else:
+ return 'v2类型SK必须携带mid...'
+ else:
+ app_cookie = f'stuid={account_id};stoken={stoken}'
+ cookie_token_data = await mys_api.get_cookie_token_by_stoken(
+ stoken, account_id, app_cookie
+ )
+ if isinstance(cookie_token_data, Dict):
+ cookie_token = cookie_token_data['cookie_token']
+ is_add_stoken = True
+ status = False
+ break
+ else:
+ return '返回值错误...'
+ if status:
+ for lt in lt_list:
+ if lt in simp_dict:
+ # 寻找stoken
+ login_ticket = simp_dict[lt].value
+ account_id = await get_account_id(simp_dict)
+ if not account_id:
+ return '该CK字段出错, 缺少login_uid或stuid或ltuid字段!'
+ stoken_data = await mys_api.get_stoken_by_login_ticket(
+ login_ticket, account_id
+ )
+ if isinstance(stoken_data, Dict):
+ stoken = stoken_data['list'][0]['token']
+ app_cookie = f'stuid={account_id};stoken={stoken}'
+ cookie_token_data = (
+ await mys_api.get_cookie_token_by_stoken(
+ stoken, account_id
+ )
+ )
+ if isinstance(cookie_token_data, Dict):
+ cookie_token = cookie_token_data['cookie_token']
+ is_add_stoken = True
+ status = False
+ break
+ if status:
+ for ck in ck_list:
+ if ck in simp_dict:
+ # 寻找uid
+ account_id = await get_account_id(simp_dict)
+ if not account_id:
+ return '该CK字段出错, 缺少login_uid或stuid或ltuid字段!'
+ cookie_token = simp_dict[ck].value
+ status = False
+ break
+ if status:
+ return (
+ '添加Cookies失败!Cookies中应该包含cookie_token或者login_ticket相关信息!'
+ '\n可以尝试退出米游社登陆重新登陆获取!'
+ )
+
+ account_cookie = f'account_id={account_id};cookie_token={cookie_token}'
+
+ try:
+ if int(uid[0]) < 6:
+ mys_data = await mys_api.get_mihoyo_bbs_info(
+ account_id, account_cookie
+ )
+ else:
+ mys_data = await mys_api.get_mihoyo_bbs_info(
+ account_id, account_cookie, True
+ )
+ # 剔除除了原神之外的其他游戏
+ if isinstance(mys_data, List):
+ for i in mys_data:
+ if i['game_id'] == 2:
+ uid = i['game_role_id']
+ break
+ else:
+ return f'你的米游社账号{account_id}尚未绑定原神账号,请前往米游社操作!'
+ except Exception:
+ pass
+
+ if not uid:
+ return f'你的米游社账号{account_id}尚未绑定原神账号,请前往米游社操作!'
+
+ await sqla.refresh_cache(uid)
+ if is_add_stoken:
+ im_list.append(f'添加Stoken成功,stuid={account_id},stoken={stoken}')
+ await sqla.insert_user_data(user_id, uid, account_cookie, app_cookie)
+
+ im_list.append(
+ f'添加Cookies成功,account_id={account_id},cookie_token={cookie_token}'
+ )
+ im_list.append(
+ 'Cookies和Stoken属于个人重要信息,如果你是在不知情的情况下添加,请马上修改米游社账户密码,保护个人隐私!'
+ )
+ im_list.append(
+ (
+ '如果需要【gs开启自动签到】和【gs开启推送】还需要在【群聊中】使用命令“绑定uid”绑定你的uid。'
+ '\n例如:绑定uid123456789。'
+ )
+ )
+ im_list.append('你可以使用命令【绑定信息】检查你的账号绑定情况!')
+ im = '\n'.join(im_list)
+ return im
diff --git a/GenshinUID/genshinuid_user/draw_user_card.py b/GenshinUID/genshinuid_user/draw_user_card.py
new file mode 100644
index 00000000..2c28f84a
--- /dev/null
+++ b/GenshinUID/genshinuid_user/draw_user_card.py
@@ -0,0 +1,123 @@
+from typing import List
+from pathlib import Path
+
+from PIL import Image, ImageDraw
+
+from ..utils.database import active_sqla
+from ..utils.image.convert import convert_img
+from ..gsuid_utils.database.models import GsUser
+from ..utils.image.image_tools import get_simple_bg
+from ..utils.fonts.genshin_fonts import genshin_font_origin
+
+TEXT_PATH = Path(__file__).parent / 'texture2d'
+
+status_s_on = Image.open(TEXT_PATH / 'status_s_on.png')
+status_s_off = Image.open(TEXT_PATH / 'status_s_off.png')
+status_l_off = Image.open(TEXT_PATH / 'status_l_off.png')
+status_l_on = Image.open(TEXT_PATH / 'status_l_on.png')
+uid_hint = Image.open(TEXT_PATH / 'uid_hint.png')
+
+EN_MAP = {'coin': '宝钱', 'resin': '体力', 'go': '派遣', 'transform': '质变仪'}
+
+white_color = (254, 243, 231)
+gs_font_20 = genshin_font_origin(20)
+gs_font_15 = genshin_font_origin(15)
+gs_font_26 = genshin_font_origin(26)
+
+
+async def get_user_card(bot_id: str, user_id: str) -> bytes:
+ sqla = active_sqla[bot_id]
+ uid_list: List = await sqla.get_bind_uid_list(user_id)
+ w, h = 500, len(uid_list) * 210 + 330
+ img = await get_simple_bg(w, h)
+ white_overlay = Image.new('RGBA', (w, h), (244, 244, 244, 200))
+ img.paste(white_overlay, (0, 0), white_overlay)
+ uid_title = Image.open(TEXT_PATH / 'uid_title.png')
+ uid_title_draw = ImageDraw.Draw(uid_title)
+ uid_title_draw.text(
+ (47, 70), f'QQ号{str(user_id)}', (106, 100, 89), font=gs_font_26
+ )
+ img.paste(uid_title, (0, 50), uid_title)
+ img.paste(uid_hint, (0, 145 + len(uid_list) * 210), uid_hint)
+ for uid_index, uid in enumerate(uid_list):
+ user_push_data = await sqla.select_push_data(uid)
+ user_data = await sqla.select_user_data(uid)
+ if user_data is None:
+ user_data = GsUser(
+ bot_id=bot_id,
+ user_id=user_id,
+ uid=uid,
+ stoken=None,
+ cookie=None,
+ sign_switch='off',
+ bbs_switch='off',
+ push_switch='off',
+ )
+ uid_img = Image.open(TEXT_PATH / 'uid_part.png')
+ uid_img_draw = ImageDraw.Draw(uid_img)
+ uid_img_draw.text(
+ (112, 45),
+ f'UID{uid}',
+ white_color,
+ font=gs_font_20,
+ anchor='mm',
+ )
+ uid_img_draw.text(
+ (390, 17),
+ f'user_id{user_data.user_id}',
+ white_color,
+ font=gs_font_20,
+ anchor='mm',
+ )
+ if user_data.cookie:
+ uid_img.paste(status_s_on, (292, 41), status_s_on)
+ else:
+ uid_img.paste(status_s_off, (292, 41), status_s_off)
+
+ if user_data.stoken:
+ uid_img.paste(status_s_on, (428, 41), status_s_on)
+ else:
+ uid_img.paste(status_s_off, (428, 41), status_s_off)
+
+ if user_data.push_switch != 'off':
+ uid_img.paste(status_s_on, (135, 76), status_s_on)
+ else:
+ uid_img.paste(status_s_off, (135, 76), status_s_off)
+
+ if user_data.sign_switch != 'off':
+ uid_img.paste(status_s_on, (270, 76), status_s_on)
+ else:
+ uid_img.paste(status_s_off, (270, 76), status_s_off)
+
+ if user_data.bbs_switch != 'off':
+ uid_img.paste(status_s_on, (428, 76), status_s_on)
+ else:
+ uid_img.paste(status_s_off, (428, 76), status_s_off)
+
+ for index, mode in enumerate(['coin', 'resin', 'go', 'transform']):
+ if getattr(user_push_data, f'{mode}_push') != 'off':
+ uid_img.paste(
+ status_l_on, (25 + index * 115, 112), status_l_on
+ )
+
+ else:
+ uid_img.paste(
+ status_l_off, (25 + index * 115, 112), status_l_off
+ )
+ uid_img_draw.text(
+ (78 + index * 115, 141),
+ f'{EN_MAP[mode]}推送',
+ white_color,
+ font=gs_font_20,
+ anchor='mm',
+ )
+ uid_img_draw.text(
+ (78 + index * 115, 164),
+ f'阈值:{getattr(user_push_data, f"{mode}_value")}',
+ white_color,
+ font=gs_font_15,
+ anchor='mm',
+ )
+ img.paste(uid_img, (0, 150 + uid_index * 210), uid_img)
+
+ return await convert_img(img)
diff --git a/GenshinUID/genshinuid_user/get_ck_help_msg.py b/GenshinUID/genshinuid_user/get_ck_help_msg.py
new file mode 100644
index 00000000..4c8eb607
--- /dev/null
+++ b/GenshinUID/genshinuid_user/get_ck_help_msg.py
@@ -0,0 +1,38 @@
+from typing import List
+
+from gsuid_core.models import Message
+
+CK_CONSOLE = '''var cookie = document.cookie;
+var Str_Num = cookie.indexOf('_MHYUUID=');
+cookie = '添加 ' + cookie.substring(Str_Num);
+var ask = confirm('Cookie:' + cookie + '\\n\\n按确认,然后粘贴发送给机器人');
+if (ask == true) {
+ copy(cookie);
+ msg = cookie
+} else {
+ msg = 'Cancel'
+}
+'''
+
+CK_URL = '''1.复制上面全部代码,然后打开下面的网站
+https://bbs.mihoyo.com/ys/obc/?bbs_presentation_style=no_header(国服)
+https://www.hoyolab.com/home(国际服)
+2.在页面上右键检查或者Ctrl+Shift+i
+3.选择控制台(Console),粘贴,回车,在弹出的窗口点确认(点完自动复制)
+4.然后在和机器人的私聊窗口,粘贴发送即可
+'''
+
+SK_URL = '''如果想获取SK,操作方法和上面一致,网址更换为
+http://user.mihoyo.com/(国服)
+登陆后,进入控制台粘贴代码
+然后在和机器人的私聊窗口,粘贴发送即可
+'''
+
+
+async def get_ck_help() -> List[Message]:
+ msg_list = []
+ msg_list.append(Message('text', '请先添加bot为好友'))
+ msg_list.append(Message('text', CK_CONSOLE))
+ msg_list.append(Message('text', CK_URL))
+ msg_list.append(Message('text', SK_URL))
+ return msg_list
diff --git a/GenshinUID/genshinuid_user/pic/all_ok.png b/GenshinUID/genshinuid_user/pic/all_ok.png
new file mode 100644
index 00000000..55c09428
Binary files /dev/null and b/GenshinUID/genshinuid_user/pic/all_ok.png differ
diff --git a/GenshinUID/genshinuid_user/pic/ck_no.png b/GenshinUID/genshinuid_user/pic/ck_no.png
new file mode 100644
index 00000000..efaa5ebf
Binary files /dev/null and b/GenshinUID/genshinuid_user/pic/ck_no.png differ
diff --git a/GenshinUID/genshinuid_user/pic/ck_ok.png b/GenshinUID/genshinuid_user/pic/ck_ok.png
new file mode 100644
index 00000000..7c8a7ec1
Binary files /dev/null and b/GenshinUID/genshinuid_user/pic/ck_ok.png differ
diff --git a/GenshinUID/genshinuid_user/qrlogin.py b/GenshinUID/genshinuid_user/qrlogin.py
new file mode 100644
index 00000000..eb44f1d3
--- /dev/null
+++ b/GenshinUID/genshinuid_user/qrlogin.py
@@ -0,0 +1,155 @@
+import io
+import json
+import base64
+import asyncio
+from http.cookies import SimpleCookie
+from typing import Any, List, Tuple, Union, Literal
+
+import qrcode
+from gsuid_core.bot import Bot
+from gsuid_core.logger import logger
+from qrcode.constants import ERROR_CORRECT_L
+from gsuid_core.segment import MessageSegment
+
+from ..utils.mys_api import mys_api
+from ..utils.database import active_sqla
+
+disnote = '''免责声明:您将通过扫码完成获取米游社sk以及ck。
+本Bot将不会保存您的登录状态。
+我方仅提供米游社查询及相关游戏内容服务
+若您的账号封禁、被盗等处罚与我方无关。
+害怕风险请勿扫码!
+'''
+
+
+def get_qrcode_base64(url):
+ qr = qrcode.QRCode(
+ version=1,
+ error_correction=ERROR_CORRECT_L,
+ box_size=10,
+ border=4,
+ )
+ qr.add_data(url)
+ qr.make(fit=True)
+ img = qr.make_image(fill_color='black', back_color='white')
+ img_byte = io.BytesIO()
+ img.save(img_byte, format='PNG') # type: ignore
+ img_byte = img_byte.getvalue()
+ return base64.b64encode(img_byte).decode()
+
+
+async def refresh(
+ code_data: dict,
+) -> Union[Tuple[Literal[False], None], Tuple[Literal[True], Any]]:
+ scanned = False
+ while True:
+ await asyncio.sleep(2)
+ status_data = await mys_api.check_qrcode(
+ code_data['app_id'], code_data['ticket'], code_data['device']
+ )
+ if isinstance(status_data, int):
+ logger.warning('二维码已过期')
+ return False, None
+ if status_data['stat'] == 'Scanned':
+ if not scanned:
+ logger.info('二维码已扫描')
+ scanned = True
+ continue
+ if status_data['stat'] == 'Confirmed':
+ logger.info('二维码已确认')
+ break
+ return True, json.loads(status_data['payload']['raw'])
+
+
+async def qrcode_login(bot: Bot, user_id: str) -> str:
+ sqla = active_sqla[bot.bot_id]
+
+ async def send_msg(msg: str):
+ await bot.send(msg)
+ return ''
+
+ code_data = await mys_api.create_qrcode_url()
+ if isinstance(code_data, int):
+ return await send_msg('链接创建失败...')
+ try:
+ im = []
+ im.append(MessageSegment.text('请使用米游社扫描下方二维码登录:'))
+ im.append(
+ MessageSegment.image(
+ f'base64://{get_qrcode_base64(code_data["url"])}'
+ )
+ )
+ im.append(
+ MessageSegment.text(
+ '免责声明:您将通过扫码完成获取米游社sk以及ck。\n'
+ '本Bot将不会保存您的登录状态。\n'
+ '我方仅提供米游社查询及相关游戏内容服务,\n'
+ '若您的账号封禁、被盗等处罚与我方无关。\n'
+ '害怕风险请勿扫码~'
+ )
+ )
+ await bot.send(MessageSegment.node(im))
+ except Exception:
+ logger.warning(f'[扫码登录] {user_id} 图片发送失败')
+ status, game_token_data = await refresh(code_data)
+ if status:
+ assert game_token_data is not None # 骗过 pyright
+ logger.info('game_token获取成功')
+ cookie_token = await mys_api.get_cookie_token(**game_token_data)
+ stoken_data = await mys_api.get_stoken_by_game_token(
+ account_id=int(game_token_data['uid']),
+ game_token=game_token_data['token'],
+ )
+ if isinstance(stoken_data, int):
+ return await send_msg('获取SK失败...')
+ account_id = game_token_data['uid']
+ stoken = stoken_data['token']['token']
+ mid = stoken_data['user_info']['mid']
+ app_cookie = f'stuid={account_id};stoken={stoken};mid={mid}'
+ ck = await mys_api.get_cookie_token_by_stoken(
+ stoken, account_id, app_cookie
+ )
+ if isinstance(ck, int):
+ return await send_msg('获取CK失败...')
+ ck = ck['cookie_token']
+ cookie_check = f'account_id={account_id};cookie_token={ck}'
+ get_uid = await mys_api.get_mihoyo_bbs_info(account_id, cookie_check)
+ # 剔除除了原神之外的其他游戏
+ im = None
+ if isinstance(get_uid, List):
+ for i in get_uid:
+ if i['game_id'] == 2:
+ uid_check = i['game_role_id']
+ break
+ else:
+ im = f'你的米游社账号{account_id}尚未绑定原神账号,请前往米游社操作!'
+ return await send_msg(im)
+ else:
+ im = '请求失败, 请稍后再试...'
+ return await send_msg(im)
+
+ uid_bind = await sqla.get_bind_uid(user_id)
+ # 没有在gsuid绑定uid的情况
+ if uid_bind:
+ logger.warning('game_token获取失败')
+ im = '你还没有绑定uid,请输入[绑定uid123456]绑定你的uid,再发送[扫码登录]进行绑定'
+ return await send_msg(im)
+ if isinstance(cookie_token, int):
+ return await send_msg('获取CK失败...')
+ # 比对gsuid数据库和扫码登陆获取到的uid
+ if str(uid_bind) == uid_check or str(uid_bind) == account_id:
+ return SimpleCookie(
+ {
+ 'stoken_v2': stoken_data['token']['token'],
+ 'stuid': stoken_data['user_info']['aid'],
+ 'mid': stoken_data['user_info']['mid'],
+ 'cookie_token': cookie_token['cookie_token'],
+ }
+ ).output(header='', sep=';')
+ else:
+ logger.warning('game_token获取失败')
+ im = 'game_token获取失败:被非绑定指定uid用户扫取,取消绑定,请重新发送[扫码登录]登录账号'
+ else:
+ logger.warning('game_token获取失败')
+ im = 'game_token获取失败:二维码已过期'
+ return await send_msg(im)
diff --git a/GenshinUID/genshinuid_user/texture2d/status_l_off.png b/GenshinUID/genshinuid_user/texture2d/status_l_off.png
new file mode 100644
index 00000000..9dd89742
Binary files /dev/null and b/GenshinUID/genshinuid_user/texture2d/status_l_off.png differ
diff --git a/GenshinUID/genshinuid_user/texture2d/status_l_on.png b/GenshinUID/genshinuid_user/texture2d/status_l_on.png
new file mode 100644
index 00000000..97b12d03
Binary files /dev/null and b/GenshinUID/genshinuid_user/texture2d/status_l_on.png differ
diff --git a/GenshinUID/genshinuid_user/texture2d/status_s_off.png b/GenshinUID/genshinuid_user/texture2d/status_s_off.png
new file mode 100644
index 00000000..ee32d1e3
Binary files /dev/null and b/GenshinUID/genshinuid_user/texture2d/status_s_off.png differ
diff --git a/GenshinUID/genshinuid_user/texture2d/status_s_on.png b/GenshinUID/genshinuid_user/texture2d/status_s_on.png
new file mode 100644
index 00000000..7df20956
Binary files /dev/null and b/GenshinUID/genshinuid_user/texture2d/status_s_on.png differ
diff --git a/GenshinUID/genshinuid_user/texture2d/uid_hint.png b/GenshinUID/genshinuid_user/texture2d/uid_hint.png
new file mode 100644
index 00000000..400e7c6f
Binary files /dev/null and b/GenshinUID/genshinuid_user/texture2d/uid_hint.png differ
diff --git a/GenshinUID/genshinuid_user/texture2d/uid_part.png b/GenshinUID/genshinuid_user/texture2d/uid_part.png
new file mode 100644
index 00000000..df9484dd
Binary files /dev/null and b/GenshinUID/genshinuid_user/texture2d/uid_part.png differ
diff --git a/GenshinUID/genshinuid_user/texture2d/uid_title.png b/GenshinUID/genshinuid_user/texture2d/uid_title.png
new file mode 100644
index 00000000..1a3840fc
Binary files /dev/null and b/GenshinUID/genshinuid_user/texture2d/uid_title.png differ
diff --git a/GenshinUID/genshinuid_wikitext/__init__.py b/GenshinUID/genshinuid_wikitext/__init__.py
new file mode 100644
index 00000000..51b46091
--- /dev/null
+++ b/GenshinUID/genshinuid_wikitext/__init__.py
@@ -0,0 +1,92 @@
+import re
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.models import Event
+from gsuid_core.segment import MessageSegment
+
+from .get_wiki_text import (
+ char_wiki,
+ foods_wiki,
+ talent_wiki,
+ weapon_wiki,
+ enemies_wiki,
+ artifacts_wiki,
+ char_costs_wiki,
+ char_stats_wiki,
+ weapon_costs_wiki,
+ weapon_stats_wiki,
+ constellation_wiki,
+)
+
+
+@SV('原神WIKI文字版').on_prefix(('原魔'))
+async def send_enemies(bot: Bot, ev: Event):
+ await bot.send(await enemies_wiki(ev.text))
+
+
+@SV('原神WIKI文字版').on_prefix(('食物'))
+async def send_food(bot: Bot, ev: Event):
+ await bot.send(await foods_wiki(ev.text))
+
+
+@SV('原神WIKI文字版').on_prefix(('圣遗物'))
+async def send_artifacts(bot: Bot, ev: Event):
+ await bot.send(await artifacts_wiki(ev.text))
+
+
+@SV('原神WIKI文字版').on_prefix(('武器'))
+async def send_weapon(bot: Bot, ev: Event):
+ name = ''.join(re.findall('[\u4e00-\u9fa5]', ev.text))
+ level = re.findall(r'\d+', ev.text)
+ if len(level) == 1:
+ im = await weapon_stats_wiki(name, level[0])
+ else:
+ im = await weapon_wiki(name)
+ await bot.send(im)
+
+
+@SV('原神WIKI文字版').on_prefix(('天赋'))
+async def send_talents(bot: Bot, ev: Event):
+ name = ''.join(re.findall('[\u4e00-\u9fa5]', ev.text))
+ num = re.findall(r'\d+', ev.text)
+ if len(num) == 1:
+ im = await talent_wiki(name, num[0])
+ if isinstance(im, list):
+ return bot.send(MessageSegment.node(im))
+ else:
+ im = '参数不正确。'
+ await bot.send(im)
+
+
+@SV('原神WIKI文字版').on_prefix(('角色'))
+async def send_char(bot: Bot, ev: Event):
+ name = ''.join(re.findall('[\u4e00-\u9fa5]', ev.text))
+ level = re.findall(r'\d+', ev.text)
+ if len(level) == 1:
+ im = await char_stats_wiki(name, level[0])
+ else:
+ im = await char_wiki(name)
+ await bot.send(im)
+
+
+@SV('原神WIKI文字版').on_prefix(('角色材料'))
+async def send_char_cost(bot: Bot, ev: Event):
+ im = await char_costs_wiki(ev.text)
+ await bot.send(im)
+
+
+@SV('原神WIKI文字版').on_prefix(('武器材料'))
+async def send_weapon_cost(bot: Bot, ev: Event):
+ im = await weapon_costs_wiki(ev.text)
+ await bot.send(im)
+
+
+@SV('原神WIKI文字版').on_prefix(('命座'))
+async def send_polar(bot: Bot, ev: Event):
+ num = int(re.findall(r'\d+', ev.text)[0])
+ m = ''.join(re.findall('[\u4e00-\u9fa5]', ev.text))
+ if num <= 0 or num > 6:
+ return await bot.send('你家{}有{}命?'.format(m, num))
+ im = await constellation_wiki(m, num)
+ await bot.send(im)
diff --git a/GenshinUID/genshinuid_wikitext/get_wiki_template.py b/GenshinUID/genshinuid_wikitext/get_wiki_template.py
new file mode 100644
index 00000000..3d3a8c64
--- /dev/null
+++ b/GenshinUID/genshinuid_wikitext/get_wiki_template.py
@@ -0,0 +1,34 @@
+weapon_im = """【名称】:{}
+【类型】:{}
+【稀有度】:{}
+【介绍】:{}
+【攻击力】:{}{}{}"""
+
+char_info_im = """{}
+【稀有度】:{}
+【武器】:{}
+【元素】:{}
+【突破加成】:{}
+【生日】:{}
+【命之座】:{}
+【cv】:{}
+【介绍】:{}"""
+
+artifacts_im = """【{}】
+【稀有度】:{}
+【2件套】:{}
+【4件套】:{}
+【{}】:{}
+【{}】:{}
+【{}】:{}
+【{}】:{}
+【{}】:{}"""
+
+food_im = """【{}】
+【稀有度】:{}
+【食物类型】:{}
+【食物类别】:{}
+【效果】:{}
+【介绍】:{}
+【材料】:
+{}"""
diff --git a/GenshinUID/genshinuid_wikitext/get_wiki_text.py b/GenshinUID/genshinuid_wikitext/get_wiki_text.py
new file mode 100644
index 00000000..d5e8f860
--- /dev/null
+++ b/GenshinUID/genshinuid_wikitext/get_wiki_text.py
@@ -0,0 +1,393 @@
+import re
+import math
+from typing import List, Union
+
+from ..gsuid_utils.api.minigg.models import MiniGGError
+from .get_wiki_template import food_im, weapon_im, artifacts_im, char_info_im
+from ..gsuid_utils.api.minigg.request import (
+ get_others_info,
+ get_talent_info,
+ get_weapon_info,
+ get_weapon_costs,
+ get_weapon_stats,
+ get_character_info,
+ get_character_costs,
+ get_character_stats,
+ get_constellation_info,
+)
+
+
+async def artifacts_wiki(name: str) -> str:
+ data = await get_others_info('artifacts', name)
+ if isinstance(data, MiniGGError):
+ im = '该圣遗物不存在。'
+ else:
+ star = ''
+ for i in data['rarity']:
+ star = star + i + '星、'
+ star = star[:-1]
+ im = artifacts_im.format(
+ data['name'],
+ star,
+ data['2pc'],
+ data['4pc'],
+ data['flower']['name'],
+ data['flower']['description'],
+ data['plume']['name'],
+ data['plume']['description'],
+ data['sands']['name'],
+ data['sands']['description'],
+ data['goblet']['name'],
+ data['goblet']['description'],
+ data['circlet']['name'],
+ data['circlet']['description'],
+ )
+ return im
+
+
+async def foods_wiki(name: str) -> str:
+ data = await get_others_info('foods', name)
+ if isinstance(data, MiniGGError):
+ im = '该食物不存在。'
+ else:
+ ingredients = ''
+ food_temp = {}
+ for i in data['ingredients']:
+ if i['name'] not in food_temp:
+ food_temp[i['name']] = i['count']
+ else:
+ food_temp[i['name']] = food_temp[i['name']] + i['count']
+ for i in food_temp:
+ ingredients += i + ':' + str(food_temp[i]) + '\n'
+ ingredients = ingredients[:-1]
+ im = food_im.format(
+ data['name'],
+ data['rarity'],
+ data['foodtype'],
+ data['foodfilter'],
+ data['effect'],
+ data['description'],
+ ingredients,
+ )
+ return im
+
+
+async def enemies_wiki(name: str) -> str:
+ data = await get_others_info('enemies', name)
+ if isinstance(data, MiniGGError):
+ im = '该食物不存在。'
+ else:
+ reward = ''
+ for i in data['rewardpreview']:
+ reward += (
+ f'{i["name"]}:{i["count"] if "count" in i else "未知"}'
+ if 'count' in i.keys()
+ else i['name'] + ': ' + '可能'
+ )
+ reward += '\n'
+ im = '【{}】\n——{}——\n类型: {}\n信息: {}\n掉落物: \n{}'.format(
+ data['name'],
+ data['specialname'],
+ data['category'],
+ data['description'],
+ reward,
+ )
+ return im
+
+
+async def weapon_wiki(name: str) -> str:
+ data = await get_weapon_info(name)
+ if isinstance(data, MiniGGError):
+ im = '该武器不存在。'
+ elif isinstance(data, List):
+ im = ', '.join(data)
+ else:
+ name = data['name']
+ _type = data['weapontype']
+ star = data['rarity'] + '星'
+ info = data['description']
+ atk = str(data['baseatk'])
+ sub_name = data['substat']
+ if data['subvalue'] != '':
+ sub_val = (
+ (data['subvalue'] + '%')
+ if sub_name != '元素精通'
+ else data['subvalue']
+ )
+ sub = '\n' + '【' + sub_name + '】' + sub_val
+ else:
+ sub = ''
+
+ if data['effectname'] != '':
+ raw_effect = data['effect']
+ rw_ef = []
+ for i in range(len(data['r1'])):
+ now = ''
+ for j in range(1, 6):
+ now = now + data['r{}'.format(j)][i] + '/'
+ now = now[:-1]
+ rw_ef.append(now)
+ raw_effect = raw_effect.format(*rw_ef)
+ effect = '\n' + '【' + data['effectname'] + '】' + ': ' + raw_effect
+ else:
+ effect = ''
+ im = weapon_im.format(name, _type, star, info, atk, sub, effect)
+ return im
+
+
+async def weapon_stats_wiki(name: str, stats: int):
+ data = await get_weapon_info(name)
+ data2 = await get_weapon_stats(name, stats)
+ if isinstance(data, MiniGGError) or isinstance(data2, MiniGGError):
+ im = '该武器不存在。'
+ elif isinstance(data, List) or isinstance(data2, List):
+ im = '请输入具体的武器名称...'
+ else:
+ if data['substat'] != '':
+ sp = (
+ data['substat']
+ + ': '
+ + '%.1f%%' % (data2['specialized'] * 100)
+ if data['substat'] != '元素精通'
+ else data['substat']
+ + ': '
+ + str(math.floor(data2['specialized']))
+ )
+ else:
+ sp = ''
+ im = (
+ data['name']
+ + '\n等级: '
+ + str(data2['level'])
+ + '(突破'
+ + str(data2['ascension'])
+ + ')'
+ + '\n攻击力: '
+ + str(round(data2['attack']))
+ + '\n'
+ + sp
+ )
+ return im
+
+
+async def weapon_costs_wiki(name: str) -> str:
+ data = await get_weapon_costs(name)
+ if isinstance(data, MiniGGError):
+ im = '不存在该武器或类型。'
+ elif isinstance(data, List):
+ im = ', '.join(data)
+ else:
+ im = ''
+ temp = {}
+ data = data['costs']
+ for i in data.values():
+ for j in i: # type:ignore
+ if j['name'] not in temp:
+ temp[j['name']] = j['count']
+ else:
+ temp[j['name']] = temp[j['name']] + j['count']
+ for k in temp:
+ im += k + ':' + str(temp[k]) + '\n'
+ return im
+
+
+async def char_wiki(name: str) -> str:
+ data = await get_character_info(name)
+ if isinstance(data, MiniGGError):
+ im = '不存在该角色或类型。'
+ elif isinstance(data, List):
+ im = ', '.join(data)
+ else:
+ name = data['title'] + ' — ' + data['name']
+ star = data['rarity']
+ _type = data['weapontype']
+ element = data['element']
+ up_val = data['substat']
+ bdday = data['birthday']
+ polar = data['constellation']
+ cv = data['cv']['chinese']
+ info = data['description']
+ im = char_info_im.format(
+ name, star, _type, element, up_val, bdday, polar, cv, info
+ )
+ return im
+
+
+async def char_stats_wiki(name: str, stats: int):
+ data2 = await get_character_info(name)
+ data = await get_character_stats(name, stats)
+ if isinstance(data, MiniGGError) or isinstance(data2, MiniGGError):
+ im = '该角色不存在。'
+ elif isinstance(data, List) or isinstance(data2, List):
+ im = '请输入具体的角色名称...'
+ else:
+ sp = (
+ data2['substat'] + ': ' + '%.1f%%' % (data['specialized'] * 100)
+ if data2['substat'] != '元素精通'
+ else data2['substat'] + ': ' + str(math.floor(data['specialized']))
+ )
+ im = (
+ data2['name']
+ + '\n等级: '
+ + str(data['level'])
+ + '\n血量: '
+ + str(math.floor(data['hp']))
+ + '\n攻击力: '
+ + str(math.floor(data['attack']))
+ + '\n防御力: '
+ + str(math.floor(data['defense']))
+ + '\n'
+ + sp
+ )
+ return im
+
+
+async def char_costs_wiki(name: str) -> str:
+ data = await get_character_costs(name)
+ data2 = await get_talent_info(name)
+ if isinstance(data, MiniGGError) or isinstance(data2, MiniGGError):
+ im = '该角色不存在。'
+ elif isinstance(data, List) or isinstance(data2, List):
+ im = '请输入具体的角色名称...'
+ else:
+ im = '【天赋材料(一份)】\n{}\n【突破材料】\n{}'
+ im1 = ''
+ im2 = ''
+
+ talent_temp = {}
+ talent_cost = data2['costs']
+ for i in talent_cost.values():
+ for j in i: # type:ignore
+ if j['name'] not in talent_temp:
+ talent_temp[j['name']] = j['count']
+ else:
+ talent_temp[j['name']] = (
+ talent_temp[j['name']] + j['count']
+ )
+ for k in talent_temp:
+ im1 = im1 + k + ':' + str(talent_temp[k]) + '\n'
+
+ temp = {}
+ for i in range(1, 7):
+ for j in data['ascend{}'.format(i)]:
+ if j['name'] not in temp:
+ temp[j['name']] = j['count']
+ else:
+ temp[j['name']] = temp[j['name']] + j['count']
+
+ for k in temp:
+ im2 = im2 + k + ':' + str(temp[k]) + '\n'
+
+ im = im.format(im1, im2)
+ return im
+
+
+async def constellation_wiki(name: str, c: int) -> str:
+ data = await get_constellation_info(name)
+ if isinstance(data, MiniGGError):
+ im = '该角色不存在。'
+ else:
+ im = (
+ '【'
+ + data['c{}'.format(c)]['name']
+ + '】'
+ + ': '
+ + '\n'
+ + data['c{}'.format(c)]['effect'].replace('*', '')
+ )
+ return im
+
+
+async def talent_wiki(name: str, level: int) -> Union[List, str]:
+ data = await get_talent_info(name)
+ if isinstance(data, MiniGGError):
+ im = '该角色不存在。'
+ else:
+ if int(level) <= 3:
+ if level == '1':
+ data = data['combat1']
+ elif level == '2':
+ data = data['combat2']
+ else:
+ data = data['combat3']
+ skill_name = data['name']
+ skill_info = data['info']
+ skill_detail = ''
+
+ mes_list = []
+ parameters = []
+ add_switch = True
+
+ labels = ''.join(data['attributes']['labels'])
+ parameters_label = re.findall(
+ r'{[a-zA-Z0-9]+:[a-zA-Z0-9]+}', labels
+ )
+
+ labels = {}
+ for i in parameters_label:
+ value_type = i.replace('{', '').replace('}', '').split(':')[-1]
+ value_index = i.replace('{', '').replace('}', '').split(':')[0]
+ labels[value_index] = value_type
+
+ for para in data['attributes']['parameters']:
+ if para in labels:
+ label_str = labels[para]
+ for index, j in enumerate(
+ data['attributes']['parameters'][para]
+ ):
+ if add_switch:
+ parameters.append({})
+
+ if label_str == 'F1P':
+ parameters[index].update(
+ {para: '%.1f%%' % (j * 100)}
+ )
+ if label_str == 'F2P':
+ parameters[index].update(
+ {para: '%.2f%%' % (j * 100)}
+ )
+ elif label_str == 'F1':
+ parameters[index].update({para: '%.1f' % j})
+ elif label_str == 'F2':
+ parameters[index].update({para: '%.2f' % j})
+ elif label_str == 'P':
+ parameters[index].update(
+ {para: str(round(j * 100)) + '%'}
+ )
+ elif label_str == 'I':
+ parameters[index].update({para: '%.2f' % j})
+ add_switch = False
+
+ for k in data['attributes']['labels']:
+ k = re.sub(r':[a-zA-Z0-9]+}', '}', k)
+ skill_detail += k + '\n'
+
+ skill_detail = skill_detail[:-1].replace('|', ' | ')
+
+ for i in range(1, 10):
+ if i % 2 != 0:
+ skill_info = skill_info.replace('**', '「', 1)
+ else:
+ skill_info = skill_info.replace('**', '」', 1)
+
+ mes_list.append(f'【{skill_name}】\n{skill_info}')
+ for index, i in enumerate(parameters):
+ mes = skill_detail.format(**i)
+ mes_list.append(f'lv.{index + 1}\n{mes}')
+ im = mes_list
+ else:
+ if level == '4':
+ data = data['passive1']
+ elif level == '5':
+ data = data['passive2']
+ elif level == '6':
+ data = data['passive3']
+ else:
+ if 'passive4' in data:
+ data = data['passive4']
+ else:
+ return '该角色未有第四个被动天赋...'
+ skill_name = data['name']
+ skill_info = data['info']
+ im = '【{}】\n{}'.format(skill_name, skill_info)
+ return im
diff --git a/GenshinUID/genshinuid_xkdata/__init__.py b/GenshinUID/genshinuid_xkdata/__init__.py
new file mode 100644
index 00000000..19095571
--- /dev/null
+++ b/GenshinUID/genshinuid_xkdata/__init__.py
@@ -0,0 +1,28 @@
+import random
+import asyncio
+import threading
+
+from gsuid_core.sv import SV
+from gsuid_core.bot import Bot
+from gsuid_core.aps import scheduler
+
+from ..utils.image.convert import convert_img
+from .draw_abyss_total import TOTAL_IMG, draw_xk_abyss_img
+
+
+@scheduler.scheduled_job('interval', hours=3)
+async def scheduled_draw_abyss():
+ await asyncio.sleep(random.randint(0, 60))
+ await draw_xk_abyss_img()
+
+
+@SV('查询深渊数据库').on_fullmatch(('深渊概览', '深渊统计', '深渊使用率'))
+async def send_abyss_pic(bot: Bot):
+ img = await convert_img(TOTAL_IMG)
+ await bot.logger.info('获得gs帮助图片成功!')
+ await bot.send(img)
+
+
+threading.Thread(
+ target=lambda: asyncio.run(draw_xk_abyss_img()), daemon=True
+).start()
diff --git a/GenshinUID/genshinuid_xkdata/draw_abyss_total.py b/GenshinUID/genshinuid_xkdata/draw_abyss_total.py
new file mode 100644
index 00000000..bc5b76b5
--- /dev/null
+++ b/GenshinUID/genshinuid_xkdata/draw_abyss_total.py
@@ -0,0 +1,123 @@
+from pathlib import Path
+from typing import Tuple
+
+from PIL import Image, ImageDraw
+
+from ..utils.image.image_tools import get_color_bg
+from ..utils.resource.RESOURCE_PATH import CHAR_PATH
+from ..gsuid_utils.api.akashadata.request import get_akasha_abyss_info
+from ..utils.fonts.genshin_fonts import gs_font_24, gs_font_26, gs_font_30
+
+TEXT_PATH = Path(__file__).parent / 'texture2d'
+TOTAL_IMG = Path(__file__).parent / 'abyss_total.png'
+
+black = (10, 10, 10)
+grey = (40, 40, 40)
+
+green = (205, 255, 168)
+red = (255, 168, 168)
+
+
+def _c(part: str) -> Tuple[int, int, int]:
+ if part.startswith('-'):
+ return red
+ else:
+ return green
+
+
+async def draw_xk_abyss_img():
+ raw_data = await get_akasha_abyss_info()
+ last_time: str = raw_data['modify_time'] # 2022-11-23 00:06
+ version_desc = raw_data['schedule_version_desc'] # 3.2第一期
+ total_view = raw_data['abyss_total_view']
+ last_rate = raw_data['last_rate']
+ char_use_list = raw_data['character_used_list']
+
+ # 基本数据
+ avgs = total_view['avg_star'] # 人均摘星
+ abc = total_view['avg_battle_count'] # 平均战斗
+ ambc = total_view['avg_maxstar_battle_count'] # 满星平均战斗
+ pr = total_view['pass_rate'] # 通关比例
+ mr = total_view['maxstar_rate'] # 满星比例
+ m12 = total_view['maxstar_12_rate'] # 12场36星
+
+ # 倍率数据
+ avgs_rate = last_rate['avg_star'] # 人均摘星
+ abc_rate = last_rate['avg_battle_count'] # 平均战斗
+ amb_rate = last_rate['avg_maxstar_battle_count'] # 满星平均战斗
+ pr_rate = last_rate['pass_rate'] # 通关比例
+ mr_rate = last_rate['maxstar_rate'] # 满星比例
+ mf_rate = last_rate['maxstar_12_rate'] # 12场36星
+
+ # 拿一些资源
+ title = Image.open(TEXT_PATH / 'total_title.png')
+
+ # 计算宽高
+ h = 1020 + ((len(char_use_list) + 1) // 7 + 1) * 160 + 20
+
+ # 开始绘图
+ img = await get_color_bg(1080, h)
+ img.paste(title, (0, 0), title)
+
+ # 基础文字部分
+ img_draw = ImageDraw.Draw(img)
+ img_draw.text((673, 375), f'数据最后更新时间:{last_time}', grey, gs_font_30, 'mm')
+ img_draw.text((855, 311), f'{version_desc}', black, gs_font_30, 'mm')
+
+ # 概览部分 85*26
+ r = 20
+ img_draw.rounded_rectangle((428, 556, 513, 582), r, _c(avgs_rate)) # 人均摘星
+ img_draw.text((471, 606), avgs, black, gs_font_26, 'mm')
+ img_draw.text((471, 570), avgs_rate, grey, gs_font_24, 'mm')
+ img_draw.rounded_rectangle((945, 556, 1030, 582), r, _c(abc_rate)) # 平均战斗
+ img_draw.text((988, 606), abc, black, gs_font_26, 'mm')
+ img_draw.text((988, 570), abc_rate, grey, gs_font_24, 'mm')
+ img_draw.rounded_rectangle((428, 681, 513, 707), r, _c(amb_rate)) # 满星平均战斗
+ img_draw.text((471, 731), ambc, black, gs_font_26, 'mm')
+ img_draw.text((471, 695), amb_rate, grey, gs_font_24, 'mm')
+ img_draw.rounded_rectangle((945, 681, 1030, 707), r, _c(pr_rate)) # 通关比例
+ img_draw.text((988, 731), f'{pr}%', black, gs_font_26, 'mm')
+ img_draw.text((988, 695), f'{pr_rate}%', grey, gs_font_24, 'mm')
+ img_draw.rounded_rectangle((428, 806, 513, 832), r, _c(mr_rate)) # 满星比例
+ img_draw.text((471, 856), f'{mr}%', black, gs_font_26, 'mm')
+ img_draw.text((471, 820), f'{mr_rate}%', grey, gs_font_24, 'mm')
+ img_draw.rounded_rectangle((945, 806, 1030, 832), r, _c(mf_rate)) # 12场36星
+ img_draw.text((988, 856), f'{m12}%', black, gs_font_26, 'mm')
+ img_draw.text((988, 820), f'{mf_rate}%', grey, gs_font_24, 'mm')
+
+ # 遍历角色列表,获得使用率
+ for index, char in enumerate(char_use_list):
+ had_count: int = char['maxstar_person_had_count']
+ use_count: int = char['maxstar_person_use_count']
+ if had_count == 0 or use_count == 0:
+ use_ratio = 0.0
+ else:
+ use_ratio = (use_count / had_count) * 100
+ use_ratio = '{:.2f}%'.format(use_ratio)
+ char_id: int = char['avatar_id']
+
+ # 绘图部分
+ char_bg = Image.open(TEXT_PATH / 'char_bg.png')
+ charimg = Image.open(CHAR_PATH / f'{char_id}.png').resize((117, 117))
+ char_bg.paste(charimg, (6, 2), charimg)
+ char_bg_draw = ImageDraw.Draw(char_bg)
+ if char['rarity'] >= 5:
+ text = (193, 123, 0)
+ else:
+ text = (145, 49, 218)
+ char_bg_draw.text((65, 133), use_ratio, text, gs_font_26, 'mm')
+
+ # 粘贴
+ x = index % 7 * 147
+ y = index // 7 * 160
+ img.paste(char_bg, (35 + x, 1010 + y), char_bg)
+
+ bg = Image.new('RGBA', (1080, h), (255, 255, 255))
+ img = Image.alpha_composite(bg, img)
+
+ img.save(
+ TOTAL_IMG,
+ format='PNG',
+ quality=80,
+ subsampling=0,
+ )
diff --git a/GenshinUID/genshinuid_xkdata/texture2d/char_bg.png b/GenshinUID/genshinuid_xkdata/texture2d/char_bg.png
new file mode 100644
index 00000000..e93c791a
Binary files /dev/null and b/GenshinUID/genshinuid_xkdata/texture2d/char_bg.png differ
diff --git a/GenshinUID/genshinuid_xkdata/texture2d/total_title.png b/GenshinUID/genshinuid_xkdata/texture2d/total_title.png
new file mode 100644
index 00000000..eede409a
Binary files /dev/null and b/GenshinUID/genshinuid_xkdata/texture2d/total_title.png differ
diff --git a/GenshinUID/gsuid_utils/__init__.py b/GenshinUID/gsuid_utils/__init__.py
new file mode 100644
index 00000000..eb42506f
--- /dev/null
+++ b/GenshinUID/gsuid_utils/__init__.py
@@ -0,0 +1,4 @@
+from .version import __version__ as __version__ # noqa
+from .version import genshin_impact_version as genshin_impact_version # noqa
+
+__all__ = ["version"]
diff --git a/GenshinUID/gsuid_utils/api/akashadata/__init__.py b/GenshinUID/gsuid_utils/api/akashadata/__init__.py
new file mode 100644
index 00000000..c03a6436
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/akashadata/__init__.py
@@ -0,0 +1,10 @@
+"""
+虚空数据库 API 包装:
+深渊出场数据;
+"""
+from .models import AkashaAbyssData as AkashaAbyssData # noqa: F401
+from .request import ( # noqa: F401
+ get_akasha_abyss_info as get_akasha_abyss_info,
+)
+
+__all__ = ["request", "models"]
diff --git a/GenshinUID/gsuid_utils/api/akashadata/models.py b/GenshinUID/gsuid_utils/api/akashadata/models.py
new file mode 100644
index 00000000..7549c024
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/akashadata/models.py
@@ -0,0 +1,88 @@
+from __future__ import annotations
+
+from typing import TypedDict
+
+
+class TeamListItem(TypedDict):
+ ac: int
+ mr: str
+ uc: str
+ dc: str
+ ud: str
+ umr: str
+ dmr: str
+ tl: list[int]
+
+
+class AbyssTotalView(TypedDict):
+ avg_star: str
+ avg_battle_count: str
+ avg_maxstar_battle_count: str
+ pass_rate: str
+ maxstar_rate: str
+ maxstar_12_rate: str
+ person_war: str
+ person_pass: int
+ maxstar_person: int
+
+
+class LastRate(TypedDict):
+ avg_star: str
+ pass_rate: str
+ maxstar_rate: str
+ avg_battle_count: str
+ avg_maxstar_battle_count: str
+ maxstar_12_rate: str
+
+
+class MaxstarPlayerData(TypedDict):
+ title: str
+ y_list: list[str]
+ x_list: list[str]
+
+
+class PassPlayerData(TypedDict):
+ title: str
+ y_list: list[str]
+ x_list: list[str]
+
+
+class PlayerLevelData(TypedDict):
+ maxstar_player_data: MaxstarPlayerData
+ pass_player_data: PassPlayerData
+
+
+class PalyerCountLevelData(TypedDict):
+ player_count_data: list[int]
+ level_data: list[str]
+
+
+class LevelData(TypedDict):
+ player_level_data: PlayerLevelData
+ palyer_count_level_data: PalyerCountLevelData
+
+
+class CharacterUsedListItem(TypedDict):
+ avatar_id: int
+ maxstar_person_had_count: int
+ maxstar_person_use_count: int
+ value: float
+ used_index: int
+ name: str
+ en_name: str
+ icon: str
+ element: str
+ rarity: int
+
+
+class AkashaAbyssData(TypedDict):
+ schedule_id: int
+ modify_time: str
+ schedule_version_desc: str
+ team_list: list[TeamListItem]
+ team_up_list: list[TeamListItem]
+ team_down_list: list[TeamListItem]
+ abyss_total_view: AbyssTotalView
+ last_rate: LastRate
+ level_data: LevelData
+ character_used_list: list[CharacterUsedListItem]
diff --git a/GenshinUID/gsuid_utils/api/akashadata/request.py b/GenshinUID/gsuid_utils/api/akashadata/request.py
new file mode 100644
index 00000000..40cb8f5c
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/akashadata/request.py
@@ -0,0 +1,29 @@
+'''
+虚空数据库 API 请求模块。
+'''
+from __future__ import annotations
+
+import json
+
+from httpx import AsyncClient
+
+from ...version import __version__
+from .models import AkashaAbyssData
+
+AKASHA_ABYSS_URL = (
+ 'https://akashadata.feixiaoqiu.com/static/data/abyss_total.js'
+)
+
+
+async def get_akasha_abyss_info() -> AkashaAbyssData:
+ '''请求虚空数据库 API 深渊出场数据
+
+ Returns:
+ AkashaAbyssData: 虚空数据库 API 深渊出场数据响应数据
+ ''' # noqa: E501
+ async with AsyncClient(
+ headers={'User-Agent': f'gsuid-utils/{__version__}'},
+ ) as client:
+ req = await client.get(url=AKASHA_ABYSS_URL)
+ raw = req.text.lstrip('var static_abyss_total =')
+ return json.loads(raw)
diff --git a/GenshinUID/gsuid_utils/api/ambr/__init__.py b/GenshinUID/gsuid_utils/api/ambr/__init__.py
new file mode 100644
index 00000000..3787ecce
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/ambr/__init__.py
@@ -0,0 +1,18 @@
+"""
+安柏计划 API 包装:
+书籍信息;
+角色信息;
+武器信息;
+"""
+from .models import AmbrBook as AmbrBook # noqa: F401
+from .models import AmbrWeapon as AmbrWeapon # noqa: F401
+from .models import AmbrCharacter as AmbrCharacter # noqa: F401
+from .models import AmbrBookDetail as AmbrBookDetail # noqa: F401
+from .request import get_story_data as get_story_data # noqa: F401
+from .request import get_all_book_id as get_all_book_id # noqa: F401
+from .request import get_book_volume as get_book_volume # noqa: F401
+from .request import get_ambr_char_data as get_ambr_char_data # noqa: F401
+from .request import get_ambr_event_info as get_ambr_event_info # noqa: F401
+from .request import get_ambr_weapon_data as get_ambr_weapon_data # noqa: F401
+
+__all__ = ["request", "models", "utils"]
diff --git a/GenshinUID/gsuid_utils/api/ambr/api.py b/GenshinUID/gsuid_utils/api/ambr/api.py
new file mode 100644
index 00000000..c22ae42e
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/ambr/api.py
@@ -0,0 +1,6 @@
+AMBR_EVENT_URL = 'https://api.ambr.top/assets/data/event.json'
+AMBR_CHAR_URL = 'https://api.ambr.top/v2/chs/avatar/{}?vh=32F2'
+AMBR_WEAPON_URL = 'https://api.ambr.top/v2/CHS/weapon/{}?vh=32F6'
+AMBR_BOOK_URL = 'https://api.ambr.top/v2/chs/book?vh=34F5'
+AMBR_BOOK_DETAILS_URL = 'https://api.ambr.top/v2/CHS/book/{}?vh=34F5'
+AMBR_BOOK_DATA_URL = 'https://api.ambr.top/v2/CHS/readable/Book{}?vh=34F5'
diff --git a/GenshinUID/gsuid_utils/api/ambr/models.py b/GenshinUID/gsuid_utils/api/ambr/models.py
new file mode 100644
index 00000000..1110fe36
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/ambr/models.py
@@ -0,0 +1,165 @@
+from __future__ import annotations
+
+from typing import Dict, List, Literal, Optional, TypedDict
+
+
+class AmbrLanguageData(TypedDict):
+ EN: str
+ RU: str
+ CHS: str
+ KR: str
+ JP: str
+
+
+class AmbrEvent(TypedDict):
+ id: int
+ name: AmbrLanguageData
+ nameFull: AmbrLanguageData
+ description: AmbrLanguageData
+ banner: AmbrLanguageData
+ endAt: str
+
+
+class AmbrFetter(TypedDict):
+ title: str
+ detail: str
+ constellation: str
+ native: str
+ cv: AmbrLanguageData
+
+
+class AmbrProp(TypedDict):
+ propType: str
+ initValue: float
+ type: str
+
+
+class AmbrPromote(TypedDict):
+ promoteLevel: int
+ costItems: Dict[str, int]
+ unlockMaxLevel: int
+ addProps: Dict[str, float]
+ requiredPlayerLevel: int
+ coinCost: int
+
+
+class AmbrUpgrade(TypedDict):
+ prop: List[AmbrProp]
+ promote: List[AmbrPromote]
+
+
+class AmbrWeaponUpgrade(AmbrUpgrade):
+ awakenCost: List[int]
+
+
+class AmbrNameCard(TypedDict):
+ id: int
+ name: str
+ description: str
+ icon: str
+
+
+class AmbrFood(TypedDict):
+ id: int
+ name: str
+ rank: int
+ effectIcon: str
+ icon: str
+
+
+class AmbrCharOther(TypedDict):
+ nameCard: AmbrNameCard
+ specialFood: AmbrFood
+
+
+class AmbrTalentPromote(TypedDict):
+ level: int
+ costItems: Optional[Dict[str, int]]
+ coinCost: Optional[int]
+ description: List[str]
+ params: List[int]
+
+
+class AmbrTalent(TypedDict):
+ type: int
+ name: str
+ description: str
+ icon: str
+ promote: Dict[str, AmbrTalentPromote]
+ cooldown: int
+ cost: int
+
+
+class AmbrConstellation(TypedDict):
+ name: str
+ description: str
+ icon: str
+
+
+class AmbrCharacter(TypedDict):
+ id: int
+ rank: int
+ name: str
+ element: Literal[
+ 'Electric', 'Ice', 'Wind', 'Grass', 'Water', 'Rock', 'Fire'
+ ]
+ weaponType: Literal[
+ 'WEAPON_SWORD_ONE_HAND',
+ 'WEAPON_CATALYST',
+ 'WEAPON_CLAYMORE',
+ 'WEAPON_BOW',
+ 'WEAPON_POLE',
+ ]
+ icon: str
+ birthday: List[int]
+ release: int
+ route: str
+ fetter: AmbrFetter
+ upgrade: AmbrUpgrade
+ other: AmbrCharOther
+ ascension: Dict[str, int]
+ talent: Dict[str, AmbrTalent]
+ constellation: Dict[str, AmbrConstellation]
+
+
+class AmbrAffix(TypedDict):
+ name: str
+ upgrade: Dict[str, str]
+
+
+class AmbrWeapon(TypedDict):
+ id: int
+ rank: int
+ type: str
+ name: str
+ description: str
+ icon: str
+ storyId: int
+ affix: Dict[str, AmbrAffix]
+ route: str
+ upgrade: AmbrWeaponUpgrade
+ ascension: Dict[str, int]
+
+
+class AmbrBook(TypedDict):
+ id: int
+ name: str
+ rank: int
+ icon: str
+ route: str
+
+
+class AmbrVolume(TypedDict):
+ id: int
+ name: str
+ description: str
+ storyId: str
+
+
+class AmbrBookDetail(TypedDict):
+ id: int
+ name: str
+ rank: int
+ icon: str
+ volume: List[AmbrVolume]
+ route: str
diff --git a/GenshinUID/gsuid_utils/api/ambr/request.py b/GenshinUID/gsuid_utils/api/ambr/request.py
new file mode 100644
index 00000000..35782bb8
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/ambr/request.py
@@ -0,0 +1,89 @@
+'''
+安柏计划 API 请求模块。
+'''
+from __future__ import annotations
+
+from typing import Dict, Union, Literal, Optional, cast
+
+from httpx import AsyncClient
+
+from ..types import AnyDict
+from ...version import __version__
+from .models import (
+ AmbrBook,
+ AmbrEvent,
+ AmbrWeapon,
+ AmbrCharacter,
+ AmbrBookDetail,
+)
+from .api import (
+ AMBR_BOOK_URL,
+ AMBR_CHAR_URL,
+ AMBR_EVENT_URL,
+ AMBR_WEAPON_URL,
+ AMBR_BOOK_DATA_URL,
+ AMBR_BOOK_DETAILS_URL,
+)
+
+_HEADER = {'User-Agent': f'gsuid-utils/{__version__}'}
+
+
+async def get_ambr_event_info() -> Optional[Dict[str, AmbrEvent]]:
+ data = await _ambr_request(url=AMBR_EVENT_URL)
+ if isinstance(data, Dict):
+ return cast(Dict[str, AmbrEvent], data)
+ return None
+
+
+async def get_ambr_char_data(id: Union[int, str]) -> Optional[AmbrCharacter]:
+ data = await _ambr_request(url=AMBR_CHAR_URL.format(id))
+ if isinstance(data, Dict) and data['response'] == 200:
+ data = data['data']
+ return cast(AmbrCharacter, data)
+ return None
+
+
+async def get_ambr_weapon_data(id: Union[int, str]) -> Optional[AmbrWeapon]:
+ data = await _ambr_request(url=AMBR_WEAPON_URL.format(id))
+ if isinstance(data, Dict) and data['response'] == 200:
+ data = data['data']
+ return cast(AmbrWeapon, data)
+ return None
+
+
+async def get_all_book_id() -> Optional[Dict[str, AmbrBook]]:
+ data = await _ambr_request(url=AMBR_BOOK_URL)
+ if isinstance(data, Dict) and data['response'] == 200:
+ data = data['data']['items']
+ return cast(Dict[str, AmbrBook], data)
+ return None
+
+
+async def get_book_volume(id: Union[int, str]) -> Optional[AmbrBookDetail]:
+ data = await _ambr_request(url=AMBR_BOOK_DETAILS_URL.format(id))
+ if isinstance(data, Dict) and data['response'] == 200:
+ data = data['data']
+ return cast(AmbrBookDetail, data)
+ return None
+
+
+async def get_story_data(story_id: Union[int, str]) -> Optional[str]:
+ data = await _ambr_request(url=AMBR_BOOK_DATA_URL.format(story_id))
+ if isinstance(data, Dict) and data['response'] == 200:
+ return data['data']
+ return None
+
+
+async def _ambr_request(
+ url: str,
+ method: Literal['GET', 'POST'] = 'GET',
+ header: AnyDict = _HEADER,
+ params: Optional[AnyDict] = None,
+ data: Optional[AnyDict] = None,
+) -> Optional[AnyDict]:
+ async with AsyncClient() as client:
+ req = await client.request(
+ method, url=url, headers=header, params=params, json=data
+ )
+ data = req.json()
+ return data
diff --git a/GenshinUID/gsuid_utils/api/ambr/utils.py b/GenshinUID/gsuid_utils/api/ambr/utils.py
new file mode 100644
index 00000000..f51042e9
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/ambr/utils.py
@@ -0,0 +1,4727 @@
+GROW_CURVE_LIST = [
+ {
+ 'level': 1,
+ 'curveInfos': [
+ {'type': 'GROW_CURVE_HP_S4', 'arith': 'ARITH_MULTI', 'value': 1.0},
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.0,
+ },
+ {'type': 'GROW_CURVE_HP_S5', 'arith': 'ARITH_MULTI', 'value': 1.0},
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.0,
+ },
+ ],
+ },
+ {
+ 'level': 2,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.0829999446868896,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.0829999446868896,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.0829999446868896,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.0829999446868896,
+ },
+ ],
+ },
+ {
+ 'level': 3,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.1649999618530273,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.1649999618530273,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.1660000085830688,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.1660000085830688,
+ },
+ ],
+ },
+ {
+ 'level': 4,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.2480000257492065,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.2480000257492065,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.25,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.25,
+ },
+ ],
+ },
+ {
+ 'level': 5,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.3300000429153442,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.3300000429153442,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.3329999446868896,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.3329999446868896,
+ },
+ ],
+ },
+ {
+ 'level': 6,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.4129999876022339,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.4129999876022339,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.4170000553131104,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.4170000553131104,
+ },
+ ],
+ },
+ {
+ 'level': 7,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.4950000047683716,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.4950000047683716,
+ },
+ {'type': 'GROW_CURVE_HP_S5', 'arith': 'ARITH_MULTI', 'value': 1.5},
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.5,
+ },
+ ],
+ },
+ {
+ 'level': 8,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.5779999494552612,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.5779999494552612,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.5839999914169312,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.5839999914169312,
+ },
+ ],
+ },
+ {
+ 'level': 9,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.6610000133514404,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.6610000133514404,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.6679999828338623,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.6679999828338623,
+ },
+ ],
+ },
+ {
+ 'level': 10,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.7430000305175781,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.7430000305175781,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.7510000467300415,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.7510000467300415,
+ },
+ ],
+ },
+ {
+ 'level': 11,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.8259999752044678,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.8259999752044678,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.8350000381469727,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.8350000381469727,
+ },
+ ],
+ },
+ {
+ 'level': 12,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.9079999923706055,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.9079999923706055,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.9190000295639038,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.9190000295639038,
+ },
+ ],
+ },
+ {
+ 'level': 13,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.9910000562667847,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 1.9910000562667847,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.003000020980835,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.003000020980835,
+ },
+ ],
+ },
+ {
+ 'level': 14,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.072999954223633,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.072999954223633,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.0880000591278076,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.0880000591278076,
+ },
+ ],
+ },
+ {
+ 'level': 15,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.1559998989105225,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.1559998989105225,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.171999931335449,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.171999931335449,
+ },
+ ],
+ },
+ {
+ 'level': 16,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.239000082015991,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.239000082015991,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.25600004196167,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.25600004196167,
+ },
+ ],
+ },
+ {
+ 'level': 17,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.321000099182129,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.321000099182129,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.3410000801086426,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.3410000801086426,
+ },
+ ],
+ },
+ {
+ 'level': 18,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.4040000438690186,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.4040000438690186,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.424999952316284,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.424999952316284,
+ },
+ ],
+ },
+ {
+ 'level': 19,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.4860000610351562,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.4860000610351562,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.509999990463257,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.509999990463257,
+ },
+ ],
+ },
+ {
+ 'level': 20,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.569000005722046,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.569000005722046,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.5940001010894775,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.5940001010894775,
+ },
+ ],
+ },
+ {
+ 'level': 21,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.6510000228881836,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.6510000228881836,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.678999900817871,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.678999900817871,
+ },
+ ],
+ },
+ {
+ 'level': 22,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.7339999675750732,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.7339999675750732,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.7639999389648438,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.7639999389648438,
+ },
+ ],
+ },
+ {
+ 'level': 23,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.816999912261963,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.816999912261963,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.8489999771118164,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.8489999771118164,
+ },
+ ],
+ },
+ {
+ 'level': 24,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.8989999294281006,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.8989999294281006,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.934000015258789,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.934000015258789,
+ },
+ ],
+ },
+ {
+ 'level': 25,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.9820001125335693,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 2.9820001125335693,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.0190000534057617,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.0190000534057617,
+ },
+ ],
+ },
+ {
+ 'level': 26,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.063999891281128,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.063999891281128,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.1050000190734863,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.1050000190734863,
+ },
+ ],
+ },
+ {
+ 'level': 27,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.1470000743865967,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.1470000743865967,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.190000057220459,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.190000057220459,
+ },
+ ],
+ },
+ {
+ 'level': 28,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.2290000915527344,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.2290000915527344,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.2750000953674316,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.2750000953674316,
+ },
+ ],
+ },
+ {
+ 'level': 29,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.312000036239624,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.312000036239624,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.3610000610351562,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.3610000610351562,
+ },
+ ],
+ },
+ {
+ 'level': 30,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.3940000534057617,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.3940000534057617,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.446000099182129,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.446000099182129,
+ },
+ ],
+ },
+ {
+ 'level': 31,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.4769999980926514,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.4769999980926514,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.5320000648498535,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.5320000648498535,
+ },
+ ],
+ },
+ {
+ 'level': 32,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.559999942779541,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.559999942779541,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.618000030517578,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.618000030517578,
+ },
+ ],
+ },
+ {
+ 'level': 33,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.6419999599456787,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.6419999599456787,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.7039999961853027,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.7039999961853027,
+ },
+ ],
+ },
+ {
+ 'level': 34,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.7249999046325684,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.7249999046325684,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.7890000343322754,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.7890000343322754,
+ },
+ ],
+ },
+ {
+ 'level': 35,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.806999921798706,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.806999921798706,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.875,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.875,
+ },
+ ],
+ },
+ {
+ 'level': 36,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.890000104904175,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.890000104904175,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.9619998931884766,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.9619998931884766,
+ },
+ ],
+ },
+ {
+ 'level': 37,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.9719998836517334,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 3.9719998836517334,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.047999858856201,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.047999858856201,
+ },
+ ],
+ },
+ {
+ 'level': 38,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.054999828338623,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.054999828338623,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.133999824523926,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.133999824523926,
+ },
+ ],
+ },
+ {
+ 'level': 39,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.138000011444092,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.138000011444092,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.21999979019165,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.21999979019165,
+ },
+ ],
+ },
+ {
+ 'level': 40,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.21999979019165,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.21999979019165,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.307000160217285,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.307000160217285,
+ },
+ ],
+ },
+ {
+ 'level': 41,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.302999973297119,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.302999973297119,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.39300012588501,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.39300012588501,
+ },
+ ],
+ },
+ {
+ 'level': 42,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.385000228881836,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.385000228881836,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.480000019073486,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.480000019073486,
+ },
+ ],
+ },
+ {
+ 'level': 43,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.4679999351501465,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.4679999351501465,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.566999912261963,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.566999912261963,
+ },
+ ],
+ },
+ {
+ 'level': 44,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.550000190734863,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.550000190734863,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.6529998779296875,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.6529998779296875,
+ },
+ ],
+ },
+ {
+ 'level': 45,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.632999897003174,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.632999897003174,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.739999771118164,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.739999771118164,
+ },
+ ],
+ },
+ {
+ 'level': 46,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.716000080108643,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.716000080108643,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.827000141143799,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.827000141143799,
+ },
+ ],
+ },
+ {
+ 'level': 47,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.797999858856201,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.797999858856201,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.914000034332275,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.914000034332275,
+ },
+ ],
+ },
+ {
+ 'level': 48,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.88100004196167,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.88100004196167,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.000999927520752,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.000999927520752,
+ },
+ ],
+ },
+ {
+ 'level': 49,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.9629998207092285,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 4.9629998207092285,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.089000225067139,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.089000225067139,
+ },
+ ],
+ },
+ {
+ 'level': 50,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.046000003814697,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.046000003814697,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.176000118255615,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.176000118255615,
+ },
+ ],
+ },
+ {
+ 'level': 51,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.127999782562256,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.127999782562256,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.263000011444092,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.263000011444092,
+ },
+ ],
+ },
+ {
+ 'level': 52,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.210999965667725,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.210999965667725,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.35099983215332,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.35099983215332,
+ },
+ ],
+ },
+ {
+ 'level': 53,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.294000148773193,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.294000148773193,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.438000202178955,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.438000202178955,
+ },
+ ],
+ },
+ {
+ 'level': 54,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.375999927520752,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.375999927520752,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.526000022888184,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.526000022888184,
+ },
+ ],
+ },
+ {
+ 'level': 55,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.459000110626221,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.459000110626221,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.613999843597412,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.613999843597412,
+ },
+ ],
+ },
+ {
+ 'level': 56,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.540999889373779,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.540999889373779,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.702000141143799,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.702000141143799,
+ },
+ ],
+ },
+ {
+ 'level': 57,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.624000072479248,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.624000072479248,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.789999961853027,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.789999961853027,
+ },
+ ],
+ },
+ {
+ 'level': 58,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.705999851226807,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.705999851226807,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.877999782562256,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.877999782562256,
+ },
+ ],
+ },
+ {
+ 'level': 59,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.789000034332275,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.789000034332275,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.966000080108643,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.966000080108643,
+ },
+ ],
+ },
+ {
+ 'level': 60,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.872000217437744,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.872000217437744,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.053999900817871,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.053999900817871,
+ },
+ ],
+ },
+ {
+ 'level': 61,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.953999996185303,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 5.953999996185303,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.142000198364258,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.142000198364258,
+ },
+ ],
+ },
+ {
+ 'level': 62,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.0370001792907715,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.0370001792907715,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.230000019073486,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.230000019073486,
+ },
+ ],
+ },
+ {
+ 'level': 63,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.11899995803833,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.11899995803833,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.318999767303467,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.318999767303467,
+ },
+ ],
+ },
+ {
+ 'level': 64,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.202000141143799,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.202000141143799,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.4070000648498535,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.4070000648498535,
+ },
+ ],
+ },
+ {
+ 'level': 65,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.283999919891357,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.283999919891357,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.495999813079834,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.495999813079834,
+ },
+ ],
+ },
+ {
+ 'level': 66,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.367000102996826,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.367000102996826,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.585000038146973,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.585000038146973,
+ },
+ ],
+ },
+ {
+ 'level': 67,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.449999809265137,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.449999809265137,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.672999858856201,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.672999858856201,
+ },
+ ],
+ },
+ {
+ 'level': 68,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.5320000648498535,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.5320000648498535,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.76200008392334,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.76200008392334,
+ },
+ ],
+ },
+ {
+ 'level': 69,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.614999771118164,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.614999771118164,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.85099983215332,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.85099983215332,
+ },
+ ],
+ },
+ {
+ 'level': 70,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.697000026702881,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.697000026702881,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.940000057220459,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.940000057220459,
+ },
+ ],
+ },
+ {
+ 'level': 71,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.78000020980835,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.78000020980835,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.0289998054504395,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.0289998054504395,
+ },
+ ],
+ },
+ {
+ 'level': 72,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.861999988555908,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.861999988555908,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.11899995803833,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.11899995803833,
+ },
+ ],
+ },
+ {
+ 'level': 73,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.945000171661377,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 6.945000171661377,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.208000183105469,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.208000183105469,
+ },
+ ],
+ },
+ {
+ 'level': 74,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.0279998779296875,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.0279998779296875,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.296999931335449,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.296999931335449,
+ },
+ ],
+ },
+ {
+ 'level': 75,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.110000133514404,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.110000133514404,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.38700008392334,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.38700008392334,
+ },
+ ],
+ },
+ {
+ 'level': 76,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.192999839782715,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.192999839782715,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.47599983215332,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.47599983215332,
+ },
+ ],
+ },
+ {
+ 'level': 77,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.275000095367432,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.275000095367432,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.565999984741211,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.565999984741211,
+ },
+ ],
+ },
+ {
+ 'level': 78,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.357999801635742,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.357999801635742,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.656000137329102,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.656000137329102,
+ },
+ ],
+ },
+ {
+ 'level': 79,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.440000057220459,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.440000057220459,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.745999813079834,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.745999813079834,
+ },
+ ],
+ },
+ {
+ 'level': 80,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.5229997634887695,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.5229997634887695,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.835999965667725,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.835999965667725,
+ },
+ ],
+ },
+ {
+ 'level': 81,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.605999946594238,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.605999946594238,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.926000118255615,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.926000118255615,
+ },
+ ],
+ },
+ {
+ 'level': 82,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.688000202178955,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.688000202178955,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.015999794006348,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.015999794006348,
+ },
+ ],
+ },
+ {
+ 'level': 83,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.770999908447266,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.770999908447266,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.105999946594238,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.105999946594238,
+ },
+ ],
+ },
+ {
+ 'level': 84,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.853000164031982,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.853000164031982,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.196000099182129,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.196000099182129,
+ },
+ ],
+ },
+ {
+ 'level': 85,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.935999870300293,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 7.935999870300293,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.28600025177002,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.28600025177002,
+ },
+ ],
+ },
+ {
+ 'level': 86,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.017999649047852,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.017999649047852,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.376999855041504,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.376999855041504,
+ },
+ ],
+ },
+ {
+ 'level': 87,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.10099983215332,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.10099983215332,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.467000007629395,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.467000007629395,
+ },
+ ],
+ },
+ {
+ 'level': 88,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.182999610900879,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.182999610900879,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.557999610900879,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.557999610900879,
+ },
+ ],
+ },
+ {
+ 'level': 89,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.265999794006348,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.265999794006348,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.64900016784668,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.64900016784668,
+ },
+ ],
+ },
+ {
+ 'level': 90,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.348999977111816,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.348999977111816,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.73900032043457,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.73900032043457,
+ },
+ ],
+ },
+ {
+ 'level': 91,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.430999755859375,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.430999755859375,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.829999923706055,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.829999923706055,
+ },
+ ],
+ },
+ {
+ 'level': 92,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.513999938964844,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.513999938964844,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.920999526977539,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.920999526977539,
+ },
+ ],
+ },
+ {
+ 'level': 93,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.595999717712402,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.595999717712402,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.01200008392334,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.01200008392334,
+ },
+ ],
+ },
+ {
+ 'level': 94,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.678999900817871,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.678999900817871,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.102999687194824,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.102999687194824,
+ },
+ ],
+ },
+ {
+ 'level': 95,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.76099967956543,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.76099967956543,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.194999694824219,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.194999694824219,
+ },
+ ],
+ },
+ {
+ 'level': 96,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.843999862670898,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.843999862670898,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.28600025177002,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.28600025177002,
+ },
+ ],
+ },
+ {
+ 'level': 97,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.927000045776367,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 8.927000045776367,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.376999855041504,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.376999855041504,
+ },
+ ],
+ },
+ {
+ 'level': 98,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.008999824523926,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.008999824523926,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.468999862670898,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.468999862670898,
+ },
+ ],
+ },
+ {
+ 'level': 99,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.092000007629395,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.092000007629395,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.5600004196167,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.5600004196167,
+ },
+ ],
+ },
+ {
+ 'level': 100,
+ 'curveInfos': [
+ {
+ 'type': 'GROW_CURVE_HP_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.173999786376953,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S4',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.173999786376953,
+ },
+ {
+ 'type': 'GROW_CURVE_HP_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.652000427246094,
+ },
+ {
+ 'type': 'GROW_CURVE_ATTACK_S5',
+ 'arith': 'ARITH_MULTI',
+ 'value': 9.652000427246094,
+ },
+ ],
+ },
+]
+
+WEAPON_GROW_CURVE = {
+ '1': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1,
+ 'GROW_CURVE_ATTACK_102': 1,
+ 'GROW_CURVE_ATTACK_103': 1,
+ 'GROW_CURVE_ATTACK_104': 1,
+ 'GROW_CURVE_ATTACK_105': 1,
+ 'GROW_CURVE_CRITICAL_101': 1,
+ 'GROW_CURVE_ATTACK_201': 1,
+ 'GROW_CURVE_ATTACK_202': 1,
+ 'GROW_CURVE_ATTACK_203': 1,
+ 'GROW_CURVE_ATTACK_204': 1,
+ 'GROW_CURVE_ATTACK_205': 1,
+ 'GROW_CURVE_CRITICAL_201': 1,
+ 'GROW_CURVE_ATTACK_301': 1,
+ 'GROW_CURVE_ATTACK_302': 1,
+ 'GROW_CURVE_ATTACK_303': 1,
+ 'GROW_CURVE_ATTACK_304': 1,
+ 'GROW_CURVE_ATTACK_305': 1,
+ 'GROW_CURVE_CRITICAL_301': 1,
+ }
+ },
+ '2': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.076,
+ 'GROW_CURVE_ATTACK_102': 1.081,
+ 'GROW_CURVE_ATTACK_103': 1.086,
+ 'GROW_CURVE_ATTACK_104': 1.071,
+ 'GROW_CURVE_ATTACK_105': 1.065,
+ 'GROW_CURVE_CRITICAL_101': 1,
+ 'GROW_CURVE_ATTACK_201': 1.083,
+ 'GROW_CURVE_ATTACK_202': 1.088,
+ 'GROW_CURVE_ATTACK_203': 1.093,
+ 'GROW_CURVE_ATTACK_204': 1.077,
+ 'GROW_CURVE_ATTACK_205': 1.071,
+ 'GROW_CURVE_CRITICAL_201': 1,
+ 'GROW_CURVE_ATTACK_301': 1.086,
+ 'GROW_CURVE_ATTACK_302': 1.091,
+ 'GROW_CURVE_ATTACK_303': 1.097,
+ 'GROW_CURVE_ATTACK_304': 1.079,
+ 'GROW_CURVE_ATTACK_305': 1.073,
+ 'GROW_CURVE_CRITICAL_301': 1,
+ }
+ },
+ '3': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.152,
+ 'GROW_CURVE_ATTACK_102': 1.162,
+ 'GROW_CURVE_ATTACK_103': 1.172,
+ 'GROW_CURVE_ATTACK_104': 1.141,
+ 'GROW_CURVE_ATTACK_105': 1.129,
+ 'GROW_CURVE_CRITICAL_101': 1,
+ 'GROW_CURVE_ATTACK_201': 1.165,
+ 'GROW_CURVE_ATTACK_202': 1.176,
+ 'GROW_CURVE_ATTACK_203': 1.186,
+ 'GROW_CURVE_ATTACK_204': 1.154,
+ 'GROW_CURVE_ATTACK_205': 1.141,
+ 'GROW_CURVE_CRITICAL_201': 1,
+ 'GROW_CURVE_ATTACK_301': 1.171,
+ 'GROW_CURVE_ATTACK_302': 1.183,
+ 'GROW_CURVE_ATTACK_303': 1.194,
+ 'GROW_CURVE_ATTACK_304': 1.159,
+ 'GROW_CURVE_ATTACK_305': 1.145,
+ 'GROW_CURVE_CRITICAL_301': 1,
+ }
+ },
+ '4': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.228,
+ 'GROW_CURVE_ATTACK_102': 1.244,
+ 'GROW_CURVE_ATTACK_103': 1.259,
+ 'GROW_CURVE_ATTACK_104': 1.211,
+ 'GROW_CURVE_ATTACK_105': 1.193,
+ 'GROW_CURVE_CRITICAL_101': 1,
+ 'GROW_CURVE_ATTACK_201': 1.248,
+ 'GROW_CURVE_ATTACK_202': 1.264,
+ 'GROW_CURVE_ATTACK_203': 1.28,
+ 'GROW_CURVE_ATTACK_204': 1.23,
+ 'GROW_CURVE_ATTACK_205': 1.211,
+ 'GROW_CURVE_CRITICAL_201': 1,
+ 'GROW_CURVE_ATTACK_301': 1.257,
+ 'GROW_CURVE_ATTACK_302': 1.275,
+ 'GROW_CURVE_ATTACK_303': 1.292,
+ 'GROW_CURVE_ATTACK_304': 1.238,
+ 'GROW_CURVE_ATTACK_305': 1.217,
+ 'GROW_CURVE_CRITICAL_301': 1,
+ }
+ },
+ '5': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.303,
+ 'GROW_CURVE_ATTACK_102': 1.325,
+ 'GROW_CURVE_ATTACK_103': 1.346,
+ 'GROW_CURVE_ATTACK_104': 1.28,
+ 'GROW_CURVE_ATTACK_105': 1.255,
+ 'GROW_CURVE_CRITICAL_101': 1.162,
+ 'GROW_CURVE_ATTACK_201': 1.33,
+ 'GROW_CURVE_ATTACK_202': 1.353,
+ 'GROW_CURVE_ATTACK_203': 1.374,
+ 'GROW_CURVE_ATTACK_204': 1.306,
+ 'GROW_CURVE_ATTACK_205': 1.28,
+ 'GROW_CURVE_CRITICAL_201': 1.162,
+ 'GROW_CURVE_ATTACK_301': 1.343,
+ 'GROW_CURVE_ATTACK_302': 1.368,
+ 'GROW_CURVE_ATTACK_303': 1.391,
+ 'GROW_CURVE_ATTACK_304': 1.317,
+ 'GROW_CURVE_ATTACK_305': 1.288,
+ 'GROW_CURVE_CRITICAL_301': 1.162,
+ }
+ },
+ '6': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.379,
+ 'GROW_CURVE_ATTACK_102': 1.407,
+ 'GROW_CURVE_ATTACK_103': 1.433,
+ 'GROW_CURVE_ATTACK_104': 1.349,
+ 'GROW_CURVE_ATTACK_105': 1.317,
+ 'GROW_CURVE_CRITICAL_101': 1.162,
+ 'GROW_CURVE_ATTACK_201': 1.413,
+ 'GROW_CURVE_ATTACK_202': 1.442,
+ 'GROW_CURVE_ATTACK_203': 1.469,
+ 'GROW_CURVE_ATTACK_204': 1.382,
+ 'GROW_CURVE_ATTACK_205': 1.349,
+ 'GROW_CURVE_CRITICAL_201': 1.162,
+ 'GROW_CURVE_ATTACK_301': 1.429,
+ 'GROW_CURVE_ATTACK_302': 1.461,
+ 'GROW_CURVE_ATTACK_303': 1.49,
+ 'GROW_CURVE_ATTACK_304': 1.395,
+ 'GROW_CURVE_ATTACK_305': 1.359,
+ 'GROW_CURVE_CRITICAL_301': 1.162,
+ }
+ },
+ '7': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.454,
+ 'GROW_CURVE_ATTACK_102': 1.489,
+ 'GROW_CURVE_ATTACK_103': 1.521,
+ 'GROW_CURVE_ATTACK_104': 1.417,
+ 'GROW_CURVE_ATTACK_105': 1.379,
+ 'GROW_CURVE_CRITICAL_101': 1.162,
+ 'GROW_CURVE_ATTACK_201': 1.495,
+ 'GROW_CURVE_ATTACK_202': 1.531,
+ 'GROW_CURVE_ATTACK_203': 1.565,
+ 'GROW_CURVE_ATTACK_204': 1.457,
+ 'GROW_CURVE_ATTACK_205': 1.417,
+ 'GROW_CURVE_CRITICAL_201': 1.162,
+ 'GROW_CURVE_ATTACK_301': 1.516,
+ 'GROW_CURVE_ATTACK_302': 1.554,
+ 'GROW_CURVE_ATTACK_303': 1.591,
+ 'GROW_CURVE_ATTACK_304': 1.474,
+ 'GROW_CURVE_ATTACK_305': 1.429,
+ 'GROW_CURVE_CRITICAL_301': 1.162,
+ }
+ },
+ '8': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.529,
+ 'GROW_CURVE_ATTACK_102': 1.57,
+ 'GROW_CURVE_ATTACK_103': 1.609,
+ 'GROW_CURVE_ATTACK_104': 1.486,
+ 'GROW_CURVE_ATTACK_105': 1.439,
+ 'GROW_CURVE_CRITICAL_101': 1.162,
+ 'GROW_CURVE_ATTACK_201': 1.578,
+ 'GROW_CURVE_ATTACK_202': 1.621,
+ 'GROW_CURVE_ATTACK_203': 1.661,
+ 'GROW_CURVE_ATTACK_204': 1.533,
+ 'GROW_CURVE_ATTACK_205': 1.484,
+ 'GROW_CURVE_CRITICAL_201': 1.162,
+ 'GROW_CURVE_ATTACK_301': 1.602,
+ 'GROW_CURVE_ATTACK_302': 1.648,
+ 'GROW_CURVE_ATTACK_303': 1.692,
+ 'GROW_CURVE_ATTACK_304': 1.552,
+ 'GROW_CURVE_ATTACK_305': 1.499,
+ 'GROW_CURVE_CRITICAL_301': 1.162,
+ }
+ },
+ '9': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.604,
+ 'GROW_CURVE_ATTACK_102': 1.652,
+ 'GROW_CURVE_ATTACK_103': 1.698,
+ 'GROW_CURVE_ATTACK_104': 1.553,
+ 'GROW_CURVE_ATTACK_105': 1.499,
+ 'GROW_CURVE_CRITICAL_101': 1.162,
+ 'GROW_CURVE_ATTACK_201': 1.661,
+ 'GROW_CURVE_ATTACK_202': 1.71,
+ 'GROW_CURVE_ATTACK_203': 1.757,
+ 'GROW_CURVE_ATTACK_204': 1.607,
+ 'GROW_CURVE_ATTACK_205': 1.551,
+ 'GROW_CURVE_CRITICAL_201': 1.162,
+ 'GROW_CURVE_ATTACK_301': 1.689,
+ 'GROW_CURVE_ATTACK_302': 1.743,
+ 'GROW_CURVE_ATTACK_303': 1.793,
+ 'GROW_CURVE_ATTACK_304': 1.631,
+ 'GROW_CURVE_ATTACK_305': 1.568,
+ 'GROW_CURVE_CRITICAL_301': 1.162,
+ }
+ },
+ '10': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.679,
+ 'GROW_CURVE_ATTACK_102': 1.734,
+ 'GROW_CURVE_ATTACK_103': 1.786,
+ 'GROW_CURVE_ATTACK_104': 1.621,
+ 'GROW_CURVE_ATTACK_105': 1.558,
+ 'GROW_CURVE_CRITICAL_101': 1.363,
+ 'GROW_CURVE_ATTACK_201': 1.743,
+ 'GROW_CURVE_ATTACK_202': 1.8,
+ 'GROW_CURVE_ATTACK_203': 1.854,
+ 'GROW_CURVE_ATTACK_204': 1.682,
+ 'GROW_CURVE_ATTACK_205': 1.617,
+ 'GROW_CURVE_CRITICAL_201': 1.363,
+ 'GROW_CURVE_ATTACK_301': 1.775,
+ 'GROW_CURVE_ATTACK_302': 1.837,
+ 'GROW_CURVE_ATTACK_303': 1.895,
+ 'GROW_CURVE_ATTACK_304': 1.709,
+ 'GROW_CURVE_ATTACK_305': 1.637,
+ 'GROW_CURVE_CRITICAL_301': 1.363,
+ }
+ },
+ '11': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.754,
+ 'GROW_CURVE_ATTACK_102': 1.816,
+ 'GROW_CURVE_ATTACK_103': 1.875,
+ 'GROW_CURVE_ATTACK_104': 1.688,
+ 'GROW_CURVE_ATTACK_105': 1.617,
+ 'GROW_CURVE_CRITICAL_101': 1.363,
+ 'GROW_CURVE_ATTACK_201': 1.826,
+ 'GROW_CURVE_ATTACK_202': 1.891,
+ 'GROW_CURVE_ATTACK_203': 1.952,
+ 'GROW_CURVE_ATTACK_204': 1.757,
+ 'GROW_CURVE_ATTACK_205': 1.683,
+ 'GROW_CURVE_CRITICAL_201': 1.363,
+ 'GROW_CURVE_ATTACK_301': 1.862,
+ 'GROW_CURVE_ATTACK_302': 1.933,
+ 'GROW_CURVE_ATTACK_303': 1.998,
+ 'GROW_CURVE_ATTACK_304': 1.787,
+ 'GROW_CURVE_ATTACK_305': 1.706,
+ 'GROW_CURVE_CRITICAL_301': 1.363,
+ }
+ },
+ '12': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.828,
+ 'GROW_CURVE_ATTACK_102': 1.898,
+ 'GROW_CURVE_ATTACK_103': 1.965,
+ 'GROW_CURVE_ATTACK_104': 1.754,
+ 'GROW_CURVE_ATTACK_105': 1.675,
+ 'GROW_CURVE_CRITICAL_101': 1.363,
+ 'GROW_CURVE_ATTACK_201': 1.908,
+ 'GROW_CURVE_ATTACK_202': 1.981,
+ 'GROW_CURVE_ATTACK_203': 2.049,
+ 'GROW_CURVE_ATTACK_204': 1.831,
+ 'GROW_CURVE_ATTACK_205': 1.748,
+ 'GROW_CURVE_CRITICAL_201': 1.363,
+ 'GROW_CURVE_ATTACK_301': 1.949,
+ 'GROW_CURVE_ATTACK_302': 2.028,
+ 'GROW_CURVE_ATTACK_303': 2.102,
+ 'GROW_CURVE_ATTACK_304': 1.865,
+ 'GROW_CURVE_ATTACK_305': 1.774,
+ 'GROW_CURVE_CRITICAL_301': 1.363,
+ }
+ },
+ '13': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.903,
+ 'GROW_CURVE_ATTACK_102': 1.981,
+ 'GROW_CURVE_ATTACK_103': 2.054,
+ 'GROW_CURVE_ATTACK_104': 1.82,
+ 'GROW_CURVE_ATTACK_105': 1.733,
+ 'GROW_CURVE_CRITICAL_101': 1.363,
+ 'GROW_CURVE_ATTACK_201': 1.991,
+ 'GROW_CURVE_ATTACK_202': 2.072,
+ 'GROW_CURVE_ATTACK_203': 2.147,
+ 'GROW_CURVE_ATTACK_204': 1.905,
+ 'GROW_CURVE_ATTACK_205': 1.813,
+ 'GROW_CURVE_CRITICAL_201': 1.363,
+ 'GROW_CURVE_ATTACK_301': 2.036,
+ 'GROW_CURVE_ATTACK_302': 2.124,
+ 'GROW_CURVE_ATTACK_303': 2.206,
+ 'GROW_CURVE_ATTACK_304': 1.942,
+ 'GROW_CURVE_ATTACK_305': 1.841,
+ 'GROW_CURVE_CRITICAL_301': 1.363,
+ }
+ },
+ '14': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 1.977,
+ 'GROW_CURVE_ATTACK_102': 2.063,
+ 'GROW_CURVE_ATTACK_103': 2.144,
+ 'GROW_CURVE_ATTACK_104': 1.886,
+ 'GROW_CURVE_ATTACK_105': 1.79,
+ 'GROW_CURVE_CRITICAL_101': 1.363,
+ 'GROW_CURVE_ATTACK_201': 2.073,
+ 'GROW_CURVE_ATTACK_202': 2.162,
+ 'GROW_CURVE_ATTACK_203': 2.246,
+ 'GROW_CURVE_ATTACK_204': 1.979,
+ 'GROW_CURVE_ATTACK_205': 1.878,
+ 'GROW_CURVE_CRITICAL_201': 1.363,
+ 'GROW_CURVE_ATTACK_301': 2.124,
+ 'GROW_CURVE_ATTACK_302': 2.22,
+ 'GROW_CURVE_ATTACK_303': 2.31,
+ 'GROW_CURVE_ATTACK_304': 2.02,
+ 'GROW_CURVE_ATTACK_305': 1.909,
+ 'GROW_CURVE_CRITICAL_301': 1.363,
+ }
+ },
+ '15': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.051,
+ 'GROW_CURVE_ATTACK_102': 2.145,
+ 'GROW_CURVE_ATTACK_103': 2.234,
+ 'GROW_CURVE_ATTACK_104': 1.952,
+ 'GROW_CURVE_ATTACK_105': 1.846,
+ 'GROW_CURVE_CRITICAL_101': 1.565,
+ 'GROW_CURVE_ATTACK_201': 2.156,
+ 'GROW_CURVE_ATTACK_202': 2.253,
+ 'GROW_CURVE_ATTACK_203': 2.345,
+ 'GROW_CURVE_ATTACK_204': 2.052,
+ 'GROW_CURVE_ATTACK_205': 1.942,
+ 'GROW_CURVE_CRITICAL_201': 1.565,
+ 'GROW_CURVE_ATTACK_301': 2.211,
+ 'GROW_CURVE_ATTACK_302': 2.317,
+ 'GROW_CURVE_ATTACK_303': 2.415,
+ 'GROW_CURVE_ATTACK_304': 2.098,
+ 'GROW_CURVE_ATTACK_305': 1.976,
+ 'GROW_CURVE_CRITICAL_301': 1.565,
+ }
+ },
+ '16': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.125,
+ 'GROW_CURVE_ATTACK_102': 2.227,
+ 'GROW_CURVE_ATTACK_103': 2.324,
+ 'GROW_CURVE_ATTACK_104': 2.017,
+ 'GROW_CURVE_ATTACK_105': 1.902,
+ 'GROW_CURVE_CRITICAL_101': 1.565,
+ 'GROW_CURVE_ATTACK_201': 2.239,
+ 'GROW_CURVE_ATTACK_202': 2.345,
+ 'GROW_CURVE_ATTACK_203': 2.444,
+ 'GROW_CURVE_ATTACK_204': 2.126,
+ 'GROW_CURVE_ATTACK_205': 2.005,
+ 'GROW_CURVE_CRITICAL_201': 1.565,
+ 'GROW_CURVE_ATTACK_301': 2.299,
+ 'GROW_CURVE_ATTACK_302': 2.414,
+ 'GROW_CURVE_ATTACK_303': 2.521,
+ 'GROW_CURVE_ATTACK_304': 2.175,
+ 'GROW_CURVE_ATTACK_305': 2.043,
+ 'GROW_CURVE_CRITICAL_301': 1.565,
+ }
+ },
+ '17': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.199,
+ 'GROW_CURVE_ATTACK_102': 2.31,
+ 'GROW_CURVE_ATTACK_103': 2.414,
+ 'GROW_CURVE_ATTACK_104': 2.082,
+ 'GROW_CURVE_ATTACK_105': 1.958,
+ 'GROW_CURVE_CRITICAL_101': 1.565,
+ 'GROW_CURVE_ATTACK_201': 2.321,
+ 'GROW_CURVE_ATTACK_202': 2.436,
+ 'GROW_CURVE_ATTACK_203': 2.544,
+ 'GROW_CURVE_ATTACK_204': 2.199,
+ 'GROW_CURVE_ATTACK_205': 2.068,
+ 'GROW_CURVE_CRITICAL_201': 1.565,
+ 'GROW_CURVE_ATTACK_301': 2.386,
+ 'GROW_CURVE_ATTACK_302': 2.511,
+ 'GROW_CURVE_ATTACK_303': 2.627,
+ 'GROW_CURVE_ATTACK_304': 2.253,
+ 'GROW_CURVE_ATTACK_305': 2.109,
+ 'GROW_CURVE_CRITICAL_301': 1.565,
+ }
+ },
+ '18': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.273,
+ 'GROW_CURVE_ATTACK_102': 2.392,
+ 'GROW_CURVE_ATTACK_103': 2.505,
+ 'GROW_CURVE_ATTACK_104': 2.147,
+ 'GROW_CURVE_ATTACK_105': 2.013,
+ 'GROW_CURVE_CRITICAL_101': 1.565,
+ 'GROW_CURVE_ATTACK_201': 2.404,
+ 'GROW_CURVE_ATTACK_202': 2.527,
+ 'GROW_CURVE_ATTACK_203': 2.644,
+ 'GROW_CURVE_ATTACK_204': 2.272,
+ 'GROW_CURVE_ATTACK_205': 2.131,
+ 'GROW_CURVE_CRITICAL_201': 1.565,
+ 'GROW_CURVE_ATTACK_301': 2.474,
+ 'GROW_CURVE_ATTACK_302': 2.608,
+ 'GROW_CURVE_ATTACK_303': 2.734,
+ 'GROW_CURVE_ATTACK_304': 2.33,
+ 'GROW_CURVE_ATTACK_305': 2.175,
+ 'GROW_CURVE_CRITICAL_301': 1.565,
+ }
+ },
+ '19': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.347,
+ 'GROW_CURVE_ATTACK_102': 2.474,
+ 'GROW_CURVE_ATTACK_103': 2.595,
+ 'GROW_CURVE_ATTACK_104': 2.211,
+ 'GROW_CURVE_ATTACK_105': 2.067,
+ 'GROW_CURVE_CRITICAL_101': 1.565,
+ 'GROW_CURVE_ATTACK_201': 2.486,
+ 'GROW_CURVE_ATTACK_202': 2.619,
+ 'GROW_CURVE_ATTACK_203': 2.744,
+ 'GROW_CURVE_ATTACK_204': 2.345,
+ 'GROW_CURVE_ATTACK_205': 2.194,
+ 'GROW_CURVE_CRITICAL_201': 1.565,
+ 'GROW_CURVE_ATTACK_301': 2.562,
+ 'GROW_CURVE_ATTACK_302': 2.706,
+ 'GROW_CURVE_ATTACK_303': 2.841,
+ 'GROW_CURVE_ATTACK_304': 2.408,
+ 'GROW_CURVE_ATTACK_305': 2.241,
+ 'GROW_CURVE_CRITICAL_301': 1.565,
+ }
+ },
+ '20': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.42,
+ 'GROW_CURVE_ATTACK_102': 2.557,
+ 'GROW_CURVE_ATTACK_103': 2.686,
+ 'GROW_CURVE_ATTACK_104': 2.275,
+ 'GROW_CURVE_ATTACK_105': 2.121,
+ 'GROW_CURVE_CRITICAL_101': 1.767,
+ 'GROW_CURVE_ATTACK_201': 2.569,
+ 'GROW_CURVE_ATTACK_202': 2.711,
+ 'GROW_CURVE_ATTACK_203': 2.845,
+ 'GROW_CURVE_ATTACK_204': 2.417,
+ 'GROW_CURVE_ATTACK_205': 2.256,
+ 'GROW_CURVE_CRITICAL_201': 1.767,
+ 'GROW_CURVE_ATTACK_301': 2.65,
+ 'GROW_CURVE_ATTACK_302': 2.804,
+ 'GROW_CURVE_ATTACK_303': 2.949,
+ 'GROW_CURVE_ATTACK_304': 2.485,
+ 'GROW_CURVE_ATTACK_305': 2.307,
+ 'GROW_CURVE_CRITICAL_301': 1.767,
+ }
+ },
+ '21': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.493,
+ 'GROW_CURVE_ATTACK_102': 2.639,
+ 'GROW_CURVE_ATTACK_103': 2.777,
+ 'GROW_CURVE_ATTACK_104': 2.339,
+ 'GROW_CURVE_ATTACK_105': 2.175,
+ 'GROW_CURVE_CRITICAL_101': 1.767,
+ 'GROW_CURVE_ATTACK_201': 2.651,
+ 'GROW_CURVE_ATTACK_202': 2.803,
+ 'GROW_CURVE_ATTACK_203': 2.946,
+ 'GROW_CURVE_ATTACK_204': 2.49,
+ 'GROW_CURVE_ATTACK_205': 2.318,
+ 'GROW_CURVE_CRITICAL_201': 1.767,
+ 'GROW_CURVE_ATTACK_301': 2.738,
+ 'GROW_CURVE_ATTACK_302': 2.903,
+ 'GROW_CURVE_ATTACK_303': 3.057,
+ 'GROW_CURVE_ATTACK_304': 2.562,
+ 'GROW_CURVE_ATTACK_305': 2.373,
+ 'GROW_CURVE_CRITICAL_301': 1.767,
+ }
+ },
+ '22': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.567,
+ 'GROW_CURVE_ATTACK_102': 2.722,
+ 'GROW_CURVE_ATTACK_103': 2.868,
+ 'GROW_CURVE_ATTACK_104': 2.402,
+ 'GROW_CURVE_ATTACK_105': 2.228,
+ 'GROW_CURVE_CRITICAL_101': 1.767,
+ 'GROW_CURVE_ATTACK_201': 2.734,
+ 'GROW_CURVE_ATTACK_202': 2.895,
+ 'GROW_CURVE_ATTACK_203': 3.047,
+ 'GROW_CURVE_ATTACK_204': 2.562,
+ 'GROW_CURVE_ATTACK_205': 2.379,
+ 'GROW_CURVE_CRITICAL_201': 1.767,
+ 'GROW_CURVE_ATTACK_301': 2.827,
+ 'GROW_CURVE_ATTACK_302': 3.002,
+ 'GROW_CURVE_ATTACK_303': 3.165,
+ 'GROW_CURVE_ATTACK_304': 2.639,
+ 'GROW_CURVE_ATTACK_305': 2.438,
+ 'GROW_CURVE_CRITICAL_301': 1.767,
+ }
+ },
+ '23': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.64,
+ 'GROW_CURVE_ATTACK_102': 2.804,
+ 'GROW_CURVE_ATTACK_103': 2.96,
+ 'GROW_CURVE_ATTACK_104': 2.466,
+ 'GROW_CURVE_ATTACK_105': 2.28,
+ 'GROW_CURVE_CRITICAL_101': 1.767,
+ 'GROW_CURVE_ATTACK_201': 2.817,
+ 'GROW_CURVE_ATTACK_202': 2.987,
+ 'GROW_CURVE_ATTACK_203': 3.148,
+ 'GROW_CURVE_ATTACK_204': 2.634,
+ 'GROW_CURVE_ATTACK_205': 2.44,
+ 'GROW_CURVE_CRITICAL_201': 1.767,
+ 'GROW_CURVE_ATTACK_301': 2.915,
+ 'GROW_CURVE_ATTACK_302': 3.101,
+ 'GROW_CURVE_ATTACK_303': 3.274,
+ 'GROW_CURVE_ATTACK_304': 2.717,
+ 'GROW_CURVE_ATTACK_305': 2.503,
+ 'GROW_CURVE_CRITICAL_301': 1.767,
+ }
+ },
+ '24': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.713,
+ 'GROW_CURVE_ATTACK_102': 2.887,
+ 'GROW_CURVE_ATTACK_103': 3.051,
+ 'GROW_CURVE_ATTACK_104': 2.529,
+ 'GROW_CURVE_ATTACK_105': 2.333,
+ 'GROW_CURVE_CRITICAL_101': 1.767,
+ 'GROW_CURVE_ATTACK_201': 2.899,
+ 'GROW_CURVE_ATTACK_202': 3.08,
+ 'GROW_CURVE_ATTACK_203': 3.25,
+ 'GROW_CURVE_ATTACK_204': 2.707,
+ 'GROW_CURVE_ATTACK_205': 2.501,
+ 'GROW_CURVE_CRITICAL_201': 1.767,
+ 'GROW_CURVE_ATTACK_301': 3.004,
+ 'GROW_CURVE_ATTACK_302': 3.2,
+ 'GROW_CURVE_ATTACK_303': 3.384,
+ 'GROW_CURVE_ATTACK_304': 2.794,
+ 'GROW_CURVE_ATTACK_305': 2.568,
+ 'GROW_CURVE_CRITICAL_301': 1.767,
+ }
+ },
+ '25': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.786,
+ 'GROW_CURVE_ATTACK_102': 2.969,
+ 'GROW_CURVE_ATTACK_103': 3.143,
+ 'GROW_CURVE_ATTACK_104': 2.591,
+ 'GROW_CURVE_ATTACK_105': 2.385,
+ 'GROW_CURVE_CRITICAL_101': 1.969,
+ 'GROW_CURVE_ATTACK_201': 2.982,
+ 'GROW_CURVE_ATTACK_202': 3.172,
+ 'GROW_CURVE_ATTACK_203': 3.352,
+ 'GROW_CURVE_ATTACK_204': 2.778,
+ 'GROW_CURVE_ATTACK_205': 2.562,
+ 'GROW_CURVE_CRITICAL_201': 1.969,
+ 'GROW_CURVE_ATTACK_301': 3.093,
+ 'GROW_CURVE_ATTACK_302': 3.3,
+ 'GROW_CURVE_ATTACK_303': 3.493,
+ 'GROW_CURVE_ATTACK_304': 2.871,
+ 'GROW_CURVE_ATTACK_305': 2.633,
+ 'GROW_CURVE_CRITICAL_301': 1.969,
+ }
+ },
+ '26': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.859,
+ 'GROW_CURVE_ATTACK_102': 3.052,
+ 'GROW_CURVE_ATTACK_103': 3.234,
+ 'GROW_CURVE_ATTACK_104': 2.654,
+ 'GROW_CURVE_ATTACK_105': 2.436,
+ 'GROW_CURVE_CRITICAL_101': 1.969,
+ 'GROW_CURVE_ATTACK_201': 3.064,
+ 'GROW_CURVE_ATTACK_202': 3.265,
+ 'GROW_CURVE_ATTACK_203': 3.454,
+ 'GROW_CURVE_ATTACK_204': 2.85,
+ 'GROW_CURVE_ATTACK_205': 2.622,
+ 'GROW_CURVE_CRITICAL_201': 1.969,
+ 'GROW_CURVE_ATTACK_301': 3.182,
+ 'GROW_CURVE_ATTACK_302': 3.4,
+ 'GROW_CURVE_ATTACK_303': 3.604,
+ 'GROW_CURVE_ATTACK_304': 2.948,
+ 'GROW_CURVE_ATTACK_305': 2.697,
+ 'GROW_CURVE_CRITICAL_301': 1.969,
+ }
+ },
+ '27': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 2.931,
+ 'GROW_CURVE_ATTACK_102': 3.134,
+ 'GROW_CURVE_ATTACK_103': 3.326,
+ 'GROW_CURVE_ATTACK_104': 2.716,
+ 'GROW_CURVE_ATTACK_105': 2.487,
+ 'GROW_CURVE_CRITICAL_101': 1.969,
+ 'GROW_CURVE_ATTACK_201': 3.147,
+ 'GROW_CURVE_ATTACK_202': 3.358,
+ 'GROW_CURVE_ATTACK_203': 3.557,
+ 'GROW_CURVE_ATTACK_204': 2.922,
+ 'GROW_CURVE_ATTACK_205': 2.682,
+ 'GROW_CURVE_CRITICAL_201': 1.969,
+ 'GROW_CURVE_ATTACK_301': 3.271,
+ 'GROW_CURVE_ATTACK_302': 3.5,
+ 'GROW_CURVE_ATTACK_303': 3.714,
+ 'GROW_CURVE_ATTACK_304': 3.026,
+ 'GROW_CURVE_ATTACK_305': 2.762,
+ 'GROW_CURVE_CRITICAL_301': 1.969,
+ }
+ },
+ '28': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.004,
+ 'GROW_CURVE_ATTACK_102': 3.217,
+ 'GROW_CURVE_ATTACK_103': 3.418,
+ 'GROW_CURVE_ATTACK_104': 2.778,
+ 'GROW_CURVE_ATTACK_105': 2.538,
+ 'GROW_CURVE_CRITICAL_101': 1.969,
+ 'GROW_CURVE_ATTACK_201': 3.229,
+ 'GROW_CURVE_ATTACK_202': 3.451,
+ 'GROW_CURVE_ATTACK_203': 3.66,
+ 'GROW_CURVE_ATTACK_204': 2.993,
+ 'GROW_CURVE_ATTACK_205': 2.741,
+ 'GROW_CURVE_CRITICAL_201': 1.969,
+ 'GROW_CURVE_ATTACK_301': 3.36,
+ 'GROW_CURVE_ATTACK_302': 3.601,
+ 'GROW_CURVE_ATTACK_303': 3.825,
+ 'GROW_CURVE_ATTACK_304': 3.103,
+ 'GROW_CURVE_ATTACK_305': 2.826,
+ 'GROW_CURVE_CRITICAL_301': 1.969,
+ }
+ },
+ '29': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.076,
+ 'GROW_CURVE_ATTACK_102': 3.299,
+ 'GROW_CURVE_ATTACK_103': 3.51,
+ 'GROW_CURVE_ATTACK_104': 2.84,
+ 'GROW_CURVE_ATTACK_105': 2.588,
+ 'GROW_CURVE_CRITICAL_101': 1.969,
+ 'GROW_CURVE_ATTACK_201': 3.312,
+ 'GROW_CURVE_ATTACK_202': 3.544,
+ 'GROW_CURVE_ATTACK_203': 3.762,
+ 'GROW_CURVE_ATTACK_204': 3.065,
+ 'GROW_CURVE_ATTACK_205': 2.801,
+ 'GROW_CURVE_CRITICAL_201': 1.969,
+ 'GROW_CURVE_ATTACK_301': 3.45,
+ 'GROW_CURVE_ATTACK_302': 3.701,
+ 'GROW_CURVE_ATTACK_303': 3.937,
+ 'GROW_CURVE_ATTACK_304': 3.18,
+ 'GROW_CURVE_ATTACK_305': 2.89,
+ 'GROW_CURVE_CRITICAL_301': 1.969,
+ }
+ },
+ '30': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.148,
+ 'GROW_CURVE_ATTACK_102': 3.382,
+ 'GROW_CURVE_ATTACK_103': 3.602,
+ 'GROW_CURVE_ATTACK_104': 2.901,
+ 'GROW_CURVE_ATTACK_105': 2.638,
+ 'GROW_CURVE_CRITICAL_101': 2.171,
+ 'GROW_CURVE_ATTACK_201': 3.394,
+ 'GROW_CURVE_ATTACK_202': 3.637,
+ 'GROW_CURVE_ATTACK_203': 3.866,
+ 'GROW_CURVE_ATTACK_204': 3.136,
+ 'GROW_CURVE_ATTACK_205': 2.86,
+ 'GROW_CURVE_CRITICAL_201': 2.171,
+ 'GROW_CURVE_ATTACK_301': 3.539,
+ 'GROW_CURVE_ATTACK_302': 3.803,
+ 'GROW_CURVE_ATTACK_303': 4.049,
+ 'GROW_CURVE_ATTACK_304': 3.257,
+ 'GROW_CURVE_ATTACK_305': 2.954,
+ 'GROW_CURVE_CRITICAL_301': 2.171,
+ }
+ },
+ '31': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.221,
+ 'GROW_CURVE_ATTACK_102': 3.464,
+ 'GROW_CURVE_ATTACK_103': 3.694,
+ 'GROW_CURVE_ATTACK_104': 2.962,
+ 'GROW_CURVE_ATTACK_105': 2.688,
+ 'GROW_CURVE_CRITICAL_101': 2.171,
+ 'GROW_CURVE_ATTACK_201': 3.477,
+ 'GROW_CURVE_ATTACK_202': 3.731,
+ 'GROW_CURVE_ATTACK_203': 3.969,
+ 'GROW_CURVE_ATTACK_204': 3.207,
+ 'GROW_CURVE_ATTACK_205': 2.919,
+ 'GROW_CURVE_CRITICAL_201': 2.171,
+ 'GROW_CURVE_ATTACK_301': 3.629,
+ 'GROW_CURVE_ATTACK_302': 3.904,
+ 'GROW_CURVE_ATTACK_303': 4.161,
+ 'GROW_CURVE_ATTACK_304': 3.334,
+ 'GROW_CURVE_ATTACK_305': 3.018,
+ 'GROW_CURVE_CRITICAL_301': 2.171,
+ }
+ },
+ '32': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.293,
+ 'GROW_CURVE_ATTACK_102': 3.547,
+ 'GROW_CURVE_ATTACK_103': 3.787,
+ 'GROW_CURVE_ATTACK_104': 3.023,
+ 'GROW_CURVE_ATTACK_105': 2.737,
+ 'GROW_CURVE_CRITICAL_101': 2.171,
+ 'GROW_CURVE_ATTACK_201': 3.56,
+ 'GROW_CURVE_ATTACK_202': 3.824,
+ 'GROW_CURVE_ATTACK_203': 4.073,
+ 'GROW_CURVE_ATTACK_204': 3.278,
+ 'GROW_CURVE_ATTACK_205': 2.978,
+ 'GROW_CURVE_CRITICAL_201': 2.171,
+ 'GROW_CURVE_ATTACK_301': 3.719,
+ 'GROW_CURVE_ATTACK_302': 4.005,
+ 'GROW_CURVE_ATTACK_303': 4.273,
+ 'GROW_CURVE_ATTACK_304': 3.412,
+ 'GROW_CURVE_ATTACK_305': 3.082,
+ 'GROW_CURVE_CRITICAL_301': 2.171,
+ }
+ },
+ '33': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.365,
+ 'GROW_CURVE_ATTACK_102': 3.629,
+ 'GROW_CURVE_ATTACK_103': 3.879,
+ 'GROW_CURVE_ATTACK_104': 3.084,
+ 'GROW_CURVE_ATTACK_105': 2.786,
+ 'GROW_CURVE_CRITICAL_101': 2.171,
+ 'GROW_CURVE_ATTACK_201': 3.642,
+ 'GROW_CURVE_ATTACK_202': 3.918,
+ 'GROW_CURVE_ATTACK_203': 4.177,
+ 'GROW_CURVE_ATTACK_204': 3.349,
+ 'GROW_CURVE_ATTACK_205': 3.036,
+ 'GROW_CURVE_CRITICAL_201': 2.171,
+ 'GROW_CURVE_ATTACK_301': 3.809,
+ 'GROW_CURVE_ATTACK_302': 4.107,
+ 'GROW_CURVE_ATTACK_303': 4.386,
+ 'GROW_CURVE_ATTACK_304': 3.489,
+ 'GROW_CURVE_ATTACK_305': 3.145,
+ 'GROW_CURVE_CRITICAL_301': 2.171,
+ }
+ },
+ '34': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.437,
+ 'GROW_CURVE_ATTACK_102': 3.712,
+ 'GROW_CURVE_ATTACK_103': 3.972,
+ 'GROW_CURVE_ATTACK_104': 3.145,
+ 'GROW_CURVE_ATTACK_105': 2.835,
+ 'GROW_CURVE_CRITICAL_101': 2.171,
+ 'GROW_CURVE_ATTACK_201': 3.725,
+ 'GROW_CURVE_ATTACK_202': 4.011,
+ 'GROW_CURVE_ATTACK_203': 4.281,
+ 'GROW_CURVE_ATTACK_204': 3.42,
+ 'GROW_CURVE_ATTACK_205': 3.094,
+ 'GROW_CURVE_CRITICAL_201': 2.171,
+ 'GROW_CURVE_ATTACK_301': 3.899,
+ 'GROW_CURVE_ATTACK_302': 4.209,
+ 'GROW_CURVE_ATTACK_303': 4.499,
+ 'GROW_CURVE_ATTACK_304': 3.566,
+ 'GROW_CURVE_ATTACK_305': 3.209,
+ 'GROW_CURVE_CRITICAL_301': 2.171,
+ }
+ },
+ '35': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.508,
+ 'GROW_CURVE_ATTACK_102': 3.794,
+ 'GROW_CURVE_ATTACK_103': 4.064,
+ 'GROW_CURVE_ATTACK_104': 3.205,
+ 'GROW_CURVE_ATTACK_105': 2.883,
+ 'GROW_CURVE_CRITICAL_101': 2.373,
+ 'GROW_CURVE_ATTACK_201': 3.807,
+ 'GROW_CURVE_ATTACK_202': 4.105,
+ 'GROW_CURVE_ATTACK_203': 4.385,
+ 'GROW_CURVE_ATTACK_204': 3.49,
+ 'GROW_CURVE_ATTACK_205': 3.152,
+ 'GROW_CURVE_CRITICAL_201': 2.373,
+ 'GROW_CURVE_ATTACK_301': 3.989,
+ 'GROW_CURVE_ATTACK_302': 4.312,
+ 'GROW_CURVE_ATTACK_303': 4.613,
+ 'GROW_CURVE_ATTACK_304': 3.644,
+ 'GROW_CURVE_ATTACK_305': 3.272,
+ 'GROW_CURVE_CRITICAL_301': 2.373,
+ }
+ },
+ '36': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.58,
+ 'GROW_CURVE_ATTACK_102': 3.877,
+ 'GROW_CURVE_ATTACK_103': 4.157,
+ 'GROW_CURVE_ATTACK_104': 3.265,
+ 'GROW_CURVE_ATTACK_105': 2.931,
+ 'GROW_CURVE_CRITICAL_101': 2.373,
+ 'GROW_CURVE_ATTACK_201': 3.89,
+ 'GROW_CURVE_ATTACK_202': 4.199,
+ 'GROW_CURVE_ATTACK_203': 4.489,
+ 'GROW_CURVE_ATTACK_204': 3.561,
+ 'GROW_CURVE_ATTACK_205': 3.21,
+ 'GROW_CURVE_CRITICAL_201': 2.373,
+ 'GROW_CURVE_ATTACK_301': 4.08,
+ 'GROW_CURVE_ATTACK_302': 4.414,
+ 'GROW_CURVE_ATTACK_303': 4.727,
+ 'GROW_CURVE_ATTACK_304': 3.721,
+ 'GROW_CURVE_ATTACK_305': 3.336,
+ 'GROW_CURVE_CRITICAL_301': 2.373,
+ }
+ },
+ '37': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.652,
+ 'GROW_CURVE_ATTACK_102': 3.959,
+ 'GROW_CURVE_ATTACK_103': 4.25,
+ 'GROW_CURVE_ATTACK_104': 3.325,
+ 'GROW_CURVE_ATTACK_105': 2.979,
+ 'GROW_CURVE_CRITICAL_101': 2.373,
+ 'GROW_CURVE_ATTACK_201': 3.972,
+ 'GROW_CURVE_ATTACK_202': 4.293,
+ 'GROW_CURVE_ATTACK_203': 4.594,
+ 'GROW_CURVE_ATTACK_204': 3.632,
+ 'GROW_CURVE_ATTACK_205': 3.268,
+ 'GROW_CURVE_CRITICAL_201': 2.373,
+ 'GROW_CURVE_ATTACK_301': 4.17,
+ 'GROW_CURVE_ATTACK_302': 4.517,
+ 'GROW_CURVE_ATTACK_303': 4.841,
+ 'GROW_CURVE_ATTACK_304': 3.798,
+ 'GROW_CURVE_ATTACK_305': 3.399,
+ 'GROW_CURVE_CRITICAL_301': 2.373,
+ }
+ },
+ '38': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.723,
+ 'GROW_CURVE_ATTACK_102': 4.042,
+ 'GROW_CURVE_ATTACK_103': 4.342,
+ 'GROW_CURVE_ATTACK_104': 3.385,
+ 'GROW_CURVE_ATTACK_105': 3.027,
+ 'GROW_CURVE_CRITICAL_101': 2.373,
+ 'GROW_CURVE_ATTACK_201': 4.055,
+ 'GROW_CURVE_ATTACK_202': 4.387,
+ 'GROW_CURVE_ATTACK_203': 4.699,
+ 'GROW_CURVE_ATTACK_204': 3.702,
+ 'GROW_CURVE_ATTACK_205': 3.325,
+ 'GROW_CURVE_CRITICAL_201': 2.373,
+ 'GROW_CURVE_ATTACK_301': 4.261,
+ 'GROW_CURVE_ATTACK_302': 4.62,
+ 'GROW_CURVE_ATTACK_303': 4.956,
+ 'GROW_CURVE_ATTACK_304': 3.876,
+ 'GROW_CURVE_ATTACK_305': 3.462,
+ 'GROW_CURVE_CRITICAL_301': 2.373,
+ }
+ },
+ '39': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.794,
+ 'GROW_CURVE_ATTACK_102': 4.124,
+ 'GROW_CURVE_ATTACK_103': 4.435,
+ 'GROW_CURVE_ATTACK_104': 3.445,
+ 'GROW_CURVE_ATTACK_105': 3.074,
+ 'GROW_CURVE_CRITICAL_101': 2.373,
+ 'GROW_CURVE_ATTACK_201': 4.138,
+ 'GROW_CURVE_ATTACK_202': 4.481,
+ 'GROW_CURVE_ATTACK_203': 4.803,
+ 'GROW_CURVE_ATTACK_204': 3.772,
+ 'GROW_CURVE_ATTACK_205': 3.382,
+ 'GROW_CURVE_CRITICAL_201': 2.373,
+ 'GROW_CURVE_ATTACK_301': 4.352,
+ 'GROW_CURVE_ATTACK_302': 4.723,
+ 'GROW_CURVE_ATTACK_303': 5.071,
+ 'GROW_CURVE_ATTACK_304': 3.953,
+ 'GROW_CURVE_ATTACK_305': 3.525,
+ 'GROW_CURVE_CRITICAL_301': 2.373,
+ }
+ },
+ '40': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.866,
+ 'GROW_CURVE_ATTACK_102': 4.206,
+ 'GROW_CURVE_ATTACK_103': 4.528,
+ 'GROW_CURVE_ATTACK_104': 3.504,
+ 'GROW_CURVE_ATTACK_105': 3.121,
+ 'GROW_CURVE_CRITICAL_101': 2.575,
+ 'GROW_CURVE_ATTACK_201': 4.22,
+ 'GROW_CURVE_ATTACK_202': 4.575,
+ 'GROW_CURVE_ATTACK_203': 4.909,
+ 'GROW_CURVE_ATTACK_204': 3.842,
+ 'GROW_CURVE_ATTACK_205': 3.439,
+ 'GROW_CURVE_CRITICAL_201': 2.575,
+ 'GROW_CURVE_ATTACK_301': 4.443,
+ 'GROW_CURVE_ATTACK_302': 4.827,
+ 'GROW_CURVE_ATTACK_303': 5.186,
+ 'GROW_CURVE_ATTACK_304': 4.031,
+ 'GROW_CURVE_ATTACK_305': 3.588,
+ 'GROW_CURVE_CRITICAL_301': 2.575,
+ }
+ },
+ '41': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 3.937,
+ 'GROW_CURVE_ATTACK_102': 4.289,
+ 'GROW_CURVE_ATTACK_103': 4.621,
+ 'GROW_CURVE_ATTACK_104': 3.564,
+ 'GROW_CURVE_ATTACK_105': 3.167,
+ 'GROW_CURVE_CRITICAL_101': 2.575,
+ 'GROW_CURVE_ATTACK_201': 4.303,
+ 'GROW_CURVE_ATTACK_202': 4.669,
+ 'GROW_CURVE_ATTACK_203': 5.014,
+ 'GROW_CURVE_ATTACK_204': 3.913,
+ 'GROW_CURVE_ATTACK_205': 3.496,
+ 'GROW_CURVE_CRITICAL_201': 2.575,
+ 'GROW_CURVE_ATTACK_301': 4.534,
+ 'GROW_CURVE_ATTACK_302': 4.931,
+ 'GROW_CURVE_ATTACK_303': 5.301,
+ 'GROW_CURVE_ATTACK_304': 4.109,
+ 'GROW_CURVE_ATTACK_305': 3.651,
+ 'GROW_CURVE_CRITICAL_301': 2.575,
+ }
+ },
+ '42': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.008,
+ 'GROW_CURVE_ATTACK_102': 4.371,
+ 'GROW_CURVE_ATTACK_103': 4.714,
+ 'GROW_CURVE_ATTACK_104': 3.623,
+ 'GROW_CURVE_ATTACK_105': 3.214,
+ 'GROW_CURVE_CRITICAL_101': 2.575,
+ 'GROW_CURVE_ATTACK_201': 4.385,
+ 'GROW_CURVE_ATTACK_202': 4.763,
+ 'GROW_CURVE_ATTACK_203': 5.119,
+ 'GROW_CURVE_ATTACK_204': 3.983,
+ 'GROW_CURVE_ATTACK_205': 3.553,
+ 'GROW_CURVE_CRITICAL_201': 2.575,
+ 'GROW_CURVE_ATTACK_301': 4.625,
+ 'GROW_CURVE_ATTACK_302': 5.035,
+ 'GROW_CURVE_ATTACK_303': 5.417,
+ 'GROW_CURVE_ATTACK_304': 4.186,
+ 'GROW_CURVE_ATTACK_305': 3.714,
+ 'GROW_CURVE_CRITICAL_301': 2.575,
+ }
+ },
+ '43': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.079,
+ 'GROW_CURVE_ATTACK_102': 4.454,
+ 'GROW_CURVE_ATTACK_103': 4.808,
+ 'GROW_CURVE_ATTACK_104': 3.682,
+ 'GROW_CURVE_ATTACK_105': 3.26,
+ 'GROW_CURVE_CRITICAL_101': 2.575,
+ 'GROW_CURVE_ATTACK_201': 4.468,
+ 'GROW_CURVE_ATTACK_202': 4.858,
+ 'GROW_CURVE_ATTACK_203': 5.225,
+ 'GROW_CURVE_ATTACK_204': 4.053,
+ 'GROW_CURVE_ATTACK_205': 3.609,
+ 'GROW_CURVE_CRITICAL_201': 2.575,
+ 'GROW_CURVE_ATTACK_301': 4.717,
+ 'GROW_CURVE_ATTACK_302': 5.139,
+ 'GROW_CURVE_ATTACK_303': 5.533,
+ 'GROW_CURVE_ATTACK_304': 4.264,
+ 'GROW_CURVE_ATTACK_305': 3.777,
+ 'GROW_CURVE_CRITICAL_301': 2.575,
+ }
+ },
+ '44': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.15,
+ 'GROW_CURVE_ATTACK_102': 4.536,
+ 'GROW_CURVE_ATTACK_103': 4.901,
+ 'GROW_CURVE_ATTACK_104': 3.741,
+ 'GROW_CURVE_ATTACK_105': 3.306,
+ 'GROW_CURVE_CRITICAL_101': 2.575,
+ 'GROW_CURVE_ATTACK_201': 4.55,
+ 'GROW_CURVE_ATTACK_202': 4.952,
+ 'GROW_CURVE_ATTACK_203': 5.33,
+ 'GROW_CURVE_ATTACK_204': 4.122,
+ 'GROW_CURVE_ATTACK_205': 3.666,
+ 'GROW_CURVE_CRITICAL_201': 2.575,
+ 'GROW_CURVE_ATTACK_301': 4.808,
+ 'GROW_CURVE_ATTACK_302': 5.243,
+ 'GROW_CURVE_ATTACK_303': 5.65,
+ 'GROW_CURVE_ATTACK_304': 4.342,
+ 'GROW_CURVE_ATTACK_305': 3.84,
+ 'GROW_CURVE_CRITICAL_301': 2.575,
+ }
+ },
+ '45': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.221,
+ 'GROW_CURVE_ATTACK_102': 4.618,
+ 'GROW_CURVE_ATTACK_103': 4.994,
+ 'GROW_CURVE_ATTACK_104': 3.799,
+ 'GROW_CURVE_ATTACK_105': 3.351,
+ 'GROW_CURVE_CRITICAL_101': 2.777,
+ 'GROW_CURVE_ATTACK_201': 4.633,
+ 'GROW_CURVE_ATTACK_202': 5.047,
+ 'GROW_CURVE_ATTACK_203': 5.436,
+ 'GROW_CURVE_ATTACK_204': 4.192,
+ 'GROW_CURVE_ATTACK_205': 3.722,
+ 'GROW_CURVE_CRITICAL_201': 2.777,
+ 'GROW_CURVE_ATTACK_301': 4.9,
+ 'GROW_CURVE_ATTACK_302': 5.348,
+ 'GROW_CURVE_ATTACK_303': 5.767,
+ 'GROW_CURVE_ATTACK_304': 4.419,
+ 'GROW_CURVE_ATTACK_305': 3.903,
+ 'GROW_CURVE_CRITICAL_301': 2.777,
+ }
+ },
+ '46': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.291,
+ 'GROW_CURVE_ATTACK_102': 4.701,
+ 'GROW_CURVE_ATTACK_103': 5.087,
+ 'GROW_CURVE_ATTACK_104': 3.858,
+ 'GROW_CURVE_ATTACK_105': 3.397,
+ 'GROW_CURVE_CRITICAL_101': 2.777,
+ 'GROW_CURVE_ATTACK_201': 4.716,
+ 'GROW_CURVE_ATTACK_202': 5.142,
+ 'GROW_CURVE_ATTACK_203': 5.542,
+ 'GROW_CURVE_ATTACK_204': 4.262,
+ 'GROW_CURVE_ATTACK_205': 3.778,
+ 'GROW_CURVE_CRITICAL_201': 2.777,
+ 'GROW_CURVE_ATTACK_301': 4.992,
+ 'GROW_CURVE_ATTACK_302': 5.453,
+ 'GROW_CURVE_ATTACK_303': 5.884,
+ 'GROW_CURVE_ATTACK_304': 4.497,
+ 'GROW_CURVE_ATTACK_305': 3.966,
+ 'GROW_CURVE_CRITICAL_301': 2.777,
+ }
+ },
+ '47': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.362,
+ 'GROW_CURVE_ATTACK_102': 4.783,
+ 'GROW_CURVE_ATTACK_103': 5.181,
+ 'GROW_CURVE_ATTACK_104': 3.916,
+ 'GROW_CURVE_ATTACK_105': 3.442,
+ 'GROW_CURVE_CRITICAL_101': 2.777,
+ 'GROW_CURVE_ATTACK_201': 4.798,
+ 'GROW_CURVE_ATTACK_202': 5.236,
+ 'GROW_CURVE_ATTACK_203': 5.648,
+ 'GROW_CURVE_ATTACK_204': 4.332,
+ 'GROW_CURVE_ATTACK_205': 3.834,
+ 'GROW_CURVE_CRITICAL_201': 2.777,
+ 'GROW_CURVE_ATTACK_301': 5.084,
+ 'GROW_CURVE_ATTACK_302': 5.558,
+ 'GROW_CURVE_ATTACK_303': 6.001,
+ 'GROW_CURVE_ATTACK_304': 4.575,
+ 'GROW_CURVE_ATTACK_305': 4.029,
+ 'GROW_CURVE_CRITICAL_301': 2.777,
+ }
+ },
+ '48': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.433,
+ 'GROW_CURVE_ATTACK_102': 4.865,
+ 'GROW_CURVE_ATTACK_103': 5.274,
+ 'GROW_CURVE_ATTACK_104': 3.974,
+ 'GROW_CURVE_ATTACK_105': 3.487,
+ 'GROW_CURVE_CRITICAL_101': 2.777,
+ 'GROW_CURVE_ATTACK_201': 4.881,
+ 'GROW_CURVE_ATTACK_202': 5.331,
+ 'GROW_CURVE_ATTACK_203': 5.755,
+ 'GROW_CURVE_ATTACK_204': 4.401,
+ 'GROW_CURVE_ATTACK_205': 3.889,
+ 'GROW_CURVE_CRITICAL_201': 2.777,
+ 'GROW_CURVE_ATTACK_301': 5.176,
+ 'GROW_CURVE_ATTACK_302': 5.663,
+ 'GROW_CURVE_ATTACK_303': 6.118,
+ 'GROW_CURVE_ATTACK_304': 4.653,
+ 'GROW_CURVE_ATTACK_305': 4.092,
+ 'GROW_CURVE_CRITICAL_301': 2.777,
+ }
+ },
+ '49': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.503,
+ 'GROW_CURVE_ATTACK_102': 4.948,
+ 'GROW_CURVE_ATTACK_103': 5.367,
+ 'GROW_CURVE_ATTACK_104': 4.032,
+ 'GROW_CURVE_ATTACK_105': 3.532,
+ 'GROW_CURVE_CRITICAL_101': 2.777,
+ 'GROW_CURVE_ATTACK_201': 4.963,
+ 'GROW_CURVE_ATTACK_202': 5.426,
+ 'GROW_CURVE_ATTACK_203': 5.861,
+ 'GROW_CURVE_ATTACK_204': 4.471,
+ 'GROW_CURVE_ATTACK_205': 3.945,
+ 'GROW_CURVE_CRITICAL_201': 2.777,
+ 'GROW_CURVE_ATTACK_301': 5.268,
+ 'GROW_CURVE_ATTACK_302': 5.768,
+ 'GROW_CURVE_ATTACK_303': 6.236,
+ 'GROW_CURVE_ATTACK_304': 4.731,
+ 'GROW_CURVE_ATTACK_305': 4.155,
+ 'GROW_CURVE_CRITICAL_301': 2.777,
+ }
+ },
+ '50': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.574,
+ 'GROW_CURVE_ATTACK_102': 5.03,
+ 'GROW_CURVE_ATTACK_103': 5.461,
+ 'GROW_CURVE_ATTACK_104': 4.09,
+ 'GROW_CURVE_ATTACK_105': 3.576,
+ 'GROW_CURVE_CRITICAL_101': 2.979,
+ 'GROW_CURVE_ATTACK_201': 5.046,
+ 'GROW_CURVE_ATTACK_202': 5.521,
+ 'GROW_CURVE_ATTACK_203': 5.968,
+ 'GROW_CURVE_ATTACK_204': 4.54,
+ 'GROW_CURVE_ATTACK_205': 4,
+ 'GROW_CURVE_CRITICAL_201': 2.979,
+ 'GROW_CURVE_ATTACK_301': 5.36,
+ 'GROW_CURVE_ATTACK_302': 5.874,
+ 'GROW_CURVE_ATTACK_303': 6.354,
+ 'GROW_CURVE_ATTACK_304': 4.81,
+ 'GROW_CURVE_ATTACK_305': 4.217,
+ 'GROW_CURVE_CRITICAL_301': 2.979,
+ }
+ },
+ '51': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.644,
+ 'GROW_CURVE_ATTACK_102': 5.112,
+ 'GROW_CURVE_ATTACK_103': 5.554,
+ 'GROW_CURVE_ATTACK_104': 4.148,
+ 'GROW_CURVE_ATTACK_105': 3.62,
+ 'GROW_CURVE_CRITICAL_101': 2.979,
+ 'GROW_CURVE_ATTACK_201': 5.128,
+ 'GROW_CURVE_ATTACK_202': 5.616,
+ 'GROW_CURVE_ATTACK_203': 6.074,
+ 'GROW_CURVE_ATTACK_204': 4.609,
+ 'GROW_CURVE_ATTACK_205': 4.056,
+ 'GROW_CURVE_CRITICAL_201': 2.979,
+ 'GROW_CURVE_ATTACK_301': 5.453,
+ 'GROW_CURVE_ATTACK_302': 5.98,
+ 'GROW_CURVE_ATTACK_303': 6.473,
+ 'GROW_CURVE_ATTACK_304': 4.888,
+ 'GROW_CURVE_ATTACK_305': 4.28,
+ 'GROW_CURVE_CRITICAL_301': 2.979,
+ }
+ },
+ '52': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.714,
+ 'GROW_CURVE_ATTACK_102': 5.194,
+ 'GROW_CURVE_ATTACK_103': 5.648,
+ 'GROW_CURVE_ATTACK_104': 4.205,
+ 'GROW_CURVE_ATTACK_105': 3.665,
+ 'GROW_CURVE_CRITICAL_101': 2.979,
+ 'GROW_CURVE_ATTACK_201': 5.211,
+ 'GROW_CURVE_ATTACK_202': 5.711,
+ 'GROW_CURVE_ATTACK_203': 6.181,
+ 'GROW_CURVE_ATTACK_204': 4.679,
+ 'GROW_CURVE_ATTACK_205': 4.111,
+ 'GROW_CURVE_CRITICAL_201': 2.979,
+ 'GROW_CURVE_ATTACK_301': 5.546,
+ 'GROW_CURVE_ATTACK_302': 6.086,
+ 'GROW_CURVE_ATTACK_303': 6.592,
+ 'GROW_CURVE_ATTACK_304': 4.966,
+ 'GROW_CURVE_ATTACK_305': 4.343,
+ 'GROW_CURVE_CRITICAL_301': 2.979,
+ }
+ },
+ '53': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.784,
+ 'GROW_CURVE_ATTACK_102': 5.277,
+ 'GROW_CURVE_ATTACK_103': 5.742,
+ 'GROW_CURVE_ATTACK_104': 4.263,
+ 'GROW_CURVE_ATTACK_105': 3.708,
+ 'GROW_CURVE_CRITICAL_101': 2.979,
+ 'GROW_CURVE_ATTACK_201': 5.294,
+ 'GROW_CURVE_ATTACK_202': 5.806,
+ 'GROW_CURVE_ATTACK_203': 6.288,
+ 'GROW_CURVE_ATTACK_204': 4.748,
+ 'GROW_CURVE_ATTACK_205': 4.166,
+ 'GROW_CURVE_CRITICAL_201': 2.979,
+ 'GROW_CURVE_ATTACK_301': 5.638,
+ 'GROW_CURVE_ATTACK_302': 6.192,
+ 'GROW_CURVE_ATTACK_303': 6.71,
+ 'GROW_CURVE_ATTACK_304': 5.044,
+ 'GROW_CURVE_ATTACK_305': 4.406,
+ 'GROW_CURVE_CRITICAL_301': 2.979,
+ }
+ },
+ '54': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.855,
+ 'GROW_CURVE_ATTACK_102': 5.359,
+ 'GROW_CURVE_ATTACK_103': 5.835,
+ 'GROW_CURVE_ATTACK_104': 4.32,
+ 'GROW_CURVE_ATTACK_105': 3.752,
+ 'GROW_CURVE_CRITICAL_101': 2.979,
+ 'GROW_CURVE_ATTACK_201': 5.376,
+ 'GROW_CURVE_ATTACK_202': 5.901,
+ 'GROW_CURVE_ATTACK_203': 6.395,
+ 'GROW_CURVE_ATTACK_204': 4.817,
+ 'GROW_CURVE_ATTACK_205': 4.221,
+ 'GROW_CURVE_CRITICAL_201': 2.979,
+ 'GROW_CURVE_ATTACK_301': 5.731,
+ 'GROW_CURVE_ATTACK_302': 6.299,
+ 'GROW_CURVE_ATTACK_303': 6.83,
+ 'GROW_CURVE_ATTACK_304': 5.123,
+ 'GROW_CURVE_ATTACK_305': 4.469,
+ 'GROW_CURVE_CRITICAL_301': 2.979,
+ }
+ },
+ '55': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.925,
+ 'GROW_CURVE_ATTACK_102': 5.441,
+ 'GROW_CURVE_ATTACK_103': 5.929,
+ 'GROW_CURVE_ATTACK_104': 4.377,
+ 'GROW_CURVE_ATTACK_105': 3.796,
+ 'GROW_CURVE_CRITICAL_101': 3.181,
+ 'GROW_CURVE_ATTACK_201': 5.459,
+ 'GROW_CURVE_ATTACK_202': 5.996,
+ 'GROW_CURVE_ATTACK_203': 6.502,
+ 'GROW_CURVE_ATTACK_204': 4.886,
+ 'GROW_CURVE_ATTACK_205': 4.275,
+ 'GROW_CURVE_CRITICAL_201': 3.181,
+ 'GROW_CURVE_ATTACK_301': 5.825,
+ 'GROW_CURVE_ATTACK_302': 6.406,
+ 'GROW_CURVE_ATTACK_303': 6.949,
+ 'GROW_CURVE_ATTACK_304': 5.201,
+ 'GROW_CURVE_ATTACK_305': 4.532,
+ 'GROW_CURVE_CRITICAL_301': 3.181,
+ }
+ },
+ '56': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 4.995,
+ 'GROW_CURVE_ATTACK_102': 5.523,
+ 'GROW_CURVE_ATTACK_103': 6.023,
+ 'GROW_CURVE_ATTACK_104': 4.434,
+ 'GROW_CURVE_ATTACK_105': 3.839,
+ 'GROW_CURVE_CRITICAL_101': 3.181,
+ 'GROW_CURVE_ATTACK_201': 5.541,
+ 'GROW_CURVE_ATTACK_202': 6.092,
+ 'GROW_CURVE_ATTACK_203': 6.609,
+ 'GROW_CURVE_ATTACK_204': 4.955,
+ 'GROW_CURVE_ATTACK_205': 4.33,
+ 'GROW_CURVE_CRITICAL_201': 3.181,
+ 'GROW_CURVE_ATTACK_301': 5.918,
+ 'GROW_CURVE_ATTACK_302': 6.513,
+ 'GROW_CURVE_ATTACK_303': 7.069,
+ 'GROW_CURVE_ATTACK_304': 5.28,
+ 'GROW_CURVE_ATTACK_305': 4.594,
+ 'GROW_CURVE_CRITICAL_301': 3.181,
+ }
+ },
+ '57': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.065,
+ 'GROW_CURVE_ATTACK_102': 5.605,
+ 'GROW_CURVE_ATTACK_103': 6.116,
+ 'GROW_CURVE_ATTACK_104': 4.491,
+ 'GROW_CURVE_ATTACK_105': 3.882,
+ 'GROW_CURVE_CRITICAL_101': 3.181,
+ 'GROW_CURVE_ATTACK_201': 5.624,
+ 'GROW_CURVE_ATTACK_202': 6.187,
+ 'GROW_CURVE_ATTACK_203': 6.717,
+ 'GROW_CURVE_ATTACK_204': 5.024,
+ 'GROW_CURVE_ATTACK_205': 4.384,
+ 'GROW_CURVE_CRITICAL_201': 3.181,
+ 'GROW_CURVE_ATTACK_301': 6.011,
+ 'GROW_CURVE_ATTACK_302': 6.62,
+ 'GROW_CURVE_ATTACK_303': 7.189,
+ 'GROW_CURVE_ATTACK_304': 5.359,
+ 'GROW_CURVE_ATTACK_305': 4.657,
+ 'GROW_CURVE_CRITICAL_301': 3.181,
+ }
+ },
+ '58': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.134,
+ 'GROW_CURVE_ATTACK_102': 5.688,
+ 'GROW_CURVE_ATTACK_103': 6.21,
+ 'GROW_CURVE_ATTACK_104': 4.548,
+ 'GROW_CURVE_ATTACK_105': 3.925,
+ 'GROW_CURVE_CRITICAL_101': 3.181,
+ 'GROW_CURVE_ATTACK_201': 5.706,
+ 'GROW_CURVE_ATTACK_202': 6.282,
+ 'GROW_CURVE_ATTACK_203': 6.824,
+ 'GROW_CURVE_ATTACK_204': 5.093,
+ 'GROW_CURVE_ATTACK_205': 4.439,
+ 'GROW_CURVE_CRITICAL_201': 3.181,
+ 'GROW_CURVE_ATTACK_301': 6.105,
+ 'GROW_CURVE_ATTACK_302': 6.727,
+ 'GROW_CURVE_ATTACK_303': 7.309,
+ 'GROW_CURVE_ATTACK_304': 5.437,
+ 'GROW_CURVE_ATTACK_305': 4.72,
+ 'GROW_CURVE_CRITICAL_301': 3.181,
+ }
+ },
+ '59': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.204,
+ 'GROW_CURVE_ATTACK_102': 5.77,
+ 'GROW_CURVE_ATTACK_103': 6.304,
+ 'GROW_CURVE_ATTACK_104': 4.605,
+ 'GROW_CURVE_ATTACK_105': 3.968,
+ 'GROW_CURVE_CRITICAL_101': 3.181,
+ 'GROW_CURVE_ATTACK_201': 5.789,
+ 'GROW_CURVE_ATTACK_202': 6.378,
+ 'GROW_CURVE_ATTACK_203': 6.932,
+ 'GROW_CURVE_ATTACK_204': 5.162,
+ 'GROW_CURVE_ATTACK_205': 4.493,
+ 'GROW_CURVE_CRITICAL_201': 3.181,
+ 'GROW_CURVE_ATTACK_301': 6.198,
+ 'GROW_CURVE_ATTACK_302': 6.835,
+ 'GROW_CURVE_ATTACK_303': 7.429,
+ 'GROW_CURVE_ATTACK_304': 5.516,
+ 'GROW_CURVE_ATTACK_305': 4.783,
+ 'GROW_CURVE_CRITICAL_301': 3.181,
+ }
+ },
+ '60': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.274,
+ 'GROW_CURVE_ATTACK_102': 5.852,
+ 'GROW_CURVE_ATTACK_103': 6.398,
+ 'GROW_CURVE_ATTACK_104': 4.661,
+ 'GROW_CURVE_ATTACK_105': 4.01,
+ 'GROW_CURVE_CRITICAL_101': 3.383,
+ 'GROW_CURVE_ATTACK_201': 5.872,
+ 'GROW_CURVE_ATTACK_202': 6.473,
+ 'GROW_CURVE_ATTACK_203': 7.039,
+ 'GROW_CURVE_ATTACK_204': 5.231,
+ 'GROW_CURVE_ATTACK_205': 4.547,
+ 'GROW_CURVE_CRITICAL_201': 3.383,
+ 'GROW_CURVE_ATTACK_301': 6.292,
+ 'GROW_CURVE_ATTACK_302': 6.942,
+ 'GROW_CURVE_ATTACK_303': 7.55,
+ 'GROW_CURVE_ATTACK_304': 5.595,
+ 'GROW_CURVE_ATTACK_305': 4.846,
+ 'GROW_CURVE_CRITICAL_301': 3.383,
+ }
+ },
+ '61': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.344,
+ 'GROW_CURVE_ATTACK_102': 5.934,
+ 'GROW_CURVE_ATTACK_103': 6.492,
+ 'GROW_CURVE_ATTACK_104': 4.718,
+ 'GROW_CURVE_ATTACK_105': 4.053,
+ 'GROW_CURVE_CRITICAL_101': 3.383,
+ 'GROW_CURVE_ATTACK_201': 5.954,
+ 'GROW_CURVE_ATTACK_202': 6.569,
+ 'GROW_CURVE_ATTACK_203': 7.147,
+ 'GROW_CURVE_ATTACK_204': 5.3,
+ 'GROW_CURVE_ATTACK_205': 4.601,
+ 'GROW_CURVE_CRITICAL_201': 3.383,
+ 'GROW_CURVE_ATTACK_301': 6.386,
+ 'GROW_CURVE_ATTACK_302': 7.05,
+ 'GROW_CURVE_ATTACK_303': 7.671,
+ 'GROW_CURVE_ATTACK_304': 5.674,
+ 'GROW_CURVE_ATTACK_305': 4.909,
+ 'GROW_CURVE_CRITICAL_301': 3.383,
+ }
+ },
+ '62': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.413,
+ 'GROW_CURVE_ATTACK_102': 6.016,
+ 'GROW_CURVE_ATTACK_103': 6.586,
+ 'GROW_CURVE_ATTACK_104': 4.774,
+ 'GROW_CURVE_ATTACK_105': 4.095,
+ 'GROW_CURVE_CRITICAL_101': 3.383,
+ 'GROW_CURVE_ATTACK_201': 6.037,
+ 'GROW_CURVE_ATTACK_202': 6.664,
+ 'GROW_CURVE_ATTACK_203': 7.255,
+ 'GROW_CURVE_ATTACK_204': 5.368,
+ 'GROW_CURVE_ATTACK_205': 4.655,
+ 'GROW_CURVE_CRITICAL_201': 3.383,
+ 'GROW_CURVE_ATTACK_301': 6.48,
+ 'GROW_CURVE_ATTACK_302': 7.158,
+ 'GROW_CURVE_ATTACK_303': 7.792,
+ 'GROW_CURVE_ATTACK_304': 5.753,
+ 'GROW_CURVE_ATTACK_305': 4.972,
+ 'GROW_CURVE_CRITICAL_301': 3.383,
+ }
+ },
+ '63': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.483,
+ 'GROW_CURVE_ATTACK_102': 6.098,
+ 'GROW_CURVE_ATTACK_103': 6.68,
+ 'GROW_CURVE_ATTACK_104': 4.83,
+ 'GROW_CURVE_ATTACK_105': 4.137,
+ 'GROW_CURVE_CRITICAL_101': 3.383,
+ 'GROW_CURVE_ATTACK_201': 6.119,
+ 'GROW_CURVE_ATTACK_202': 6.76,
+ 'GROW_CURVE_ATTACK_203': 7.363,
+ 'GROW_CURVE_ATTACK_204': 5.437,
+ 'GROW_CURVE_ATTACK_205': 4.709,
+ 'GROW_CURVE_CRITICAL_201': 3.383,
+ 'GROW_CURVE_ATTACK_301': 6.575,
+ 'GROW_CURVE_ATTACK_302': 7.267,
+ 'GROW_CURVE_ATTACK_303': 7.913,
+ 'GROW_CURVE_ATTACK_304': 5.833,
+ 'GROW_CURVE_ATTACK_305': 5.035,
+ 'GROW_CURVE_CRITICAL_301': 3.383,
+ }
+ },
+ '64': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.552,
+ 'GROW_CURVE_ATTACK_102': 6.18,
+ 'GROW_CURVE_ATTACK_103': 6.774,
+ 'GROW_CURVE_ATTACK_104': 4.887,
+ 'GROW_CURVE_ATTACK_105': 4.179,
+ 'GROW_CURVE_CRITICAL_101': 3.383,
+ 'GROW_CURVE_ATTACK_201': 6.202,
+ 'GROW_CURVE_ATTACK_202': 6.856,
+ 'GROW_CURVE_ATTACK_203': 7.471,
+ 'GROW_CURVE_ATTACK_204': 5.506,
+ 'GROW_CURVE_ATTACK_205': 4.763,
+ 'GROW_CURVE_CRITICAL_201': 3.383,
+ 'GROW_CURVE_ATTACK_301': 6.669,
+ 'GROW_CURVE_ATTACK_302': 7.375,
+ 'GROW_CURVE_ATTACK_303': 8.035,
+ 'GROW_CURVE_ATTACK_304': 5.912,
+ 'GROW_CURVE_ATTACK_305': 5.098,
+ 'GROW_CURVE_CRITICAL_301': 3.383,
+ }
+ },
+ '65': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.622,
+ 'GROW_CURVE_ATTACK_102': 6.262,
+ 'GROW_CURVE_ATTACK_103': 6.868,
+ 'GROW_CURVE_ATTACK_104': 4.943,
+ 'GROW_CURVE_ATTACK_105': 4.221,
+ 'GROW_CURVE_CRITICAL_101': 3.585,
+ 'GROW_CURVE_ATTACK_201': 6.284,
+ 'GROW_CURVE_ATTACK_202': 6.951,
+ 'GROW_CURVE_ATTACK_203': 7.579,
+ 'GROW_CURVE_ATTACK_204': 5.574,
+ 'GROW_CURVE_ATTACK_205': 4.816,
+ 'GROW_CURVE_CRITICAL_201': 3.585,
+ 'GROW_CURVE_ATTACK_301': 6.763,
+ 'GROW_CURVE_ATTACK_302': 7.484,
+ 'GROW_CURVE_ATTACK_303': 8.157,
+ 'GROW_CURVE_ATTACK_304': 5.991,
+ 'GROW_CURVE_ATTACK_305': 5.161,
+ 'GROW_CURVE_CRITICAL_301': 3.585,
+ }
+ },
+ '66': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.691,
+ 'GROW_CURVE_ATTACK_102': 6.344,
+ 'GROW_CURVE_ATTACK_103': 6.962,
+ 'GROW_CURVE_ATTACK_104': 4.999,
+ 'GROW_CURVE_ATTACK_105': 4.263,
+ 'GROW_CURVE_CRITICAL_101': 3.585,
+ 'GROW_CURVE_ATTACK_201': 6.367,
+ 'GROW_CURVE_ATTACK_202': 7.047,
+ 'GROW_CURVE_ATTACK_203': 7.687,
+ 'GROW_CURVE_ATTACK_204': 5.643,
+ 'GROW_CURVE_ATTACK_205': 4.87,
+ 'GROW_CURVE_CRITICAL_201': 3.585,
+ 'GROW_CURVE_ATTACK_301': 6.858,
+ 'GROW_CURVE_ATTACK_302': 7.592,
+ 'GROW_CURVE_ATTACK_303': 8.279,
+ 'GROW_CURVE_ATTACK_304': 6.071,
+ 'GROW_CURVE_ATTACK_305': 5.225,
+ 'GROW_CURVE_CRITICAL_301': 3.585,
+ }
+ },
+ '67': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.761,
+ 'GROW_CURVE_ATTACK_102': 6.427,
+ 'GROW_CURVE_ATTACK_103': 7.056,
+ 'GROW_CURVE_ATTACK_104': 5.054,
+ 'GROW_CURVE_ATTACK_105': 4.304,
+ 'GROW_CURVE_CRITICAL_101': 3.585,
+ 'GROW_CURVE_ATTACK_201': 6.45,
+ 'GROW_CURVE_ATTACK_202': 7.143,
+ 'GROW_CURVE_ATTACK_203': 7.795,
+ 'GROW_CURVE_ATTACK_204': 5.711,
+ 'GROW_CURVE_ATTACK_205': 4.923,
+ 'GROW_CURVE_CRITICAL_201': 3.585,
+ 'GROW_CURVE_ATTACK_301': 6.953,
+ 'GROW_CURVE_ATTACK_302': 7.701,
+ 'GROW_CURVE_ATTACK_303': 8.401,
+ 'GROW_CURVE_ATTACK_304': 6.15,
+ 'GROW_CURVE_ATTACK_305': 5.288,
+ 'GROW_CURVE_CRITICAL_301': 3.585,
+ }
+ },
+ '68': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.83,
+ 'GROW_CURVE_ATTACK_102': 6.509,
+ 'GROW_CURVE_ATTACK_103': 7.15,
+ 'GROW_CURVE_ATTACK_104': 5.11,
+ 'GROW_CURVE_ATTACK_105': 4.346,
+ 'GROW_CURVE_CRITICAL_101': 3.585,
+ 'GROW_CURVE_ATTACK_201': 6.532,
+ 'GROW_CURVE_ATTACK_202': 7.239,
+ 'GROW_CURVE_ATTACK_203': 7.904,
+ 'GROW_CURVE_ATTACK_204': 5.78,
+ 'GROW_CURVE_ATTACK_205': 4.977,
+ 'GROW_CURVE_CRITICAL_201': 3.585,
+ 'GROW_CURVE_ATTACK_301': 7.048,
+ 'GROW_CURVE_ATTACK_302': 7.811,
+ 'GROW_CURVE_ATTACK_303': 8.524,
+ 'GROW_CURVE_ATTACK_304': 6.23,
+ 'GROW_CURVE_ATTACK_305': 5.351,
+ 'GROW_CURVE_CRITICAL_301': 3.585,
+ }
+ },
+ '69': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.899,
+ 'GROW_CURVE_ATTACK_102': 6.591,
+ 'GROW_CURVE_ATTACK_103': 7.244,
+ 'GROW_CURVE_ATTACK_104': 5.166,
+ 'GROW_CURVE_ATTACK_105': 4.387,
+ 'GROW_CURVE_CRITICAL_101': 3.585,
+ 'GROW_CURVE_ATTACK_201': 6.615,
+ 'GROW_CURVE_ATTACK_202': 7.335,
+ 'GROW_CURVE_ATTACK_203': 8.012,
+ 'GROW_CURVE_ATTACK_204': 5.848,
+ 'GROW_CURVE_ATTACK_205': 5.03,
+ 'GROW_CURVE_CRITICAL_201': 3.585,
+ 'GROW_CURVE_ATTACK_301': 7.143,
+ 'GROW_CURVE_ATTACK_302': 7.92,
+ 'GROW_CURVE_ATTACK_303': 8.646,
+ 'GROW_CURVE_ATTACK_304': 6.31,
+ 'GROW_CURVE_ATTACK_305': 5.414,
+ 'GROW_CURVE_CRITICAL_301': 3.585,
+ }
+ },
+ '70': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 5.968,
+ 'GROW_CURVE_ATTACK_102': 6.673,
+ 'GROW_CURVE_ATTACK_103': 7.338,
+ 'GROW_CURVE_ATTACK_104': 5.222,
+ 'GROW_CURVE_ATTACK_105': 4.428,
+ 'GROW_CURVE_CRITICAL_101': 3.786,
+ 'GROW_CURVE_ATTACK_201': 6.697,
+ 'GROW_CURVE_ATTACK_202': 7.431,
+ 'GROW_CURVE_ATTACK_203': 8.12,
+ 'GROW_CURVE_ATTACK_204': 5.916,
+ 'GROW_CURVE_ATTACK_205': 5.083,
+ 'GROW_CURVE_CRITICAL_201': 3.786,
+ 'GROW_CURVE_ATTACK_301': 7.238,
+ 'GROW_CURVE_ATTACK_302': 8.03,
+ 'GROW_CURVE_ATTACK_303': 8.769,
+ 'GROW_CURVE_ATTACK_304': 6.39,
+ 'GROW_CURVE_ATTACK_305': 5.478,
+ 'GROW_CURVE_CRITICAL_301': 3.786,
+ }
+ },
+ '71': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.038,
+ 'GROW_CURVE_ATTACK_102': 6.755,
+ 'GROW_CURVE_ATTACK_103': 7.432,
+ 'GROW_CURVE_ATTACK_104': 5.277,
+ 'GROW_CURVE_ATTACK_105': 4.469,
+ 'GROW_CURVE_CRITICAL_101': 3.786,
+ 'GROW_CURVE_ATTACK_201': 6.78,
+ 'GROW_CURVE_ATTACK_202': 7.527,
+ 'GROW_CURVE_ATTACK_203': 8.229,
+ 'GROW_CURVE_ATTACK_204': 5.985,
+ 'GROW_CURVE_ATTACK_205': 5.136,
+ 'GROW_CURVE_CRITICAL_201': 3.786,
+ 'GROW_CURVE_ATTACK_301': 7.334,
+ 'GROW_CURVE_ATTACK_302': 8.139,
+ 'GROW_CURVE_ATTACK_303': 8.893,
+ 'GROW_CURVE_ATTACK_304': 6.47,
+ 'GROW_CURVE_ATTACK_305': 5.541,
+ 'GROW_CURVE_CRITICAL_301': 3.786,
+ }
+ },
+ '72': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.107,
+ 'GROW_CURVE_ATTACK_102': 6.837,
+ 'GROW_CURVE_ATTACK_103': 7.527,
+ 'GROW_CURVE_ATTACK_104': 5.333,
+ 'GROW_CURVE_ATTACK_105': 4.51,
+ 'GROW_CURVE_CRITICAL_101': 3.786,
+ 'GROW_CURVE_ATTACK_201': 6.862,
+ 'GROW_CURVE_ATTACK_202': 7.623,
+ 'GROW_CURVE_ATTACK_203': 8.338,
+ 'GROW_CURVE_ATTACK_204': 6.053,
+ 'GROW_CURVE_ATTACK_205': 5.189,
+ 'GROW_CURVE_CRITICAL_201': 3.786,
+ 'GROW_CURVE_ATTACK_301': 7.429,
+ 'GROW_CURVE_ATTACK_302': 8.249,
+ 'GROW_CURVE_ATTACK_303': 9.016,
+ 'GROW_CURVE_ATTACK_304': 6.55,
+ 'GROW_CURVE_ATTACK_305': 5.605,
+ 'GROW_CURVE_CRITICAL_301': 3.786,
+ }
+ },
+ '73': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.176,
+ 'GROW_CURVE_ATTACK_102': 6.919,
+ 'GROW_CURVE_ATTACK_103': 7.621,
+ 'GROW_CURVE_ATTACK_104': 5.388,
+ 'GROW_CURVE_ATTACK_105': 4.551,
+ 'GROW_CURVE_CRITICAL_101': 3.786,
+ 'GROW_CURVE_ATTACK_201': 6.945,
+ 'GROW_CURVE_ATTACK_202': 7.719,
+ 'GROW_CURVE_ATTACK_203': 8.446,
+ 'GROW_CURVE_ATTACK_204': 6.121,
+ 'GROW_CURVE_ATTACK_205': 5.242,
+ 'GROW_CURVE_CRITICAL_201': 3.786,
+ 'GROW_CURVE_ATTACK_301': 7.525,
+ 'GROW_CURVE_ATTACK_302': 8.359,
+ 'GROW_CURVE_ATTACK_303': 9.14,
+ 'GROW_CURVE_ATTACK_304': 6.63,
+ 'GROW_CURVE_ATTACK_305': 5.668,
+ 'GROW_CURVE_CRITICAL_301': 3.786,
+ }
+ },
+ '74': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.245,
+ 'GROW_CURVE_ATTACK_102': 7.001,
+ 'GROW_CURVE_ATTACK_103': 7.715,
+ 'GROW_CURVE_ATTACK_104': 5.443,
+ 'GROW_CURVE_ATTACK_105': 4.592,
+ 'GROW_CURVE_CRITICAL_101': 3.786,
+ 'GROW_CURVE_ATTACK_201': 7.028,
+ 'GROW_CURVE_ATTACK_202': 7.815,
+ 'GROW_CURVE_ATTACK_203': 8.555,
+ 'GROW_CURVE_ATTACK_204': 6.189,
+ 'GROW_CURVE_ATTACK_205': 5.295,
+ 'GROW_CURVE_CRITICAL_201': 3.786,
+ 'GROW_CURVE_ATTACK_301': 7.621,
+ 'GROW_CURVE_ATTACK_302': 8.47,
+ 'GROW_CURVE_ATTACK_303': 9.263,
+ 'GROW_CURVE_ATTACK_304': 6.71,
+ 'GROW_CURVE_ATTACK_305': 5.732,
+ 'GROW_CURVE_CRITICAL_301': 3.786,
+ }
+ },
+ '75': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.314,
+ 'GROW_CURVE_ATTACK_102': 7.083,
+ 'GROW_CURVE_ATTACK_103': 7.81,
+ 'GROW_CURVE_ATTACK_104': 5.498,
+ 'GROW_CURVE_ATTACK_105': 4.632,
+ 'GROW_CURVE_CRITICAL_101': 3.988,
+ 'GROW_CURVE_ATTACK_201': 7.11,
+ 'GROW_CURVE_ATTACK_202': 7.911,
+ 'GROW_CURVE_ATTACK_203': 8.664,
+ 'GROW_CURVE_ATTACK_204': 6.257,
+ 'GROW_CURVE_ATTACK_205': 5.347,
+ 'GROW_CURVE_CRITICAL_201': 3.988,
+ 'GROW_CURVE_ATTACK_301': 7.717,
+ 'GROW_CURVE_ATTACK_302': 8.58,
+ 'GROW_CURVE_ATTACK_303': 9.387,
+ 'GROW_CURVE_ATTACK_304': 6.791,
+ 'GROW_CURVE_ATTACK_305': 5.796,
+ 'GROW_CURVE_CRITICAL_301': 3.988,
+ }
+ },
+ '76': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.383,
+ 'GROW_CURVE_ATTACK_102': 7.165,
+ 'GROW_CURVE_ATTACK_103': 7.904,
+ 'GROW_CURVE_ATTACK_104': 5.554,
+ 'GROW_CURVE_ATTACK_105': 4.673,
+ 'GROW_CURVE_CRITICAL_101': 3.988,
+ 'GROW_CURVE_ATTACK_201': 7.193,
+ 'GROW_CURVE_ATTACK_202': 8.007,
+ 'GROW_CURVE_ATTACK_203': 8.773,
+ 'GROW_CURVE_ATTACK_204': 6.326,
+ 'GROW_CURVE_ATTACK_205': 5.4,
+ 'GROW_CURVE_CRITICAL_201': 3.988,
+ 'GROW_CURVE_ATTACK_301': 7.813,
+ 'GROW_CURVE_ATTACK_302': 8.691,
+ 'GROW_CURVE_ATTACK_303': 9.512,
+ 'GROW_CURVE_ATTACK_304': 6.871,
+ 'GROW_CURVE_ATTACK_305': 5.859,
+ 'GROW_CURVE_CRITICAL_301': 3.988,
+ }
+ },
+ '77': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.452,
+ 'GROW_CURVE_ATTACK_102': 7.247,
+ 'GROW_CURVE_ATTACK_103': 7.998,
+ 'GROW_CURVE_ATTACK_104': 5.609,
+ 'GROW_CURVE_ATTACK_105': 4.713,
+ 'GROW_CURVE_CRITICAL_101': 3.988,
+ 'GROW_CURVE_ATTACK_201': 7.275,
+ 'GROW_CURVE_ATTACK_202': 8.103,
+ 'GROW_CURVE_ATTACK_203': 8.882,
+ 'GROW_CURVE_ATTACK_204': 6.394,
+ 'GROW_CURVE_ATTACK_205': 5.453,
+ 'GROW_CURVE_CRITICAL_201': 3.988,
+ 'GROW_CURVE_ATTACK_301': 7.909,
+ 'GROW_CURVE_ATTACK_302': 8.802,
+ 'GROW_CURVE_ATTACK_303': 9.636,
+ 'GROW_CURVE_ATTACK_304': 6.952,
+ 'GROW_CURVE_ATTACK_305': 5.923,
+ 'GROW_CURVE_CRITICAL_301': 3.988,
+ }
+ },
+ '78': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.521,
+ 'GROW_CURVE_ATTACK_102': 7.329,
+ 'GROW_CURVE_ATTACK_103': 8.093,
+ 'GROW_CURVE_ATTACK_104': 5.664,
+ 'GROW_CURVE_ATTACK_105': 4.753,
+ 'GROW_CURVE_CRITICAL_101': 3.988,
+ 'GROW_CURVE_ATTACK_201': 7.358,
+ 'GROW_CURVE_ATTACK_202': 8.199,
+ 'GROW_CURVE_ATTACK_203': 8.991,
+ 'GROW_CURVE_ATTACK_204': 6.462,
+ 'GROW_CURVE_ATTACK_205': 5.505,
+ 'GROW_CURVE_CRITICAL_201': 3.988,
+ 'GROW_CURVE_ATTACK_301': 8.005,
+ 'GROW_CURVE_ATTACK_302': 8.913,
+ 'GROW_CURVE_ATTACK_303': 9.761,
+ 'GROW_CURVE_ATTACK_304': 7.033,
+ 'GROW_CURVE_ATTACK_305': 5.987,
+ 'GROW_CURVE_CRITICAL_301': 3.988,
+ }
+ },
+ '79': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.59,
+ 'GROW_CURVE_ATTACK_102': 7.411,
+ 'GROW_CURVE_ATTACK_103': 8.187,
+ 'GROW_CURVE_ATTACK_104': 5.719,
+ 'GROW_CURVE_ATTACK_105': 4.793,
+ 'GROW_CURVE_CRITICAL_101': 3.988,
+ 'GROW_CURVE_ATTACK_201': 7.44,
+ 'GROW_CURVE_ATTACK_202': 8.296,
+ 'GROW_CURVE_ATTACK_203': 9.1,
+ 'GROW_CURVE_ATTACK_204': 6.53,
+ 'GROW_CURVE_ATTACK_205': 5.558,
+ 'GROW_CURVE_CRITICAL_201': 3.988,
+ 'GROW_CURVE_ATTACK_301': 8.102,
+ 'GROW_CURVE_ATTACK_302': 9.024,
+ 'GROW_CURVE_ATTACK_303': 9.886,
+ 'GROW_CURVE_ATTACK_304': 7.113,
+ 'GROW_CURVE_ATTACK_305': 6.051,
+ 'GROW_CURVE_CRITICAL_301': 3.988,
+ }
+ },
+ '80': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.659,
+ 'GROW_CURVE_ATTACK_102': 7.493,
+ 'GROW_CURVE_ATTACK_103': 8.282,
+ 'GROW_CURVE_ATTACK_104': 5.774,
+ 'GROW_CURVE_ATTACK_105': 4.834,
+ 'GROW_CURVE_CRITICAL_101': 4.19,
+ 'GROW_CURVE_ATTACK_201': 7.523,
+ 'GROW_CURVE_ATTACK_202': 8.392,
+ 'GROW_CURVE_ATTACK_203': 9.209,
+ 'GROW_CURVE_ATTACK_204': 6.598,
+ 'GROW_CURVE_ATTACK_205': 5.61,
+ 'GROW_CURVE_CRITICAL_201': 4.19,
+ 'GROW_CURVE_ATTACK_301': 8.199,
+ 'GROW_CURVE_ATTACK_302': 9.135,
+ 'GROW_CURVE_ATTACK_303': 10.011,
+ 'GROW_CURVE_ATTACK_304': 7.194,
+ 'GROW_CURVE_ATTACK_305': 6.115,
+ 'GROW_CURVE_CRITICAL_301': 4.19,
+ }
+ },
+ '81': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.727,
+ 'GROW_CURVE_ATTACK_102': 7.575,
+ 'GROW_CURVE_ATTACK_103': 8.376,
+ 'GROW_CURVE_ATTACK_104': 5.828,
+ 'GROW_CURVE_ATTACK_105': 4.873,
+ 'GROW_CURVE_CRITICAL_101': 4.19,
+ 'GROW_CURVE_ATTACK_201': 7.606,
+ 'GROW_CURVE_ATTACK_202': 8.488,
+ 'GROW_CURVE_ATTACK_203': 9.319,
+ 'GROW_CURVE_ATTACK_204': 6.665,
+ 'GROW_CURVE_ATTACK_205': 5.662,
+ 'GROW_CURVE_CRITICAL_201': 4.19,
+ 'GROW_CURVE_ATTACK_301': 8.295,
+ 'GROW_CURVE_ATTACK_302': 9.247,
+ 'GROW_CURVE_ATTACK_303': 10.136,
+ 'GROW_CURVE_ATTACK_304': 7.275,
+ 'GROW_CURVE_ATTACK_305': 6.179,
+ 'GROW_CURVE_CRITICAL_301': 4.19,
+ }
+ },
+ '82': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.796,
+ 'GROW_CURVE_ATTACK_102': 7.657,
+ 'GROW_CURVE_ATTACK_103': 8.471,
+ 'GROW_CURVE_ATTACK_104': 5.883,
+ 'GROW_CURVE_ATTACK_105': 4.913,
+ 'GROW_CURVE_CRITICAL_101': 4.19,
+ 'GROW_CURVE_ATTACK_201': 7.688,
+ 'GROW_CURVE_ATTACK_202': 8.585,
+ 'GROW_CURVE_ATTACK_203': 9.428,
+ 'GROW_CURVE_ATTACK_204': 6.733,
+ 'GROW_CURVE_ATTACK_205': 5.715,
+ 'GROW_CURVE_CRITICAL_201': 4.19,
+ 'GROW_CURVE_ATTACK_301': 8.392,
+ 'GROW_CURVE_ATTACK_302': 9.358,
+ 'GROW_CURVE_ATTACK_303': 10.261,
+ 'GROW_CURVE_ATTACK_304': 7.357,
+ 'GROW_CURVE_ATTACK_305': 6.243,
+ 'GROW_CURVE_CRITICAL_301': 4.19,
+ }
+ },
+ '83': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.865,
+ 'GROW_CURVE_ATTACK_102': 7.739,
+ 'GROW_CURVE_ATTACK_103': 8.565,
+ 'GROW_CURVE_ATTACK_104': 5.938,
+ 'GROW_CURVE_ATTACK_105': 4.953,
+ 'GROW_CURVE_CRITICAL_101': 4.19,
+ 'GROW_CURVE_ATTACK_201': 7.771,
+ 'GROW_CURVE_ATTACK_202': 8.681,
+ 'GROW_CURVE_ATTACK_203': 9.537,
+ 'GROW_CURVE_ATTACK_204': 6.801,
+ 'GROW_CURVE_ATTACK_205': 5.767,
+ 'GROW_CURVE_CRITICAL_201': 4.19,
+ 'GROW_CURVE_ATTACK_301': 8.489,
+ 'GROW_CURVE_ATTACK_302': 9.47,
+ 'GROW_CURVE_ATTACK_303': 10.387,
+ 'GROW_CURVE_ATTACK_304': 7.438,
+ 'GROW_CURVE_ATTACK_305': 6.308,
+ 'GROW_CURVE_CRITICAL_301': 4.19,
+ }
+ },
+ '84': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 6.934,
+ 'GROW_CURVE_ATTACK_102': 7.821,
+ 'GROW_CURVE_ATTACK_103': 8.66,
+ 'GROW_CURVE_ATTACK_104': 5.993,
+ 'GROW_CURVE_ATTACK_105': 4.993,
+ 'GROW_CURVE_CRITICAL_101': 4.19,
+ 'GROW_CURVE_ATTACK_201': 7.853,
+ 'GROW_CURVE_ATTACK_202': 8.777,
+ 'GROW_CURVE_ATTACK_203': 9.647,
+ 'GROW_CURVE_ATTACK_204': 6.869,
+ 'GROW_CURVE_ATTACK_205': 5.819,
+ 'GROW_CURVE_CRITICAL_201': 4.19,
+ 'GROW_CURVE_ATTACK_301': 8.587,
+ 'GROW_CURVE_ATTACK_302': 9.582,
+ 'GROW_CURVE_ATTACK_303': 10.513,
+ 'GROW_CURVE_ATTACK_304': 7.519,
+ 'GROW_CURVE_ATTACK_305': 6.372,
+ 'GROW_CURVE_CRITICAL_301': 4.19,
+ }
+ },
+ '85': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.003,
+ 'GROW_CURVE_ATTACK_102': 7.904,
+ 'GROW_CURVE_ATTACK_103': 8.755,
+ 'GROW_CURVE_ATTACK_104': 6.047,
+ 'GROW_CURVE_ATTACK_105': 5.032,
+ 'GROW_CURVE_CRITICAL_101': 4.392,
+ 'GROW_CURVE_ATTACK_201': 7.936,
+ 'GROW_CURVE_ATTACK_202': 8.874,
+ 'GROW_CURVE_ATTACK_203': 9.756,
+ 'GROW_CURVE_ATTACK_204': 6.937,
+ 'GROW_CURVE_ATTACK_205': 5.871,
+ 'GROW_CURVE_CRITICAL_201': 4.392,
+ 'GROW_CURVE_ATTACK_301': 8.684,
+ 'GROW_CURVE_ATTACK_302': 9.694,
+ 'GROW_CURVE_ATTACK_303': 10.639,
+ 'GROW_CURVE_ATTACK_304': 7.601,
+ 'GROW_CURVE_ATTACK_305': 6.436,
+ 'GROW_CURVE_CRITICAL_301': 4.392,
+ }
+ },
+ '86': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.071,
+ 'GROW_CURVE_ATTACK_102': 7.986,
+ 'GROW_CURVE_ATTACK_103': 8.849,
+ 'GROW_CURVE_ATTACK_104': 6.102,
+ 'GROW_CURVE_ATTACK_105': 5.072,
+ 'GROW_CURVE_CRITICAL_101': 4.392,
+ 'GROW_CURVE_ATTACK_201': 8.018,
+ 'GROW_CURVE_ATTACK_202': 8.97,
+ 'GROW_CURVE_ATTACK_203': 9.866,
+ 'GROW_CURVE_ATTACK_204': 7.005,
+ 'GROW_CURVE_ATTACK_205': 5.923,
+ 'GROW_CURVE_CRITICAL_201': 4.392,
+ 'GROW_CURVE_ATTACK_301': 8.782,
+ 'GROW_CURVE_ATTACK_302': 9.807,
+ 'GROW_CURVE_ATTACK_303': 10.765,
+ 'GROW_CURVE_ATTACK_304': 7.682,
+ 'GROW_CURVE_ATTACK_305': 6.501,
+ 'GROW_CURVE_CRITICAL_301': 4.392,
+ }
+ },
+ '87': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.14,
+ 'GROW_CURVE_ATTACK_102': 8.068,
+ 'GROW_CURVE_ATTACK_103': 8.944,
+ 'GROW_CURVE_ATTACK_104': 6.156,
+ 'GROW_CURVE_ATTACK_105': 5.111,
+ 'GROW_CURVE_CRITICAL_101': 4.392,
+ 'GROW_CURVE_ATTACK_201': 8.101,
+ 'GROW_CURVE_ATTACK_202': 9.067,
+ 'GROW_CURVE_ATTACK_203': 9.975,
+ 'GROW_CURVE_ATTACK_204': 7.072,
+ 'GROW_CURVE_ATTACK_205': 5.975,
+ 'GROW_CURVE_CRITICAL_201': 4.392,
+ 'GROW_CURVE_ATTACK_301': 8.879,
+ 'GROW_CURVE_ATTACK_302': 9.919,
+ 'GROW_CURVE_ATTACK_303': 10.892,
+ 'GROW_CURVE_ATTACK_304': 7.764,
+ 'GROW_CURVE_ATTACK_305': 6.565,
+ 'GROW_CURVE_CRITICAL_301': 4.392,
+ }
+ },
+ '88': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.209,
+ 'GROW_CURVE_ATTACK_102': 8.15,
+ 'GROW_CURVE_ATTACK_103': 9.039,
+ 'GROW_CURVE_ATTACK_104': 6.211,
+ 'GROW_CURVE_ATTACK_105': 5.151,
+ 'GROW_CURVE_CRITICAL_101': 4.392,
+ 'GROW_CURVE_ATTACK_201': 8.183,
+ 'GROW_CURVE_ATTACK_202': 9.163,
+ 'GROW_CURVE_ATTACK_203': 10.085,
+ 'GROW_CURVE_ATTACK_204': 7.14,
+ 'GROW_CURVE_ATTACK_205': 6.027,
+ 'GROW_CURVE_CRITICAL_201': 4.392,
+ 'GROW_CURVE_ATTACK_301': 8.977,
+ 'GROW_CURVE_ATTACK_302': 10.032,
+ 'GROW_CURVE_ATTACK_303': 11.018,
+ 'GROW_CURVE_ATTACK_304': 7.846,
+ 'GROW_CURVE_ATTACK_305': 6.63,
+ 'GROW_CURVE_CRITICAL_301': 4.392,
+ }
+ },
+ '89': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.277,
+ 'GROW_CURVE_ATTACK_102': 8.232,
+ 'GROW_CURVE_ATTACK_103': 9.134,
+ 'GROW_CURVE_ATTACK_104': 6.265,
+ 'GROW_CURVE_ATTACK_105': 5.19,
+ 'GROW_CURVE_CRITICAL_101': 4.392,
+ 'GROW_CURVE_ATTACK_201': 8.266,
+ 'GROW_CURVE_ATTACK_202': 9.26,
+ 'GROW_CURVE_ATTACK_203': 10.195,
+ 'GROW_CURVE_ATTACK_204': 7.208,
+ 'GROW_CURVE_ATTACK_205': 6.078,
+ 'GROW_CURVE_CRITICAL_201': 4.392,
+ 'GROW_CURVE_ATTACK_301': 9.075,
+ 'GROW_CURVE_ATTACK_302': 10.145,
+ 'GROW_CURVE_ATTACK_303': 11.145,
+ 'GROW_CURVE_ATTACK_304': 7.928,
+ 'GROW_CURVE_ATTACK_305': 6.695,
+ 'GROW_CURVE_CRITICAL_301': 4.392,
+ }
+ },
+ '90': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.346,
+ 'GROW_CURVE_ATTACK_102': 8.314,
+ 'GROW_CURVE_ATTACK_103': 9.229,
+ 'GROW_CURVE_ATTACK_104': 6.32,
+ 'GROW_CURVE_ATTACK_105': 5.229,
+ 'GROW_CURVE_CRITICAL_101': 4.594,
+ 'GROW_CURVE_ATTACK_201': 8.349,
+ 'GROW_CURVE_ATTACK_202': 9.356,
+ 'GROW_CURVE_ATTACK_203': 10.305,
+ 'GROW_CURVE_ATTACK_204': 7.275,
+ 'GROW_CURVE_ATTACK_205': 6.13,
+ 'GROW_CURVE_CRITICAL_201': 4.594,
+ 'GROW_CURVE_ATTACK_301': 9.173,
+ 'GROW_CURVE_ATTACK_302': 10.258,
+ 'GROW_CURVE_ATTACK_303': 11.272,
+ 'GROW_CURVE_ATTACK_304': 8.01,
+ 'GROW_CURVE_ATTACK_305': 6.76,
+ 'GROW_CURVE_CRITICAL_301': 4.594,
+ }
+ },
+ '91': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.415,
+ 'GROW_CURVE_ATTACK_102': 8.396,
+ 'GROW_CURVE_ATTACK_103': 9.324,
+ 'GROW_CURVE_ATTACK_104': 6.374,
+ 'GROW_CURVE_ATTACK_105': 5.269,
+ 'GROW_CURVE_CRITICAL_101': 4.594,
+ 'GROW_CURVE_ATTACK_201': 8.431,
+ 'GROW_CURVE_ATTACK_202': 9.453,
+ 'GROW_CURVE_ATTACK_203': 10.414,
+ 'GROW_CURVE_ATTACK_204': 7.343,
+ 'GROW_CURVE_ATTACK_205': 6.182,
+ 'GROW_CURVE_CRITICAL_201': 4.594,
+ 'GROW_CURVE_ATTACK_301': 9.271,
+ 'GROW_CURVE_ATTACK_302': 10.371,
+ 'GROW_CURVE_ATTACK_303': 11.399,
+ 'GROW_CURVE_ATTACK_304': 8.092,
+ 'GROW_CURVE_ATTACK_305': 6.825,
+ 'GROW_CURVE_CRITICAL_301': 4.594,
+ }
+ },
+ '92': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.483,
+ 'GROW_CURVE_ATTACK_102': 8.478,
+ 'GROW_CURVE_ATTACK_103': 9.418,
+ 'GROW_CURVE_ATTACK_104': 6.428,
+ 'GROW_CURVE_ATTACK_105': 5.308,
+ 'GROW_CURVE_CRITICAL_101': 4.594,
+ 'GROW_CURVE_ATTACK_201': 8.514,
+ 'GROW_CURVE_ATTACK_202': 9.55,
+ 'GROW_CURVE_ATTACK_203': 10.524,
+ 'GROW_CURVE_ATTACK_204': 7.411,
+ 'GROW_CURVE_ATTACK_205': 6.233,
+ 'GROW_CURVE_CRITICAL_201': 4.594,
+ 'GROW_CURVE_ATTACK_301': 9.37,
+ 'GROW_CURVE_ATTACK_302': 10.485,
+ 'GROW_CURVE_ATTACK_303': 11.527,
+ 'GROW_CURVE_ATTACK_304': 8.174,
+ 'GROW_CURVE_ATTACK_305': 6.89,
+ 'GROW_CURVE_CRITICAL_301': 4.594,
+ }
+ },
+ '93': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.552,
+ 'GROW_CURVE_ATTACK_102': 8.561,
+ 'GROW_CURVE_ATTACK_103': 9.513,
+ 'GROW_CURVE_ATTACK_104': 6.483,
+ 'GROW_CURVE_ATTACK_105': 5.347,
+ 'GROW_CURVE_CRITICAL_101': 4.594,
+ 'GROW_CURVE_ATTACK_201': 8.596,
+ 'GROW_CURVE_ATTACK_202': 9.646,
+ 'GROW_CURVE_ATTACK_203': 10.634,
+ 'GROW_CURVE_ATTACK_204': 7.478,
+ 'GROW_CURVE_ATTACK_205': 6.285,
+ 'GROW_CURVE_CRITICAL_201': 4.594,
+ 'GROW_CURVE_ATTACK_301': 9.468,
+ 'GROW_CURVE_ATTACK_302': 10.598,
+ 'GROW_CURVE_ATTACK_303': 11.654,
+ 'GROW_CURVE_ATTACK_304': 8.257,
+ 'GROW_CURVE_ATTACK_305': 6.955,
+ 'GROW_CURVE_CRITICAL_301': 4.594,
+ }
+ },
+ '94': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.621,
+ 'GROW_CURVE_ATTACK_102': 8.643,
+ 'GROW_CURVE_ATTACK_103': 9.608,
+ 'GROW_CURVE_ATTACK_104': 6.537,
+ 'GROW_CURVE_ATTACK_105': 5.386,
+ 'GROW_CURVE_CRITICAL_101': 4.594,
+ 'GROW_CURVE_ATTACK_201': 8.679,
+ 'GROW_CURVE_ATTACK_202': 9.743,
+ 'GROW_CURVE_ATTACK_203': 10.744,
+ 'GROW_CURVE_ATTACK_204': 7.546,
+ 'GROW_CURVE_ATTACK_205': 6.336,
+ 'GROW_CURVE_CRITICAL_201': 4.594,
+ 'GROW_CURVE_ATTACK_301': 9.567,
+ 'GROW_CURVE_ATTACK_302': 10.712,
+ 'GROW_CURVE_ATTACK_303': 11.782,
+ 'GROW_CURVE_ATTACK_304': 8.339,
+ 'GROW_CURVE_ATTACK_305': 7.02,
+ 'GROW_CURVE_CRITICAL_301': 4.594,
+ }
+ },
+ '95': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.689,
+ 'GROW_CURVE_ATTACK_102': 8.725,
+ 'GROW_CURVE_ATTACK_103': 9.704,
+ 'GROW_CURVE_ATTACK_104': 6.591,
+ 'GROW_CURVE_ATTACK_105': 5.425,
+ 'GROW_CURVE_CRITICAL_101': 4.796,
+ 'GROW_CURVE_ATTACK_201': 8.761,
+ 'GROW_CURVE_ATTACK_202': 9.84,
+ 'GROW_CURVE_ATTACK_203': 10.854,
+ 'GROW_CURVE_ATTACK_204': 7.613,
+ 'GROW_CURVE_ATTACK_205': 6.388,
+ 'GROW_CURVE_CRITICAL_201': 4.796,
+ 'GROW_CURVE_ATTACK_301': 9.666,
+ 'GROW_CURVE_ATTACK_302': 10.826,
+ 'GROW_CURVE_ATTACK_303': 11.91,
+ 'GROW_CURVE_ATTACK_304': 8.422,
+ 'GROW_CURVE_ATTACK_305': 7.085,
+ 'GROW_CURVE_CRITICAL_301': 4.796,
+ }
+ },
+ '96': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.758,
+ 'GROW_CURVE_ATTACK_102': 8.807,
+ 'GROW_CURVE_ATTACK_103': 9.799,
+ 'GROW_CURVE_ATTACK_104': 6.646,
+ 'GROW_CURVE_ATTACK_105': 5.464,
+ 'GROW_CURVE_CRITICAL_101': 4.796,
+ 'GROW_CURVE_ATTACK_201': 8.844,
+ 'GROW_CURVE_ATTACK_202': 9.936,
+ 'GROW_CURVE_ATTACK_203': 10.964,
+ 'GROW_CURVE_ATTACK_204': 7.681,
+ 'GROW_CURVE_ATTACK_205': 6.439,
+ 'GROW_CURVE_CRITICAL_201': 4.796,
+ 'GROW_CURVE_ATTACK_301': 9.765,
+ 'GROW_CURVE_ATTACK_302': 10.94,
+ 'GROW_CURVE_ATTACK_303': 12.038,
+ 'GROW_CURVE_ATTACK_304': 8.505,
+ 'GROW_CURVE_ATTACK_305': 7.151,
+ 'GROW_CURVE_CRITICAL_301': 4.796,
+ }
+ },
+ '97': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.827,
+ 'GROW_CURVE_ATTACK_102': 8.89,
+ 'GROW_CURVE_ATTACK_103': 9.894,
+ 'GROW_CURVE_ATTACK_104': 6.7,
+ 'GROW_CURVE_ATTACK_105': 5.503,
+ 'GROW_CURVE_CRITICAL_101': 4.796,
+ 'GROW_CURVE_ATTACK_201': 8.927,
+ 'GROW_CURVE_ATTACK_202': 10.033,
+ 'GROW_CURVE_ATTACK_203': 11.074,
+ 'GROW_CURVE_ATTACK_204': 7.748,
+ 'GROW_CURVE_ATTACK_205': 6.491,
+ 'GROW_CURVE_CRITICAL_201': 4.796,
+ 'GROW_CURVE_ATTACK_301': 9.864,
+ 'GROW_CURVE_ATTACK_302': 11.054,
+ 'GROW_CURVE_ATTACK_303': 12.166,
+ 'GROW_CURVE_ATTACK_304': 8.588,
+ 'GROW_CURVE_ATTACK_305': 7.216,
+ 'GROW_CURVE_CRITICAL_301': 4.796,
+ }
+ },
+ '98': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.895,
+ 'GROW_CURVE_ATTACK_102': 8.972,
+ 'GROW_CURVE_ATTACK_103': 9.989,
+ 'GROW_CURVE_ATTACK_104': 6.754,
+ 'GROW_CURVE_ATTACK_105': 5.542,
+ 'GROW_CURVE_CRITICAL_101': 4.796,
+ 'GROW_CURVE_ATTACK_201': 9.009,
+ 'GROW_CURVE_ATTACK_202': 10.13,
+ 'GROW_CURVE_ATTACK_203': 11.184,
+ 'GROW_CURVE_ATTACK_204': 7.816,
+ 'GROW_CURVE_ATTACK_205': 6.542,
+ 'GROW_CURVE_CRITICAL_201': 4.796,
+ 'GROW_CURVE_ATTACK_301': 9.963,
+ 'GROW_CURVE_ATTACK_302': 11.168,
+ 'GROW_CURVE_ATTACK_303': 12.295,
+ 'GROW_CURVE_ATTACK_304': 8.671,
+ 'GROW_CURVE_ATTACK_305': 7.282,
+ 'GROW_CURVE_CRITICAL_301': 4.796,
+ }
+ },
+ '99': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 7.964,
+ 'GROW_CURVE_ATTACK_102': 9.054,
+ 'GROW_CURVE_ATTACK_103': 10.084,
+ 'GROW_CURVE_ATTACK_104': 6.808,
+ 'GROW_CURVE_ATTACK_105': 5.58,
+ 'GROW_CURVE_CRITICAL_101': 4.796,
+ 'GROW_CURVE_ATTACK_201': 9.092,
+ 'GROW_CURVE_ATTACK_202': 10.227,
+ 'GROW_CURVE_ATTACK_203': 11.295,
+ 'GROW_CURVE_ATTACK_204': 7.883,
+ 'GROW_CURVE_ATTACK_205': 6.593,
+ 'GROW_CURVE_CRITICAL_201': 4.796,
+ 'GROW_CURVE_ATTACK_301': 10.062,
+ 'GROW_CURVE_ATTACK_302': 11.283,
+ 'GROW_CURVE_ATTACK_303': 12.424,
+ 'GROW_CURVE_ATTACK_304': 8.754,
+ 'GROW_CURVE_ATTACK_305': 7.347,
+ 'GROW_CURVE_CRITICAL_301': 4.796,
+ }
+ },
+ '100': {
+ 'curveInfos': {
+ 'GROW_CURVE_ATTACK_101': 8.033,
+ 'GROW_CURVE_ATTACK_102': 9.137,
+ 'GROW_CURVE_ATTACK_103': 10.18,
+ 'GROW_CURVE_ATTACK_104': 6.862,
+ 'GROW_CURVE_ATTACK_105': 5.619,
+ 'GROW_CURVE_CRITICAL_101': 4.998,
+ 'GROW_CURVE_ATTACK_201': 9.174,
+ 'GROW_CURVE_ATTACK_202': 10.324,
+ 'GROW_CURVE_ATTACK_203': 11.405,
+ 'GROW_CURVE_ATTACK_204': 7.95,
+ 'GROW_CURVE_ATTACK_205': 6.644,
+ 'GROW_CURVE_CRITICAL_201': 4.998,
+ 'GROW_CURVE_ATTACK_301': 10.162,
+ 'GROW_CURVE_ATTACK_302': 11.397,
+ 'GROW_CURVE_ATTACK_303': 12.552,
+ 'GROW_CURVE_ATTACK_304': 8.837,
+ 'GROW_CURVE_ATTACK_305': 7.413,
+ 'GROW_CURVE_CRITICAL_301': 4.998,
+ }
+ },
+}
+
+PROP_MAP = {
+ 'FIGHT_PROP_BASE_HP': '基础生命值',
+ 'FIGHT_PROP_HP': '总生命值',
+ 'FIGHT_PROP_HP_PERCENT': '生命值',
+ 'FIGHT_PROP_BASE_ATTACK': '基础攻击力',
+ 'FIGHT_PROP_ATTACK': '总攻击力',
+ 'FIGHT_PROP_ATTACK_PERCENT': '攻击力',
+ 'FIGHT_PROP_BASE_DEFENSE': '基础防御力',
+ 'FIGHT_PROP_DEFENSE': '总防御力',
+ 'FIGHT_PROP_DEFENSE_PERCENT': '防御力',
+ 'FIGHT_PROP_CRITICAL': '暴击率',
+ 'FIGHT_PROP_ANTI_CRITICAL': '暴击抵抗',
+ 'FIGHT_PROP_CRITICAL_HURT': '暴击伤害',
+ 'FIGHT_PROP_CHARGE_EFFICIENCY': '元素充能效率',
+ 'FIGHT_PROP_HEAL_ADD': '治疗加成',
+ 'FIGHT_PROP_HEALED_ADD': '受治疗加成',
+ 'FIGHT_PROP_ELEMENT_MASTERY': '元素精通',
+ 'FIGHT_PROP_PHYSICAL_ADD_HURT': '物理伤害加成',
+ 'FIGHT_PROP_FIRE_ADD_HURT': '火元素伤害加成',
+ 'FIGHT_PROP_ELEC_ADD_HURT': '雷元素伤害加成',
+ 'FIGHT_PROP_WATER_ADD_HURT': '水元素伤害加成',
+ 'FIGHT_PROP_GRASS_ADD_HURT': '草元素伤害加成',
+ 'FIGHT_PROP_WIND_ADD_HURT': '风元素伤害加成',
+ 'FIGHT_PROP_ROCK_ADD_HURT': '岩元素伤害加成',
+ 'FIGHT_PROP_ICE_ADD_HURT': '冰元素伤害加成',
+ 'FIGHT_PROP_FIRE_SUB_HURT': '火元素抗性',
+ 'FIGHT_PROP_ELEC_SUB_HURT': '雷元素抗性',
+ 'FIGHT_PROP_WATER_SUB_HURT': '水元素抗性',
+ 'FIGHT_PROP_GRASS_SUB_HURT': '草元素抗性',
+ 'FIGHT_PROP_WIND_SUB_HURT': '风元素抗性',
+ 'FIGHT_PROP_ROCK_SUB_HURT': '岩元素抗性',
+ 'FIGHT_PROP_ICE_SUB_HURT': '冰元素抗性',
+}
diff --git a/GenshinUID/gsuid_utils/api/enka/__init__.py b/GenshinUID/gsuid_utils/api/enka/__init__.py
new file mode 100644
index 00000000..8f9f9ce2
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/enka/__init__.py
@@ -0,0 +1,7 @@
+"""Enka Network 包装
+参考:https://api.enka.network
+"""
+from .models import EnkaData as EnkaData # noqa: F401
+from .request import get_enka_info as get_enka_info # noqa: F401
+
+__all__ = ["request", "models"]
diff --git a/GenshinUID/gsuid_utils/api/enka/models.py b/GenshinUID/gsuid_utils/api/enka/models.py
new file mode 100644
index 00000000..b0b230cd
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/enka/models.py
@@ -0,0 +1,113 @@
+from __future__ import annotations
+
+import sys
+from typing import List, Literal, TypedDict
+
+# https://peps.python.org/pep-0655/#usage-in-python-3-11
+if sys.version_info >= (3, 11):
+ from typing import NotRequired
+else:
+ from typing_extensions import NotRequired
+
+
+class EnkaData(TypedDict):
+ playerInfo: PlayerInfo
+ avatarInfoList: List[AvatarInfoListItem]
+ ttl: int
+ uid: str
+
+
+class PlayerInfo(TypedDict):
+ nickname: str
+ level: int
+ signature: str
+ worldLevel: int
+ nameCardId: int
+ finishAchievementNum: int
+ towerFloorIndex: int
+ towerLevelIndex: int
+ showAvatarInfoList: List[ShowAvatarInfoListItem]
+ showNameCardIdList: List[int]
+ profilePicture: ProfilePicture
+
+
+class ShowAvatarInfoListItem(TypedDict):
+ avatarId: int
+ level: int
+ costumeId: NotRequired[int]
+
+
+class ProfilePicture(TypedDict):
+ avatarId: int
+
+
+class AvatarInfoListItem(TypedDict):
+ avatarId: int
+ propMap: dict[str, PropMap]
+ talentIdList: List[int]
+ fightPropMap: dict[str, float]
+ skillDepotId: int
+ inherentProudSkillList: List[int]
+ skillLevelMap: dict[str, int]
+ equipList: List[Equip]
+ fetterInfo: FetterInfo
+
+
+class Equip(TypedDict):
+ itemId: int
+ reliquary: Reliquary
+ weapon: Weapon
+ flat: Flat
+
+
+class Flat(TypedDict):
+ # l10n
+ nameTextMapHash: str
+ setNameTextMapHash: str
+
+ # artifact
+ reliquaryMainstat: Stat
+ reliquarySubstats: List[Stat]
+ equipType: Literal[
+ "EQUIP_BRACER",
+ "EQUIP_NECKLACE",
+ "EQUIP_SHOES",
+ "EQUIP_RING",
+ "EQUIP_DRESS",
+ ]
+
+ # weapon
+ weaponStats: List[Stat]
+
+ rankLevel: Literal[3, 4, 5]
+ itemType: Literal["ITEM_WEAPON", "ITEM_RELIQUARY"]
+ icon: str # https://enka.network/ui/{Icon}.png
+
+
+class Stat(TypedDict):
+ mainPropId: str
+ appendPropId: str
+ statName: str
+ statValue: float | int
+
+
+class Weapon(TypedDict):
+ level: int
+ promoteLevel: int
+ affixMap: dict[str, int]
+
+
+class Reliquary(TypedDict):
+ level: int
+ mainPropId: int
+ appendPropIdList: List[int]
+
+
+class PropMap(TypedDict):
+ type: int
+ ival: str # Ignore It!
+ val: str
+
+
+class FetterInfo(TypedDict):
+ expLevel: int
diff --git a/GenshinUID/gsuid_utils/api/enka/request.py b/GenshinUID/gsuid_utils/api/enka/request.py
new file mode 100644
index 00000000..c53327f1
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/enka/request.py
@@ -0,0 +1,36 @@
+'''Enka Network 请求模块。
+MiniGG Enka 加速服务在此模块内。
+'''
+from __future__ import annotations
+
+from typing import Literal
+
+from httpx import AsyncClient
+
+from .models import EnkaData
+from ...version import __version__
+
+ADDRESS = {
+ 'enka': 'https://enka.network',
+ 'microgg': 'https://profile.microgg.cn',
+}
+
+
+async def get_enka_info(
+ uid: str, address: Literal['enka', 'microgg'] = 'enka'
+) -> EnkaData:
+ '''请求 Enka Network
+
+ Args:
+ uid (str): 原神 UID
+ address (Literal["enka", "microgg", "minigg"], optional): API 地址. Defaults to 'enka'.
+
+ Returns:
+ EnkaData: Enka Network 响应数据
+ ''' # noqa: E501
+ async with AsyncClient(
+ base_url=ADDRESS[address],
+ headers={'User-Agent': f'gsuid-utils/{__version__}'},
+ ) as client:
+ req = await client.get(url=f'/api/uid/{uid}')
+ return req.json()
diff --git a/GenshinUID/gsuid_utils/api/hhw/__init__.py b/GenshinUID/gsuid_utils/api/hhw/__init__.py
new file mode 100644
index 00000000..4a540023
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/hhw/__init__.py
@@ -0,0 +1,7 @@
+"""
+内鬼网(hhw) API 包装:
+深渊出场数据;
+"""
+from .request import get_abyss_review as get_abyss_review # noqa: F401
+
+__all__ = ["request"]
diff --git a/GenshinUID/gsuid_utils/api/hhw/request.py b/GenshinUID/gsuid_utils/api/hhw/request.py
new file mode 100644
index 00000000..ab3f731c
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/hhw/request.py
@@ -0,0 +1,54 @@
+'''
+内鬼网(hhw) API 请求模块。
+'''
+from __future__ import annotations
+
+from typing import Dict, Union, Optional
+
+from httpx import AsyncClient
+from bs4 import BeautifulSoup, NavigableString
+
+from ...version import __version__
+
+HHW_ABYSS = 'https://genshin.honeyhunterworld.com/d_1001/?lang=CHS'
+
+
+async def get_abyss_review(
+ raw_data: bytes, _id: Union[str, int], floor: Union[str, int]
+) -> Optional[Dict[str, str]]:
+ '''请求内鬼网 API 深渊怪物数据
+
+ Returns:
+ Dict: 内鬼网 API 深渊怪物数据
+ ''' # noqa: E501
+ bs = BeautifulSoup(raw_data, 'lxml')
+ data = bs.find('section', {'id': f'Variant #{_id}'})
+
+ if data is None or isinstance(data, NavigableString):
+ return None
+
+ floor_data = data.find_all('td')
+ abyss_list = []
+ result = {}
+ for index, td in enumerate(floor_data):
+ temp = []
+ if 'Monsters' in td.text:
+ monsters = floor_data[index + 1].find_all('a')
+ for monster in monsters:
+ if monster.text:
+ temp.append(monster.text)
+ if temp:
+ abyss_list.append(temp)
+
+ for index, half in enumerate(['-1上', '-1下', '-2上', '-2下', '-3上', '-3下']):
+ result[f'{floor}{half}'] = abyss_list[index]
+
+ return result
+
+
+async def get_abyss_review_raw() -> bytes:
+ async with AsyncClient(
+ headers={'User-Agent': f'gsuid-utils/{__version__}'},
+ ) as client:
+ req = await client.get(url=HHW_ABYSS)
+ return req.read()
diff --git a/GenshinUID/gsuid_utils/api/minigg/__init__.py b/GenshinUID/gsuid_utils/api/minigg/__init__.py
new file mode 100644
index 00000000..13af556f
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/minigg/__init__.py
@@ -0,0 +1,36 @@
+"""
+MiniGG API 包装:
+原神基础信息 v4/v5;
+原神语音;
+原神地图;
+"""
+from .models import Food as Food # noqa: F401
+from .models import Costs as Costs # noqa: F401
+from .models import Enemy as Enemy # noqa: F401
+from .models import Domain as Domain # noqa: F401
+from .models import Weapon as Weapon # noqa: F401
+from .models import Artifact as Artifact # noqa: F401
+from .models import Material as Material # noqa: F401
+from .models import Character as Character # noqa: F401
+from .models import WeaponStats as WeaponStats # noqa: F401
+from .request import get_map_data as get_map_data # noqa: F401
+from .models import CharacterStats as CharacterStats # noqa: F401
+from .request import get_audio_info as get_audio_info # noqa: F401
+from .request import get_others_info as get_others_info # noqa: F401
+from .request import get_talent_info as get_talent_info # noqa: F401
+from .request import get_weapon_info as get_weapon_info # noqa: F401
+from .models import CharacterTalents as CharacterTalents # noqa: F401
+from .request import get_weapon_costs as get_weapon_costs # noqa: F401
+from .request import get_weapon_stats as get_weapon_stats # noqa: F401
+from .request import get_character_info as get_character_info # noqa: F401
+from .request import get_character_costs as get_character_costs # noqa: F401
+from .request import get_character_stats as get_character_stats # noqa: F401
+from .exception import MiniggNotFoundError as MiniggNotFoundError # noqa: F401
+from .request import ( # noqa: F401
+ get_constellation_info as get_constellation_info,
+)
+from .models import ( # noqa: F401
+ CharacterConstellations as CharacterConstellations,
+)
+
+__all__ = ["request", "exception", "models"]
diff --git a/GenshinUID/gsuid_utils/api/minigg/exception.py b/GenshinUID/gsuid_utils/api/minigg/exception.py
new file mode 100644
index 00000000..38861450
--- /dev/null
+++ b/GenshinUID/gsuid_utils/api/minigg/exception.py
@@ -0,0 +1,17 @@
+from typing import Any
+
+from ..types import AnyDict
+
+
+class MiniggNotFoundError(Exception):
+ """MiniGG API 未找到报错"""
+
+ def __init__(self, **raw: Any) -> None:
+ self.raw: AnyDict = raw
+
+ def __repr__(self) -> str:
+ raw = self.raw
+ return f"