Add log folder for logging translations for testing

This commit is contained in:
DazedAnon 2024-10-10 18:24:05 -05:00
parent 71b83a34e4
commit 9420506dc6
5 changed files with 102 additions and 735 deletions

0
log/.gitkeep Normal file
View file

View file

@ -276,7 +276,7 @@ def processImagesDir(directory_path, imageList):
imageList[0].append( imageList[0].append(
line line
) # Using strip() to remove any extra newlines or spaces ) # Using strip() to remove any extra newlines or spaces
imageList[1].append([100, 22]) imageList[1].append([150, 22])
except FileNotFoundError: except FileNotFoundError:
print(f"The file at {file_path} was not found.") print(f"The file at {file_path} was not found.")
except IOError: except IOError:

View file

@ -82,7 +82,7 @@ CODE122 = False
CODE355655 = False CODE355655 = False
CODE357 = False CODE357 = False
CODE657 = False CODE657 = False
CODE356 = True CODE356 = False
CODE320 = False CODE320 = False
CODE324 = False CODE324 = False
CODE111 = False CODE111 = False
@ -266,7 +266,7 @@ def parseMap(data, filename):
# This translates ID of events. (May break the game) # This translates ID of events. (May break the game)
if "<namePop:" in event["note"]: if "<namePop:" in event["note"]:
response = translateNoteOmitSpace( response = translateNoteOmitSpace(
event, r"<namePop:(.*?)\s?>.*" event, r"<namePop:(.*?)\s?\d?>.*"
) )
totalTokens[0] += response[0] totalTokens[0] += response[0]
totalTokens[1] += response[1] totalTokens[1] += response[1]
@ -587,7 +587,7 @@ def searchNames(data, pbar, context):
if context in ["Armors", "Weapons", "Items"]: if context in ["Armors", "Weapons", "Items"]:
if len(nameList) < BATCHSIZE: if len(nameList) < BATCHSIZE:
nameList.append(data[i]["name"]) nameList.append(data[i]["name"])
if "description" in data[i]: if "description" in data[i] and data[i]["description"] != "":
descriptionList.append( descriptionList.append(
data[i]["description"].replace("\n", " ") data[i]["description"].replace("\n", " ")
) )
@ -602,19 +602,19 @@ def searchNames(data, pbar, context):
totalTokens[0] += tokensResponse[0] totalTokens[0] += tokensResponse[0]
totalTokens[1] += tokensResponse[1] totalTokens[1] += tokensResponse[1]
if "<SG説明:" in data[i]["note"]: if "<SG説明:" in data[i]["note"]:
tokensResponse = translateNote(data[i], r"<SG説明:(.*?)>") tokensResponse = translateNote(data[i], r"<SG説明:\n?(.*?)>")
totalTokens[0] += tokensResponse[0] totalTokens[0] += tokensResponse[0]
totalTokens[1] += tokensResponse[1] totalTokens[1] += tokensResponse[1]
if "<SG説明2:" in data[i]["note"]: if "<SG説明2:" in data[i]["note"]:
tokensResponse = translateNote(data[i], r"<SG説明2:(.*?)>") tokensResponse = translateNote(data[i], r"<SG説明2:\n?(.*?)>")
totalTokens[0] += tokensResponse[0] totalTokens[0] += tokensResponse[0]
totalTokens[1] += tokensResponse[1] totalTokens[1] += tokensResponse[1]
if "<SG説明3:" in data[i]["note"]: if "<SG説明3:" in data[i]["note"]:
tokensResponse = translateNote(data[i], r"<SG説明3:(.*?)>") tokensResponse = translateNote(data[i], r"<SG説明3:\n?(.*?)>")
totalTokens[0] += tokensResponse[0] totalTokens[0] += tokensResponse[0]
totalTokens[1] += tokensResponse[1] totalTokens[1] += tokensResponse[1]
if "<SG説明4:" in data[i]["note"]: if "<SG説明4:" in data[i]["note"]:
tokensResponse = translateNote(data[i], r"<SG説明4:(.*?)>") tokensResponse = translateNote(data[i], r"<SG説明4:\n?(.*?)>")
totalTokens[0] += tokensResponse[0] totalTokens[0] += tokensResponse[0]
totalTokens[1] += tokensResponse[1] totalTokens[1] += tokensResponse[1]
if "<SGカテゴリ:" in data[i]["note"]: if "<SGカテゴリ:" in data[i]["note"]:
@ -784,11 +784,11 @@ def searchNames(data, pbar, context):
f'{data[j]['name']} ({translatedNameBatch[0]})\n' f'{data[j]['name']} ({translatedNameBatch[0]})\n'
) )
data[j]["name"] = translatedNameBatch[0] data[j]["name"] = translatedNameBatch[0]
if "description" in data[j]: translatedNameBatch.pop(0)
if "description" in data[j] and data[j]["description"] != "":
data[j]["description"] = textwrap.fill( data[j]["description"] = textwrap.fill(
translatedDescriptionBatch[0], LISTWIDTH translatedDescriptionBatch[0], LISTWIDTH
) )
translatedNameBatch.pop(0)
translatedDescriptionBatch.pop(0) translatedDescriptionBatch.pop(0)
# If Batch is empty. Move on. # If Batch is empty. Move on.
@ -2514,12 +2514,13 @@ def getSpeaker(speaker):
# Store Speaker # Store Speaker
if speaker not in str(NAMESLIST): if speaker not in str(NAMESLIST):
response = translateGPT( response = translateGPT(
speaker, f'Speaker: {speaker}',
"Reply with the " + LANGUAGE + " translation of the NPC name.", "Reply with the " + LANGUAGE + " translation of the NPC name.",
True, True,
) )
response[0] = response[0].title() response[0] = response[0].title()
response[0] = response[0].replace("'S", "'s") response[0] = response[0].replace("'S", "'s")
response[0] = response[0].replace("Speaker: ", "")
# Retry if name doesn't translate for some reason # Retry if name doesn't translate for some reason
if re.search(r"([a-zA-Z?])", response[0]) == None: if re.search(r"([a-zA-Z?])", response[0]) == None:
@ -2548,7 +2549,7 @@ def subVars(jaString):
# Formatting # Formatting
count = 0 count = 0
codeList = re.findall(r"[\\]+[\w]+\[[a-zA-Z0-9\\\[\]\_,\s-]+\]", jaString) codeList = re.findall(r"[\\]+[\w]+\[[a-zA-Z0-9\\\[\]\_,\s-]+?\]", jaString)
codeList = set(codeList) codeList = set(codeList)
if len(codeList) != 0: if len(codeList) != 0:
for var in codeList: for var in codeList:
@ -2678,6 +2679,8 @@ def elongateCharacters(text):
def extractTranslation(translatedTextList, is_list): def extractTranslation(translatedTextList, is_list):
try: try:
translatedTextList = re.sub(r'\\"+\"([^,\n}])', r'\\"\1', translatedTextList)
translatedTextList = re.sub(r'(?<![\\])"+', r'"', translatedTextList)
line_dict = json.loads(translatedTextList) line_dict = json.loads(translatedTextList)
# If it's a batch (i.e., list), extract with tags; otherwise, return the single item. # If it's a batch (i.e., list), extract with tags; otherwise, return the single item.
string_list = list(line_dict.values()) string_list = list(line_dict.values())
@ -2687,7 +2690,7 @@ def extractTranslation(translatedTextList, is_list):
return string_list[0] return string_list[0]
except Exception as e: except Exception as e:
print(f"extractTranslation Error: {e}") PBAR.write(f"extractTranslation Error: {e} on String {translatedTextList}")
return None return None
@ -2720,7 +2723,7 @@ def combineList(tlist, text):
@retry(exceptions=Exception, tries=5, delay=5) @retry(exceptions=Exception, tries=5, delay=5)
def translateGPT(text, history, fullPromptFlag): def translateGPT(text, history, fullPromptFlag):
global PBAR, MISMATCH, FILENAME global PBAR, MISMATCH, FILENAME
with open("log/translationHistory.txt", "a+", encoding="utf-8") as logFile:
mismatch = False mismatch = False
totalTokens = [0, 0] totalTokens = [0, 0]
if isinstance(text, list): if isinstance(text, list):
@ -2737,6 +2740,7 @@ def translateGPT(text, history, fullPromptFlag):
payload = json.dumps(payload, indent=4, ensure_ascii=False) payload = json.dumps(payload, indent=4, ensure_ascii=False)
varResponse = subVars(payload) varResponse = subVars(payload)
subbedT = varResponse[0] subbedT = varResponse[0]
logFile.write(f'Input:\n{subbedT}\n')
else: else:
varResponse = subVars(tItem) varResponse = subVars(tItem)
subbedT = varResponse[0] subbedT = varResponse[0]
@ -2784,6 +2788,7 @@ def translateGPT(text, history, fullPromptFlag):
extractedTranslations extractedTranslations
): ):
mismatch = True # Just here for breakpoint mismatch = True # Just here for breakpoint
logFile.write(f'Output:\n{translatedText}\n')
# Set if no mismatch # Set if no mismatch
if mismatch == False: if mismatch == False:

