diff --git a/input/kh3/synthesis.toml b/input/kh3/synthesis.toml new file mode 100644 index 0000000..b9954a8 --- /dev/null +++ b/input/kh3/synthesis.toml @@ -0,0 +1,1918 @@ +[[sets]] +id = 0 +name = "List 0" + +[[sets]] +id = 1 +name = "List I" +requirement = "Obtain 2 different synthesis materials" + +[[sets]] +id = 2 +name = "List II" +requirement = "Obtain 4 different synthesis materials" + +[[sets]] +id = 3 +name = "List III" +requirement = "Obtain 6 different synthesis materials" + +[[sets]] +id = 4 +name = "List IV" +requirement = "Obtain 8 different synthesis materials" + +[[sets]] +id = 5 +name = "List V" +requirement = "Obtain 10 different synthesis materials" + +[[sets]] +id = 6 +name = "List VI" +requirement = "Obtain 12 different synthesis materials" + +[[sets]] +id = 7 +name = "List VII" +requirement = "Obtain 15 different synthesis materials" + +[[sets]] +id = 8 +name = "List VIII" +requirement = "Obtain 18 different synthesis materials" + +[[sets]] +id = 9 +name = "List IX" +requirement = "Obtain 20 different synthesis materials" + +[[sets]] +id = 10 +name = "List X" +requirement = "Obtain 22 different synthesis materials" + +[[sets]] +id = 11 +name = "List XI" +requirement = "Obtain 25 different synthesis materials" + +[[sets]] +id = 12 +name = "List XII" +requirement = "Obtain 28 different synthesis materials" + +[[sets]] +id = 13 +name = "List XIII" +requirement = "Obtain 30 different synthesis materials" + +[[sets]] +id = 14 +name = "List XIV" +requirement = "Obtain 32 different synthesis materials" + +[[sets]] +id = 15 +name = "List XV" +requirement = "Obtain 35 different synthesis materials" + +[[sets]] +id = 16 +name = "List XVI" +requirement = "Obtain 38 different synthesis materials" + +[[sets]] +id = 17 +name = "List XVII" +requirement = "Obtain 40 different synthesis materials" + +[[sets]] +id = 18 +name = "List XVIII" +requirement = "Obtain 42 different synthesis materials" + +[[sets]] +id = 19 +name = "List XIX" +requirement = "Obtain 45 different synthesis materials" + +[[sets]] +id = 20 +name = "List XX" +requirement = "Obtain 48 different synthesis materials" + +[[sets]] +id = 21 +name = "List XXI" +requirement = "Obtain 50 different synthesis materials" + +[[sets]] +id = 22 +name = "List XXII" +requirement = "Obtain 52 different synthesis materials" + +[[sets]] +id = 23 +name = "List XXIII" +requirement = "Obtain 55 different synthesis materials" + +[[sets]] +id = 24 +name = "List XXIV" +requirement = "Obtain 58 different synthesis materials" + +[[sets]] +id = 31 +name = "Photo Mission 1" +requirement = "Complete Photo Mission 1" + +[[sets]] +id = 32 +name = "Photo Mission 2" +requirement = "Complete Photo Mission 2" + +[[sets]] +id = 33 +name = "Photo Mission 3" +requirement = "Complete Photo Mission 3" + +[[sets]] +id = 34 +name = "Photo Mission 4" +requirement = "Complete Photo Mission 4" + +[[sets]] +id = 35 +name = "Photo Mission 5" +requirement = "Complete Photo Mission 5" + +[[sets]] +id = 36 +name = "Photo Mission 6" +requirement = "Complete Photo Mission 6" + +[[sets]] +id = 37 +name = "Photo Mission 7" +requirement = "Complete Photo Mission 7" + +[[sets]] +id = 38 +name = "Photo Mission 8" +requirement = "Complete Photo Mission 8" + +[[sets]] +id = 39 +name = "Photo Mission 9" +requirement = "Complete Photo Mission 9" + +[[sets]] +id = 40 +name = "Photo Mission 10" +requirement = "Complete Photo Mission 10" + +[[sets]] +id = 41 +name = "Photo Mission 11" +requirement = "Complete Photo Mission 11" + +[[sets]] +id = 42 +name = "Photo Mission 12" +requirement = "Complete Photo Mission 12" + +[[sets]] +id = 43 +name = "Photo Mission 13" +requirement = "Complete Photo Mission 13" + +[[sets]] +id = 44 +name = "Photo Mission 14" +requirement = "Complete Photo Mission 14" + +[[sets]] +id = 45 +name = "Photo Mission 15" +requirement = "Complete Photo Mission 15" + +[[sets]] +id = 46 +name = "Photo Mission 16" +requirement = "Complete Photo Mission 16" + +[[sets]] +id = 47 +name = "Photo Mission 17" +requirement = "Complete Photo Mission 17" + +[[sets]] +id = 48 +name = "Photo Mission 18" +requirement = "Complete Photo Mission 18" + +[[sets]] +id = 49 +name = "Photo Mission 19" +requirement = "Complete Photo Mission 19" + +[[sets]] +id = 50 +name = "Photo Mission 20" +requirement = "Complete Photo Mission 20" + +[[recipes]] +result = "Ether" +set = 0 +order = 2 + + [[recipes.items]] + name = "Wellspring Shard" + amount = 2 + + [[recipes.items]] + name = "Lightning Shard" + amount = 2 + + [[recipes.items]] + name = "Writhing Shard" + amount = 2 + +[[recipes]] +result = "Firefighter Rosette" +set = 31 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Wellspring Shard" + amount = 2 + + [[recipes.items]] + name = "Blazing Shard" + amount = 6 + +[[recipes]] +result = "Umbrella Rosette" +set = 32 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Wellspring Shard" + amount = 2 + + [[recipes.items]] + name = "Soothing Shard" + amount = 6 + +[[recipes]] +result = "Mask Rosette" +set = 33 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Wellspring Shard" + amount = 2 + + [[recipes.items]] + name = "Lucid Shard" + amount = 6 + +[[recipes]] +result = "Cosmic Ring" +set = 34 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 2 + + [[recipes.items]] + name = "Lucid Gem" + amount = 3 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 3 + + [[recipes.items]] + name = "Hungry Gem" + amount = 2 + +[[recipes]] +result = "Soldier's Earring" +set = 35 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Pulsing Stone" + amount = 3 + + [[recipes.items]] + name = "Pulsing Shard" + amount = 6 + +[[recipes]] +result = "Mage's Earring" +set = 36 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Blazing Stone" + amount = 3 + + [[recipes.items]] + name = "Lightning Stone" + amount = 3 + + [[recipes.items]] + name = "Soothing Stone" + amount = 3 + +[[recipes]] +result = "Moon Amulet" +set = 37 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Pulsing Stone" + amount = 3 + + [[recipes.items]] + name = "Writhing Stone" + amount = 3 + +[[recipes]] +result = "Fire Chain" +set = 38 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Blazing Stone" + amount = 3 + + [[recipes.items]] + name = "Sinister Stone" + amount = 1 + + [[recipes.items]] + name = "Sinister Shard" + amount = 2 + +[[recipes]] +result = "Thunder Chain" +set = 39 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Lightning Stone" + amount = 3 + + [[recipes.items]] + name = "Sinister Stone" + amount = 1 + + [[recipes.items]] + name = "Sinister Shard" + amount = 2 + +[[recipes]] +result = "Draw Ring" +set = 40 + + [[recipes.items]] + name = "Mythril Shard" + amount = 3 + + [[recipes.items]] + name = "Pulsing Shard" + amount = 5 + + [[recipes.items]] + name = "Betwixt Stone" + amount = 1 + + [[recipes.items]] + name = "Twilight Stone" + amount = 1 + +[[recipes]] +result = "Insulator Rosette" +set = 41 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Wellspring Shard" + amount = 2 + + [[recipes.items]] + name = "Lightning Shard" + amount = 6 + +[[recipes]] +result = "Blizzard Chain" +set = 42 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Frost Stone" + amount = 3 + + [[recipes.items]] + name = "Sinister Stone" + amount = 1 + + [[recipes.items]] + name = "Sinister Shard" + amount = 2 + +[[recipes]] +result = "Snowman Rosette" +set = 43 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Wellspring Shard" + amount = 2 + + [[recipes.items]] + name = "Frost Shard" + amount = 6 + +[[recipes]] +result = "Fencer's Earring" +set = 44 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 3 + + [[recipes.items]] + name = "Pulsing Stone" + amount = 6 + +[[recipes]] +result = "Slayer's Earring" +set = 45 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Blazing Gem" + amount = 3 + + [[recipes.items]] + name = "Lightning Gem" + amount = 3 + + [[recipes.items]] + name = "Soothing Gem" + amount = 3 + +[[recipes]] +result = "Star Charm" +set = 46 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 3 + + [[recipes.items]] + name = "Writhing Gem" + amount = 3 + +[[recipes]] +result = "Aero Armlet" +set = 47 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Lucid Stone" + amount = 3 + + [[recipes.items]] + name = "Sinister Stone" + amount = 1 + + [[recipes.items]] + name = "Sinister Shard" + amount = 2 + +[[recipes]] +result = "Aqua Chaplet" +set = 48 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Soothing Stone" + amount = 3 + + [[recipes.items]] + name = "Sinister Stone" + amount = 1 + + [[recipes.items]] + name = "Sinister Shard" + amount = 2 + +[[recipes]] +result = "Dark Chain" +set = 49 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Writhing Stone" + amount = 3 + + [[recipes.items]] + name = "Sinister Stone" + amount = 1 + + [[recipes.items]] + name = "Sinister Shard" + amount = 2 + +[[recipes]] +result = "Petite Ribbon" +set = 50 + + [[recipes.items]] + name = "Orichalcum" + amount = 2 + + [[recipes.items]] + name = "Sinister Crystal" + amount = 1 + + [[recipes.items]] + name = "Betwixt Crystal" + amount = 1 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 1 + + [[recipes.items]] + name = "Hungry Shard" + amount = 3 + +[[recipes]] +result = "Fire Bangle" +set = 1 +order = 28 + + [[recipes.items]] + name = "Mythril Shard" + amount = 3 + + [[recipes.items]] + name = "Blazing Stone" + amount = 2 + + [[recipes.items]] + name = "Blazing Shard" + amount = 5 + +[[recipes]] +result = "Shadow Anklet" +set = 1 + + [[recipes.items]] + name = "Mythril Shard" + amount = 3 + + [[recipes.items]] + name = "Writhing Stone" + amount = 2 + + [[recipes.items]] + name = "Writhing Shard" + amount = 5 + +[[recipes]] +result = "Ability Ring+" +set = 1 + + [[recipes.items]] + name = "Mythril Shard" + amount = 2 + + [[recipes.items]] + name = "Lucid Shard" + amount = 6 + +[[recipes]] +result = "Elven Bandanna" +set = 2 + + [[recipes.items]] + name = "Mythril Shard" + amount = 3 + + [[recipes.items]] + name = "Soothing Stone" + amount = 2 + + [[recipes.items]] + name = "Soothing Shard" + amount = 5 + +[[recipes]] +result = "Thunder Trinket" +set = 2 + + [[recipes.items]] + name = "Mythril Shard" + amount = 3 + + [[recipes.items]] + name = "Lightning Stone" + amount = 2 + + [[recipes.items]] + name = "Lightning Shard" + amount = 5 + +[[recipes]] +result = "Blizzard Choker" +set = 2 + + [[recipes.items]] + name = "Mythril Shard" + amount = 3 + + [[recipes.items]] + name = "Frost Stone" + amount = 2 + + [[recipes.items]] + name = "Frost Shard" + amount = 5 + +[[recipes]] +result = "Mythril Shard" +set = 3 + + [[recipes.items]] + name = "Betwixt Shard" + amount = 1 + + [[recipes.items]] + name = "Twilight Shard" + amount = 1 + +[[recipes]] +result = "Wind Fan" +set = 4 + + [[recipes.items]] + name = "Mythril Shard" + amount = 3 + + [[recipes.items]] + name = "Lucid Stone" + amount = 2 + + [[recipes.items]] + name = "Lucid Shard" + amount = 5 + +[[recipes]] +result = "AP Boost" +set = 4 +order = 12 + + [[recipes.items]] + name = "Wellspring Stone" + amount = 3 + + [[recipes.items]] + name = "Betwixt Shard" + amount = 3 + + [[recipes.items]] + name = "Twilight Shard" + amount = 3 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + + [[recipes.items]] + name = "Hungry Shard" + amount = 2 + +[[recipes]] +result = "Fira Bangle" +set = 5 +order = 29 + + [[recipes.items]] + name = "Mythril Stone" + amount = 3 + + [[recipes.items]] + name = "Blazing Stone" + amount = 2 + + [[recipes.items]] + name = "Blazing Shard" + amount = 5 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Thundara Trinket" +set = 5 + + [[recipes.items]] + name = "Mythril Stone" + amount = 3 + + [[recipes.items]] + name = "Lightning Stone" + amount = 2 + + [[recipes.items]] + name = "Lightning Shard" + amount = 5 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Blizzara Choker" +set = 5 + + [[recipes.items]] + name = "Mythril Stone" + amount = 3 + + [[recipes.items]] + name = "Frost Stone" + amount = 2 + + [[recipes.items]] + name = "Frost Shard" + amount = 5 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Technician's Ring+" +set = 6 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Lucid Stone" + amount = 6 + +[[recipes]] +result = "Hi-Ether" +set = 6 +order = 3 + + [[recipes.items]] + name = "Wellspring Stone" + amount = 3 + + [[recipes.items]] + name = "Lightning Stone" + amount = 3 + + [[recipes.items]] + name = "Writhing Stone" + amount = 3 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Mega-Potion" +set = 6 +order = 1 + + [[recipes.items]] + name = "Lucid Shard" + amount = 3 + + [[recipes.items]] + name = "Soothing Shard" + amount = 3 + + [[recipes.items]] + name = "Pulsing Shard" + amount = 3 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Dark Anklet" +set = 7 + + [[recipes.items]] + name = "Mythril Stone" + amount = 3 + + [[recipes.items]] + name = "Writhing Stone" + amount = 2 + + [[recipes.items]] + name = "Writhing Shard" + amount = 5 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Mythril Stone" +set = 7 + + [[recipes.items]] + name = "Betwixt Stone" + amount = 1 + + [[recipes.items]] + name = "Twilight Stone" + amount = 1 + +[[recipes]] +result = "Warhammer+" +set = 8 +order = 14 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Fluorite" + amount = 1 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 1 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Clockwork Shield+" +set = 8 +order = 20 + + [[recipes.items]] + name = "Mythril Stone" + amount = 2 + + [[recipes.items]] + name = "Fluorite" + amount = 1 + + [[recipes.items]] + name = "Lucid Gem" + amount = 1 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Skill Ring+" +set = 8 + + [[recipes.items]] + name = "Mythril Gem" + amount = 2 + + [[recipes.items]] + name = "Lucid Gem" + amount = 6 + +[[recipes]] +result = "Refocuser" +set = 9 +order = 5 + + [[recipes.items]] + name = "Blazing Shard" + amount = 3 + + [[recipes.items]] + name = "Lightning Shard" + amount = 3 + + [[recipes.items]] + name = "Lucid Shard" + amount = 3 + + [[recipes.items]] + name = "Hungry Shard" + amount = 1 + +[[recipes]] +result = "Mega-Ether" +set = 9 +order = 4 + + [[recipes.items]] + name = "Wellspring Stone" + amount = 3 + + [[recipes.items]] + name = "Lightning Stone" + amount = 3 + + [[recipes.items]] + name = "Writhing Stone" + amount = 3 + + [[recipes.items]] + name = "Hungry Gem" + amount = 1 + +[[recipes]] +result = "Strength Boost" +set = 10 +order = 9 + + [[recipes.items]] + name = "Wellspring Gem" + amount = 5 + + [[recipes.items]] + name = "Soothing Crystal" + amount = 2 + + [[recipes.items]] + name = "Pulsing Crystal" + amount = 2 + + [[recipes.items]] + name = "Writhing Crystal" + amount = 2 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 1 + +[[recipes]] +result = "Magic Boost" +set = 10 +order = 10 + + [[recipes.items]] + name = "Wellspring Gem" + amount = 5 + + [[recipes.items]] + name = "Blazing Crystal" + amount = 2 + + [[recipes.items]] + name = "Frost Crystal" + amount = 2 + + [[recipes.items]] + name = "Lightning Crystal" + amount = 2 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 1 + +[[recipes]] +result = "Defense Boost" +set = 10 +order = 11 + + [[recipes.items]] + name = "Wellspring Gem" + amount = 5 + + [[recipes.items]] + name = "Lucid Crystal" + amount = 2 + + [[recipes.items]] + name = "Twilight Crystal" + amount = 2 + + [[recipes.items]] + name = "Sinister Gem" + amount = 2 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 1 + +[[recipes]] +result = "Firaga Bangle" +set = 11 +order = 30 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Blazing Gem" + amount = 2 + + [[recipes.items]] + name = "Blazing Stone" + amount = 5 + +[[recipes]] +result = "Blizzaga Choker" +set = 11 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Frost Gem" + amount = 2 + + [[recipes.items]] + name = "Frost Stone" + amount = 5 + +[[recipes]] +result = "Thundaga Trinket" +set = 11 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Lightning Gem" + amount = 2 + + [[recipes.items]] + name = "Lightning Stone" + amount = 5 + +[[recipes]] +result = "Divine Bandanna" +set = 12 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Soothing Gem" + amount = 2 + + [[recipes.items]] + name = "Soothing Stone" + amount = 5 + +[[recipes]] +result = "Storm Fan" +set = 12 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Lucid Gem" + amount = 2 + + [[recipes.items]] + name = "Lucid Stone" + amount = 5 + +[[recipes]] +result = "Midnight Anklet" +set = 12 + + [[recipes.items]] + name = "Mythril Gem" + amount = 3 + + [[recipes.items]] + name = "Writhing Gem" + amount = 2 + + [[recipes.items]] + name = "Writhing Stone" + amount = 5 + +[[recipes]] +result = "Pulsing Crystal" +set = 13 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 2 + + [[recipes.items]] + name = "Pulsing Stone" + amount = 3 + + [[recipes.items]] + name = "Pulsing Shard" + amount = 5 + +[[recipes]] +result = "Blazing Crystal" +set = 13 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Blazing Gem" + amount = 2 + + [[recipes.items]] + name = "Blazing Stone" + amount = 3 + + [[recipes.items]] + name = "Blazing Shard" + amount = 5 + +[[recipes]] +result = "Frost Crystal" +set = 13 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Frost Gem" + amount = 2 + + [[recipes.items]] + name = "Frost Stone" + amount = 3 + + [[recipes.items]] + name = "Frost Shard" + amount = 5 + +[[recipes]] +result = "Lightning Crystal" +set = 13 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Lightning Gem" + amount = 2 + + [[recipes.items]] + name = "Lightning Stone" + amount = 3 + + [[recipes.items]] + name = "Lightning Shard" + amount = 5 + +[[recipes]] +result = "Hi-Refocuser" +set = 14 +order = 6 + + [[recipes.items]] + name = "Blazing Stone" + amount = 3 + + [[recipes.items]] + name = "Lightning Stone" + amount = 3 + + [[recipes.items]] + name = "Lucid Stone" + amount = 3 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Mythril Gem" +set = 14 + + [[recipes.items]] + name = "Betwixt Gem" + amount = 1 + + [[recipes.items]] + name = "Twilight Gem" + amount = 1 + +[[recipes]] +result = "Lucid Crystal" +set = 14 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Lucid Gem" + amount = 2 + + [[recipes.items]] + name = "Lucid Stone" + amount = 3 + + [[recipes.items]] + name = "Lucid Shard" + amount = 5 + +[[recipes]] +result = "Soothing Crystal" +set = 14 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Soothing Gem" + amount = 2 + + [[recipes.items]] + name = "Soothing Stone" + amount = 3 + + [[recipes.items]] + name = "Soothing Shard" + amount = 5 + +[[recipes]] +result = "Phantom Ring" +set = 15 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 2 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 1 + + [[recipes.items]] + name = "Pulsing Stone" + amount = 3 + +[[recipes]] +result = "Sorcerer's Ring" +set = 15 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 2 + + [[recipes.items]] + name = "Sinister Gem" + amount = 1 + + [[recipes.items]] + name = "Sinister Stone" + amount = 3 + +[[recipes]] +result = "Writhing Crystal" +set = 15 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Writhing Gem" + amount = 2 + + [[recipes.items]] + name = "Writhing Stone" + amount = 3 + + [[recipes.items]] + name = "Writhing Shard" + amount = 5 + +[[recipes]] +result = "Firaza Bangle" +set = 16 +order = 31 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 3 + + [[recipes.items]] + name = "Blazing Gem" + amount = 2 + + [[recipes.items]] + name = "Blazing Stone" + amount = 5 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Blizzaza Choker" +set = 16 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 3 + + [[recipes.items]] + name = "Frost Gem" + amount = 2 + + [[recipes.items]] + name = "Frost Stone" + amount = 5 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Thundaza Trinket" +set = 16 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 3 + + [[recipes.items]] + name = "Lightning Gem" + amount = 2 + + [[recipes.items]] + name = "Lightning Stone" + amount = 5 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Chaos Anklet" +set = 17 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 3 + + [[recipes.items]] + name = "Writhing Gem" + amount = 2 + + [[recipes.items]] + name = "Writhing Stone" + amount = 5 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Acrisius" +set = 17 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 3 + + [[recipes.items]] + name = "Blazing Crystal" + amount = 1 + + [[recipes.items]] + name = "Frost Crystal" + amount = 1 + + [[recipes.items]] + name = "Lightning Crystal" + amount = 1 + +[[recipes]] +result = "Aegis Shield+" +set = 18 +order = 21 + + [[recipes.items]] + name = "Mythril Gem" + amount = 2 + + [[recipes.items]] + name = "Adamantite" + amount = 1 + + [[recipes.items]] + name = "Frost Gem" + amount = 2 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 2 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Astrolabe+" +set = 18 +order = 15 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 2 + + [[recipes.items]] + name = "Electrum" + amount = 1 + + [[recipes.items]] + name = "Lightning Gem" + amount = 2 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 2 + + [[recipes.items]] + name = "Hungry Stone" + amount = 1 + +[[recipes]] +result = "Elixir" +set = 18 +order = 7 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 3 + + [[recipes.items]] + name = "Frost Gem" + amount = 2 + + [[recipes.items]] + name = "Sinister Stone" + amount = 2 + + [[recipes.items]] + name = "Sinister Shard" + amount = 2 + + [[recipes.items]] + name = "Hungry Gem" + amount = 2 + +[[recipes]] +result = "Mythril Crystal" +set = 18 + + [[recipes.items]] + name = "Betwixt Crystal" + amount = 1 + + [[recipes.items]] + name = "Twilight Crystal" + amount = 1 + +[[recipes]] +result = "Buster Band" +set = 19 +order = 26 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 2 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Wellspring Gem" + amount = 2 + + [[recipes.items]] + name = "Twilight Gem" + amount = 2 + +[[recipes]] +result = "Orichalcum Ring" +set = 19 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Pulsing Crystal" + amount = 1 + + [[recipes.items]] + name = "Pulsing Gem" + amount = 3 + +[[recipes]] +result = "Wisdom Ring" +set = 19 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Sinister Crystal" + amount = 1 + + [[recipes.items]] + name = "Sinister Gem" + amount = 3 + +[[recipes]] +result = "Heartless Maul" +set = 20 +order = 16 + + [[recipes.items]] + name = "Illusory Crystal" + amount = 1 + + [[recipes.items]] + name = "Damascus" + amount = 2 + + [[recipes.items]] + name = "Writhing Crystal" + amount = 1 + + [[recipes.items]] + name = "Writhing Gem" + amount = 2 + +[[recipes]] +result = "Nobody Guard" +set = 20 +order = 22 + + [[recipes.items]] + name = "Evanescent Crystal" + amount = 1 + + [[recipes.items]] + name = "Damascus" + amount = 2 + + [[recipes.items]] + name = "Betwixt Gem" + amount = 2 + + [[recipes.items]] + name = "Twilight Gem" + amount = 2 + +[[recipes]] +result = "Buster Band+" +set = 21 +order = 27 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 2 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 1 + + [[recipes.items]] + name = "Wellspring Gem" + amount = 2 + + [[recipes.items]] + name = "Twilight Gem" + amount = 2 + + [[recipes.items]] + name = "Hungry Gem" + amount = 1 + +[[recipes]] +result = "Acrisius+" +set = 21 + + [[recipes.items]] + name = "Mythril Crystal" + amount = 3 + + [[recipes.items]] + name = "Blazing Crystal" + amount = 1 + + [[recipes.items]] + name = "Frost Crystal" + amount = 1 + + [[recipes.items]] + name = "Lightning Crystal" + amount = 1 + + [[recipes.items]] + name = "Hungry Gem" + amount = 1 + +[[recipes]] +result = "Megalixir" +set = 21 +order = 8 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 3 + + [[recipes.items]] + name = "Frost Crystal" + amount = 2 + + [[recipes.items]] + name = "Sinister Crystal" + amount = 2 + + [[recipes.items]] + name = "Sinister Gem" + amount = 2 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 2 + +[[recipes]] +result = "Heartless Maul+" +set = 22 +order = 17 + + [[recipes.items]] + name = "Illusory Crystal" + amount = 1 + + [[recipes.items]] + name = "Damascus" + amount = 2 + + [[recipes.items]] + name = "Writhing Crystal" + amount = 1 + + [[recipes.items]] + name = "Writhing Gem" + amount = 2 + + [[recipes.items]] + name = "Hungry Gem" + amount = 2 + +[[recipes]] +result = "Nobody Guard+" +set = 22 +order = 23 + + [[recipes.items]] + name = "Evanescent Crystal" + amount = 1 + + [[recipes.items]] + name = "Damascus" + amount = 2 + + [[recipes.items]] + name = "Betwixt Gem" + amount = 2 + + [[recipes.items]] + name = "Twilight Gem" + amount = 2 + + [[recipes.items]] + name = "Hungry Gem" + amount = 2 + +[[recipes]] +result = "Save the Queen" +set = 23 +order = 18 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Frost Crystal" + amount = 1 + + [[recipes.items]] + name = "Lucid Crystal" + amount = 1 + + [[recipes.items]] + name = "Soothing Crystal" + amount = 1 + +[[recipes]] +result = "Save the King" +set = 23 +order = 24 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Blazing Crystal" + amount = 1 + + [[recipes.items]] + name = "Lightning Crystal" + amount = 1 + + [[recipes.items]] + name = "Pulsing Crystal" + amount = 1 + +[[recipes]] +result = "Cosmic Chain" +set = 23 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Lucid Crystal" + amount = 1 + + [[recipes.items]] + name = "Soothing Crystal" + amount = 1 + + [[recipes.items]] + name = "Writhing Crystal" + amount = 1 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 1 + +[[recipes]] +result = "Save the Queen+" +set = 24 +order = 19 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Frost Crystal" + amount = 1 + + [[recipes.items]] + name = "Lucid Crystal" + amount = 1 + + [[recipes.items]] + name = "Soothing Crystal" + amount = 1 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 1 + +[[recipes]] +result = "Save the King+" +set = 24 +order = 25 + + [[recipes.items]] + name = "Orichalcum" + amount = 1 + + [[recipes.items]] + name = "Blazing Crystal" + amount = 1 + + [[recipes.items]] + name = "Lightning Crystal" + amount = 1 + + [[recipes.items]] + name = "Pulsing Crystal" + amount = 1 + + [[recipes.items]] + name = "Hungry Crystal" + amount = 1 + +[[recipes]] +result = "Ultima Weapon" +set = 24 +order = 13 + + [[recipes.items]] + name = "Orichalcum+" + amount = 7 + + [[recipes.items]] + name = "Wellspring Crystal" + amount = 2 + + [[recipes.items]] + name = "Lucid Crystal" + amount = 2 + + [[recipes.items]] + name = "Pulsing Crystal" + amount = 2 diff --git a/public/scripts/kh1/synth.js b/public/scripts/common/synth.js similarity index 100% rename from public/scripts/kh1/synth.js rename to public/scripts/common/synth.js diff --git a/public/styles/kh1/synth.css b/public/styles/common/synth.css similarity index 96% rename from public/styles/kh1/synth.css rename to public/styles/common/synth.css index f9d46c9..4845475 100644 --- a/public/styles/kh1/synth.css +++ b/public/styles/common/synth.css @@ -1,6 +1,6 @@ #mats { position: fixed; - width: 20%; + width: 18%; height: 100%; h1 { @@ -12,11 +12,11 @@ ul { display: flex; flex-direction: column; - flex-wrap: wrap; height: 90%; list-style: none; line-height: 2; user-select: none; + overflow: scroll; li { cursor: pointer; diff --git a/src/kh3.rs b/src/kh3.rs index 8bd5ccb..5ae7351 100644 --- a/src/kh3.rs +++ b/src/kh3.rs @@ -5,7 +5,7 @@ use pro_codes::{ProCode, ProCodeFight, ProCodeFights, ProCodes}; use crate::{ RuntimeModule, - common::{Game, drops::Drops, enemy::Enemy}, + common::{Game, drops::Drops, enemy::Enemy, synthesis::Synthesis}, create_file, }; @@ -18,6 +18,7 @@ const RECIPES_PATH: &str = "./input/kh3/recipes.toml"; const INGREDIENTS_PATH: &str = "./input/kh3/ingredients"; const PRO_CODES_PATH: &str = "./input/kh3/pro-codes/codes.toml"; const PRO_CODE_FIGHTS_PATH: &str = "./input/kh3/pro-codes/fights.toml"; +const SYNTHESIS_PATH: &str = "./input/kh3/synthesis.toml"; #[derive(Template)] #[template(path = "pages/kh3/drops.html")] @@ -44,6 +45,12 @@ struct ProCodesTemplate { pub fights: Vec, } +#[derive(Template)] +#[template(path = "pages/kh3/synth.html")] +struct SynthTemplate { + pub data: Synthesis, +} + pub struct Module; impl RuntimeModule for Module { @@ -65,6 +72,9 @@ impl RuntimeModule for Module { let pro_code_fights_str = std::fs::read_to_string(PRO_CODE_FIGHTS_PATH).unwrap(); let pro_code_fights = toml::from_str::(&pro_code_fights_str).unwrap(); + tracing::info!("Loading KH3 synthesis data from {}", SYNTHESIS_PATH); + let synth = Synthesis::new(SYNTHESIS_PATH); + tracing::info!("Generating KH3 drops template"); let drops_template = DropsTemplate { data: drops }; create_file("./out/kh3", "drops", drops_template).unwrap(); @@ -83,5 +93,9 @@ impl RuntimeModule for Module { fights: pro_code_fights.fights, }; create_file("./out/kh3", "pro-codes-sim", pro_codes_template).unwrap(); + + tracing::info!("Generating KH3 synth template"); + let synth_template = SynthTemplate { data: synth }; + create_file("./out/kh3", "synth", synth_template).unwrap(); } } diff --git a/templates/components/common/synth.html b/templates/components/common/synth.html new file mode 100644 index 0000000..d3d2a39 --- /dev/null +++ b/templates/components/common/synth.html @@ -0,0 +1,30 @@ +
+
+ {% for recipe in data.recipes %} +
+ + +
+ {% endfor %} +
diff --git a/templates/pages/index.html b/templates/pages/index.html index 9fcb4ed..fa4c333 100644 --- a/templates/pages/index.html +++ b/templates/pages/index.html @@ -10,6 +10,7 @@

Kingdom Hearts III