Repository: ArchipelagoMW/Archipelago
Pull request #4706: LADX: Add more specific "item icon guessing" support for some games
Author: login: ironminer888
Labels: name: is: enhancement
description: Issues requesting new features or pull requests implementing new features.
name: waiting-on: author
description: Issue/PR is waiting for feedback or changes from its author.
Created: 2025-03-07T02:54:10Z | Merged: 2025-03-17T15:50:57Z

## What is this fixing or adding?
Added more specific "item icon guessing" support for some games, including:
- DKC3: Petallus Pongus and Banana Birds are now HIBISCUS and ROOSTER graphics
- Pokemon: Old Amber, Coin Case, Passes, Tickets, consumable drinks/heals, Itemfinder
- Mario and Luigi Superstar Saga: Most items
- Doom 1993 / Doom 2: Keycards, medpaks, ammo pickups, chainsaw
- Ocarina of Time: Tunics, Wallet, dungeon rewards, magic
- Inscryption: Some major items, currency
- Minecraft: Some progressive items, archery, emeralds, brewing, spyglass
- Super Mario 64: Castle Keys are now NIGHTMARE_KEY with the horns, they look a lot closer to SM64's keys now
- V6: Trinkets are now PIECE_OF_POWER
- Hat in Time: Time Pieces, Pons
- KH1/KH2: Goal items, Equipment, magic, weapons
- SA2B: Rings, Grapes (Chao food item), Pick Nails
These fixes are mostly fluff, but the consistency for graphics between games is nice.

## How was this tested?
This branch has not changed anything re: generating or playing, only how item icons are decided during generation. No errors were created by Python when I tried to run the changed file, so there should be no errors in formatting either.


Diff:
diff --git a/worlds/ladx/ItemIconGuessing.py b/worlds/ladx/ItemIconGuessing.py
index e3d2ad7b8295..907c466e8185 100644
--- a/worlds/ladx/ItemIconGuessing.py
+++ b/worlds/ladx/ItemIconGuessing.py
@@ -107,6 +107,7 @@
     'JUMP': 'FEATHER',
     'PLUME': 'FEATHER',
     'WING': 'FEATHER',
+    "QUILL": "FEATHER",
 
     # SHOVEL
     'DIG': 'SHOVEL',
@@ -343,6 +344,8 @@
     # TRADING_ITEM_LETTER
     'CARD': 'TRADING_ITEM_LETTER',
     'MESSAGE': 'TRADING_ITEM_LETTER',
+    "TICKET": 'TRADING_ITEM_LETTER',
+    "PASS": 'TRADING_ITEM_LETTER',
 
     # TRADING_ITEM_BROOM
     'SWEEP': 'TRADING_ITEM_BROOM',
@@ -365,6 +368,8 @@
     'MIRROR': 'TRADING_ITEM_MAGNIFYING_GLASS',
     'SCOPE': 'TRADING_ITEM_MAGNIFYING_GLASS',
     'XRAY': 'TRADING_ITEM_MAGNIFYING_GLASS',
+    "DETECTOR": 'TRADING_ITEM_MAGNIFYING_GLASS',
+    "ITEMFINDER": 'TRADING_ITEM_MAGNIFYING_GLASS',
 
     # PIECE_OF_POWER
     'TRIANGLE': 'PIECE_OF_POWER',
@@ -378,6 +383,7 @@
     'BOSS KEY': 'NIGHTMARE_KEY',
     'HEART PIECE': 'HEART_PIECE',
     'PIECE OF HEART': 'HEART_PIECE',
+    "ROCK SMASH": 'BOMB', 
 }
 
 # All following will only be used to match items for the specific game.
