Compare commits

...

2 Commits

89 changed files with 1837 additions and 535 deletions

View File

@ -1,3 +1,32 @@
[[sets]]
id = 1
name = "List I"
[[sets]]
id = 2
name = "List II"
requirement = "Create three unique items"
[[sets]]
id = 3
name = "List III"
requirement = "Create nine unique items"
[[sets]]
id = 4
name = "List IV"
requirement = "Create fifteen unique items"
[[sets]]
id = 5
name = "List V"
requirement = "Create all items so far"
[[sets]]
id = 6
name = "List VI"
requirement = "Create all items so far"
[[recipes]]
result = "Mega-Potion"
set = 1

View File

@ -1,33 +0,0 @@
kind = "blazing"
[[shard]]
from = "Hammer Frame"
chance = 10
[[shard]]
from = "Minute Bomb"
chance = 6
[[stone]]
from = "Cannon Gun"
chance = 6
[[stone]]
from = "Tornado Step"
chance = 8
[[gem]]
from = "Fat Bandit"
chance = 12
[[gem]]
from = "Fiery Globe"
chance = 4
[[crystal]]
from = "Crescendo"
chance = 6
[[crystal]]
from = "Crimson Jazz"
chance = 12

View File

@ -1,77 +0,0 @@
kind = "bright"
[[shard]]
from = "Creeper Plant"
chance = 4
[[shard]]
from = "Hook Bat"
chance = 3
[[shard]]
from = "Minute Bomb"
chance = 3
[[shard]]
from = "Rabid Dog"
chance = 3
[[shard]]
from = "Soldier"
chance = 4
[[stone]]
from = "Aeroplane"
chance = 4
[[stone]]
from = "Cannon Gun"
chance = 3
[[stone]]
from = "Driller Mole"
chance = 4
[[stone]]
from = "Luna Bandit"
chance = 4
[[stone]]
from = "Silver Rock"
chance = 3
[[stone]]
from = "Tornado Step"
chance = 4
[[stone]]
from = "Wight Knight"
chance = 4
[[gem]]
from = "Aerial Knocker"
chance = 4
[[gem]]
from = "Magnum Loader"
chance = 4
[[gem]]
from = "Surveillance Robot"
chance = 3
[[crystal]]
from = "Air Pirate"
chance = 4
[[crystal]]
from = "Crescendo"
chance = 3
[[crystal]]
from = "Neoshadow"
chance = 4
[[crystal]]
from = "Strafer"
chance = 4

View File

@ -1,29 +0,0 @@
kind = "dark"
[[shard]]
from = "Shadow"
chance = 4
[[shard]]
from = "Soldier"
chance = 8
[[stone]]
from = "Assault Rider"
chance = 12
[[stone]]
from = "Nightwalker"
chance = 10
[[gem]]
from = "Gargoyle Knight"
chance = 10
[[gem]]
from = "Gargoyle Warrior"
chance = 8
[[crystal]]
from = "Air Pirate"
chance = 8

View File

@ -1,21 +0,0 @@
kind = "dense"
[[shard]]
from = "Creeper"
chance = 8
[[shard]]
from = "Dragoon"
chance = 12
[[stone]]
from = "Sniper"
chance = 12
[[gem]]
from = "Samurai"
chance = 12
[[crystal]]
from = "Berserker"
chance = 12

View File

@ -1,45 +0,0 @@
kind = "energy"
[[shard]]
from = "Bolt Tower"
chance = 4
[[shard]]
from = "Gargoyle Knight"
chance = 4
[[shard]]
from = "Gargoyle Warrior"
chance = 4
[[shard]]
from = "Nightwalker"
chance = 4
[[stone]]
from = "Hammer Frame"
chance = 4
[[stone]]
from = "Lance Soldier"
chance = 4
[[stone]]
from = "Trick Ghost"
chance = 4
[[gem]]
from = "Emerald Blues"
chance = 4
[[gem]]
from = "Fortuneteller"
chance = 4
[[crystal]]
from = "Bookmaster"
chance = 4
[[crystal]]
from = "Shaman"
chance = 4

View File

@ -1,29 +0,0 @@
kind = "frost"
[[shard]]
from = "Hook Bat"
chance = 6
[[shard]]
from = "Lance Soldier"
chance = 10
[[stone]]
from = "Aeroplane"
chance = 8
[[stone]]
from = "Hot Rod"
chance = 12
[[gem]]
from = "Fortuneteller"
chance = 8
[[gem]]
from = "Icy Cube"
chance = 4
[[crystal]]
from = "Living Bone"
chance = 12

View File

