commit old updates for mhw, gu

This commit is contained in:
Bryce Allen
2021-03-04 11:12:35 -05:00
parent 084870858e
commit b4c9023a32
12 changed files with 1692 additions and 19 deletions

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env python #!/usr/bin/env python2
""" """
Script to generate static rewards files for all items. Script to generate static rewards files for all items.
""" """
@@ -33,11 +33,16 @@ if __name__ == '__main__':
err_out = get_utf8_writer(sys.stderr) err_out = get_utf8_writer(sys.stderr)
# TODO: doesn't work if script is symlinked # TODO: doesn't work if script is symlinked
db_path = os.path.dirname(sys.argv[0]) #db_path = os.path.dirname(sys.argv[0])
db_path = os.path.join(db_path, "..", "db", "mh4u.db") #db_path = os.path.join(db_path, "..", "db", "mh4u.db")
db = MHDB(db_path) # Determinen game from MHAPI_GAME and path based on game.
db = MHDB()
items = db.get_items(rewards.ITEM_TYPES) if db.game == "gu":
items = db.get_items(exclude_types=[
"Palico Armor", "Palico Weapon", "Weapon", "Armor", "Decoration"])
else:
items = db.get_items(rewards.ITEM_TYPES)
# write all names json to /items.json # write all names json to /items.json
items_file = os.path.join(outdir, "items.json") items_file = os.path.join(outdir, "items.json")

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env python #!/usr/bin/env python2
import sys import sys
import argparse import argparse
@@ -203,6 +203,9 @@ def parse_args(argv):
parser.add_argument("-g", "--monster-hunter-gen", action="store_true", parser.add_argument("-g", "--monster-hunter-gen", action="store_true",
default=False, default=False,
help="Assume weapons are true attack, use MHGen values") help="Assume weapons are true attack, use MHGen values")
parser.add_argument("--mhw", "--monster-hunter-world", action="store_true",
default=False,
help="Adjusted attack, use MHWorld values")
parser.add_argument("-m", "--match", nargs="*", parser.add_argument("-m", "--match", nargs="*",
help="WEAPON_TYPE,ELEMENT_OR_STATUS_OR_RAW" help="WEAPON_TYPE,ELEMENT_OR_STATUS_OR_RAW"
+" Include all matching weapons in their final form." +" Include all matching weapons in their final form."
@@ -392,8 +395,11 @@ def main():
comps = True comps = True
else: else:
comps = False comps = False
db = MHDB(game="gen", include_item_components=comps) db = MHDB(game="gu", include_item_components=comps)
game_uses_true_raw = True game_uses_true_raw = True
elif args.monster_hunter_world:
db = MHDBX(game="mhw")
game_uses_true_raw = False
else: else:
db = MHDB(game="4u") db = MHDB(game="4u")
motiondb = MotionValueDB(_pathfix.motion_values_path) motiondb = MotionValueDB(_pathfix.motion_values_path)

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env python #!/usr/bin/env python2
import os import os
import json import json

BIN
db/mhgu.db Normal file

Binary file not shown.

View File

@@ -0,0 +1,974 @@
{
"Tamamitsune" : {
"Torso" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 20,
"Thunder" : 10,
"Fire" : 5,
"Water" : 0
},
"Tail" : {
"Impact" : 33,
"Cut" : 43,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 40,
"Thunder" : 10,
"Fire" : 5,
"Water" : 0
},
"Head Fin" : {
"Impact" : 43,
"Cut" : 43,
"Dragon" : 8,
"Ice" : 5,
"Shot" : 40,
"Thunder" : 10,
"Fire" : 8,
"Water" : 0
},
"Hind Legs" : {
"Impact" : 38,
"Cut" : 38,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 25,
"Thunder" : 10,
"Fire" : 5,
"Water" : 0
},
"Back Fin" : {
"Impact" : 43,
"Cut" : 43,
"Dragon" : 10,
"Ice" : 5,
"Shot" : 45,
"Thunder" : 15,
"Fire" : 8,
"Water" : 0
},
"_breaks" : [
"Head Fin",
"Back Fin",
"Foreleg",
"Tail"
],
"Foreleg" : {
"Impact" : 21,
"Cut" : 21,
"Dragon" : 30,
"Ice" : 15,
"Shot" : 10,
"Thunder" : 35,
"Fire" : 5,
"Water" : 0
},
"Head" : {
"Impact" : 63,
"Cut" : 63,
"Dragon" : 8,
"Ice" : 5,
"Shot" : 45,
"Thunder" : 10,
"Fire" : 5,
"Water" : 0
}
},
"Dinovaldo" : {
"Torso" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 10,
"Ice" : 10,
"Shot" : 20,
"Thunder" : 5,
"Fire" : 0,
"Water" : 20
},
"Throat" : {
"Impact" : 70,
"Cut" : 70,
"Dragon" : 15,
"Ice" : 15,
"Shot" : 30,
"Thunder" : 15,
"Fire" : 0,
"Water" : 30
},
"Tail" : {
"Impact" : 36,
"Cut" : 36,
"Dragon" : 15,
"Ice" : 15,
"Shot" : 20,
"Thunder" : 10,
"Fire" : 0,
"Water" : 25
},
"Hind Legs" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 20,
"Thunder" : 5,
"Fire" : 0,
"Water" : 15
},
"_breaks" : [
"Head",
"Forelegs",
"Back",
"Tail"
],
"Head" : {
"Impact" : 65,
"Cut" : 65,
"Dragon" : 15,
"Ice" : 15,
"Shot" : 50,
"Thunder" : 10,
"Fire" : 0,
"Water" : 25
},
"Tail (Blade)" : {
"Impact" : 22,
"Cut" : 22,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 22,
"Thunder" : 5,
"Fire" : 0,
"Water" : 20
},
"Back" : {
"Impact" : 36,
"Cut" : 36,
"Dragon" : 10,
"Ice" : 10,
"Shot" : 45,
"Thunder" : 5,
"Fire" : 0,
"Water" : 20
},
"Forelegs" : {
"Impact" : 41,
"Cut" : 41,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 20,
"Thunder" : 5,
"Fire" : 0,
"Water" : 15
}
},
"Lagiacrus" : {
"Body" : {
"Impact" : 35,
"Cut" : 35,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 20,
"Thunder" : 0,
"Fire" : 15,
"Water" : 0
},
"Tail" : {
"Impact" : 35,
"Cut" : 30,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 15,
"Water" : 0
},
"_breaks" : [
"Head",
"Breast",
"Back",
"Legs",
"Tail"
],
"Breast" : {
"Impact" : 40,
"Cut" : 45,
"Dragon" : 10,
"Ice" : 10,
"Shot" : 35,
"Thunder" : 0,
"Fire" : 20,
"Water" : 0
},
"Head" : {
"Impact" : 40,
"Cut" : 40,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 40,
"Thunder" : 0,
"Fire" : 15,
"Water" : 0
},
"Legs" : {
"Impact" : 25,
"Cut" : 27,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 10,
"Thunder" : 0,
"Fire" : 15,
"Water" : 0
},
"Back" : {
"Impact" : 40,
"Cut" : 25,
"Dragon" : 15,
"Ice" : 15,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 25,
"Water" : 0
}
},
"Lavasioth" : {
"Feet" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 10,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"Stomach" : {
"Impact" : 55,
"Cut" : 55,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 40,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"Tail" : {
"Impact" : 35,
"Cut" : 35,
"Dragon" : 5,
"Ice" : 20,
"Shot" : 25,
"Thunder" : 20,
"Fire" : 0,
"Water" : 30
},
"Neck" : {
"Impact" : 43,
"Cut" : 43,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 35,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"_breaks" : [
"Head",
"Back"
],
"Wings" : {
"Impact" : 35,
"Cut" : 35,
"Dragon" : 5,
"Ice" : 20,
"Shot" : 20,
"Thunder" : 20,
"Fire" : 0,
"Water" : 30
},
"Head" : {
"Impact" : 63,
"Cut" : 63,
"Dragon" : 5,
"Ice" : 10,
"Shot" : 45,
"Thunder" : 10,
"Fire" : 0,
"Water" : 10
},
"Back" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 15,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
}
},
"Agnaktor" : {
"Fin" : {
"Impact" : 15,
"Cut" : 15,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 10,
"Water" : 20
},
"Torso" : {
"Impact" : 15,
"Cut" : 15,
"Dragon" : 0,
"Ice" : 20,
"Shot" : 15,
"Thunder" : 10,
"Fire" : 10,
"Water" : 25
},
"Tail" : {
"Impact" : 24,
"Cut" : 20,
"Dragon" : 20,
"Ice" : 10,
"Shot" : 20,
"Thunder" : 10,
"Fire" : 5,
"Water" : 15
},
"Chest" : {
"Impact" : 15,
"Cut" : 15,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 10,
"Water" : 20
},
"Hind Legs" : {
"Impact" : 15,
"Cut" : 15,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 15,
"Thunder" : 5,
"Fire" : 10,
"Water" : 20
},
"Neck" : {
"Impact" : 15,
"Cut" : 15,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 10,
"Water" : 15
},
"_breaks" : [
"Head",
"Chest",
"Forelegs",
"Fin"
],
"Head" : {
"Impact" : 15,
"Cut" : 15,
"Dragon" : 0,
"Ice" : 25,
"Shot" : 15,
"Thunder" : 15,
"Fire" : 10,
"Water" : 30
},
"Forelegs" : {
"Impact" : 15,
"Cut" : 15,
"Dragon" : 0,
"Ice" : 20,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 10,
"Water" : 20
}
},
"Blangonga" : {
"Torso" : {
"Impact" : 50,
"Cut" : 45,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 40,
"Thunder" : 15,
"Fire" : 20,
"Water" : 5
},
"Tail" : {
"Impact" : 40,
"Cut" : 50,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 25,
"Thunder" : 15,
"Fire" : 15,
"Water" : 5
},
"_breaks" : [
"Head",
"Tail"
],
"Arms" : {
"Impact" : 40,
"Cut" : 45,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 30,
"Thunder" : 15,
"Fire" : 15,
"Water" : 5
},
"Head" : {
"Impact" : 60,
"Cut" : 60,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 60,
"Thunder" : 15,
"Fire" : 30,
"Water" : 5
},
"Legs" : {
"Impact" : 40,
"Cut" : 45,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 30,
"Thunder" : 15,
"Fire" : 15,
"Water" : 5
}
},
"Gamuto" : {
"Torso" : {
"Impact" : 34,
"Cut" : 25,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 19,
"Thunder" : 5,
"Fire" : 5,
"Water" : 0
},
"Trunk" : {
"Impact" : 54,
"Cut" : 63,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 45,
"Thunder" : 10,
"Fire" : 25,
"Water" : 5
},
"Tail" : {
"Impact" : 35,
"Cut" : 40,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 38,
"Thunder" : 10,
"Fire" : 5,
"Water" : 5
},
"Hind Leg" : {
"Impact" : 38,
"Cut" : 36,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 35,
"Thunder" : 5,
"Fire" : 15,
"Water" : 7
},
"_breaks" : [
"Head",
"Trunk",
"Hind Leg"
],
"Foreleg" : {
"Impact" : 38,
"Cut" : 36,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 35,
"Thunder" : 5,
"Fire" : 15,
"Water" : 7
},
"Head" : {
"Impact" : 60,
"Cut" : 55,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 40,
"Thunder" : 15,
"Fire" : 10,
"Water" : 0
}
},
"Hororohoruru" : {
"Torso" : {
"Impact" : 40,
"Cut" : 40,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 40,
"Thunder" : 5,
"Fire" : 5,
"Water" : 10
},
"Tail" : {
"Impact" : 45,
"Cut" : 50,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 35,
"Thunder" : 5,
"Fire" : 10,
"Water" : 15
},
"Feet" : {
"Impact" : 30,
"Cut" : 35,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 30,
"Thunder" : 5,
"Fire" : 5,
"Water" : 10
},
"_breaks" : [
"Head",
"Wing Claws",
"Tail"
],
"Wings" : {
"Impact" : 35,
"Cut" : 35,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 30,
"Thunder" : 5,
"Fire" : 5,
"Water" : 10
},
"Head" : {
"Impact" : 50,
"Cut" : 55,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 55,
"Thunder" : 5,
"Fire" : 10,
"Water" : 15
},
"Wing Claws" : {
"Impact" : 20,
"Cut" : 20,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 20,
"Thunder" : 10,
"Fire" : 10,
"Water" : 20
}
},
"Alatreon" : {
"Torso" : {
"Impact" : 30,
"Cut" : 35,
"Dragon" : 5,
"Ice" : 15,
"Shot" : 20,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"Tail" : {
"Impact" : 25,
"Cut" : 30,
"Dragon" : 5,
"Ice" : 10,
"Shot" : 40,
"Thunder" : 5,
"Fire" : 0,
"Water" : 5
},
"Feet" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 15,
"Shot" : 20,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"Neck" : {
"Impact" : 35,
"Cut" : 40,
"Dragon" : 5,
"Ice" : 15,
"Shot" : 35,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"_breaks" : [
"Head",
"Wings",
"Feet",
"Tail"
],
"Wings" : {
"Impact" : 21,
"Cut" : 21,
"Dragon" : 5,
"Ice" : 10,
"Shot" : 10,
"Thunder" : 5,
"Fire" : 0,
"Water" : 5
},
"Head" : {
"Impact" : 65,
"Cut" : 60,
"Dragon" : 5,
"Ice" : 20,
"Shot" : 55,
"Thunder" : 5,
"Fire" : 0,
"Water" : 15
}
},
"Royal Ludroth" : {
"Tail" : {
"Impact" : 42,
"Cut" : 42,
"Dragon" : 0,
"Ice" : 10,
"Shot" : 40,
"Thunder" : 5,
"Fire" : 20,
"Water" : 0
},
"Front Legs" : {
"Impact" : 35,
"Cut" : 30,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 25,
"Thunder" : 10,
"Fire" : 15,
"Water" : 0
},
"_breaks" : [
"Head",
"Mane",
"Tail"
],
"Back Legs" : {
"Impact" : 30,
"Cut" : 35,
"Dragon" : 0,
"Ice" : 10,
"Shot" : 30,
"Thunder" : 10,
"Fire" : 15,
"Water" : 0
},
"Mane" : {
"Impact" : 42,
"Cut" : 45,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 45,
"Thunder" : 15,
"Fire" : 20,
"Water" : 0
},
"Head" : {
"Impact" : 50,
"Cut" : 42,
"Dragon" : 5,
"Ice" : 10,
"Shot" : 50,
"Thunder" : 15,
"Fire" : 20,
"Water" : 0
},
"Back" : {
"Impact" : 45,
"Cut" : 30,
"Dragon" : 5,
"Ice" : 10,
"Shot" : 30,
"Thunder" : 10,
"Fire" : 30,
"Water" : 0
},
"Belly" : {
"Impact" : 45,
"Cut" : 50,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 40,
"Thunder" : 10,
"Fire" : 25,
"Water" : 0
}
},
"Volvidon" : {
"Torso" : {
"Impact" : 30,
"Cut" : 38,
"Dragon" : 0,
"Ice" : 5,
"Shot" : 30,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"Stomach 75" : {
"Impact" : 10,
"Cut" : 75,
"Dragon" : 0,
"Ice" : 0,
"Shot" : 0,
"Thunder" : 0,
"Fire" : 0,
"Water" : 0
},
"_breaks" : "Back",
"Rolling" : {
"Impact" : 45,
"Cut" : 45,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 40,
"Thunder" : 10,
"Fire" : 0,
"Water" : 20
},
"Rear" : {
"Impact" : 36,
"Cut" : 36,
"Dragon" : 0,
"Ice" : 10,
"Shot" : 20,
"Thunder" : 5,
"Fire" : 0,
"Water" : 10
},
"Head" : {
"Impact" : 50,
"Cut" : 55,
"Dragon" : 0,
"Ice" : 20,
"Shot" : 45,
"Thunder" : 15,
"Fire" : 0,
"Water" : 30
},
"Back" : {
"Impact" : 45,
"Cut" : 45,
"Dragon" : 0,
"Ice" : 15,
"Shot" : 50,
"Thunder" : 10,
"Fire" : 0,
"Water" : 20
},
"Forelegs" : {
"Impact" : 30,
"Cut" : 30,
"Dragon" : 0,
"Ice" : 10,
"Shot" : 25,
"Thunder" : 10,
"Fire" : 0,
"Water" : 15
}
},
"Duramboros" : {
"Torso" : {
"Impact" : 35,
"Cut" : 25,
"Dragon" : 10,
"Ice" : 15,
"Shot" : 25,
"Thunder" : 10,
"Fire" : 15,
"Water" : 5
},
"Tail" : {
"Impact" : 40,
"Cut" : 32,
"Dragon" : 10,
"Ice" : 5,
"Shot" : 50,
"Thunder" : 5,
"Fire" : 10,
"Water" : 5
},
"Tail (Tip)" : {
"Impact" : 43,
"Cut" : 24,
"Dragon" : 20,
"Ice" : 15,
"Shot" : 40,
"Thunder" : 5,
"Fire" : 20,
"Water" : 5
},
"Hind Legs" : {
"Impact" : 44,
"Cut" : 44,
"Dragon" : 5,
"Ice" : 10,
"Shot" : 35,
"Thunder" : 5,
"Fire" : 10,
"Water" : 0
},
"_breaks" : [
"Horn",
"Hump",
"Tail"
],
"Hump" : {
"Impact" : 60,
"Cut" : 60,
"Dragon" : 10,
"Ice" : 15,
"Shot" : 35,
"Thunder" : 0,
"Fire" : 20,
"Water" : 5
},
"Head" : {
"Impact" : 21,
"Cut" : 23,
"Dragon" : 0,
"Ice" : 20,
"Shot" : 20,
"Thunder" : 35,
"Fire" : 35,
"Water" : 10
},
"Horn" : {
"Impact" : 24,
"Cut" : 43,
"Dragon" : 5,
"Ice" : 5,
"Shot" : 35,
"Thunder" : 15,
"Fire" : 10,
"Water" : 5
},
"Forelegs" : {
"Impact" : 30,
"Cut" : 32,
"Dragon" : 10,
"Ice" : 10,
"Shot" : 25,
"Thunder" : 10,
"Fire" : 15,
"Water" : 0
}
},
"Raizekusu" : {
"Tail Tip" : {
"Impact" : 43,
"Cut" : 43,
"Dragon" : 5,
"Ice" : 25,
"Shot" : 25,
"Thunder" : 0,
"Fire" : 10,
"Water" : 15
},
"Tail" : {
"Impact" : 35,
"Cut" : 35,
"Dragon" : 5,
"Ice" : 20,
"Shot" : 20,
"Thunder" : 0,
"Fire" : 10,
"Water" : 10
},
"Feet" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 15,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 10,
"Water" : 10
},
"Crest" : {
"Impact" : 55,
"Cut" : 55,
"Dragon" : 5,
"Ice" : 10,
"Shot" : 30,
"Thunder" : 0,
"Fire" : 6,
"Water" : 6
},
"_breaks" : [
"Crest",
"Back",
"Wings",
"Tail"
],
"Wings" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 15,
"Shot" : 25,
"Thunder" : 0,
"Fire" : 6,
"Water" : 10
},
"Head" : {
"Impact" : 24,
"Cut" : 24,
"Dragon" : 5,
"Ice" : 20,
"Shot" : 15,
"Thunder" : 0,
"Fire" : 10,
"Water" : 10
},
"Back" : {
"Impact" : 25,
"Cut" : 25,
"Dragon" : 5,
"Ice" : 7,
"Shot" : 20,
"Thunder" : 0,
"Fire" : 7,
"Water" : 7
}
}
}

632
db/mhw/monster_list.json Normal file
View File

@@ -0,0 +1,632 @@
[
{
"title_jp": "\u708e\u6208\u7adc",
"href": "/wiki/Agnaktor",
"name": "Agnaktor",
"name_jp": "\u30a2\u30b0\u30ca\u30b3\u30c8\u30eb"
},
{
"title_jp": "\u8987\u7adc",
"href": "/wiki/Akantor",
"name": "Akantor",
"name_jp": "\u30a2\u30ab\u30e0\u30c8\u30eb\u30e0"
},
{
"title_jp": "\u9752\u718a\u7363",
"href": "/wiki/Arzuros",
"name": "Arzuros",
"name_jp": "\u30a2\u30aa\u30a2\u30b7\u30e9"
},
{
"title_jp": "\u30af\u30ea\u30e0\u30be\u30f3\u30fb\u30d9\u30a2\u30fc",
"href": "/wiki/Crimson_Helmet_Arzuros",
"name": "Crimson Helmet Arzuros",
"name_jp": "\u7d05\u515c\u30a2\u30aa\u30a2\u30b7\u30e9"
},
{
"title_jp": "\u96ea\u7345\u5b50",
"href": "/wiki/Blangonga",
"name": "Blangonga",
"name_jp": "\u30c9\u30c9\u30d6\u30e9\u30f3\u30b4"
},
{
"title_jp": "\u7815\u7adc",
"href": "/wiki/Brachydios",
"name": "Brachydios",
"name_jp": "\u30d6\u30e9\u30ad\u30c7\u30a3\u30aa\u30b9"
},
{
"title_jp": "\u5927\u732a",
"href": "/wiki/Bulldrome",
"name": "Bulldrome",
"name_jp": "\u30c9\u30b9\u30d5\u30a1\u30f3\u30b4"
},
{
"title_jp": "\u7802\u7adc",
"href": "/wiki/Cephadrome",
"name": "Cephadrome",
"name_jp": "\u30c9\u30b9\u30ac\u30ec\u30aa\u30b9"
},
{
"title_jp": "\u76fe\u87f9",
"href": "/wiki/Daimyo_Hermitaur",
"name": "Daimyo Hermitaur",
"name_jp": "\u30c0\u30a4\u30df\u30e7\u30a6\u30b6\u30b6\u30df"
},
{
"title_jp": "\u87f9\u57ce\u58c1",
"href": "/wiki/Spearbreaker_Daimyo_Hermitaur",
"name": "Spearbreaker Daimyo Hermitaur",
"name_jp": "\u77db\u7815\u30c0\u30a4\u30df\u30e7\u30a6\u30b6\u30b6\u30df"
},
{
"title_jp": "\u6050\u66b4\u7adc",
"href": "/wiki/Deviljho",
"name": "Deviljho",
"name_jp": "\u30a4\u30d3\u30eb\u30b8\u30e7\u30fc"
},
{
"title_jp": "\u6050\u66b4\u7adc",
"href": "/wiki/Savage_Deviljho",
"name": "Savage Deviljho",
"name_jp": "\u6012\u308a\u55b0\u3089\u3046\u30a4\u30d3\u30eb\u30b8\u30e7\u30fc"
},
{
"title_jp": "\u65ac\u7adc",
"href": "/wiki/Dinovaldo",
"name": "Dinovaldo",
"name_jp": "\u30c7\u30a3\u30ce\u30d0\u30eb\u30c9"
},
{
"title_jp": "\u71fc\u6ec5\u5203",
"href": "/wiki/Incinerating_Blade_Dinovaldo",
"name": "Incinerating Blade Dinovaldo",
"name_jp": "\u71fc\u6ec5\u5203\u30c7\u30a3\u30ce\u30d0\u30eb\u30c9"
},
{
"title_jp": "\u5c3e\u69cc\u7adc",
"href": "/wiki/Duramboros",
"name": "Duramboros",
"name_jp": "\u30c9\u30dc\u30eb\u30d9\u30eb\u30af"
},
{
"title_jp": "\u5de8\u7363",
"href": "/wiki/Gamuto",
"name": "Gamuto",
"name_jp": "\u30ac\u30e0\u30fc\u30c8"
},
{
"title_jp": "",
"href": "/wiki/Gendrome",
"name": "Gendrome",
"name_jp": "\u30c9\u30b9\u30b2\u30cd\u30dd\u30b9"
},
{
"title_jp": "\u9ed2\u8755\u7adc",
"href": "/wiki/Gore_Magala",
"name": "Gore Magala",
"name_jp": "\u30b4\u30a2\u30fb\u30de\u30ac\u30e9"
},
{
"title_jp": "\u8df3\u72d7\u7adc",
"href": "/wiki/Great_Maccau",
"name": "Great Maccau",
"name_jp": "\u30c9\u30b9\u30de\u30c3\u30ab\u30a9"
},
{
"title_jp": "\u6bd2\u602a\u9ce5",
"href": "/wiki/Gypceros",
"name": "Gypceros",
"name_jp": "\u30b2\u30ea\u30e7\u30b9"
},
{
"title_jp": "\u591c\u9ce5",
"href": "/wiki/Hororohoruru",
"name": "Hororohoruru",
"name_jp": "\u30db\u30ed\u30ed\u30db\u30eb\u30eb"
},
{
"title_jp": "",
"href": "/wiki/Iodrome",
"name": "Iodrome",
"name_jp": "\u30c9\u30b9\u30a4\u30fc\u30aa\u30b9"
},
{
"title_jp": "\u5947\u733f\u72d0",
"href": "/wiki/Kecha_Wacha",
"name": "Kecha Wacha",
"name_jp": "\u30b1\u30c1\u30e3\u30ef\u30c1\u30e3"
},
{
"title_jp": "\u5e2f\u96fb\u98db\u7adc",
"href": "/wiki/Khezu",
"name": "Khezu",
"name_jp": "\u30d5\u30eb\u30d5\u30eb"
},
{
"title_jp": "\u6d77\u7adc",
"href": "/wiki/Lagiacrus",
"name": "Lagiacrus",
"name_jp": "\u30e9\u30ae\u30a2\u30af\u30eb\u30b9"
},
{
"title_jp": "\u767d\u514e\u7363",
"href": "/wiki/Lagombi",
"name": "Lagombi",
"name_jp": "\u30a6\u30eb\u30af\u30b9\u30b9"
},
{
"title_jp": "\u5927\u96ea\u4e3b",
"href": "/wiki/Heavy_Snow_Lord_Lagombi",
"name": "Heavy Snow Lord Lagombi",
"name_jp": "\u5927\u96ea\u4e3b\u30a6\u30eb\u30af\u30b9\u30b9"
},
{
"title_jp": "\u6eb6\u5ca9\u7adc",
"href": "/wiki/Lavasioth",
"name": "Lavasioth",
"name_jp": "\u30f4\u30a9\u30eb\u30ac\u30ce\u30b9"
},
{
"title_jp": "\u7d5e\u86c7\u7adc",
"href": "/wiki/Najarala",
"name": "Najarala",
"name_jp": "\u30ac\u30e9\u30e9\u30a2\u30b8\u30e3\u30e9"
},
{
"title_jp": "\u8fc5\u7adc",
"href": "/wiki/Nargacuga",
"name": "Nargacuga",
"name_jp": "\u30ca\u30eb\u30ac\u30af\u30eb\u30ac"
},
{
"title_jp": "\u98a8\u65ac\u308b\u767d\u5f71",
"href": "/wiki/White_Gale_Nargacuga",
"name": "White Gale Nargacuga",
"name_jp": "\u767d\u75be\u98a8\u30ca\u30eb\u30ac\u30af\u30eb\u30ac"
},
{
"title_jp": "\u6f5c\u53e3\u7adc",
"href": "/wiki/Nibelsnarf",
"name": "Nibelsnarf",
"name_jp": "\u30cf\u30d7\u30eb\u30dc\u30c3\u30ab"
},
{
"title_jp": "\u6c34\u7adc",
"href": "/wiki/Plesioth",
"name": "Plesioth",
"name_jp": "\u30ac\u30ce\u30c8\u30c8\u30b9"
},
{
"title_jp": "\u96fb\u7adc",
"href": "/wiki/Raizekusu",
"name": "Raizekusu",
"name_jp": "\u30e9\u30a4\u30bc\u30af\u30b9"
},
{
"title_jp": "\u91d1\u7345\u5b50",
"href": "/wiki/Rajang",
"name": "Rajang",
"name_jp": "\u30e9\u30fc\u30b8\u30e3\u30f3"
},
{
"title_jp": "\u91d1\u7345\u5b50",
"href": "/wiki/Furious_Rajang",
"name": "Furious Rajang",
"name_jp": "\u6fc0\u6602\u3057\u305f\u30e9\u30fc\u30b8\u30e3\u30f3"
},
{
"title_jp": "\u706b\u7adc",
"href": "/wiki/Rathalos",
"name": "Rathalos",
"name_jp": "\u30ea\u30aa\u30ec\u30a6\u30b9"
},
{
"title_jp": "\u30c0\u30fc\u30af\u30cd\u30b9\u30ed\u30fc\u30c9",
"href": "/wiki/Black_Flame_King_Rathalos",
"name": "Black Flame King Rathalos",
"name_jp": "\u9ed2\u708e\u738b\u30ea\u30aa\u30ec\u30a6\u30b9"
},
{
"title_jp": "\u9280\u706b\u7adc",
"href": "/wiki/Silver_Rathalos",
"name": "Silver Rathalos",
"name_jp": "\u30ea\u30aa\u30ec\u30a6\u30b9\u5e0c\u5c11\u7a2e"
},
{
"title_jp": "\u96cc\u706b\u7adc",
"href": "/wiki/Rathian",
"name": "Rathian",
"name_jp": "\u30ea\u30aa\u30ec\u30a4\u30a2"
},
{
"title_jp": "\u30c7\u30c3\u30c9\u30ea\u30fc\u30d7\u30ea\u30f3\u30bb\u30b9",
"href": "/wiki/Violet_Poison_Princess_Rathian",
"name": "Violet Poison Princess Rathian",
"name_jp": "\u7d2b\u6bd2\u59eb\u30ea\u30aa\u30ec\u30a4\u30a2"
},
{
"title_jp": "\u91d1\u706b\u7adc",
"href": "/wiki/Gold_Rathian",
"name": "Gold Rathian",
"name_jp": "\u30ea\u30aa\u30ec\u30a4\u30a2\u5e0c\u5c11\u7a2e"
},
{
"title_jp": "\u6c34\u7363",
"href": "/wiki/Royal_Ludroth",
"name": "Royal Ludroth",
"name_jp": "\u30ed\u30a2\u30eb\u30c9\u30ed\u30b9"
},
{
"title_jp": "\u5fb9\u7532\u866b",
"href": "/wiki/Seltas",
"name": "Seltas",
"name_jp": "\u30a2\u30eb\u30bb\u30eb\u30bf\u30b9"
},
{
"title_jp": "\u91cd\u7532\u866b",
"href": "/wiki/Seltas_Queen",
"name": "Seltas Queen",
"name_jp": "\u30b2\u30cd\u30eb\u30fb\u30bb\u30eb\u30bf\u30b9"
},
{
"title_jp": "\u5343\u5203\u7adc",
"href": "/wiki/Seregios",
"name": "Seregios",
"name_jp": "\u30bb\u30eb\u30ec\u30ae\u30aa\u30b9"
},
{
"title_jp": "\u938c\u87f9",
"href": "/wiki/Shogun_Ceanataur",
"name": "Shogun Ceanataur",
"name_jp": "\u30b7\u30e7\u30a6\u30b0\u30f3\u30ae\u30b6\u30df"
},
{
"title_jp": "\u6ce1\u72d0\u7adc",
"href": "/wiki/Tamamitsune",
"name": "Tamamitsune",
"name_jp": "\u30bf\u30de\u30df\u30c4\u30cd"
},
{
"title_jp": "\u9b3c\u86d9",
"href": "/wiki/Tetsucabra",
"name": "Tetsucabra",
"name_jp": "\u30c6\u30c4\u30ab\u30d6\u30e9"
},
{
"title_jp": "\u60aa\u76f8\u306e\u5343\u4e21\u5f79\u8005",
"href": "/wiki/Rock_Piercing_Tetsucabra",
"name": "Rock Piercing Tetsucabra",
"name_jp": "\u5ca9\u7a7f\u30c6\u30c4\u30ab\u30d6\u30e9"
},
{
"title_jp": "\u8f5f\u7adc",
"href": "/wiki/Tigrex",
"name": "Tigrex",
"name_jp": "\u30c6\u30a3\u30ac\u30ec\u30c3\u30af\u30b9"
},
{
"title_jp": "\u8352\u9264\u722a",
"href": "/wiki/Ruinous_Hook_Claw_Tigrex",
"name": "Ruinous Hook Claw Tigrex",
"name_jp": "\u8352\u9264\u722a\u30c6\u30a3\u30ac\u30ec\u30c3\u30af\u30b9"
},
{
"title_jp": "\u5d29\u7adc",
"href": "/wiki/Ukanlos",
"name": "Ukanlos",
"name_jp": "\u30a6\u30ab\u30e0\u30eb\u30d0\u30b9"
},
{
"title_jp": "\u7206\u939a\u7adc",
"href": "/wiki/Uragaan",
"name": "Uragaan",
"name_jp": "\u30a6\u30e9\u30ac\u30f3\u30ad\u30f3"
},
{
"title_jp": "\u5b9d\u7e8f",
"href": "/wiki/Treasure_Clad_Uragaan",
"name": "Treasure Clad Uragaan",
"name_jp": "\u5b9d\u7e8f\u30a6\u30e9\u30ac\u30f3\u30ad\u30f3"
},
{
"title_jp": "",
"href": "/wiki/Velocidrome",
"name": "Velocidrome",
"name_jp": "\u30c9\u30b9\u30e9\u30f3\u30dd\u30b9"
},
{
"title_jp": "\u8d64\u7532\u7363",
"href": "/wiki/Volvidon",
"name": "Volvidon",
"name_jp": "\u30e9\u30f3\u30b0\u30ed\u30c8\u30e9"
},
{
"title_jp": "\u9ed2\u72fc\u9ce5",
"href": "/wiki/Yian_Garuga",
"name": "Yian Garuga",
"name_jp": "\u30a4\u30e3\u30f3\u30ac\u30eb\u30eb\u30ac"
},
{
"title_jp": "\u96bb\u773c",
"href": "/wiki/One-Eyed_Yian_Garuga",
"name": "One-Eyed Yian Garuga",
"name_jp": "\u96bb\u773c\u30a4\u30e3\u30f3\u30ac\u30eb\u30eb\u30ac"
},
{
"title_jp": "\u602a\u9ce5",
"href": "/wiki/Yian_Kut-Ku",
"name": "Yian Kut-Ku",
"name_jp": "\u30a4\u30e3\u30f3\u30af\u30c3\u30af"
},
{
"title_jp": "\u5316\u3051\u9bab",
"href": "/wiki/Zamtrios",
"name": "Zamtrios",
"name_jp": "\u30b6\u30dc\u30a2\u30b6\u30ae\u30eb"
},
{
"title_jp": "\u96f7\u72fc\u7adc",
"href": "/wiki/Zinogre",
"name": "Zinogre",
"name_jp": "\u30b8\u30f3\u30aa\u30a6\u30ac"
},
{
"title_jp": "\u771f\u306a\u308b\u899a\u9192",
"href": "/wiki/Golden_Thunder_Prince_Zinogre",
"name": "Golden Thunder Prince Zinogre",
"name_jp": "\u91d1\u96f7\u516c\u30b8\u30f3\u30aa\u30a6\u30ac"
},
{
"title_jp": "\u714c\u9ed2\u9f8d",
"href": "/wiki/Alatreon",
"name": "Alatreon",
"name_jp": "\u30a2\u30eb\u30d0\u30c8\u30ea\u30aa\u30f3"
},
{
"title_jp": "\u5d50\u9f8d",
"href": "/wiki/Amatsumagatsuchi",
"name": "Amatsumagatsuchi",
"name_jp": "\u30a2\u30de\u30c4\u30de\u30ac\u30c4\u30c1"
},
{
"title_jp": "\u971e\u9f8d",
"href": "/wiki/Chameleos",
"name": "Chameleos",
"name_jp": "\u30aa\u30aa\u30ca\u30ba\u30c1"
},
{
"title_jp": "\u5e7b\u7363",
"href": "/wiki/Kirin",
"name": "Kirin",
"name_jp": "\u30ad\u30ea\u30f3"
},
{
"title_jp": "\u92fc\u9f8d",
"href": "/wiki/Kushala_Daora",
"name": "Kushala Daora",
"name_jp": "\u30af\u30b7\u30e3\u30eb\u30c0\u30aa\u30e9"
},
{
"title_jp": "\u9ab8\u9f8d",
"href": "/wiki/Osutogaroa",
"name": "Osutogaroa",
"name_jp": "\u30aa\u30b9\u30c8\u30ac\u30ed\u30a2"
},
{
"title_jp": "\u5929\u5efb\u9f8d",
"href": "/wiki/Shagaru_Magala",
"name": "Shagaru Magala",
"name_jp": "\u30b7\u30e3\u30ac\u30eb\u30de\u30ac\u30e9"
},
{
"title_jp": "\u708e\u738b\u9f8d",
"href": "/wiki/Teostra",
"name": "Teostra",
"name_jp": "\u30c6\u30aa\u30fb\u30c6\u30b9\u30ab\u30c8\u30eb"
},
{
"title_jp": "",
"href": "/wiki/Zamite",
"name": "Zamite",
"name_jp": "\u30b9\u30af\u30a2\u30ae\u30eb"
},
{
"title_jp": "\u4e38\u9ce5",
"href": "/wiki/Gargwa",
"name": "Gargwa",
"name_jp": "\u30ac\u30fc\u30b0\u30a1"
},
{
"title_jp": "",
"href": "/wiki/Giaprey",
"name": "Giaprey",
"name_jp": "\u30ae\u30a2\u30ce\u30b9"
},
{
"title_jp": "",
"href": "/wiki/Genprey",
"name": "Genprey",
"name_jp": "\u30b2\u30cd\u30dd\u30b9"
},
{
"title_jp": "",
"href": "/wiki/Ioprey",
"name": "Ioprey",
"name_jp": "\u30a4\u30fc\u30aa\u30b9"
},
{
"title_jp": "\u72d7\u7adc",
"href": "/wiki/Jaggi",
"name": "Jaggi",
"name_jp": "\u30b8\u30e3\u30ae\u30a3"
},
{
"title_jp": "\u72d7\u7adc",
"href": "/wiki/Jaggia",
"name": "Jaggia",
"name_jp": "\u30b8\u30e3\u30ae\u30a3\u30ce\u30b9"
},
{
"title_jp": "",
"href": "/wiki/Maccau",
"name": "Maccau",
"name_jp": "\u30de\u30c3\u30ab\u30a9"
},
{
"title_jp": "",
"href": "/wiki/Velociprey",
"name": "Velociprey",
"name_jp": "\u30e9\u30f3\u30dd\u30b9"
},
{
"title_jp": "",
"href": "/wiki/Ceanataur",
"name": "Ceanataur",
"name_jp": "\u30ac\u30df\u30b6\u30df"
},
{
"title_jp": "",
"href": "/wiki/Hermitaur",
"name": "Hermitaur",
"name_jp": "\u30e4\u30aa\u30b6\u30df"
},
{
"title_jp": "",
"href": "/wiki/Blango",
"name": "Blango",
"name_jp": "\u30d6\u30e9\u30f3\u30b4"
},
{
"title_jp": "",
"href": "/wiki/Bullfango",
"name": "Bullfango",
"name_jp": "\u30d6\u30eb\u30d5\u30a1\u30f3\u30b4"
},
{
"title_jp": "",
"href": "/wiki/Anteka",
"name": "Anteka",
"name_jp": "\u30ac\u30a6\u30b7\u30ab"
},
{
"title_jp": "",
"href": "/wiki/Apceros",
"name": "Apceros",
"name_jp": "\u30a2\u30d7\u30b1\u30ed\u30b9"
},
{
"title_jp": "",
"href": "/wiki/Aptonoth",
"name": "Aptonoth",
"name_jp": "\u30a2\u30d7\u30c8\u30ce\u30b9"
},
{
"title_jp": "",
"href": "/wiki/Kelbi",
"name": "Kelbi",
"name_jp": "\u30b1\u30eb\u30d3"
},
{
"title_jp": "",
"href": "/wiki/Mosswine",
"name": "Mosswine",
"name_jp": "\u30e2\u30b9"
},
{
"title_jp": "\u96f2\u7f8a\u9e7f",
"href": "/wiki/Mufa",
"name": "Mufa",
"name_jp": "\u30e0\u30fc\u30d5\u30a1"
},
{
"title_jp": "",
"href": "/wiki/Popo",
"name": "Popo",
"name_jp": "\u30dd\u30dd"
},
{
"title_jp": "\u8349\u98df\u7adc",
"href": "/wiki/Rhenoplos",
"name": "Rhenoplos",
"name_jp": "\u30ea\u30ce\u30d7\u30ed\u30b9"
},
{
"title_jp": "\u9996\u9cf4\u7adc",
"href": "/wiki/Rimosetosu",
"name": "Rimosetosu",
"name_jp": "\u30ea\u30e2\u30bb\u30c8\u30b9"
},
{
"title_jp": "\u5782\u76ae\u7adc",
"href": "/wiki/Slagtoth",
"name": "Slagtoth",
"name_jp": "\u30ba\u30ef\u30ed\u30dd\u30b9"
},
{
"title_jp": "\u6c34\u751f\u7363",
"href": "/wiki/Ludroth",
"name": "Ludroth",
"name_jp": "\u30eb\u30c9\u30ed\u30b9"
},
{
"title_jp": "\u6eb6\u5ca9\u7363",
"href": "/wiki/Uroktor",
"name": "Uroktor",
"name_jp": "\u30a6\u30ed\u30b3\u30c8\u30eb"
},
{
"title_jp": "",
"href": "/wiki/Felyne",
"name": "Felyne",
"name_jp": "\u30a2\u30a4\u30eb\u30fc"
},
{
"title_jp": "",
"href": "/wiki/Melynx",
"name": "Melynx",
"name_jp": "\u30e1\u30e9\u30eb\u30fc"
},
{
"title_jp": "\u7532\u866b",
"href": "/wiki/Altaroth",
"name": "Altaroth",
"name_jp": "\u30aa\u30eb\u30bf\u30ed\u30b9"
},
{
"title_jp": "\u98db\u7532\u866b",
"href": "/wiki/Bnahabra",
"name": "Bnahabra",
"name_jp": "\u30d6\u30ca\u30cf\u30d6\u30e9"
},
{
"title_jp": "",
"href": "/wiki/Hornetaur",
"name": "Hornetaur",
"name_jp": "\u30ab\u30f3\u30bf\u30ed\u30b9"
},
{
"title_jp": "\u76fe\u866b",
"href": "/wiki/Konchu",
"name": "Konchu",
"name_jp": "\u30af\u30f3\u30c1\u30e5\u30a6"
},
{
"title_jp": "",
"href": "/wiki/Vespoid",
"name": "Vespoid",
"name_jp": "\u30e9\u30f3\u30b4\u30b9\u30bf"
},
{
"title_jp": "\u7802\u7adc",
"href": "/wiki/Cephalos",
"name": "Cephalos",
"name_jp": "\u30ac\u30ec\u30aa\u30b9"
},
{
"title_jp": "\u7ffc\u86c7\u7adc",
"href": "/wiki/Remobra",
"name": "Remobra",
"name_jp": "\u30ac\u30d6\u30e9\u30b9"
}
]

51
db/mhw/weapon_list.json Normal file
View File

@@ -0,0 +1,51 @@
[
{
"element_attack": null,
"parent": null,
"sharpness": [
8,
7,
4,
14,
2,
0
],
"element_2_attack": null,
"phial": null,
"defense": 0,
"shelling_type": null,
"bug_type": null,
"awaken": null,
"sharpness_plus2": [
8,
7,
4,
14,
5,
2
],
"num_slots": 0,
"element_2": null,
"name": "\u30d9\u30eb\u30c0\u30fc\u30e9\u30f3\u30b9",
"url": "http://wiki.mhxg.org/ida/219227.html",
"wtype": "Lance",
"shot_types": null,
"name_jp": "\u30d9\u30eb\u30c0\u30fc\u30e9\u30f3\u30b9",
"sharpness_plus": [
8,
7,
4,
14,
5,
0
],
"element": null,
"attack": 60,
"href": "/ida/219227.html",
"affinity": 0,
"arc_type": null,
"final": 0,
"ammo": null,
"horn_notes": null
},
]

View File

@@ -30,7 +30,7 @@ def _set_stars(cursor, item_id, stars):
def main(): def main():
db = MHDB(game="gen", include_item_components=True) db = MHDB(include_item_components=True)
item_stars = ItemStars(db) item_stars = ItemStars(db)
c = db.cursor() c = db.cursor()

View File

@@ -78,7 +78,7 @@ class MHDB(object):
""" """
if game is None: if game is None:
game = os.environ.get("MHAPI_GAME") game = os.environ.get("MHAPI_GAME")
assert game in ("4u", "gen") assert game in ("4u", "gen", "gu")
self.game = game self.game = game
if game == "4u": if game == "4u":
@@ -173,8 +173,6 @@ class MHDB(object):
placeholders = ", ".join(["?"] * len(exclude_types)) placeholders = ", ".join(["?"] * len(exclude_types))
q += "\nWHERE type NOT IN (%s)" % placeholders q += "\nWHERE type NOT IN (%s)" % placeholders
args.extend(exclude_types) args.extend(exclude_types)
else:
args = []
args = tuple(args) args = tuple(args)
return self._query_all("items", q, args, model_cls=model.Item) return self._query_all("items", q, args, model_cls=model.Item)
@@ -484,7 +482,7 @@ class MHDB(object):
args = sorted(skill_tree_ids) args = sorted(skill_tree_ids)
placeholders = ", ".join(["?"] * len(skill_tree_ids)) placeholders = ", ".join(["?"] * len(skill_tree_ids))
both_type = "Both" both_type = "Both"
if self.game == "gen": if self.game in ("gen", "gu"):
both_type = ARMOR_HUNTER_TYPES[both_type] both_type = ARMOR_HUNTER_TYPES[both_type]
hunter_type = ARMOR_HUNTER_TYPES[hunter_type] hunter_type = ARMOR_HUNTER_TYPES[hunter_type]
args += [both_type, hunter_type] args += [both_type, hunter_type]
@@ -548,7 +546,7 @@ class MHDB(object):
Get dict rows of items that satisfy the given material, containing Get dict rows of items that satisfy the given material, containing
item_id and amount keys. MHGen only. item_id and amount keys. MHGen only.
""" """
assert self.game == "gen" assert self.game in ("gen", "gu")
return self._query_all("material_items", """ return self._query_all("material_items", """
SELECT item_id, amount FROM item_to_material SELECT item_id, amount FROM item_to_material
WHERE item_to_material.material_item_id = ? WHERE item_to_material.material_item_id = ?
@@ -589,19 +587,19 @@ class MHDB(object):
class MHDBX(object): class MHDBX(object):
""" """
Wrapper around Monster Hunter Cross (X) JSON data. Attempts limited Wrapper around Monster Hunter JSON data, default to MHX. Attempts limited
compatibility with original 4U MHDB class. compatibility with original 4U MHDB class.
Uses MHDB object, as temporariy hack for MHX data that is not yet Uses MHDB object, as temporariy hack for MHX/World data that is not yet
available or integrated. available or integrated.
""" """
def __init__(self): def __init__(self, game="mhx"):
""" """
Loads JSON data, keeps in memory. Loads JSON data, keeps in memory.
""" """
module_path = os.path.dirname(__file__) module_path = os.path.dirname(__file__)
self._mhx_db_path = os.path.abspath(os.path.join(module_path, "..", self._mhx_db_path = os.path.abspath(os.path.join(module_path, "..",
"db", "mhx")) "db", game))
self._4udb = MHDB() self._4udb = MHDB()
self._weapon_list = [] self._weapon_list = []
self._weapons_by_name = {} self._weapons_by_name = {}

View File

@@ -162,6 +162,7 @@ class SharpnessLevel(EnumBase):
PURPLE: (1.44, 1.20), PURPLE: (1.44, 1.20),
} }
# for mhx, mhgen, mhxx, and likely mhw
_modifier_mhx = { _modifier_mhx = {
RED: (0.50, 0.25), RED: (0.50, 0.25),
ORANGE: (0.75, 0.50), ORANGE: (0.75, 0.50),

View File

@@ -19,7 +19,7 @@ STRAT_SHINY = "shiny"
STRAT_CAP_OR_KILL = "cap/kill" STRAT_CAP_OR_KILL = "cap/kill"
ITEM_TYPES = "Bone Bug Coin/Ticket Fish Flesh Meat Ore Plant Sac/Fluid".split() ITEM_TYPES = "Materials Bone Bug Coin/Ticket Fish Flesh Meat Ore Plant Sac/Fluid".split()
def _format_range(min_v, max_v): def _format_range(min_v, max_v):

View File

@@ -6,6 +6,7 @@ import os
import json import json
import sys import sys
import codecs import codecs
import errno
from lxml import etree from lxml import etree
@@ -414,6 +415,11 @@ def _parse_sharpness_td(td_element):
def _main(): def _main():
tmp_path = os.path.join(_pathfix.project_path, "tmp") tmp_path = os.path.join(_pathfix.project_path, "tmp")
try:
os.mkdir(tmp_path)
except OSError as e:
if e.errno != errno.EEXISTS:
raise
weapon_list = [] weapon_list = []
parser = etree.HTMLParser() parser = etree.HTMLParser()
for wtype, urls in _WEAPON_URLS.iteritems(): for wtype, urls in _WEAPON_URLS.iteritems():