@@ -404,6 +410,16 @@
 
     'Ocarina of Time': {
         'COJIRO': 'ROOSTER',
+        "Goron Tunic": "RED_TUNIC",
+        "Zora Tunic": "BLUE_TUNIC",
+        "Wallet": "MAGIC_POWDER",
+        "Medallion": "PIECE_OF_POWER",
+        "Kokiri Emerald": "RUPEES_500",
+        "Goron Ruby": "RUPEES_500",
+        "Zora Sapphire": "RUPEES_500",
+        "Dins Fire": "MAGIC_ROD", # Fire shield
+        "Nayrus Love": "MAGIC_ROD", # Protective barrier
+        "Farores Wind": "MAGIC_ROD", # Create/use warp point in dungeons
     },
 
     'SMZ3': {
@@ -417,10 +433,14 @@
 
     'Sonic Adventure 2 Battle': {
         'CHAOS EMERALD': 'PIECE_OF_POWER',
+        "Rings": "RUPEES_20", # This should only affect filler Rings currency, not Flame Ring upgrade
+        "Grapes": "TRADING_ITEM_PINEAPPLE",
+        "Pick Nails": "SHOVEL", # Digging upgrade
     },
 
     'Super Mario 64': {
         'POWER STAR': 'PIECE_OF_POWER',
+        "Key": "NIGHTMARE_KEY" # Affect 2nd Floor / Basement / Progressive keys
     },
 
     'Super Mario World': {
@@ -528,4 +548,336 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+
+        # Drinks always get converted to MEDICINE
+        "Soda Pop": "MEDICINE",
+        "Fresh Water": "MEDICINE",
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+
+        # Drinks always get converted to MEDICINE
+        
+        "Soda Pop": "MEDICINE",
+        "Fresh Water": "MEDICINE",
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Drinks --> medicine
+
+        # Syrup bottles
+        "Syrup": "MEDICINE",
+
+        # Coffee blends
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+        "Skull key": "NIGHTMARE_KEY",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+        "Skull key": "NIGHTMARE_KEY",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": "TRADING_ITEM_MAGNIFYING_GLASS", # Needed to see hidden drawings / messages
+        "Monocle": "TRADING_ITEM_MAGNIFYING_GLASS", # Ditto
+        "Pile Of Meat": "TRADING_ITEM_DOG_FOOD",
+        "Angler Hook": "TRADING_ITEM_FISHING_HOOK", # Good fish.
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Accessories as RIBBON
+        "Star Charm": "TRADING_ITEM_RIBBON",
+        "Ring": "TRADING_ITEM_RIBBON",
+        "Earring": "TRADING_ITEM_RIBBON",
+        "Shadow Archive": "TRADING_ITEM_RIBBON",
+        "Shadow Archive+": "TRADING_ITEM_RIBBON",
+        "Full Bloom": "TRADING_ITEM_RIBBON",
+        "Full Bloom+": "TRADING_ITEM_RIBBON",
+
+        # Armor as BLUE_TUNIC
+       "Bandanna": "BLUE_TUNIC",
+       "Belt": "BLUE_TUNIC",
+       "Band": "BLUE_TUNIC",
+       "Bangle": "BLUE_TUNIC",
+       "Armlet": "BLUE_TUNIC",
+       "Trinket": "BLUE_TUNIC",
+       "Charm": "BLUE_TUNIC",
+       "Anklet": "BLUE_TUNIC",
+       "Chain": "BLUE_TUNIC",
+       "Acrisius": "BLUE_TUNIC",
+       "Ribbon": "BLUE_TUNIC",
+
+        # Magic
+        "Element": "MAGIC_ROD",
+
+        # Other
+        "Munny Pouch": "MAGIC_POWDER",
+        "Ether": "MEDICINE",
+        "Elixir": "MEDICINE",
+        "Megalixir": "MEDICINE",
+    },
+
+    "Kingdom Hearts": {
+        # Goal/collectible items
+        "Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Dalmatian puppies
+        "Puppy": "BOWWOW",
+        "Puppies": "BOWWOW",
+        
+        # Sora Keyblades
+        "Jungle King": "SWORD",
+        "Three Wishes": "SWORD",
+        "Fairy Harp": "SWORD",
+        "Pumpkinhead": "SWORD",
+        "Crabclaw": "SWORD",
+        "Divine Rose": "SWORD",
+        "Spellbinder": "SWORD",
+        "Olympia": "SWORD",
+        "Lionheart": "SWORD",
+        "Metal Chocobo": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Lady Luck": "SWORD",
+        "Wishing Star": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Diamond Dust": "SWORD",
+        "One-Winged Angel": "SWORD",
+
+        # Donald Staves
+        "Morning Star": "MAGIC_ROD",
+        "Shooting Star": "MAGIC_ROD",
+        "Warhammer": "MAGIC_ROD",
+        "Silver Mallet": "MAGIC_ROD",
+        "Grand Mallet": "MAGIC_ROD",
+        "Lord Fortune": "MAGIC_ROD",
+        "Violetta": "MAGIC_ROD",
+        "Save the Queen": "MAGIC_ROD",
+        "Wizard's Relic": "MAGIC_ROD",
+        "Meteor Strike": "MAGIC_ROD",
+        "Fantasista": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Smasher": "SHIELD",
+        "Gigas Fist": "SHIELD",
+        "Save the King": "SHIELD",
+        "Defender": "SHIELD",
+        "Seven Elements": "SHIELD",
+
+        # Magic
+        "Progressive Fire": "MAGIC_ROD",
+        "Progressive Blizzard": "MAGIC_ROD",
+        "Progressive Thunder": "MAGIC_ROD",
+        "Progressive Cure": "MAGIC_ROD",
+        "Progressive Gravity": "MAGIC_ROD",
+        "Progressive Stop": "MAGIC_ROD",
+        "Progressive Aero": "MAGIC_ROD",
+
+        # Accessories / armor (Let's go with BLUE_TUNIC for these, these items are closer to RPG armor anyways)
+        "Chain": "BLUE_TUNIC",
+        "Ring": "BLUE_TUNIC",
+        "Band": "BLUE_TUNIC",
+        "Three Stars": "BLUE_TUNIC",
+        "Stud": "BLUE_TUNIC",
+        "Earring": "BLUE_TUNIC",
+        "Bangle": "BLUE_TUNIC",
+        "Armlet": "BLUE_TUNIC",
+        "Moogle Badge": "BLUE_TUNIC",
+        "Cosmic Arts": "BLUE_TUNIC",
+        "Heartguard": "BLUE_TUNIC",
+        "Crystal Crown": "BLUE_TUNIC",
+        "Ribbon": "BLUE_TUNIC",
+        "Brave Warrior": "BLUE_TUNIC",
+        "Ifrit's Horn": "BLUE_TUNIC",
+        "White Fang": "BLUE_TUNIC",
+        "Ray of Light": "BLUE_TUNIC",
+        "Circlet": "BLUE_TUNIC",
+        "Raven's Claw": "BLUE_TUNIC",
+        "Omega Arts": "BLUE_TUNIC",
+        "Royal Crown": "BLUE_TUNIC",
+        "Prime Cap": "BLUE_TUNIC",
+        "Belt": "BLUE_TUNIC",
+        "EXP Bracelet": "BLUE_TUNIC",
+        "EXP Necklace": "BLUE_TUNIC",
+
+        # Other
+        "Glide": "FEATHER",
+        "Ether": "MEDICINE",
+        "Elixir": "MEDICINE",
+        "Megalixir": "MEDICINE",
+        
+    }
 }