@ -1,33 +0,0 @@
kind = "lightning"
[[shard]]
from = "Bolt Tower"
chance = 10
[[shard]]
from = "Rapid Thruster"
chance = 4
[[stone]]
from = "Driller Mole"
chance = 6
[[stone]]
from = "Emerald Blues"
chance = 10
[[gem]]
from = "Armored Knight"
chance = 12
[[gem]]
from = "Surveillance Robot"
chance = 8
[[crystal]]
from = "Devastator"
chance = 4
[[crystal]]
from = "Strafer"
chance = 6

View File

@ -1,33 +0,0 @@
kind = "lucid"
[[shard]]
from = "Rabid Dog"
chance = 6
[[shard]]
from = "Trick Ghost"
chance = 10
[[stone]]
from = "Graveyard"
chance = 12
[[stone]]
from = "Toy Soldier"
chance = 12
[[stone]]
from = "Wight Knight"
chance = 8
[[gem]]
from = "Bookmaster"
chance = 10
[[gem]]
from = "Magnum Loader"
chance = 8
[[crystal]]
from = "Neoshadow"
chance = 8

View File

@ -1,29 +0,0 @@
kind = "power"
[[shard]]
from = "Creeper Plant"
chance = 8
[[shard]]
from = "Large Body"
chance = 12
[[stone]]
from = "Luna Bandit"
chance = 8
[[stone]]
from = "Silver Rock"
chance = 8
[[gem]]
from = "Aerial Knocker"
chance = 8
[[gem]]
from = "Shaman"
chance = 10
[[crystal]]
from = "Morning Star"
chance = 12

View File

@ -1,45 +0,0 @@
kind = "remembrance"
[[shard]]
from = "Beffudler"
chance = 6
[[shard]]
from = "Iron Hammer"
chance = 10
[[shard]]
from = "Camo Cannon"
chance = 6
[[stone]]
from = "Aerial Viking"
chance = 6
[[stone]]
from = "Magic Phantom"
chance = 10
[[stone]]
from = "Lance Warrior"
chance = 10
[[stone]]
from = "Necromancer"
chance = 10
[[gem]]
from = "Spring Metal"
chance = 10
[[gem]]
from = "Runemaster"
chance = 10
[[gem]]
from = "Mad Ride"
chance = 12
[[crystal]]
from = "Reckless"
chance = 12

View File

@ -1,117 +0,0 @@
kind = "serenity"
[[shard]]
from = "Assault Rider"
chance = 4
[[shard]]
from = "Creeper"
chance = 2
[[shard]]
from = "Fat Bandit"
chance = 4
[[shard]]
from = "Graveyard"
chance = 4
[[shard]]
from = "Hot Rod"
chance = 4
[[shard]]
from = "Large Body"
chance = 4
[[shard]]
from = "Toy Soldier"
chance = 4
[[shard]]
from = "Beffudler"
chance = 3
[[shard]]
from = "Camo Cannon"
chance = 3
[[shard]]
from = "Iron Hammer"
chance = 4
[[shard]]
from = "Bulky Vendor"
chance = 100
note = "Using Capsule Prize reaction"
[[stone]]
from = "Crimson Jazz"
chance = 4
[[stone]]
from = "Devastator"
chance = 4
[[stone]]
from = "Dusk"
chance = 2
[[stone]]
from = "Living Bone"
chance = 4
[[stone]]
from = "Morning Star"
chance = 4
[[stone]]
from = "Aerial Champ"
chance = 4
[[stone]]
from = "Aerial Viking"
chance = 4
[[stone]]
from = "Lance Warrior"
chance = 4
[[stone]]
from = "Magic Phantom"
chance = 4
[[stone]]
from = "Necromancer"
chance = 4
[[stone]]
from = "Bulky Vendor"
chance = 100
note = "Using Rare Capsule reaction"
[[gem]]
from = "Mad Ride"
chance = 4
[[gem]]
from = "Reckless"
chance = 4
[[gem]]
from = "Runemaster"
chance = 4
[[gem]]
from = "Spring Metal"
chance = 4
[[gem]]
from = "Bulky Vendor"
chance = 100
note = "Using Limited Capsule reaction"
[[crystal]]
from = "Bulky Vendor"
chance = 100
note = "Using Prime Capsule reaction"

View File

@ -1,21 +0,0 @@
kind = "twilight"
[[shard]]
from = "Dusk"
chance = 10
[[shard]]
from = "Gambler"
chance = 12
[[stone]]
from = "Dancer"
chance = 12
[[gem]]
from = "Assassin"
chance = 12
[[crystal]]
from = "Sorcerer"
chance = 12

View File

@ -0,0 +1,22 @@
name = "Aerial Champ"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Stone"
kind = "material"
chance = 8
[drops.material]
category = "remembrance"
kind = "stone"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"

View File

@ -0,0 +1,22 @@
name = "Aerial Knocker"
[[world]]
name = "Pride Lands"
[[drops]]
name = "Power Gem"
kind = "material"
chance = 8
[drops.material]
category = "power"
kind = "gem"
[[drops]]
name = "Bright Gem"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "gem"