View file

@ -74,8 +74,8 @@ CODE122 = False
# Other # Other
CODE210 = False CODE210 = False
CODE300 = True CODE300 = False
CODE250 = False CODE250 = True
# Database # Database
NPCFLAG = False NPCFLAG = False
@ -676,8 +676,7 @@ def searchCodes(events, pbar, jobList, filename):
# Validate size # Validate size
if len(codeList[i]["stringArgs"]) > 2: if len(codeList[i]["stringArgs"]) > 2:
if ( if (
"" in codeList[i]["stringArgs"][1] codeList[i]["stringArgs"][2] != ""
and codeList[i]["stringArgs"][2] != ""
): ):
# Grab String # Grab String
jaString = codeList[i]["stringArgs"][2] jaString = codeList[i]["stringArgs"][2]
@ -964,7 +963,7 @@ def searchDB(events, pbar, jobList, filename):
scenarioList[2].pop(0) scenarioList[2].pop(0)
# Grab Items # Grab Items
if table["name"] == "音楽鑑賞" and ITEMFLAG == True: if table["name"] == "武器タイプ" and ITEMFLAG == True:
with open("translations.txt", "a", encoding="utf-8") as file: with open("translations.txt", "a", encoding="utf-8") as file:
for item in table["data"]: for item in table["data"]:
dataList = item["data"] dataList = item["data"]
@ -972,7 +971,7 @@ def searchDB(events, pbar, jobList, filename):
# Parse # # Parse #
for j in range(len(dataList)): for j in range(len(dataList)):
# Name # Name
if dataList[j].get("name") == "名称": if dataList[j].get("name") == "武器タイプ":
# Pass 1 (Grab Data) # Pass 1 (Grab Data)
if setData == False: if setData == False:
if dataList[j].get("value") != "": if dataList[j].get("value") != "":

