diff --git a/modules/config.py b/modules/config.py index 43ad654..e89f21f 100644 --- a/modules/config.py +++ b/modules/config.py @@ -15,7 +15,7 @@ class Config(metaclass=Singleton): - version = "0.8.18.5" + version = "0.8.20.2" region: str game_region: str debug = False diff --git a/modules/db.py b/modules/db.py index 9fa2f67..0b217f1 100644 --- a/modules/db.py +++ b/modules/db.py @@ -82,8 +82,8 @@ def add_entry(self, market_line: MarketLine, retries: int = 0): market_line.avg_price = market_line.lowest_price # Get Doc - item_doc_ref = self.db.document( - f"{Config().region}/{slugify(item['name'])}-{market_line.rarity}") + item_doc_id = f"{Config().region}/{slugify(item['name'])}-{market_line.rarity}" + item_doc_ref = self.db.document(item_doc_id) item_doc = item_doc_ref.get() if (item_doc.exists == False): @@ -118,7 +118,7 @@ def add_entry(self, market_line: MarketLine, retries: int = 0): 'watcher_version': Config().version }) AppLogger().info( - f"Updated: {market_line.name} | {market_line.avg_price} | {market_line.recent_price} | {market_line.lowest_price} | {market_line.cheapest_remaining}") + f"Updated: {item_doc_id} | {market_line.avg_price} | {market_line.recent_price} | {market_line.lowest_price} | {market_line.cheapest_remaining}") if Config().play_audio: playPulse() except Unauthenticated as ex: diff --git a/modules/market.py b/modules/market.py index 15350a7..e38de58 100644 --- a/modules/market.py +++ b/modules/market.py @@ -1,43 +1,16 @@ from thefuzz import process -from modules.market_data.engraving_recipe import engraving_recipe -from modules.market_data.enhancement_material import enhancement_material -from modules.market_data.combat_supplies import combat_supplies -from modules.market_data.cooking import cooking -from modules.market_data.trader import trader -from modules.market_data.adventurers_tome import adventurers_tome -from modules.market_data.sailing import sailing -from modules.market_data.pets import pets -from modules.market_data.mount import mount -from modules.market_data.gem_chest import gem_chest -from modules.market_data.currency_exchange import currency_exchange -from modules.market_data.other import other - -market_map = { - **engraving_recipe, - **enhancement_material, - **combat_supplies, - **cooking, - **trader, - **adventurers_tome, - **sailing, - **pets, - **mount, - **gem_chest, - **currency_exchange, - **other -} - +from modules.market_data.consolidated_map import consolidated_map def filter_market_item_name(raw_name: str) -> str | None: - if(raw_name in market_map): + if(raw_name in consolidated_map): return raw_name result, confidence = process.extractOne( - raw_name, market_map.keys(), scorer=process.fuzz.token_sort_ratio) + raw_name, consolidated_map.keys(), scorer=process.fuzz.token_sort_ratio) if confidence < 60: return None return result def get_market_item_by_name(name: str) -> dict: - return market_map[name] + return consolidated_map[name] diff --git a/modules/market_data/adventurers_tome.py b/modules/market_data/adventurers_tome.py deleted file mode 100644 index 671cc67..0000000 --- a/modules/market_data/adventurers_tome.py +++ /dev/null @@ -1,1946 +0,0 @@ -adventurers_tome = { - 'Magical Vernese Brandy': { - 'name': 'Magical Vernese Brandy', - 'rarity': 5, - 'image': 'magical-vernese-brandy.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Vernese Brisket': { - 'name': 'Vernese Brisket', - 'rarity': 5, - 'image': 'vernese-brisket.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - '500-year-old Mera Wine': { - 'name': '500-year-old Mera Wine', - 'rarity': 4, - 'image': '500-year-old-mera-wine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bergstrom Drink': { - 'name': 'Bergstrom Drink', - 'rarity': 4, - 'image': 'bergstrom-drink.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bloody Fist': { - 'name': 'Bloody Fist', - 'rarity': 4, - 'image': 'bloody-fist.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Crayfish with Vegetables': { - 'name': 'Crayfish with Vegetables', - 'rarity': 4, - 'image': 'crayfish-with-vegetables.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Crumpled Letter': { - 'name': 'Crumpled Letter', - 'rarity': 4, - 'image': 'crumpled-letter.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Crunch Crunch Fried Shell': { - 'name': 'Crunch Crunch Fried Shell', - 'rarity': 4, - 'image': 'crunch-crunch-fried-shell.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Donut Maiden': { - 'name': 'Donut Maiden', - 'rarity': 4, - 'image': 'donut-maiden.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Eel Caviar Salad': { - 'name': 'Eel Caviar Salad', - 'rarity': 4, - 'image': 'eel-caviar-salad.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fully-melted Gelato': { - 'name': 'Fully-melted Gelato', - 'rarity': 4, - 'image': 'fully-melted-gelato.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Gourmet Stir-fried Mushroom': { - 'name': 'Gourmet Stir-fried Mushroom', - 'rarity': 4, - 'image': 'gourmet-stir-fried-mushroom.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Great Stew': { - 'name': 'Great Stew', - 'rarity': 4, - 'image': 'great-stew.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Half and Half, Dip and Pour': { - 'name': 'Half and Half, Dip and Pour', - 'rarity': 4, - 'image': 'half-and-half,-dip-and-pour.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Harmony': { - 'name': 'Harmony', - 'rarity': 4, - 'image': 'harmony.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Holy Potato with Teeth Marks': { - 'name': 'Holy Potato with Teeth Marks', - 'rarity': 4, - 'image': 'holy-potato-with-teeth-marks.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Krakan Intestine Cream Soup': { - 'name': 'Krakan Intestine Cream Soup', - 'rarity': 4, - 'image': 'krakan-intestine-cream-soup.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Long Live the Queen!': { - 'name': 'Long Live the Queen!', - 'rarity': 4, - 'image': 'long-live-the-queen.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Medrick Hair Loss Solution': { - 'name': 'Medrick Hair Loss Solution', - 'rarity': 4, - 'image': 'medrick-hair-loss-solution.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Perfect Sugar Sculpture': { - 'name': 'Perfect Sugar Sculpture', - 'rarity': 4, - 'image': 'perfect-sugar-sculpture.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Punika Festival\'s Dish': { - 'name': 'Punika Festival\'s Dish', - 'rarity': 4, - 'image': 'punika-festival-s-dish.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Rainmaking Ritual Food': { - 'name': 'Rainmaking Ritual Food', - 'rarity': 4, - 'image': 'rainmaking-ritual-food.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Rainmaking Ritual Leftovers': { - 'name': 'Rainmaking Ritual Leftovers', - 'rarity': 4, - 'image': 'rainmaking-ritual-leftovers.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Salt Cracker': { - 'name': 'Salt Cracker', - 'rarity': 4, - 'image': 'salt-cracker.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Shushire Snowflake Shaved Ice': { - 'name': 'Shushire Snowflake Shaved Ice', - 'rarity': 4, - 'image': 'shushire-snowflake-shaved-ice.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sirius\'s Tears': { - 'name': 'Sirius\'s Tears', - 'rarity': 4, - 'image': 'sirius-s-tears.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Snail Roll Cake': { - 'name': 'Snail Roll Cake', - 'rarity': 4, - 'image': 'snail-roll-cake.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Soup of Transcendence': { - 'name': 'Soup of Transcendence', - 'rarity': 4, - 'image': 'soup-of-transcendence.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Steamed Papu Crab': { - 'name': 'Steamed Papu Crab', - 'rarity': 4, - 'image': 'steamed-papu-crab.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Tooki Tooki Soup': { - 'name': 'Tooki Tooki Soup', - 'rarity': 4, - 'image': 'tooki-tooki-soup.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Unknown Liquid XD-6353': { - 'name': 'Unknown Liquid XD-6353', - 'rarity': 4, - 'image': 'unknown-liquid-xd-6353.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Vernilaya': { - 'name': 'Vernilaya', - 'rarity': 4, - 'image': 'vernilaya.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Wild Banana Bread': { - 'name': 'Wild Banana Bread', - 'rarity': 4, - 'image': 'wild-banana-bread.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Worm Head Jelly': { - 'name': 'Worm Head Jelly', - 'rarity': 4, - 'image': 'worm-head-jelly.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Wriggling Tentacle Sashimi': { - 'name': 'Wriggling Tentacle Sashimi', - 'rarity': 4, - 'image': 'wriggling-tentacle-sashimi.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Zechbas': { - 'name': 'Zechbas', - 'rarity': 4, - 'image': 'zechbas.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Age-old Encavian Wine': { - 'name': 'Age-old Encavian Wine', - 'rarity': 3, - 'image': 'age-old-encavian-wine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Almost Complete Distilled Beverage': { - 'name': 'Almost Complete Distilled Beverage', - 'rarity': 3, - 'image': 'almost-complete-distilled-beverage.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Avesta List': { - 'name': 'Avesta List', - 'rarity': 3, - 'image': 'avesta-list.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Avesta Smoked Beef Jerkey': { - 'name': 'Avesta Smoked Beef Jerkey', - 'rarity': 3, - 'image': 'avesta-smoked-beef-jerkey.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Balankar Ranger\'s Salad': { - 'name': 'Balankar Ranger\'s Salad', - 'rarity': 3, - 'image': 'balankar-ranger-s-salad.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bear Gallbladder Skewer': { - 'name': 'Bear Gallbladder Skewer', - 'rarity': 3, - 'image': 'bear-gallbladder-skewer.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bellion Wings': { - 'name': 'Bellion Wings', - 'rarity': 3, - 'image': 'bellion-wings.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Biography of Galatur': { - 'name': 'Biography of Galatur', - 'rarity': 3, - 'image': 'biography-of-galatur.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Black Fox Flag': { - 'name': 'Black Fox Flag', - 'rarity': 3, - 'image': 'black-fox-flag.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bloodstained Rod': { - 'name': 'Bloodstained Rod', - 'rarity': 3, - 'image': 'bloodstained-rod.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Boar BBQ': { - 'name': 'Boar BBQ', - 'rarity': 3, - 'image': 'boar-bbq.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Boosting Fluid Soup': { - 'name': 'Boosting Fluid Soup', - 'rarity': 3, - 'image': 'boosting-fluid-soup.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Brisket Ready to Be Applied with Rub': { - 'name': 'Brisket Ready to Be Applied with Rub', - 'rarity': 3, - 'image': 'brisket-ready-to-be-applied-with-rub.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Broken Sugar Sculpture': { - 'name': 'Broken Sugar Sculpture', - 'rarity': 3, - 'image': 'broken-sugar-sculpture.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Cashew Cashew Smoothie': { - 'name': 'Cashew Cashew Smoothie', - 'rarity': 3, - 'image': 'cashew-cashew-smoothie.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Cashew Fruit': { - 'name': 'Cashew Fruit', - 'rarity': 3, - 'image': 'cashew-fruit.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Clotted Blood of Rakathus': { - 'name': 'Clotted Blood of Rakathus', - 'rarity': 3, - 'image': 'clotted-blood-of-rakathus.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Coolkur Beer': { - 'name': 'Coolkur Beer', - 'rarity': 3, - 'image': 'coolkur-beer.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Cykin Combat Ration Type A': { - 'name': 'Cykin Combat Ration Type A', - 'rarity': 3, - 'image': 'cykin-combat-ration-type-a.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Cykin Combat Ration Type C': { - 'name': 'Cykin Combat Ration Type C', - 'rarity': 3, - 'image': 'cykin-combat-ration-type-c.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Deer Hind Hooves Stew': { - 'name': 'Deer Hind Hooves Stew', - 'rarity': 3, - 'image': 'deer-hind-hooves-stew.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Dusty Rainbow Candy': { - 'name': 'Dusty Rainbow Candy', - 'rarity': 3, - 'image': 'dusty-rainbow-candy.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Eel Herb Kholodets': { - 'name': 'Eel Herb Kholodets', - 'rarity': 3, - 'image': 'eel-herb-kholodets.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Efferin\'s Egg Rice': { - 'name': 'Efferin\'s Egg Rice', - 'rarity': 3, - 'image': 'efferin-s-egg-rice.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Eggy Eggy Soft Boiled Egg': { - 'name': 'Eggy Eggy Soft Boiled Egg', - 'rarity': 3, - 'image': 'eggy-eggy-soft-boiled-egg.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Encrypted Note': { - 'name': 'Encrypted Note', - 'rarity': 3, - 'image': 'encrypted-note.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Ether Essence': { - 'name': 'Ether Essence', - 'rarity': 3, - 'image': 'ether-essence.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Feiton Blood Pudding Sausage': { - 'name': 'Feiton Blood Pudding Sausage', - 'rarity': 3, - 'image': 'feiton-blood-pudding-sausage.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fesnar Mushroom Stew': { - 'name': 'Fesnar Mushroom Stew', - 'rarity': 3, - 'image': 'fesnar-mushroom-stew.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Flower Salad': { - 'name': 'Flower Salad', - 'rarity': 3, - 'image': 'flower-salad.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Foundation Centennial Wine': { - 'name': 'Foundation Centennial Wine', - 'rarity': 3, - 'image': 'foundation-centennial-wine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Frost Spider Egg': { - 'name': 'Frost Spider Egg', - 'rarity': 3, - 'image': 'frost-spider-egg.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Frozen Butterfly Larva': { - 'name': 'Frozen Butterfly Larva', - 'rarity': 3, - 'image': 'frozen-butterfly-larva.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Giant Flower Petals': { - 'name': 'Giant Flower Petals', - 'rarity': 3, - 'image': 'giant-flower-petals.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Goblin Fish Soup': { - 'name': 'Goblin Fish Soup', - 'rarity': 3, - 'image': 'goblin-fish-soup.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Gourmet Seafood Stew': { - 'name': 'Gourmet Seafood Stew', - 'rarity': 3, - 'image': 'gourmet-seafood-stew.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Grilled Sapphire Sardine': { - 'name': 'Grilled Sapphire Sardine', - 'rarity': 3, - 'image': 'grilled-sapphire-sardine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Jelly Chew': { - 'name': 'Jelly Chew', - 'rarity': 3, - 'image': 'jelly-chew.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Kaloa Boar BBQ': { - 'name': 'Kaloa Boar BBQ', - 'rarity': 3, - 'image': 'kaloa-boar-bbq.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Kandarian Cold Lager': { - 'name': 'Kandarian Cold Lager', - 'rarity': 3, - 'image': 'kandarian-cold-lager.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Lakebar Freshwater Fish Stew': { - 'name': 'Lakebar Freshwater Fish Stew', - 'rarity': 3, - 'image': 'lakebar-freshwater-fish-stew.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Lucky Fortune Cookie': { - 'name': 'Lucky Fortune Cookie', - 'rarity': 3, - 'image': 'lucky-fortune-cookie.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Luterran Course Meal': { - 'name': 'Luterran Course Meal', - 'rarity': 3, - 'image': 'luterran-course-meal.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Lynnis\'s Ring': { - 'name': 'Lynnis\'s Ring', - 'rarity': 3, - 'image': 'lynnis-s-ring.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Manpo\'s Secret Meat Dumpling': { - 'name': 'Manpo\'s Secret Meat Dumpling', - 'rarity': 3, - 'image': 'manpo-s-secret-meat-dumpling.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Meat Bug': { - 'name': 'Meat Bug', - 'rarity': 3, - 'image': 'meat-bug.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Mine Car Lunchbox': { - 'name': 'Mine Car Lunchbox', - 'rarity': 3, - 'image': 'mine-car-lunchbox.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Miner\'s Rum': { - 'name': 'Miner\'s Rum', - 'rarity': 3, - 'image': 'miner-s-rum.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Natural Mungka Jerky': { - 'name': 'Natural Mungka Jerky', - 'rarity': 3, - 'image': 'natural-mungka-jerky.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Neria\'s Cheese Snack': { - 'name': 'Neria\'s Cheese Snack', - 'rarity': 3, - 'image': 'neria-s-cheese-snack.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Nomadic Dream': { - 'name': 'Nomadic Dream', - 'rarity': 3, - 'image': 'nomadic-dream.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Old Canned Food': { - 'name': 'Old Canned Food', - 'rarity': 3, - 'image': 'old-canned-food.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Pit-A-Pat Macaron': { - 'name': 'Pit-A-Pat Macaron', - 'rarity': 3, - 'image': 'pit-a-pat-macaron.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Plenty Plenty Mokoko Gift Package': { - 'name': 'Plenty Plenty Mokoko Gift Package', - 'rarity': 3, - 'image': 'plenty-plenty-mokoko-gift-package.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Pocket Watch of Dawn': { - 'name': 'Pocket Watch of Dawn', - 'rarity': 3, - 'image': 'pocket-watch-of-dawn.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Pow Pow Honey Health Tonic': { - 'name': 'Pow Pow Honey Health Tonic', - 'rarity': 3, - 'image': 'pow-pow-honey-health-tonic.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Protein Packed White Bird Stew': { - 'name': 'Protein Packed White Bird Stew', - 'rarity': 3, - 'image': 'protein-packed-white-bird-stew.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Proxima Course Meal': { - 'name': 'Proxima Course Meal', - 'rarity': 3, - 'image': 'proxima-course-meal.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Regria Flower Oil': { - 'name': 'Regria Flower Oil', - 'rarity': 3, - 'image': 'regria-flower-oil.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Regria Wheat Bread': { - 'name': 'Regria Wheat Bread', - 'rarity': 3, - 'image': 'regria-wheat-bread.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Ryucrokota Salo': { - 'name': 'Ryucrokota Salo', - 'rarity': 3, - 'image': 'ryucrokota-salo.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Salt-grilled Saltbug': { - 'name': 'Salt-grilled Saltbug', - 'rarity': 3, - 'image': 'salt-grilled-saltbug.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Salted Food Box': { - 'name': 'Salted Food Box', - 'rarity': 3, - 'image': 'salted-food-box.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sand in a Bottle': { - 'name': 'Sand in a Bottle', - 'rarity': 3, - 'image': 'sand-in-a-bottle.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sceptrumpam 3mg': { - 'name': 'Sceptrumpam 3mg', - 'rarity': 3, - 'image': 'sceptrumpam-3mg.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Secret Pill of Jeok Family': { - 'name': 'Secret Pill of Jeok Family', - 'rarity': 3, - 'image': 'secret-pill-of-jeok-family.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Secret Yeon-Style Marinated Special': { - 'name': 'Secret Yeon-Style Marinated Special', - 'rarity': 3, - 'image': 'secret-yeon-style-marinated-special.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Solar Knights Token': { - 'name': 'Solar Knights Token', - 'rarity': 3, - 'image': 'solar-knights-token.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Solar Stone': { - 'name': 'Solar Stone', - 'rarity': 3, - 'image': 'solar-stone.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Solar Tree Sprout Cider': { - 'name': 'Solar Tree Sprout Cider', - 'rarity': 3, - 'image': 'solar-tree-sprout-cider.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Song Inscribed Stone': { - 'name': 'Song Inscribed Stone', - 'rarity': 3, - 'image': 'song-inscribed-stone.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sparkling Elemental Food': { - 'name': 'Sparkling Elemental Food', - 'rarity': 3, - 'image': 'sparkling-elemental-food.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Starsand Cocktail': { - 'name': 'Starsand Cocktail', - 'rarity': 3, - 'image': 'starsand-cocktail.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Steamed Oyster with White Wine': { - 'name': 'Steamed Oyster with White Wine', - 'rarity': 3, - 'image': 'steamed-oyster-with-white-wine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sweet Honey Butter Beer': { - 'name': 'Sweet Honey Butter Beer', - 'rarity': 3, - 'image': 'sweet-honey-butter-beer.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sweet Sweet Royal Jelly': { - 'name': 'Sweet Sweet Royal Jelly', - 'rarity': 3, - 'image': 'sweet-sweet-royal-jelly.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Thirain T-Bone Steak': { - 'name': 'Thirain T-Bone Steak', - 'rarity': 3, - 'image': 'thirain-t-bone-steak.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Veda\'s Prideholme-style Home Food': { - 'name': 'Veda\'s Prideholme-style Home Food', - 'rarity': 3, - 'image': 'veda-s-prideholme-style-home-food.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Vern Anniversary Spirits': { - 'name': 'Vern Anniversary Spirits', - 'rarity': 3, - 'image': 'vern-anniversary-spirits.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Wolf Meat': { - 'name': 'Wolf Meat', - 'rarity': 3, - 'image': 'wolf-meat.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Wonderful Rum': { - 'name': 'Wonderful Rum', - 'rarity': 3, - 'image': 'wonderful-rum.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Worm Poop Coffee': { - 'name': 'Worm Poop Coffee', - 'rarity': 3, - 'image': 'worm-poop-coffee.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'X-090892': { - 'name': 'X-090892', - 'rarity': 3, - 'image': 'x-090892.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - '499-year-old Mera Wine': { - 'name': '499-year-old Mera Wine', - 'rarity': 2, - 'image': '499-year-old-mera-wine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Adrinne\'s Ring': { - 'name': 'Adrinne\'s Ring', - 'rarity': 2, - 'image': 'adrinne-s-ring.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Adventurer\'s Journal': { - 'name': 'Adventurer\'s Journal', - 'rarity': 2, - 'image': 'adventurer-s-journal.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Aquilok Skin': { - 'name': 'Aquilok Skin', - 'rarity': 2, - 'image': 'aquilok-skin.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bergstrom\'s Invisibility Potion': { - 'name': 'Bergstrom\'s Invisibility Potion', - 'rarity': 2, - 'image': 'bergstrom-s-invisibility-potion.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bergstrom\'s Yellow Potion': { - 'name': 'Bergstrom\'s Yellow Potion', - 'rarity': 2, - 'image': 'bergstrom-s-yellow-potion.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Boiling Liquid': { - 'name': 'Boiling Liquid', - 'rarity': 2, - 'image': 'boiling-liquid.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Bread Crumbs': { - 'name': 'Bread Crumbs', - 'rarity': 2, - 'image': 'bread-crumbs.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Brisket, Ready for Dry Rub': { - 'name': 'Brisket, Ready for Dry Rub', - 'rarity': 2, - 'image': 'brisket,-ready-for-dry-rub.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Collected Stories of the Luterran Knights': { - 'name': 'Collected Stories of the Luterran Knights', - 'rarity': 2, - 'image': 'collected-stories-of-the-luterran-knights.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Crow Stone': { - 'name': 'Crow Stone', - 'rarity': 2, - 'image': 'crow-stone.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Dagger of the High Priest': { - 'name': 'Dagger of the High Priest', - 'rarity': 2, - 'image': 'dagger-of-the-high-priest.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Donut Butler': { - 'name': 'Donut Butler', - 'rarity': 2, - 'image': 'donut-butler.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Donut Servant': { - 'name': 'Donut Servant', - 'rarity': 2, - 'image': 'donut-servant.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Enviska\'s Talisman': { - 'name': 'Enviska\'s Talisman', - 'rarity': 2, - 'image': 'enviska-s-talisman.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fabulous Saucer': { - 'name': 'Fabulous Saucer', - 'rarity': 2, - 'image': 'fabulous-saucer.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Failed Distilled Beverage': { - 'name': 'Failed Distilled Beverage', - 'rarity': 2, - 'image': 'failed-distilled-beverage.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fake Beard': { - 'name': 'Fake Beard', - 'rarity': 2, - 'image': 'fake-beard.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fiend Mask': { - 'name': 'Fiend Mask', - 'rarity': 2, - 'image': 'fiend-mask.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Food Chest for Trade': { - 'name': 'Food Chest for Trade', - 'rarity': 2, - 'image': 'food-chest-for-trade.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fortune Cookie Chest': { - 'name': 'Fortune Cookie Chest', - 'rarity': 2, - 'image': 'fortune-cookie-chest.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fresh Blood of the Corrupted': { - 'name': 'Fresh Blood of the Corrupted', - 'rarity': 2, - 'image': 'fresh-blood-of-the-corrupted.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Fresh Cocktail': { - 'name': 'Fresh Cocktail', - 'rarity': 2, - 'image': 'fresh-cocktail.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Gelato': { - 'name': 'Gelato', - 'rarity': 2, - 'image': 'gelato.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Glyphed Stone': { - 'name': 'Glyphed Stone', - 'rarity': 2, - 'image': 'glyphed-stone.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Haal Ruins Research Journal': { - 'name': 'Haal Ruins Research Journal', - 'rarity': 2, - 'image': 'haal-ruins-research-journal.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Honey Butter Beer': { - 'name': 'Honey Butter Beer', - 'rarity': 2, - 'image': 'honey-butter-beer.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Hot Chocolate Coffee': { - 'name': 'Hot Chocolate Coffee', - 'rarity': 2, - 'image': 'hot-chocolate-coffee.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Legendary Drinkers Daily': { - 'name': 'Legendary Drinkers Daily', - 'rarity': 2, - 'image': 'legendary-drinkers-daily.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Levatanos Core': { - 'name': 'Levatanos Core', - 'rarity': 2, - 'image': 'levatanos-core.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Marionette of the Steel Lady': { - 'name': 'Marionette of the Steel Lady', - 'rarity': 2, - 'image': 'marionette-of-the-steel-lady.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Melting Gelato': { - 'name': 'Melting Gelato', - 'rarity': 2, - 'image': 'melting-gelato.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Nia Tribe Dream Decoration': { - 'name': 'Nia Tribe Dream Decoration', - 'rarity': 2, - 'image': 'nia-tribe-dream-decoration.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Not Fully Fermented Ryucrokota Salo': { - 'name': 'Not Fully Fermented Ryucrokota Salo', - 'rarity': 2, - 'image': 'not-fully-fermented-ryucrokota-salo.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Palatable Cocktail': { - 'name': 'Palatable Cocktail', - 'rarity': 2, - 'image': 'palatable-cocktail.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Portal Stone': { - 'name': 'Portal Stone', - 'rarity': 2, - 'image': 'portal-stone.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Promotional Flyer of the Verdantier': { - 'name': 'Promotional Flyer of the Verdantier', - 'rarity': 2, - 'image': 'promotional-flyer-of-the-verdantier.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Proxima Root Nugget': { - 'name': 'Proxima Root Nugget', - 'rarity': 2, - 'image': 'proxima-root-nugget.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Proxima Salad': { - 'name': 'Proxima Salad', - 'rarity': 2, - 'image': 'proxima-salad.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Pungent Cocktail': { - 'name': 'Pungent Cocktail', - 'rarity': 2, - 'image': 'pungent-cocktail.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Pungent Scale': { - 'name': 'Pungent Scale', - 'rarity': 2, - 'image': 'pungent-scale.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Questionable Cocktail': { - 'name': 'Questionable Cocktail', - 'rarity': 2, - 'image': 'questionable-cocktail.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Questionable Sugar Sculpture': { - 'name': 'Questionable Sugar Sculpture', - 'rarity': 2, - 'image': 'questionable-sugar-sculpture.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Report on Heavy Walker': { - 'name': 'Report on Heavy Walker', - 'rarity': 2, - 'image': 'report-on-heavy-walker.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Ripening Anti Hair Loss Agent': { - 'name': 'Ripening Anti Hair Loss Agent', - 'rarity': 2, - 'image': 'ripening-anti-hair-loss-agent.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Royal Warning': { - 'name': 'Royal Warning', - 'rarity': 2, - 'image': 'royal-warning.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Salt Crystal': { - 'name': 'Salt Crystal', - 'rarity': 2, - 'image': 'salt-crystal.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Salttree Fruit': { - 'name': 'Salttree Fruit', - 'rarity': 2, - 'image': 'salttree-fruit.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sapphire Sardine': { - 'name': 'Sapphire Sardine', - 'rarity': 2, - 'image': 'sapphire-sardine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sealing Charm': { - 'name': 'Sealing Charm', - 'rarity': 2, - 'image': 'sealing-charm.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Secret Ledger': { - 'name': 'Secret Ledger', - 'rarity': 2, - 'image': 'secret-ledger.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Snowflake Shaved Ice': { - 'name': 'Snowflake Shaved Ice', - 'rarity': 2, - 'image': 'snowflake-shaved-ice.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Somewhat Complete Distilled Beverage': { - 'name': 'Somewhat Complete Distilled Beverage', - 'rarity': 2, - 'image': 'somewhat-complete-distilled-beverage.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Special Potato': { - 'name': 'Special Potato', - 'rarity': 2, - 'image': 'special-potato.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'The Legend of King Luterra': { - 'name': 'The Legend of King Luterra', - 'rarity': 2, - 'image': 'the-legend-of-king-luterra.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Timeworn Blade of a Fighter': { - 'name': 'Timeworn Blade of a Fighter', - 'rarity': 2, - 'image': 'timeworn-blade-of-a-fighter.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Unlucky Fortune Cookie': { - 'name': 'Unlucky Fortune Cookie', - 'rarity': 2, - 'image': 'unlucky-fortune-cookie.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Yucky Yucky Hard Boiled Egg': { - 'name': 'Yucky Yucky Hard Boiled Egg', - 'rarity': 2, - 'image': 'yucky-yucky-hard-boiled-egg.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Avesta Journal': { - 'name': 'Avesta Journal', - 'rarity': 1, - 'image': 'avesta-journal.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Avesta\'s Red Cloth': { - 'name': 'Avesta\'s Red Cloth', - 'rarity': 1, - 'image': 'avesta-s-red-cloth.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Book of the Priest': { - 'name': 'Book of the Priest', - 'rarity': 1, - 'image': 'book-of-the-priest.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Brisket Ready to Be Applied with Rub': { - 'name': 'Brisket Ready to Be Applied with Rub', - 'rarity': 1, - 'image': 'brisket-ready-to-be-applied-with-rub.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Elzowin\'s Branch': { - 'name': 'Elzowin\'s Branch', - 'rarity': 1, - 'image': 'elzowin-s-branch.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Frost Spider Cocoon': { - 'name': 'Frost Spider Cocoon', - 'rarity': 1, - 'image': 'frost-spider-cocoon.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Gold Coin of the Dead': { - 'name': 'Gold Coin of the Dead', - 'rarity': 1, - 'image': 'gold-coin-of-the-dead.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Gold Coin of Vrad': { - 'name': 'Gold Coin of Vrad', - 'rarity': 1, - 'image': 'gold-coin-of-vrad.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Grangor\'s Tooth': { - 'name': 'Grangor\'s Tooth', - 'rarity': 1, - 'image': 'grangor-s-tooth.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Grey Bait Material': { - 'name': 'Grey Bait Material', - 'rarity': 1, - 'image': 'grey-bait-material.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Guardian\'s Record': { - 'name': 'Guardian\'s Record', - 'rarity': 1, - 'image': 'guardian-s-record.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Holy Book of Sceptrum': { - 'name': 'Holy Book of Sceptrum', - 'rarity': 1, - 'image': 'holy-book-of-sceptrum.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Hoyte News': { - 'name': 'Hoyte News', - 'rarity': 1, - 'image': 'hoyte-news.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Legend of Luoden River': { - 'name': 'Legend of Luoden River', - 'rarity': 1, - 'image': 'legend-of-luoden-river.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Nightmare Elixir': { - 'name': 'Nightmare Elixir', - 'rarity': 1, - 'image': 'nightmare-elixir.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Orange Bait Material': { - 'name': 'Orange Bait Material', - 'rarity': 1, - 'image': 'orange-bait-material.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Pendant of the Fallen Noble': { - 'name': 'Pendant of the Fallen Noble', - 'rarity': 1, - 'image': 'pendant-of-the-fallen-noble.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Prophet\'s Note': { - 'name': 'Prophet\'s Note', - 'rarity': 1, - 'image': 'prophet-s-note.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Punika Gin': { - 'name': 'Punika Gin', - 'rarity': 1, - 'image': 'punika-gin.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Ramella\'s Mirror': { - 'name': 'Ramella\'s Mirror', - 'rarity': 1, - 'image': 'ramella-s-mirror.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Red Bait Material': { - 'name': 'Red Bait Material', - 'rarity': 1, - 'image': 'red-bait-material.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Redhand Mercenary Gloves': { - 'name': 'Redhand Mercenary Gloves', - 'rarity': 1, - 'image': 'redhand-mercenary-gloves.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Research Note on Sapira': { - 'name': 'Research Note on Sapira', - 'rarity': 1, - 'image': 'research-note-on-sapira.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Roasted Banana Powder': { - 'name': 'Roasted Banana Powder', - 'rarity': 1, - 'image': 'roasted-banana-powder.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Smelly Boots': { - 'name': 'Smelly Boots', - 'rarity': 1, - 'image': 'smelly-boots.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Smelly Boots Chest': { - 'name': 'Smelly Boots Chest', - 'rarity': 1, - 'image': 'smelly-boots-chest.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Smelly Cheese Chest': { - 'name': 'Smelly Cheese Chest', - 'rarity': 1, - 'image': 'smelly-cheese-chest.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Starlight Conch Shell': { - 'name': 'Starlight Conch Shell', - 'rarity': 1, - 'image': 'starlight-conch-shell.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sugar Lump': { - 'name': 'Sugar Lump', - 'rarity': 1, - 'image': 'sugar-lump.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Sweet Mojito': { - 'name': 'Sweet Mojito', - 'rarity': 1, - 'image': 'sweet-mojito.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'The Origin of Tortoyk': { - 'name': 'The Origin of Tortoyk', - 'rarity': 1, - 'image': 'the-origin-of-tortoyk.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'The Secrets of Anikka Cuisine': { - 'name': 'The Secrets of Anikka Cuisine', - 'rarity': 1, - 'image': 'the-secrets-of-anikka-cuisine.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Thick Parchment': { - 'name': 'Thick Parchment', - 'rarity': 1, - 'image': 'thick-parchment.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Tome of the Horizon': { - 'name': 'Tome of the Horizon', - 'rarity': 1, - 'image': 'tome-of-the-horizon.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Valaire\'s Love Poet': { - 'name': 'Valaire\'s Love Poet', - 'rarity': 1, - 'image': 'valaire-s-love-poet.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Wanted Poster': { - 'name': 'Wanted Poster', - 'rarity': 1, - 'image': 'wanted-poster.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Wishlight': { - 'name': 'Wishlight', - 'rarity': 1, - 'image': 'wishlight.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Wood Blood': { - 'name': 'Wood Blood', - 'rarity': 1, - 'image': 'wood-blood.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Amalone\'s Journal': { - 'name': 'Amalone\'s Journal', - 'rarity': 0, - 'image': 'amalone-s-journal.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Armor Piece of a Knight': { - 'name': 'Armor Piece of a Knight', - 'rarity': 0, - 'image': 'armor-piece-of-a-knight.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Caldarr\'s Helm': { - 'name': 'Caldarr\'s Helm', - 'rarity': 0, - 'image': 'caldarr-s-helm.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Centurion\'s Notebook': { - 'name': 'Centurion\'s Notebook', - 'rarity': 0, - 'image': 'centurion-s-notebook.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Eagle Ring': { - 'name': 'Eagle Ring', - 'rarity': 0, - 'image': 'eagle-ring.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Help Wanted Poster': { - 'name': 'Help Wanted Poster', - 'rarity': 0, - 'image': 'help-wanted-poster.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Hybee Honey': { - 'name': 'Hybee Honey', - 'rarity': 0, - 'image': 'hybee-honey.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Icewing': { - 'name': 'Icewing', - 'rarity': 0, - 'image': 'icewing.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Illustrated Book of Ancient Elementals': { - 'name': 'Illustrated Book of Ancient Elementals', - 'rarity': 0, - 'image': 'illustrated-book-of-ancient-elementals.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Mari\'s Mechanical Doll': { - 'name': 'Mari\'s Mechanical Doll', - 'rarity': 0, - 'image': 'mari-s-mechanical-doll.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Mark of the Holy Sacrian Empire': { - 'name': 'Mark of the Holy Sacrian Empire', - 'rarity': 0, - 'image': 'mark-of-the-holy-sacrian-empire.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Message in a Bottle': { - 'name': 'Message in a Bottle', - 'rarity': 0, - 'image': 'message-in-a-bottle.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Mist-bearing Gourd Bottle': { - 'name': 'Mist-bearing Gourd Bottle', - 'rarity': 0, - 'image': 'mist-bearing-gourd-bottle.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Moguro Mask': { - 'name': 'Moguro Mask', - 'rarity': 0, - 'image': 'moguro-mask.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Nahun\'s Key': { - 'name': 'Nahun\'s Key', - 'rarity': 0, - 'image': 'nahun-s-key.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Nivar\'s Hand': { - 'name': 'Nivar\'s Hand', - 'rarity': 0, - 'image': 'nivar-s-hand.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Oath of Bandits': { - 'name': 'Oath of Bandits', - 'rarity': 0, - 'image': 'oath-of-bandits.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Plague Spores': { - 'name': 'Plague Spores', - 'rarity': 0, - 'image': 'plague-spores.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Poisoned Arrow': { - 'name': 'Poisoned Arrow', - 'rarity': 0, - 'image': 'poisoned-arrow.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Punika Specialty Catalog': { - 'name': 'Punika Specialty Catalog', - 'rarity': 0, - 'image': 'punika-specialty-catalog.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Regulus Statue Fragment': { - 'name': 'Regulus Statue Fragment', - 'rarity': 0, - 'image': 'regulus-statue-fragment.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Solar Salt': { - 'name': 'Solar Salt', - 'rarity': 0, - 'image': 'solar-salt.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Spirit Calling Woodblock': { - 'name': 'Spirit Calling Woodblock', - 'rarity': 0, - 'image': 'spirit-calling-woodblock.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Steel Plate Inscribed with Mysterious Signals': { - 'name': 'Steel Plate Inscribed with Mysterious Signals', - 'rarity': 0, - 'image': 'steel-plate-inscribed-with-mysterious-signals.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'The Epic Tale of Sien': { - 'name': 'The Epic Tale of Sien', - 'rarity': 0, - 'image': 'the-epic-tale-of-sien.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Thirain\'s Wanted Poster': { - 'name': 'Thirain\'s Wanted Poster', - 'rarity': 0, - 'image': 'thirain-s-wanted-poster.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Unsent Letter': { - 'name': 'Unsent Letter', - 'rarity': 0, - 'image': 'unsent-letter.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, - 'Voice Breaking the Day': { - 'name': 'Voice Breaking the Day', - 'rarity': 0, - 'image': 'voice-breaking-the-day.webp', - 'category': 'Adventurer\'s Tome', - 'subcategory': None, - 'amount': 1 - }, -} diff --git a/modules/market_data/combat_supplies.py b/modules/market_data/combat_supplies.py deleted file mode 100644 index ac7e17a..0000000 --- a/modules/market_data/combat_supplies.py +++ /dev/null @@ -1,434 +0,0 @@ -combat_supplies = { - 'Atropine Potion': { - 'name': 'Atropine Potion', - 'amount': 1, - 'image': 'atropine-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 3 - }, - 'Stimulant': { - 'name': 'Stimulant', - 'amount': 1, - 'image': 'stimulant.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 3 - }, - 'Marching Flag': { - 'name': 'Marching Flag', - 'amount': 1, - 'image': 'marching-flag.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 2 - }, - 'Protective Potion': { - 'name': 'Protective Potion', - 'amount': 1, - 'image': 'protective-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 2 - }, - 'Splendid Marching Flag': { - 'name': 'Splendid Marching Flag', - 'amount': 1, - 'image': 'splendid-marching-flag.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 2 - }, - 'Splendid Protective Potion': { - 'name': 'Splendid Protective Potion', - 'amount': 1, - 'image': 'splendid-protective-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 2 - }, - 'Splendid Sprinter\'s Robe': { - 'name': 'Splendid Sprinter\'s Robe', - 'amount': 1, - 'image': 'splendid-sprinter-s-robe.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 2 - }, - 'Sprinter\'s Robe': { - 'name': 'Sprinter\'s Robe', - 'amount': 1, - 'image': 'sprinter-s-robe.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Buff', - 'rarity': 2 - }, - 'Clay Grenade': { - 'name': 'Clay Grenade', - 'amount': 1, - 'image': 'clay-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Corrosive Bomb': { - 'name': 'Corrosive Bomb', - 'amount': 1, - 'image': 'corrosive-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Dark Grenade': { - 'name': 'Dark Grenade', - 'amount': 1, - 'image': 'dark-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Destruction Bomb': { - 'name': 'Destruction Bomb', - 'amount': 1, - 'image': 'destruction-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Electric Grenade': { - 'name': 'Electric Grenade', - 'amount': 1, - 'image': 'electric-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Flame Grenade': { - 'name': 'Flame Grenade', - 'amount': 1, - 'image': 'flame-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Flash Grenade': { - 'name': 'Flash Grenade', - 'amount': 1, - 'image': 'flash-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Frost Grenade': { - 'name': 'Frost Grenade', - 'amount': 1, - 'image': 'frost-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Pheromone Bomb': { - 'name': 'Pheromone Bomb', - 'amount': 1, - 'image': 'pheromone-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Sacred Bomb': { - 'name': 'Sacred Bomb', - 'amount': 1, - 'image': 'sacred-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Sleep Bomb': { - 'name': 'Sleep Bomb', - 'amount': 1, - 'image': 'sleep-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Clay Grenade': { - 'name': 'Splendid Clay Grenade', - 'amount': 1, - 'image': 'splendid-clay-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Corrosion Bomb': { - 'name': 'Splendid Corrosion Bomb', - 'amount': 1, - 'image': 'splendid-corrosion-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Dark Grenade': { - 'name': 'Splendid Dark Grenade', - 'amount': 1, - 'image': 'splendid-dark-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Destruction Bomb': { - 'name': 'Splendid Destruction Bomb', - 'amount': 1, - 'image': 'splendid-destruction-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Flame Grenade': { - 'name': 'Splendid Flame Grenade', - 'amount': 1, - 'image': 'splendid-flame-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Flash Grenade': { - 'name': 'Splendid Flash Grenade', - 'amount': 1, - 'image': 'splendid-flash-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Frost Grenade': { - 'name': 'Splendid Frost Grenade', - 'amount': 1, - 'image': 'splendid-frost-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Electric Grenade': { - 'name': 'Splendid Electric Grenade', - 'amount': 1, - 'image': 'splendid-electric-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Sacred Bomb': { - 'name': 'Splendid Sacred Bomb', - 'amount': 1, - 'image': 'splendid-sacred-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Sleep Bomb': { - 'name': 'Splendid Sleep Bomb', - 'amount': 1, - 'image': 'splendid-sleep-bomb.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Thunder Potion': { - 'name': 'Splendid Thunder Potion', - 'amount': 1, - 'image': 'splendid-thunder-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Splendid Whirlwind Grenade': { - 'name': 'Splendid Whirlwind Grenade', - 'amount': 1, - 'image': 'splendid-whirlwind-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Thunder Potion': { - 'name': 'Thunder Potion', - 'amount': 1, - 'image': 'thunder-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Whirlwind Grenade': { - 'name': 'Whirlwind Grenade', - 'amount': 1, - 'image': 'whirlwind-grenade.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Offense', - 'rarity': 2 - }, - 'Elemental HP Potion': { - 'name': 'Elemental HP Potion', - 'amount': 1, - 'image': 'elemental-hp-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Recovery', - 'rarity': 3 - }, - 'Splendid Elemental HP Potion': { - 'name': 'Splendid Elemental HP Potion', - 'amount': 1, - 'image': 'splendid-elemental-hp-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Recovery', - 'rarity': 3 - }, - 'Major HP Potion': { - 'name': 'Major HP Potion', - 'amount': 1, - 'image': 'major-hp-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Recovery', - 'rarity': 2 - }, - 'HP Potion': { - 'name': 'HP Potion', - 'amount': 1, - 'image': 'hp-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Recovery', - 'rarity': 1 - }, - 'Luterra\'s Horn': { - 'name': 'Luterra\'s Horn', - 'amount': 1, - 'image': 'luterras-horn.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 3 - }, - 'Splendid Stealth Robe': { - 'name': 'Splendid Stealth Robe', - 'amount': 1, - 'image': 'splendid-stealth-robe.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 3 - }, - 'Stealth Robe': { - 'name': 'Stealth Robe', - 'amount': 1, - 'image': 'stealth-robe.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 3 - }, - 'Time Stop Potion': { - 'name': 'Time Stop Potion', - 'amount': 1, - 'image': 'time-stop-potion.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 3 - }, - 'Camouflage Robe': { - 'name': 'Camouflage Robe', - 'amount': 1, - 'image': 'camouflage-robe.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Campfire': { - 'name': 'Campfire', - 'amount': 1, - 'image': 'campfire.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Panacea': { - 'name': 'Panacea', - 'amount': 1, - 'image': 'panacea.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Repair Shop Portal Scroll': { - 'name': 'Repair Shop Portal Scroll', - 'amount': 1, - 'image': 'repair-shop-portal-scroll.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Sacred Charm': { - 'name': 'Sacred Charm', - 'amount': 1, - 'image': 'sacred-charm.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Splendid Campfire': { - 'name': 'Splendid Campfire', - 'amount': 1, - 'image': 'splendid-campfire.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Splendid Camouflage Robe': { - 'name': 'Splendid Camouflage Robe', - 'amount': 1, - 'image': 'splendid-camouflage-robe.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Splendid Panacea': { - 'name': 'Splendid Panacea', - 'amount': 1, - 'image': 'splendid-panacea.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Splendid Sacred Charm': { - 'name': 'Splendid Sacred Charm', - 'amount': 1, - 'image': 'splendid-sacred-charm.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Splendid Taunting Scarecrow': { - 'name': 'Splendid Taunting Scarecrow', - 'amount': 1, - 'image': 'splendid-taunting-scarecrow.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Taunting Scarecrow': { - 'name': 'Taunting Scarecrow', - 'amount': 1, - 'image': 'taunting-scarecrow.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 2 - }, - 'Flare': { - 'name': 'Flare', - 'amount': 1, - 'image': 'flare.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 1 - }, - 'Splendid Flare': { - 'name': 'Splendid Flare', - 'amount': 1, - 'image': 'splendid-flare.webp', - 'category': 'Combat Supplies', - 'subcategory': 'Battle Item - Utility', - 'rarity': 1 - }, -} \ No newline at end of file diff --git a/modules/market_data/consolidated_map.py b/modules/market_data/consolidated_map.py new file mode 100644 index 0000000..17fb493 --- /dev/null +++ b/modules/market_data/consolidated_map.py @@ -0,0 +1,5602 @@ +consolidated_map = { + "Nivar's Hand": { + "name": "Nivar's Hand", + "rarity": 0, + "image": "nivar-s-hand.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Caldarr's Helm": { + "name": "Caldarr's Helm", + "rarity": 0, + "image": "caldarr-s-helm.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Smelly Boots": { + "name": "Smelly Boots", + "rarity": 1, + "image": "smelly-boots.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Valaire's Love Poet": { + "name": "Valaire's Love Poet", + "rarity": 1, + "image": "valaire-s-love-poet.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fake Beard": { + "name": "Fake Beard", + "rarity": 2, + "image": "fake-beard.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Legendary Drinkers Daily": { + "name": "Legendary Drinkers Daily", + "rarity": 2, + "image": "legendary-drinkers-daily.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Biography of Galatur": { + "name": "Biography of Galatur", + "rarity": 3, + "image": "biography-of-galatur.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Unsent Letter": { + "name": "Unsent Letter", + "rarity": 0, + "image": "unsent-letter.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Illustrated Book of Ancient Elementals": { + "name": "Illustrated Book of Ancient Elementals", + "rarity": 0, + "image": "illustrated-book-of-ancient-elementals.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Elzowin's Branch": { + "name": "Elzowin's Branch", + "rarity": 1, + "image": "elzowin-s-branch.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Prophet's Note": { + "name": "Prophet's Note", + "rarity": 1, + "image": "prophet-s-note.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Adrinne's Ring": { + "name": "Adrinne's Ring", + "rarity": 2, + "image": "adrinne-s-ring.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Enviska's Talisman": { + "name": "Enviska's Talisman", + "rarity": 2, + "image": "enviska-s-talisman.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Pocket Watch of Dawn": { + "name": "Pocket Watch of Dawn", + "rarity": 3, + "image": "pocket-watch-of-dawn.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Regulus Statue Fragment": { + "name": "Regulus Statue Fragment", + "rarity": 0, + "image": "regulus-statue-fragment.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Plague Spores": { + "name": "Plague Spores", + "rarity": 0, + "image": "plague-spores.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Book of the Priest": { + "name": "Book of the Priest", + "rarity": 1, + "image": "book-of-the-priest.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Grangor's Tooth": { + "name": "Grangor's Tooth", + "rarity": 1, + "image": "grangor-s-tooth.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Portal Stone": { + "name": "Portal Stone", + "rarity": 2, + "image": "portal-stone.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Aquilok Skin": { + "name": "Aquilok Skin", + "rarity": 2, + "image": "aquilok-skin.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bloodstained Rod": { + "name": "Bloodstained Rod", + "rarity": 3, + "image": "bloodstained-rod.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Hybee Honey": { + "name": "Hybee Honey", + "rarity": 0, + "image": "hybee-honey.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Message in a Bottle": { + "name": "Message in a Bottle", + "rarity": 0, + "image": "message-in-a-bottle.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "The Origin of Tortoyk": { + "name": "The Origin of Tortoyk", + "rarity": 1, + "image": "the-origin-of-tortoyk.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Wanted Poster": { + "name": "Wanted Poster", + "rarity": 1, + "image": "wanted-poster.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Pungent Scale": { + "name": "Pungent Scale", + "rarity": 2, + "image": "pungent-scale.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Glyphed Stone": { + "name": "Glyphed Stone", + "rarity": 2, + "image": "glyphed-stone.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Cashew Fruit": { + "name": "Cashew Fruit", + "rarity": 3, + "image": "cashew-fruit.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "The Epic Tale of Sien": { + "name": "The Epic Tale of Sien", + "rarity": 0, + "image": "the-epic-tale-of-sien.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Mist-bearing Gourd Bottle": { + "name": "Mist-bearing Gourd Bottle", + "rarity": 0, + "image": "mist-bearing-gourd-bottle.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "The Secrets of Anikka Cuisine": { + "name": "The Secrets of Anikka Cuisine", + "rarity": 1, + "image": "the-secrets-of-anikka-cuisine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Tome of the Horizon": { + "name": "Tome of the Horizon", + "rarity": 1, + "image": "tome-of-the-horizon.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sealing Charm": { + "name": "Sealing Charm", + "rarity": 2, + "image": "sealing-charm.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fiend Mask": { + "name": "Fiend Mask", + "rarity": 2, + "image": "fiend-mask.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Giant Flower Petals": { + "name": "Giant Flower Petals", + "rarity": 3, + "image": "giant-flower-petals.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Steel Plate Inscribed with Mysterious Signals": { + "name": "Steel Plate Inscribed with Mysterious Signals", + "rarity": 0, + "image": "steel-plate-inscribed-with-mysterious-signals.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Mari's Mechanical Doll": { + "name": "Mari's Mechanical Doll", + "rarity": 0, + "image": "mari-s-mechanical-doll.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Holy Book of Sceptrum": { + "name": "Holy Book of Sceptrum", + "rarity": 1, + "image": "holy-book-of-sceptrum.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Hoyte News": { + "name": "Hoyte News", + "rarity": 1, + "image": "hoyte-news.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Report on Heavy Walker": { + "name": "Report on Heavy Walker", + "rarity": 2, + "image": "report-on-heavy-walker.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Promotional Flyer of the Verdantier": { + "name": "Promotional Flyer of the Verdantier", + "rarity": 2, + "image": "promotional-flyer-of-the-verdantier.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sand in a Bottle": { + "name": "Sand in a Bottle", + "rarity": 3, + "image": "sand-in-a-bottle.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Icewing": { + "name": "Icewing", + "rarity": 0, + "image": "icewing.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Voice Breaking the Day": { + "name": "Voice Breaking the Day", + "rarity": 0, + "image": "voice-breaking-the-day.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Frost Spider Cocoon": { + "name": "Frost Spider Cocoon", + "rarity": 1, + "image": "frost-spider-cocoon.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Gold Coin of Vrad": { + "name": "Gold Coin of Vrad", + "rarity": 1, + "image": "gold-coin-of-vrad.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Secret Ledger": { + "name": "Secret Ledger", + "rarity": 2, + "image": "secret-ledger.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Timeworn Blade of a Fighter": { + "name": "Timeworn Blade of a Fighter", + "rarity": 2, + "image": "timeworn-blade-of-a-fighter.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Clotted Blood of Rakathus": { + "name": "Clotted Blood of Rakathus", + "rarity": 3, + "image": "clotted-blood-of-rakathus.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Moguro Mask": { + "name": "Moguro Mask", + "rarity": 0, + "image": "moguro-mask.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Punika Specialty Catalog": { + "name": "Punika Specialty Catalog", + "rarity": 0, + "image": "punika-specialty-catalog.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Starlight Conch Shell": { + "name": "Starlight Conch Shell", + "rarity": 1, + "image": "starlight-conch-shell.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Wishlight": { + "name": "Wishlight", + "rarity": 1, + "image": "wishlight.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Haal Ruins Research Journal": { + "name": "Haal Ruins Research Journal", + "rarity": 2, + "image": "haal-ruins-research-journal.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Nia Tribe Dream Decoration": { + "name": "Nia Tribe Dream Decoration", + "rarity": 2, + "image": "nia-tribe-dream-decoration.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Song Inscribed Stone": { + "name": "Song Inscribed Stone", + "rarity": 3, + "image": "song-inscribed-stone.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Mark of the Holy Sacrian Empire": { + "name": "Mark of the Holy Sacrian Empire", + "rarity": 0, + "image": "mark-of-the-holy-sacrian-empire.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Poisoned Arrow": { + "name": "Poisoned Arrow", + "rarity": 0, + "image": "poisoned-arrow.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Avesta Journal": { + "name": "Avesta Journal", + "rarity": 1, + "image": "avesta-journal.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Avesta's Red Cloth": { + "name": "Avesta's Red Cloth", + "rarity": 1, + "image": "avesta-s-red-cloth.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Crow Stone": { + "name": "Crow Stone", + "rarity": 2, + "image": "crow-stone.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fresh Blood of the Corrupted": { + "name": "Fresh Blood of the Corrupted", + "rarity": 2, + "image": "fresh-blood-of-the-corrupted.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Avesta List": { + "name": "Avesta List", + "rarity": 3, + "image": "avesta-list.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Armor Piece of a Knight": { + "name": "Armor Piece of a Knight", + "rarity": 0, + "image": "armor-piece-of-a-knight.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Amalone's Journal": { + "name": "Amalone's Journal", + "rarity": 0, + "image": "amalone-s-journal.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Guardian's Record": { + "name": "Guardian's Record", + "rarity": 1, + "image": "guardian-s-record.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Thick Parchment": { + "name": "Thick Parchment", + "rarity": 1, + "image": "thick-parchment.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Adventurer's Journal": { + "name": "Adventurer's Journal", + "rarity": 2, + "image": "adventurer-s-journal.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Royal Warning": { + "name": "Royal Warning", + "rarity": 2, + "image": "royal-warning.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Encrypted Note": { + "name": "Encrypted Note", + "rarity": 3, + "image": "encrypted-note.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Faceted Feather Chest": { + "name": "Faceted Feather Chest", + "rarity": 0, + "image": "faceted-feather-chest.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Light-filled Shard": { + "name": "Light-filled Shard", + "rarity": 0, + "image": "light-filled-shard.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Gienah's Perfume": { + "name": "Gienah's Perfume", + "rarity": 1, + "image": "gienah-s-perfume.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Heavenly Orb": { + "name": "Heavenly Orb", + "rarity": 2, + "image": "heavenly-orb.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bard's Sheet Music": { + "name": "Bard's Sheet Music", + "rarity": 3, + "image": "bard-s-sheet-music.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Star Compass": { + "name": "Star Compass", + "rarity": 3, + "image": "star-compass.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Procyon's Breath": { + "name": "Procyon's Breath", + "rarity": 4, + "image": "procyon-s-breath.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Thirain's Wanted Poster": { + "name": "Thirain's Wanted Poster", + "rarity": 0, + "image": "thirain-s-wanted-poster.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Centurion's Notebook": { + "name": "Centurion's Notebook", + "rarity": 0, + "image": "centurion-s-notebook.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Redhand Mercenary Gloves": { + "name": "Redhand Mercenary Gloves", + "rarity": 1, + "image": "redhand-mercenary-gloves.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Pendant of the Fallen Noble": { + "name": "Pendant of the Fallen Noble", + "rarity": 1, + "image": "pendant-of-the-fallen-noble.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "The Legend of King Luterra": { + "name": "The Legend of King Luterra", + "rarity": 2, + "image": "the-legend-of-king-luterra.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Marionette of the Steel Lady": { + "name": "Marionette of the Steel Lady", + "rarity": 2, + "image": "marionette-of-the-steel-lady.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Lynnis's Ring": { + "name": "Lynnis's Ring", + "rarity": 3, + "image": "lynnis-s-ring.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Eagle Ring": { + "name": "Eagle Ring", + "rarity": 0, + "image": "eagle-ring.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Nahun's Key": { + "name": "Nahun's Key", + "rarity": 0, + "image": "nahun-s-key.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Gold Coin of the Dead": { + "name": "Gold Coin of the Dead", + "rarity": 1, + "image": "gold-coin-of-the-dead.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Legend of Luoden River": { + "name": "Legend of Luoden River", + "rarity": 1, + "image": "legend-of-luoden-river.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Dagger of the High Priest": { + "name": "Dagger of the High Priest", + "rarity": 2, + "image": "dagger-of-the-high-priest.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Collected Stories of the Luterran Knights": { + "name": "Collected Stories of the Luterran Knights", + "rarity": 2, + "image": "collected-stories-of-the-luterran-knights.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Black Fox Flag": { + "name": "Black Fox Flag", + "rarity": 3, + "image": "black-fox-flag.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Solar Salt": { + "name": "Solar Salt", + "rarity": 0, + "image": "solar-salt.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Oath of Bandits": { + "name": "Oath of Bandits", + "rarity": 0, + "image": "oath-of-bandits.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Research Note on Sapira": { + "name": "Research Note on Sapira", + "rarity": 1, + "image": "research-note-on-sapira.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Ramella's Mirror": { + "name": "Ramella's Mirror", + "rarity": 1, + "image": "ramella-s-mirror.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Levatanos Core": { + "name": "Levatanos Core", + "rarity": 2, + "image": "levatanos-core.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Salttree Fruit": { + "name": "Salttree Fruit", + "rarity": 2, + "image": "salttree-fruit.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Nomadic Dream": { + "name": "Nomadic Dream", + "rarity": 3, + "image": "nomadic-dream.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Help Wanted Poster": { + "name": "Help Wanted Poster", + "rarity": 0, + "image": "help-wanted-poster.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Spirit Calling Woodblock": { + "name": "Spirit Calling Woodblock", + "rarity": 0, + "image": "spirit-calling-woodblock.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Nightmare Elixir": { + "name": "Nightmare Elixir", + "rarity": 1, + "image": "nightmare-elixir.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fabulous Saucer": { + "name": "Fabulous Saucer", + "rarity": 2, + "image": "fabulous-saucer.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Solar Stone": { + "name": "Solar Stone", + "rarity": 3, + "image": "solar-stone.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Solar Knights Token": { + "name": "Solar Knights Token", + "rarity": 3, + "image": "solar-knights-token.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Crumpled Letter": { + "name": "Crumpled Letter", + "rarity": 4, + "image": "crumpled-letter.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Eliyabeck Tattoo": { + "name": "Eliyabeck Tattoo", + "rarity": 0, + "image": "eliyabeck-tattoo.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Tarunian Charm": { + "name": "Tarunian Charm", + "rarity": 0, + "image": "tarunian-charm.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Silver Tentacle": { + "name": "Silver Tentacle", + "rarity": 1, + "image": "silver-tentacle.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Eve's Magick Paper": { + "name": "Eve's Magick Paper", + "rarity": 2, + "image": "eve-s-magick-paper.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Mellemar's Molar": { + "name": "Mellemar's Molar", + "rarity": 3, + "image": "mellemar-s-molar.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Dueogsini Stone": { + "name": "Dueogsini Stone", + "rarity": 3, + "image": "dueogsini-stone.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Vessel of the Final Breath": { + "name": "Vessel of the Final Breath", + "rarity": 4, + "image": "vessel-of-the-final-breath.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Smelly Cheese Chest": { + "name": "Smelly Cheese Chest", + "rarity": 1, + "image": "smelly-cheese-chest.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Smelly Boots Chest": { + "name": "Smelly Boots Chest", + "rarity": 1, + "image": "smelly-boots-chest.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Food Chest for Trade": { + "name": "Food Chest for Trade", + "rarity": 2, + "image": "food-chest-for-trade.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sweet Mojito": { + "name": "Sweet Mojito", + "rarity": 1, + "image": "sweet-mojito.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Punika Gin": { + "name": "Punika Gin", + "rarity": 1, + "image": "punika-gin.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Roasted Banana Powder": { + "name": "Roasted Banana Powder", + "rarity": 1, + "image": "roasted-banana-powder.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sparkling Elemental Food": { + "name": "Sparkling Elemental Food", + "rarity": 3, + "image": "sparkling-elemental-food.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Honey Butter Beer": { + "name": "Honey Butter Beer", + "rarity": 2, + "image": "honey-butter-beer.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Not Fully Fermented Ryucrokota Salo": { + "name": "Not Fully Fermented Ryucrokota Salo", + "rarity": 2, + "image": "not-fully-fermented-ryucrokota-salo.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Wood Blood": { + "name": "Wood Blood", + "rarity": 1, + "image": "wood-blood.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Failed Distilled Beverage": { + "name": "Failed Distilled Beverage", + "rarity": 2, + "image": "failed-distilled-beverage.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Somewhat Complete Distilled Beverage": { + "name": "Somewhat Complete Distilled Beverage", + "rarity": 2, + "image": "somewhat-complete-distilled-beverage.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Almost Complete Distilled Beverage": { + "name": "Almost Complete Distilled Beverage", + "rarity": 3, + "image": "almost-complete-distilled-beverage.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Salt Crystal": { + "name": "Salt Crystal", + "rarity": 2, + "image": "salt-crystal.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Grey Bait Material": { + "name": "Grey Bait Material", + "rarity": 1, + "image": "grey-bait-material.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Red Bait Material": { + "name": "Red Bait Material", + "rarity": 1, + "image": "red-bait-material.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Orange Bait Material": { + "name": "Orange Bait Material", + "rarity": 1, + "image": "orange-bait-material.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Brisket Ready to Be Applied with Rub": { + "name": "Brisket Ready to Be Applied with Rub", + "rarity": 3, + "image": "brisket-ready-to-be-applied-with-rub.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Brisket, Ready for Dry Rub": { + "name": "Brisket, Ready for Dry Rub", + "rarity": 2, + "image": "brisket-ready-for-dry-rub.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Veda's Prideholme-style Home Food": { + "name": "Veda's Prideholme-style Home Food", + "rarity": 3, + "image": "veda-s-prideholme-style-home-food.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Regria Flower Oil": { + "name": "Regria Flower Oil", + "rarity": 3, + "image": "regria-flower-oil.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Solar Tree Sprout Cider": { + "name": "Solar Tree Sprout Cider", + "rarity": 3, + "image": "solar-tree-sprout-cider.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Regria Wheat Bread": { + "name": "Regria Wheat Bread", + "rarity": 3, + "image": "regria-wheat-bread.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Protein Packed White Bird Stew": { + "name": "Protein Packed White Bird Stew", + "rarity": 3, + "image": "protein-packed-white-bird-stew.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "499-year-old Mera Wine": { + "name": "499-year-old Mera Wine", + "rarity": 2, + "image": "499-year-old-mera-wine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "500-year-old Mera Wine": { + "name": "500-year-old Mera Wine", + "rarity": 4, + "image": "500-year-old-mera-wine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Special Potato": { + "name": "Special Potato", + "rarity": 2, + "image": "special-potato.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Holy Potato with Teeth Marks": { + "name": "Holy Potato with Teeth Marks", + "rarity": 4, + "image": "holy-potato-with-teeth-marks.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Pow Pow Honey Health Tonic": { + "name": "Pow Pow Honey Health Tonic", + "rarity": 3, + "image": "pow-pow-honey-health-tonic.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Plenty Plenty Mokoko Gift Package": { + "name": "Plenty Plenty Mokoko Gift Package", + "rarity": 3, + "image": "plenty-plenty-mokoko-gift-package.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Cashew Cashew Smoothie": { + "name": "Cashew Cashew Smoothie", + "rarity": 3, + "image": "cashew-cashew-smoothie.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Eggy Eggy Soft Boiled Egg": { + "name": "Eggy Eggy Soft Boiled Egg", + "rarity": 3, + "image": "eggy-eggy-soft-boiled-egg.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Yucky Yucky Hard Boiled Egg": { + "name": "Yucky Yucky Hard Boiled Egg", + "rarity": 2, + "image": "yucky-yucky-hard-boiled-egg.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sweet Sweet Royal Jelly": { + "name": "Sweet Sweet Royal Jelly", + "rarity": 3, + "image": "sweet-sweet-royal-jelly.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Crunch Crunch Fried Shell": { + "name": "Crunch Crunch Fried Shell", + "rarity": 4, + "image": "crunch-crunch-fried-shell.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Half and Half, Dip and Pour": { + "name": "Half and Half, Dip and Pour", + "rarity": 4, + "image": "half-and-half-dip-and-pour.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fortune Cookie Chest": { + "name": "Fortune Cookie Chest", + "rarity": 2, + "image": "fortune-cookie-chest.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Lucky Fortune Cookie": { + "name": "Lucky Fortune Cookie", + "rarity": 3, + "image": "lucky-fortune-cookie.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Unlucky Fortune Cookie": { + "name": "Unlucky Fortune Cookie", + "rarity": 2, + "image": "unlucky-fortune-cookie.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Secret Pill of Jeok Family": { + "name": "Secret Pill of Jeok Family", + "rarity": 3, + "image": "secret-pill-of-jeok-family.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Secret Yeon-Style Marinated Special": { + "name": "Secret Yeon-Style Marinated Special", + "rarity": 3, + "image": "secret-yeon-style-marinated-special.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Manpo's Secret Meat Dumpling": { + "name": "Manpo's Secret Meat Dumpling", + "rarity": 3, + "image": "manpo-s-secret-meat-dumpling.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Deer Hind Hooves Stew": { + "name": "Deer Hind Hooves Stew", + "rarity": 3, + "image": "deer-hind-hooves-stew.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sugar Lump": { + "name": "Sugar Lump", + "rarity": 1, + "image": "sugar-lump.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Questionable Sugar Sculpture": { + "name": "Questionable Sugar Sculpture", + "rarity": 2, + "image": "questionable-sugar-sculpture.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Broken Sugar Sculpture": { + "name": "Broken Sugar Sculpture", + "rarity": 3, + "image": "broken-sugar-sculpture.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Perfect Sugar Sculpture": { + "name": "Perfect Sugar Sculpture", + "rarity": 4, + "image": "perfect-sugar-sculpture.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Soup of Transcendence": { + "name": "Soup of Transcendence", + "rarity": 4, + "image": "soup-of-transcendence.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "X-090892": { + "name": "X-090892", + "rarity": 3, + "image": "x-090892.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Cykin Combat Ration Type A": { + "name": "Cykin Combat Ration Type A", + "rarity": 3, + "image": "cykin-combat-ration-type-a.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Cykin Combat Ration Type C": { + "name": "Cykin Combat Ration Type C", + "rarity": 3, + "image": "cykin-combat-ration-type-c.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sceptrumpam 3mg": { + "name": "Sceptrumpam 3mg", + "rarity": 3, + "image": "sceptrumpam-3mg.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Boosting Fluid Soup": { + "name": "Boosting Fluid Soup", + "rarity": 3, + "image": "boosting-fluid-soup.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Boiling Liquid": { + "name": "Boiling Liquid", + "rarity": 2, + "image": "boiling-liquid.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Unknown Liquid XD-6353": { + "name": "Unknown Liquid XD-6353", + "rarity": 4, + "image": "unknown-liquid-xd-6353.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bergstrom's Invisibility Potion": { + "name": "Bergstrom's Invisibility Potion", + "rarity": 2, + "image": "bergstrom-s-invisibility-potion.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bergstrom's Yellow Potion": { + "name": "Bergstrom's Yellow Potion", + "rarity": 2, + "image": "bergstrom-s-yellow-potion.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bergstrom Drink": { + "name": "Bergstrom Drink", + "rarity": 4, + "image": "bergstrom-drink.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Frozen Butterfly Larva": { + "name": "Frozen Butterfly Larva", + "rarity": 3, + "image": "frozen-butterfly-larva.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Wolf Meat": { + "name": "Wolf Meat", + "rarity": 3, + "image": "wolf-meat.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Old Canned Food": { + "name": "Old Canned Food", + "rarity": 3, + "image": "old-canned-food.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Frost Spider Egg": { + "name": "Frost Spider Egg", + "rarity": 3, + "image": "frost-spider-egg.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sapphire Sardine": { + "name": "Sapphire Sardine", + "rarity": 2, + "image": "sapphire-sardine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Grilled Sapphire Sardine": { + "name": "Grilled Sapphire Sardine", + "rarity": 3, + "image": "grilled-sapphire-sardine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Snowflake Shaved Ice": { + "name": "Snowflake Shaved Ice", + "rarity": 2, + "image": "snowflake-shaved-ice.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Shushire Snowflake Shaved Ice": { + "name": "Shushire Snowflake Shaved Ice", + "rarity": 4, + "image": "shushire-snowflake-shaved-ice.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sirius's Tears": { + "name": "Sirius's Tears", + "rarity": 4, + "image": "sirius-s-tears.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Wonderful Rum": { + "name": "Wonderful Rum", + "rarity": 3, + "image": "wonderful-rum.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Coolkur Beer": { + "name": "Coolkur Beer", + "rarity": 3, + "image": "coolkur-beer.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Mine Car Lunchbox": { + "name": "Mine Car Lunchbox", + "rarity": 3, + "image": "mine-car-lunchbox.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Neria's Cheese Snack": { + "name": "Neria's Cheese Snack", + "rarity": 3, + "image": "neria-s-cheese-snack.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Gourmet Stir-fried Mushroom": { + "name": "Gourmet Stir-fried Mushroom", + "rarity": 4, + "image": "gourmet-stir-fried-mushroom.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Worm Head Jelly": { + "name": "Worm Head Jelly", + "rarity": 4, + "image": "worm-head-jelly.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Great Stew": { + "name": "Great Stew", + "rarity": 4, + "image": "great-stew.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Starsand Cocktail": { + "name": "Starsand Cocktail", + "rarity": 3, + "image": "starsand-cocktail.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Kaloa Boar BBQ": { + "name": "Kaloa Boar BBQ", + "rarity": 3, + "image": "kaloa-boar-bbq.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Flower Salad": { + "name": "Flower Salad", + "rarity": 3, + "image": "flower-salad.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Meat Bug": { + "name": "Meat Bug", + "rarity": 3, + "image": "meat-bug.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Wild Banana Bread": { + "name": "Wild Banana Bread", + "rarity": 4, + "image": "wild-banana-bread.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Steamed Papu Crab": { + "name": "Steamed Papu Crab", + "rarity": 4, + "image": "steamed-papu-crab.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Punika Festival's Dish": { + "name": "Punika Festival's Dish", + "rarity": 4, + "image": "punika-festival-s-dish.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Ether Essence": { + "name": "Ether Essence", + "rarity": 3, + "image": "ether-essence.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Pit-A-Pat Macaron": { + "name": "Pit-A-Pat Macaron", + "rarity": 3, + "image": "pit-a-pat-macaron.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Jelly Chew": { + "name": "Jelly Chew", + "rarity": 3, + "image": "jelly-chew.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Sweet Honey Butter Beer": { + "name": "Sweet Honey Butter Beer", + "rarity": 3, + "image": "sweet-honey-butter-beer.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Tooki Tooki Soup": { + "name": "Tooki Tooki Soup", + "rarity": 4, + "image": "tooki-tooki-soup.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Zechbas": { + "name": "Zechbas", + "rarity": 4, + "image": "zechbas.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Snail Roll Cake": { + "name": "Snail Roll Cake", + "rarity": 4, + "image": "snail-roll-cake.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Avesta Smoked Beef Jerkey": { + "name": "Avesta Smoked Beef Jerkey", + "rarity": 3, + "image": "avesta-smoked-beef-jerkey.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Feiton Blood Pudding Sausage": { + "name": "Feiton Blood Pudding Sausage", + "rarity": 3, + "image": "feiton-blood-pudding-sausage.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Eel Herb Kholodets": { + "name": "Eel Herb Kholodets", + "rarity": 3, + "image": "eel-herb-kholodets.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Ryucrokota Salo": { + "name": "Ryucrokota Salo", + "rarity": 3, + "image": "ryucrokota-salo.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Krakan Intestine Cream Soup": { + "name": "Krakan Intestine Cream Soup", + "rarity": 4, + "image": "krakan-intestine-cream-soup.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bloody Fist": { + "name": "Bloody Fist", + "rarity": 4, + "image": "bloody-fist.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Eel Caviar Salad": { + "name": "Eel Caviar Salad", + "rarity": 4, + "image": "eel-caviar-salad.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Balankar Ranger's Salad": { + "name": "Balankar Ranger's Salad", + "rarity": 3, + "image": "balankar-ranger-s-salad.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Proxima Salad": { + "name": "Proxima Salad", + "rarity": 2, + "image": "proxima-salad.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Proxima Root Nugget": { + "name": "Proxima Root Nugget", + "rarity": 2, + "image": "proxima-root-nugget.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Proxima Course Meal": { + "name": "Proxima Course Meal", + "rarity": 3, + "image": "proxima-course-meal.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fresh Cocktail": { + "name": "Fresh Cocktail", + "rarity": 2, + "image": "fresh-cocktail.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Questionable Cocktail": { + "name": "Questionable Cocktail", + "rarity": 2, + "image": "questionable-cocktail.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Pungent Cocktail": { + "name": "Pungent Cocktail", + "rarity": 2, + "image": "pungent-cocktail.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Palatable Cocktail": { + "name": "Palatable Cocktail", + "rarity": 2, + "image": "palatable-cocktail.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Harmony": { + "name": "Harmony", + "rarity": 4, + "image": "harmony.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Goblin Fish Soup": { + "name": "Goblin Fish Soup", + "rarity": 3, + "image": "goblin-fish-soup.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fesnar Mushroom Stew": { + "name": "Fesnar Mushroom Stew", + "rarity": 3, + "image": "fesnar-mushroom-stew.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Long Live the Queen!": { + "name": "Long Live the Queen!", + "rarity": 4, + "image": "long-live-the-queen.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Vern Anniversary Spirits": { + "name": "Vern Anniversary Spirits", + "rarity": 3, + "image": "vern-anniversary-spirits.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Boar BBQ": { + "name": "Boar BBQ", + "rarity": 3, + "image": "boar-bbq.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Lakebar Freshwater Fish Stew": { + "name": "Lakebar Freshwater Fish Stew", + "rarity": 3, + "image": "lakebar-freshwater-fish-stew.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Miner's Rum": { + "name": "Miner's Rum", + "rarity": 3, + "image": "miner-s-rum.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Efferin's Egg Rice": { + "name": "Efferin's Egg Rice", + "rarity": 3, + "image": "efferin-s-egg-rice.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bear Gallbladder Skewer": { + "name": "Bear Gallbladder Skewer", + "rarity": 3, + "image": "bear-gallbladder-skewer.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Wriggling Tentacle Sashimi": { + "name": "Wriggling Tentacle Sashimi", + "rarity": 4, + "image": "wriggling-tentacle-sashimi.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Ripening Anti Hair Loss Agent": { + "name": "Ripening Anti Hair Loss Agent", + "rarity": 2, + "image": "ripening-anti-hair-loss-agent.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Medrick Hair Loss Solution": { + "name": "Medrick Hair Loss Solution", + "rarity": 4, + "image": "medrick-hair-loss-solution.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Dusty Rainbow Candy": { + "name": "Dusty Rainbow Candy", + "rarity": 3, + "image": "dusty-rainbow-candy.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Foundation Centennial Wine": { + "name": "Foundation Centennial Wine", + "rarity": 3, + "image": "foundation-centennial-wine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Luterran Course Meal": { + "name": "Luterran Course Meal", + "rarity": 3, + "image": "luterran-course-meal.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Gourmet Seafood Stew": { + "name": "Gourmet Seafood Stew", + "rarity": 3, + "image": "gourmet-seafood-stew.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Thirain T-Bone Steak": { + "name": "Thirain T-Bone Steak", + "rarity": 3, + "image": "thirain-t-bone-steak.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bread Crumbs": { + "name": "Bread Crumbs", + "rarity": 2, + "image": "bread-crumbs.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Donut Servant": { + "name": "Donut Servant", + "rarity": 2, + "image": "donut-servant.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Donut Butler": { + "name": "Donut Butler", + "rarity": 2, + "image": "donut-butler.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Donut Maiden": { + "name": "Donut Maiden", + "rarity": 4, + "image": "donut-maiden.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Gelato": { + "name": "Gelato", + "rarity": 2, + "image": "gelato.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Hot Chocolate Coffee": { + "name": "Hot Chocolate Coffee", + "rarity": 2, + "image": "hot-chocolate-coffee.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Melting Gelato": { + "name": "Melting Gelato", + "rarity": 2, + "image": "melting-gelato.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Fully-melted Gelato": { + "name": "Fully-melted Gelato", + "rarity": 4, + "image": "fully-melted-gelato.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Salt-grilled Saltbug": { + "name": "Salt-grilled Saltbug", + "rarity": 3, + "image": "salt-grilled-saltbug.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Natural Mungka Jerky": { + "name": "Natural Mungka Jerky", + "rarity": 3, + "image": "natural-mungka-jerky.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Worm Poop Coffee": { + "name": "Worm Poop Coffee", + "rarity": 3, + "image": "worm-poop-coffee.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Age-old Encavian Wine": { + "name": "Age-old Encavian Wine", + "rarity": 3, + "image": "age-old-encavian-wine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Salted Food Box": { + "name": "Salted Food Box", + "rarity": 3, + "image": "salted-food-box.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Rainmaking Ritual Food": { + "name": "Rainmaking Ritual Food", + "rarity": 4, + "image": "rainmaking-ritual-food.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Rainmaking Ritual Leftovers": { + "name": "Rainmaking Ritual Leftovers", + "rarity": 4, + "image": "rainmaking-ritual-leftovers.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Salt Cracker": { + "name": "Salt Cracker", + "rarity": 4, + "image": "salt-cracker.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Steamed Oyster with White Wine": { + "name": "Steamed Oyster with White Wine", + "rarity": 3, + "image": "steamed-oyster-with-white-wine.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Kandarian Cold Lager": { + "name": "Kandarian Cold Lager", + "rarity": 3, + "image": "kandarian-cold-lager.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Bellion Wings": { + "name": "Bellion Wings", + "rarity": 3, + "image": "bellion-wings.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Vernilaya": { + "name": "Vernilaya", + "rarity": 4, + "image": "vernilaya.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Crayfish with Vegetables": { + "name": "Crayfish with Vegetables", + "rarity": 4, + "image": "crayfish-with-vegetables.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Vernese Brisket": { + "name": "Vernese Brisket", + "rarity": 5, + "image": "vernese-brisket.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Magical Vernese Brandy": { + "name": "Magical Vernese Brandy", + "rarity": 5, + "image": "magical-vernese-brandy.webp", + "category": "Adventurer's Tome", + "subcategory": None, + "amount": 1 + }, + "Atropine Potion": { + "name": "Atropine Potion", + "rarity": 3, + "image": "atropine-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Camouflage Robe": { + "name": "Camouflage Robe", + "rarity": 2, + "image": "camouflage-robe.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Campfire": { + "name": "Campfire", + "rarity": 2, + "image": "campfire.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Clay Grenade": { + "name": "Clay Grenade", + "rarity": 2, + "image": "clay-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Corrosive Bomb": { + "name": "Corrosive Bomb", + "rarity": 2, + "image": "corrosive-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Dark Grenade": { + "name": "Dark Grenade", + "rarity": 2, + "image": "dark-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Destruction Bomb": { + "name": "Destruction Bomb", + "rarity": 2, + "image": "destruction-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Electric Grenade": { + "name": "Electric Grenade", + "rarity": 2, + "image": "electric-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Elemental HP Potion": { + "name": "Elemental HP Potion", + "rarity": 3, + "image": "elemental-hp-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Recovery", + "amount": 1 + }, + "Flame Grenade": { + "name": "Flame Grenade", + "rarity": 2, + "image": "flame-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Flare": { + "name": "Flare", + "rarity": 1, + "image": "flare.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Flash Grenade": { + "name": "Flash Grenade", + "rarity": 2, + "image": "flash-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Frost Grenade": { + "name": "Frost Grenade", + "rarity": 2, + "image": "frost-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "HP Potion": { + "name": "HP Potion", + "rarity": 1, + "image": "hp-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Recovery", + "amount": 1 + }, + "Luterra's Horn": { + "name": "Luterra's Horn", + "rarity": 3, + "image": "luterra-s-horn.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Major HP Potion": { + "name": "Major HP Potion", + "rarity": 2, + "image": "major-hp-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Recovery", + "amount": 1 + }, + "Marching Flag": { + "name": "Marching Flag", + "rarity": 2, + "image": "marching-flag.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Panacea": { + "name": "Panacea", + "rarity": 2, + "image": "panacea.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Pheromone Bomb": { + "name": "Pheromone Bomb", + "rarity": 2, + "image": "pheromone-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Protective Potion": { + "name": "Protective Potion", + "rarity": 2, + "image": "protective-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Repair Shop Portal Scroll": { + "name": "Repair Shop Portal Scroll", + "rarity": 2, + "image": "repair-shop-portal-scroll.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Sacred Bomb": { + "name": "Sacred Bomb", + "rarity": 2, + "image": "sacred-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Sacred Charm": { + "name": "Sacred Charm", + "rarity": 2, + "image": "sacred-charm.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Sleep Bomb": { + "name": "Sleep Bomb", + "rarity": 2, + "image": "sleep-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Campfire": { + "name": "Splendid Campfire", + "rarity": 2, + "image": "splendid-campfire.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Splendid Clay Grenade": { + "name": "Splendid Clay Grenade", + "rarity": 2, + "image": "splendid-clay-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Corrosion Bomb": { + "name": "Splendid Corrosion Bomb", + "rarity": 2, + "image": "splendid-corrosion-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Dark Grenade": { + "name": "Splendid Dark Grenade", + "rarity": 2, + "image": "splendid-dark-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Destruction Bomb": { + "name": "Splendid Destruction Bomb", + "rarity": 2, + "image": "splendid-destruction-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Disguise Robe": { + "name": "Splendid Disguise Robe", + "rarity": 2, + "image": "splendid-disguise-robe.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Splendid Elemental HP Potion": { + "name": "Splendid Elemental HP Potion", + "rarity": 3, + "image": "splendid-elemental-hp-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Recovery", + "amount": 1 + }, + "Splendid Flame Grenade": { + "name": "Splendid Flame Grenade", + "rarity": 2, + "image": "splendid-flame-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Flare": { + "name": "Splendid Flare", + "rarity": 1, + "image": "splendid-flare.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Splendid Flash Grenade": { + "name": "Splendid Flash Grenade", + "rarity": 2, + "image": "splendid-flash-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Frost Grenade": { + "name": "Splendid Frost Grenade", + "rarity": 2, + "image": "splendid-frost-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Lightening Grenade": { + "name": "Splendid Lightening Grenade", + "rarity": 2, + "image": "splendid-lightening-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Marching Flag": { + "name": "Splendid Marching Flag", + "rarity": 2, + "image": "splendid-marching-flag.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Splendid Panacea": { + "name": "Splendid Panacea", + "rarity": 2, + "image": "splendid-panacea.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Splendid Protective Potion": { + "name": "Splendid Protective Potion", + "rarity": 2, + "image": "splendid-protective-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Splendid Sacred Bomb": { + "name": "Splendid Sacred Bomb", + "rarity": 2, + "image": "splendid-sacred-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Sacred Charm": { + "name": "Splendid Sacred Charm", + "rarity": 2, + "image": "splendid-sacred-charm.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Splendid Sleep Bomb": { + "name": "Splendid Sleep Bomb", + "rarity": 2, + "image": "splendid-sleep-bomb.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Stealth Robe": { + "name": "Splendid Stealth Robe", + "rarity": 3, + "image": "splendid-stealth-robe.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Splendid Swift Robe": { + "name": "Splendid Swift Robe", + "rarity": 2, + "image": "splendid-swift-robe.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Splendid Taunting Scarecrow": { + "name": "Splendid Taunting Scarecrow", + "rarity": 2, + "image": "splendid-taunting-scarecrow.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Splendid Thunder Potion": { + "name": "Splendid Thunder Potion", + "rarity": 2, + "image": "splendid-thunder-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Splendid Whirlwind Grenade": { + "name": "Splendid Whirlwind Grenade", + "rarity": 2, + "image": "splendid-whirlwind-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Stealth Robe": { + "name": "Stealth Robe", + "rarity": 3, + "image": "stealth-robe.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Stimulant": { + "name": "Stimulant", + "rarity": 3, + "image": "stimulant.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Swiftness Robe": { + "name": "Swiftness Robe", + "rarity": 2, + "image": "swiftness-robe.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Buff", + "amount": 1 + }, + "Taunting Scarecrow": { + "name": "Taunting Scarecrow", + "rarity": 2, + "image": "taunting-scarecrow.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Thunder Potion": { + "name": "Thunder Potion", + "rarity": 2, + "image": "thunder-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "Time Stop Potion": { + "name": "Time Stop Potion", + "rarity": 3, + "image": "time-stop-potion.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Utility", + "amount": 1 + }, + "Whirlwind Grenade": { + "name": "Whirlwind Grenade", + "rarity": 2, + "image": "whirlwind-grenade.webp", + "category": "Combat Supplies", + "subcategory": "Battle Item - Offense", + "amount": 1 + }, + "[Masterwork] Artisan's Browned ...": { + "name": "[Masterwork] Artisan's Browned Grilled Skewers", + "rarity": 1, + "image": "masterwork-artisan-s-browned-grilled-skewers.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Artisan's Fluffy Omele...": { + "name": "[Masterwork] Artisan's Fluffy Omelet", + "rarity": 1, + "image": "masterwork-artisan-s-fluffy-omelet.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Artisan's Garlic Steak ...": { + "name": "[Masterwork] Artisan's Garlic Steak Meal", + "rarity": 2, + "image": "masterwork-artisan-s-garlic-steak-meal.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Artisan's Grilled ...": { + "name": "[Masterwork] Artisan's Grilled Skewers", + "rarity": 1, + "image": "masterwork-artisan-s-grilled-skewers.webp", + "category": "Cooking", + "subcategory": None, + "amount": 1 + }, + "[Masterwork] Artisan's Omelet": { + "name": "[Masterwork] Artisan's Omelet", + "rarity": 1, + "image": "masterwork-artisan-s-omelet.webp", + "category": "Cooking", + "subcategory": None, + "amount": 1 + }, + "[Masterwork] Artisan's Spicy Stew": { + "name": "[Masterwork] Artisan's Spicy Stew", + "rarity": 1, + "image": "masterwork-artisan-s-spicy-stew.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Artisan's Steak": { + "name": "[Masterwork] Artisan's Steak", + "rarity": 1, + "image": "masterwork-artisan-s-steak.webp", + "category": "Cooking", + "subcategory": None, + "amount": 1 + }, + "[Masterwork] Artisan's Stew": { + "name": "[Masterwork] Artisan's Stew", + "rarity": 1, + "image": "masterwork-artisan-s-stew.webp", + "category": "Cooking", + "subcategory": None, + "amount": 1 + }, + "[Masterwork] Expert Butter Steak ...": { + "name": "[Masterwork] Expert Butter Steak Meal", + "rarity": 2, + "image": "masterwork-expert-butter-steak-meal.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Expert Crispy Grilled ...": { + "name": "[Masterwork] Expert Crispy Grilled Skewers", + "rarity": 1, + "image": "masterwork-expert-crispy-grilled-skewers.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Expert Sweet Stew": { + "name": "[Masterwork] Expert Sweet Stew", + "rarity": 1, + "image": "masterwork-expert-sweet-stew.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Expert Tender Omelet": { + "name": "[Masterwork] Expert Tender Omelet", + "rarity": 1, + "image": "masterwork-expert-tender-omelet.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Master's Chewy Grille...": { + "name": "[Masterwork] Master's Chewy Grilled Skewers", + "rarity": 1, + "image": "masterwork-master-s-chewy-grilled-skewers.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Master's Salty Stew": { + "name": "[Masterwork] Master's Salty Stew", + "rarity": 1, + "image": "masterwork-master-s-salty-stew.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Master's Moist Omele...": { + "name": "[Masterwork] Master's Moist Omelet", + "rarity": 1, + "image": "masterwork-master-s-moist-omelet.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Master's Herb Steak ...": { + "name": "[Masterwork] Master's Herb Steak Meal", + "rarity": 2, + "image": "masterwork-master-s-herb-steak-meal.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Specialist Season Grilled Skewers": { + "name": "[Masterwork] Specialist Season Grilled Skewers", + "rarity": 1, + "image": "masterwork-specialist-season-grilled-skewers.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Specialist Mixed Stew": { + "name": "[Masterwork] Specialist Mixed Stew", + "rarity": 1, + "image": "masterwork-specialist-mixed-stew.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Specialist Traditional Omelet": { + "name": "[Masterwork] Specialist Traditional Omelet", + "rarity": 1, + "image": "masterwork-specialist-traditional-omelet.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "[Masterwork] Specialist Beef Tenderloin Steak Meal": { + "name": "[Masterwork] Specialist Beef Tenderloin Steak Meal", + "rarity": 2, + "image": "masterwork-specialist-beef-tenderloin-steak-meal.webp", + "category": "Cooking", + "subcategory": None, + "amount": 10 + }, + "Blue Crystal": { + "name": "Blue Crystal", + "rarity": 0, + "image": "blue-crystal.webp", + "category": "Currency Exchange", + "subcategory": None, + "amount": 1 + }, + "Royal Crystal": { + "name": "Royal Crystal", + "rarity": 0, + "image": "royal-crystal.webp", + "category": "Currency Exchange", + "subcategory": None, + "amount": 1 + }, + "[Aeromancer] Windfury Engraving ...": { + "name": "[Aeromancer] Windfury Engraving Recipie", + "rarity": None, + "image": "a", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Aeromancer] Drizzle Engraving ...": { + "name": "[Aeromancer] Drizzle Engraving Recipie", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Arcanist] Grace of the Empress ...": { + "name": "[Arcanist] Grace of the Empress Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Arcanist] Order of the Emperor ...": { + "name": "[Arcanist] Order of the Emperor Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Artillerist] Barrage Enhancement ...": { + "name": "[Artillerist] Barrage Enhancement Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Artillerist] Firepower Enhancement...": { + "name": "[Artillerist] Firepower Enhancement Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Artist] Full Bloom Engraving Recip...": { + "name": "[Artist] Full Bloom Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Artist] Recurrence Engraving Recip...": { + "name": "[Artist] Recurrence Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Bard] Desperate Salvation Engravi...": { + "name": "[Bard] Desperate Salvation Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Bard] True Courage Engraving ...": { + "name": "[Bard] True Courage Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Berserker] Berserker Technique ...": { + "name": "[Berserker] Berserker Technique Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Berserker] Mayhem Engraving ...": { + "name": "[Berserker] Mayhem Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Deadeye] Enhanced Weapon ...": { + "name": "[Deadeye] Enhanced Weapon Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Deadeye] Pistoleer Engraving Reci...": { + "name": "[Deadeye] Pistoleer Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Deathblade] Remaining Energy ...": { + "name": "[Deathblade] Remaining Energy Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Deathblade] Surge Engraving Reci...": { + "name": "[Deathblade] Surge Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Destroyer] Gravity Training ...": { + "name": "[Destroyer] Gravity Training Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Destroyer] Rage Hammer Engravin...": { + "name": "[Destroyer] Rage Hammer Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Glaivier] Control Engraving Recipe": { + "name": "[Glaivier] Control Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Glaivier] Pinnacle Engraving Recipe": { + "name": "[Glaivier] Pinnacle Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Gunlancer] Combat Readiness ...": { + "name": "[Gunlancer] Combat Readiness Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Gunlancer] Lone Knight Engraving ...": { + "name": "[Gunlancer] Lone Knight Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Gunslinger] Peacemaker Engraving ...": { + "name": "[Gunslinger] Peacemaker Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Gunslinger] Time to Hunt Engravin...": { + "name": "[Gunslinger] Time to Hunt Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Machinist] Arthetinean Skill ...": { + "name": "[Machinist] Arthetinean Skill Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Machinist] Evolutionary Legacy ...": { + "name": "[Machinist] Evolutionary Legacy Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Paladin] Blessed Aura Engraving ...": { + "name": "[Paladin] Blessed Aura Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Paladin] Judgment Engraving Reci...": { + "name": "[Paladin] Judgment Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Reaper] Hunger Engraving Recipe": { + "name": "[Reaper] Hunger Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Reaper] Lunar Voice Engraving ...": { + "name": "[Reaper] Lunar Voice Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Scrapper] Shock Training Engravin...": { + "name": "[Scrapper] Shock Training Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Scrapper] Ultimate Skill: Taijutsu ...": { + "name": "[Scrapper] Ultimate Skill: Taijutsu Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Shadowhunter] Demonic Impulse ...": { + "name": "[Shadowhunter] Demonic Impulse Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Shadowhunter] Perfect Suppressio...": { + "name": "[Shadowhunter] Perfect Suppression Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Sharpshooter] Death Strike ...": { + "name": "[Sharpshooter] Death Strike Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Sharpshooter] Loyal Companion ...": { + "name": "[Sharpshooter] Loyal Companion Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Slayer] Predator Engraving Recipe": { + "name": "[Slayer] Predator Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Slayer] Punisher Engraving Recipe": { + "name": "[Slayer] Punisher Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Sorceress] Igniter Engraving Recip...": { + "name": "[Sorceress] Igniter Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Sorceress] Reflux Engraving Recip...": { + "name": "[Sorceress] Reflux Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Soulfist] Energy Overflow Engravin...": { + "name": "[Soulfist] Energy Overflow Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Soulfist] Robust Spirit Engraving ...": { + "name": "[Soulfist] Robust Spirit Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Striker] Deathblow Engraving Reci...": { + "name": "[Striker] Deathblow Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Striker] Esoteric Flurry Engraving ...": { + "name": "[Striker] Esoteric Flurry Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Summoner] Communication ...": { + "name": "[Summoner] Communication Overflow Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Summoner] Master Summoner ...": { + "name": "[Summoner] Master Summoner Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Wardancer] Esoteric Skill ...": { + "name": "[Wardancer] Esoteric Skill Enhancement Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "[Wardancer] First Intention Engravi...": { + "name": "[Wardancer] First Intention Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Adrenaline Engraving Recipe": { + "name": "Adrenaline Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "All-Out Attack Engraving Recipe": { + "name": "All-Out Attack Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Ambush Master Engraving Recipe": { + "name": "Ambush Master Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Awakening Engraving Recipe": { + "name": "Awakening Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Barricade Engraving Recipe": { + "name": "Barricade Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Broken Bone Engraving Recipe": { + "name": "Broken Bone Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Contender Engraving Recipe": { + "name": "Contender Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Crisis Evasion Engraving Recipe": { + "name": "Crisis Evasion Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Crushing Fist Engraving Recipe": { + "name": "Crushing Fist Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Cursed Doll Engraving Recipe": { + "name": "Cursed Doll Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Disrespect Engraving Recipe": { + "name": "Disrespect Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Divine Protection Engraving Recipe": { + "name": "Divine Protection Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Drops of Ether Engraving Recipe": { + "name": "Drops of Ether Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Emergency Rescue Engraving Recip...": { + "name": "Emergency Rescue Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Enhanced Shield Engraving Recipe": { + "name": "Enhanced Shield Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Ether Predator Engraving Recipe": { + "name": "Ether Predator Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Expert Engraving Recipe": { + "name": "Expert Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Explosive Expert Engraving Recipe": { + "name": "Explosive Expert Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Fortitude Engraving Recipe": { + "name": "Fortitude Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Grudge Engraving Recipe": { + "name": "Grudge Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Heavy Armor Engraving Recipe": { + "name": "Heavy Armor Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Hit Master Engraving Recipe": { + "name": "Hit Master Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Keen Blunt Weapon Engraving Reci...": { + "name": "Keen Blunt Weapon Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Lightning Fury Engraving Recipe": { + "name": "Lightning Fury Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Magick Stream Engraving Recipe": { + "name": "Magick Stream Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Mass Increase Engraving Recipe": { + "name": "Mass Increase Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Master Brawler Engraving Recipe": { + "name": "Master Brawler Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Master of Escape Engraving Recipe": { + "name": "Master of Escape Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Master's Tenacity Engraving Recipe": { + "name": "Master's Tenacity Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Max MP Increase Engraving Recipe": { + "name": "Max MP Increase Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "MP Efficiency Increase Engraving ...": { + "name": "MP Efficiency Increase Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Necromancy Engraving Recipe": { + "name": "Necromancy Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Precise Dagger Engraving Recipe": { + "name": "Precise Dagger Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Preemptive Strike Engraving Recipe": { + "name": "Preemptive Strike Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Propulsion Engraving Recipe": { + "name": "Propulsion Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Raid Captain Engraving Recipe": { + "name": "Raid Captain Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Shield Piercing Engraving Recipe": { + "name": "Shield Piercing Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Sight Focus Engraving Recipe": { + "name": "Sight Focus Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Spirit Absorption Engraving Recipe": { + "name": "Spirit Absorption Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Stabilized Status Engraving Recipe": { + "name": "Stabilized Status Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Strong Will Engraving Recipe": { + "name": "Strong Will Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Super Charge Engraving Recipe": { + "name": "Super Charge Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Vital Point Hit Engraving Recipe": { + "name": "Vital Point Hit Engraving Recipe", + "rarity": None, + "image": "engraving-4.webp", + "category": "Engraving Recipe", + "subcategory": None, + "amount": 1 + }, + "Basic Oreha Fusion Material": { + "name": "Basic Oreha Fusion Material", + "rarity": 2, + "image": "basic-oreha-fusion-material.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Caldarr Fusion Material": { + "name": "Caldarr Fusion Material", + "rarity": 2, + "image": "caldarr-fusion-material.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Destruction Stone": { + "name": "Destruction Stone", + "rarity": 0, + "image": "destruction-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Crystallized Destruction Stone": { + "name": "Crystallized Destruction Stone", + "rarity": 0, + "image": "crystallized-destruction-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Destruction Stone Fragment": { + "name": "Destruction Stone Fragment", + "rarity": 0, + "image": "destruction-stone-fragment.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Great Honor Leapstone": { + "name": "Great Honor Leapstone", + "rarity": 2, + "image": "great-honor-leapstone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Guardian Stone": { + "name": "Guardian Stone", + "rarity": 0, + "image": "guardian-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Guardian Stone Fragment": { + "name": "Guardian Stone Fragment", + "rarity": 0, + "image": "guardian-stone-fragment.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Crystallized Guardian Stone": { + "name": "Crystallized Guardian Stone", + "rarity": 0, + "image": "crystallized-guardian-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Harmony Leapstone": { + "name": "Harmony Leapstone", + "rarity": 2, + "image": "harmony-leapstone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Harmony Shard Pouch (L)": { + "name": "Harmony Shard Pouch (L)", + "rarity": 3, + "image": "harmony-shard-pouch-l.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Harmony Shard Pouch (M)": { + "name": "Harmony Shard Pouch (M)", + "rarity": 2, + "image": "harmony-shard-pouch-m.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Harmony Shard Pouch (S)": { + "name": "Harmony Shard Pouch (S)", + "rarity": 1, + "image": "harmony-shard-pouch-s.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Honor Leapstone": { + "name": "Honor Leapstone", + "rarity": 2, + "image": "honor-leapstone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Honor Shard Pouch (L)": { + "name": "Honor Shard Pouch (L)", + "rarity": 3, + "image": "honor-shard-pouch-l.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Honor Shard Pouch (M)": { + "name": "Honor Shard Pouch (M)", + "rarity": 2, + "image": "honor-shard-pouch-m.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Honor Shard Pouch (S)": { + "name": "Honor Shard Pouch (S)", + "rarity": 1, + "image": "honor-shard-pouch-s.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Life Leapstone": { + "name": "Life Leapstone", + "rarity": 2, + "image": "life-leapstone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Life Shard Pouch (L)": { + "name": "Life Shard Pouch (L)", + "rarity": 3, + "image": "life-shard-pouch-l.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Life Shard Pouch (M)": { + "name": "Life Shard Pouch (M)", + "rarity": 2, + "image": "life-shard-pouch-m.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Life Shard Pouch (S)": { + "name": "Life Shard Pouch (S)", + "rarity": 1, + "image": "life-shard-pouch-s.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Metallurgy: Applied Welding": { + "name": "Metallurgy: Applied Welding", + "rarity": 4, + "image": "metallurgy-applied-welding.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Metallurgy: Basic Casting": { + "name": "Metallurgy: Basic Casting", + "rarity": 3, + "image": "metallurgy-basic-casting.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Metallurgy: Basic Folding": { + "name": "Metallurgy: Basic Folding", + "rarity": 3, + "image": "metallurgy-basic-folding.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Metallurgy: Basic Welding": { + "name": "Metallurgy: Basic Welding", + "rarity": 3, + "image": "metallurgy-basic-welding.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Moon's Breath": { + "name": "Moon's Breath", + "rarity": 3, + "image": "moon-s-breath.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Powder of Sage": { + "name": "Powder of Sage", + "rarity": 3, + "image": "powder-of-sage.webp", + "category": "Enhancement Material", + "subcategory": "Other Materials", + "amount": 1 + }, + "Simple Oreha Fusion Material": { + "name": "Simple Oreha Fusion Material", + "rarity": 1, + "image": "simple-oreha-fusion-material.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Solar Blessing": { + "name": "Solar Blessing", + "rarity": 2, + "image": "solar-blessing.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Solar Grace": { + "name": "Solar Grace", + "rarity": 1, + "image": "solar-grace.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Solar Protection": { + "name": "Solar Protection", + "rarity": 3, + "image": "solar-protection.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Star's Breath": { + "name": "Star's Breath", + "rarity": 3, + "image": "star-s-breath.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Tailoring: Applied Mending": { + "name": "Tailoring: Applied Mending", + "rarity": 4, + "image": "tailoring-applied-mending.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Tailoring: Basic Design": { + "name": "Tailoring: Basic Design", + "rarity": 3, + "image": "tailoring-basic-design.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Tailoring: Basic Knots": { + "name": "Tailoring: Basic Knots", + "rarity": 3, + "image": "tailoring-basic-knots.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Tailoring: Basic Mending": { + "name": "Tailoring: Basic Mending", + "rarity": 3, + "image": "tailoring-basic-mending.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Protection Stone": { + "name": "Protection Stone", + "rarity": 1, + "image": "protection-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Obliteration Stone": { + "name": "Obliteration Stone", + "rarity": 1, + "image": "obliteration-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 10 + }, + "Superior Oreha Fusion Material": { + "name": "Superior Oreha Fusion Material", + "rarity": 3, + "image": "superior-oreha-fusion-material.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Marvelous Honor Leapstone": { + "name": "Marvelous Honor Leapstone", + "rarity": 3, + "image": "marvelous-honor-leapstone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Tailoring: Advanced Mending": { + "name": "Tailoring: Advanced Mending", + "rarity": 5, + "image": "tailoring-advanced-mending.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Metallurgy: Advanced Welding": { + "name": "Metallurgy: Advanced Welding", + "rarity": 5, + "image": "metallurgy-advanced-welding.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Sidereal Energy": { + "name": "Sidereal Energy", + "rarity": 7, + "image": "sidereal-energy.webp", + "category": "Enhancement Material", + "subcategory": "Weapon Evolution Materials", + "amount": 1 + }, + "Tailoring: Expert Mending": { + "name": "Tailoring: Expert Mending", + "rarity": 5, + "image": "tailoring-expert-mending.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Metallurgy: Expert Welding": { + "name": "Metallurgy: Expert Welding", + "rarity": 5, + "image": "metallurgy-expert-welding.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Refined Protection Stone": { + "name": "Refined Protection Stone", + "rarity": 0, + "image": "refined-protection-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Refined Obliteration Stone": { + "name": "Refined Obliteration Stone", + "rarity": 0, + "image": "refined-obliteration-stone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Radiant Honor Leapstone": { + "name": "Radiant Honor Leapstone", + "rarity": 3, + "image": "radiant-honor-leapstone.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Prime Oreha Fusion Material": { + "name": "Prime Oreha Fusion Material", + "rarity": 4, + "image": "prime-oreha-fusion-material.webp", + "category": "Enhancement Material", + "subcategory": "Honing Materials", + "amount": 1 + }, + "Metallurgy: Specialized Welding": { + "name": "Metallurgy: Specialized Welding", + "rarity": 6, + "image": "metallurgy-specialized-welding.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "Tailoring: Specialized Mending": { + "name": "Tailoring: Specialized Mending", + "rarity": 6, + "image": "tailoring-specialized-mending.webp", + "category": "Enhancement Material", + "subcategory": "Additional Honing Materials", + "amount": 1 + }, + "T2 Gem Chest (Lv. 1-2)": { + "name": "T2 Gem Chest (Lv. 1-2)", + "rarity": 2, + "image": "gem-chest.webp", + "category": "Gem Chest", + "subcategory": None, + "amount": 1 + }, + "T2 Gem Chest (Lv. 1-3)": { + "name": "T2 Gem Chest (Lv. 1-3)", + "rarity": 2, + "image": "gem-chest.webp", + "category": "Gem Chest", + "subcategory": None, + "amount": 1 + }, + "T3 Gem Chest (Lv. 1-2)": { + "name": "T3 Gem Chest (Lv. 1-2)", + "rarity": 2, + "image": "gem-chest.webp", + "category": "Gem Chest", + "subcategory": None, + "amount": 1 + }, + "T3 Gem Chest (Lv. 1-3)": { + "name": "T3 Gem Chest (Lv. 1-3)", + "rarity": 2, + "image": "gem-chest.webp", + "category": "Gem Chest", + "subcategory": None, + "amount": 1 + }, + "Bubble Mount Selection Chest": { + "name": "Bubble Mount Selection Chest", + "rarity": 4, + "image": "bubble-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Mount: Rainbow Bubble": { + "name": "Mount: Rainbow Bubble", + "rarity": 4, + "image": "mount-rainbow-bubble.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Rose Bubble": { + "name": "Mount: Rose Bubble", + "rarity": 4, + "image": "mount-rose-bubble.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Thunder Bubble": { + "name": "Mount: Thunder Bubble", + "rarity": 4, + "image": "mount-thunder-bubble.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mounth: Snow Bubble": { + "name": "Mounth: Snow Bubble", + "rarity": 4, + "image": "mounth-snow-bubble.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Miho Mount Selection Chest": { + "name": "Miho Mount Selection Chest", + "rarity": 4, + "image": "miho-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Mount: Miho (Pink)": { + "name": "Mount: Miho (Pink)", + "rarity": 4, + "image": "mount-miho-pink.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Navy)": { + "name": "Mount: Miho (Navy)", + "rarity": 4, + "image": "mount-miho-navy.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Orange)": { + "name": "Mount: Miho (Orange)", + "rarity": 4, + "image": "mount-miho-orange.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Silver)": { + "name": "Mount: Miho (Silver)", + "rarity": 4, + "image": "mount-miho-silver.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Black)": { + "name": "Mount: Miho (Black)", + "rarity": 4, + "image": "mount-miho-black.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Ruby)": { + "name": "Mount: Miho (Ruby)", + "rarity": 4, + "image": "mount-miho-ruby.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Brown)": { + "name": "Mount: Miho (Brown)", + "rarity": 4, + "image": "mount-miho-brown.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (White)": { + "name": "Mount: Miho (White)", + "rarity": 4, + "image": "mount-miho-white.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Purple)": { + "name": "Mount: Miho (Purple)", + "rarity": 4, + "image": "mount-miho-purple.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Miho (Sky)": { + "name": "Mount: Miho (Sky)", + "rarity": 4, + "image": "mount-miho-sky.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Cerberus": { + "name": "Mount: Cerberus", + "rarity": 4, + "image": "mount-cerberus.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Chaos Ghost Horse": { + "name": "Mount: Chaos Ghost Horse", + "rarity": 4, + "image": "mount-chaos-ghost-horse.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Cold Rollysnow": { + "name": "Mount: Cold Rollysnow", + "rarity": 3, + "image": "mount-cold-rollysnow.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Cookie Piñata": { + "name": "Mount: Cookie Piñata", + "rarity": 4, + "image": "mount-cookie-piñata.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Coral Armor Wagon": { + "name": "Mount: Coral Armor Wagon", + "rarity": 4, + "image": "mount-coral-armor-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Corruption Ghost Horse": { + "name": "Mount: Corruption Ghost Horse", + "rarity": 4, + "image": "mount-corruption-ghost-horse.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Cozy Dream Bed": { + "name": "Mount: Cozy Dream Bed", + "rarity": 3, + "image": "mount-cozy-dream-bed.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Dawn Icebloom Reindeer": { + "name": "Mount: Dawn Icebloom Reindeer", + "rarity": 4, + "image": "mount-dawn-icebloom-reindeer.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Dawn Pumpkin Wagon": { + "name": "Mount: Dawn Pumpkin Wagon", + "rarity": 4, + "image": "mount-dawn-pumpkin-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Day Icebloom Reindeer": { + "name": "Mount: Day Icebloom Reindeer", + "rarity": 4, + "image": "mount-day-icebloom-reindeer.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Dyorika Warhorse": { + "name": "Mount: Dyorika Warhorse", + "rarity": 4, + "image": "mount-dyorika-warhorse.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Evening Icebloom Reindeer": { + "name": "Mount: Evening Icebloom Reindeer", + "rarity": 4, + "image": "mount-evening-icebloom-reindeer.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Festive Rollysnow": { + "name": "Mount: Festive Rollysnow", + "rarity": 3, + "image": "mount-festive-rollysnow.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Flying Nimbus": { + "name": "Mount: Flying Nimbus", + "rarity": 3, + "image": "mount-flying-nimbus.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Grape Piñata": { + "name": "Mount: Grape Piñata", + "rarity": 4, + "image": "mount-grape-piñata.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Harmony Dream Bed": { + "name": "Mount: Harmony Dream Bed", + "rarity": 3, + "image": "mount-harmony-dream-bed.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Hatred Ghost Horse": { + "name": "Mount: Hatred Ghost Horse", + "rarity": 4, + "image": "mount-hatred-ghost-horse.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Heartthrob Dream Bed": { + "name": "Mount: Heartthrob Dream Bed", + "rarity": 3, + "image": "mount-heartthrob-dream-bed.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Icebloom Rollysnow": { + "name": "Mount: Icebloom Rollysnow", + "rarity": 3, + "image": "mount-icebloom-rollysnow.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Lemon Piñata": { + "name": "Mount: Lemon Piñata", + "rarity": 4, + "image": "mount-lemon-piñata.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Melon Piñata": { + "name": "Mount: Melon Piñata", + "rarity": 4, + "image": "mount-melon-piñata.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Memory Dream Bed": { + "name": "Mount: Memory Dream Bed", + "rarity": 3, + "image": "mount-memory-dream-bed.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Midnight Icebloom Reindeer": { + "name": "Mount: Midnight Icebloom Reindeer", + "rarity": 4, + "image": "mount-midnight-icebloom-reindeer.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Night Pumpkin Wagon": { + "name": "Mount: Night Pumpkin Wagon", + "rarity": 4, + "image": "mount-night-pumpkin-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Onyx Armor Wagon": { + "name": "Mount: Onyx Armor Wagon", + "rarity": 4, + "image": "mount-onyx-armor-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Opal Armor Wagon": { + "name": "Mount: Opal Armor Wagon", + "rarity": 4, + "image": "mount-opal-armor-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Pearl Armor Wagon": { + "name": "Mount: Pearl Armor Wagon", + "rarity": 4, + "image": "mount-pearl-armor-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Radiant Dream Bed": { + "name": "Mount: Radiant Dream Bed", + "rarity": 3, + "image": "mount-radiant-dream-bed.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Radiant Golden Cloud": { + "name": "Mount: Radiant Golden Cloud", + "rarity": 4, + "image": "mount-radiant-golden-cloud.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Rage Ghost Horse": { + "name": "Mount: Rage Ghost Horse", + "rarity": 4, + "image": "mount-rage-ghost-horse.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Ruby Armor Wagon": { + "name": "Mount: Ruby Armor Wagon", + "rarity": 4, + "image": "mount-ruby-armor-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Sinful Ghost Horse": { + "name": "Mount: Sinful Ghost Horse", + "rarity": 4, + "image": "mount-sinful-ghost-horse.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Soda Piñata": { + "name": "Mount: Soda Piñata", + "rarity": 4, + "image": "mount-soda-piñata.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Splendid Rollysnow": { + "name": "Mount: Splendid Rollysnow", + "rarity": 3, + "image": "mount-splendid-rollysnow.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Strawberry Piñata": { + "name": "Mount: Strawberry Piñata", + "rarity": 4, + "image": "mount-strawberry-piñata.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Sugar Piñata": { + "name": "Mount: Sugar Piñata", + "rarity": 4, + "image": "mount-sugar-piñata.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Sunset Pumpkin Wagon": { + "name": "Mount: Sunset Pumpkin Wagon", + "rarity": 4, + "image": "mount-sunset-pumpkin-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Sweet Rollysnow": { + "name": "Mount: Sweet Rollysnow", + "rarity": 3, + "image": "mount-sweet-rollysnow.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Twilight Dream Bed": { + "name": "Mount: Twilight Dream Bed", + "rarity": 3, + "image": "mount-twilight-dream-bed.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Twilight Icebloom Reindeer": { + "name": "Mount: Twilight Icebloom Reindeer", + "rarity": 4, + "image": "mount-twilight-icebloom-reindeer.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Twilight Pumpkin Wagon": { + "name": "Mount: Twilight Pumpkin Wagon", + "rarity": 4, + "image": "mount-twilight-pumpkin-wagon.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Vernese Elk": { + "name": "Mount: Vernese Elk", + "rarity": 4, + "image": "mount-vernese-elk.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: White Dream Bed": { + "name": "Mount: White Dream Bed", + "rarity": 3, + "image": "mount-white-dream-bed.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Wingsuit Bike B": { + "name": "Mount: Wingsuit Bike B", + "rarity": 4, + "image": "mount-wingsuit-bike-b.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Wingsuit Bike G": { + "name": "Mount: Wingsuit Bike G", + "rarity": 4, + "image": "mount-wingsuit-bike-g.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Wingsuit Bike O": { + "name": "Mount: Wingsuit Bike O", + "rarity": 4, + "image": "mount-wingsuit-bike-o.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Wingsuit Bike R": { + "name": "Mount: Wingsuit Bike R", + "rarity": 4, + "image": "mount-wingsuit-bike-r.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Wingsuit Bike W": { + "name": "Mount: Wingsuit Bike W", + "rarity": 4, + "image": "mount-wingsuit-bike-w.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Winter Rollysnow": { + "name": "Mount: Winter Rollysnow", + "rarity": 3, + "image": "mount-winter-rollysnow.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Nightrider Machinalis Mount ...": { + "name": "Nightrider Machinalis Mount Selection Chest", + "rarity": 4, + "image": "nightrider-machinalis-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Mount: Vigilante Machinalis": { + "name": "Mount: Vigilante Machinalis", + "rarity": 4, + "image": "mount-vigilante-machinalis.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Shadow Machinalis": { + "name": "Mount: Shadow Machinalis", + "rarity": 4, + "image": "mount-shadow-machinalis.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Aurum Machinalis": { + "name": "Mount: Aurum Machinalis", + "rarity": 4, + "image": "mount-aurum-machinalis.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Rebel Machinalis": { + "name": "Mount: Rebel Machinalis", + "rarity": 4, + "image": "mount-rebel-machinalis.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Snowball Mount Selection Chest": { + "name": "Snowball Mount Selection Chest", + "rarity": 3, + "image": "snowball-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Tiger Mount Selection Chest": { + "name": "Tiger Mount Selection Chest", + "rarity": 4, + "image": "tiger-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Mount: Sleek Scarlet Mountain Army": { + "name": "Mount: Sleek Scarlet Mountain Army", + "rarity": 4, + "image": "mount-sleek-scarlet-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Sleek Snow White Mountain Army": { + "name": "Mount: Sleek Snow White Mountain Army", + "rarity": 4, + "image": "mount-sleek-snow-white-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Noble Scarlet Mountain Army": { + "name": "Mount: Noble Scarlet Mountain Army", + "rarity": 4, + "image": "mount-noble-scarlet-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Noble Black Mountain Army": { + "name": "Mount: Noble Black Mountain Army", + "rarity": 4, + "image": "mount-noble-black-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Mysterious Snow White Mountain Army": { + "name": "Mount: Mysterious Snow White Mountain Army", + "rarity": 4, + "image": "mount-mysterious-snow-white-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Mysterious Golden Mountain Army": { + "name": "Mount: Mysterious Golden Mountain Army", + "rarity": 4, + "image": "mount-mysterious-golden-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Courageous Snow White Mountain Army": { + "name": "Mount: Courageous Snow White Mountain Army", + "rarity": 4, + "image": "mount-courageous-snow-white-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount Courageous Pale Mountain Army": { + "name": "Mount Courageous Pale Mountain Army", + "rarity": 4, + "image": "mount-courageous-pale-mountain-army.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Armor Wagon Selection Chest": { + "name": "Armor Wagon Selection Chest", + "rarity": 4, + "image": "armor-wagon-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Bike Mount Selection Chest": { + "name": "Bike Mount Selection Chest", + "rarity": 4, + "image": "bike-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Cerberus Mount Selection Chest": { + "name": "Cerberus Mount Selection Chest", + "rarity": 3, + "image": "cerberus-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Ghost Horse Selection Chest": { + "name": "Ghost Horse Selection Chest", + "rarity": 4, + "image": "ghost-horse-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Icebloom Reindeer Selection Chest": { + "name": "Icebloom Reindeer Selection Chest", + "rarity": 3, + "image": "icebloom-reindeer-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Magic Bed Mount Selection Chest": { + "name": "Magic Bed Mount Selection Chest", + "rarity": 3, + "image": "magic-bed-mount-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Pumpkin Carriage Selection Chest": { + "name": "Pumpkin Carriage Selection Chest", + "rarity": 3, + "image": "pumpkin-carriage-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Windsurfer Set Selection Chest": { + "name": "Windsurfer Set Selection Chest", + "rarity": 4, + "image": "windsurfer-set-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Mount: Windsurfer Set P": { + "name": "Mount: Windsurfer Set P", + "rarity": 4, + "image": "mount-windsurfer-set-p.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Windsurfer Set Y": { + "name": "Mount: Windsurfer Set Y", + "rarity": 4, + "image": "mount-windsurfer-set-y.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Windsurfer Set S": { + "name": "Mount: Windsurfer Set S", + "rarity": 4, + "image": "mount-windsurfer-set-s.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Windsurfer Set B": { + "name": "Mount: Windsurfer Set B", + "rarity": 4, + "image": "mount-windsurfer-set-b.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Windsurfer Set W": { + "name": "Mount: Windsurfer Set W", + "rarity": 4, + "image": "mount-windsurfer-set-w.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Duck Float Selection Chest": { + "name": "Duck Float Selection Chest", + "rarity": 4, + "image": "duck-float-selection-chest.webp", + "category": "Mount", + "subcategory": "Mount Chest", + "amount": 1 + }, + "Mount: Child's Duck Float": { + "name": "Mount: Child's Duck Float", + "rarity": 4, + "image": "mount-child-s-duck-float.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Marine Duck Float": { + "name": "Mount: Marine Duck Float", + "rarity": 4, + "image": "mount-marine-duck-float.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Flower Duck Float": { + "name": "Mount: Flower Duck Float", + "rarity": 4, + "image": "mount-flower-duck-float.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Cowboy Duck Float": { + "name": "Mount: Cowboy Duck Float", + "rarity": 4, + "image": "mount-cowboy-duck-float.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Mount: Crooked Duck Float": { + "name": "Mount: Crooked Duck Float", + "rarity": 4, + "image": "mount-crooked-duck-float.webp", + "category": "Mount", + "subcategory": "Mount", + "amount": 1 + }, + "Pet: Totoange": { + "name": "Pet: Totoange", + "rarity": 3, + "image": "pet-totoange.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Totoanmeow": { + "name": "Pet: Totoanmeow", + "rarity": 3, + "image": "pet-totoanmeow.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Jack": { + "name": "Pet: Jack", + "rarity": 3, + "image": "pet-jack.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Jason": { + "name": "Pet: Jason", + "rarity": 3, + "image": "pet-jason.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Freddie": { + "name": "Pet: Freddie", + "rarity": 3, + "image": "pet-freddie.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Bilbrin Panther": { + "name": "Pet: Bilbrin Panther", + "rarity": 3, + "image": "pet-bilbrin-panther.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Voldis Leopard": { + "name": "Pet: Voldis Leopard", + "rarity": 3, + "image": "pet-voldis-leopard.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Shushire Leopard": { + "name": "Pet: Shushire Leopard", + "rarity": 3, + "image": "pet-shushire-leopard.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Icicle Cloak Shushu": { + "name": "Pet: Icicle Cloak Shushu", + "rarity": 3, + "image": "pet-icicle-cloak-shushu.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Cherry Cloak Shuki": { + "name": "Pet: Cherry Cloak Shuki", + "rarity": 3, + "image": "pet-cherry-cloak-shuki.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Grape Cloak Shuna": { + "name": "Pet: Grape Cloak Shuna", + "rarity": 3, + "image": "pet-grape-cloak-shuna.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Bori": { + "name": "Pet: Bori", + "rarity": 3, + "image": "pet-bori.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Dusty": { + "name": "Pet: Dusty", + "rarity": 3, + "image": "pet-dusty.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Tofu": { + "name": "Pet: Tofu", + "rarity": 3, + "image": "pet-tofu.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Jolmi": { + "name": "Pet: Jolmi", + "rarity": 3, + "image": "pet-jolmi.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Yangeng": { + "name": "Pet: Yangeng", + "rarity": 3, + "image": "pet-yangeng.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Starfish Pinkie": { + "name": "Pet: Starfish Pinkie", + "rarity": 3, + "image": "pet-starfish-pinkie.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Starfish Dugo": { + "name": "Pet: Starfish Dugo", + "rarity": 3, + "image": "pet-starfish-dugo.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Starfish Archie": { + "name": "Pet: Starfish Archie", + "rarity": 3, + "image": "pet-starfish-archie.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Starfish Sway": { + "name": "Pet: Starfish Sway", + "rarity": 3, + "image": "pet-starfish-sway.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Starfish Hook": { + "name": "Pet: Starfish Hook", + "rarity": 3, + "image": "pet-starfish-hook.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Alexei": { + "name": "Pet: Alexei", + "rarity": 3, + "image": "pet-alexei.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Yevgeny": { + "name": "Pet: Yevgeny", + "rarity": 3, + "image": "pet-yevgeny.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Mikhail": { + "name": "Pet: Mikhail", + "rarity": 3, + "image": "pet-mikhail.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Ruslan": { + "name": "Pet: Ruslan", + "rarity": 3, + "image": "pet-ruslan.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Halloween Pet Selection Chest": { + "name": "Halloween Pet Selection Chest", + "rarity": 3, + "image": "halloween-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pet: Proud Achatemeow": { + "name": "Pet: Proud Achatemeow", + "rarity": 3, + "image": "pet-proud-achatemeow.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Shy Achatemeow": { + "name": "Pet: Shy Achatemeow", + "rarity": 3, + "image": "pet-shy-achatemeow.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Brave Achatemeow": { + "name": "Pet: Brave Achatemeow", + "rarity": 3, + "image": "pet-brave-achatemeow.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Splendid Achatemeow": { + "name": "Pet: Splendid Achatemeow", + "rarity": 3, + "image": "pet-splendid-achatemeow.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Excited Totoiki": { + "name": "Pet: Excited Totoiki", + "rarity": 3, + "image": "pet-excited-totoiki.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Chipper Totoiki": { + "name": "Pet: Chipper Totoiki", + "rarity": 3, + "image": "pet-chipper-totoiki.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Cheerful Totoiki": { + "name": "Pet: Cheerful Totoiki", + "rarity": 3, + "image": "pet-cheerful-totoiki.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Cackling Totoiki": { + "name": "Pet: Cackling Totoiki", + "rarity": 3, + "image": "pet-cackling-totoiki.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Jamis": { + "name": "Pet: Jamis", + "rarity": 3, + "image": "pet-jamis.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Nerran": { + "name": "Pet: Nerran", + "rarity": 3, + "image": "pet-nerran.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Lisette": { + "name": "Pet: Lisette", + "rarity": 3, + "image": "pet-lisette.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Toto Demon Selection Chest": { + "name": "Pet: Toto Demon Selection Chest", + "rarity": 3, + "image": "pet-toto-demon-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Achatemeow Selection Chest": { + "name": "Achatemeow Selection Chest", + "rarity": 3, + "image": "achatemeow-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pirate Parrot Pet Selection Chest": { + "name": "Pirate Parrot Pet Selection Chest", + "rarity": 3, + "image": "pirate-parrot-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Cloaked Fox Pet Selection Chest": { + "name": "Cloaked Fox Pet Selection Chest", + "rarity": 3, + "image": "cloaked-fox-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Shiba Dog Pet Selection Chest": { + "name": "Shiba Dog Pet Selection Chest", + "rarity": 3, + "image": "shiba-dog-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Panther Pet Selection Chest": { + "name": "Panther Pet Selection Chest", + "rarity": 3, + "image": "panther-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Starfish Pet Selection Chest": { + "name": "Starfish Pet Selection Chest", + "rarity": 3, + "image": "starfish-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Cat Pet Selection Chest": { + "name": "Cat Pet Selection Chest", + "rarity": 3, + "image": "cat-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Nutcracker Selection Chest": { + "name": "Nutcracker Selection Chest", + "rarity": 3, + "image": "nutcracker-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Frog Pet Selection Chest": { + "name": "Frog Pet Selection Chest", + "rarity": 3, + "image": "frog-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pet: Cheerful Froggy": { + "name": "Pet: Cheerful Froggy", + "rarity": 3, + "image": "pet-cheerful-froggy.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Mischievous Froggy": { + "name": "Pet: Mischievous Froggy", + "rarity": 3, + "image": "pet-mischievous-froggy.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Snickering Froggy": { + "name": "Pet: Snickering Froggy", + "rarity": 3, + "image": "pet-snickering-froggy.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Cute Froggy": { + "name": "Pet: Cute Froggy", + "rarity": 3, + "image": "pet-cute-froggy.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Chic Froggy": { + "name": "Pet: Chic Froggy", + "rarity": 3, + "image": "pet-chic-froggy.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Baby Calf Pet Selection Chest": { + "name": "Baby Calf Pet Selection Chest", + "rarity": 3, + "image": "baby-calf-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pet: Custard": { + "name": "Pet: Custard", + "rarity": 3, + "image": "pet-custard.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Cookie": { + "name": "Pet: Cookie", + "rarity": 3, + "image": "pet-cookie.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Mocha": { + "name": "Pet: Mocha", + "rarity": 3, + "image": "pet-mocha.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Cacao": { + "name": "Pet: Cacao", + "rarity": 3, + "image": "pet-cacao.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Brulee": { + "name": "Pet: Brulee", + "rarity": 3, + "image": "pet-brulee.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Yoholing Pet Selection Chest": { + "name": "Yoholing Pet Selection Chest", + "rarity": 3, + "image": "yoholing-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pet: Blue Yoholing": { + "name": "Pet: Blue Yoholing", + "rarity": 3, + "image": "pet-blue-yoholing.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Red Yoholing": { + "name": "Pet: Red Yoholing", + "rarity": 3, + "image": "pet-red-yoholing.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: White Yoholing": { + "name": "Pet: White Yoholing", + "rarity": 3, + "image": "pet-white-yoholing.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Gold Yoholing": { + "name": "Pet: Gold Yoholing", + "rarity": 3, + "image": "pet-gold-yoholing.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Cahni Pet Selection Chest": { + "name": "Cahni Pet Selection Chest", + "rarity": 3, + "image": "cahni-pet-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pet: White Cloud Cahni": { + "name": "Pet: White Cloud Cahni", + "rarity": 3, + "image": "pet-white-cloud-cahni.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Pink Cloud Cahni": { + "name": "Pet: Pink Cloud Cahni", + "rarity": 3, + "image": "pet-pink-cloud-cahni.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Blue Cloud Cahni": { + "name": "Pet: Blue Cloud Cahni", + "rarity": 3, + "image": "pet-blue-cloud-cahni.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Yellow Cloud Cahni": { + "name": "Pet: Yellow Cloud Cahni", + "rarity": 3, + "image": "pet-yellow-cloud-cahni.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Mint Cloud Cahni": { + "name": "Pet: Mint Cloud Cahni", + "rarity": 3, + "image": "pet-mint-cloud-cahni.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Chromarong Selection Chest": { + "name": "Chromarong Selection Chest", + "rarity": 3, + "image": "chromarong-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pet: Fresh Chromarong": { + "name": "Pet: Fresh Chromarong", + "rarity": 3, + "image": "pet-fresh-chromarong.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Timid Chromarong": { + "name": "Pet: Timid Chromarong", + "rarity": 3, + "image": "pet-timid-chromarong.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Happy Chromarong": { + "name": "Pet: Happy Chromarong", + "rarity": 3, + "image": "pet-happy-chromarong.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Soft Chromarong": { + "name": "Pet: Soft Chromarong", + "rarity": 3, + "image": "pet-soft-chromarong.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Excited Chromarong": { + "name": "Pet: Excited Chromarong", + "rarity": 3, + "image": "pet-excited-chromarong.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Reliable Chromarong": { + "name": "Pet: Reliable Chromarong", + "rarity": 3, + "image": "pet-reliable-chromarong.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Wet Chromarong": { + "name": "Pet: Wet Chromarong", + "rarity": 3, + "image": "pet-wet-chromarong.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Otter Selection Chest": { + "name": "Otter Selection Chest", + "rarity": 3, + "image": "otter-selection-chest.webp", + "category": "Pets", + "subcategory": "Pet Chest", + "amount": 1 + }, + "Pet: Discerning Odessa": { + "name": "Pet: Discerning Odessa", + "rarity": 3, + "image": "pet-discerning-odessa.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Darling Ollie": { + "name": "Pet: Darling Ollie", + "rarity": 3, + "image": "pet-darling-ollie.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Opulent Octavia": { + "name": "Pet: Opulent Octavia", + "rarity": 3, + "image": "pet-opulent-octavia.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Oblivious Oskar": { + "name": "Pet: Oblivious Oskar", + "rarity": 3, + "image": "pet-oblivious-oskar.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Dozy Oceana": { + "name": "Pet: Dozy Oceana", + "rarity": 3, + "image": "pet-dozy-oceana.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Pet: Jovial Otis": { + "name": "Pet: Jovial Otis", + "rarity": 3, + "image": "pet-jovial-otis.webp", + "category": "Pets", + "subcategory": "Pets", + "amount": 1 + }, + "Epic Ship Parts Material": { + "name": "Epic Ship Parts Material", + "rarity": 3, + "image": "epic-ship-parts-material.webp", + "category": "Sailing", + "subcategory": None, + "amount": 1 + }, + "Normal Ship Parts Material": { + "name": "Normal Ship Parts Material", + "rarity": 0, + "image": "normal-ship-parts-material.webp", + "category": "Sailing", + "subcategory": None, + "amount": 1 + }, + "Rare Ship Parts Material": { + "name": "Rare Ship Parts Material", + "rarity": 2, + "image": "rare-ship-parts-material.webp", + "category": "Sailing", + "subcategory": None, + "amount": 1 + }, + "Ship Skin: Jack-O'Lantern the ...": { + "name": "Ship Skin: Jack-O'Lantern the Wanderer", + "rarity": 3, + "image": "ship-skin-jack-o-lantern-the-wanderer.webp", + "category": "Sailing", + "subcategory": None, + "amount": 1 + }, + "Uncommon Ship Parts Material": { + "name": "Uncommon Ship Parts Material", + "rarity": 1, + "image": "uncommon-ship-parts-material.webp", + "category": "Sailing", + "subcategory": None, + "amount": 1 + }, + "Adept Craft Kit": { + "name": "Adept Craft Kit", + "rarity": 3, + "image": "adept-craft-kit.webp", + "category": "Trader", + "subcategory": "Other", + "amount": 1 + }, + "Ancient Relic": { + "name": "Ancient Relic", + "rarity": 0, + "image": "ancient-relic.webp", + "category": "Trader", + "subcategory": "Excavating Loot", + "amount": 100 + }, + "Apprentice Craft Kit": { + "name": "Apprentice Craft Kit", + "rarity": 2, + "image": "apprentice-craft-kit.webp", + "category": "Trader", + "subcategory": "Other", + "amount": 1 + }, + "Bright Wild Flower": { + "name": "Bright Wild Flower", + "rarity": 2, + "image": "bright-wild-flower.webp", + "category": "Trader", + "subcategory": "Foraging Rewards", + "amount": 10 + }, + "Caldarr Relic": { + "name": "Caldarr Relic", + "rarity": 2, + "image": "caldarr-relic.webp", + "category": "Trader", + "subcategory": "Excavating Loot", + "amount": 10 + }, + "Caldarr Solar Carp": { + "name": "Caldarr Solar Carp", + "rarity": 2, + "image": "caldarr-solar-carp.webp", + "category": "Trader", + "subcategory": "Fishing Loot", + "amount": 10 + }, + "Caldarr Thick Raw Meat": { + "name": "Caldarr Thick Raw Meat", + "rarity": 2, + "image": "caldarr-thick-raw-meat.webp", + "category": "Trader", + "subcategory": "Hunting Loot", + "amount": 10 + }, + "Crude Mushroom": { + "name": "Crude Mushroom", + "rarity": 0, + "image": "crude-mushroom.webp", + "category": "Trader", + "subcategory": "Foraging Rewards", + "amount": 100 + }, + "Excavating Crystal": { + "name": "Excavating Crystal", + "rarity": 3, + "image": "excavating-crystal.webp", + "category": "Trader", + "subcategory": "Excavating Loot", + "amount": 10 + }, + "Expert Craft Kit": { + "name": "Expert Craft Kit", + "rarity": 4, + "image": "expert-craft-kit.webp", + "category": "Trader", + "subcategory": "Other", + "amount": 1 + }, + "Exquisite Mushroom": { + "name": "Exquisite Mushroom", + "rarity": 2, + "image": "exquisite-mushroom.webp", + "category": "Trader", + "subcategory": "Foraging Rewards", + "amount": 10 + }, + "Fish": { + "name": "Fish", + "rarity": 0, + "image": "fish.webp", + "category": "Trader", + "subcategory": "Fishing Loot", + "amount": 100 + }, + "Fishing Crystal": { + "name": "Fishing Crystal", + "rarity": 3, + "image": "fishing-crystal.webp", + "category": "Trader", + "subcategory": "Fishing Loot", + "amount": 10 + }, + "Fresh Mushroom": { + "name": "Fresh Mushroom", + "rarity": 1, + "image": "fresh-mushroom.webp", + "category": "Trader", + "subcategory": "Foraging Rewards", + "amount": 10 + }, + "Heavy Iron Ore": { + "name": "Heavy Iron Ore", + "rarity": 1, + "image": "heavy-iron-ore.webp", + "category": "Trader", + "subcategory": "Mining Loot", + "amount": 10 + }, + "Hunting Crystal": { + "name": "Hunting Crystal", + "rarity": 3, + "image": "hunting-crystal.webp", + "category": "Trader", + "subcategory": "Hunting Loot", + "amount": 10 + }, + "Iron Ore": { + "name": "Iron Ore", + "rarity": 0, + "image": "iron-ore.webp", + "category": "Trader", + "subcategory": "Mining Loot", + "amount": 100 + }, + "Master Craft Kit": { + "name": "Master Craft Kit", + "rarity": 5, + "image": "master-craft-kit.webp", + "category": "Trader", + "subcategory": "Other", + "amount": 1 + }, + "Natural Pearl": { + "name": "Natural Pearl", + "rarity": 1, + "image": "natural-pearl.webp", + "category": "Trader", + "subcategory": "Fishing Loot", + "amount": 10 + }, + "Oreha Relic": { + "name": "Oreha Relic", + "rarity": 2, + "image": "oreha-relic.webp", + "category": "Trader", + "subcategory": "Excavating Loot", + "amount": 10 + }, + "Oreha Solar Carp": { + "name": "Oreha Solar Carp", + "rarity": 2, + "image": "oreha-solar-carp.webp", + "category": "Trader", + "subcategory": "Fishing Loot", + "amount": 10 + }, + "Oreha Thick Meat": { + "name": "Oreha Thick Meat", + "rarity": 2, + "image": "oreha-thick-meat.webp", + "category": "Trader", + "subcategory": "Hunting Loot", + "amount": 10 + }, + "Rare Relic": { + "name": "Rare Relic", + "rarity": 1, + "image": "rare-relic.webp", + "category": "Trader", + "subcategory": "Excavating Loot", + "amount": 10 + }, + "Redflesh Fish": { + "name": "Redflesh Fish", + "rarity": 1, + "image": "redflesh-fish.webp", + "category": "Trader", + "subcategory": "Fishing Loot", + "amount": 10 + }, + "Shy Wild Flower": { + "name": "Shy Wild Flower", + "rarity": 1, + "image": "shy-wild-flower.webp", + "category": "Trader", + "subcategory": "Foraging Rewards", + "amount": 10 + }, + "Strong Iron Ore": { + "name": "Strong Iron Ore", + "rarity": 2, + "image": "strong-iron-ore.webp", + "category": "Trader", + "subcategory": "Mining Loot", + "amount": 10 + }, + "Sturdy Timber": { + "name": "Sturdy Timber", + "rarity": 2, + "image": "sturdy-timber.webp", + "category": "Trader", + "subcategory": "Logging Loot", + "amount": 10 + }, + "Tender Timber": { + "name": "Tender Timber", + "rarity": 1, + "image": "tender-timber.webp", + "category": "Trader", + "subcategory": "Logging Loot", + "amount": 10 + }, + "Thick Raw Meat": { + "name": "Thick Raw Meat", + "rarity": 0, + "image": "thick-raw-meat.webp", + "category": "Trader", + "subcategory": "Hunting Loot", + "amount": 100 + }, + "Timber": { + "name": "Timber", + "rarity": 0, + "image": "timber.webp", + "category": "Trader", + "subcategory": "Logging Loot", + "amount": 100 + }, + "Tool Crafting Part": { + "name": "Tool Crafting Part", + "rarity": 1, + "image": "tool-crafting-part.webp", + "category": "Trader", + "subcategory": "Other", + "amount": 1 + }, + "Tough Leather": { + "name": "Tough Leather", + "rarity": 1, + "image": "tough-leather.webp", + "category": "Trader", + "subcategory": "Hunting Loot", + "amount": 10 + }, + "Treated Meat": { + "name": "Treated Meat", + "rarity": 1, + "image": "treated-meat.webp", + "category": "Trader", + "subcategory": "Hunting Loot", + "amount": 10 + }, + "Wild Flower": { + "name": "Wild Flower", + "rarity": 0, + "image": "wild-flower.webp", + "category": "Trader", + "subcategory": "Foraging Rewards", + "amount": 100 + } +} \ No newline at end of file diff --git a/modules/market_data/cooking.py b/modules/market_data/cooking.py deleted file mode 100644 index ef702ef..0000000 --- a/modules/market_data/cooking.py +++ /dev/null @@ -1,770 +0,0 @@ -cooking = { - "[Masterwork] Artisan's Browned ...": { - 'name': "[Masterwork] Artisan's Browned Grilled Skewers", - 'image': 'masterwork-artisan-s-browned-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Browned Seasoned Grilled Skewers": { - 'name': "[Masterwork] Artisan's Browned Seasoned Grilled Skewers", - 'image': 'masterwork-artisan-s-browned-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Butter Steak": { - 'name': "[Masterwork] Artisan's Butter Steak", - 'image': 'masterwork-artisan-s-butter-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Butter Steak Meal": { - 'name': "[Masterwork] Artisan's Butter Steak Meal", - 'image': 'masterwork-artisan-s-butter-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Chewy Grilled Skewers": { - 'name': "[Masterwork] Artisan's Chewy Grilled Skewers", - 'image': 'masterwork-artisan-s-chewy-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Chewy Seasoned Grilled Skewers": { - 'name': "[Masterwork] Artisan's Chewy Seasoned Grilled Skewers", - 'image': 'masterwork-artisan-s-chewy-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Crispy Grilled Skewers": { - 'name': "[Masterwork] Artisan's Crispy Grilled Skewers", - 'image': 'masterwork-artisan-s-crispy-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Crispy Seasoned Grilled Skewers": { - 'name': "[Masterwork] Artisan's Crispy Seasoned Grilled Skewers", - 'image': 'masterwork-artisan-s-crispy-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Fluffy Omele...": { - 'name': "[Masterwork] Artisan's Fluffy Omelet", - 'image': 'masterwork-artisan-s-fluffy-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Fluffy Traditional Omelet": { - 'name': "[Masterwork] Artisan's Fluffy Traditional Omelet", - 'image': 'masterwork-artisan-s-fluffy-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Garlic Steak": { - 'name': "[Masterwork] Artisan's Garlic Steak", - 'image': 'masterwork-artisan-s-garlic-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Garlic Steak ...": { - 'name': "[Masterwork] Artisan's Garlic Steak Meal", - 'image': 'masterwork-artisan-s-garlic-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Herb Steak": { - 'name': "[Masterwork] Artisan's Herb Steak", - 'image': 'masterwork-artisan-s-herb-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Herb Steak Meal": { - 'name': "[Masterwork] Artisan's Herb Steak Meal", - 'image': 'masterwork-artisan-s-herb-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Moist Omelet": { - 'name': "[Masterwork] Artisan's Moist Omelet", - 'image': 'masterwork-artisan-s-moist-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Moist Traditional Omelet": { - 'name': "[Masterwork] Artisan's Moist Traditional Omelet", - 'image': 'masterwork-artisan-s-moist-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Salty Mixed Stew": { - 'name': "[Masterwork] Artisan's Salty Mixed Stew", - 'image': 'masterwork-artisan-s-salty-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Salty Stew": { - 'name': "[Masterwork] Artisan's Salty Stew", - 'image': 'masterwork-artisan-s-salty-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Spicy Mixed Stew": { - 'name': "[Masterwork] Artisan's Spicy Mixed Stew", - 'image': 'masterwork-artisan-s-spicy-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Spicy Stew": { - 'name': "[Masterwork] Artisan's Spicy Stew", - 'image': 'masterwork-artisan-s-spicy-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Sweet Mixed Stew": { - 'name': "[Masterwork] Artisan's Sweet Mixed Stew", - 'image': 'masterwork-artisan-s-sweet-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Sweet Stew": { - 'name': "[Masterwork] Artisan's Sweet Stew", - 'image': 'masterwork-artisan-s-sweet-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Tender Omelet": { - 'name': "[Masterwork] Artisan's Tender Omelet", - 'image': 'masterwork-artisan-s-tender-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Tender Traditional Omelet": { - 'name': "[Masterwork] Artisan's Tender Traditional Omelet", - 'image': 'masterwork-artisan-s-tender-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Browned Grilled Skewers': { - 'name': '[Masterwork] Expert Browned Grilled Skewers', - 'image': 'masterwork-expert-browned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Browned Seasoned Grilled Skewers': { - 'name': '[Masterwork] Expert Browned Seasoned Grilled Skewers', - 'image': 'masterwork-expert-browned-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Butter Steak': { - 'name': '[Masterwork] Expert Butter Steak', - 'image': 'masterwork-expert-butter-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Butter Steak ...': { - 'name': '[Masterwork] Expert Butter Steak Meal', - 'image': 'masterwork-expert-butter-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Chewy Grilled Skewers': { - 'name': '[Masterwork] Expert Chewy Grilled Skewers', - 'image': 'masterwork-expert-chewy-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Chewy Seasoned Grilled Skewers': { - 'name': '[Masterwork] Expert Chewy Seasoned Grilled Skewers', - 'image': 'masterwork-expert-chewy-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Crispy Grilled ...': { - 'name': '[Masterwork] Expert Crispy Grilled Skewers', - 'image': 'masterwork-expert-crispy-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Crispy Seasoned Grilled Skewers': { - 'name': '[Masterwork] Expert Crispy Seasoned Grilled Skewers', - 'image': 'masterwork-expert-crispy-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Fluffy Omelet': { - 'name': '[Masterwork] Expert Fluffy Omelet', - 'image': 'masterwork-expert-fluffy-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Fluffy Traditional Omelet': { - 'name': '[Masterwork] Expert Fluffy Traditional Omelet', - 'image': 'masterwork-expert-fluffy-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Garlic Steak': { - 'name': '[Masterwork] Expert Garlic Steak', - 'image': 'masterwork-expert-garlic-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Garlic Steak Meal': { - 'name': '[Masterwork] Expert Garlic Steak Meal', - 'image': 'masterwork-expert-garlic-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Herb Steak': { - 'name': '[Masterwork] Expert Herb Steak', - 'image': 'masterwork-expert-herb-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Herb Steak Meal': { - 'name': '[Masterwork] Expert Herb Steak Meal', - 'image': 'masterwork-expert-herb-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Moist Omelet': { - 'name': '[Masterwork] Expert Moist Omelet', - 'image': 'masterwork-expert-moist-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Moist Traditional Omelet': { - 'name': '[Masterwork] Expert Moist Traditional Omelet', - 'image': 'masterwork-expert-moist-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Salty Mixed Stew': { - 'name': '[Masterwork] Expert Salty Mixed Stew', - 'image': 'masterwork-expert-salty-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Salty Stew': { - 'name': '[Masterwork] Expert Salty Stew', - 'image': 'masterwork-expert-salty-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Spicy Mixed Stew': { - 'name': '[Masterwork] Expert Spicy Mixed Stew', - 'image': 'masterwork-expert-spicy-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Spicy Stew': { - 'name': '[Masterwork] Expert Spicy Stew', - 'image': 'masterwork-expert-spicy-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Sweet Mixed Stew': { - 'name': '[Masterwork] Expert Sweet Mixed Stew', - 'image': 'masterwork-expert-sweet-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Sweet Stew': { - 'name': '[Masterwork] Expert Sweet Stew', - 'image': 'masterwork-expert-sweet-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Tender Omelet': { - 'name': '[Masterwork] Expert Tender Omelet', - 'image': 'masterwork-expert-tender-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Tender Traditional Omelet': { - 'name': '[Masterwork] Expert Tender Traditional Omelet', - 'image': 'masterwork-expert-tender-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Browned Grilled Skewers": { - 'name': "[Masterwork] Master's Browned Grilled Skewers", - 'image': 'masterwork-master-s-browned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Browned Seasoned Grilled Skewers": { - 'name': "[Masterwork] Master's Browned Seasoned Grilled Skewers", - 'image': 'masterwork-master-s-browned-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Butter Steak": { - 'name': "[Masterwork] Master's Butter Steak", - 'image': 'masterwork-master-s-butter-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Butter Steak Meal": { - 'name': "[Masterwork] Master's Butter Steak Meal", - 'image': 'masterwork-master-s-butter-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Chewy Grille...": { - 'name': "[Masterwork] Master's Chewy Grilled Skewers", - 'image': 'masterwork-master-s-chewy-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Chewy Seasoned Grilled Skewers": { - 'name': "[Masterwork] Master's Chewy Seasoned Grilled Skewers", - 'image': 'masterwork-master-s-chewy-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Crispy Grilled Skewers": { - 'name': "[Masterwork] Master's Crispy Grilled Skewers", - 'image': 'masterwork-master-s-crispy-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Crispy Seasoned Grilled Skewers": { - 'name': "[Masterwork] Master's Crispy Seasoned Grilled Skewers", - 'image': 'masterwork-master-s-crispy-seasoned-grilled-skewers.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Fluffy Omelet": { - 'name': "[Masterwork] Master's Fluffy Omelet", - 'image': 'masterwork-master-s-fluffy-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Fluffy Traditional Omelet": { - 'name': "[Masterwork] Master's Fluffy Traditional Omelet", - 'image': 'masterwork-master-s-fluffy-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Garlic Steak": { - 'name': "[Masterwork] Master's Garlic Steak", - 'image': 'masterwork-master-s-garlic-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Garlic Steak Meal": { - 'name': "[Masterwork] Master's Garlic Steak Meal", - 'image': 'masterwork-master-s-garlic-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Herb Steak": { - 'name': "[Masterwork] Master's Herb Steak", - 'image': 'masterwork-master-s-herb-steak.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Herb Steak ...": { - 'name': "[Masterwork] Master's Herb Steak Meal", - 'image': 'masterwork-master-s-herb-steak-meal.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Moist Omele...": { - 'name': "[Masterwork] Master's Moist Omelet", - 'image': 'masterwork-master-s-moist-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Moist Traditional Omelet": { - 'name': "[Masterwork] Master's Moist Traditional Omelet", - 'image': 'masterwork-master-s-moist-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Salty Mixed Stew": { - 'name': "[Masterwork] Master's Salty Mixed Stew", - 'image': 'masterwork-master-s-salty-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Salty Stew": { - 'name': "[Masterwork] Master's Salty Stew", - 'image': 'masterwork-master-s-salty-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Spicy Mixed Stew": { - 'name': "[Masterwork] Master's Spicy Mixed Stew", - 'image': 'masterwork-master-s-spicy-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Spicy Stew": { - 'name': "[Masterwork] Master's Spicy Stew", - 'image': 'masterwork-master-s-spicy-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Sweet Mixed Stew": { - 'name': "[Masterwork] Master's Sweet Mixed Stew", - 'image': 'masterwork-master-s-sweet-mixed-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Sweet Stew": { - 'name': "[Masterwork] Master's Sweet Stew", - 'image': 'masterwork-master-s-sweet-stew.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Tender Omelet": { - 'name': "[Masterwork] Master's Tender Omelet", - 'image': 'masterwork-master-s-tender-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Tender Traditional Omelet": { - 'name': "[Masterwork] Master's Tender Traditional Omelet", - 'image': 'masterwork-master-s-tender-traditional-omelet.webp', - 'rarity': 2, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Grilled Skewers": { - 'name': "[Masterwork] Artisan's Grilled Skewers", - 'image': 'masterwork-artisan-s-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 1 - }, - "[Masterwork] Artisan's Mixed Stew": { - 'name': "[Masterwork] Artisan's Mixed Stew", - 'image': 'masterwork-artisan-s-mixed-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Omelet": { - 'name': "[Masterwork] Artisan's Omelet", - 'image': 'masterwork-artisan-s-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 1 - }, - "[Masterwork] Artisan's Seasoned Grilled Skewers": { - 'name': "[Masterwork] Artisan's Seasoned Grilled Skewers", - 'image': 'masterwork-artisan-s-seasoned-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Steak": { - 'name': "[Masterwork] Artisan's Steak", - 'image': 'masterwork-artisan-s-steak.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 1 - }, - "[Masterwork] Artisan's Steak Meal": { - 'name': "[Masterwork] Artisan's Steak Meal", - 'image': 'masterwork-artisan-s-steak-meal.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Artisan's Stew": { - 'name': "[Masterwork] Artisan's Stew", - 'image': 'masterwork-artisan-s-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 1 - }, - "[Masterwork] Artisan's Traditional Omelet": { - 'name': "[Masterwork] Artisan's Traditional Omelet", - 'image': 'masterwork-artisan-s-traditional-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Grilled Skewers': { - 'name': '[Masterwork] Expert Grilled Skewers', - 'image': 'masterwork-expert-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Mixed Stew': { - 'name': '[Masterwork] Expert Mixed Stew', - 'image': 'masterwork-expert-mixed-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Omelet': { - 'name': '[Masterwork] Expert Omelet', - 'image': 'masterwork-expert-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Seasoned Grilled Skewers': { - 'name': '[Masterwork] Expert Seasoned Grilled Skewers', - 'image': 'masterwork-expert-seasoned-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Steak': { - 'name': '[Masterwork] Expert Steak', - 'image': 'masterwork-expert-steak.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Steak Meal': { - 'name': '[Masterwork] Expert Steak Meal', - 'image': 'masterwork-expert-steak-meal.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Stew': { - 'name': '[Masterwork] Expert Stew', - 'image': 'masterwork-expert-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - '[Masterwork] Expert Traditional Omelet': { - 'name': '[Masterwork] Expert Traditional Omelet', - 'image': 'masterwork-expert-traditional-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Grilled Skewers": { - 'name': "[Masterwork] Master's Grilled Skewers", - 'image': 'masterwork-master-s-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Mixed Stew": { - 'name': "[Masterwork] Master's Mixed Stew", - 'image': 'masterwork-master-s-mixed-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Omelet": { - 'name': "[Masterwork] Master's Omelet", - 'image': 'masterwork-master-s-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Seasoned Grilled Skewers": { - 'name': "[Masterwork] Master's Seasoned Grilled Skewers", - 'image': 'masterwork-master-s-seasoned-grilled-skewers.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Steak": { - 'name': "[Masterwork] Master's Steak", - 'image': 'masterwork-master-s-steak.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Steak Meal": { - 'name': "[Masterwork] Master's Steak Meal", - 'image': 'masterwork-master-s-steak-meal.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Stew": { - 'name': "[Masterwork] Master's Stew", - 'image': 'masterwork-master-s-stew.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - }, - "[Masterwork] Master's Traditional Omelet": { - 'name': "[Masterwork] Master's Traditional Omelet", - 'image': 'masterwork-master-s-traditional-omelet.webp', - 'rarity': 1, - 'category': 'Cooking', - 'subcategory': None, - 'amount': 10 - } -} \ No newline at end of file diff --git a/modules/market_data/currency_exchange.py b/modules/market_data/currency_exchange.py deleted file mode 100644 index 3fe95e0..0000000 --- a/modules/market_data/currency_exchange.py +++ /dev/null @@ -1,18 +0,0 @@ -currency_exchange={ - "Blue Crystal":{ - "name":"Blue Crystal", - "image": "blue-crystal.webp", - "rarity": 0, - "category": "Currency Exchange", - "amount": 1, - "subcategory": None, - }, - "Royal Crystal":{ - "name":"Royal Crystal", - "image": "royal-crystal.webp", - "rarity": 0, - "category": "Currency Exchange", - "amount": 1, - "subcategory": None, - }, -} \ No newline at end of file diff --git a/modules/market_data/engraving_recipe.py b/modules/market_data/engraving_recipe.py deleted file mode 100644 index 56ebb68..0000000 --- a/modules/market_data/engraving_recipe.py +++ /dev/null @@ -1,554 +0,0 @@ -engraving_recipe = { - '[Artillerist] Barrage Enhancement Engraving Recipe': { - 'name': '[Artillerist] Barrage Enhancement Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Artillerist] Firepower Enhancement Engraving Recipe': { - 'name': '[Artillerist] Firepower Enhancement Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Bard] Desperate Salvation Engraving Recipe': { - 'name': '[Bard] Desperate Salvation Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Bard] True Courage Engraving Recipe': { - 'name': '[Bard] True Courage Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Berserker] Berserker Technique Engraving Recipe': { - 'name': '[Berserker] Berserker Technique Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Berserker] Mayhem Engraving Recipe': { - 'name': '[Berserker] Mayhem Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Deadeye] Enhanced Weapon Engraving Recipe': { - 'name': '[Deadeye] Enhanced Weapon Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Deadeye] Pistoleer Engraving Recipe': { - 'name': '[Deadeye] Pistoleer Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Deathblade] Remaining Energy Engraving Recipe': { - 'name': '[Deathblade] Remaining Energy Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Deathblade] Surge Engraving Recipe': { - 'name': '[Deathblade] Surge Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Glaivier] Control Engraving Recipe': { - 'name': '[Glaivier] Control Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Glaivier] Pinnacle Engraving Recipe': { - 'name': '[Glaivier] Pinnacle Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Gunlancer] Combat Readiness Engraving Recipe': { - 'name': '[Gunlancer] Combat Readiness Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Gunlancer] Lone Knight Engraving Recipe': { - 'name': '[Gunlancer] Lone Knight Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Gunslinger] Peacemaker Engraving Recipe': { - 'name': '[Gunslinger] Peacemaker Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Gunslinger] Time to Hunt Engraving Recipe': { - 'name': '[Gunslinger] Time to Hunt Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Paladin] Blessed Aura Engraving Recipe': { - 'name': '[Paladin] Blessed Aura Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Paladin] Judgment Engraving Recipe': { - 'name': '[Paladin] Judgment Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Scrapper] Shock Training Engraving Recipe': { - 'name': '[Scrapper] Shock Training Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Scrapper] Ultimate Skill: Taijutsu ...': { - 'name': '[Scrapper] Ultimate Skill: Taijutsu Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Shadowhunter] Demonic Impulse Engraving Recipe': { - 'name': '[Shadowhunter] Demonic Impulse Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Shadowhunter] Perfect Suppression Engraving Recipe': { - 'name': '[Shadowhunter] Perfect Suppression Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Sharpshooter] Death Strike Engraving Recipe': { - 'name': '[Sharpshooter] Death Strike Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Sharpshooter] Loyal Companion Engraving Recipe': { - 'name': '[Sharpshooter] Loyal Companion Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Sorceress] Igniter Engraving Recipe': { - 'name': '[Sorceress] Igniter Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Sorceress] Reflux Engraving Recipe': { - 'name': '[Sorceress] Reflux Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Soulfist] Energy Overflow Engraving Recipe': { - 'name': '[Soulfist] Energy Overflow Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Soulfist] Robust Spirit Engraving Recipe': { - 'name': '[Soulfist] Robust Spirit Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Striker] Deathblow Engraving Recipe': { - 'name': '[Striker] Deathblow Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Striker] Esoteric Flurry Engraving Recipe': { - 'name': '[Striker] Esoteric Flurry Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Wardancer] Esoteric Skill Enhancement Engraving Recipe': { - 'name': '[Wardancer] Esoteric Skill Enhancement Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Wardancer] First Intention Engraving Recipe': { - 'name': '[Wardancer] First Intention Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Destroyer] Gravity Training ...': { - 'name': '[Destroyer] Gravity Training Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Destroyer] Rage Hammer Engravin...': { - 'name': '[Destroyer] Rage Hammer Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Arcanist] Grace of the Empress ...': { - 'name': '[Arcanist] Grace of the Empress Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Arcanist] Order of the Emperor ...': { - 'name': '[Arcanist] Order of the Emperor Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Machinist] Arthetinean Skill ...': { - 'name': '[Machinist] Arthetinean Skill Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Machinist] Evolutionary Legacy ...': { - 'name': '[Machinist] Evolutionary Legacy Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Reaper] Hunger Engraving Recipe': { - 'name': '[Reaper] Hunger Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Reaper] Lunar Voice Engraving ...': { - 'name': '[Reaper] Lunar Voice Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Summoner] Communication ...': { - 'name': '[Summoner] Communication Overflow Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Summoner] Master Summoner ...': { - 'name': '[Summoner] Master Summoner Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Artist] Full Bloom Engraving Recip...': { - 'name': '[Artist] Full Bloom Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Artist] Recurrence Engraving Recip...': { - 'name': '[Artist] Recurrence Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Slayer] Predator Engraving Recipe': { - 'name': '[Slayer] Predator Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - '[Slayer] Punisher Engraving Recipe': { - 'name': '[Slayer] Punisher Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Adrenaline Engraving Recipe': { - 'name': 'Adrenaline Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'All-Out Attack Engraving Recipe': { - 'name': 'All-Out Attack Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Ambush Master Engraving Recipe': { - 'name': 'Ambush Master Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Awakening Engraving Recipe': { - 'name': 'Awakening Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Barricade Engraving Recipe': { - 'name': 'Barricade Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Battle Engraving Recipe': { - 'name': 'Battle Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Battle Engraving Recipe': { - 'name': 'Battle Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Broken Bone Engraving Recipe': { - 'name': 'Broken Bone Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Class Engraving Recipe': { - 'name': 'Class Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Contender Engraving Recipe': { - 'name': 'Contender Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Crisis Evasion Engraving Recipe': { - 'name': 'Crisis Evasion Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Crushing Fist Engraving Recipe': { - 'name': 'Crushing Fist Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Cursed Doll Engraving Recipe': { - 'name': 'Cursed Doll Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Disrespect Engraving Recipe': { - 'name': 'Disrespect Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Divine Protection Engraving Recipe': { - 'name': 'Divine Protection Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Drops of Ether Engraving Recipe': { - 'name': 'Drops of Ether Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Emergency Rescue Engraving Recipe': { - 'name': 'Emergency Rescue Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Enhanced Shield Engraving Recipe': { - 'name': 'Enhanced Shield Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Ether Predator Engraving Recipe': { - 'name': 'Ether Predator Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Expert Engraving Recipe': { - 'name': 'Expert Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Explosive Expert Engraving Recipe': { - 'name': 'Explosive Expert Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Fortitude Engraving Recipe': { - 'name': 'Fortitude Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Grudge Engraving Recipe': { - 'name': 'Grudge Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Heavy Armor Engraving Recipe': { - 'name': 'Heavy Armor Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Hit Master Engraving Recipe': { - 'name': 'Hit Master Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Keen Blunt Weapon Engraving Recipe': { - 'name': 'Keen Blunt Weapon Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Lightning Fury Engraving Recipe': { - 'name': 'Lightning Fury Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Magick Stream Engraving Recipe': { - 'name': 'Magick Stream Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Mass Increase Engraving Recipe': { - 'name': 'Mass Increase Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Master Brawler Engraving Recipe': { - 'name': 'Master Brawler Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Master of Escape Engraving Recipe': { - 'name': 'Master of Escape Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Master\'s Tenacity Engraving Recipe': { - 'name': 'Master\'s Tenacity Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Max MP Increase Engraving Recipe': { - 'name': 'Max MP Increase Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'MP Efficiency Increase Engraving Recipe': { - 'name': 'MP Efficiency Increase Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Necromancy Engraving Recipe': { - 'name': 'Necromancy Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Precise Dagger Engraving Recipe': { - 'name': 'Precise Dagger Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Preemptive Strike Engraving Recipe': { - 'name': 'Preemptive Strike Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Propulsion Engraving Recipe': { - 'name': 'Propulsion Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Raid Captain Engraving Recipe': { - 'name': 'Raid Captain Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Shield Piercing Engraving Recipe': { - 'name': 'Shield Piercing Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Sight Focus Engraving Recipe': { - 'name': 'Sight Focus Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Spirit Absorption Engraving Recipe': { - 'name': 'Spirit Absorption Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Stabilized Status Engraving Recipe': { - 'name': 'Stabilized Status Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Strong Will Engraving Recipe': { - 'name': 'Strong Will Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Super Charge Engraving Recipe': { - 'name': 'Super Charge Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, - 'Vital Point Hit Engraving Recipe': { - 'name': 'Vital Point Hit Engraving Recipe', - 'amount': 1, - 'category': 'Engraving Recipe', - 'subcategory': None - }, -} diff --git a/modules/market_data/enhancement_material.py b/modules/market_data/enhancement_material.py deleted file mode 100644 index b10667c..0000000 --- a/modules/market_data/enhancement_material.py +++ /dev/null @@ -1,362 +0,0 @@ -enhancement_material={ - 'Destruction Stone Fragment': { - 'name': 'Destruction Stone Fragment', - 'amount': 10, - 'image': 'destruction-stone-fragment.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 0 - }, - 'Guardian Stone Fragment': { - 'name': 'Guardian Stone Fragment', - 'amount': 10, - 'image': 'guardian-stone-fragment.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 0 - }, - 'Guardian Stone': { - 'name': 'Guardian Stone', - 'amount': 10, - 'image': 'guardian-stone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 0 - }, - 'Destruction Stone': { - 'name': 'Destruction Stone', - 'amount': 10, - 'image': 'destruction-stone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 0 - }, - 'Crystallized Guardian Stone': { - 'name': 'Crystallized Guardian Stone', - 'amount': 10, - 'image': 'crystallized-guardian-stone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 0 - }, - 'Crystallized Destruction Stone': { - 'name': 'Crystallized Destruction Stone', - 'amount': 10, - 'image': 'crystallized-destruction-stone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 0 - }, - 'Simple Oreha Fusion Material': { - 'name': 'Simple Oreha Fusion Material', - 'amount': 1, - 'image': 'simple-oreha-fusion-material.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 1 - }, - 'Harmony Shard Pouch (S)': { - 'name': 'Harmony Shard Pouch (S)', - 'amount': 1, - 'image': 'harmony-shard-pouch-s.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 1 - }, - 'Life Shard Pouch (S)': { - 'name': 'Life Shard Pouch (S)', - 'amount': 1, - 'image': 'life-shard-pouch-s.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 1 - }, - 'Honor Shard Pouch (S)': { - 'name': 'Honor Shard Pouch (S)', - 'amount': 1, - 'image': 'honor-shard-pouch-s.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 1 - }, - 'Caldarr Fusion Material': { - 'name': 'Caldarr Fusion Material', - 'amount': 1, - 'image': 'caldarr-fusion-material.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 2 - }, - 'Basic Oreha Fusion Material': { - 'name': 'Basic Oreha Fusion Material', - 'amount': 1, - 'image': 'basic-oreha-fusion-material.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 2 - }, - 'Harmony Shard Pouch (M)': { - 'name': 'Harmony Shard Pouch (M)', - 'amount': 1, - 'image': 'harmony-shard-pouch-m.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 2 - }, - 'Life Shard Pouch (M)': { - 'name': 'Life Shard Pouch (M)', - 'amount': 1, - 'image': 'life-shard-pouch-m.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 2 - }, - 'Honor Shard Pouch (M)': { - 'name': 'Honor Shard Pouch (M)', - 'amount': 1, - 'image': 'honor-shard-pouch-m.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 2 - }, - 'Harmony Shard Pouch (L)': { - 'name': 'Harmony Shard Pouch (L)', - 'amount': 1, - 'image': 'harmony-shard-pouch-l.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 3 - }, - 'Life Shard Pouch (L)': { - 'name': 'Life Shard Pouch (L)', - 'amount': 1, - 'image': 'life-shard-pouch-l.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 3 - }, - 'Honor Shard Pouch (L)': { - 'name': 'Honor Shard Pouch (L)', - 'amount': 1, - 'image': 'honor-shard-pouch-l.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 3 - }, - 'Solar Grace': { - 'name': 'Solar Grace', - 'amount': 1, - 'image': 'solar-grace.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 1 - }, - 'Harmony Leapstone': { - 'name': 'Harmony Leapstone', - 'amount': 1, - 'image': 'harmony-leapstone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 2 - }, - 'Life Leapstone': { - 'name': 'Life Leapstone', - 'amount': 1, - 'image': 'life-leapstone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 2 - }, - 'Honor Leapstone': { - 'name': 'Honor Leapstone', - 'amount': 1, - 'image': 'honor-leapstone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 2 - }, - 'Great Honor Leapstone': { - 'name': 'Great Honor Leapstone', - 'amount': 1, - 'image': 'great-honor-leapstone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 2 - }, - 'Solar Blessing': { - 'name': 'Solar Blessing', - 'amount': 1, - 'image': 'solar-blessing.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 2 - }, - 'Star\'s Breath': { - 'name': 'Star\'s Breath', - 'amount': 1, - 'image': 'stars-breath.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Tailoring: Basic Design': { - 'name': 'Tailoring: Basic Design', - 'amount': 1, - 'image': 'tailoring-basic-design.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Metallurgy Basic Casting': { - 'name': 'Metallurgy: Basic Casting', - 'amount': 1, - 'image': 'metallurgy-basic-casting.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Moon\'s Breath': { - 'name': 'Moon\'s Breath', - 'amount': 1, - 'image': 'moons-breath.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Tailoring: Basic Knots': { - 'name': 'Tailoring: Basic Knots', - 'amount': 1, - 'image': 'tailoring-basic-knots.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Metallurgy: Basic Folding': { - 'name': 'Metallurgy: Basic Folding', - 'amount': 1, - 'image': 'metallurgy-basic-folding.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Solar Protection': { - 'name': 'Solar Protection', - 'amount': 1, - 'image': 'solar-protection.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Tailoring: Basic Mending': { - 'name': 'Tailoring: Basic Mending', - 'amount': 1, - 'image': 'tailoring-basic-mending.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Tailoring: Applied Mending': { - 'name': 'Tailoring: Applied Mending', - 'amount': 1, - 'image': 'tailoring-basic-mending.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 4 - }, - 'Metallurgy: Basic Welding': { - 'name': 'Metallurgy: Basic Welding', - 'amount': 1, - 'image': 'metallurgy-basic-welding.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Metallurgy: Applied Welding': { - 'name': 'Metallurgy: Applied Welding', - 'amount': 1, - 'image': 'metallurgy-basic-welding.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 4 - }, - 'Powder of Sage': { - 'name': 'Powder of Sage', - 'amount': 1, - 'image': 'powder-sage.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Other Materials', - 'rarity': 3 - }, - 'Protection Stone': { - 'name': 'Protection Stone', - 'amount': 1, - 'image': 'protection-stone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 1 - }, - 'Obliteration Stone': { - 'name': 'Obliteration Stone', - 'amount': 1, - 'image': 'obliteration-stone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 1 - }, - 'Superior Oreha Fusion Material': { - 'name': 'Superior Oreha Fusion Material', - 'amount': 1, - 'image': 'superior-oreha-fusion-material.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Honing Materials', - 'rarity': 3 - }, - 'Marvelous Honor Leapstone': { - 'name': 'Marvelous Honor Leapstone', - 'amount': 1, - 'image': 'marvelous-honor-leapstone.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 3 - }, - 'Tailoring: Advanced Mending': { - 'name': 'Tailoring: Advanced Mending', - 'amount': 1, - 'image': 'tailoring-advanced-mending.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 5 - }, - 'Metallurgy: Advanced Welding': { - 'name': 'Metallurgy: Advanced Welding', - 'amount': 1, - 'image': 'metallurgy-advanced-welding.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 5 - }, - 'Tailoring: Expert Mending': { - 'name': 'Tailoring: Expert Mending', - 'amount': 1, - 'image': 'tailoring-expert-mending.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 5 - }, - 'Metallurgy: Expert Welding': { - 'name': 'Metallurgy: Expert Welding', - 'amount': 1, - 'image': 'metallurgy-expert-welding.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Additional Honing Materials', - 'rarity': 5 - }, - 'Sidereal Energy': { - 'name': 'Sidereal Energy', - 'amount': 1, - 'image': 'sidereal-energy.webp', - 'category': 'Enhancement Material', - 'subcategory': 'Weapon Evolution Materials', - 'rarity': 7 - }, -} \ No newline at end of file diff --git a/modules/market_data/gem_chest.py b/modules/market_data/gem_chest.py deleted file mode 100644 index 2d2cbfe..0000000 --- a/modules/market_data/gem_chest.py +++ /dev/null @@ -1,34 +0,0 @@ -gem_chest={ - "T2 Gem Chest (Lv. 1-2)":{ - "name":"T2 Gem Chest (Lv. 1-2)", - "image": "gem-chest.webp", - "rarity": 2, - "category": "Gem Chest", - "amount": 1, - "subcategory": None, - }, - "T3 Gem Chest (Lv. 1-2)":{ - "name":"T3 Gem Chest (Lv. 1-2)", - "image": "gem-chest.webp", - "rarity": 2, - "category": "Gem Chest", - "amount": 1, - "subcategory": None, - }, - "T3 Gem Chest (Lv. 1-3)":{ - "name":"T3 Gem Chest (Lv. 1-3)", - "image": "gem-chest.webp", - "rarity": 2, - "category": "Gem Chest", - "amount": 1, - "subcategory": None, - }, - "T2 Gem Chest (Lv. 1-3)":{ - "name":"T2 Gem Chest (Lv. 1-3)", - "image": "gem-chest.webp", - "rarity": 2, - "category": "Gem Chest", - "amount": 1, - "subcategory": None, - }, -} \ No newline at end of file diff --git a/modules/market_data/mount.py b/modules/market_data/mount.py deleted file mode 100644 index 880b008..0000000 --- a/modules/market_data/mount.py +++ /dev/null @@ -1,467 +0,0 @@ -mount = { - - "Mount: Dyorika Warhorse": { - "name": "Mount: Dyorika Warhorse", - "image": "mount-dyorika-warhorse.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Chaos Ghost Horse": { - "name": "Mount: Chaos Ghost Horse", - "image": "mount-chaos-ghost-horse.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Corruption Ghost Horse": { - "name": "Mount: Corruption Ghost Horse", - "image": "mount-corruption-ghost-horse.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Hatred Ghost Horse": { - "name": "Mount: Hatred Ghost Horse", - "image": "mount-hatred-ghost-horse.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Rage Ghost Horse": { - "name": "Mount: Rage Ghost Horse", - "image": "mount-rage-ghost-horse.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Sinful Ghost Horse": { - "name": "Mount: Sinful Ghost Horse", - "image": "mount-sinful-ghost-horse.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Cookie Piñata": { - "name": "Mount: Cookie Piñata", - "image": "mount-cookie-piñata.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Grape Piñata": { - "name": "Mount: Grape Piñata", - "image": "mount-grape-piñata.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Lemon Piñata": { - "name": "Mount: Lemon Piñata", - "image": "mount-lemon-piñata.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Melon Piñata": { - "name": "Mount: Melon Piñata", - "image": "mount-melon-piñata.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Soda Piñata": { - "name": "Mount: Soda Piñata", - "image": "mount-soda-piñata.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Strawberry Piñata": { - "name": "Mount: Strawberry Piñata", - "image": "mount-strawberry-piñata.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Sugar Piñata": { - "name": "Mount: Sugar Piñata", - "image": "mount-sugar-piñata.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Vernese Elk": { - "name": "Mount: Vernese Elk", - "image": "mount-vernese-elk.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Radiant Golden Cloud": { - "name": "Mount: Radiant Golden Cloud", - "image": "mount-radiant-golden-cloud.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Flying Nimbus": { - "name": "Mount: Flying Nimbus", - "image": "mount-flying-nimbus.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Cerberus": { - "name": "Mount: Cerberus", - "image": "mount-cerberus.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Ghost Horse Selection Chest": { - "name": "Ghost Horse Selection Chest", - "image": "ghost-horse-selection-chest.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Achatemeow Selection Chest": { - "name": "Achatemeow Selection Chest", - "image": "achatemeow-selection-chest.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Cerberus Mount Selection Chest": { - "name": "Cerberus Mount Selection Chest", - "image": "cerberus-mount-selection-chest.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Armor Wagon Selection Chest": { - "name": "Armor Wagon Selection Chest", - "image": "ghost-horse-selection-chest.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Mount: Coral Armor Wagon": { - "name": "Mount: Coral Armor Wagon", - "image": "mount-coral-armor-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Pearl Armor Wagon": { - "name": "Mount: Pearl Armor Wagon", - "image": "mount-pear-armor-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Opal Armor Wagon": { - "name": "Mount: Opal Armor Wagon", - "image": "mount-opal-armor-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Ruby Armor Wagon": { - "name": "Mount: Ruby Armor Wagon", - "image": "mount-ruby-armor-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Onyx Armor Wagon": { - "name": "Mount: Onyx Armor Wagon", - "image": "mount-onyx-armor-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Pumpkin Carriage Selection Chest": { - "name": "Pumpkin Carriage Selection Chest", - "image": "pumpkin-carriage-selection-chest.webpp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Bike Mount Selection Chest": { - "name": "Bike Mount Selection Chest", - "image": "bike-mount-selection-chest.webpst.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Icebloom Reindeer Selection Chest": { - "name": "Icebloom Reindeer Selection Chest", - "image": "icebloom-reindeer-selection-chest.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Mount: Night Pumpkin Wagon": { - "name": "Mount: Night Pumpkin Wagon", - "image": "mount-night-pumpkin-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Dawn Pumpkin Wagon": { - "name": "Mount: Dawn Pumpkin Wagon", - "image": "mount-dawn-pumpkin-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Twilight Pumpkin Wagon": { - "name": "Mount: Twilight Pumpkin Wagon", - "image": "mount-twilight-pumpkin-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Sunset Pumpkin Wagon": { - "name": "Mount: Sunset Pumpkin Wagon", - "image": "mount-sunset-pumpkin-wagon.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Wingsuit Bike B": { - "name": "Mount: Wingsuit Bike B", - "image": "mount-wingsuit-bike-b.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Wingsuit Bike W": { - "name": "Mount: Wingsuit Bike W", - "image": "mount-wingsuit-bike-w.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Wingsuit Bike R": { - "name": "Mount: Wingsuit Bike R", - "image": "mount-wingsuit-bike-r.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Wingsuit Bike O": { - "name": "Mount: Wingsuit Bike O", - "image": "mount-wingsuit-bike-o.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Wingsuit Bike G": { - "name": "Mount: Wingsuit Bike G", - "image": "mount-wingsuit-bike-g.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Dawn Icebloom Reindeer": { - "name": "Mount: Dawn Icebloom Reindeer", - "image": "mount-dawn-icebloom-reindeer.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Midnight Icebloom Reindeer": { - "name": "Mount: Midnight Icebloom Reindeer", - "image": "mount-midnight-icebloom-reindeer.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Evening Icebloom Reindeer": { - "name": "Mount: Evening Icebloom Reindeer", - "image": "mount-evening-icebloom-reindeer.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Twilight Icebloom Reindeer": { - "name": "Mount: Twilight Icebloom Reindeer", - "image": "mount-twilight-icebloom-reindeer.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Day Icebloom Reindeer": { - "name": "Mount: Day Icebloom Reindeer", - "image": "mount-day-icebloom-reindeer.webp", - "rarity": 4, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Magic Bed Mount Selection Chest": { - "name": "Magic Bed Mount Selection Chest", - "image": "magic-bed-mount-selection-chest.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount Chest", - "amount": 1 - }, - "Mount: Radiant Dream Bed": { - "name": "Mount: Radiant Dream Bed", - "image": "mount-radiant-dream-bed.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Harmony Dream Bed": { - "name": "Mount: Harmony Dream Bed", - "image": "mount-harmony-dream-bed.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: White Dream Bed": { - "name": "Mount: White Dream Bed", - "image": "mount-white-dream-bed.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Twilight Dream Bed": { - "name": "Mount: Twilight Dream Bed", - "image": "mount-twilight-dream-bed.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Heartthrob Dream Bed": { - "name": "Mount: Heartthrob Dream Bed", - "image": "mount-heartthrob-dream-bed.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Memory Dream Bed": { - "name": "Mount: Memory Dream Bed", - "image": "mount-memory-dream-bed.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Cozy Dream Bed": { - "name": "Mount: Cozy Dream Bed", - "image": "mount-cozy-dream-bed.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Snowball Mount Selection Chest": { - "name": "Snowball Mount Selection Chest", - "image": "snowball-mount-selection-chest.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Winter Rollysnow": { - "name": "Mount: Winter Rollysnow", - "image": "mount-winter-rollysnow.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Icebloom Rollysnow": { - "name": "Mount: Icebloom Rollysnow", - "image": "mount-icebloom-rollysnow.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Sweet Rollysnow": { - "name": "Mount: Sweet Rollysnow", - "image": "mount-sweet-rollysnow.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Cold Rollysnow": { - "name": "Mount: Cold Rollysnow", - "image": "mount-cold-rollysnow.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Festive Rollysnow": { - "name": "Mount: Festive Rollysnow", - "image": "mount-festive-rollysnow.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - }, - "Mount: Splendid Rollysnow": { - "name": "Mount: Splendid Rollysnow", - "image": "mount-splendid-rollysnow.webp", - "rarity": 3, - "category": "Mount", - "subcategory": "Mount", - "amount": 1 - } -} diff --git a/modules/market_data/other.py b/modules/market_data/other.py deleted file mode 100644 index 75158d7..0000000 --- a/modules/market_data/other.py +++ /dev/null @@ -1,9 +0,0 @@ -other = { - "Awakening: Chaos Shard": { - "name": "Awakening: Chaos Shard", - "image": "awakening-chaos-shard.webp", - "rarity": 0, - "category": "Other", - "amount": 10 - }, -} \ No newline at end of file diff --git a/modules/market_data/pets.py b/modules/market_data/pets.py deleted file mode 100644 index 3b82dea..0000000 --- a/modules/market_data/pets.py +++ /dev/null @@ -1,362 +0,0 @@ -pets = { - "Pet: Brave Achatemeow":{ - "name": "Pet: Brave Achatemeow", - "image": "pet-brave-achatemeow.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Proud Achatemeow":{ - "name": "Pet: Proud Achatemeow", - "image": "pet-proud-achatemeow.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Shy Achatemeow":{ - "name": "Pet: Shy Achatemeow", - "image": "pet-shy-achatemeow.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Splendid Achatemeow":{ - "name": "Pet: Splendid Achatemeow", - "image": "pet-splendid-achatemeow.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Cackling Totoiki":{ - "name": "Pet: Cackling Totoiki", - "image": "pet-cackling-totoiki.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Cheerful Totoiki":{ - "name": "Pet: Cheerful Totoiki", - "image": "pet-cheerful-totoiki.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Chipper Totoiki":{ - "name": "Pet: Chipper Totoiki", - "image": "pet-chipper-totoiki.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Excited Totoiki":{ - "name": "Pet: Excited Totoiki", - "image": "pet-excited-totoiki.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Cat Pet Selection Chest":{ - "name": "Cat Pet Selection Chest", - "image": "cat-pet-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Pet: Nerran":{ - "name": "Pet: Nerran", - "image": "pet-nerran.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Lisette":{ - "name": "Pet: Lisette", - "image": "pet-lisette.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Jamis":{ - "name": "Pet: Jamis", - "image": "pet-jamis.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Starfish Pet Selection Chest":{ - "name": "Starfish Pet Selection Chest", - "image": "cat-pet-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Panther Pet Selection Chest":{ - "name": "Panther Pet Selection Chest", - "image": "cat-pet-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Pet: Starfish Dugo":{ - "name": "Pet: Starfish Dugo", - "image": "pet-starfish-dugo.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Starfish Hook":{ - "name": "Pet: Starfish Hook", - "image": "pet-starfish-hook.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Starfish Archie":{ - "name": "Pet: Starfish Archie", - "image": "pet-starfish-archie.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Starfish Sway":{ - "name": "Pet: Starfish Sway", - "image": "pet-starfish-sway.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Starfish Pinkie":{ - "name": "Pet: Starfish Pinkie", - "image": "pet-starfish-pinkie.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Bilbrin Panther":{ - "name": "Pet: Bilbrin Panther", - "image": "pet-bilbrin-panther.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Voldis Leopard":{ - "name": "Pet: Voldis Leopard", - "image": "pet-voldis-leopard.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Halloween Pet Selection Chest":{ - "name": "Halloween Pet Selection Chest", - "image": "halloween-pet-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Shiba Dog Pet Selection Chest":{ - "name": "Shiba Dog Pet Selection Chest", - "image": "shiba-dog-pet-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Pet: Bori":{ - "name": "Pet: Bori", - "image": "pet-bori.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Dusty":{ - "name": "Pet: Dusty", - "image": "pet-dusty.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Yangeng":{ - "name": "Pet: Yangeng", - "image": "pet-yangeng.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Freddie":{ - "name": "Pet: Freddie", - "image": "pet-freddie.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Jack":{ - "name": "Pet: Jack", - "image": "pet-jack.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Jason":{ - "name": "Pet: Jason", - "image": "pet-jason.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Jolmi":{ - "name": "Pet: Jolmi", - "image": "pet-jolmi.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Shushire Leopard":{ - "name": "Pet: Shushire Leopard", - "image": "pet-shushire-leopard.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Tofu":{ - "name": "Pet: Tofu", - "image": "pet-tofu.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Toto Demon Selection Chest":{ - "name": "Pet: Toto Demon Selection Chest", - "image": "pet-toto-demon-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Pirate Parrot Pet Selection Chest":{ - "name": "Pirate Parrot Pet Selection Chest", - "image": "pirate-parrot-pet-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Nutcracker Selection Chest":{ - "name": "Nutcracker Selection Chest", - "image": "nutcracker-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pet Chest", - "amount": 1 - }, - "Pet: Totoanmeow":{ - "name": "Pet: Totoanmeow", - "image": "pet-totoanmeow.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Totoange":{ - "name": "Pet: Totoange", - "image": "pet-totoange.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Alexei":{ - "name": "Pet: Alexei", - "image": "pet-alexei.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Cloaked Fox Pet Selection Chest":{ - "name": "Cloaked Fox Pet Selection Chest", - "image": "cloaked-fox-pet-selection-chest.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Yevgeny":{ - "name": "Pet: Yevgeny", - "image": "pet-yevgeny.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Ruslan":{ - "name": "Pet: Ruslan", - "image": "pet-ruslan.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Mikhail":{ - "name": "Pet: Mikhail", - "image": "pet-mikhail.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Cherry Cloak Shuki":{ - "name": "Pet: Cherry Cloak Shuki", - "image": "pet-cherry-cloak-shuki.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Grape Cloak Shuna":{ - "name": "Pet: Grape Cloak Shuna", - "image": "pet-grape-cloak-shuna.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, - "Pet: Icicle Cloak Shushu":{ - "name": "Pet: Icicle Cloak Shushu", - "image": "pet-icicle-cloak-shushu.webp", - "rarity": 3, - "category": "Pets", - "subcategory": "Pets", - "amount": 1 - }, -} \ No newline at end of file diff --git a/modules/market_data/sailing.py b/modules/market_data/sailing.py deleted file mode 100644 index 55166a1..0000000 --- a/modules/market_data/sailing.py +++ /dev/null @@ -1,42 +0,0 @@ -sailing = { - "Epic Ship Parts Material":{ - "name": "Epic Ship Parts Material", - "image": "epic-ship-parts-material.webp", - "rarity": 3, - "category": "Sailing", - "amount": 1, - "subcategory": None, - }, - "Rare Ship Parts Material":{ - "name": "Rare Ship Parts Material", - "image": "rare-ship-parts-material.webp", - "rarity": 2, - "category": "Sailing", - "amount": 1, - "subcategory": None, - }, - "Uncommon Ship Parts Material":{ - "name": "Uncommon Ship Parts Material", - "image": "uncommon-ship-parts-material.webp", - "rarity": 1, - "category": "Sailing", - "amount": 1, - "subcategory": None, - }, - "Normal Ship Parts Material":{ - "name": "Normal Ship Parts Material", - "image": "normal-ship-parts-material.webp", - "rarity": 0, - "category": "Sailing", - "amount": 1, - "subcategory": None, - }, - "Ship Skin: Jack-O'Lantern the ...":{ - "name": "Ship Skin: Jack-O'Lantern the Wanderer", - "image": "ship-skin-jack-o-lantern-the-wanderer.webp", - "rarity": 3, - "category": "Sailing", - "amount": 1, - "subcategory": None, - } -} \ No newline at end of file diff --git a/modules/market_data/trader.py b/modules/market_data/trader.py deleted file mode 100644 index ceeb798..0000000 --- a/modules/market_data/trader.py +++ /dev/null @@ -1,274 +0,0 @@ -trader = { - 'Fresh Mushroom': { - 'name': 'Fresh Mushroom', - 'amount': 10, - 'image': 'fresh-mushroom.webp', - 'category': 'Trader', - 'subcategory': 'Foraging Rewards', - 'rarity': 1 - }, - 'Shy Wild Flower': { - 'name': 'Shy Wild Flower', - 'amount': 10, - 'image': 'shy-wild-flower.webp', - 'category': 'Trader', - 'subcategory': 'Foraging Rewards', - 'rarity': 1 - }, - 'Exquisite Mushroom': { - 'name': 'Exquisite Mushroom', - 'amount': 10, - 'image': 'exquisite-mushroom.webp', - 'category': 'Trader', - 'subcategory': 'Foraging Rewards', - 'rarity': 2 - }, - 'Bright Wild Flower': { - 'name': 'Bright Wild Flower', - 'amount': 10, - 'image': 'bright-wild-flower.webp', - 'category': 'Trader', - 'subcategory': 'Foraging Rewards', - 'rarity': 2 - }, - 'Crude Mushroom': { - 'name': 'Crude Mushroom', - 'amount': 100, - 'image': 'crude-mushroom.webp', - 'category': 'Trader', - 'subcategory': 'Foraging Rewards', - 'rarity': 0 - }, - 'Wild Flower': { - 'name': 'Wild Flower', - 'amount': 100, - 'image': 'wild-flower.webp', - 'category': 'Trader', - 'subcategory': 'Foraging Rewards', - 'rarity': 0 - }, - 'Tender Timber': { - 'name': 'Tender Timber', - 'amount': 10, - 'image': 'tender-timber.webp', - 'category': 'Trader', - 'subcategory': 'Logging Loot', - 'rarity': 1 - }, - 'Sturdy Timber': { - 'name': 'Sturdy Timber', - 'amount': 10, - 'image': 'sturdy-timber.webp', - 'category': 'Trader', - 'subcategory': 'Logging Loot', - 'rarity': 2 - }, - 'Timber': { - 'name': 'Timber', - 'amount': 100, - 'image': 'timber.webp', - 'category': 'Trader', - 'subcategory': 'Logging Loot', - 'rarity': 0 - }, - 'Heavy Iron Ore': { - 'name': 'Heavy Iron Ore', - 'amount': 10, - 'image': 'heavy-iron-ore.webp', - 'category': 'Trader', - 'subcategory': 'Mining Loot', - 'rarity': 1 - }, - 'Strong Iron Ore': { - 'name': 'Strong Iron Ore', - 'amount': 10, - 'image': 'strong-iron-ore.webp', - 'category': 'Trader', - 'subcategory': 'Mining Loot', - 'rarity': 2 - }, - 'Iron Ore': { - 'name': 'Iron Ore', - 'amount': 100, - 'image': 'iron-ore.webp', - 'category': 'Trader', - 'subcategory': 'Mining Loot', - 'rarity': 0 - }, - 'Treated Meat': { - 'name': 'Treated Meat', - 'amount': 10, - 'image': 'treated-meat.webp', - 'category': 'Trader', - 'subcategory': 'Hunting Loot', - 'rarity': 1 - }, - 'Tough Leather': { - 'name': 'Tough Leather', - 'amount': 10, - 'image': 'tough-leather.webp', - 'category': 'Trader', - 'subcategory': 'Hunting Loot', - 'rarity': 1 - }, - 'Caldarr Thick Raw Meat': { - 'name': 'Caldarr Thick Raw Meat', - 'amount': 10, - 'image': 'caldarr-thick-raw-meat.webp', - 'category': 'Trader', - 'subcategory': 'Hunting Loot', - 'rarity': 2 - }, - 'Oreha Thick Meat': { - 'name': 'Oreha Thick Meat', - 'amount': 10, - 'image': 'oreha-thick-meat.webp', - 'category': 'Trader', - 'subcategory': 'Hunting Loot', - 'rarity': 2 - }, - 'Thick Raw Meat': { - 'name': 'Thick Raw Meat', - 'amount': 100, - 'image': 'thick-raw-meat.webp', - 'category': 'Trader', - 'subcategory': 'Hunting Loot', - 'rarity': 0 - }, - 'Crystallized Hunting Bauble': { - 'name': 'Crystallized Hunting Bauble', - 'amount': 10, - 'image': 'crystallized-hunting-bauble.webp', - 'category': 'Trader', - 'subcategory': 'Hunting Loot', - 'rarity': 3 - }, - 'Natural Pearl': { - 'name': 'Natural Pearl', - 'amount': 10, - 'image': 'natural-pearl.webp', - 'category': 'Trader', - 'subcategory': 'Fishing Loot', - 'rarity': 1 - }, - 'Redflesh Fish': { - 'name': 'Redflesh Fish', - 'amount': 10, - 'image': 'redflesh-fish.webp', - 'category': 'Trader', - 'subcategory': 'Fishing Loot', - 'rarity': 1 - }, - 'Caldarr Solar Carp': { - 'name': 'Caldarr Solar Carp', - 'amount': 10, - 'image': 'caldarr-solar-carp.webp', - 'category': 'Trader', - 'subcategory': 'Fishing Loot', - 'rarity': 2 - }, - 'Oreha Solar Carp': { - 'name': 'Oreha Solar Carp', - 'amount': 10, - 'image': 'oreha-solar-carp.webp', - 'category': 'Trader', - 'subcategory': 'Fishing Loot', - 'rarity': 2 - }, - 'Fish': { - 'name': 'Fish', - 'amount': 100, - 'image': 'fish.webp', - 'category': 'Trader', - 'subcategory': 'Fishing Loot', - 'rarity': 0 - }, - 'Crystallized Fishing Bauble': { - 'name': 'Crystallized Fishing Bauble', - 'amount': 10, - 'image': 'crystallized-fishing-bauble.webp', - 'category': 'Trader', - 'subcategory': 'Fishing Loot', - 'rarity': 3 - }, - 'Oreha Relic': { - 'name': 'Oreha Relic', - 'amount': 10, - 'image': 'oreha-relic.webp', - 'category': 'Trader', - 'subcategory': 'Excavating Loot', - 'rarity': 2 - }, - 'Caldarr Relic': { - 'name': 'Caldarr Relic', - 'amount': 10, - 'image': 'caldarr-relic.webp', - 'category': 'Trader', - 'subcategory': 'Excavating Loot', - 'rarity': 2 - }, - 'Rare Relic': { - 'name': 'Rare Relic', - 'amount': 10, - 'image': 'rare-relic.webp', - 'category': 'Trader', - 'subcategory': 'Excavating Loot', - 'rarity': 1 - }, - 'Crystallized Excavating Bauble': { - 'name': 'Crystallized Excavating Bauble', - 'amount': 10, - 'image': 'crystallized-excavating-bauble.webp', - 'category': 'Trader', - 'subcategory': 'Excavating Loot', - 'rarity': 3 - }, - 'Ancient Relic': { - 'name': 'Ancient Relic', - 'amount': 100, - 'image': 'ancient-relic.webp', - 'category': 'Trader', - 'subcategory': 'Excavating Loot', - 'rarity': 0 - }, - 'Apprentice Craft Kit': { - 'name': 'Apprentice Craft Kit', - 'amount': 1, - 'image': 'apprentice-craft-kit.webp', - 'category': 'Trader', - 'subcategory': 'Other', - 'rarity': 2 - }, - 'Adept Craft Kit': { - 'name': 'Adept Craft Kit', - 'amount': 1, - 'image': 'adept-craft-kit.webp', - 'category': 'Trader', - 'subcategory': 'Other', - 'rarity': 3 - }, - 'Tool Crafting Part': { - 'name': 'Tool Crafting Part', - 'amount': 1, - 'image': 'tool-crafting-part.webp', - 'category': 'Trader', - 'subcategory': 'Other', - 'rarity': 1 - }, - 'Expert Craft Kit': { - 'name': 'Expert Craft Kit', - 'amount': 1, - 'image': 'expert-craft-kit.webp', - 'category': 'Trader', - 'subcategory': 'Other', - 'rarity': 4 - }, - 'Master Craft Kit': { - 'name': 'Master Craft Kit', - 'amount': 1, - 'image': 'master-craft-kit.webp', - 'category': 'Trader', - 'subcategory': 'Other', - 'rarity': 5 - }, -} diff --git a/modules/process.py b/modules/process.py index 82900da..afedebb 100644 --- a/modules/process.py +++ b/modules/process.py @@ -25,7 +25,7 @@ def process_item(market_line: MarketLine) -> dict: 'image': item['image'] if 'image' in item else image, 'category': item['category'], 'subcategory': item['subcategory'], - 'rarity': item['rarity'] if 'rarity' in item else market_line.rarity, + 'rarity': item['rarity'] if ('rarity' in item and item['rarity'] is not None) else market_line.rarity, 'avgPrice': market_line.avg_price, 'recentPrice': market_line.recent_price, 'lowPrice': market_line.lowest_price, diff --git a/modules/scan.py b/modules/scan.py index 824ea24..1cde62d 100644 --- a/modules/scan.py +++ b/modules/scan.py @@ -226,6 +226,8 @@ def process_market_table(self) -> typing.List[MarketLine]: # Consolidate results self.result = [line_future.result() for line_future in line_futures if line_future.result()] + for res in self.result: + AppLogger().debug(res) def process_crystal_table(self): rect_start = Point( diff --git a/modules/sound.py b/modules/sound.py index 6f19fb9..354f19d 100644 --- a/modules/sound.py +++ b/modules/sound.py @@ -1,15 +1,11 @@ import os import sys import threading -import wave from time import sleep import simpleaudio as sa -import simpleaudio.functionchecks as fc from threading import Thread from pycaw.pycaw import AudioUtilities -from PySide6.QtCore import QObject - from modules.common.singleton import Singleton from modules.config import Config from modules.logging import AppLogger diff --git a/requirements.txt b/requirements.txt index d5505f7..8f44816 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,4 +11,5 @@ pycaw nuitka zstandard ordered-set -sentry-sdk \ No newline at end of file +sentry-sdk +raven \ No newline at end of file