View File

@ -0,0 +1,22 @@
name = "Aerial Viking"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Stone"
kind = "material"
chance = 6
[drops.material]
category = "remembrance"
kind = "stone"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"

View File

@ -0,0 +1,22 @@
name = "Aeroplane"
[[world]]
name = "Timeless River"
[[drops]]
name = "Frost Stone"
kind = "material"
chance = 8
[drops.material]
category = "frost"
kind = "stone"
[[drops]]
name = "Bright Stone"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "stone"

View File

@ -0,0 +1,25 @@
name = "Air Pirate"
[[world]]
name = "Port Royal"
[[world]]
name = "The Land of Dragons"
[[drops]]
name = "Dark Crystal"
kind = "material"
chance = 8
[drops.material]
category = "dark"
kind = "crystal"
[[drops]]
name = "Bright Crystal"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "crystal"

View File

@ -0,0 +1,25 @@
name = "Armored Knight"
[[world]]
name = "Radiant Garden"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Port Royal"
[[world]]
name = "Halloween Town"
[[world]]
name = "Pride Lands"
[[drops]]
name = "Lightning Gem"
kind = "material"
chance = 4
[drops.material]
category = "lightning"
kind = "gem"

View File

@ -0,0 +1,14 @@
name = "Assassin"
kind = "nobody"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Twilight Gem"
kind = "material"
chance = 12
[drops.material]
category = "twilight"
kind = "gem"

View File

@ -0,0 +1,27 @@
name = "Assault Rider"
[[world]]
name = "The Land of Dragons"
[[drops]]
name = "Dark Stone"
kind = "material"
chance = 12
[drops.material]
category = "dark"
kind = "stone"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "shard"
[[drops]]
name = "Hi-Potion"
kind = "item"
chance = 10

View File

@ -0,0 +1,22 @@
name = "Beffudler"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Shard"
kind = "material"
chance = 6
[drops.material]
category = "remembrance"
kind = "shard"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 3
[drops.material]
category = "serenity"
kind = "shard"

View File

@ -0,0 +1,20 @@
name = "Berserker"
kind = "nobody"
[[world]]
name = "Twilight Town"
[[world]]
name = "Radiant Garden"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Dense Crystal"
kind = "material"
chance = 12
[drops.material]
category = "dense"
kind = "crystal"

View File

@ -0,0 +1,25 @@
name = "Bolt Tower"
[[world]]
name = "The Land of Dragons"
[[world]]
name = "Pride Lands"
[[drops]]
name = "Lightning Shard"
kind = "material"
chance = 10
[drops.material]
category = "lightning"
kind = "shard"
[[drops]]
name = "Energy Shard"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "shard"

View File

@ -0,0 +1,30 @@
name = "Bookmaster"
[[world]]
name = "Radiant Garden"
[[world]]
name = "Space Paranoids"
[[drops]]
name = "Lucid Gem"
kind = "material"
chance = 10
[drops.material]
category = "lucid"
kind = "gem"
[[drops]]
name = "Energy Crystal"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "crystal"
[[drops]]
name = "Akashic Record"
kind = "equipment"
chance = 1

View File

@ -0,0 +1,96 @@
name = "Bulky Vendor"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Halloween Town"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Agrabah"
[[world]]
name = "The Land of Dragons"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 100
info = "Using Capsule Prize reaction command"
[drops.material]
category = "serenity"
kind = "shard"
[[drops]]
name = "Orichalcum"
kind = "material"
chance = 8
info = "Using Capsule Prize reaction command"
[drops.material]
category = "orichalcum"
kind = "gem"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 100
info = "Using Rare Capsule reaction command"
[drops.material]
category = "serenity"
kind = "stone"
[[drops]]
name = "Orichalcum"
kind = "material"
chance = 10
info = "Using Rare Capsule reaction command"
[drops.material]
category = "orichalcum"
kind = "gem"
[[drops]]
name = "Serenity Gem"
kind = "material"
chance = 100
info = "Using Limited Capsule reaction command"
[drops.material]
category = "serenity"
kind = "gem"
[[drops]]
name = "Orichalcum"
kind = "material"
chance = 16
info = "Using Limited Capsule reaction command"
[drops.material]
category = "orichalcum"
kind = "gem"
[[drops]]
name = "Serenity Crystal"
kind = "material"
chance = 100
info = "Using Prime Capsule reaction command"
[drops.material]
category = "serenity"
kind = "crystal"
[[drops]]
name = "Orichalcum"
kind = "material"
chance = 16
info = "Using Prime Capsule reaction command"
[drops.material]
category = "orichalcum"
kind = "gem"

View File

@ -0,0 +1,22 @@
name = "Camo Cannon"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Shard"
kind = "material"
chance = 6
[drops.material]
category = "remembrance"
kind = "shard"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 3
[drops.material]
category = "serenity"
kind = "shard"

