From ca374fc036a9f458c538299cd6eabe28d7960ce8 Mon Sep 17 00:00:00 2001 From: Bryce Allen Date: Fri, 11 Dec 2015 23:42:37 -0600 Subject: [PATCH] add missing skills --- bin/parse-wikia-skills.py | 24 +++-- db/mhx_skill_list.json | 216 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 231 insertions(+), 9 deletions(-) diff --git a/bin/parse-wikia-skills.py b/bin/parse-wikia-skills.py index 076ea50..972f044 100755 --- a/bin/parse-wikia-skills.py +++ b/bin/parse-wikia-skills.py @@ -25,25 +25,24 @@ import requests #

Ammo Saver

弾薬節約 TREE_RE = re.compile('^]*>(?:)?([^<]*)(?:)?([^<]*)') +# Guard +1
ガード性能+1 SKILL_RE = re.compile( - ']*> ([^<]*)
(.*)') def parse_wikia_skill_trees(f): strees = [] skills = [] seen = set() - in_tree = False + in_tree = 0 while True: line = f.readline() if not line: break line = line.strip() if in_tree: - if line == TREE_END: - in_tree = False + if not line: + in_tree -= 1 continue m = SKILL_RE.match(line) if m: @@ -57,15 +56,22 @@ def parse_wikia_skill_trees(f): if stree["name"] not in seen: strees.append(stree) seen.add(stree["name"]) - in_tree = True + # three blank lines divides skill tree rows + in_tree = 3 return strees, skills def _main(): + if len(sys.argv) != 4: + print "Usage: %s infile out_strees.json out_skills.json" % sys.argv[0] with open(sys.argv[1]) as f: strees, skills = parse_wikia_skill_trees(f) - print json.dumps(strees, indent=2) - print json.dumps(skills, indent=2) + with open(sys.argv[2], "w") as f: + json.dump(strees, f, indent=2) + f.write("\n") + with open(sys.argv[3], "w") as f: + json.dump(skills, f, indent=2) + f.write("\n") if __name__ == '__main__': diff --git a/db/mhx_skill_list.json b/db/mhx_skill_list.json index bfe1b0b..6d8e6bc 100644 --- a/db/mhx_skill_list.json +++ b/db/mhx_skill_list.json @@ -3,6 +3,10 @@ "name_jp": "\u7832\u8853\u738b", "name": "Artillery Expert" }, + { + "name_jp": "\u7832\u8853\u5e2b", + "name": "Artillery Novice" + }, { "name_jp": "\u76d7\u307f\u7121\u52b9", "name": "Anti-Theft" @@ -11,10 +15,22 @@ "name_jp": "\u653b\u6483\u529bUP\u3010\u5927\u3011", "name": "Attack Up (L)" }, + { + "name_jp": "\u653b\u6483\u529bUP\u3010\u4e2d\u3011", + "name": "Attack Up (M)" + }, + { + "name_jp": "\u653b\u6483\u529bUP\u3010\u5c0f\u3011", + "name": "Attack Up (S)" + }, { "name_jp": "\u30d0\u30a4\u30aa\u30c9\u30af\u30bf\u30fc", "name": "Bio Master" }, + { + "name_jp": "\u7d30\u83cc\u7814\u7a76\u5bb6", + "name": "Bio Researcher" + }, { "name_jp": "\u7206\u7834\u30d3\u30f3\u8ffd\u52a0", "name": "Use Blast Coat" @@ -43,14 +59,26 @@ "name_jp": "\u5265\u304e\u53d6\u308a\u540d\u4eba", "name": "Carving Expert" }, + { + "name_jp": "\u5265\u304e\u53d6\u308a\u9244\u4eba", + "name": "Carving Pro" + }, { "name_jp": "\u304a\u5b88\u308a\u30cf\u30f3\u30bf\u30fc", "name": "Charm Chaser" }, + { + "name_jp": "\u304a\u5b88\u308a\u53ce\u96c6", + "name": "Charm Collector" + }, { "name_jp": "\u62e1\u6563\u5f3e\u5168LV\u8ffd\u52a0", "name": "Use Any Clust S" }, + { + "name_jp": "\u62e1\u6563\u5f3eLV1\u8ffd\u52a0", + "name": "Use Lv1 Clust S" + }, { "name_jp": "\u5bd2\u3055\u7121\u52b9", "name": "Cold Cancel" @@ -63,14 +91,26 @@ "name_jp": "\u8abf\u5408\u6210\u529f\u7387+45%", "name": "Combination +45%" }, + { + "name_jp": "\u8abf\u5408\u6210\u529f\u7387+20%", + "name": "Combination +20%" + }, { "name_jp": "\u4f53\u8853+2", "name": "Constitution +2" }, + { + "name_jp": "\u4f53\u8853+1", + "name": "Constitution +1" + }, { "name_jp": "\u5fb9\u7532\u69b4\u5f3e\u5168LV\u8ffd\u52a0", "name": "Use Any Crag S" }, + { + "name_jp": "\u5fb9\u7532\u69b4\u5f3eLV1\u8ffd\u52a0", + "name": "Use Lv1 Crag S" + }, { "name_jp": "\u629c\u5200\u8853\u3010\u6280\u3011", "name": "Critical Draw" @@ -95,6 +135,14 @@ "name_jp": "\u9632\u5fa1\u529bUP\u3010\u5927\u3011", "name": "Defense Up (L)" }, + { + "name_jp": "\u9632\u5fa1\u529bUP\u3010\u4e2d\u3011", + "name": "Defense Up (M)" + }, + { + "name_jp": "\u9632\u5fa1\u529bUP\u3010\u5c0f\u3011", + "name": "Defense Up (S)" + }, { "name_jp": "\u9244\u9762\u76ae", "name": "Iron Skin" @@ -107,14 +155,26 @@ "name_jp": "\u9f8d\u5c5e\u6027\u653b\u6483\u5f37\u5316+2", "name": "Dragon Atk +2" }, + { + "name_jp": "\u9f8d\u5c5e\u6027\u653b\u6483\u5f37\u5316+1", + "name": "Dragon Atk +1" + }, { "name_jp": "\u9f8d\u8010\u6027\u3010\u5927\u3011", "name": "Dragon Res +20" }, + { + "name_jp": "\u9f8d\u8010\u6027\u3010\u5c0f\u3011", + "name": "Dragon Res +15" + }, { "name_jp": "\u65e9\u98df\u3044+2", "name": "Speed Eating +2" }, + { + "name_jp": "\u65e9\u98df\u3044+1", + "name": "Speed Eating +1" + }, { "name_jp": "\u5c5e\u6027\u653b\u6483\u5f37\u5316", "name": "Element Atk Up" @@ -127,6 +187,10 @@ "name_jp": "\u56de\u907f\u6027\u80fd+2", "name": "Evasion +2" }, + { + "name_jp": "\u56de\u907f\u6027\u80fd+1", + "name": "Evasion +1" + }, { "name_jp": "\u6e1b\u6c17\u30d3\u30f3\u8ffd\u52a0", "name": "Use Exhaust Coat" @@ -135,6 +199,14 @@ "name_jp": "\u898b\u5207\u308a+3", "name": "Critical Eye +3" }, + { + "name_jp": "\u898b\u5207\u308a+2", + "name": "Critical Eye +2" + }, + { + "name_jp": "\u898b\u5207\u308a+1", + "name": "Critical Eye +1" + }, { "name_jp": "\u96c6\u4e2d", "name": "Focus" @@ -143,6 +215,14 @@ "name_jp": "\u6fc0\u904b", "name": "Miraculous Luck" }, + { + "name_jp": "\u5f37\u904b", + "name": "Great Luck" + }, + { + "name_jp": "\u5e78\u904b", + "name": "Good Luck" + }, { "name_jp": "\u5fc3\u773c", "name": "Mind's Eye" @@ -151,10 +231,18 @@ "name_jp": "\u706b\u5c5e\u6027\u653b\u6483\u5f37\u5316+2", "name": "Fire Atk +2" }, + { + "name_jp": "\u706b\u5c5e\u6027\u653b\u6483\u5f37\u5316+1", + "name": "Fire Atk +1" + }, { "name_jp": "\u706b\u8010\u6027\u3010\u5927\u3011", "name": "Fire Res +20" }, + { + "name_jp": "\u706b\u8010\u6027\u3010\u5c0f\u3011", + "name": "Fire Res +15" + }, { "name_jp": "\u7121\u6211\u306e\u5883\u5730", "name": "Antivirus" @@ -163,18 +251,34 @@ "name_jp": "\u63a1\u53d6+2", "name": "Gathering +2" }, + { + "name_jp": "\u63a1\u53d6+1", + "name": "Gathering +1" + }, { "name_jp": "\u529b\u306e\u89e3\u653e+2", "name": "Latent Power +2" }, + { + "name_jp": "\u529b\u306e\u89e3\u653e+1", + "name": "Latent Power +1" + }, { "name_jp": "\u62fe\u3044\u98df\u3044", "name": "Scavenger" }, + { + "name_jp": "\u307e\u3093\u3077\u304f", + "name": "Gourmand" + }, { "name_jp": "\u30ac\u30fc\u30c9\u6027\u80fd+2", "name": "Guard +2" }, + { + "name_jp": "\u30ac\u30fc\u30c9\u6027\u80fd+1", + "name": "Guard +1" + }, { "name_jp": "\u30ac\u30fc\u30c9\u5f37\u5316", "name": "Guard Boost" @@ -183,14 +287,26 @@ "name_jp": "\u6839\u6027", "name": "Guts" }, + { + "name_jp": "\u65ac\u308c\u5473\u30ec\u30d9\u30eb+1", + "name": "Sharpness +1" + }, { "name_jp": "\u4f53\u529b+50", "name": "Health +50" }, + { + "name_jp": "\u4f53\u529b+20", + "name": "Health +20" + }, { "name_jp": "\u9ad8\u7d1a\u8033\u6813", "name": "HG Earplugs" }, + { + "name_jp": "\u8033\u6813", + "name": "Earplugs" + }, { "name_jp": "\u6691\u3055\u7121\u52b9", "name": "Heat Cancel" @@ -203,14 +319,26 @@ "name_jp": "\u8179\u6e1b\u308a\u7121\u52b9", "name": "Negate Hunger" }, + { + "name_jp": "\u8179\u6e1b\u308a\u534a\u6e1b", + "name": "Halve Hunger" + }, { "name_jp": "\u6c37\u5c5e\u6027\u653b\u6483\u5f37\u5316+2", "name": "Ice Atk +2" }, + { + "name_jp": "\u6c37\u5c5e\u6027\u653b\u6483\u5f37\u5316+1", + "name": "Ice Atk +1" + }, { "name_jp": "\u6c37\u8010\u6027\u3010\u5927\u3011", "name": "Ice Res +20" }, + { + "name_jp": "\u6c37\u8010\u6027\u3010\u5c0f\u3011", + "name": "Ice Res +15" + }, { "name_jp": "KO\u8853", "name": "Knockout King" @@ -259,6 +387,10 @@ "name_jp": "\u6563\u5f3e\u5168LV\u8ffd\u52a0", "name": "Use Any Pellet S" }, + { + "name_jp": "\u6563\u5f3eLV1\u8ffd\u52a0", + "name": "Use Lv1 Pellet S" + }, { "name_jp": "\u6563\u5f3e\u30fb\u62e1\u6563\u77e2UP", "name": "Pellet/Spread Up" @@ -271,6 +403,10 @@ "name_jp": "\u8cab\u901a\u5f3e\u5168LV\u8ffd\u52a0", "name": "Use Any Pierce S" }, + { + "name_jp": "\u8cab\u901a\u5f3eLV1\u8ffd\u52a0", + "name": "Use Lv1 Pierce S" + }, { "name_jp": "\u8cab\u901a\u5f3e\u30fb\u8cab\u901a\u77e2UP", "name": "Pierce/Pierce Up" @@ -287,10 +423,22 @@ "name_jp": "\u706b\u4e8b\u5834\u529b+2", "name": "Adrenaline +2" }, + { + "name_jp": "\u706b\u4e8b\u5834\u529b+1", + "name": "Adrenaline +1" + }, + { + "name_jp": "\u5f37\u6483\u30d3\u30f3LV1\u8ffd\u52a0", + "name": "Use Lv1 Power Coat" + }, { "name_jp": "\u30d6\u30ec\u6291\u5236+2", "name": "Steadiness +2" }, + { + "name_jp": "\u30d6\u30ec\u6291\u5236+1", + "name": "Steadiness +1" + }, { "name_jp": "\u7cbe\u970a\u306e\u52a0\u8b77", "name": "Divine Blessing" @@ -299,6 +447,10 @@ "name_jp": "\u81ea\u52d5\u30de\u30fc\u30ad\u30f3\u30b0", "name": "Autotracker" }, + { + "name_jp": "\u63a2\u77e5", + "name": "Detect" + }, { "name_jp": "\u629c\u5200\u8853\u3010\u529b\u3011", "name": "Punishing Draw" @@ -315,10 +467,22 @@ "name_jp": "\u56de\u5fa9\u901f\u5ea6+2", "name": "Recovery Spd +2" }, + { + "name_jp": "\u56de\u5fa9\u901f\u5ea6+1", + "name": "Recovery Spd +1" + }, { "name_jp": "\u53cd\u52d5\u8efd\u6e1b+3", "name": "Recoil Down +3" }, + { + "name_jp": "\u53cd\u52d5\u8efd\u6e1b+2", + "name": "Recoil Down +2" + }, + { + "name_jp": "\u53cd\u52d5\u8efd\u6e1b+1", + "name": "Recoil Down +1" + }, { "name_jp": "\u9023\u767a\u6570+1", "name": "Bonus Shot" @@ -327,6 +491,14 @@ "name_jp": "\u88c5\u586b\u901f\u5ea6+3", "name": "Reload Speed +3" }, + { + "name_jp": "\u88c5\u586b\u901f\u5ea6+2", + "name": "Reload Speed +2" + }, + { + "name_jp": "\u88c5\u586b\u901f\u5ea6+1", + "name": "Reload Speed +1" + }, { "name_jp": "\u96a0\u5bc6", "name": "Sneak" @@ -359,6 +531,10 @@ "name_jp": "\u6311\u6226\u8005+2", "name": "Challenger +2" }, + { + "name_jp": "\u6311\u6226\u8005+1", + "name": "Challenger +1" + }, { "name_jp": "\u30b9\u30bf\u30df\u30ca\u596a\u53d6", "name": "Stamina Thief" @@ -375,10 +551,18 @@ "name_jp": "\u72b6\u614b\u7570\u5e38\u653b\u6483+2", "name": "Status Atk +2" }, + { + "name_jp": "\u72b6\u614b\u7570\u5e38\u653b\u6483+1", + "name": "Status Atk +1" + }, { "name_jp": "\u6c17\u7d76\u7121\u52b9", "name": "Negate Stun" }, + { + "name_jp": "\u6c17\u7d76\u78ba\u7387\u534a\u6e1b", + "name": "Halve Stun" + }, { "name_jp": "\u4e0d\u5c48", "name": "Fortify" @@ -399,14 +583,26 @@ "name_jp": "\u96f7\u5c5e\u6027\u653b\u6483\u5f37\u5316+2", "name": "Thunder Atk +2" }, + { + "name_jp": "\u96f7\u5c5e\u6027\u653b\u6483\u5f37\u5316+1", + "name": "Thunder Atk +1" + }, { "name_jp": "\u96f7\u8010\u6027\u3010\u5927\u3011", "name": "Thunder Res +20" }, + { + "name_jp": "\u96f7\u8010\u6027\u3010\u5c0f\u3011", + "name": "Thunder Res +15" + }, { "name_jp": "\u6355\u7372\u540d\u4eba", "name": "Capture Master" }, + { + "name_jp": "\u6355\u7372\u9054\u4eba", + "name": "Capture Expert" + }, { "name_jp": "\u904b\u642c\u306e\u9054\u4eba", "name": "Pro Transporter" @@ -423,20 +619,40 @@ "name_jp": "\u6c34\u5c5e\u6027\u653b\u6483\u5f37\u5316+2", "name": "Water Atk +2" }, + { + "name_jp": "\u6c34\u5c5e\u6027\u653b\u6483\u5f37\u5316+1", + "name": "Water Atk +1" + }, { "name_jp": "\u6c34\u8010\u6027\u3010\u5927\u3011", "name": "Water Res +20" }, + { + "name_jp": "\u6c34\u8010\u6027\u3010\u5c0f\u3011", + "name": "Water Res +15" + }, { "name_jp": "\u795e\u306e\u6c17\u307e\u3050\u308c", "name": "Divine Whim" }, + { + "name_jp": "\u7cbe\u970a\u306e\u6c17\u307e\u3050\u308c", + "name": "Spirit's Whim" + }, { "name_jp": "\u5e83\u57df\u5316+2", "name": "Wide-Range +2" }, + { + "name_jp": "\u5e83\u57df\u5316+1", + "name": "Wide-Range +1" + }, { "name_jp": "\u98a8\u5727\u3010\u5927\u3011\u7121\u52b9", "name": "Windproof (Hi)" + }, + { + "name_jp": "\u98a8\u5727\u3010\u5c0f\u3011\u7121\u52b9", + "name": "Windproof (Lo)" } ]