mhx: update hunter arts, weapon sharpness

main
Bryce Allen 10 years ago
parent 6257f2509e
commit ec8e52b99d

@ -135,7 +135,8 @@ def _main():
("icon_name", "name_jp", "name"), ("name_jp",), ("icon_name", "name_jp", "name"), ("name_jp",),
divider_fn=None) divider_fn=None)
ha_path = os.path.join(_pathfix.project_path, "db", "hunter_arts.json") ha_path = os.path.join(_pathfix.project_path,
"db", "mhx", "hunter_arts.json")
with open(ha_path) as f: with open(ha_path) as f:
ha_list = json.load(f) ha_list = json.load(f)

@ -46,6 +46,10 @@ def parse_wikia_hunter_arts(f):
if m: if m:
skill["section"] = section skill["section"] = section
skill["name"] = m.group(1) skill["name"] = m.group(1)
if skill["name"].endswith("II"):
# don't need to translate I-III multiple times, and
# descriptions are also the same
continue
skill["name_jp"] = m.group(2) skill["name_jp"] = m.group(2)
# next line is description # next line is description
description = f.readline().strip().replace("</td><td>", "") description = f.readline().strip().replace("</td><td>", "")

@ -5,6 +5,18 @@
"name": "Absolute Evasion", "name": "Absolute Evasion",
"name_jp": "\u7d76\u5bfe\u56de\u907f" "name_jp": "\u7d76\u5bfe\u56de\u907f"
}, },
{
"section": "General Use",
"description": "The hunter's body spins and evades attacks while retreating from the immediate area. Your weapon will always be unsheathed after this technique, and a small amount of sharpness will be regained.",
"name": "Absolute Evasion: Battle Ready",
"name_jp": "\u7d76\u5bfe\u56de\u907f\u3010\u81e8\u6226\u3011"
},
{
"section": "General Use",
"description": "Increases healing item effect and speeds up red gauge recovery.",
"name": "Heal Up",
"name_jp": "\u30d2\u30fc\u30eb\u30b2\u30a4\u30f3"
},
{ {
"section": "General Use", "section": "General Use",
"description": "No stamina loss for panic running or carrying eggs.", "description": "No stamina loss for panic running or carrying eggs.",
@ -25,15 +37,9 @@
}, },
{ {
"section": "General Use", "section": "General Use",
"description": "Cures all status ailments and heals you.", "description": "Infects yourself with the Frenzy Virus.",
"name": "Phoenix Breath", "name": "Frenzy Body",
"name_jp": "\u4e0d\u6b7b\u9ce5\u306e\u606f\u5439" "name_jp": "\u72c2\u7adc\u8eab"
},
{
"section": "General Use",
"description": "Increases healing item effect and speeds up red gauge recovery.",
"name": "Heal Up",
"name_jp": "\u30d2\u30fc\u30eb\u30b2\u30a4\u30f3"
}, },
{ {
"section": "General Use", "section": "General Use",
@ -43,260 +49,266 @@
}, },
{ {
"section": "General Use", "section": "General Use",
"description": "", "description": "Lose ability to run and evade, but you can no longer be flinched by anything (Excluding Roars, Wind and Tremors) and greatly increases your defense.",
"name": "Frenzy Body", "name": "Diamond Body",
"name_jp": "\u72c2\u7adc\u8eab" "name_jp": "\u91d1\u525b\u8eab"
},
{
"section": "General Use",
"description": "Cures all status ailments and heals you.",
"name": "Phoenix Breath",
"name_jp": "\u4e0d\u6b7b\u9ce5\u306e\u606f\u5439"
}, },
{ {
"section": "Great Sword", "section": "Great Sword",
"description": "Unleashes stored energy in a frightfully powerful slash. You cannot be knocked over during this move.", "description": "A powerful earth-grinding slash, swinging your blade upwards with a small shockwave.",
"name": "Brimstone Slash I", "name": "Thrusting Earth Slash I",
"name_jp": "\u9707\u6012\u7adc\u6028\u65ac I" "name_jp": "\u5730\u885d\u65ac\u2160"
}, },
{ {
"section": "Great Sword", "section": "Great Sword",
"description": "A technique that stores energy in your hunter and their blade. Your next attack will deal more damage.", "description": "A technique that stores energy in your hunter and their blade. Your next attack will deal more damage.",
"name": "Lion's Maw I", "name": "Lion's Maw I",
"name_jp": "\u7363\u5bbf\u3057\u3010\u7345\u5b50\u3011 I" "name_jp": "\u7363\u5bbf\u3057\u3010\u7345\u5b50\u3011\u2160"
}, },
{ {
"section": "Great Sword", "section": "Great Sword",
"description": "", "description": "Unleashes stored energy in a frightfully powerful slash. You cannot be knocked over during this move.",
"name": "Thrusting Earth Slash I", "name": "Brimstone Slash I",
"name_jp": "\u5730\u885d\u65ac I" "name_jp": "\u9707\u6012\u7adc\u6028\u65ac\u2160"
},
{
"section": "Long Sword",
"description": "A spinning slash, you lunge forward slashing twice with each hit leaving an extra slash. Hitting with either slash will level up your Spirit Gauge by 1 level.",
"name": "Sakura Spirit Slash I",
"name_jp": "\u685c\u82b1\u6c17\u5203\u65ac\u2160"
}, },
{ {
"section": "Long Sword", "section": "Long Sword",
"description": "When this Hunting Art is activated, along with the Spirit Gauge reaching maximum, the Spirit Release Full Moon Slash will keep your Spirit Gauge at MAX for a limited time.", "description": "When this Hunting Art is activated, along with the Spirit Gauge reaching maximum, the Spirit Release Full Moon Slash will keep your Spirit Gauge at MAX for a limited time.",
"name": "Spirit Release Full Moon Slash I", "name": "Spirit Release Full Moon Slash I",
"name_jp": "\u7df4\u6c17\u89e3\u653e\u5186\u6708\u65ac\u308a I" "name_jp": "\u7df4\u6c17\u89e3\u653e\u5186\u6708\u65ac\u308a\u2160"
}, },
{ {
"section": "Long Sword", "section": "Long Sword",
"description": "This Hunting Art involves taking a special guarding stance. If attacked while in this stance, you will parry it and strike with a counter!", "description": "This Hunting Art involves taking a special guarding stance. If attacked while in this stance, you will parry it and strike with a counter!",
"name": "Mirror Flower Stance I", "name": "Mirror Flower Stance I",
"name_jp": "\u93e1\u82b1\u306e\u69cb\u3048 I" "name_jp": "\u93e1\u82b1\u306e\u69cb\u3048\u2160"
}, },
{ {
"section": "Long Sword", "section": "Sword and Shield",
"description": "", "description": "A powerful flurry of slashes, hitting 5 times with your sword.",
"name": "Sakura Spirit Slash I", "name": "Blade Dance I",
"name_jp": "\u685c\u82b1\u6c17\u5203\u65ac I" "name_jp": "\u30d6\u30ec\u30a4\u30c9\u30c0\u30f3\u30b9\u2160"
}, },
{ {
"section": "Sword and Shield", "section": "Sword and Shield",
"description": "A spin attack that slashes at targets surrounding you. During execution, you'll be invulnerable to monster attacks, making it an effective evasion technique.", "description": "A spin attack that slashes at targets surrounding you. During execution, you'll be invulnerable to monster attacks, making it an effective evasion technique.",
"name": "Round Force I", "name": "Round Force I",
"name_jp": "\u30e9\u30a6\u30f3\u30c9\u30d5\u30a9\u30fc\u30b9 I" "name_jp": "\u30e9\u30a6\u30f3\u30c9\u30d5\u30a9\u30fc\u30b9\u2160"
}, },
{ {
"section": "Sword and Shield", "section": "Sword and Shield",
"description": "Smashes shield upwards after a slash attack. Fierce enough to Stun if it hits a monster's head.", "description": "Smashes shield upwards after a slash attack. Fierce enough to Stun if it hits a monster's head.",
"name": "Shoryugeki I", "name": "Shoryugeki I",
"name_jp": "\u6607\u7adc\u6483 I" "name_jp": "\u6607\u7adc\u6483\u2160"
},
{
"section": "Sword and Shield",
"description": "",
"name": "Blade Dance I",
"name_jp": "\u30d6\u30ec\u30a4\u30c9\u30c0\u30f3\u30b9 I"
}, },
{ {
"section": "Dual Blades", "section": "Dual Blades",
"description": "A forward advancing combo that carves up your targets! You are able to change the direction of your advances during the move.", "description": "A forward advancing combo that carves up your targets! You are able to change the direction of your advances twice during the move.",
"name": "Bloody Wind Top I", "name": "Bloody Wind Top I",
"name_jp": "\u8840\u98a8\u72ec\u697d I" "name_jp": "\u8840\u98a8\u72ec\u697d\u2160"
}, },
{ {
"section": "Dual Blades", "section": "Dual Blades",
"description": "With this Hunter Art, utilize ledges to attack. Following the upward spinning slice, you will deal a severe blow.", "description": "With this Hunter Art, utilize ledges to attack. Following the upward spinning slice, you will deal a severe blow.",
"name": "Soaring Heaven Splitter I", "name": "Soaring Heaven Splitter I",
"name_jp": "\u5929\u7fd4\u7a7a\u7834\u65ad I" "name_jp": "\u5929\u7fd4\u7a7a\u7834\u65ad\u2160"
}, },
{ {
"section": "Dual Blades", "section": "Dual Blades",
"description": "", "description": "Unleashing an inner power, you attack with fury with each attack hitting twice, greatly increasing their strength.",
"name": "Beast Mode: Ravenous Wolf I", "name": "Beast Mode: Ravenous Wolf I",
"name_jp": "\u7363\u5bbf\u3057\u3010\u9913\u72fc\u3011 I" "name_jp": "\u7363\u5bbf\u3057\u3010\u9913\u72fc\u3011\u2160"
}, },
{ {
"section": "Hammer", "section": "Hammer",
"description": "Provokes a monster and for a limited time it will be more likely that it focuses its offensive on you!", "description": "Spin the Hammer around with tremendous force before striking down your target with a super-charged attack.",
"name": "Provoke I", "name": "Spinning Meteor I",
"name_jp": "\u5927\u6311\u767a I" "name_jp": "\u30b9\u30d4\u30cb\u30f3\u30b0\u30e1\u30c6\u30aa\u2160"
}, },
{ {
"section": "Hammer", "section": "Hammer",
"description": "Spin the Hammer around with tremendous force before striking down your target with a super-charged attack.", "description": "Provokes a monster and for a limited time it will be more likely that it focuses its offensive on you!",
"name": "Spinning Meteor I", "name": "Provoke I",
"name_jp": "\u30b9\u30d4\u30cb\u30f3\u30b0\u30e1\u30c6\u30aa I" "name_jp": "\u5927\u6311\u767a\u2160"
}, },
{ {
"section": "Hammer", "section": "Hammer",
"description": "", "description": "A fierce spinning attack, continuously spinning the hammer into a powerful swing.",
"name": "Typhoon Trigger I", "name": "Typhoon Trigger I",
"name_jp": "\u30bf\u30a4\u30d5\u30fc\u30f3\u30c8\u30ea\u30ac\u30fc I" "name_jp": "\u30bf\u30a4\u30d5\u30fc\u30f3\u30c8\u30ea\u30ac\u30fc\u2160"
},
{
"section": "Hunting Horn",
"description": "This Hunter Art will play all the different songs your Hunting Horn can play all at once!",
"name": "Orchestra Soul I",
"name_jp": "\u30aa\u30eb\u30b1\u30b9\u30bf\u30bd\u30a6\u30eb\u2160"
}, },
{ {
"section": "Hunting Horn", "section": "Hunting Horn",
"description": "This Hunter Art involves playing the Hunting Horn with a pressurized shockwave! A very powerful attack!", "description": "This Hunter Art involves playing the Hunting Horn with a pressurized shockwave! A very powerful attack!",
"name": "Sound Attack Tremor I", "name": "Sound Attack Tremor I",
"name_jp": "\u97f3\u6483\u9707 I" "name_jp": "\u97f3\u6483\u9707\u2160"
}, },
{ {
"section": "Hunting Horn", "section": "Hunting Horn",
"description": "For a limited duration, you will have the ability to play double notes without hitting a monster!", "description": "For a limited duration, you will have the ability to play double notes without hitting a monster!",
"name": "Full Orchestra I", "name": "Full Orchestra I",
"name_jp": "\u594f\u7e8f I" "name_jp": "\u594f\u7e8f\u2160"
},
{
"section": "Hunting Horn",
"description": "",
"name": "Orchestra Soul I",
"name_jp": "\u30aa\u30eb\u30b1\u30b9\u30bf\u30bd\u30a6\u30eb I"
}, },
{ {
"section": "Lance", "section": "Lance",
"description": "Raise your shield and charge monsters while blocking. Capable of follow-up thrusts.", "description": "Raise your shield and charge monsters while blocking. Capable of follow-up thrusts.",
"name": "Shield Assault I", "name": "Shield Assault I",
"name_jp": "\u30b7\u30fc\u30eb\u30c9\u30a2\u30b5\u30eb\u30c8 I" "name_jp": "\u30b7\u30fc\u30eb\u30c9\u30a2\u30b5\u30eb\u30c8\u2160"
}, },
{ {
"section": "Lance", "section": "Lance",
"description": "Raise your shield to absorb an attack's power. Block stronger attacks to absorb more power. Try it just before an attack hits you.", "description": "Charging up a powerful attack, you thrust your lance forward creating a spiral shockwave.",
"name": "Enraged Guard I", "name": "Screw Thrust I",
"name_jp": "\u30ac\u30fc\u30c9\u30ec\u30a4\u30b8 I" "name_jp": "\u30b9\u30af\u30ea\u30e5\u30fc\u30b9\u30e9\u30b9\u30c8\u2160"
}, },
{ {
"section": "Lance", "section": "Lance",
"description": "", "description": "Raise your shield to absorb an attack's power. Block stronger attacks to absorb more power. Try it just before an attack hits you.",
"name": "Screw Thrust I", "name": "Enraged Guard I",
"name_jp": "\u30b9\u30af\u30ea\u30e5\u30fc\u30b9\u30e9\u30b9\u30c8 I" "name_jp": "\u30ac\u30fc\u30c9\u30ec\u30a4\u30b8\u2160"
}, },
{ {
"section": "Gunlance", "section": "Gunlance",
"description": "Utilizing explosive energies, unleashing a swirling dose of hellfire in this terrifying Wyvern's Fire attack!", "description": "Utilizing explosive energies, unleashing a swirling dose of hellfire in this terrifying Wyvern's Fire attack!",
"name": "Supreme Mountain Wyvern's Fire I", "name": "Supreme Mountain Wyvern's Fire I",
"name_jp": "\u8987\u5c71\u7adc\u6483\u7832 I" "name_jp": "\u8987\u5c71\u7adc\u6483\u7832\u2160"
}, },
{ {
"section": "Gunlance", "section": "Gunlance",
"description": "This Hunter Art brings the internal heat energy of the Gunlance to its highest point, allowing the heat gauge to stay at maximum for a limited time!", "description": "You launch yourself by firing your Gunlance in the opposite direction, sending you flying at high speeds. Slamming your Gunlance down during this causes a lot of damage.",
"name": "Wyvern's Breath", "name": "Blast Dash I",
"name_jp": "\u7adc\u306e\u606f\u5439 I" "name_jp": "\u30d6\u30e9\u30b9\u30c8\u30c0\u30c3\u30b7\u30e5\u2160"
}, },
{ {
"section": "Gunlance", "section": "Gunlance",
"description": "", "description": "This Hunter Art brings the internal heat energy of the Gunlance to its highest point, allowing the heat gauge to stay at maximum for a limited time!",
"name": "Blast Dash I", "name": "Wyvern's Breath I",
"name_jp": "\u30d6\u30e9\u30b9\u30c8\u30c0\u30c3\u30b7\u30e5 I" "name_jp": "\u7adc\u306e\u606f\u5439\u2160"
}, },
{ {
"section": "Switch Axe", "section": "Switch Axe",
"description": "A combo of Axe Mode and Sword Mode strikes followed by an Elemental Discharge.", "description": "A combo of Axe Mode and Sword Mode strikes followed by an Elemental Discharge.",
"name": "Translash I", "name": "Translash I",
"name_jp": "\u30c8\u30e9\u30f3\u30b9\u30e9\u30c3\u30b7\u30e5 I" "name_jp": "\u30c8\u30e9\u30f3\u30b9\u30e9\u30c3\u30b7\u30e5\u2160"
}, },
{ {
"section": "Switch Axe", "section": "Switch Axe",
"description": "Enhances the power inside your Sword Mode, granting it even more attack power.", "description": "Enhances the power inside your Sword Mode, granting it even more attack power.",
"name": "Demon Sword Mode I", "name": "Demon Sword Mode I",
"name_jp": "\u5263\u9b3c\u5f62\u614b I" "name_jp": "\u5263\u9b3c\u5f62\u614b\u2160"
}, },
{ {
"section": "Switch Axe", "section": "Switch Axe",
"description": "", "description": "Refills 80% of your Phial in either mode.",
"name": "Energy Charge I", "name": "Energy Charge I",
"name_jp": "\u30a8\u30cd\u30eb\u30ae\u30fc\u30c1\u30e3\u30fc\u30b8 I" "name_jp": "\u30a8\u30cd\u30eb\u30ae\u30fc\u30c1\u30e3\u30fc\u30b8\u2160"
}, },
{ {
"section": "Charge Blade", "section": "Charge Blade",
"description": "Use the power charged in your phials to create a blade of energy. More phials means more power!", "description": "Use the power charged in your phials to create a blade of energy. More phials means more power!",
"name": "Energy Blade I", "name": "Energy Blade I",
"name_jp": "\u30a8\u30cd\u30eb\u30ae\u30fc\u30d6\u30ec\u30a4\u30c9 I" "name_jp": "\u30a8\u30cd\u30eb\u30ae\u30fc\u30d6\u30ec\u30a4\u30c9\u2160"
}, },
{ {
"section": "Charge Blade", "section": "Charge Blade",
"description": "Temporarily increase the maximum number of phials you can charge up.", "description": "Temporarily increase the maximum number of phials you can charge up to 7.",
"name": "Over Limit I", "name": "Over Limit I",
"name_jp": "\u30aa\u30fc\u30d0\u30fc\u30ea\u30df\u30c3\u30c8 I" "name_jp": "\u30aa\u30fc\u30d0\u30fc\u30ea\u30df\u30c3\u30c8\u2160"
}, },
{ {
"section": "Charge Blade", "section": "Charge Blade",
"description": "", "description": "For a limited duration, your phials are changed to heal yourself and others around you when you preform shield related attacks.",
"name": "Healing Bottle I", "name": "Healing Bottle I",
"name_jp": "\u30d2\u30fc\u30ea\u30f3\u30b0\u30dc\u30c8\u30eb I" "name_jp": "\u30d2\u30fc\u30ea\u30f3\u30b0\u30dc\u30c8\u30eb\u2160"
}, },
{ {
"section": "Insect Glaive", "section": "Insect Glaive",
"description": "Attract insects that stay around you and protect you by attacking anything that draws near you.", "description": "Send out your Kinsect with incredible velocity, allowing it to draw all 3 Extracts in one shot.",
"name": "Insect Clad I", "name": "Extract Hunter I",
"name_jp": "\u87f2\u7e8f\u3044 I" "name_jp": "\u30a8\u30ad\u30b9\u30cf\u30f3\u30bf\u30fc\u2160"
}, },
{ {
"section": "Insect Glaive", "section": "Insect Glaive",
"description": "Send out your Kinsect with incredible velocity, allowing it to draw all 3 Extracts in one shot.", "description": "Attract insects that stay around you and protect you by attacking anything that draws near you.",
"name": "Extract Hunter I", "name": "Insect Clad I",
"name_jp": "\u30a8\u30ad\u30b9\u30cf\u30f3\u30bf\u30fc I" "name_jp": "\u87f2\u7e8f\u3044\u2160"
}, },
{ {
"section": "Insect Glaive", "section": "Insect Glaive",
"description": "", "description": "Slashes twice and then leaps using the Insect Glaive to strike down monsters. This Hunter Art is powered up greatly when used with the Insect Clad Hunter Art.",
"name": "Soaring Insect Slash I", "name": "Soaring Insect Slash I",
"name_jp": "\u98db\u7fd4\u87f2\u65ac\u7834 I" "name_jp": "\u98db\u7fd4\u87f2\u65ac\u7834\u2160"
}, },
{ {
"section": "Light Bowgun", "section": "Light Bowgun",
"description": "Propel backward while leaving an explosive shot on the ground for the approaching monster to get blasted with.", "description": "Propel backward while leaving an explosive shot on the ground for the approaching monster to get blasted with.",
"name": "Bullet Geyser I", "name": "Bullet Geyser I",
"name_jp": "\u30d0\u30ec\u30c3\u30c8\u30b2\u30a4\u30b6\u30fc I" "name_jp": "\u30d0\u30ec\u30c3\u30c8\u30b2\u30a4\u30b6\u30fc\u2160"
}, },
{ {
"section": "Light Bowgun", "section": "Light Bowgun",
"description": "Allows you to rapid fire your rapid shots in fast succession until you run out.", "description": "Loads all usable shots in your pouch into your Bowgun.",
"name": "Rapid Heaven I", "name": "Full Load I",
"name_jp": "\u30e9\u30d4\u30c3\u30c9\u30d8\u30d6\u30f3 I" "name_jp": "\u5168\u5f3e\u88c5\u586b\u2160"
}, },
{ {
"section": "Light Bowgun", "section": "Light Bowgun",
"description": "", "description": "Allows you to rapid fire your rapid shots in fast succession until you run out.",
"name": "Full Load I", "name": "Rapid Heaven I",
"name_jp": "\u5168\u5f3e\u88c5\u586b I" "name_jp": "\u30e9\u30d4\u30c3\u30c9\u30d8\u30d6\u30f3\u2160"
}, },
{ {
"section": "Heavy Bowgun", "section": "Heavy Bowgun",
"description": "A special shot that results in a massive mid-air explosion that affects a wide area.", "description": "A special shot that results in a massive mid-air explosion that affects a wide area.",
"name": "Supernova I", "name": "Supernova I",
"name_jp": "\u30b9\u30fc\u30d1\u30fc\u30ce\u30f4\u30a1 I" "name_jp": "\u30b9\u30fc\u30d1\u30fc\u30ce\u30f4\u30a1\u2160"
},
{
"section": "Heavy Bowgun",
"description": "A special shower that gives your hunter increased movement speed, lighter recoil and faster reloading speed.",
"name": "Acceleration Shower I",
"name_jp": "\u30a2\u30af\u30bb\u30eb\u30b7\u30e3\u30ef\u30fc\u2160"
}, },
{ {
"section": "Heavy Bowgun", "section": "Heavy Bowgun",
"description": "Loads a special coating that increases the power of your shots.", "description": "Loads a special coating that increases the power of your shots.",
"name": "Load Gunpowder I", "name": "Load Gunpowder I",
"name_jp": "\u706b\u85ac\u88c5\u586b" "name_jp": "\u706b\u85ac\u88c5\u586b\u2160"
}, },
{ {
"section": "Heavy Bowgun", "section": "Bow",
"description": "", "description": "Fires 3 arrows at once twice, then loads another 3 and charges them up before firing for high damage.",
"name": "Acceleration Shower I", "name": "Trinity Raven I",
"name_jp": "\u30a2\u30af\u30bb\u30eb\u30b7\u30e3\u30ef\u30fc I" "name_jp": "\u30c8\u30ea\u30cb\u30c6\u30a3\u30ec\u30a4\u30f4\u30f3\u2160"
}, },
{ {
"section": "Bow", "section": "Bow",
"description": "A special shower that gives your hunter increased movement speed and charging speed.", "description": "A special shower that gives your hunter increased movement speed and charging speed.",
"name": "Acceleration Rain I", "name": "Acceleration Rain I",
"name_jp": "\u30a2\u30af\u30bb\u30eb\u30ec\u30a4\u30f3 I" "name_jp": "\u30a2\u30af\u30bb\u30eb\u30ec\u30a4\u30f3\u2160"
}, },
{ {
"section": "Bow", "section": "Bow",
"description": "Tie two arrows together with a wire and shoot them as a single shot that cuts like a blade.", "description": "Tie two arrows together with a wire and shoot them as a single shot that cuts like a blade.",
"name": "Blade Wire I", "name": "Blade Wire I",
"name_jp": "\u30d6\u30ec\u30a4\u30c9\u30ef\u30a4\u30e4\u30fc I" "name_jp": "\u30d6\u30ec\u30a4\u30c9\u30ef\u30a4\u30e4\u30fc\u2160"
},
{
"section": "Bow",
"description": "",
"name": "Trinity Raven I",
"name_jp": "\u30c8\u30ea\u30cb\u30c6\u30a3\u30ec\u30a4\u30f4\u30f3 I"
} }
] ]