View File

@ -0,0 +1,25 @@
name = "Cannon Gun"
[[world]]
name = "Port Royal"
[[world]]
name = "Space Paranoids"
[[drops]]
name = "Blazing Stone"
kind = "material"
chance = 6
[drops.material]
category = "blazing"
kind = "stone"
[[drops]]
name = "Bright Stone"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "stone"

View File

@ -0,0 +1,25 @@
name = "Creeper Plant"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Halloween Town"
[[drops]]
name = "Power Shard"
kind = "material"
chance = 8
[drops.material]
category = "power"
kind = "shard"
[[drops]]
name = "Bright Shard"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "shard"

View File

@ -0,0 +1,20 @@
name = "Creeper"
kind = "nobody"
[[world]]
name = "Twilight Town"
[[world]]
name = "Radiant Garden"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Dense Shard"
kind = "material"
chance = 8
[drops.material]
category = "dense"
kind = "shard"

View File

@ -0,0 +1,22 @@
name = "Crescendo"
[[world]]
name = "Olympus Coliseum"
[[drops]]
name = "Blazing Crystal"
kind = "material"
chance = 6
[drops.material]
category = "blazing"
kind = "crystal"
[[drops]]
name = "Bright Crystal"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "crystal"

View File

@ -0,0 +1,36 @@
name = "Crimson Jazz"
[[world]]
name = "Agrabah"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Blazing Crystal"
kind = "material"
chance = 12
[drops.material]
category = "blazing"
kind = "crystal"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"
[[drops]]
name = "Mega-Ether"
kind = "item"
chance = 5

View File

@ -0,0 +1,23 @@
name = "Dancer"
kind = "nobody"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Twilight Stone"
kind = "material"
chance = 12
[drops.material]
category = "twilight"
kind = "stone"
[[drops]]
name = "Serenity Gem"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "gem"

View File

@ -0,0 +1,25 @@
name = "Dragoon"
kind = "nobody"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Twilight Town"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Dense Shard"
kind = "material"
chance = 12
[drops.material]
category = "dense"
kind = "shard"
[[drops]]
name = "Nobody Lance"
kind = "equipment"
chance = 1

View File

@ -0,0 +1,31 @@
name = "Devastator"
[[world]]
name = "Space Paranoids"
best = true
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Lightning Crystal"
kind = "material"
chance = 12
[drops.material]
category = "lightning"
kind = "crystal"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"
[[drops]]
name = "Elixir"
kind = "item"
chance = 5

View File

@ -0,0 +1,25 @@
name = "Driller Mole"
[[world]]
name = "Halloween Town"
[[world]]
name = "Olympus Coliseum"
[[drops]]
name = "Lightning Stone"
kind = "material"
chance = 6
[drops.material]
category = "lightning"
kind = "stone"
[[drops]]
name = "Bright Stone"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "stone"

View File

@ -0,0 +1,14 @@
name = "Dusk"
kind = "nobody"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Twilight Shard"
kind = "material"
chance = 10
[drops.material]
category = "twilight"
kind = "shard"

View File

@ -0,0 +1,31 @@
name = "Emerald Blues"
[[world]]
name = "Halloween Town"
[[world]]
name = "Space Paranoids"
[[world]]
name = "The Land of Dragons"
[[world]]
name = "Agrabah"
[[drops]]
name = "Lightning Stone"
kind = "material"
chance = 10
[drops.material]
category = "lightning"
kind = "stone"
[[drops]]
name = "Energy Gem"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "gem"

View File

@ -0,0 +1,27 @@
name = "Fat Bandit"
[[world]]
name = "Agrabah"
[[drops]]
name = "Blazing Gem"
kind = "material"
chance = 12
[drops.material]
category = "blazing"
kind = "gem"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "shard"
[[drops]]
name = "Ether"
kind = "item"
chance = 10

View File

@ -0,0 +1,13 @@
name = "Fiery Globe"
[[world]]
name = "Agrabah"
[[drops]]
name = "Blazing Gem"
kind = "material"
chance = 4
[drops.material]
category = "blazing"
kind = "gem"

View File

@ -0,0 +1,22 @@
name = "Fortuneteller"
[[world]]
name = "Agrabah"
[[drops]]
name = "Frost Gem"
kind = "material"
chance = 10
[drops.material]
category = "frost"
kind = "gem"
[[drops]]
name = "Energy Gem"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "gem"

View File

@ -0,0 +1,22 @@
name = "Gambler"
kind = "nobody"
[[world]]
name = "Port Royal"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Twilight Shard"
kind = "material"
chance = 12
[drops.material]
category = "twilight"
kind = "shard"
[[drops]]
name = "Nobody Guard"
kind = "equipment"
chance = 1

View File