diff --git a/worlds/ladx/__init__.py b/worlds/ladx/__init__.py
index 4c22693c8fe9..ff017c144b2a 100644
--- a/worlds/ladx/__init__.py
+++ b/worlds/ladx/__init__.py
@@ -444,7 +444,7 @@ def guess_icon_for_other_world(self, foreign_item):
             phrases.update(ItemIconGuessing.GAME_SPECIFIC_PHRASES[foreign_game])
 
         for phrase, icon in phrases.items():
-            if phrase in uppered:
+            if phrase.upper() in uppered:
                 return icon
         # pattern for breaking down camelCase, also separates out digits
         pattern = re.compile(r"(?<=[a-z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])|(?<=[a-zA-Z])(?=\d)")


Reviews:
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:02:02Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:02:42Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:05:21Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:05:33Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:06:44Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:07:37Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:07:43Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:08:16Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:08:27Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:09:37Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:10:32Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:10:58Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:11:25Z
user: login: threeandthreee
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T16:16:21Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:21:19Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:22:16Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:23:55Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:27:15Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:29:02Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:31:50Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:42:20Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:50:39Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:51:14Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:52:16Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T17:55:51Z
user: login: threeandthreee
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T18:27:17Z
user: login: threeandthreee
body: Gave it a little test, seems good
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-03-07T20:32:12Z
user: login: ScipioWright
body: Just adding more names to the list, so no real issue here
state: APPROVED
author_association: COLLABORATOR
submitted_at: 2025-03-08T03:49:32Z
user: login: threeandthreee
body: Actually, I'm pretty sure it's going to fail to match these because they aren't uppercase. You can either make them uppercase or in `__init__.py` change the phrase matching (line 445) to this:
```python
for phrase, icon in phrases.items():
    if phrase.upper() in uppered:
        return icon
```
state: CHANGES_REQUESTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-08T05:15:32Z
user: login: Exempt-Medic
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-08T14:05:02Z
user: login: Exempt-Medic
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-08T14:05:38Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-08T17:20:35Z
user: login: threeandthreee
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-03-09T01:06:59Z
user: login: palex00
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-09T02:36:26Z
user: login: ironminer888
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-11T17:22:27Z
user: login: Exempt-Medic
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-14T15:33:39Z
user: login: Exempt-Medic
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-03-17T15:50:19Z