File diff suppressed because it is too large Load Diff

@ -1,10 +1,11 @@
#!/usr/bin/env python #!/usr/bin/env python2
# vim: set fileencoding=utf8 : # vim: set fileencoding=utf8 :
import urllib import urllib
import os import os
import json import json
import sys import sys
import codecs
from lxml import etree from lxml import etree
@ -67,6 +68,12 @@ _CB_PHIAL_TYPES = {
} }
_BUG_TYPES = {
u"切断": "Cutting",
u"打撃": "Impact",
}
_BOW_ARC_TYPES = { _BOW_ARC_TYPES = {
u"集中型": "Focus", u"集中型": "Focus",
u"放散型": "Wide", u"放散型": "Wide",
@ -109,43 +116,45 @@ _HORN_NOTES = {
} }
def extract_weapon_list(wtype, tree): def extract_weapon_list(wtype, tree, parser):
weapons = [] weapons = []
rows = tree.xpath('//*[@id="sorter"]/tbody/tr') rows = tree.xpath('//*[@id="sorter"]/tbody/tr')
parent_name = None parent_name = None
parent_href = None parent_href = None
for row in rows: for row in rows:
cells = list(row) cells = list(row)
if len(cells) == 4: if len(cells) in (5, 6):
name, href, final = _parse_name_td(cells[0])
attack, affinity, defense, elements, slots = \
_parse_hh_attr_td(cells[1])
horn_notes = _parse_horn_notes_td(cells[2])
sharpness = _parse_sharpness_td(cells[3])
shots, ammo = None, None
elif len(cells) in (5, 6):
name, href, final = _parse_name_td(cells[0]) name, href, final = _parse_name_td(cells[0])
attack = int(cells[1].text) attack = int(cells[1].text)
affinity, defense, elements = _parse_elements_td(cells[2]) affinity, defense, elements = _parse_elements_td(cells[2])
if wtype not in _RANGED_TYPES: if wtype not in _RANGED_TYPES:
sharpness = _parse_sharpness_td(cells[-2]) #sharpness = _parse_sharpness_td(cells[-2])
shots, ammo = None, None shots, ammo = None, None
else: else:
sharpness = [None, None] #sharpness = [None, None]
if wtype == "Bow": if wtype == "Bow":
shots, ammo = _parse_bow_td(cells[-2]) shots, ammo = _parse_bow_td(cells[-2])
slots = _parse_slots_td(cells[-1]) slots = _parse_slots_td(cells[-1])
horn_notes = None
else: else:
continue continue
if wtype in _RANGED_TYPES:
sharpness_levels = [None, None, None]
else:
details_link = href or parent_href
sharpness_levels = _get_detailed_sharpness(name, details_link,
parser)
data = dict(name_jp=name, name=name, wtype=wtype, final=final, data = dict(name_jp=name, name=name, wtype=wtype, final=final,
sharpness=sharpness[0], sharpness_plus=sharpness[1], sharpness=sharpness_levels[0],
sharpness_plus=sharpness_levels[1],
sharpness_plus2=sharpness_levels[2],
attack=attack, num_slots=slots, attack=attack, num_slots=slots,
affinity=affinity, defense=defense, affinity=affinity, defense=defense,
element=None, element_attack=None, element=None, element_attack=None,
awaken=None, element_2=None, element_2_attack=None, awaken=None, element_2=None, element_2_attack=None,
phial=None, shelling_type=None, horn_notes=horn_notes, phial=None, shelling_type=None, horn_notes=None,
bug_type=None,
arc_type=None, ammo=ammo, shot_types=shots) arc_type=None, ammo=ammo, shot_types=shots)
if elements: if elements:
data["element"] = elements[0][0] data["element"] = elements[0][0]
@ -154,7 +163,10 @@ def extract_weapon_list(wtype, tree):
data["element_2"] = elements[1][0] data["element_2"] = elements[1][0]
data["element_2_attack"] = elements[1][1] data["element_2_attack"] = elements[1][1]
if len(cells) == 6: if len(cells) == 6:
_add_phial_or_shot_data(data, cells[-3]) if wtype == "Hunting Horn":
data["horn_notes"] = _parse_horn_notes_td(cells[-3])
else:
_add_phial_or_shot_data(data, cells[-3])
if href is None or href == parent_href: if href is None or href == parent_href:
data["parent"] = parent_name data["parent"] = parent_name
data["href"] = parent_href data["href"] = parent_href
@ -177,10 +189,77 @@ def _add_phial_or_shot_data(data, td_element):
elif data["wtype"] == "Gunlance": elif data["wtype"] == "Gunlance":
shot_type = _GL_SHOT_TYPES[text[:2]] shot_type = _GL_SHOT_TYPES[text[:2]]
data["shelling_type"] = "%s %s" % (shot_type, text[2]) data["shelling_type"] = "%s %s" % (shot_type, text[2])
elif data["wtype"] == "Insect Glaive":
data["bug_type"] = _BUG_TYPES[text]
elif data["wtype"] == "Bow": elif data["wtype"] == "Bow":
data["arc_type"] = _BOW_ARC_TYPES[text] data["arc_type"] = _BOW_ARC_TYPES[text]
else: else:
raise ValueError("Unexpected element for wtype '%s'" % data["wtype"]) msg = u"Unexpected element for wtype '%s'" % data["wtype"]
print >>sys.stderr, msg, text
raise ValueError(msg)
SHARPNESS = {}
def _get_detailed_sharpness(name, href, parser):
"""
Fetch weapon details page, parse the three levels of sharpness and
save to SHARPNESS global.
Example page: http://wiki.mhxg.org/ida/219225.html
"""
if name in SHARPNESS:
return SHARPNESS[name]
if not href.startswith("http://"):
href = _BASE_URL + href
digits = []
base_name = name
while base_name[-1].isdigit():
digits.insert(0, base_name[-1])
base_name = base_name[:-1]
if digits:
weapon_level = int("".join(digits))
else:
weapon_level = 1
tmp_path = os.path.join(_pathfix.project_path, "tmp")
fpath = os.path.join(tmp_path, "details-%s.html" % (base_name))
urllib.urlretrieve(href, fpath)
with open(fpath) as f:
tree = etree.parse(f, parser)
data1 = tree.xpath('//*/div[@class="data1"]')
assert len(data1) == 1, data1
tables = data1[0].xpath('./table[@class="t1 th3"]')
assert len(tables) == 2, len(tables)
comp_table = tables[1]
comp_trs = comp_table.xpath('./tr')
names = []
for tr in comp_trs:
cells = tr.xpath('./td')
if not cells:
# first row has th, we want to ignore anyway
continue
name_cell = cells[0]
# name is tail of weapon icon image
name = name_cell[0].tail.strip()
names.append(name)
attr_table = tables[0]
attr_trs = attr_table.xpath('./tr')
i = 0
for tr in attr_trs:
cells = tr.xpath('./td')
if not cells:
# first row has th, we want to ignore anyway
continue
sharpness_cell = cells[3]
name = names[i]
try:
sharpness_levels = _parse_sharpness_td(sharpness_cell)
except KeyError, ValueError:
print >>sys.stderr, "bad sharpness:", href, name
raise
SHARPNESS[name] = sharpness_levels
#print name, sharpness_levels
i += 1
return SHARPNESS[name]
def _parse_bow_td(td_element): def _parse_bow_td(td_element):
@ -301,11 +380,13 @@ def _parse_slots_td(td_element):
def _parse_sharpness_td(td_element): def _parse_sharpness_td(td_element):
div = td_element[0] div = td_element[0]
subs = list(div) subs = list(div)
sharpness, sharpness_plus = [], [] sharpness_levels = [[], [], []]
current = sharpness level = 0
current = sharpness_levels[0]
for sub in subs: for sub in subs:
if sub.tag == "br": if sub.tag == "br":
current = sharpness_plus level += 1
current = sharpness_levels[level]
continue continue
assert sub.tag == "span", sub.tag assert sub.tag == "span", sub.tag
if sub.attrib["class"] == "kr7": if sub.attrib["class"] == "kr7":
@ -313,11 +394,11 @@ def _parse_sharpness_td(td_element):
if sub.text is None: if sub.text is None:
continue continue
current.append(sub.text.count(".")) current.append(sub.text.count("."))
for i in xrange(len(sharpness), 6): for level in xrange(3):
sharpness.append(0) sharpness = sharpness_levels[level]
for i in xrange(len(sharpness_plus), 6): for i in xrange(len(sharpness), 6):
sharpness_plus.append(0) sharpness.append(0)
return sharpness, sharpness_plus return sharpness_levels
def _main(): def _main():
@ -330,10 +411,27 @@ def _main():
urllib.urlretrieve(_BASE_URL + url, fpath) urllib.urlretrieve(_BASE_URL + url, fpath)
with open(fpath) as f: with open(fpath) as f:
tree = etree.parse(f, parser) tree = etree.parse(f, parser)
wlist = extract_weapon_list(wtype, tree) wlist = extract_weapon_list(wtype, tree, parser)
weapon_list.extend(wlist) weapon_list.extend(wlist)
print json.dumps(weapon_list, indent=2) print json.dumps(weapon_list, indent=2)
def _test_details():
parser = etree.HTMLParser()
# final level has same name
_get_detailed_sharpness(u"ベルダーハンマー",
"http://wiki.mhxg.org/ida/219225.html", parser)
# final level has different name
_get_detailed_sharpness(u"テッケン",
"http://wiki.mhxg.org/ida/230575.html", parser)
# final level >= 10 (two chars)
_get_detailed_sharpness(u"ウィルガシェルプレス",
"http://wiki.mhxg.org/ida/228545.html", parser)
if __name__ == '__main__': if __name__ == '__main__':
#_test_details()
UTF8Writer = codecs.getwriter('utf8')
sys.stdout = UTF8Writer(sys.stdout)
sys.stderr = UTF8Writer(sys.stderr)
_main() _main()

@ -227,6 +227,14 @@ function set_sharpness_titles(weapon_data) {
weapon_data["sharpness_all_title"] = weapon_data["sharpness_all_title"] =
weapon_data["sharpness_title"] + " (" weapon_data["sharpness_title"] + " ("
+ weapon_data["sharpness_plus_title"] + ")"; + weapon_data["sharpness_plus_title"] + ")";
if (weapon_data["sharpness_plus2"]) {
weapon_data["sharpness_plus2_title"] =
weapon_data["sharpness_plus2"].join(",");
weapon_data["sharpness_all_title"] =
weapon_data["sharpness_title"] + "; "
+ weapon_data["sharpness_plus_title"] + "; "
+ weapon_data["sharpness_plus2_title"];
}
} else { } else {
// gunner weapons have no sharpness // gunner weapons have no sharpness
weapon_data["sharpness_title"] = ""; weapon_data["sharpness_title"] = "";

@ -40,10 +40,10 @@
} }
.sharpness-bar { .sharpness-bar {
border: 1px #d3d3d3 solid; border: 1px #a9a9a9 solid;
min-width: 72px; min-width: 90px;
height: 10px; height: 7px;
background-color: #d3d3d3; background-color: #a9a9a9;
float: left; float: left;
clear: both; clear: both;
} }
@ -244,6 +244,7 @@
$.each(WEAPON_LIST, function(i, weapon_data) { $.each(WEAPON_LIST, function(i, weapon_data) {
if (weapon_predicate(state, weapon_data)) { if (weapon_predicate(state, weapon_data)) {
weapon_data["id"] = i; weapon_data["id"] = i;
weapon_data["sharpness_width"] = 2;
match_count += 1; match_count += 1;
set_sharpness_titles(weapon_data); set_sharpness_titles(weapon_data);
set_bow_values(weapon_data); set_bow_values(weapon_data);

@ -39,32 +39,46 @@
data-id="<%= id %>"> data-id="<%= id %>">
<% if (sharpness) { %> <% if (sharpness) { %>
<div class="sharpness-bar" title="<%= sharpness_all_title %>"> <div class="sharpness-bar" title="<%= sharpness_all_title %>">
<span style="width:<%= sharpness[0] %>px" class="red"></span> <span style="width:<%= sharpness[0] * sharpness_width %>px" class="red"></span>
<span style="width:<%= sharpness[1] %>px" class="orange"></span> <span style="width:<%= sharpness[1] * sharpness_width %>px" class="orange"></span>
<span style="width:<%= sharpness[2] %>px" class="yellow"></span> <span style="width:<%= sharpness[2] * sharpness_width %>px" class="yellow"></span>
<span style="width:<%= sharpness[3] %>px" class="green"></span> <span style="width:<%= sharpness[3] * sharpness_width %>px" class="green"></span>
<span style="width:<%= sharpness[4] %>px" class="blue"></span> <span style="width:<%= sharpness[4] * sharpness_width %>px" class="blue"></span>
<span style="width:<%= sharpness[5] %>px" class="white"></span> <span style="width:<%= sharpness[5] * sharpness_width %>px" class="white"></span>
<% if (sharpness.length > 6) { %> <% if (sharpness.length > 6) { %>
<span style="width:<%= sharpness[6] %>px" class="purple"></span> <span style="width:<%= sharpness[6] * sharpness_width %>px" class="purple"></span>
<% } %> <% } %>
</div> </div>
<div class="sharpness-bar" title="<%= sharpness_all_title %>"> <div class="sharpness-bar" title="<%= sharpness_all_title %>">
<span style="width:<%= sharpness_plus[0] %>px" class="red"></span> <span style="width:<%= sharpness_plus[0] * sharpness_width %>px" class="red"></span>
<span style="width:<%= sharpness_plus[1] %>px" class="orange"></span> <span style="width:<%= sharpness_plus[1] * sharpness_width %>px" class="orange"></span>
<span style="width:<%= sharpness_plus[2] %>px" class="yellow"></span> <span style="width:<%= sharpness_plus[2] * sharpness_width %>px" class="yellow"></span>
<span style="width:<%= sharpness_plus[3] %>px" class="green"></span> <span style="width:<%= sharpness_plus[3] * sharpness_width %>px" class="green"></span>
<span style="width:<%= sharpness_plus[4] %>px" class="blue"></span> <span style="width:<%= sharpness_plus[4] * sharpness_width %>px" class="blue"></span>
<span style="width:<%= sharpness_plus[5] %>px" class="white"></span> <span style="width:<%= sharpness_plus[5] * sharpness_width %>px" class="white"></span>
<% if (sharpness.length > 6) { %> <% if (sharpness.length > 6) { %>
<span style="width:<%= sharpness_plus[6] %>px" class="purple"></span> <span style="width:<%= sharpness_plus[6] * sharpness_width %>px" class="purple"></span>
<% } %> <% } %>
</div> </div>
<% if (sharpness_plus2) { %>
<div class="sharpness-bar" title="<%= sharpness_all_title %>">
<span style="width:<%= sharpness_plus2[0] * sharpness_width %>px" class="red"></span>
<span style="width:<%= sharpness_plus2[1] * sharpness_width %>px" class="orange"></span>
<span style="width:<%= sharpness_plus2[2] * sharpness_width %>px" class="yellow"></span>
<span style="width:<%= sharpness_plus2[3] * sharpness_width %>px" class="green"></span>
<span style="width:<%= sharpness_plus2[4] * sharpness_width %>px" class="blue"></span>
<span style="width:<%= sharpness_plus2[5] * sharpness_width %>px" class="white"></span>
<% if (sharpness.length > 6) { %>
<span style="width:<%= sharpness_plus2[6] * sharpness_width %>px" class="purple"></span>
<% } %>
</div>
<% } %>
<% } %> <% } %>
</td> </td>
<td><%= defense ? "+" + defense + " Def" : "" %></td> <td><%= defense ? "+" + defense + " Def" : "" %></td>
<td style="text-align:right"><%= phial %></td> <td style="text-align:right"><%= phial %></td>
<td style="text-align:right"><%= shelling_type %></td> <td style="text-align:right"><%= shelling_type %></td>
<td style="text-align:right"><%= bug_type %></td>
<% if (arc_type) { %> <% if (arc_type) { %>
<td style="text-align:right"><%= arc_type %></td> <td style="text-align:right"><%= arc_type %></td>
<td style="font-family:mono" <td style="font-family:mono"

@ -58,6 +58,28 @@
<div class="pure-g poogie-li">
<div class="pure-u-1-2">Absolute Evasion: Battle Ready</div>
<div class="pure-u-1-2">絶対回避【臨戦】</div>
<div class="pure-u">The hunter's body spins and evades attacks while retreating from the immediate area. Your weapon will always be unsheathed after this technique, and a small amount of sharpness will be regained.</div>
</div>
<div class="pure-g poogie-li">
<div class="pure-u-1-2">Heal Up</div>
<div class="pure-u-1-2">ヒールゲイン</div>
<div class="pure-u">Increases healing item effect and speeds up red gauge recovery.</div>
</div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Escape Runner</div> <div class="pure-u-1-2">Escape Runner</div>
@ -93,43 +115,44 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Phoenix Breath</div> <div class="pure-u-1-2">Frenzy Body</div>
<div class="pure-u-1-2">不死鳥の息吹</div> <div class="pure-u-1-2">狂竜身</div>
<div class="pure-u">Cures all status ailments and heals you.</div> <div class="pure-u">Infects yourself with the Frenzy Virus.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Heal Up</div> <div class="pure-u-1-2">Metal Body</div>
<div class="pure-u-1-2">ヒールゲイン</div> <div class="pure-u-1-2">鉄鋼身</div>
<div class="pure-u">Increases healing item effect and speeds up red gauge recovery.</div> <div class="pure-u">Lose ability to run, but monster attacks will not flinch you.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Metal Body</div> <div class="pure-u-1-2">Diamond Body</div>
<div class="pure-u-1-2">鉄鋼</div> <div class="pure-u-1-2">金剛</div>
<div class="pure-u">Lose ability to run, but monster attacks will not flinch you.</div> <div class="pure-u">Lose ability to run and evade, but you can no longer be flinched by anything (Excluding Roars, Wind and Tremors) and greatly increases your defense.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Frenzy Body</div> <div class="pure-u-1-2">Phoenix Breath</div>
<div class="pure-u-1-2">狂竜身</div> <div class="pure-u-1-2">不死鳥の息吹</div>
<div class="pure-u">Cures all status ailments and heals you.</div>
</div> </div>
@ -137,11 +160,11 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Brimstone Slash I</div> <div class="pure-u-1-2">Thrusting Earth Slash I</div>
<div class="pure-u-1-2">震怒竜怨斬 I</div> <div class="pure-u-1-2">地衝斬Ⅰ</div>
<div class="pure-u">Unleashes stored energy in a frightfully powerful slash. You cannot be knocked over during this move.</div> <div class="pure-u">A powerful earth-grinding slash, swinging your blade upwards with a small shockwave.</div>
</div> </div>
@ -150,7 +173,7 @@
<div class="pure-u-1-2">Lion's Maw I</div> <div class="pure-u-1-2">Lion's Maw I</div>
<div class="pure-u-1-2">獣宿し【獅子】 I</div> <div class="pure-u-1-2">獣宿し【獅子】</div>
<div class="pure-u">A technique that stores energy in your hunter and their blade. Your next attack will deal more damage.</div> <div class="pure-u">A technique that stores energy in your hunter and their blade. Your next attack will deal more damage.</div>
</div> </div>
@ -159,10 +182,11 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Thrusting Earth Slash I</div> <div class="pure-u-1-2">Brimstone Slash I</div>
<div class="pure-u-1-2">地衝斬 I</div> <div class="pure-u-1-2">震怒竜怨斬Ⅰ</div>
<div class="pure-u">Unleashes stored energy in a frightfully powerful slash. You cannot be knocked over during this move.</div>
</div> </div>
@ -170,32 +194,33 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Spirit Release Full Moon Slash I</div> <div class="pure-u-1-2">Sakura Spirit Slash I</div>
<div class="pure-u-1-2">練気解放円月斬り I</div> <div class="pure-u-1-2">桜花気刃斬Ⅰ</div>
<div class="pure-u">When this Hunting Art is activated, along with the Spirit Gauge reaching maximum, the Spirit Release Full Moon Slash will keep your Spirit Gauge at MAX for a limited time.</div> <div class="pure-u">A spinning slash, you lunge forward slashing twice with each hit leaving an extra slash. Hitting with either slash will level up your Spirit Gauge by 1 level.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Mirror Flower Stance I</div> <div class="pure-u-1-2">Spirit Release Full Moon Slash I</div>
<div class="pure-u-1-2">鏡花の構え I</div> <div class="pure-u-1-2">練気解放円月斬りⅠ</div>
<div class="pure-u">This Hunting Art involves taking a special guarding stance. If attacked while in this stance, you will parry it and strike with a counter!</div> <div class="pure-u">When this Hunting Art is activated, along with the Spirit Gauge reaching maximum, the Spirit Release Full Moon Slash will keep your Spirit Gauge at MAX for a limited time.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Sakura Spirit Slash I</div> <div class="pure-u-1-2">Mirror Flower Stance I</div>
<div class="pure-u-1-2">桜花気刃斬 I</div> <div class="pure-u-1-2">鏡花の構えⅠ</div>
<div class="pure-u">This Hunting Art involves taking a special guarding stance. If attacked while in this stance, you will parry it and strike with a counter!</div>
</div> </div>
@ -203,32 +228,33 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Round Force I</div> <div class="pure-u-1-2">Blade Dance I</div>
<div class="pure-u-1-2">ラウンドフォース I</div> <div class="pure-u-1-2">ブレイドダンスⅠ</div>
<div class="pure-u">A spin attack that slashes at targets surrounding you. During execution, you'll be invulnerable to monster attacks, making it an effective evasion technique.</div> <div class="pure-u">A powerful flurry of slashes, hitting 5 times with your sword.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Shoryugeki I</div> <div class="pure-u-1-2">Round Force I</div>
<div class="pure-u-1-2">昇竜撃 I</div> <div class="pure-u-1-2">ラウンドフォースⅠ</div>
<div class="pure-u">Smashes shield upwards after a slash attack. Fierce enough to Stun if it hits a monster's head.</div> <div class="pure-u">A spin attack that slashes at targets surrounding you. During execution, you'll be invulnerable to monster attacks, making it an effective evasion technique.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Blade Dance I</div> <div class="pure-u-1-2">Shoryugeki I</div>
<div class="pure-u-1-2">ブレイドダンス I</div> <div class="pure-u-1-2">昇竜撃Ⅰ</div>
<div class="pure-u">Smashes shield upwards after a slash attack. Fierce enough to Stun if it hits a monster's head.</div>
</div> </div>
@ -238,9 +264,9 @@
<div class="pure-u-1-2">Bloody Wind Top I</div> <div class="pure-u-1-2">Bloody Wind Top I</div>
<div class="pure-u-1-2">血風独楽 I</div> <div class="pure-u-1-2">血風独楽</div>
<div class="pure-u">A forward advancing combo that carves up your targets! You are able to change the direction of your advances during the move.</div> <div class="pure-u">A forward advancing combo that carves up your targets! You are able to change the direction of your advances twice during the move.</div>
</div> </div>
@ -249,7 +275,7 @@
<div class="pure-u-1-2">Soaring Heaven Splitter I</div> <div class="pure-u-1-2">Soaring Heaven Splitter I</div>
<div class="pure-u-1-2">天翔空破断 I</div> <div class="pure-u-1-2">天翔空破断</div>
<div class="pure-u">With this Hunter Art, utilize ledges to attack. Following the upward spinning slice, you will deal a severe blow.</div> <div class="pure-u">With this Hunter Art, utilize ledges to attack. Following the upward spinning slice, you will deal a severe blow.</div>
</div> </div>
@ -260,8 +286,9 @@
<div class="pure-u-1-2">Beast Mode: Ravenous Wolf I</div> <div class="pure-u-1-2">Beast Mode: Ravenous Wolf I</div>
<div class="pure-u-1-2">獣宿し【餓狼】 I</div> <div class="pure-u-1-2">獣宿し【餓狼】</div>
<div class="pure-u">Unleashing an inner power, you attack with fury with each attack hitting twice, greatly increasing their strength.</div>
</div> </div>
@ -269,22 +296,22 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Provoke I</div> <div class="pure-u-1-2">Spinning Meteor I</div>
<div class="pure-u-1-2">大挑発 I</div> <div class="pure-u-1-2">スピニングメテオⅠ</div>
<div class="pure-u">Provokes a monster and for a limited time it will be more likely that it focuses its offensive on you!</div> <div class="pure-u">Spin the Hammer around with tremendous force before striking down your target with a super-charged attack.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Spinning Meteor I</div> <div class="pure-u-1-2">Provoke I</div>
<div class="pure-u-1-2">スピニングメテオ I</div> <div class="pure-u-1-2">大挑発Ⅰ</div>
<div class="pure-u">Spin the Hammer around with tremendous force before striking down your target with a super-charged attack.</div> <div class="pure-u">Provokes a monster and for a limited time it will be more likely that it focuses its offensive on you!</div>
</div> </div>
@ -293,8 +320,9 @@
<div class="pure-u-1-2">Typhoon Trigger I</div> <div class="pure-u-1-2">Typhoon Trigger I</div>
<div class="pure-u-1-2">タイフーントリガー I</div> <div class="pure-u-1-2">タイフーントリガー</div>
<div class="pure-u">A fierce spinning attack, continuously spinning the hammer into a powerful swing.</div>
</div> </div>
@ -302,32 +330,33 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Sound Attack Tremor I</div> <div class="pure-u-1-2">Orchestra Soul I</div>
<div class="pure-u-1-2">音撃震 I</div> <div class="pure-u-1-2">オルケスタソウルⅠ</div>
<div class="pure-u">This Hunter Art involves playing the Hunting Horn with a pressurized shockwave! A very powerful attack!</div> <div class="pure-u">This Hunter Art will play all the different songs your Hunting Horn can play all at once!</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Full Orchestra I</div> <div class="pure-u-1-2">Sound Attack Tremor I</div>
<div class="pure-u-1-2">奏纏 I</div> <div class="pure-u-1-2">音撃震Ⅰ</div>
<div class="pure-u">For a limited duration, you will have the ability to play double notes without hitting a monster!</div> <div class="pure-u">This Hunter Art involves playing the Hunting Horn with a pressurized shockwave! A very powerful attack!</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Orchestra Soul I</div> <div class="pure-u-1-2">Full Orchestra I</div>
<div class="pure-u-1-2">オルケスタソウル I</div> <div class="pure-u-1-2">奏纏Ⅰ</div>
<div class="pure-u">For a limited duration, you will have the ability to play double notes without hitting a monster!</div>
</div> </div>
@ -337,7 +366,7 @@
<div class="pure-u-1-2">Shield Assault I</div> <div class="pure-u-1-2">Shield Assault I</div>
<div class="pure-u-1-2">シールドアサルト I</div> <div class="pure-u-1-2">シールドアサルト</div>
<div class="pure-u">Raise your shield and charge monsters while blocking. Capable of follow-up thrusts.</div> <div class="pure-u">Raise your shield and charge monsters while blocking. Capable of follow-up thrusts.</div>
</div> </div>
@ -346,21 +375,22 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Enraged Guard I</div> <div class="pure-u-1-2">Screw Thrust I</div>
<div class="pure-u-1-2">ガードレイジ I</div> <div class="pure-u-1-2">スクリュースラストⅠ</div>
<div class="pure-u">Raise your shield to absorb an attack's power. Block stronger attacks to absorb more power. Try it just before an attack hits you.</div> <div class="pure-u">Charging up a powerful attack, you thrust your lance forward creating a spiral shockwave.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Screw Thrust I</div> <div class="pure-u-1-2">Enraged Guard I</div>
<div class="pure-u-1-2">スクリュースラスト I</div> <div class="pure-u-1-2">ガードレイジⅠ</div>
<div class="pure-u">Raise your shield to absorb an attack's power. Block stronger attacks to absorb more power. Try it just before an attack hits you.</div>
</div> </div>
@ -370,7 +400,7 @@
<div class="pure-u-1-2">Supreme Mountain Wyvern's Fire I</div> <div class="pure-u-1-2">Supreme Mountain Wyvern's Fire I</div>
<div class="pure-u-1-2">覇山竜撃砲 I</div> <div class="pure-u-1-2">覇山竜撃砲</div>
<div class="pure-u">Utilizing explosive energies, unleashing a swirling dose of hellfire in this terrifying Wyvern's Fire attack!</div> <div class="pure-u">Utilizing explosive energies, unleashing a swirling dose of hellfire in this terrifying Wyvern's Fire attack!</div>
</div> </div>
@ -379,21 +409,22 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Wyvern's Breath</div> <div class="pure-u-1-2">Blast Dash I</div>
<div class="pure-u-1-2">竜の息吹 I</div> <div class="pure-u-1-2">ブラストダッシュⅠ</div>
<div class="pure-u">This Hunter Art brings the internal heat energy of the Gunlance to its highest point, allowing the heat gauge to stay at maximum for a limited time!</div> <div class="pure-u">You launch yourself by firing your Gunlance in the opposite direction, sending you flying at high speeds. Slamming your Gunlance down during this causes a lot of damage.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Blast Dash I</div> <div class="pure-u-1-2">Wyvern's Breath I</div>
<div class="pure-u-1-2">ブラストダッシュ I</div> <div class="pure-u-1-2">竜の息吹Ⅰ</div>
<div class="pure-u">This Hunter Art brings the internal heat energy of the Gunlance to its highest point, allowing the heat gauge to stay at maximum for a limited time!</div>
</div> </div>
@ -403,7 +434,7 @@
<div class="pure-u-1-2">Translash I</div> <div class="pure-u-1-2">Translash I</div>
<div class="pure-u-1-2">トランスラッシュ I</div> <div class="pure-u-1-2">トランスラッシュ</div>
<div class="pure-u">A combo of Axe Mode and Sword Mode strikes followed by an Elemental Discharge.</div> <div class="pure-u">A combo of Axe Mode and Sword Mode strikes followed by an Elemental Discharge.</div>
</div> </div>
@ -414,7 +445,7 @@
<div class="pure-u-1-2">Demon Sword Mode I</div> <div class="pure-u-1-2">Demon Sword Mode I</div>
<div class="pure-u-1-2">剣鬼形態 I</div> <div class="pure-u-1-2">剣鬼形態</div>
<div class="pure-u">Enhances the power inside your Sword Mode, granting it even more attack power.</div> <div class="pure-u">Enhances the power inside your Sword Mode, granting it even more attack power.</div>
</div> </div>
@ -425,8 +456,9 @@
<div class="pure-u-1-2">Energy Charge I</div> <div class="pure-u-1-2">Energy Charge I</div>
<div class="pure-u-1-2">エネルギーチャージ I</div> <div class="pure-u-1-2">エネルギーチャージ</div>
<div class="pure-u">Refills 80% of your Phial in either mode.</div>
</div> </div>
@ -436,7 +468,7 @@
<div class="pure-u-1-2">Energy Blade I</div> <div class="pure-u-1-2">Energy Blade I</div>
<div class="pure-u-1-2">エネルギーブレイド I</div> <div class="pure-u-1-2">エネルギーブレイド</div>
<div class="pure-u">Use the power charged in your phials to create a blade of energy. More phials means more power!</div> <div class="pure-u">Use the power charged in your phials to create a blade of energy. More phials means more power!</div>
</div> </div>
@ -447,9 +479,9 @@
<div class="pure-u-1-2">Over Limit I</div> <div class="pure-u-1-2">Over Limit I</div>
<div class="pure-u-1-2">オーバーリミット I</div> <div class="pure-u-1-2">オーバーリミット</div>
<div class="pure-u">Temporarily increase the maximum number of phials you can charge up.</div> <div class="pure-u">Temporarily increase the maximum number of phials you can charge up to 7.</div>
</div> </div>
@ -458,8 +490,9 @@
<div class="pure-u-1-2">Healing Bottle I</div> <div class="pure-u-1-2">Healing Bottle I</div>
<div class="pure-u-1-2">ヒーリングボトル I</div> <div class="pure-u-1-2">ヒーリングボトル</div>
<div class="pure-u">For a limited duration, your phials are changed to heal yourself and others around you when you preform shield related attacks.</div>
</div> </div>
@ -467,22 +500,22 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Insect Clad I</div> <div class="pure-u-1-2">Extract Hunter I</div>
<div class="pure-u-1-2">蟲纏い I</div> <div class="pure-u-1-2">エキスハンターⅠ</div>
<div class="pure-u">Attract insects that stay around you and protect you by attacking anything that draws near you.</div> <div class="pure-u">Send out your Kinsect with incredible velocity, allowing it to draw all 3 Extracts in one shot.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Extract Hunter I</div> <div class="pure-u-1-2">Insect Clad I</div>
<div class="pure-u-1-2">エキスハンター I</div> <div class="pure-u-1-2">蟲纏いⅠ</div>
<div class="pure-u">Send out your Kinsect with incredible velocity, allowing it to draw all 3 Extracts in one shot.</div> <div class="pure-u">Attract insects that stay around you and protect you by attacking anything that draws near you.</div>
</div> </div>
@ -491,8 +524,9 @@
<div class="pure-u-1-2">Soaring Insect Slash I</div> <div class="pure-u-1-2">Soaring Insect Slash I</div>
<div class="pure-u-1-2">飛翔蟲斬破 I</div> <div class="pure-u-1-2">飛翔蟲斬破</div>
<div class="pure-u">Slashes twice and then leaps using the Insect Glaive to strike down monsters. This Hunter Art is powered up greatly when used with the Insect Clad Hunter Art.</div>
</div> </div>
@ -502,7 +536,7 @@
<div class="pure-u-1-2">Bullet Geyser I</div> <div class="pure-u-1-2">Bullet Geyser I</div>
<div class="pure-u-1-2">バレットゲイザー I</div> <div class="pure-u-1-2">バレットゲイザー</div>
<div class="pure-u">Propel backward while leaving an explosive shot on the ground for the approaching monster to get blasted with.</div> <div class="pure-u">Propel backward while leaving an explosive shot on the ground for the approaching monster to get blasted with.</div>
</div> </div>
@ -511,21 +545,22 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Rapid Heaven I</div> <div class="pure-u-1-2">Full Load I</div>
<div class="pure-u-1-2">ラピッドヘブン I</div> <div class="pure-u-1-2">全弾装填Ⅰ</div>
<div class="pure-u">Allows you to rapid fire your rapid shots in fast succession until you run out.</div> <div class="pure-u">Loads all usable shots in your pouch into your Bowgun.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Full Load I</div> <div class="pure-u-1-2">Rapid Heaven I</div>
<div class="pure-u-1-2">全弾装填 I</div> <div class="pure-u-1-2">ラピッドヘブンⅠ</div>
<div class="pure-u">Allows you to rapid fire your rapid shots in fast succession until you run out.</div>
</div> </div>
@ -535,7 +570,7 @@
<div class="pure-u-1-2">Supernova I</div> <div class="pure-u-1-2">Supernova I</div>
<div class="pure-u-1-2">スーパーノヴァ I</div> <div class="pure-u-1-2">スーパーノヴァ</div>
<div class="pure-u">A special shot that results in a massive mid-air explosion that affects a wide area.</div> <div class="pure-u">A special shot that results in a massive mid-air explosion that affects a wide area.</div>
</div> </div>
@ -544,21 +579,22 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Load Gunpowder I</div> <div class="pure-u-1-2">Acceleration Shower I</div>
<div class="pure-u-1-2">火薬装填</div> <div class="pure-u-1-2">アクセルシャワーⅠ</div>
<div class="pure-u">Loads a special coating that increases the power of your shots.</div> <div class="pure-u">A special shower that gives your hunter increased movement speed, lighter recoil and faster reloading speed.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Acceleration Shower I</div> <div class="pure-u-1-2">Load Gunpowder I</div>
<div class="pure-u-1-2">アクセルシャワー I</div> <div class="pure-u-1-2">火薬装填Ⅰ</div>
<div class="pure-u">Loads a special coating that increases the power of your shots.</div>
</div> </div>
@ -566,32 +602,33 @@
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Acceleration Rain I</div> <div class="pure-u-1-2">Trinity Raven I</div>
<div class="pure-u-1-2">アクセルレイン I</div> <div class="pure-u-1-2">トリニティレイヴンⅠ</div>
<div class="pure-u">A special shower that gives your hunter increased movement speed and charging speed.</div> <div class="pure-u">Fires 3 arrows at once twice, then loads another 3 and charges them up before firing for high damage.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Blade Wire I</div> <div class="pure-u-1-2">Acceleration Rain I</div>
<div class="pure-u-1-2">ブレイドワイヤー I</div> <div class="pure-u-1-2">アクセルレインⅠ</div>
<div class="pure-u">Tie two arrows together with a wire and shoot them as a single shot that cuts like a blade.</div> <div class="pure-u">A special shower that gives your hunter increased movement speed and charging speed.</div>
</div> </div>
<div class="pure-g poogie-li"> <div class="pure-g poogie-li">
<div class="pure-u-1-2">Trinity Raven I</div> <div class="pure-u-1-2">Blade Wire I</div>
<div class="pure-u-1-2">トリニティレイヴン I</div> <div class="pure-u-1-2">ブレイドワイヤーⅠ</div>
<div class="pure-u">Tie two arrows together with a wire and shoot them as a single shot that cuts like a blade.</div>
</div> </div>
</div> </div>

@ -40,10 +40,10 @@
} }
.sharpness-bar { .sharpness-bar {
border: 1px #d3d3d3 solid; border: 1px #a9a9a9 solid;
min-width: 92px; min-width: 82px;
height: 10px; height: 10px;
background-color: #d3d3d3; background-color: #a9a9a9;
float: left; float: left;
clear: both; clear: both;
} }
@ -248,6 +248,9 @@
match_count += 1; match_count += 1;
set_sharpness_titles(data); set_sharpness_titles(data);
data["arc_type"] = null; data["arc_type"] = null;
data["sharpness_plus2"] = null;
data["sharpness_width"] = 1;
data["bug_type"] = null;
set_bow_values(data); set_bow_values(data);
set_horn_melodies_title(data); set_horn_melodies_title(data);
data["wtype_short"] = WEAPON_TYPE_ABBR[data["wtype"]]; data["wtype_short"] = WEAPON_TYPE_ABBR[data["wtype"]];

Loading…
Cancel
Save