@ -0,0 +1,22 @@
name = "Gargoyle Knight"
[[world]]
name = "Beast's Castle"
[[drops]]
name = "Dark Gem"
kind = "material"
chance = 10
[drops.material]
category = "dark"
kind = "gem"
[[drops]]
name = "Energy Shard"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "shard"

View File

@ -0,0 +1,22 @@
name = "Gargoyle Warrior"
[[world]]
name = "Beast's Castle"
[[drops]]
name = "Dark Gem"
kind = "material"
chance = 10
[drops.material]
category = "dark"
kind = "gem"
[[drops]]
name = "Energy Shard"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "shard"

View File

@ -0,0 +1,27 @@
name = "Graveyard"
[[world]]
name = "Halloween Town"
[[drops]]
name = "Lucid Stone"
kind = "material"
chance = 12
[drops.material]
category = "lucid"
kind = "stone"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "shard"
[[drops]]
name = "Ether"
kind = "item"
chance = 10

View File

@ -0,0 +1,28 @@
name = "Hammer Frame"
[[world]]
name = "Timeless River"
[[world]]
name = "Port Royal"
[[world]]
name = "Beast's Castle"
[[drops]]
name = "Blazing Shard"
kind = "material"
chance = 10
[drops.material]
category = "blazing"
kind = "shard"
[[drops]]
name = "Energy Stone"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "stone"

View File

@ -0,0 +1,31 @@
name = "Hook Bat"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "The Land of Dragons"
[[world]]
name = "Agrabah"
[[drops]]
name = "Frost Shard"
kind = "material"
chance = 6
[drops.material]
category = "frost"
kind = "shard"
[[drops]]
name = "Bright Shard"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "shard"

View File

@ -0,0 +1,27 @@
name = "Hot Rod"
[[world]]
name = "Timeless River"
[[drops]]
name = "Frost Stone"
kind = "material"
chance = 12
[drops.material]
category = "frost"
kind = "stone"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "shard"
[[drops]]
name = "Hi-Potion"
kind = "item"
chance = 10

View File

@ -0,0 +1,13 @@
name = "Icy Cube"
[[world]]
name = "Agrabah"
[[drops]]
name = "Frost Gem"
kind = "material"
chance = 4
[drops.material]
category = "frost"
kind = "gem"

View File

@ -0,0 +1,22 @@
name = "Iron Hammer"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Shard"
kind = "material"
chance = 10
[drops.material]
category = "remembrance"
kind = "shard"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "shard"

View File

@ -0,0 +1,28 @@
name = "Lance Soldier"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Port Royal"
[[drops]]
name = "Frost Shard"
kind = "material"
chance = 10
[drops.material]
category = "frost"
kind = "shard"
[[drops]]
name = "Energy Stone"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "stone"

View File

@ -0,0 +1,22 @@
name = "Lance Warrior"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Stone"
kind = "material"
chance = 10
[drops.material]
category = "remembrance"
kind = "stone"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"

View File

@ -0,0 +1,33 @@
name = "Large Body"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Timeless River"
[[drops]]
name = "Power Shard"
kind = "material"
chance = 12
[drops.material]
category = "power"
kind = "shard"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "shard"
[[drops]]
name = "Hi-Potion"
kind = "item"
chance = 10

View File

@ -0,0 +1,27 @@
name = "Living Bone"
[[world]]
name = "Pride Lands"
[[drops]]
name = "Frost Crystal"
kind = "material"
chance = 12
[drops.material]
category = "frost"
kind = "crystal"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"
[[drops]]
name = "Elixir"
kind = "item"
chance = 5

View File

@ -0,0 +1,22 @@
name = "Luna Bandit"
[[world]]
name = "Agrabah"
[[drops]]
name = "Power Stone"
kind = "material"
chance = 8
[drops.material]
category = "power"
kind = "stone"
[[drops]]
name = "Bright Stone"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "stone"

View File

@ -0,0 +1,22 @@
name = "Mad Ride"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Gem"
kind = "material"
chance = 12
[drops.material]
category = "remembrance"
kind = "gem"
[[drops]]
name = "Serenity Gem"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "gem"

View File

@ -0,0 +1,22 @@
name = "Magic Phantom"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Stone"
kind = "material"
chance = 10
[drops.material]
category = "remembrance"
kind = "stone"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"

View File

@ -0,0 +1,25 @@
name = "Magnum Loader"
[[world]]
name = "Space Paranoids"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Lucid Gem"
kind = "material"
chance = 8
[drops.material]
category = "lucid"
kind = "gem"
[[drops]]
name = "Bright Gem"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "gem"

View File

@ -0,0 +1,25 @@
name = "Minute Bomb"
[[world]]
name = "Timeless River"
[[world]]
name = "Olympus Coliseum"
[[drops]]
name = "Blazing Shard"
kind = "material"
chance = 6
[drops.material]
category = "blazing"
kind = "shard"
[[drops]]
name = "Bright Shard"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "shard"

