SlayTheSpire runファイル解析

# これは何？
Slay the Spireのrunファイルの各セクション情報の解析メモ。
筆者による推測が多分に含まれている点はご容赦いただきたい。
特に確度が低い箇所には（？）を付けてある。

# ゲーム本体情報

### build_version
ゲーム本体のバージョン

```
"2020-12-22"
```

### is_beta
ベータ版か否か（？）

```
false
```

### is_prod
製品版か否か（？）

```
false
```

### is_trial
トライアル版か否か（？）

```
false
```

# ラン全体情報

### play_id
ゲームの一意なID（？）

```
"1fd2322a-ffc0-4bf9-b7ea-1f560e6178f6"
```

### is_daily
デイリーチャレンジか否か

```
false
```

### is_endless
エンドレスモードか否か

```
false
```

### is_ascension_mode
アセンションモードか否か

```
true
```
### ascension_level
アセンションレベル

```
1
```

### seed_played
シード値

```
"-3363429452019887060"
```

### chose_seed
シード値を選択したか否か

```
false
```

### special_seed
不明

```
0
```

### seed_source_timestamp
シード値の生成に使用したタイムスタンプ（？）

```
1867471690376400
```

### timestamp
プレイ開始時のタイムスタンプ（？）

```
1633600038
```

### character_chosen
選択したキャラクター

```
"IRONCLAD"
```

### local_time
プレイ日時（？）

```
20211007184718
```

### victory
勝ったか否か。心臓に敗北した場合はおそらくfalseとなる。

```
true
```

### win_rate
連勝数？不明（？）

```
0
```

### floor_reached
到達フロア

```
56
```

### circlet_count
エンドレスモードに関係する何か？やったことないからわからん。

```
0
```

### playtime
クリアもしくは敗北までにかかった時間。単位は秒。

```
2659
```

### score
スコア

```
1454
```

### gold
ゲーム終了時に持っていたゴールド。

```
129
```

### master_deck
ゲーム終了時のデッキ

```
   "master_deck":[
      "Immolate",
      "Wild Strike",
      "Armaments+1",
      "Exhume+1",
      "Battle Trance",
      "Fire Breathing",
      "True Grit+1",
      "Power Through",
      "Feel No Pain",
      "Second Wind",
      "Barricade+1",
      "Ghostly Armor",
      "Body Slam",
      "Corruption+1",
      "Rupture",
      "Exhume",
      "Seeing Red",
      "Fire Breathing+1",
      "Power Through",
      "Impervious+1",
      "Impervious",
      "Master of Strategy",
      "Pommel Strike+1",
      "Evolve+1",
      "Dark Embrace+1",
      "Disarm+1",
      "Shrug It Off"
   ],
```

### relics
ゲーム終了時のレリック。

```
   "relics":[
      "Burning Blood",
      "Ancient Tea Set",
      "Bag of Preparation",
      "Self Forming Clay",
      "Pen Nib",
      "CeramicFish",
      "Pandora\u0027s Box",
      "Calipers",
      "Regal Pillow",
      "Ornamental Fan",
      "Nilry\u0027s Codex",
      "Incense Burner",
      "Dream Catcher",
      "Fusion Hammer",
      "MawBank",
      "PreservedInsect",
      "War Paint",
      "Mummified Hand",
      "HornCleat"
   ],
```

### player_experience
累積スコア？ゲーム終了時に表示される数値かも。（？）

```
3481887
```

# プレイ詳細情報

## フロア選択情報

### path_taken
フロアごとのマス種別。？マスは？と表示される。

```
   "path_taken":[
      "M",
      "?",
      "?",
      "$",
```

### path_per_floor
フロアごとのマス種別。？マスはイベントが発生したら「？」、イベントでなければ実際の内容が表示される。

```
   "path_per_floor":[
      "M",
      "?",
      "T",
      "$",
```

## ネオーボーナス

### neow_bonus
ネオーボーナス。

```
"THREE_RARE_CARDS"
```

### neow_cost
ネオーボーナスに支払った対価。

```
"TEN_PERCENT_HP_LOSS"
```

## 焚火

### campfire_choices
焚火で行った行動。フロア数が浮動小数点になっているのはおそらくバグだが、解析時は要注意。

```
   "campfire_choices":[
      {
         "data":"Armaments",
         "floor":7.0,
         "key":"SMITH"
      },
      {
         "data":"True Grit",
         "floor":15.0,
         "key":"SMITH"
      },
      {
         "data":"Barricade",
         "floor":24.0,
         "key":"SMITH"
      },
      {
         "data":"Corruption",
         "floor":32,
         "key":"SMITH"
      },
      {
         "floor":40,
         "key":"RECALL"
      },
```

### campfire_rested
焚火での休憩回数。

```
3
```

### campfire_upgraded
焚火でのアップグレード回数。

```
4
```

## ショップ
### item_purchase_floors
ショップで購入を行ったフロア。基本的には次のitems_purchasedとセットで利用する。

```
   "item_purchase_floors":[
      4,
      13,
      13,
      19,
      53,
      53
   ],
```

### items_purchased
ショップで購入したもの。カードもレリックも一緒くたに扱われるので注意。
（おそらくポーションも）

```
   "items_purchased":[
      "Fire Breathing",
      "Feel No Pain",
      "Second Wind",
      "Power Through",
      "Mummified Hand",
      "Shrug It Off"
   ],
```

