foxxtrott

難しいことは分かりません

Data Dragonのチャンピオン情報のデータ構造メモ

チャンピオンの静的データ取得メモ。
実行環境などは前記事参照。
データ取得

#LoLバージョンの取得
region = 'jp1'
versions = rw.data_dragon.versions_for_region(region)

#Data Dragonからチャンピオン情報を取得
champions = rw.data_dragon.champions(versions['v'])

データ構造
このようにして得られるchampionsの中のchampions['data']に全チャンピオンの静的データが格納されている。各チャンピオン名をkey、チャンピオンデータをvalueに持つ階層dictになっており、重要そうなものについて具体的には以下。

  • 'チャンピオン名':
    • 'key': 'チャンピオン番号'
    • 'title': '二つ名'
    • 'info':
      • 'attack': '攻撃力(定性)'
      • 'defense': '防御力(定性)'
      • 'magic': '魔力(定性)'
      • 'difficulty': '難易度(定性)'
    • 'stats':
      • 'hp': HP初期値
      • 'hpperlevel': レベルごとのHP上昇値
      • 'mp': MP初期値
      • 'mpperlevel': レベルごとのMP上昇値
      • 'movespeed': MS値
      • 'armor': AR初期値
      • 'armorperlevel': レベルごとのAR上昇値
      • 'spellblock': MR初期値
      • 'spellblockperlevel': レベルごとのMR上昇値
      • 'attackrange': AA射程値*1
      • 'hpregen': HPReg初期値*2
      • 'hpregenperlevel': レベルごとのHPReg上昇値
      • 'mpregen': MPReg初期値*3
      • 'mpregenperlevel': レベルごとのMPReg上昇値
      • 'crit': Crit発生率
      • 'critperlevel': レベルごとのCrit発生率上昇値
      • 'attackdamage': AD初期値
      • 'attackdamageperlevel': レベルごとのAD上昇値
      • 'attackspeedperlevel': レベルごとのAS上昇率 *4
      • 'attackspeed' : AS基礎値

次回はこれを使って簡易的なオートアタックDPSの可視化をします。

*1:あれ、attackrangeperlevelは?TrisとかAA射程伸びるんだけどな…

*2:5秒毎

*3:5秒毎

*4:ASのみ'率'。すなわちAS = attackspeed * (1+attackspeedperlevel)^level