View File

@ -0,0 +1,36 @@
name = "Morning Star"
[[world]]
name = "Radiant Garden"
[[world]]
name = "Beast's Castle"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Port Royal"
[[drops]]
name = "Power Crystal"
kind = "material"
chance = 12
[drops.material]
category = "power"
kind = "crystal"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"
[[drops]]
name = "Mega-Potion"
kind = "item"
chance = 5

View File

@ -0,0 +1,27 @@
name = "Necromancer"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Stone"
kind = "material"
chance = 10
[drops.material]
category = "remembrance"
kind = "stone"
[[drops]]
name = "Serenity Stone"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "stone"
[[drops]]
name = "Shaman Relic+"
kind = "equipment"
chance = 1

View File

@ -0,0 +1,19 @@
name = "Neoshadow"
[[drops]]
name = "Lucid Crystal"
kind = "material"
chance = 8
[drops.material]
category = "lucid"
kind = "crystal"
[[drops]]
name = "Bright Crystal"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "crystal"

View File

@ -0,0 +1,22 @@
name = "Nightwalker"
[[world]]
name = "The Land of Dragons"
[[drops]]
name = "Dark Stone"
kind = "material"
chance = 10
[drops.material]
category = "dark"
kind = "stone"
[[drops]]
name = "Energy Shard"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "shard"

View File

@ -0,0 +1,25 @@
name = "Rabid Dog"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Port Royal"
[[drops]]
name = "Lucid Shard"
kind = "material"
chance = 6
[drops.material]
category = "lucid"
kind = "shard"
[[drops]]
name = "Bright Shard"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "shard"

View File

@ -0,0 +1,26 @@
name = "Rapid Thruster"
[[world]]
name = "The Land of Dragons"
[[world]]
name = "Timeless River"
[[world]]
name = "Port Royal"
[[world]]
name = "Agrabah"
[[world]]
name = "Pride Lands"
best = true
[[drops]]
name = "Lightning Shard"
kind = "material"
chance = 4
[drops.material]
category = "lightning"
kind = "shard"

View File

@ -0,0 +1,22 @@
name = "Reckless"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Crystal"
kind = "material"
chance = 12
[drops.material]
category = "remembrance"
kind = "crystal"
[[drops]]
name = "Serenity Gem"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "gem"

View File

@ -0,0 +1,27 @@
name = "Runemaster"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Gem"
kind = "material"
chance = 10
[drops.material]
category = "remembrance"
kind = "gem"
[[drops]]
name = "Serenity Gem"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "gem"
[[drops]]
name = "Akashic Record+"
kind = "equipment"
chance = 1

View File

@ -0,0 +1,23 @@
name = "Samurai"
kind = "nobody"
[[world]]
name = "Radiant Garden"
[[world]]
name = "The Land of Dragons"
[[world]]
name = "Twilight Town"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Dense Gem"
kind = "material"
chance = 12
[drops.material]
category = "dense"
kind = "gem"

View File

@ -0,0 +1,10 @@
name = "Shadow"
[[drops]]
name = "Dark Shard"
kind = "material"
chance = 4
[drops.material]
category = "dark"
kind = "shard"

View File

@ -0,0 +1,27 @@
name = "Shaman"
[[world]]
name = "Pride Lands"
[[drops]]
name = "Power Gem"
kind = "material"
chance = 10
[drops.material]
category = "power"
kind = "gem"
[[drops]]
name = "Energy Crystal"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "crystal"
[[drops]]
name = "Shaman Relic"
kind = "equipment"
chance = 1

View File

@ -0,0 +1,25 @@
name = "Silver Rock"
[[world]]
name = "Agrabah"
[[world]]
name = "Pride Lands"
[[drops]]
name = "Power Stone"
kind = "material"
chance = 6
[drops.material]
category = "power"
kind = "stone"
[[drops]]
name = "Bright Stone"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "stone"

View File

@ -0,0 +1,20 @@
name = "Sniper"
kind = "nobody"
[[world]]
name = "The Land of Dragons"
[[world]]
name = "Twilight Town"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Dense Stone"
kind = "material"
chance = 12
[drops.material]
category = "dense"
kind = "stone"

View File

@ -0,0 +1,19 @@
name = "Soldier"
[[drops]]
name = "Dark Shard"
kind = "material"
chance = 8
[drops.material]
category = "dark"
kind = "shard"
[[drops]]
name = "Bright Shard"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "shard"

View File

@ -0,0 +1,23 @@
name = "Sorcerer"
kind = "nobody"
[[world]]
name = "The World That Never Was"
[[drops]]
name = "Twilight Crystal"
kind = "material"
chance = 12
[drops.material]
category = "twilight"
kind = "crystal"
[[drops]]
name = "Serenity Crystal"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "crystal"

View File