Review comments:
diff_hunk: @@ -404,6 +404,16 @@
 
     'Ocarina of Time': {
         'COJIRO': 'ROOSTER',
+        "Goron Tunic": "RED_TUNIC",
+        "Zora Tunic": "BLUE_TUNIC",
+        "Wallet": "MAGIC_POWDER",
+        "Medallion": "PIECE_OF_POWER",
+        "Kokiri Emerald": "RUPEES_500",
+        "Goron Ruby": "RUPEES_500",
+        "Zora Sapphire": "RUPEES_500",
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Could you explain these?
created_at: 2025-03-07T16:02:02Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Doesn't a *Coin* case make more sense as rupees? Why Magic Powder? 
created_at: 2025-03-07T16:02:41Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: This is not a valid item in RB. It's called "Safari Pass".
created_at: 2025-03-07T16:05:21Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: This is not a valid item in RB. It's called "S.S. Ticket"
created_at: 2025-03-07T16:05:33Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: 1. Add Lemonade so it's a properly added item
2. Make this a definitive statement "Liquid Drinks get converted to Medicine"
created_at: 2025-03-07T16:06:44Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: This item doesn't exist in Pokémon Emerald.
created_at: 2025-03-07T16:07:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Why not?
created_at: 2025-03-07T16:07:42Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Feel like this should just be an overall item-guess for all games.
created_at: 2025-03-07T16:08:16Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: See above
created_at: 2025-03-07T16:08:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Why ' and not " here?
created_at: 2025-03-07T16:09:36Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
+        "Quill": 'FEATHER',
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Armor
+        "Bandana": "POWER_BRACELET",
+        "Belt": "POWER_BRACELET",
+        "Anklet": "POWER_BRACELET",
+        "Trinket": "POWER_BRACELET",
+        "Charm": "POWER_BRACELET",
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Why is Armor a Power Bracelet and not Armor as in Blue Tunic / Red Tunic?
created_at: 2025-03-07T16:10:32Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
+        "Quill": 'FEATHER',
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Armor
+        "Bandana": "POWER_BRACELET",
+        "Belt": "POWER_BRACELET",
+        "Anklet": "POWER_BRACELET",
+        "Trinket": "POWER_BRACELET",
+        "Charm": "POWER_BRACELET",
+
+        # Magic
+        "Element": "MAGIC_ROD",
+
+        # Other
+        "Munny Pouch": "MAGIC_POWDER",
+        "Ether": "MEDICINE",
+        "Elixir": "MEDICINE",
+        "Megalixir": "MEDICINE",
+    },
+
+    "Kingdom Hearts 1": {
+        # Goal/collectible items
+        "Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Dalmatian puppies
+        "Puppy": "BOWWOW",
+        "Puppies": "BOWWOW",
+        
+        # Sora Keyblades
+        "Jungle King": "SWORD",
+        "Three Wishes": "SWORD",
+        "Fairy Harp": "SWORD",
+        "Pumpkinhead": "SWORD",
+        "Crabclaw": "SWORD",
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Claw as Hookshot?
created_at: 2025-03-07T16:10:58Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
+        "Quill": 'FEATHER',
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Armor
+        "Bandana": "POWER_BRACELET",
+        "Belt": "POWER_BRACELET",
+        "Anklet": "POWER_BRACELET",
+        "Trinket": "POWER_BRACELET",
+        "Charm": "POWER_BRACELET",
+
+        # Magic
+        "Element": "MAGIC_ROD",
+
+        # Other
+        "Munny Pouch": "MAGIC_POWDER",
+        "Ether": "MEDICINE",
+        "Elixir": "MEDICINE",
+        "Megalixir": "MEDICINE",
+    },
+
+    "Kingdom Hearts 1": {
+        # Goal/collectible items
+        "Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Dalmatian puppies
+        "Puppy": "BOWWOW",
+        "Puppies": "BOWWOW",
+        
+        # Sora Keyblades
+        "Jungle King": "SWORD",
+        "Three Wishes": "SWORD",
+        "Fairy Harp": "SWORD",
+        "Pumpkinhead": "SWORD",
+        "Crabclaw": "SWORD",
+        "Divine Rose": "SWORD",
+        "Spellbinder": "SWORD",
+        "Olympia": "SWORD",
+        "Lionheart": "SWORD",
+        "Metal Chocobo": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Lady Luck": "SWORD",
+        "Wishing Star": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Diamond Dust": "SWORD",
+        "One-Winged Angel": "SWORD",
+
+        # Donald Staves
+        "Morning Star": "MAGIC_ROD",
+        "Shooting Star": "MAGIC_ROD",
+        "Warhammer": "MAGIC_ROD",
+        "Silver Mallet": "MAGIC_ROD",
+        "Grand Mallet": "MAGIC_ROD",
+        "Lord Fortune": "MAGIC_ROD",
+        "Violetta": "MAGIC_ROD",
+        "Save the Queen": "MAGIC_ROD",
+        "Wizard's Relic": "MAGIC_ROD",
+        "Meteor Strike": "MAGIC_ROD",
+        "Fantasista": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Smasher": "SHIELD",
+        "Gigas Fist": "SHIELD",
+        "Save the King": "SHIELD",
+        "Defender": "SHIELD",
+        "Seven Elements": "SHIELD",
+
+        # Magic
+        
+        "Progressive Fire": "MAGIC_ROD",
+        "Progressive Blizzard": "MAGIC_ROD",
+        "Progressive Thunder": "MAGIC_ROD",
+        "Progressive Cure": "MAGIC_ROD",
+        "Progressive Gravity": "MAGIC_ROD",
+        "Progressive Stop": "MAGIC_ROD",
+        "Progressive Aero": "MAGIC_ROD",
+
+        # Other
+        "Glide": "FEATHER",
+        "Ether": "MEDICINE",
+        "Elixir": "MEDICINE",
+        "Megalixir": "MEDICINE",
+        
+    }
+
+    # TODO: Link to the Past: just double check that everything matches
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: Unneccessary for this PR
created_at: 2025-03-07T16:11:25Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
path: worlds/ladx/ItemIconGuessing.py
user: login: threeandthreee
body: The partial matching works for these mappings, doesn't have to hit a complete item name
created_at: 2025-03-07T16:16:21Z
author_association: CONTRIBUTOR
diff_hunk: @@ -404,6 +404,16 @@
 
     'Ocarina of Time': {
         'COJIRO': 'ROOSTER',
+        "Goron Tunic": "RED_TUNIC",
+        "Zora Tunic": "BLUE_TUNIC",
+        "Wallet": "MAGIC_POWDER",
+        "Medallion": "PIECE_OF_POWER",
+        "Kokiri Emerald": "RUPEES_500",
+        "Goron Ruby": "RUPEES_500",
+        "Zora Sapphire": "RUPEES_500",
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: - The Wallets in OoT look like a bag in their item model, that's mostly my reason. I guess I tended to use more literal interpretations of the sprites.
- The dungeon Medallions are big, progression-y dungeon rewards, so I felt it made sense to have them be rendered as PIECE_OF_POWER. 
- The RUPEES_500 sprite is also assigned to "GEM" and "JEWEL" items. The Spiritual Stones are also decently big progression items that open the Temple of Time in base OoT. Really it could go either way as RUPEES_500 or PIECE_OF_POWER; I have no qualms if you want to change it.
created_at: 2025-03-07T17:21:18Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: I'm using the MAGIC_POWDER as a generic "sack" sprite here. The Coin Case is for casino chips in the Celadon Game Corner, not full of immediately useful money.
created_at: 2025-03-07T17:22:16Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: "LEMONADE" is already in the generic name checks, at line 153.
created_at: 2025-03-07T17:23:55Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: Good catch. I've moved those items into the generic detections in a new commit.
created_at: 2025-03-07T17:27:15Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: Good catch, I've changed those strings from single-quotes to double-quotes for consistency.
created_at: 2025-03-07T17:29:02Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
+        "Quill": 'FEATHER',
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Armor
+        "Bandana": "POWER_BRACELET",
+        "Belt": "POWER_BRACELET",
+        "Anklet": "POWER_BRACELET",
+        "Trinket": "POWER_BRACELET",
+        "Charm": "POWER_BRACELET",
+
+        # Magic
+        "Element": "MAGIC_ROD",
+
+        # Other
+        "Munny Pouch": "MAGIC_POWDER",
+        "Ether": "MEDICINE",
+        "Elixir": "MEDICINE",
+        "Megalixir": "MEDICINE",
+    },
+
+    "Kingdom Hearts 1": {
+        # Goal/collectible items
+        "Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Dalmatian puppies
+        "Puppy": "BOWWOW",
+        "Puppies": "BOWWOW",
+        
+        # Sora Keyblades
+        "Jungle King": "SWORD",
+        "Three Wishes": "SWORD",
+        "Fairy Harp": "SWORD",
+        "Pumpkinhead": "SWORD",
+        "Crabclaw": "SWORD",
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: ["Crabclaw" is a Keyblade](https://www.khwiki.com/Crabclaw) you obtain in Atlantica, it's more a sword than a claw in my opinion.
created_at: 2025-03-07T17:31:50Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
+        "Quill": 'FEATHER',
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Armor
+        "Bandana": "POWER_BRACELET",
+        "Belt": "POWER_BRACELET",
+        "Anklet": "POWER_BRACELET",
+        "Trinket": "POWER_BRACELET",
+        "Charm": "POWER_BRACELET",
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: In my defense, "Armor" in Kingdom Hearts 2 is a bit of a misnomer here. [Some of the names used for Armor in KH2](https://www.khwiki.com/Armor#Kingdom_Hearts_II_3) already hit the synonyms used for POWER_BRACELET (like BAND and BANGLE), and the armor items are more "accessories" than sets of armor.

Plus, ["accessories"](https://www.khwiki.com/Accessory) and ["armor"](https://www.khwiki.com/Armor) are two separate classes of item in KH2. This change is more of a consistency thing to make sure all KH2 armor gets rendered as POWER_BRACELET.

Perhaps it would be more elegant to have all the "armor" render as BLUE_TUNIC and the "accessories" render as POWER_BRACELET?


created_at: 2025-03-07T17:42:20Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: I assumed it would still be in the item pool cause they're both Pokemon games, my bad! I've removed that check from Emerald.
created_at: 2025-03-07T17:50:39Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: Partial matching should still catch this, as @threeandthreee mentioned above.
created_at: 2025-03-07T17:51:14Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: It's the same story here as Red/Blue: I feel like the "case" part is more important than the "coin" part.
created_at: 2025-03-07T17:52:16Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
+        "Quill": 'FEATHER',
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Armor
+        "Bandana": "POWER_BRACELET",
+        "Belt": "POWER_BRACELET",
+        "Anklet": "POWER_BRACELET",
+        "Trinket": "POWER_BRACELET",
+        "Charm": "POWER_BRACELET",
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: I just remembered I set the badges in Superstar Saga as TRADE_ITEM_RIBBON, maybe that would work better for "accessories"? And the "armor" could be rendered as BLUE_TUNIC?
created_at: 2025-03-07T17:55:51Z
author_association: CONTRIBUTOR
diff_hunk: @@ -404,6 +404,16 @@
 
     'Ocarina of Time': {
         'COJIRO': 'ROOSTER',
+        "Goron Tunic": "RED_TUNIC",
+        "Zora Tunic": "BLUE_TUNIC",
+        "Wallet": "MAGIC_POWDER",
+        "Medallion": "PIECE_OF_POWER",
+        "Kokiri Emerald": "RUPEES_500",
+        "Goron Ruby": "RUPEES_500",
+        "Zora Sapphire": "RUPEES_500",
path: worlds/ladx/ItemIconGuessing.py
user: login: threeandthreee
body: I support targeting look over function, that was my mindset for other mappings.
created_at: 2025-03-07T18:27:17Z
author_association: CONTRIBUTOR
diff_hunk: @@ -528,4 +542,305 @@
         '2500 Tokens': 'RUPEES_500',
         '5000 Tokens': 'RUPEES_500',
     },
+
+    "Donkey Kong Country 3": {
+        "Flupperius Petallus Pongus": "TRADING_ITEM_HIBISCUS", # It's a flower in the game
+        "Banana Bird": "ROOSTER", # Made sure this is a BIRD, not a BANANA
+    },
+
+    "Pokemon Red and Blue": {
+
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Bike Voucher": "TRADING_ITEM_LETTER",
+        "Oak's Parcel": "TRADING_ITEM_LETTER",
+        "Pass": "TRADING_ITEM_LETTER", # Safari Pass
+        "Ticket": "TRADING_ITEM_LETTER", # SS Ticket
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+    },
+
+    "Pokemon Emerald": {
+        # Key Items
+
+        "Old Amber": "STONE_BEAK", # Aerodactyl's fossil should still be a fossil
+        "Coin Case": "MAGIC_POWDER", # This shouldn't spawn as RUPEES
+        "Pass": "TRADING_ITEM_LETTER", # Only hits Contest Pass
+        "Ticket": "TRADING_ITEM_LETTER", # Aurora/Eon/Mystic/SS ticket
+
+        "Rock Smash": "SHOVEL", # No pickax but this will do
+        "Detector": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Itemfinder": 'TRADING_ITEM_MAGNIFYING_GLASS',
+
+        # Drinks Fixes
+        
+        "Soda Pop": "MEDICINE", # Lemonade gets corrected to MEDICINE sprite, should it follow for all liquids?
+        "Fresh Water": "MEDICINE", # Ditto
+
+        # Consumables
+        "Elixir": "MEDICINE",
+        "Ether": "MEDICINE",
+        "Antidote": "MEDICINE",
+        "Awakening": "MEDICINE",
+        "Burn Heal": "MEDICINE",
+        "Ice Heal": "MEDICINE",
+        "Paralyze Heal": "MEDICINE",
+        "Full Heal": "MEDICINE",
+        "Full Restore": "MEDICINE",
+        "Nanab Berry": "TRADING_ITEM_BANANAS", # Special exception for Nanab Berry, which look like bananas
+        "Berry": "TRADING_ITEM_PINEAPPLE",
+        "Mail": "TRADING_ITEM_LETTER", # Snail mail, not chain mail
+    },
+
+    "Mario & Luigi Superstar Saga": {
+
+        # Key Items
+        "Peach's Extra Dress": "RED_TUNIC",
+        "Peasley's Rose": "TRADING_ITEM_HIBISCUS",
+        "Beanstar": "PIECE_OF_POWER", # Hits both Fake Beanstar and pieces of the real Beanstar, hopefully
+        "Beanstone": "RUPEES_500", # They're gemstones
+        "Firebrand": "POWER_BRACELET", # Magic power that affects Mario/Luigi's hands, either this or MAGIC_ROD would be okay
+        "Thunderhand": "POWER_BRACELET", # Ditto
+
+        # 1-UP Super fix
+        "1-UP Super": "TOADSTOOL",
+
+        # Syrup bottles --> MEDICINE
+        "Syrup": "MEDICINE",
+
+        # Coffee blends --> MEDICINE
+        "Hoolumbian": "MEDICINE",
+        "Chuckoccino": "MEDICINE",
+        "Teeheespresso": "MEDICINE",
+        "Blend": "MEDICINE", # for all coffee blends
+
+        # Secret Scrolls --> MESSAGE
+        "Secret Scroll": "TRADING_ITEM_LETTER",
+
+        # Goblets --> MEDICINE
+        "Goblet": "MEDICINE",
+
+        # Pearl Beans --> Fruit
+        "Pearl Bean": 'TRADING_ITEM_PINEAPPLE',
+
+        # Bros. Armor --> Blue Tunic
+        "Pants": "BLUE_TUNIC",
+        "Jeans": "BLUE_TUNIC",
+        "Trousers": "BLUE_TUNIC",
+        "Slacks": "BLUE_TUNIC",
+        "Casual Coral": "BLUE_TUNIC",
+        "Shroom Bells": "BLUE_TUNIC",
+
+        # Badges --> Ribbon
+        "Badge": "TRADING_ITEM_RIBBON",
+        "Soulful Bros.": "TRADING_ITEM_RIBBON",
+        "Bros. Rock": "TRADING_ITEM_RIBBON",
+
+        # Misc. Beans --> Acorns
+        "Hoo Bean": "GUARDIAN_ACORN", # Beans and nuts are similar enough, right?
+        "Chuckle Bean": "GUARDIAN_ACORN",
+        "Hee Bean": "GUARDIAN_ACORN",
+        "Woo Bean": "GUARDIAN_ACORN", 
+    },
+
+    "DOOM 1993": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "DOOM II": {
+        "Keycard": "KEY",
+        "Computer area map": "MAP",
+        "Box of": "SINGLE_ARROW", # bullets, rockets, or shotgun shells
+        "Energy cell pack": "SINGLE_ARROW",
+        "Chainsaw": "SWORD",
+        "Medikit": "MEDICINE",
+    },
+
+    "Inscryption": {
+        "Extra Candle": "HEART_CONTAINER", # Candles act as extra health
+        "Magnificus Eye": 'TRADING_ITEM_MAGNIFYING_GLASS', # Needed to see hidden drawings / messages
+        "Monocle": 'TRADING_ITEM_MAGNIFYING_GLASS', # Ditto
+        "Pile Of Meat": 'TRADING_ITEM_DOG_FOOD',
+        'Angler Hook': 'TRADING_ITEM_FISHING_HOOK', # Good fish.
+        "Quill": 'FEATHER',
+        "Currency": "RUPEES_20",
+    },
+
+    "Minecraft": {
+        "Progressive Weapons": "SWORD",
+        "Progressive Tools": "SHOVEL",
+        "Archery": "BOW",
+        "Emerald": "RUPEES_20",
+        "Brewing": "MEDICINE",
+        "Spyglass": 'TRADING_ITEM_MAGNIFYING_GLASS',
+        "Porkchop": "TRADING_ITEM_DOG_FOOD"
+    },
+    "VVVVVV": {
+        "Trinket": "PIECE_OF_POWER",
+    },
+
+    "A Hat in Time": {
+        "Time Piece": "PIECE_OF_POWER",
+        "Metro Ticket": "TRADING_ITEM_LETTER",
+        "Snatcher's Contract": "TRADING_ITEM_LETTER",
+        "Pon": "RUPEES_20",
+    },
+
+    "Kingdom Hearts 2": {
+        # Goal items / Collectibles
+        "Proof of": "PIECE_OF_POWER",
+        "Lucky Emblem": "PIECE_OF_POWER",
+        "Secret Ansem's Report": "TRADING_ITEM_LETTER",
+
+        # Sora Keyblades
+        "Bond of Flame": "SWORD",
+        "Circle of Life": "SWORD",
+        "Decisive Pumpkin": "SWORD",
+        "Fatal Crest": "SWORD",
+        "Fenrir": "SWORD",
+        "Follow the Wind": "SWORD",
+        "Guardian Soul": "SWORD",
+        "Gull Wing": "SWORD",
+        "Hero's Crest": "SWORD",
+        "Hidden Dragon": "SWORD",
+        "Monochrome": "SWORD",
+        "Mysterious Abyss": "SWORD",
+        "Oathkeeper": "SWORD",
+        "Oblivion": "SWORD",
+        "Photon Debugger": "SWORD",
+        "Pureblood": "SWORD",
+        "Rumbling Rose": "SWORD",
+        "Sleeping Lion": "SWORD",
+        "Star Seeker": "SWORD",
+        "Sweet Memories": "SWORD",
+        "Two Become One": "SWORD",
+        "Ultima Weapon": "SWORD",
+        "Winner's Proof": "SWORD",
+        "Wishing Lamp": "SWORD",
+
+        # Donald Staves
+        "Centurion+": "MAGIC_ROD",
+        "Nobody Lance": "MAGIC_ROD",
+        "Precious Mushroom": "MAGIC_ROD",
+        "Precious Mushroom+": "MAGIC_ROD",
+        "Premium Mushroom": "MAGIC_ROD",
+        "Rising Dragon": "MAGIC_ROD",
+        "Save The Queen+": "MAGIC_ROD",
+        "Shaman's Relic": "MAGIC_ROD",
+        "Victory Bell": "MAGIC_ROD",
+
+        # Goofy Shields
+        "Akashic Record": "SHIELD",
+        "Frozen Pride+": "SHIELD",
+        "Majestic Mushroom": "SHIELD",
+        "Majestic Mushroom+": "SHIELD",
+        "Nobody Guard": "SHIELD",
+        "Ogre Shield": "SHIELD",
+        "Save The King+": "SHIELD",
+        "Ultimate Mushroom": "SHIELD",
+
+        # Armor
+        "Bandana": "POWER_BRACELET",
+        "Belt": "POWER_BRACELET",
+        "Anklet": "POWER_BRACELET",
+        "Trinket": "POWER_BRACELET",
+        "Charm": "POWER_BRACELET",
path: worlds/ladx/ItemIconGuessing.py
user: login: Exempt-Medic
body: Sounds like a good change to me
created_at: 2025-03-08T14:05:02Z
author_association: CONTRIBUTOR
diff_hunk: @@ -377,7 +381,8 @@
     'BIG KEY': 'NIGHTMARE_KEY',
     'BOSS KEY': 'NIGHTMARE_KEY',
     'HEART PIECE': 'HEART_PIECE',
-    'PIECE OF HEART': 'HEART_PIECE',
+    'PIECE OF HEART': 'HEART_PIECE', 
+    "ROCK SMASH": 'SHOVEL',
path: worlds/ladx/ItemIconGuessing.py
user: login: Exempt-Medic
body: Thoughts on this (Rock Smash) being a Power Bracelet instead? Or maybe Bombs?
created_at: 2025-03-08T14:05:37Z
author_association: CONTRIBUTOR
diff_hunk: @@ -377,7 +381,8 @@
     'BIG KEY': 'NIGHTMARE_KEY',
     'BOSS KEY': 'NIGHTMARE_KEY',
     'HEART PIECE': 'HEART_PIECE',
-    'PIECE OF HEART': 'HEART_PIECE',
+    'PIECE OF HEART': 'HEART_PIECE', 
+    "ROCK SMASH": 'SHOVEL',
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: Rock Smash is mostly a Pokemon thing, and the Power Bracelet sprite is already being used for HM04 Strength via generic matching, so I think it would be best to have one unique item sprite per field move. Changing it to Bombs is a decent idea, though...
created_at: 2025-03-08T17:20:35Z
author_association: CONTRIBUTOR
diff_hunk: @@ -377,7 +381,8 @@
     'BIG KEY': 'NIGHTMARE_KEY',
     'BOSS KEY': 'NIGHTMARE_KEY',
     'HEART PIECE': 'HEART_PIECE',
-    'PIECE OF HEART': 'HEART_PIECE',
+    'PIECE OF HEART': 'HEART_PIECE', 
+    "ROCK SMASH": 'SHOVEL',
path: worlds/ladx/ItemIconGuessing.py
user: login: palex00
body: I am on team "Bombs". That's also what I suggested in the Custom Hyper Item Link
created_at: 2025-03-09T02:36:26Z
author_association: CONTRIBUTOR
diff_hunk: @@ -377,7 +381,8 @@
     'BIG KEY': 'NIGHTMARE_KEY',
     'BOSS KEY': 'NIGHTMARE_KEY',
     'HEART PIECE': 'HEART_PIECE',
-    'PIECE OF HEART': 'HEART_PIECE',
+    'PIECE OF HEART': 'HEART_PIECE', 
+    "ROCK SMASH": 'SHOVEL',
path: worlds/ladx/ItemIconGuessing.py
user: login: ironminer888
body: Fair enough, I've changed Rock Smash to be Bombs. It kinda makes sense in terms of game-feel anyways, they both get rid of rocks in the way.
created_at: 2025-03-11T17:22:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -377,7 +382,8 @@
     'BIG KEY': 'NIGHTMARE_KEY',
     'BOSS KEY': 'NIGHTMARE_KEY',
     'HEART PIECE': 'HEART_PIECE',
-    'PIECE OF HEART': 'HEART_PIECE',
+    'PIECE OF HEART': 'HEART_PIECE', 
path: worlds/ladx/ItemIconGuessing.py
user: login: Exempt-Medic
body: There's an extra space here
```suggestion
    'PIECE OF HEART': 'HEART_PIECE',
```
created_at: 2025-03-14T15:33:39Z
author_association: CONTRIBUTOR

PR comments:
user: login: PoryGone
created_at: 2025-03-07T03:00:18Z
body: > DKC3: Petallus Pongus and Banana Birds are now HIBISCUS and ROOSTER graphics

It doesn't really hurt to be here I guess, but fwiw, the flower item in DKC3 is never actually existent as an item, and very likely never will be.
author_association: COLLABORATOR
user: login: ironminer888
created_at: 2025-03-07T03:13:15Z
body: > > DKC3: Petallus Pongus...
> 
> It doesn't really hurt to be here I guess, but fwiw, the flower item in DKC3 is never actually existent as an item, and very likely never will be.

I saw the name in the DKC3 Items.py file, then I looked it up on MarioWiki and saw it was a flower. I just checked the actual Rules.py file for the DKC3 world now. It seems like the trade sequence got dummied out as check locations some time ago... I'm sorry, I didn't know!
author_association: CONTRIBUTOR
user: login: ScipioWright
created_at: 2025-03-07T03:17:04Z
body: @threeandthreee 
author_association: COLLABORATOR
user: login: KScl
created_at: 2025-03-07T09:04:14Z
body: > * Doom 1993 / Doom 2: Keycards, medpaks, ammo pickups, chainsaw

I would recommend adding "skull key" -> NIGHTMARE_KEY (e.g. `Unholy Cathedral (E3M5) - Blue skull key`) for these games while you're at it, for a hint of extra flavor.
author_association: CONTRIBUTOR
user: login: threeandthreee
created_at: 2025-03-07T14:41:28Z
body: Looks good, I'll give it a quick test later
author_association: CONTRIBUTOR
user: login: Exempt-Medic
created_at: 2025-03-15T11:30:09Z
body: Am I reading this right that these will grab the first item that contains the name? In other words, the order of the items matters and, for example, FNaFW's `Nightmare` item will match on `Nightmare Freddy` and not `Nightmare`. A similar problem would exist for FNaFW Fredbear / Nightmare Fredbear, Pokemon Emerald Berry / Nanab Berry, KH2 Band / Bandana, and KH2 Charm / Star Charm
author_association: CONTRIBUTOR
user: login: threeandthreee
created_at: 2025-03-17T05:42:35Z
body: Order does matter but its looking for the entire phrase within the item name, not the item name within the phrase. In FNaFW this means that a lot of the mappings are unnecessary, as the `Freddy` mapping will hit `Toy Freddy` and `Phantom Freddy` and `Nightmare Freddy`. The FNaFW mappings won't cause any problems as they're all mapped to the same thing though, and they also aren't from this PR.

This PR does do `Nanab Berry` and `Berry` in Pokemon Emerald, but it is done correctly. `Nanab Berry` is the more specific exception and will be checked first.

I want to fix up this file for easier contribution in the future, I'll clean up the FNaFW stuff when I do.
author_association: CONTRIBUTOR
user: login: Exempt-Medic
created_at: 2025-03-17T10:56:40Z
body: > Order does matter but its looking for the entire phrase within the item name, not the item name within the phrase. In FNaFW this means that a lot of the mappings are unnecessary, as the `Freddy` mapping will hit `Toy Freddy` and `Phantom Freddy` and `Nightmare Freddy`. The FNaFW mappings won't cause any problems as they're all mapped to the same thing though, and they also aren't from this PR.
> 
> This PR does do `Nanab Berry` and `Berry` in Pokemon Emerald, but it is done correctly. `Nanab Berry` is the more specific exception and will be checked first.
> 
> I want to fix up this file for easier contribution in the future, I'll clean up the FNaFW stuff when I do.

Perhaps I should explain again. I believe Nanab Berry will match Banana. But Berry, which is fully contained within the match "Nanab Berry", will *also* match Banana despite the fact that it is supposed to match Pineapple. Similarly, KH2's Star Charm will be a Ribbon. But Charm will *also* be a Ribbon and not a Blue Tunic.
author_association: CONTRIBUTOR
user: login: threeandthreee
created_at: 2025-03-17T14:03:39Z
body: The phrases aren't broken down, the complete phrase must be inside the item name for it to match.

Anyways, here's a simple script to test matches:

```python
import sys
from worlds.ladx import LinksAwakeningWorld as ladx

item = sys.argv[1]
game = sys.argv[2] if len(sys.argv)>2 else ""

class WorldStub:
    name_cache = {}
    class multiworld:
        game = [game]

class ItemStub:
    name = item
    player = 0

guess = ladx.guess_icon_for_other_world(WorldStub, ItemStub)

print(guess)
```

```
(venv) alex@elitedesk:~/Repos/Archipelago$ python ladx_icon_guess.py sword
SWORD
(venv) alex@elitedesk:~/Repos/Archipelago$ python ladx_icon_guess.py "Nanab Berry" "Pokemon Emerald"
TRADING_ITEM_BANANAS
(venv) alex@elitedesk:~/Repos/Archipelago$ python ladx_icon_guess.py "Berry" "Pokemon Emerald"
TRADING_ITEM_PINEAPPLE
(venv) alex@elitedesk:~/Repos/Archipelago$ python ladx_icon_guess.py "Charm" "Kingdom Hearts 2"
BLUE_TUNIC
(venv) alex@elitedesk:~/Repos/Archipelago$ python ladx_icon_guess.py "Star Charm" "Kingdom Hearts 2"
TRADING_ITEM_RIBBON
```
author_association: CONTRIBUTOR