### purchased_purges
ショップでのカード削除回数。

```
5
```

## イベント
### event_choices
イベントマスの内容と選択と、その他諸々の情報。

```
   "event_choices":[
      {
         "damage_healed":0.0,
         "max_hp_gain":0.0,
         "max_hp_loss":0.0,
         "gold_gain":0.0,
         "event_name":"Liars Game",
         "player_choice":"Ignored",
         "floor":2.0,
         "gold_loss":0.0,
         "damage_taken":0.0
      },
      {
         "damage_healed":0.0,
         "max_hp_gain":0.0,
         "max_hp_loss":0.0,
         "gold_gain":0.0,
         "event_name":"The Mausoleum",
         "player_choice":"Opened",
         "floor":20.0,
         "gold_loss":0.0,
         "damage_taken":0.0,
         "relics_obtained":[
            "Calipers"
         ],
         "cards_obtained":[
            "Writhe"
         ]
      },
```

## 戦闘

### damage_taken
雑魚敵、エリート、ボスとの戦闘情報。
報酬情報はここには含まれないので注意。

```
   "damage_taken":[
      {
         "damage":0.0,
         "enemies":"2 Louse",
         "floor":1.0,
         "turns":1.0
      },
      {
         "damage":11.0,
         "enemies":"Jaw Worm",
         "floor":5.0,
         "turns":2.0
      },
      {
         "damage":20.0,
         "enemies":"Gremlin Nob",
         "floor":6.0,
         "turns":4.0
      },
      {
         "damage":36.0,
         "enemies":"Lagavulin",
         "floor":8.0,
         "turns":6.0
      },
      {
         "damage":3.0,
         "enemies":"Small Slimes",
         "floor":10.0,
         "turns":2.0
      },
      {
         "damage":8.0,
         "enemies":"3 Sentries",
         "floor":11.0,
         "turns":3.0
      },
      {
         "damage":6.0,
         "enemies":"3 Louse",
         "floor":12.0,
         "turns":3.0
      },
      {
         "damage":0.0,
         "enemies":"Looter",
         "floor":14.0,
         "turns":4.0
      },
      {
         "damage":7.0,
         "enemies":"Slime Boss",
         "floor":16.0,
         "turns":8.0
      },
```

## ボス
### boss_relics
ボスレリック。スネッコを崇めよ。

```
   "boss_relics":[
      {
         "not_picked":[
            "Snecko Eye",
            "Astrolabe"
         ],
         "picked":"Pandora\u0027s Box"
      },
      {
         "not_picked":[
            "Empty Cage",
            "Black Blood"
         ],
         "picked":"Fusion Hammer"
      }
   ],
```

## 汎用情報

### gold_per_floor
フロアごとの手持ちゴールド。

```
   "gold_per_floor":[
      116,
      116,
      116,
      41,
      61,
      86,
      86,
```

### max_hp_per_floor
フロアごとの最大HP。

```
   "max_hp_per_floor":[
      72,
      72,
      72,
      72,
```

### current_hp_per_floor
フロアごとの現在HP。

```
   "current_hp_per_floor":[
      72,
      72,
      72,
      72,
```

### card_choices
カード選択によるカード獲得（あるいはスルー）情報。
戦闘によるカード獲得だけでなく、ネオーボーナスによるカード獲得もここに含まれる。
天球儀によるカード獲得情報もおそらくここに含まれると思われる。

```
   "card_choices":[
      {
         "not_picked":[
            "Demon Form",
            "Juggernaut"
         ],
         "picked":"Immolate",
         "floor":0.0
      },
      {
         "not_picked":[
            "Heavy Blade",
            "Twin Strike"
         ],
         "picked":"Wild Strike",
         "floor":1.0
      },
      {
         "not_picked":[
            "Warcry",
            "Metallicize"
         ],
         "picked":"Armaments",
         "floor":5.0
      },
```

### relics_obtained
レリックを獲得したフロアと獲得したレリック情報。

```
   "relics_obtained":[
      {
         "floor":3.0,
         "key":"Ancient Tea Set"
      },
      {
         "floor":6.0,
         "key":"Bag of Preparation"
      },
      {
         "floor":8.0,
         "key":"Self Forming Clay"
      },
```

### potions_floor_spawned
ポーションが落ちたフロア。

```
   "potions_floor_spawned":[
      1,
      10,
      11,
      12,
      18,
      25,
      27,
      31,
      35,
      41,
      48,
      54
   ],
```

### potions_floor_usage
不明。

```
   "potions_floor_usage":[
      55,
      55
   ],
```

### potions_obtained
ポーションを獲得したフロアと獲得したポーション種別。

```
   "potions_obtained":[
      {
         "floor":1.0,
         "key":"ColorlessPotion"
      },
      {
         "floor":10.0,
         "key":"Energy Potion"
      },
```


### items_purged_floors
どのフロアでカードを削除したか。基本的には次のitems_purgedとセットで利用する。

```
   "items_purged_floors":[
      13,
      19,
      22,
      39,
      53
   ],
```

### items_purged
削除したカード。
おそらくショップ以外でのカード削除情報もここに含まれる。

```
   "items_purged":[
      "Strike_R",
      "Demon Form",
      "Writhe",
      "Bash",
      "Sword Boomerang"
   ],
```