@ -0,0 +1,22 @@
name = "Spring Metal"
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Remembrance Gem"
kind = "material"
chance = 10
[drops.material]
category = "remembrance"
kind = "gem"
[[drops]]
name = "Serenity Gem"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "gem"

View File

@ -0,0 +1,26 @@
name = "Strafer"
[[world]]
name = "Space Paranoids"
best = true
[[world]]
name = "Radiant Garden"
[[drops]]
name = "Lightning Crystal"
kind = "material"
chance = 8
[drops.material]
category = "lightning"
kind = "crystal"
[[drops]]
name = "Bright Crystal"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "crystal"

View File

@ -0,0 +1,28 @@
name = "Surveillance Robot"
[[world]]
name = "Radiant Garden"
[[world]]
name = "Port Royal"
[[world]]
name = "Space Paranoids"
[[drops]]
name = "Lightning Gem"
kind = "material"
chance = 6
[drops.material]
category = "lightning"
kind = "gem"
[[drops]]
name = "Bright Gem"
kind = "material"
chance = 3
[drops.material]
category = "bright"
kind = "gem"

View File

@ -0,0 +1,25 @@
name = "Tornado Step"
[[world]]
name = "Port Royal"
[[world]]
name = "Olympus Coliseum"
[[drops]]
name = "Blazing Stone"
kind = "material"
chance = 8
[drops.material]
category = "blazing"
kind = "stone"
[[drops]]
name = "Bright Stone"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "stone"

View File

@ -0,0 +1,27 @@
name = "Toy Soldier"
[[world]]
name = "Halloween Town"
[[drops]]
name = "Lucid Stone"
kind = "material"
chance = 12
[drops.material]
category = "lucid"
kind = "stone"
[[drops]]
name = "Serenity Shard"
kind = "material"
chance = 4
[drops.material]
category = "serenity"
kind = "shard"
[[drops]]
name = "Ether"
kind = "item"
chance = 10

View File

@ -0,0 +1,25 @@
name = "Trick Ghost"
[[world]]
name = "Olympus Coliseum"
[[world]]
name = "Halloween Town"
[[drops]]
name = "Lucid Shard"
kind = "material"
chance = 10
[drops.material]
category = "lucid"
kind = "shard"
[[drops]]
name = "Energy Stone"
kind = "material"
chance = 4
[drops.material]
category = "energy"
kind = "stone"

View File

@ -0,0 +1,22 @@
name = "Wight Knight"
[[world]]
name = "Halloween Town"
[[drops]]
name = "Lucid Stone"
kind = "material"
chance = 8
[drops.material]
category = "lucid"
kind = "stone"
[[drops]]
name = "Bright Stone"
kind = "material"
chance = 4
[drops.material]
category = "bright"
kind = "stone"

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@ -3,6 +3,7 @@ use serde::Deserialize;
pub mod direction;
pub mod enemy;
pub mod materials;
pub mod synthesis;
#[derive(Debug, Clone, Deserialize, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub enum Game {

View File

@ -8,7 +8,9 @@ use super::materials::MaterialDetails;
pub struct Enemy {
pub name: String,
pub icon: Option<String>,
#[serde(default)]
pub world: Vec<SpawnLocation>,
#[serde(default)]
pub drops: Vec<EnemyDrop>,
}
@ -48,7 +50,6 @@ pub struct EnemyDrop {
pub from: String,
pub chance: EnemyDropChance,
pub kind: EnemyDropKind,
pub icon: Option<String>,
pub info: Option<String>,
pub material: Option<MaterialDetails>,
}

View File