637
vocab.txt
View file

@ -77,641 +77,4 @@ ME 音量 (ME Volume)
堕天使 (Fallen Angel) 堕天使 (Fallen Angel)
鬼 (Oni) 鬼 (Oni)
ローバー (Roper) ローバー (Roper)
#Equipment
Amakara Shoes 1 (Amakara Shoes 1)
Pot Lid (Pot Lid)
Light Shield (Light Shield)
Kiton Shield (Kiton Shield)
Shell Shield (Shell Shield)
Platinum Shield (Platinum Shield)
Magic Shield (Magic Shield)
Silver Tray (Silver Tray)
Leather Shield (Leather Shield)
Bronze Shield (Bronze Shield)
White Shield (White Shield)
Power Shield (Power Shield)
Water Mirror Shield (Water Mirror Shield)
Dark Shield (Dark Shield)
Spirit Shield (Spirit Shield)
Stinura Shield (Stinura Shield)
Reincarnation Shield (Reincarnation Shield)
Stray Steel Shield (Stray Steel Shield)
Shield of Ruin (Shield of Ruin)
Iron Shield (Iron Shield)
Steel Shield (Steel Shield)
Ice Shield (Ice Shield)
Flame Shield (Flame Shield)
Jewel Steel Shield (Jewel Steel Shield)
Dragon Shield (Dragon Shield)
Wind God Shield (Wind God Shield)
Ogre Shield (Ogre Shield)
Phantom Demon Shield (Phantom Demon Shield)
Goddess Shield (Goddess Shield)
Shahar's Mirror (Shahar's Mirror)
Ende's Shield (Ende's Shield)
Steel King Shield (Steel King Shield)
Sky Shield (Sky Shield)
Roto's Shield (Roto's Shield)
Light Shield (Light Shield)
Leather Armor (Leather Armor)
Chain Mail (Chain Mail)
Iron Breastplate (Iron Breastplate)
Steel Breastplate (Steel Breastplate)
Platinum Mail (Platinum Mail)
Shell Armor (Shell Armor)
Dragon Scale (Dragon Scale)
Silver Mail (Silver Mail)
Dancing Mail (Dancing Mail)
Magic Armor (Magic Armor)
Spirit Armor (Spirit Armor)
Mystic Armor (Mystic Armor)
Stenura Armor (Stenura Armor)
Ende's Armor (Ende's Armor)
Stray Steel Armor (Stray Steel Armor)
Victory Armor (Victory Armor)
Iron Armor (Iron Armor)
Steel Armor (Steel Armor)
Warrior's Armor (Warrior's Armor)
Dragon Mail (Dragon Mail)
Earth Armor (Earth Armor)
Jewel Steel Armor (Jewel Steel Armor)
Ice Armor (Ice Armor)
Flame Armor (Flame Armor)
Demon Armor (Demon Armor)
Mithril Armor (Mithril Armor)
Gigant Armor (Gigant Armor)
Phantom Demon Armor (Phantom Demon Armor)
Goddess Armor (Goddess Armor)
Devil Armor (Devil Armor)
Steel King Armor (Steel King Armor)
Cloth Garb (Cloth Garb)
Traveler's Clothes (Traveler's Clothes)
Noble's Clothes (Noble's Clothes)
Fur Coat (Fur Coat)
Evasion Clothes (Evasion Clothes)
Martial Arts Wear (Martial Arts Wear)
Cloak of Invisibility (Cloak of Invisibility)
Dragon's Gi (Dragon's Gi)
Dark Robe (Dark Robe)
Leather Mantle (Leather Mantle)
Crimson Robe (Crimson Robe)
Tranquil Robe (Tranquil Robe)
Magic Vestment (Magic Vestment)
Priest's Apron (Priest's Apron)
Sage's Robe (Sage's Robe)
Angel's Robe (Angel's Robe)
Mysterious Bolero (Mysterious Bolero)
Spirit's Garb (Spirit's Garb)
Mystic Robe (Mystic Robe)
Dragon Robe (Dragon Robe)
Leather Dress (Leather Dress)
Silk Robe (Silk Robe)
Magical Skirt (Magical Skirt)
Silk Bustier (Silk Bustier)
Water Robe (Water Robe)
Dress of Light (Dress of Light)
Princess Robe (Princess Robe)
Dancer's Outfit (Dancer's Outfit)
Bunny Suit (Bunny Suit)
Dangerous Swimsuit (Dangerous Swimsuit)
Angel's Leotard (Angel's Leotard)
Magic Bikini (Magic Bikini)
Mystic Bustier (Mystic Bustier)
Pure Garment (Pure Garment)
Sexy Underwear (Sexy Underwear)
Sky Armor (Sky Armor)
King's Mantle (King's Mantle)
Roto's Armor (Roto's Armor)
Leather Hat (Leather Hat)
Circlet (Circlet)
Fur Hood (Fur Hood)
Priest's Hat (Priest's Hat)
Hat of Knowledge (Hat of Knowledge)
Phantom Mask (Phantom Mask)
Magical Hat (Magical Hat)
Hannya Mask (Hannya Mask)
Hat of Happiness (Hat of Happiness)
Mysterious Hat (Mysterious Hat)
Echo Hat (Echo Hat)
Bunny Ears Band (Bunny Ears Band)
Silver Hair Ornament (Silver Hair Ornament)
Witch Hat (Witch Hat)
Golden Tiara (Golden Tiara)
Steel Headgear (Steel Headgear)
Platinum Helmet (Platinum Helmet)
Satan Helm (Satan Helm)
War King's Headband (War King's Headband)
Mithril Hood (Mithril Hood)
Stenura Helm (Stenura Helm)
Helmet of Misfortune (Helmet of Misfortune)
Stray Steel Helm (Stray Steel Helm)
Helmet of Compassion (Helmet of Compassion)
Chain Hood (Chain Hood)
Iron Helmet (Iron Helmet)
Iron Mask (Iron Mask)
Warrior's Helmet (Warrior's Helmet)
Bull Helm (Bull Helm)
Tamahagane Helmet (Tamahagane Helmet)
Great Helm (Great Helm)
Mithril Helm (Mithril Helm)
Phantom Demon Helmet (Phantom Demon Helmet)
Goddess Helmet (Goddess Helmet)
Ortega's Helmet (Ortega's Helmet)
Ende's Helmet (Ende's Helmet)
Steel King Helm (Steel King Helm)
Heavenly Helmet (Heavenly Helmet)
Crown of the Sun (Crown of the Sun)
Roto's Helmet (Roto's Helmet)
Dragon Amulet (Dragon Amulet)
Ring of Protection (Ring of Protection)
Ruby of Protection (Ruby of Protection)
Ruby of Power (Ruby of Power)
Tattoo of Rage (Tattoo of Rage)
Brave's Bracelet (Brave's Bracelet)
Swift Ring (Swift Ring)
Gale Bandana (Gale Bandana)
Starfall Bracelet (Starfall Bracelet)
Intelligent Glasses (Intelligent Glasses)
Knowledge Ring (Knowledge Ring)
Bracelet of Wisdom (Bracelet of Wisdom)
Earth Ring (Earth Ring)
Ring of Life (Ring of Life)
Fairy Bracelet (Fairy Bracelet)
Goddess Ring (Goddess Ring)
Lucky Charm (Lucky Charm)
Lucky Pendant (Lucky Pendant)
Talisman of Protection (Talisman of Protection)
Antidote Ring (Antidote Ring)
Awakening Ring (Awakening Ring)
Sound Overflow Ring (Sound Overflow Ring)
Ring of Reason (Ring of Reason)
Elf Charm (Elf Charm)
Healing Bracelet (Healing Bracelet)
Prayer Bracelet (Prayer Bracelet)
Orb of Silence (Orb of Silence)
Rabbit's Tail (Rabbit's Tail)
Silver Ring (Silver Ring)
Ring of Fire (Ring of Fire)
Ring of Water (Ring of Water)
Avan's Emblem (Avan's Emblem)
Ring of the Sun (Ring of the Sun)
Ring of the Moon (Ring of the Moon)
Artisan's Gloves (Artisan's Gloves)
Master's Gloves (Master's Gloves)
Divine Gloves (Divine Gloves)
Leather Shoes (Leather Shoes)
Thief's Boots (Thief's Boots)
Golden Shoes (Golden Shoes)
Swift Boots (Swift Boots)
Feather Shoes (Feather Shoes)
Magic Shoes (Magic Shoes)
Stealth Shoes (Stealth Shoes)
Nuraim Earrings (Nuraim Earrings)
Winged Brooch (Winged Brooch)
World Tree Bark (World Tree Bark)
Small Bug Cage (Small Bug Cage)
Scent Bag (Scent Bag)
Master's Lure (Master's Lure)
Suspicious Coin (Suspicious Coin)
Mysterious Mineral (Mysterious Mineral)
Spirit Bracelet (Spirit Bracelet)
Magic Unit (Magic Unit)
Dragon Horn Pendant (Dragon Horn Pendant)
Clairvoyant Glasses (Clairvoyant Glasses)
Lucky Hat (Lucky Hat)
Ascetic's Staff (Ascetic's Staff)
Artisan's Bracelet (Artisan's Bracelet)
Beast Tamer's Knowledge (Beast Tamer's Knowledge)
Kite Buckler (Kite Buckler)
Mithril Shield (Mithril Shield)
Dolphin Shield (Dolphin Shield)
Holy Knight's Shield (Holy Knight's Shield)
Warrior's Great Shield (Warrior's Great Shield)
Scale Mail (Scale Mail)
Holy Chain (Holy Chain)
Rune Scale (Rune Scale)
Master Chain (Master Chain)
Thick Armor (Thick Armor)
Heavy Armor (Heavy Armor)
Fur Poncho (Fur Poncho)
Noble Mantle (Noble Mantle)
Black Mantle (Black Mantle)
Magical Mantle (Magical Mantle)
Miracle Mantle (Miracle Mantle)
Saint's Robe (Saint's Robe)
Pointed Hat (Pointed Hat)
Wind Hat (Wind Hat)
Star Circlet (Star Circlet)
Dark Night Hat (Dark Night Hat)
Iron Headgear (Iron Headgear)
Silver Mask (Silver Mask)
Iron Headband (Iron Headband)
Intellect Helm (Intellect Helm)
Heavy Helm (Heavy Helm)
Dragon Ring (Dragon Ring)
Light Ring (Light Ring)
Dark Ring (Dark Ring)
Spirit Ring (Spirit Ring)
#Weapons
Weapon Dummy (Weapon Dummy)
Cypress Stick (Cypress Stick)
Copper Sword (Copper Sword)
Steel Sword (Steel Sword)
Platinum Sword (Platinum Sword)
Sword of Seduction (Sword of Seduction)
Tamahagane Sword (Tamahagane Sword)
Zombie Killer (Zombie Killer)
Flame Sword (Flame Sword)
Miracle Sword (Miracle Sword)
Stinura's Sword (Stinura's Sword)
Hagure Steel Sword (Hagure Steel Sword)
Kusanagi Sword (Kusanagi Sword)
Gale Rapier (Gale Rapier)
Sword of Slumber (Sword of Slumber)
Magic Swordsman's Rapier (Magic Swordsman's Rapier)
Sword of Banishment (Sword of Banishment)
Blizzard Sword (Blizzard Sword)
Sword of Light (Sword of Light)
Dragon Killer (Dragon Killer)
Hell Saber (Hell Saber)
Stardust Sword (Stardust Sword)
Falcon Sword (Falcon Sword)
Thunder God's Sword (Thunder God's Sword)
Falcon Sword Kai (Falcon Sword Kai)
Sword of Destruction (Sword of Destruction)
Replica of Roto's Sword (Replica of Roto's Sword)
Hakabusa Sword (Hakabusa Sword)
Steel King Sword (Steel King Sword)
Galaxy Sword (Galaxy Sword)
Fruit Knife (Fruit Knife)
Bronze Knife (Bronze Knife)
Holy Knife (Holy Knife)
Poison Needle (Poison Needle)
Poison Moth Knife (Poison Moth Knife)
Assassin Dagger (Assassin Dagger)
Ice Blade (Ice Blade)
Night Papillon (Night Papillon)
Sword Breaker (Sword Breaker)
Butterfly Dagger (Butterfly Dagger)
Little Devil Knife (Little Devil Knife)
Eagle Dagger (Eagle Dagger)
Mithril Knife (Mithril Knife)
Gnome (Gnome)
Undine (Undine)
Sylph (Sylph)
Salamander (Salamander)
Orichalcum Dagger (Orichalcum Dagger)
Stinura Knife (Stinura Knife)
Soul Breaker (Soul Breaker)
Stray Stinura Knife (Stray Stinura Knife)
Thousand Dagger (Thousand Dagger)
Stinura King Knife (Stinura King Knife)
Helheim (Helheim)
Bamboo Rod (Bamboo Rod)
Iron Spear (Iron Spear)
Steel Spear (Steel Spear)
Flame Spear (Flame Spear)
Dust Spear (Dust Spear)
Jewel Steel Spear (Jewel Steel Spear)
Holy Lance (Holy Lance)
Thunder Spear (Thunder Spear)
Partisan (Partisan)
Trident (Trident)
Mithril Spear (Mithril Spear)
Fire God's Spear (Fire God's Spear)
Water God's Spear (Water God's Spear)
Thunder God's Spear (Thunder God's Spear)
Divine Spear (Divine Spear)
Gracos' Spear (Gracos' Spear)
Orichalcum Spear (Orichalcum Spear)
Stinura Spear (Stinura Spear)
Demon Spear (Demon Spear)
Stray Stinura Spear (Stray Stinura Spear)
Hero's Spear (Hero's Spear)
Oni God's Magic Spear (Oni God's Magic Spear)
Stinura King Spear (Stinura King Spear)
Stone Axe (Stone Axe)
Iron Axe (Iron Axe)
Steel Axe (Steel Axe)
Battle Axe (Battle Axe)
Moon Axe (Moon Axe)
Full Moon Axe (Full Moon Axe)
Tamahagane Axe (Tamahagane Axe)
Master's Axe (Master's Axe)
Inferno Axe (Inferno Axe)
Blizzard Axe (Blizzard Axe)
King Axe (King Axe)
Kaiser Axe (Kaiser Axe)
Mithril Axe (Mithril Axe)
Vacuum Axe (Vacuum Axe)
Explosive Sound Axe (Explosive Sound Axe)
Demon God's Axe (Demon God's Axe)
Orichalcum Axe (Orichalcum Axe)
Stinura Axe (Stinura Axe)
Crushing Great Cleaver (Crushing Great Cleaver)
Stray Stinura Axe (Stray Stinura Axe)
Conqueror's Axe (Conqueror's Axe)
Gigant Axe (Gigant Axe)
Stinura King Axe (Stinura King Axe)
Club (Club)
Iron Hammer (Iron Hammer)
Great Mallet (Great Mallet)
War Hammer (War Hammer)
Giant Wrench (Giant Wrench)
Oni's Iron Club (Oni's Iron Club)
Tamahagane Hammer (Tamahagane Hammer)
Iron Ball of Fury (Iron Ball of Fury)
Holy Mallet (Holy Mallet)
Giant's Hammer (Giant's Hammer)
Demon God's Hammer (Demon God's Hammer)
Rune Hammer (Rune Hammer)
Mithril Hammer (Mithril Hammer)
Earth Mallet (Earth Mallet)
Megaton Hammer (Megaton Hammer)
Gaia's Iron Hammer (Gaia's Iron Hammer)
Orichalcum Hammer (Orichalcum Hammer)
Stinura Hammer (Stinura Hammer)
Atlas's Club (Atlas's Club)
Giga Crusher (Giga Crusher)
Stray Steel Hammer (Stray Steel Hammer)
Earth Crusher (Earth Crusher)
Iron Ball of Destruction (Iron Ball of Destruction)
Steel King's Hammer (Steel King's Hammer)
Stone Claw (Stone Claw)
Iron Claw (Iron Claw)
Steel Claw (Steel Claw)
Flame Claw (Flame Claw)
Ice Claw (Ice Claw)
Golden Claw (Golden Claw)
Jewel Steel Claw (Jewel Steel Claw)
Thunder God's Claw (Thunder God's Claw)
Dragon Claw (Dragon Claw)
Devil's Claw (Devil's Claw)
Scorching Claw (Scorching Claw)
Beast Claw (Beast Claw)
Beast King's Claw (Beast King's Claw)
Orichalcum Claw (Orichalcum Claw)
Stinura Claw (Stinura Claw)
Dragon King's Claw (Dragon King's Claw)
Stray Steel Claw (Stray Steel Claw)
Steel King Claw (Steel King Claw)
Martial God's Claw (Martial God's Claw)
Dragon God's Claw (Dragon God's Claw)
Shiny Nail (Shiny Nail)
Little Devil Nail (Little Devil Nail)
Diamond Nail (Diamond Nail)
Mithril Nail (Mithril Nail)
Satan Nail (Satan Nail)
Orichalcum Nail (Orichalcum Nail)
Thorn Whip (Thorn Whip)
Chain Cross (Chain Cross)
Steel Whip (Steel Whip)
Fairy Whip (Fairy Whip)
Whip of Temptation (Whip of Temptation)
Dragon Tail (Dragon Tail)
Jewel Steel Whip (Jewel Steel Whip)
Devil's Whip (Devil's Whip)
Magic Whip (Magic Whip)
Arch Devil's Whip (Arch Devil's Whip)
Buster Whip (Buster Whip)
Mithril Whip (Mithril Whip)
Flame Whip (Flame Whip)
Thunder Whip (Thunder Whip)
Orichalcum Whip (Orichalcum Whip)
Holy Whip (Holy Whip)
Gringham Whip (Gringham Whip)
Demon Lord's Whip (Demon Lord's Whip)
Boomerang (Boomerang)
Blade Boomerang (Blade Boomerang)
High Boomerang (High Boomerang)
Flame Boomerang (Flame Boomerang)
Blizzard Boomerang (Blizzard Boomerang)
Wind Boomerang (Wind Boomerang)
Crescent Edge (Crescent Edge)
Victory Edge (Victory Edge)
Flame Cutter (Flame Cutter)
Eagle Feather (Eagle Feather)
Mithril Edge (Mithril Edge)
Pentagram (Pentagram)
Black Edge (Black Edge)
Hurricane Edge (Hurricane Edge)
Hexagram (Hexagram)
Orichalcum Edge (Orichalcum Edge)
Stinura Edge (Stinura Edge)
Meteor Edge (Meteor Edge)
Stray Steel Edge (Stray Steel Edge)
Steel King Edge (Steel King Edge)
Hypernova (Hypernova)
Feather Fan (Feather Fan)
Iron Fan (Iron Fan)
Battle Fan (Battle Fan)
Flame Fan (Flame Fan)
Wind Fan (Wind Fan)
Star Fan (Star Fan)
Turtle Fan (Turtle Fan)
Jewel Steel Fan (Jewel Steel Fan)
Genbu Fan (Genbu Fan)
Suzaku Fan (Suzaku Fan)
Byakko Fan (Byakko Fan)
Seiryu Fan (Seiryu Fan)
Sun Fan (Sun Fan)
Moon Fan (Moon Fan)
Gale Fan (Gale Fan)
Tornado Fan (Tornado Fan)
Kirin Fan (Kirin Fan)
Hihiirokane (Hihiirokane)
Fuurinkazan (Fuurinkazan)
Killer Fan (Killer Fan)
Short Bow (Short Bow)
Crossbow (Crossbow)
Sniping Bow (Sniping Bow)
Temptation Bow (Temptation Bow)
Cyclone Bow (Cyclone Bow)
Hunter's Bow (Hunter's Bow)
Big Crossbow (Big Crossbow)
Ice Bow (Ice Bow)
Storm Bow (Storm Bow)
Phantom Bow (Phantom Bow)
Twilight Bow (Twilight Bow)
Odin Bow (Odin Bow)
Chiron's Bow (Chiron's Bow)
Thunder God's Bow (Thunder God's Bow)
Aerial Arrow (Aerial Arrow)
Blazing Bow (Blazing Bow)
Stenura's Bow (Stenura's Bow)
Stray Steel Bow (Stray Steel Bow)
Fallen Angel's Bow (Fallen Angel's Bow)
Angel's Bow (Angel's Bow)
Steel King Bow (Steel King Bow)
Oak Staff (Oak Staff)
Iron Staff (Iron Staff)
Rune Staff (Rune Staff)
Staff of Reason (Staff of Reason)
Mithril Rod (Mithril Rod)
Orichalcum Rod (Orichalcum Rod)
Mage's Staff (Mage's Staff)
Fairy Staff (Fairy Staff)
Judgment Staff (Judgment Staff)
Stross Staff (Stross Staff)
Thunder Staff (Thunder Staff)
Seal Staff (Seal Staff)
Magma Staff (Magma Staff)
Iceberg Staff (Iceberg Staff)
Blessed Staff (Blessed Staff)
Light Staff (Light Staff)
Sage's Staff (Sage's Staff)
Magical Booster (Magical Booster)
Chaos Staff (Chaos Staff)
Great Sage's Staff (Great Sage's Staff)
Darkness Staff (Darkness Staff)
Radiant Staff (Radiant Staff)
Light Magic Staff (Light Magic Staff)
Vacuum Staff (Vacuum Staff)
Flame Staff (Flame Staff)
Ice Staff (Ice Staff)
Sword of Roto (Sword of Roto)
Sword of the Sky (Sword of the Sky)
Sword of Rubiss (Sword of Rubiss)
Armor Demon Sword (Armor Demon Sword)
Dai's Sword (Dai's Sword)
Armor Demon Spear (Armor Demon Spear)
Killer Earrings (Killer Earrings)
Magic Armor Fist (Magic Armor Fist)
Queen's Whip (Queen's Whip)
Goddess's Whip (Goddess's Whip)
Dragon Staff (Dragon Staff)
Black Rod (Black Rod)
Archangel's Staff (Archangel's Staff)
Templar Sword (Templar Sword)
Saw Blade Katana (Saw Blade Katana)
Ripple Sword (Ripple Sword)
Fairy Sword (Fairy Sword)
Orichalcum Sword (Orichalcum Sword)
Great Flame Sword (Great Flame Sword)
Sword of Light and Shadow (Sword of Light and Shadow)
Snake Sword (Snake Sword)
Lightning Sword (Lightning Sword)
Bastard Sword (Bastard Sword)
Water Dragon Sword (Water Dragon Sword)
Thief's Knife (Thief's Knife)
Cold Wind Dagger (Cold Wind Dagger)
Gladius (Gladius)
Long Spear (Long Spear)
Battle Fork (Battle Fork)
Holy Knight's Lance (Holy Knight's Lance)
Bandit's Axe (Bandit's Axe)
Blizzard Axe (Blizzard Axe)
Destroyer (Destroyer)
Heavy Axe (Heavy Axe)
Battle Stomper (Battle Stomper)
Magic Mallet (Magic Mallet)
Bone Crusher (Bone Crusher)
Cat Claw (Cat Claw)
Talisman Claw (Talisman Claw)
Falcon Claw (Falcon Claw)
Rose Whip (Rose Whip)
Enchanting Ribbon (Enchanting Ribbon)
Sidewinder (Sidewinder)
Magic Chakram (Magic Chakram)
White Wood Fan (White Wood Fan)
Bird Fan (Bird Fan)
Rainbow Fan (Rainbow Fan)
Magic Fan (Magic Fan)
Ancient Wood Bow (Ancient Wood Bow)
Basilisk Bow (Basilisk Bow)
Artemis Bow (Artemis Bow)
Items
■Dummy (■Dummy)
Tear Acorn (Tear Acorn)
Medicinal Herb (Medicinal Herb)
Superior Medicinal Herb (Superior Medicinal Herb)
Healing Herb (Healing Herb)
Special Medicinal Herb (Special Medicinal Herb)
Sage's Pebble (Sage's Pebble)
World Tree's Dew (World Tree's Dew)
Magic Holy Water (Magic Holy Water)
Prayer Ring (Prayer Ring)
Elf Medicine (Elf Medicine)
Silver Feather (Silver Feather)
Antidote Herb (Antidote Herb)
Eyedrop Herb (Eyedrop Herb)
Bitter Herb (Bitter Herb)
Awakening Flower (Awakening Flower)
Full Moon Herb (Full Moon Herb)
Forget-Me-Not (Forget-Me-Not)
Angel's Bell (Angel's Bell)
All-Purpose Medicine (All-Purpose Medicine)
Super All-Purpose Medicine (Super All-Purpose Medicine)
World Tree's Leaf (World Tree's Leaf)
Holy Water (Holy Water)
Super Holy Water (Super Holy Water)
■Monster Egg (■Monster Egg)
Mekkira's Wing (Mekkira's Wing)
Memory Bell (Memory Bell)
Cow Dung (Cow Dung)
Ceremonial Talisman (Ceremonial Talisman)
Magatama (Magatama)
Old Copper Coin (Old Copper Coin)
Old Silver Coin (Old Silver Coin)
Old Gold Coin (Old Gold Coin)
Gold Nugget (Gold Nugget)
Gold Bar (Gold Bar)
Seed of Strength (Seed of Strength)
Seed of Agility (Seed of Agility)
Seed of Wisdom (Seed of Wisdom)
Seed of Defense (Seed of Defense)
Life Nut (Life Nut)
Mysterious Nut (Mysterious Nut)
■Skill Seed (■Skill Seed)
Small Seed (Small Seed)
Package with Underwear (Package with Underwear)
Delivery for Luida (Delivery for Luida)
Cursed Ring (Cursed Ring)
Monster Bait (Monster Bait)
Smoked Meat (Smoked Meat)
Meat on the Bone (Meat on the Bone)
Marbled Meat (Marbled Meat)
Large Marbled Meat (Large Marbled Meat)
Debug Seed (Debug Seed)
Companion Seed (Companion Seed)
Inn Seed (Inn Seed)
Shop Seed (Shop Seed)
Event Flag Seed Main (Event Flag Seed Main)
Stone of Annihilation (Stone of Annihilation)
Mimic Stone (Mimic Stone)
Gias (Gias)
Deadea (Deadea)
Bunta (Bunta)
Sopro (Sopro)
Grul (Grul)
Itoh Fish (Itoh Fish)
Drossel (Drossel)
Sunhome (Sunhome)
Porco (Porco)
Arowa (Arowa)
Saltos (Saltos)
Ymirtemil (Ymirtemil)
Roco (Roco)
Zozo (Zozo)
Conme (Conme)
Coppola (Coppola)
Whipbone (Whipbone)
Merle (Merle)
Pico (Pico)
Ginko (Ginko)
Toadfish (Toadfish)
Tiny Crab (Tiny Crab)
Vortex (Vortex)
Jokulhope (Jokulhope)
Eclair (Eclair)
Gomazoa (Gomazoa)
Kinpi (Kinpi)
Megaloa (Megaloa)
Semoponume (Semoponume)
Nimo (Nimo)
# Locations
``` ```