@ -1,4 +1,4 @@
use std::{collections::HashMap, fmt::Display, fs, path};
use std::{collections::HashMap, fmt::Display, path};
use serde::Deserialize;
@ -36,6 +36,7 @@ pub enum MaterialCategory {
Lightning,
Lucid,
Mythril,
Orichalcum,
Power,
#[serde(alias = "shiny")]
Shimmering,
@ -63,6 +64,7 @@ impl MaterialCategory {
MaterialCategory::Lightning => "lightning".to_string(),
MaterialCategory::Lucid => "lucid".to_string(),
MaterialCategory::Mythril => "mythril".to_string(),
MaterialCategory::Orichalcum => "orichalcum".to_string(),
MaterialCategory::Power => "power".to_string(),
MaterialCategory::Shimmering => "shimmering".to_string(),
MaterialCategory::Serenity => "serenity".to_string(),
@ -104,6 +106,7 @@ impl MaterialCategory {
},
MaterialCategory::Lucid => "lucid".to_string(),
MaterialCategory::Mythril => "mythril".to_string(),
MaterialCategory::Orichalcum => "orichalcum".to_string(),
MaterialCategory::Power => "power".to_string(),
MaterialCategory::Shimmering => match game {
Game::Kh1 => "shiny".to_string(),

View File

@ -0,0 +1,78 @@
use std::collections::{BTreeMap, HashMap};
use itertools::Itertools;
use serde::Deserialize;
#[derive(Debug, Default, Clone, Deserialize, PartialEq, Eq)]
pub struct SynthesisData {
pub sets: Vec<SynthesisSet>,
pub recipes: Vec<SynthesisRecipe>,
}
impl SynthesisData {
pub fn new(path: &str) -> SynthesisData {
let str = std::fs::read_to_string(path).unwrap();
let mut data = toml::from_str::<SynthesisData>(&str).unwrap();
for recipe in &mut data.recipes {
for set in &data.sets {
if set.id == recipe.set_id {
recipe.set = set.clone();
break;
}
}
}
data
}
pub fn total_amounts(&self) -> Vec<(String, u32)> {
let mut map = HashMap::<String, u32>::new();
self.recipes.iter().for_each(|recipe| {
for item in &recipe.items {
map.entry(item.name.clone())
.and_modify(|val| *val += item.amount)
.or_insert(0);
}
});
let mut v = map.into_iter().collect::<Vec<_>>();
v.sort_by(|a, b| b.1.cmp(&a.1));
v
}
}
#[derive(Debug, Default, Clone, Deserialize, PartialEq, Eq)]
pub struct SynthesisSet {
pub id: u32,
pub name: String,
pub requirement: Option<String>,
}
impl PartialOrd for SynthesisSet {
fn partial_cmp(&self, other: &Self) -> Option<std::cmp::Ordering> {
Some(self.cmp(other))
}
}
impl Ord for SynthesisSet {
fn cmp(&self, other: &Self) -> std::cmp::Ordering {
self.id.cmp(&other.id)
}
}
#[derive(Debug, Clone, Deserialize, PartialEq, Eq)]
pub struct SynthesisRecipe {
#[serde(rename = "set")]
pub set_id: u32,
#[serde(skip)]
pub set: SynthesisSet,
pub result: String,
pub items: Vec<SynthesisRecipeItem>,
}
#[derive(Debug, Clone, Deserialize, PartialEq, Eq)]
pub struct SynthesisRecipeItem {
pub name: String,
pub amount: u32,
}

View File

@ -6,11 +6,12 @@ use itertools::Itertools;
use crate::{
RuntimeModule,
common::{Game, enemy::Enemy, materials::MaterialDrops},
common::{Game, enemy::Enemy, materials::MaterialDrops, synthesis::SynthesisData},
create_file, create_hashes,
};
const ENEMIES_PATH: &str = "./input/kh1/enemies";
const SYNTHESIS_PATH: &str = "./input/kh1/synthesis.toml";
static JS_HASH: OnceLock<Hash> = OnceLock::new();
#[derive(Template)]
@ -35,6 +36,10 @@ impl RuntimeModule for Module {
.dedup()
.collect();
tracing::info!("Loading synthesis data from {}", SYNTHESIS_PATH);
let synth = SynthesisData::new(SYNTHESIS_PATH);
dbg!(synth.total_amounts());
tracing::info!("Generating the KH1 drops template");
let drops_template = DropsTemplate {
game: Game::Kh1,

View File

@ -2,28 +2,15 @@ use std::sync::OnceLock;
use askama::Template;
use blake3::Hash;
use itertools::Itertools;
use crate::{
RuntimeModule,
common::{Game, materials::MaterialDrops},
common::{Game, enemy::Enemy, materials::MaterialDrops},
create_file, create_hashes,
};
const MATERIAL_KINDS: &[&str] = &[
"blazing",
"bright",
"dark",
"dense",
"energy",
"frost",
"lightning",
"lucid",
"power",
"remembrance",
"serenity",
"twilight",
];
const DROPS_PATH: &str = "./input/kh2/drops";
const ENEMIES_PATH: &str = "./input/kh2/enemies";
static JS_HASH: OnceLock<Hash> = OnceLock::new();
#[derive(Template)]
@ -38,13 +25,24 @@ pub struct Module;
impl RuntimeModule for Module {
fn start_module() {
tracing::info!("Loading enemy drops data from {}", DROPS_PATH);
// let drops = MaterialDrops::import(DROPS_PATH);
tracing::info!("Loading enemy data from {}", ENEMIES_PATH);
let enemies = Enemy::import(ENEMIES_PATH);
let drops = MaterialDrops::new(enemies);
let material_kinds = drops
.iter()
.map(|d| d.category.get_category(&Game::Kh2))
.dedup()
.collect();
tracing::info!("Generating the KH2 drops template");
// let drops_template = DropsTemplate { drops };
let drops_template = DropsTemplate {
game: Game::Kh2,
drops,
material_kinds,
};
// create_file("./out/kh2", "drops", drops_template.render().unwrap()).unwrap();
create_file("./out/kh2", "drops", drops_template.render().unwrap()).unwrap();
}
fn get_js_hash() -> String {