Wiki L'encyclopédie Moga
Wiki L'encyclopédie Moga

Le module Monsters Database, en français la base de données des monstres est un module de définition et d'accès à la base de données. Il a pour but de standardiser et simplifier les usages sur le wiki, et doit être tenu à jour.

Important.png
Ne modifiez pas la base de données si vous n'êtes pas sûr de ce que vous faites !

Variables

  • species : une mini-base de données des types de monstres. Fonctionne avec des clefs uniques bien identifiées en trois lettres.
  • monstres : le cœur de la base de données.
    • name : nom du monstre (en français pour "def" → "default") et anglais sous "en". Un autre nom en français dans un opus spécifique peut être ajouté avec "MH3U = nom" par exemple
    • spe : specie, le type du monstre
    • g : games, le premier jeu de chaque génération' dans lequel apparaît le monstre.

Fonctions

Fonctions privées

  • load_monsters : remplace les valeurs compressées de la base de donnée par leur version en texte plein, modifie la base de données
  • get_value : permet d'obtenir la valeur d'un paramètre de façon intelligente
  • standard_filter : format pour un "filtre standard"

Méthodes publiques

  • check_data : vérifie l'intégrité de la base
  • existe : vérifie si un monstre existe
  • espece : donne le type d'un monstre
  • traduction : donne la traduction du nom d'un monstre
  • liste_jeux : donne les opus dans lesquels apparaît un monstre
  • liste_monstres : renvoie tous les monstres

Pour modifier cette page : Module:Monsters Database/doc.


--[[ 
Ce module a pour but de centraliser, standardiser et faciliter l'accès aux 
informations portant sur les monstres.

Il constitue une base de données avec des fonctions permettant d'accéder aux 
données, et doit donc être tenu à jour.
]]
local p = {}
 
local wyv, mh = "Wyvern", "Monster Hunter"
--local games_data = require( 'Module:Games Database' ) -- Rend le module trop long à charger
local accessors = require("Module:Database Accessors")

-- Dictionnaire des espèces existantes, avec des noms raccourcis, et différentes
-- versions. "def" pour "nom par défaut"
local species = {
    ["?"] = "???",
    ail = "Drake ailé",
    amp = "Amphibien",
    aqu = wyv .. "e aquatique",
    bet = {def = "Bête à crocs", MH3U = "Pélagus"},
    car = "Carapaceon",
    cro = wyv .. "e à crocs",
    dra = "Dragon ancien",
    her = "Herbivore",
    inc = "Inclassable",
    lev = "Leviathan",
    lyn = "Lynien",
    neo = "Neopteron",
    poi = "Poisson",
    rap = {def = wyv.."e rapace", MH4U = wyv.."e aviaire", MH3U = wyv.." aviaire"},
    rel = "Relique",
    rep = wyv .. "e reptile",
    tem = "Temnoceran",
    ter = {def = wyv.."e de terre", MH3U = wyv .. " brute"},
    vol = {def = wyv.."e volante", MH3U = wyv.." volant"},
}

--[[ 
Banque de données des monstres. Merci d'ajouter les monstres dans l'ordre 
alphabétique du nom en français, afin de faciliter la lecture. 

Explications :
	* name : le nom du monstre en différentes langues
    	* def :nom par défaut
        * en, ja, etc... : nom dans une langue précise
        * MH3U, MHGen : nom dans un opus, et suivants
	* spe : "specie" type de monstre
    * g : "games" les jeu dans lequel il apparaît. Seul le premier jeu de 
    chaque génération est nécessaire.
]]
local monsters = {
    {name = {def = "Abiorugu", en = "Abiorugu"}, spe = "ter", g = {"MHO", "MHF-F.3"}},
    {name = {def = "Agnaktor", en = "Agnaktor"}, spe = "lev", g = {"MH3", "MHP3rd", "MHGen"}},
    {name = {def = "Agnaktor du Purgatoire", en = "Purgatory Agnaktor"}, spe = "lev", g = {"MHXR"}},
    {name = {def = "Agnaktor EX", en = "Agnaktor EX"}, spe = "lev", g = {"MHST"}},
    {name = {def = "Agnaktor glacial", en = "Glacial Agnaktor"}, spe = "lev", g = {"MHP3rd", "MH3U", "MHXR", "MHST"}},
    {name = {def = "Akantor", en = "Akantor"}, spe = "vol", g = {"MHO", "MHP3rd", "MHGen", "MHF2", "MHF-S1", "MH4"}},
    {name = {def = "Aknosom", en = "Aknosom"}, spe = "rap", g = {"MHRise"}},
    {name = {def = "Akura Jebia", en = "Akura Jebia"}, spe = "car", g = {"MHO", "MHF-S3"}},
    {name = {def = "Akura Vashimu", en = "Akura Vashimu"}, spe = "car", g = {"MHF-S3"}},
    {name = {def = "Akura Vashimu Zénith", en = "Zenith Akura Vashimu"}, spe = "car", g = {"MHF-Z"}},
    {name = {def = "Alatreon", en = "Alatreon"}, spe = "dra", g = {"MHWI", "MH3", "MHP3rd", "MHGen"}},
    {name = {def = "Almudron", en = "Almudron"}, spe = "lev", g = {"MHRise"}},
    {name = {def = "Altaroth", en = "Altaroth"}, spe = "neo", g = {"MH3", "MHP3rd", "MH4", "MHGen", "MHXR", "MHST", "MHRise"}},
    {name = {def = "Amatsu", en = "Amatsu"}, spe = "dra", g = {"MHP3rd", "MHF-Z", "MHGen"}},
    {name = {def = "Anjanath", en = "Anjanath"}, spe = "ter", g = {"MHW", "MHRise"}},
    {name = {def = "Anjanath tonnerre", en = "Fulgur Anjanath"}, spe = "ter", g = {"MHWI"}},
    {name = {def = "Anorupatisu", en = "Anorupatisu"}, spe = "vol", g = {"MHF-G2"}},
    {name = {def = "Anorupatisu Zénith", en = "Zenith Anorupatisu"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Anteka", en = "Anteka"}, spe = "her", g = {"MHO", "MH2", "MH3U", "MHP3rd", "MHWI", "MHGen", "MHRise", "MHF-S1","MHRise"}},
    {name = {def = "Apceros", en = "Apceros"}, spe = "her", g = {"MHO", "MHW", "MH", "MH2", "MHGen", "MH4U", "MHF-S1"}},
    {name = {def = "Apiposu", en = "Apiposu"}, spe = "rap", g = {"MHXR"}},
    {name = {def = "Aptonoth", en = "Aptonoth"}, spe = "her", g = {"MHO", "MH3", "MHP3rd", "MHGen", "MH", "MH2", "MHW", "MHF-S1", "MH4"}},
    {name = {def = "Aptonoth EX", en = "Aptonoth EX"}, spe = "her", g = {"MHST"}},
    {name = {def = "Aruganosu", en = "Aruganosu"}, spe = "aqu", g = {"MHF-F.5"}},
    {name = {def = "Arzuros", en = "Arzuros"}, spe = "bet", g = {"MHP3rd", "MHXR", "MH3U", "MHGen", "MHRise"}},
    {name = {def = "Arzuros Crâne-ardent", en = "Redhelm Arzuros"}, spe = "bet", g = {"MHGen"}},
    {name = {def = "Arzuros supérieur", en = "Apex Arzuros"}, spe = "bet", g = {"MHRise"}},
    {name = {def = "Astalos", en = "Astalos"}, spe = "vol", g = {"MHGen"}},
    {name = {def = "Astalos Prince-orage", en = "Boltreaver Astalos"}, spe = "vol", g = {"MHGU"}},
    {name = {def = "Ahtal-Ka", en = "Ahtal-Ka"}, spe = "neo", g = {"MHGU"}},
    {name = {def = "Baelidae", en = "Baelidae"}, spe = "car", g = {"MHO"}},
    {name = {def = "Baelidae d'effroi", en = "Dread Baelidae"}, spe = "car", g = {"MHO"}},
    {name = {def = "Baggi", en = "Baggi"}, spe = "rap", g = {"MH3", "MHXR", "MHP3rd", "MHRise"}},
    {name = {def = "Banbaro", en = "Banbaro"}, spe = "ter", g = {"MHWI"}},
    {name = {def = "Barioth", en = "Barioth"}, spe = "vol", g = {"MHO", "MHF-G9", "MH3", "MHXR", "MHP3rd", "MHGU", "MHS", "MHWI","MHRise"}},
    {name = {def = "Barioth crocgivre", en = "Frostfang Barioth"}, spe = "vol", g = {"MHWI"}},
    {name = {def = "Barioth des sables", en = "Sand Barioth"}, spe = "vol", g = {"MHP3rd", "MH3U"}},
    {name = {def = "Barioth gelé", en = "Frozen Barioth"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Barnos", en = "Barnos"}, spe = "ail", g = {"MHW"}},
    {name = {def = "Barroth", en = "Barroth"}, spe = "ter", g = {"MH3", "MHGU", "MHP3rd", "MHW", "MHRise"}},
    {name = {def = "Barroth de jade", en = "Jade Barroth"}, spe = "ter", g = {"MHP3rd", "MH3U"}},
    {name = {def = "Barroth EX", en = "Barroth EX"}, spe = "ter", g = {"MHST"}},
    {name = {def = "Baruragaru", en = "Baruragaru"}, spe = "lev", g = {"MHF-G3"}},
    {name = {def = "Basarios", en = "Basarios"}, spe = "vol", g = {"MHO", "MHGU", "MH", "MH2", "MHF-S1", "MH4", "MHRise"}},
    {name = {def = "Basarios des sables", en = "Sandstone Basarios"}, spe = "vol", g = {"MHO"}},
    {name = {def = "Basarios cristal", en = "Crystal Basarios"}, spe = "vol", g = {"MHO"}},
    {name = {def = "Basarios rubis", en = "Ruby Basarios"}, spe = "vol", g = {"MH4"}},
    {name = {def = "Bazelgeuse", en = "Bazelgeuse"}, spe = "vol", g = {"MHW", "MHRise"}},
    {name = {def = "Bazelgeuse vulcan", en = "Seething Bazelgeuse"}, spe = "vol", g = {"MHWI"}},
    {name = {def = "Berukyurosu", en = "Berukyurosu"}, spe = "vol", g = {"MHO", "MHF-S4"}},
    {name = {def = "Beotodus", en = "Beotodus"}, spe = "aqu", g = {"MHWI"}},
    {name = {def = "Béhémoth", en = "Behemoth"}, spe = "dra", g = {"MHW"}},
    {name = {def = "Bishaten", en = "Bishaten"}, spe = "bet", g = {"MHRise"}},
    {name = {def = "Blango", en = "Blango"}, spe = "bet", g = {"MHO", "MH2", "MHGen", "MHF-S1"}},
    {name = {def = "Blangonga", en = "Blangonga"}, spe = "bet", g = {"MHO", "MH2", "MHGen", "MHF-S1"}},
    {name = {def = "Blangonga cuivré", en = "Copper Blangonga"}, spe = "bet", g = {"MHFU"}},
    {name = {def = "Blangonga de flamme", en = "Flame Blangonga"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Blangonga Zénith", en = "Zenith Blangonga"}, spe = "bet", g = {"MHF-Z"}},
    {name = {def = "Bnahabra", en = "Bnahabra"}, spe = "neo", g = {"MH3", "MHXR", "MHP3rd", "MHGen", "MH4","MHRise"}},
    {name = {def = "Bnahabra remerciements", en = "Thanksalot Bnahabra"}, spe = "car", g = {"MHXR"}},
    {name = {def = "Boaboa", en = "Boaboa"}, spe = "lyn", g = {"MHWI"}},
    {name = {def = "Bogabadorumu", en = "Bogabadorumu"}, spe = "vol", g = {"MHF-ZZ"}},
    {name = {def = "Bombadgy", en = "Bombadgy"}, spe = "bet", g = {"MHRise"}},
    {name = {def = "Brachydios", en = "Brachydios"}, spe = "ter", g = {"MHF-G8", "MH3U", "MHXR", "MHGen", "MHS", "MHWI", "MH4"}},
    {name = {def = "Brachydios Evangelion", en = "Evangelion Brachydios"}, spe = "ter", g = {"MHXR"}},
    {name = {def = "Brachydios projection glaciale", en = "Iceblast Brachydios"}, spe = "ter", g = {"MHXR"}},
    {name = {def = "Brachydios tempête", en = "Raging Brachydios", MH3U = "Brachydios enragé", MH4U = "Brachydios enragé", MHGen = "Brachydios enragé", MHGU = "Brachydios enragé"}, spe = "ter", g = {"MHWI", "MH4U", "MHGU"}},
    {name = {def = "Bulldrome", en = "Bulldrome"}, spe = "bet", g = {"MHO", "MHP3rd", "MHGen", "MH2", "MHF-S1"}},
    {name = {def = "Bulldrome élémentaire", en = "Elemental Bulldrome", ch = "御五相大野猪"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Bullfango", en = "Bullfango"}, spe = {MH = "her", MHG = "her", MHF = "her", def = "bet"}, g = {"MHO", "MH3U", "MHP3rd", "MHXR", "MHGen", "MH", "MH2", "MHF-S1","MHRise"}},
    {name = {def = "Burukku", en = "Burukku"}, spe = "her", g = {"MHF-S9"}},
    {name = {def = "Caeserber", en = "Caeserber"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Caeserber des sables", en = "Yellow Caeserber"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Caeserber fantôme", en = "Ghost Caeserber"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Ceadeus", en = "Ceadeus"}, spe = "dra", g = {"MH3"}},
    {name = {def = "Ceadeus barbedor", en = "Goldbeard Ceadeus"}, spe = "dra", g = {""}},
    {name = {def = "Ceanataur", en = "Ceanataur"}, spe = "car", g = {"MHO", "MH2", "MHGen", "MHF-S1"}},
    {name = {def = "Ceanataur Brise-os", en = "Rustrazor Ceanataur"}, spe = "car", g = {"MHGU"}},
    {name = {def = "Ceanataur Shogun", en = "Shogun Ceanataur"}, spe = "car", g = {"MHO", "MH2", "MHGen", "MHF-S1"}},
    {name = {def = "Ceanataur Shogun terre", en = "Terra Shogun Ceanataur"}, spe = "car", g = {"MHFU"}},
    {name = {def = "Ceanataur Shogun Maître-lame", en = "Swordmaster Shogun Ceanataur"}, spe = "car", g = {"MHO"}},
    {name = {def = "Cephadrome", en = "Cephadrome"}, spe = "aqu", g = {"MHO", "MHGen", "MH", "MH2", "MH4U", "MHF-S1"}},
    {name = {def = "Cephalos", en = "Cephalos"}, spe = "aqu", g = {"MHO", "MHGen", "MH", "MH2", "MH4U", "MHF-S1"}},
    {name = {def = "Chameleos", en = "Chameleos"}, spe = "dra", g = {"MHO", "MHGen", "MH2", "MH4U", "MHRise", "MHF-S1"}},
    {name = {def = "Chramine", en = "Chramine"}, spe = "rap", g = {"MHO"}},
    {name = {def = "Chramine glaciale", en = "Ice Chramine"}, spe = "rap", g = {"MHO"}},
    {name = {def = "Conga", en = "Conga"}, spe = "bet", g = {"MHO", "MHGU", "MH2", "MHF-S1", "MH4"}},
    {name = {def = "Congalala", en = "Congalala"}, spe = "bet", g = {"MHO", "MHGU", "MH2", "MHF-S1", "MH4"}},
    {name = {def = "Congalala émeraude", en = "Emerald Congalala"}, spe = "bet", g = {"MH4", "MHFU"}},
    {name = {def = "Congalala doré", en = "Gold Congalala"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Cortos", en = "Cortos"}, spe = "ail", g = {"MHWI"}},
    {name = {def = "Dah'ren Mohran", en = "Dah'ren Mohran"}, spe = "dra", g = {"MH4"}},
    {name = {def = "Dalamadur", en = "Dalamadur"}, spe = "dra", g = {"MH4"}},
    {name = {def = "Dalamadur Shah", en = "Shah Dalamadur"}, spe = "dra", g = {"MH4U"}},
    {name = {def = "Delex", en = "Delex"}, spe = "aqu", g = {"MH3", "MH4", "MHP3rd", "MHRise"}},
    {name = {def = "Deviljho", en = "Deviljho "}, spe = "ter", g = {"MHO", "MHF-G8", "MH3", "MHP3rd", "MHGen", "MHW", "MHS", "MH4"}},
    {name = {def = "Deviljho carnage", en = "Savage Deviljho"}, spe = "ter", g = {"MHWI", "MH4", "MH3U"}},
    {name = {def = "Deviljho colossal", en = "Aberrant Deviljho "}, spe = "ter", g = {"MHXR"}},
    {name = {def = "Dhisufiroa", en = "Disufiroa"}, spe = "dra", g = {"MHF-G2"}},
    {name = {def = "Diablos", en = "Diablos"}, spe = "vol", g = {"MHO", "MH3", "MHP3rd", "MHGU", "MHW", "MH", "MH2", "MH4U", "MHRise", "MHF-S1"}},
    {name = {def = "Diablos armure d'acier", en = "Steel Armor Diablos"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Diablos Bain-de-sang", en = "Bloodbath Diablos"}, spe = "vol", g = {"MHGU"}},
    {name = {def = "Diablos doré", en = "Gilded Diablos"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Diablos noire", en = "Black Diablos"}, spe = "vol", g = {"MHO", "MH3U", "MHP3rd", "MHW", "MHG", "MH2", "MH4U", "MHF-S1"}},
    {name = {def = "Diablos supérieur", en = "Apex Diablos"}, spe = "vol", g = {"MHRise"}},
    {name = {def = "Diorekkusu", en = "Diorekkusu"}, spe = "vol", g = {"MHF-GG"}},
    {name = {def = "Dire Miralis", en = "Dire Miralis"}, spe = "dra", g = {"MH3U"}},
    {name = {def = "Dodogama", en = "Dodogama"}, spe = "cro", g = {"MHW"}},
    {name = {def = "Doragyurosu", en = "Doragyurosu"}, spe = "vol", g = {"MHO", "MHF-S8"}},
    {name = {def = "Duramboros", en = "Duramboros"}, spe = "ter", g = {"MHP3rd", "MH3U", "MHGen"}},
    {name = {def = "Duramboros explosif", en = "Explosive Peak Duramboros"}, spe = "ter", g = {"MHXR"}},
    {name = {def = "Duramboros rouillé", en = "Rust Duramboros"}, spe = "ter", g = {"MH3U"}},
    {name = {def = "Duremudira", en = "Duremudira"}, spe = "inc", g = {"MHF-G6"}},
    {name = {def = "Dyuragaura", en = "Dyuragaura"}, spe = "vol", g = {"MHO", "MHF-S8"}},
    {name = {def = "Egyurasu", en = "Egyurasu"}, spe = "vol", g = {"MHF-G10"}},
    {name = {def = "Eo Garudia", en = "Eo Garudia"}, spe = "dra", g = {"MHXR"}},
    {name = {def = "Epioth", en = "Epioth"}, spe = "her", g = {"MH3"}},
    {name = {def = "Epona", en = "Epona"}, spe = "?", g = {"MHST"}},
    {name = {def = "Erupe", en = "Erupe"}, spe = "her", g = {"MHF-S9"}},
    {name = {def = "Eruzerion", en = "Eruzerion"}, spe = "dra", g = {"MHF-Z"}},
    {name = {def = "Espinas", en = "Espinas"}, spe = "vol", g = {"MHF-S2"}},
    {name = {def = "Espinas cendreuse", en = "Espinas Rare Species"}, spe = "vol", g = {"MHF-S5"}},
    {name = {def = "Espinas vermeille", en = "Espinas Subspecies"}, spe = "vol", g = {"MHF-S2"}},
    {name = {def = "Espinas Zénith", en = "Zenith Espinas"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Estrellian", en = "Estrellian"}, spe = "?", g = {"MHO"}},
    {name = {def = "Estrellian suprême", en = "Arbiter Estrellian"}, spe = "?", g = {"MHO"}},
    {name = {def = "Estrellian ténébreux", en = "Doom Estrellian"}, spe = "?", g = {"MHO"}},
    {name = {def = "Farunokku", en = "Farunokku"}, spe = "rap", g = {"MHF-G1"}},
    {name = {def = "Fatalis", en = "Fatalis"}, spe = "dra", g = {"MH", "MH2", "MHF-S1", "MHST", "MH4", "MHGU", "MHWI"}},
    {name = {def = "Fatalis blanc", en = "White Fatalis", MHGU = "Fatalis ancien"}, spe = "dra", g = {"MH2", "MH4U", "MHGU", "MHF-S1"}},
    {name = {def = "Fatalis pourpre", en = "Crimson Fatalis"}, spe = "dra", g = {"MHG", "MH2", "MHF-S1", "MH4", "MHGU"}},
    {name = {def = "Felyne", en = "Felyne"}, spe = "lyn", g = {"MHO", "MH3", "MHP3rd", "MHGen", "MH", "MH2", "MHW", "MHF-S1", "MH4","MHRise"}},
    {name = {def = "Felyne baril", en = "Felyne"}, spe = "lyn", g = {"MHST"}},
    {name = {def = "Felyne festif", en = "Festive Felyne"}, spe = "lyn", g = {"MHXR"}},
    {name = {def = "Forokururu", en = "Forokururu"}, spe = "vol", g = {"MHF-GG"}},
    {name = {def = "Gajalaka", en = "Gajalaka"}, spe = "lyn", g = {"MHW"}},
    {name = {def = "Gajau", en = "Gajau"}, spe = "aqu", g = {"MHW", "MHRise"}},
    {name = {def = "Gammoth", en = "Gammoth"}, spe = "bet", g = {"MHGen"}},
    {name = {def = "Gammoth Givre-ancien", en = "Elderfrost Gammoth"}, spe = "bet", g = {"MHGU"}},
    {name = {def = "Gargwa", en = "Gargwa"}, spe = "rap", g = {"MHP3rd", "MH4", "MH3U", "MHGen", "MHRise"}},
    {name = {def = "Garuba Daora", en = "Garuba Daora"}, spe = "dra", g = {"MHF-G5"}},
    {name = {def = "Gastodon", en = "Gastodon"}, spe = "her", g = {"MHW"}},
    {name = {def = "Gasurabazura", en = "Gasurabazura"}, spe = "ter", g = {"MHF-G8"}},
    {name = {def = "Gendrome", en = "Gendrome"}, spe = "rap", g = {"MHO", "MHGen", "MH", "MH2", "MHS", "MHF-S1", "MH4"}},
    {name = {def = "Genprey", en = "Genprey"}, spe = "rap", g = {"MH", "MH2", "MH4", "MHGen"}},
    {name = {def = "Giadrome", en = "Giadrome"}, spe = "rap", g = {"MHO", "MHF2", "MHGU"}},
    {name = {def = "Giaprey", en = "Giaprey"}, spe = "rap", g = {"MHO", "MH2", "MHGen", "MHF-S1"}},
    {name = {def = "Giaorugu", en = "Giaorugu"}, spe = "ter", g = {"MHF-G2"}},
    {name = {def = "Giaorugu Zénith", en = "Zenith Giaorugu"}, spe = "ter", g = {"MHF-Z"}},
    {name = {def = "Giggi", en = "Giggi"}, spe = "vol", g = {"MH3", "MHP3rd"}},
    {name = {def = "Gigginox", en = "Gigginox"}, spe = "vol", g = {"MH3", "MHP3rd"}},
    {name = {def = "Gigginox foudroyant", en = "Baleful Gigginox"}, spe = "vol", g = {"MHP3rd", "MHXR", "MH3U"}},
    {name = {def = "Gigginox virulent", en = "Virulent Gigginox"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Gigginox yoga", en = "Yoga Gigginox"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Girros", en = "Girros"}, spe = "cro", g = {"MHW"}},
    {name = {def = "Glavenus", en = "Glavenus"}, spe = "ter", g = {"MHWI", "MHGen"}},
    {name = {def = "Glavenus acide", en = "Acidic Glavenus"}, spe = "ter", g = {"MHWI"}},
    {name = {def = "Glavenus Lame-chaos", en = "Hellblade Glavenus"}, spe = "ter", g = {"MHGen"}},
    {name = {def = "Gobul", en = "Gobul"}, spe = "lev", g = {"MH3"}},
    {name = {def = "Gobul sorcière", en = "Witch Gobul"}, spe = "lev", g = {"MHXR"}},
    {name = {def = "Gogmazios", en = "Gogmazios"}, spe = "dra", g = {"MH4U"}},
    {name = {def = "Gogomoa", en = "Gogomoa"}, spe = "bet", g = {"MHF-F.2"}},
    {name = {def = "Gonngenn Hermitaur", en = "Gonngenn Hermitaur"}, spe = "car", g = {"MHO"}},
    {name = {def = "Gore Magala", en = "Gore Magala"}, spe = "?", g = {"MH4", "MHGen"}},
    {name = {def = "Gore Magala Evangelion", en = "Evangelion Gore Magala"}, spe = "?", g = {"MHXR"}},
    {name = {def = "Gore Magala du chaos", en = "Chaotic Gore Magala"}, spe = "?", g = {"MH4U", "MHGU"}},
    {name = {def = "Goruganosu", en = "Goruganosu"}, spe = "aqu", g = {"MHF-F.5"}},
    {name = {def = "Goruru", en = "Goruru"}, spe = "lyn", g = {"MHXR"}},
    {name = {def = "Goss Harag", en = "Goss Harag"}, spe = "bet", g = {"MHRise"}},
    {name = {def = "Grand Apiposu", en = "Great Apiposu"}, spe = "rap", g = {"MHXR"}},
    {name = {def = "Grand Baggi", en = "Great Baggi"}, spe = "rap", g = {"MH3", "MHP3rd", "MHRise"}},
    {name = {def = "Grand Dragoninsecte", en = "Great Dracophage Bug"}, spe = "neo", g = {"MHST"}},
    {name = {def = "Grand Foudrinsecte", en = "Great Thunderbug"}, spe = "neo", g = {"MHO", "MH2", "MHGU", "MHF-S1"}},
    {name = {def = "Grand Girros", en = "Great Girros"}, spe = "cro", g = {"MHW"}},
    {name = {def = "Grand Goruru", en = "Great Goruru"}, spe = "lyn", g = {"MHXR"}},
    {name = {def = "Grand Izuchi", en = "Great Izuchi"}, spe = "rap", g = {"MHRise"}},
    {name = {def = "Grand Jaggi", en = "Great Jaggi"}, spe = "rap", g = {"MH3", "MH4", "MHP3rd"}},
    {name = {def = "Grand Jagras", en = "Great Jagras"}, spe = "cro", g = {"MHW"}},
    {name = {def = "Grand Maccao", en = "Great Maccao"}, spe = "rap", g = {"MHGen"}},
    {name = {def = "Grand Metaru", en = "Great Metaru"}, spe = "lyn", g = {"MHXR"}},
    {name = {def = "Grand Poogie", en = "Great Poogie"}, spe = "?", g = {"MHST"}},
    {name = {def = "Grand Wroggi", en = "Great Wroggi"}, spe = "rap", g = {"MHP3rd", "MH3U", "MHRise"}},
    {name = {def = "Gravios", en = "Gravios"}, spe = "vol", g = {"MHO", "MHGU", "MH", "MH2", "MHF-S1", "MH4"}},
    {name = {def = "Gravios onyx", en = "Black Gravios", MH2 = "Gravios Noir", MHF = "Gravios Noir", MHFU = "Gravios Noir"}, spe = "vol", g = {"MHO", "MHG", "MH2", "MHF-S1", "MH4"}},
    {name = {def = "Grimalkyne", en = "Grimalkyne"}, spe = "lyn", g = {"MHW"}},
    {name = {def = "Guanzorumu", en = "Guanzorumu"}, spe = "dra", g = {"MHF-G10"}},
    {name = {def = "Gureadomosu", en = "Gureadomosu"}, spe = "vol", g = {"MHF-G7"}},
    {name = {def = "Guren Shen Gaoren", en = "Guren Shen Gaoren"}, spe = "car", g = {"MHO"}},
    {name = {def = "Gurenzeburu", en = "Gurenzeburu"}, spe = "vol", g = {"MHO", "MHF-S9"}},
    {name = {def = "Gypceros", en = "Gypceros"}, spe = "rap", g = {"MHO", "MHGen", "MH", "MH2", "MHS", "MHF-S1", "MH4"}},
    {name = {def = "Gypceros améthyste", en = "Purple Gypceros", MHF = "Gypceros Pourpre", MH2 = "Gypceros Pourpre", MHFU = "Gypceros Pourpre"}, spe = "rap", g = {"MHO", "MHG", "MH2", "MHS", "MHF-S1", "MH4"}},
    {name = {def = "Halk", en = "Halk"}, spe = "vol", g = {""}},
    {name = {def = "Harudomerugu", en = "Harudomerugu"}, spe = "dra", g = {"MHF-G7"}},
    {name = {def = "Hermitaur", en = "Hermitaur"}, spe = "car", g = {"MH2", "MH4U", "MHGen"}},
    {name = {def = "Hermitaur Daimyo", en = "Daimyo Hermitaur"}, spe = "car", g = {"MHO", "MHGen", "MH2", "MH4U", "MHF-S1"}},
    {name = {def = "Hermitaur Daimyo prune", en = "Plum Daimyo Hermitaur"}, spe = "car", g = {"MH4U", "MHFU"}},
    {name = {def = "Hermitaur Daimyo Zénith", en = "Zenith Daimyo Hermitaur"}, spe = "car", g = {"MHF-Z"}},
    {name = {def = "Hermitaur Poing-fer", en = "Stonefist Hermitaur"}, spe = "car", g = {"MHGen"}},
    {name = {def = "Hornetaur", en = "Hornetaur"}, spe = "neo", g = {"MH", "MH2", "MHF", "MHF2", "MHGen", "MHW", "MHF-S1"}},
    {name = {def = "Hypnocatrice", en = "Hypnocatrice"}, spe = "rap", g = {"MHO", "MHFU", "MHF-S1"}},
    {name = {def = "Hypnocatrice azure", en = "Silver Hypnocatrice"}, spe = "rap", g = {"MHF-S1", "MHO"}},
    {name = {def = "Hypnocatrice dorée", en = "Gold Hypnocatrice"}, spe = "rap", g = {"MHO"}},
    {name = {def = "Hypnocatrice Zénith", en = "Zenith Hypnocatrice"}, spe = "rap", g = {"MHF-Z"}},
    {name = {def = "Hypnocatrice saison des amours", en = "Breeding Season Hypnocatrice"}, spe = "rap", g = {"MHF-S1"}},
    {name = {def = "Hyujikiki", en = "Hyujikiki"}, spe = "vol", g = {"MHF-G1"}},
    {name = {def = "Hyujikiki Zénith", en = "Zenith Hyujikiki"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Ibushi du vent", en = "Wind Serpent Ibushi"}, spe = "dra", g = {"MHRise"}},
    {name = {def = "Inagami", en = "Inagami"}, spe = "dra", g = {"MHF-G5"}},
    {name = {def = "Inagami Zénith", en = "Zenith Inagami"}, spe = "dra", g = {"MHF-Z"}},
    {name = {def = "Inconnu (Wyverne volante noire)", en = "Unknown (Black Flying Wyvern)"}, spe = "vol", g = {"MHF-F.1"}},
    {name = {def = "Iodrome", en = "Iodrome"}, spe = "rap", g = {"MHO", "MHGen", "MH", "MH2", "MHF-S1", "MH4"}},
    {name = {def = "Ioprey", en = "Ioprey"}, spe = "rap", g = {"MH", "MH2", "MH4", "MHGen"}},
    {name = {def = "Izuchi", en = "Izuchi"}, spe = "rap", g = {"MHRise"}},
    {name = {def = "Jaggi", en = "Jaggi"}, spe = "rap", g = {"MH3", "MH4", "MHP3rd", "MHGen", "MHRise"}},
    {name = {def = "Jaggia", en = "Jaggia"}, spe = "rap", g = {"MH3", "MH4", "MHP3rd", "MHGen", "MHRise"}},
    {name = {def = "Jagras", en = "Jagras"}, spe = "cro", g = {"MHW", "MHRise"}},
    {name = {def = "Jyuratodus", en = "Jyuratodus"}, spe = "aqu", g = {"MHW", "MHRise"}},
    {name = {def = "Jhen Mohran", en = "Jhen Mohran"}, spe = "dra", g = {"MH3", "MHP3rd"}},
    {name = {def = "Jhen Mohran sacré", en = "Jhen Mohran Sacré"}, spe = "dra", g = {"MH3U"}},
    {name = {def = "Kamu Orugaron", en = "Kamu Orugaron"}, spe = "bet", g = {"MHF-S6"}},
    {name = {def = "Kecha Wacha", en = "Kecha Wacha"}, spe = "bet", g = {"MH4", "MHGen"}},
    {name = {def = "Kecha Wacha blanc", en = "Ash Kecha Wacha"}, spe = "bet", g = {"MH4U"}},
    {name = {def = "Kelbi", en = "Kelbi"}, spe = "her", g = {"MHO", "MH3", "MHP3rd", "MHGen", "MH", "MH2", "MHW", "MHF-S1", "MH4", "MHRise"}},
    {name = {def = "Keoaruboru", en = "Keoaruboru"}, spe = "dra", g = {"MHF-Z"}},
    {name = {def = "Kestodon", en = "Kestodon"}, spe = "her", g = {"MHW", "MHRise"}},
    {name = {def = "Khezu", en = "Khezu"}, spe = "vol", g = {"MHO", "MHGen", "MH", "MH2", "MHS", "MHF-S1", "MH4", "MHRise"}},
    {name = {def = "Khezu grenat", en = "Red Khezu", MHF = "Khezu Rouge", MH2 = "Khezu Rouge", MHF2 = "Khezu Rouge", MHFU = "Khezu Rouge"}, spe = "vol", g = {"MHO", "MHG", "MH2", "MHS", "MHF-S1", "MH4"}},
    {name = {def = "Khezu Zénith", en = "Zenith Khezu"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Kirin", en = "Kirin"}, spe = "dra", g = {"MHO", "MHGen", "MH", "MH2", "MHW", "MHF-S1", "MH4"}},
    {name = {def = "Kirin empereur de la Foudre", en = "Thunder Emperor Kirin"}, spe = "dra", g = {"MHXR"}},
    {name = {def = "Kirin Oroshi", en = "Oroshi Kirin"}, spe = "dra", g = {"MH4"}},
    {name = {def = "Konchu", en = "Konchu"}, spe = "neo", g = {"MH4", "MHGen"}},
    {name = {def = "Kuarusepusu", en = "Kuarusepusu"}, spe = "lev", g = {"MHF-F.4"}},
    {name = {def = "Kulu-Ya-Ku", en = "Kulu-Ya-Ku"}, spe = "rap", g = {"MHW", "MHRise"}},
    {name = {def = "Kulve Taroth", en = "Kulve Taroth"}, spe = "dra", g = {"MHW"}},
    {name = {def = "Kumashira", en = "Kumashira"}, spe = "bet", g = {"MHST"}},
    {name = {def = "Kurenai Goukami", en = "Kurenai Goukami"}, spe = "?", g = {"MHST"}},
    {name = {def = "Kushala Daora", en = "Kushala Daora"}, spe = "dra", g = {"MHO", "MHGen", "MHW", "MH2", "MHF-S1", "MHST", "MH4", "MHRise"}},
    {name = {def = "Kushala Daora rouillé", en = "Rusted Kushala Daora"}, spe = "dra", g = {"MHO", "MH2", "MH4U", "MHF-S1"}},
    {name = {def = "Kusubami", en = "Kusubami"}, spe = "car", g = {"MHF-G8"}},
    {name = {def = "Lagiacrus", en = "Lagiacrus"}, spe = "lev", g = {"MH3", "MHGen"}},
    {name = {def = "Lagiacrus conquête terrestre", en = "Landconquest Lagiacrus"}, spe = "lev", g = {"MHXR"}},
    {name = {def = "Lagiacrus ivoire", en = "Ivory Lagiacrus"}, spe = "lev", g = {""}},
    {name = {def = "Lagiacrus abyssal", en = "Abyssal Lagiacrus"}, spe = "lev", g = {"MH3U"}},
    {name = {def = "Lagombi", en = "Lagombi"}, spe = "bet", g = {"MHP3rd", "MH4", "MH3U", "MHGen", "MHRise"}},
    {name = {def = "Lagombi Maître-neige", en = "Snowbaron Lagombi"}, spe = "bet", g = {"MHGen"}},
    {name = {def = "Lagombi sorcière", en = "Witch Lagombi"}, spe = "bet", g = {"MHXR"}},
    {name = {def = "Lao-Shan Lung", en = "Lao-Shan Lung"}, spe = "dra", g = {"MHO", "MHGU", "MH", "MH2", "MHF-S1"}},
    {name = {def = "Lao-Shan Lung cendré", en = "Ashen Lao-Shan Lung", MHF1 = "Lao-Shan Lung gris", MH2 = "Lao-Shan Lung gris", MHF2 = "Lao-Shan Lung gris", MHFU = "Lao-Shan Lung gris"}, spe = "dra", g = {"MHG", "MH2", "MHF-S1"}},
    {name = {def = "Larinoth", en = "Larinoth"}, spe = "her", g = {"MHGen"}},
    {name = {def = "Lavasioth", en = "Lavasioth"}, spe = "aqu", g = {"MHO", "MHGen", "MHW", "MHFU", "MHF-S1"}},
    {name = {def = "Lavasioth rouge", en = "Red Lavasioth"}, spe = "aqu", g = {"MHF-S1"}},
    {name = {def = "Legiana", en = "Legiana"}, spe = "vol", g = {"MHW"}},
    {name = {def = "Legiana blizzard", en = "Shrieking Legiana"}, spe = "vol", g = {"MHWI"}},
    {name = {def = "Leshen", en = "Leshen"}, spe = "rel", g = {"MHW"}},
    {name = {def = "Lightenna", en = "Lightenna"}, spe = "neo", g = {"MHO"}},
    {name = {def = "Lightenna stygienne", en = "Poikilos Lightenna"}, spe = "neo", g = {"MHO"}},
    {name = {def = "Lolo Gougarf", en = "Lolo Gougarf"}, spe = "bet", g = {"MHF-G2"}},
    {name = {def = "Ludroth", en = "Ludroth"}, spe = "lev", g = {"MH3", "MHP3rd", "MHGen", "MHRise"}},
    {name = {def = "Ludroth royal", en = "Royal Ludroth"}, spe = "lev", g = {"MH3", "MHP3rd", "MHGen", "MHST", "MHRise"}},
    {name = {def = "Ludroth pourpre", en = "Purple Ludroth"}, spe = "lev", g = {""}},
    {name = {def = "Lunastra", en = "Lunastra"}, spe = "dra", g = {"MH2", "MHW", "MHF-S1"}},
    {name = {def = "Maccao", en = "Maccao"}, spe = "rap", g = {"MHGen"}},
    {name = {def = "Magnamalo", en = "Magnamalo"}, spe = "cro", g = {"MHRise"}},
    {name = {def = "Makili Pietru", en = "Makili Pietru"}, spe = "dra", g = {"MHST"}},
    {name = {def = "Malfestio", en = "Malfestio"}, spe = "rap", g = {"MHGen"}},
    {name = {def = "Malfestio Lune-noire", en = "Nightcloak Malfestio"}, spe = "rap", g = {"MHGU"}},
    {name = {def = "Melynx", en = "Melynx"}, spe = "lyn", g = {"MHO", "MH3", "MHP3rd", "MHGen", "MH", "MH2", "MHF-S1", "MH4","MHRise"}},
    {name = {def = "Meraginasu", en = "Meraginasu"}, spe = "vol", g = {"MHF-G3"}},
    {name = {def = "Mernos", en = "Mernos"}, spe = "ail", g = {"MHW"}},
    {name = {def = "Merphistophelin", en = "Merphistophelin"}, spe = "dra", g = {"MHO"}},
    {name = {def = "Merphistophelin élémentaire", en = "Elemental Merphistophelin"}, spe = "dra", g = {"MHO"}},
    {name = {def = "Metaru", en = "Metaru"}, spe = "lyn", g = {"MHXR"}},
    {name = {def = "Mi Ru", en = "Mi Ru"}, spe = "vol", g = {"MHF-G2"}},
    {name = {def = "Midogaron", en = "Midogaron"}, spe = "bet", g = {"MHF-G1"}},
    {name = {def = "Midogaron Zénith", en = "Zenith Midogaron"}, spe = "bet", g = {""}},
    {name = {def = "Mizutsune", en = "Mizutsune"}, spe = "lev", g = {"MHGen", "MHRise"}},
    {name = {def = "Mizutsune bulle de tonnerre", en = "Thunderbubble Mizutsune"}, spe = "lev", g = {"MHXR"}},
    {name = {def = "Mizutsune Perce-âme", en = "Soulseer Mizutsune"}, spe = "lev", g = {"MHGU"}},
    {name = {def = "Mizutsune supérieur", en = "Apex Mizutsune"}, spe = "lev", g = {"MHRise"}},
    {name = {def = "Monoblos", en = "Monoblos"}, spe = "vol", g = {"MHO", "MH", "MH2", "MHS", "MH4U", "MHF-S1"}},
    {name = {def = "Monoblos ivoire", en = "White Monoblos"}, spe = "vol", g = {"MHO", "MHG", "MH2", "MH4U", "MHF-S1"}},
    {name = {def = "Monoblos déchu", en = "Shattered Monoblos"}, spe = "vol", g = {"MHO"}},
    {name = {def = "Moofah", en = "Moofah"}, spe = "her", g = {"MHGen"}},
    {name = {def = "Mordomunth", en = "Morudomunto"}, spe = "dra", g = {"MHXR"}},
    {name = {def = "Mosswine", en = "Mosswine"}, spe = "her", g = {"MHO", "MHGen", "MH", "MH2", "MHW", "MHF-S1"}},
    {name = {def = "Namielle", en = "Namielle"}, spe = "dra", g = {"MHWI"}},
    {name = {def = "Najarala", en = "Najarala"}, spe = "rep", g = {"MH4", "MHGen"}},
    {name = {def = "Najarala du déluge", en = "Tidal Najarala"}, spe = "rep", g = {"MH4U"}},
    {name = {def = "Nakarkos", en = "Nakarkos"}, spe = "dra", g = {"MHGen"}},
    {name = {def = "Nargacuga", en = "Nargacuga"}, spe = "vol", g = {"MHO", "MH3U", "MHP3rd", "MHXR", "MHGen", "MHF-G10", "MHFU", "MHWI", "MHRise"}},
    {name = {def = "Nargacuga fugace", en = "Blinking Nargacuga"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Nargacuga des marées", en = "Fiercewater Nargacuga"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Nargacuga sélénite", en = "Lucent Nargacuga"}, spe = "vol", g = {"MH3U"}},
    {name = {def = "Nargacuga Vent-acier", en = "Silverwind Nargacuga"}, spe = "vol", g = {"MHGen"}},
    {name = {def = "Nargacuga vert", en = "Green Nargacuga"}, spe = "vol", g = {"MHP3rd", "MH3U"}},
    {name = {def = "Narwa du tonnerre", en = "Thunder Serpent Narwa"}, spe = "dra", g = {"MHRise"}},
    {name = {def = "Narwa la mère de tous", en = "Narwa the Allmother"}, spe = "dra", g = {"MHRise"}},
    {name = {def = "Nefu Garumudo", en = "Nefu Garumudo"}, spe = "dra", g = {"MHXR"}},
    {name = {def = "Nergigante", en = "Nergigante"}, spe = "dra", g = {"MHW"}},
    {name = {def = "Nergigante chaos", en = "Ruiner Nergigante"}, spe = "dra", g = {"MHWI"}},
    {name = {def = "Nerscylla", en = "Nerscylla"}, spe = "tem", g = {"MH4", "MHGU"}},
    {name = {def = "Nerscylla spectrale", en = "Shrouded Nerscylla"}, spe = "tem", g = {"MH4U"}},
    {name = {def = "Nibelsnarf", en = "Nibelsnarf"}, spe = "lev", g = {"MHP3rd", "MH3U", "MHGen", "MHXR"}},
    {name = {def = "Noios", en = "Noios"}, spe = "ail", g = {"MHW"}},
    {name = {def = "Nono Orugaron", en = "Nono Orugaron"}, spe = "bet", g = {"MHF-S6"}},
    {name = {def = "Odibatorasu", en = "Odibatorasu"}, spe = "vol", g = {"MHF-F.5"}},
    {name = {def = "Odogaron", en = "Odogaron"}, spe = "cro", g = {"MHW"}},
    {name = {def = "Odogaron désastre", en = "Ebony Odogaron"}, spe = "cro", g = {"MHWI"}},
    {name = {def = "Onimusha", en = "Onimusha"}, spe = "car", g = {"MHO"}},
    {name = {def = "Paolumu", en = "Paolumu"}, spe = "vol", g = {"MHW"}},
    {name = {def = "Paolumu belladone", en = "Nightshade Paolumu"}, spe = "vol", g = {"MHWI"}},
    {name = {def = "Pariapuria", en = "Pariapuria"}, spe = "vol", g = {"MHO", "MHF-S5"}},
    {name = {def = "Plesioth", en = "Plesioth"}, spe = "aqu", g = {"MHO", "MH3U", "MHGen", "MH", "MH2", "MHF-S1"}},
    {name = {def = "Plesioth dorade", en = "Seabream Plesioth"}, spe = "aqu", g = {"MHXR"}},
    {name = {def = "Plesioth émeraude", en = "Green Plesioth"}, spe = "aqu", g = {"MHG", "MH2", "MH3U", "MHF-S1"}},
    {name = {def = "Plesioth torrent", en = "Whitewater Plesioth"}, spe = "aqu", g = {"MHXR"}},
    {name = {def = "Plesioth Zénith", en = "Zenith Plesioth"}, spe = "aqu", g = {"MHF-Z"}},
    {name = {def = "Poborubarumu", en = "Poborubarumu"}, spe = "vol", g = {"MHF-G6"}},
    {name = {def = "Poisson", en = "Fish"}, spe = "poi", g = {"MH3"}},
    {name = {def = "Pokara", en = "Pokara"}, spe = "bet", g = {"MHF-G1"}},
    {name = {def = "Pokaradon", en = "Pokaradon"}, spe = "bet", g = {"MHF-G1"}},
    {name = {def = "Popo", en = "Popo"}, spe = "her", g = {"MHO", "MH3", "MHP3rd", "MHGen", "MH2", "MHF-S1", "MHWI", "MH4","MHRise"}},
    {name = {def = "Pukei-Pukei", en = "Pukei-Pukei"}, spe = "rap", g = {"MHW", "MHRise"}},
    {name = {def = "Pukei-Pukei corail", en = "Coral Pukei-Pukei"}, spe = "rap", g = {"MHWI"}},
    {name = {def = "Qurupeco", en = "Qurupeco"}, spe = "rap", g = {""}},
    {name = {def = "Qurupeco vermillon", en = "Crimson Qurupeco"}, spe = "rap", g = {""}},
    {name = {def = "Rachnoid", en = "Rachnoid"}, spe = "tem", g = {"MHRise"}},
    {name = {def = "Radobaan", en = "Radobaan"}, spe = "ter", g = {"MHW"}},
    {name = {def = "Rajang", en = "Rajang"}, spe = "bet", g = {"MHO", "MHGen", "MH2", "MHF-S1", "MHWI", "MHST", "MH4", "MHRise"}},
    {name = {def = "Rajang Enma", en = "Enma Rajang"}, spe = "bet", g = {"MHXR"}},
    {name = {def = "Rajang orage", MHFU = "Rajang Furieux", MH4 = "Rajang Furieux", MHGen = "Rajang Furieux", en = "Furious Rajang"}, spe = "bet", g = {"MHO", "MHXR", "MHGen", "MHFU", "MHWI", "MH4"}},
    {name = {def = "Rakna-Kadaki", en = "Rakna-Kadaki"}, spe = "tem", g = {"MHRise"}},
    {name = {def = "Raphinos", en = "Raphinos"}, spe = "ail", g = {"MHW"}},
    {name = {def = "Rathalos", en = "Rathalos"}, spe = "vol", g = {"MHO", "MH3", "MHP3rd", "MHGen", "MH", "MH2", "MHW", "MHS", "MHF-S1", "MH4","MHRise"}},
    {name = {def = "Rathalos ardent", en = "Flame Rathalos"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Rathalos azur", en = "Azure Rathalos"}, spe = "vol", g = {"MHO", "MHG", "MH2", "MH3U", "MHW", "MHF-S1", "MH4"}},
    {name = {def = "Rathalos de la destruction", en = "Destruction Wyvern Rathalos"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Rathalos d'argent", en = "Silver Rathalos"}, spe = "vol", g = {"MHO", "MH3U", "MHP3rd", "MHXR", "MHGen", "MHG", "MH2", "MHF-S1", "MHWI", "MH4"}},
    {name = {def = "Rathalos Roi-enfer", en = "Dreadking Rathalos"}, spe = "vol", g = {"MHGen"}},
    {name = {def = "Rathalos supérieur", en = "Apex Rathalos"}, spe = "vol", g = {"MHRise"}},
    {name = {def = "Rathalos Zénith", en = "Zenith Rathalos"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Rathian", en = "Rathian"}, spe = "vol", g = {"MHO", "MH3", "MHXR", "MHP3rd", "MHGen", "MH", "MH2", "MHW", "MHS", "MHF-S1", "MH4","MHRise"}},
    {name = {def = "Rathian d'or", en = "Gold Rathian"}, spe = "vol", g = {"MHO", "MH3U", "MHP3rd", "MHXR", "MHGen", "MHG", "MH2", "MHF-S1", "MHWI", "MH4"}},
    {name = {def = "Rathian infernale", en = "Conflagration Rathian"}, spe = "vol", g = {"MHO"}},
    {name = {def = "Rathian Reine-poison", en = "Dreadqueen Rathian"}, spe = "vol", g = {"MHGen"}},
    {name = {def = "Rathian sakura", en = "Pink Rathian", MH2 = "Rathian Rose", MHF = "Rathian Rose", MHFU = "Rathian Rose", MH3U = "Rathian Rose"}, spe = "vol", g = {"MHO", "MH3U", "MHW", "MHG", "MH2", "MHF-S1", "MH4"}},
    {name = {def = "Rathian sécheresse", en = "Scorching Heat Rathian"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Rathian supérieure", en = "Apex Rathian"}, spe = "vol", g = {"MHRise"}},
    {name = {def = "Raviente", en = "Laviente"}, spe = "inc", g = {""}},
    {name = {def = "Raviente agressif", en = "Violent Laviente"}, spe = "inc", g = {"MHF-F.1"}},
    {name = {def = "Raviente berserk", en = "Berserk Laviente"}, spe = "inc", g = {"MHF-G9"}},
    {name = {def = "Ray Gougarf", en = "Ray Gougarf"}, spe = "bet", g = {"MHF-G2"}},
    {name = {def = "Rebidiora", en = "Rebidiora"}, spe = "dra", g = {"MHF-G2"}},
    {name = {def = "Reine Seltas", en = "Seltas Queen"}, spe = "neo", g = {"MH4", "MHGen"}},
    {name = {def = "Reine Seltas du désert", en = "Desert Seltas Queen"}, spe = "neo", g = {"MH4U"}},
    {name = {def = "Reine Vespoid", en = "Vespoid Queen"}, spe = "neo", g = {"MHFU"}},
    {name = {def = "Remobra", en = "Remobra"}, spe = {MH2 = "vol", def = "rep"}, g = {"MH2", "MH4", "MHGen", "MHF-S1","MHRise"}},
    {name = {def = "Rhenoplos", en = "Rhenoplos"}, spe = "her", g = {"MH3", "MH4", "MHP3rd", "MHGen", "MHRise"}},
    {name = {def = "Roi Shakalaka", en = "King Shakalaka"}, spe = "lyn", g = {""}},
    {name = {def = "Rukodiora", en = "Rukodiora"}, spe = "dra", g = {"MHF-F.1"}},
    {name = {def = "Rukodiora Zénith", en = "Zenith Rukodiora"}, spe = "dra", g = {"MHF-Z"}},
    {name = {def = "Safi'jiiva", en = "Safi'jiiva"}, spe = "dra", g = {"MHWI"}},
    {name = {def = "Seltas", en = "Seltas"}, spe = "neo", g = {"MH4", "MHGen"}},
    {name = {def = "Seltas du désert", en = "Desert Seltas"}, spe = "neo", g = {"MH4U"}},
    {name = {def = "Seregios", en = "Seregios"}, spe = "vol", g = {"MH4U", "MHF-Z", "MHGen"}},
    {name = {def = "Seregios démoniaque", en = "Demonic Seregios"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Shagaru Magala", en = "Shagaru Magala"}, spe = "dra", g = {"MHF-Z", "MH4", "MHGen"}},
    {name = {def = "Shakalaka", en = "Shakalaka"}, spe = "lyn", g = {"MHO", "MH2", "MHF-S1"}},
    {name = {def = "Shamos", en = "Shamos"}, spe = "cro", g = {"MHW"}},
    {name = {def = "Shantien", en = "Shanthien"}, spe = "dra", g = {"MHF-G1"}},
    {name = {def = "Shara Ishvalda", en = "Shara Ishvalda"}, spe = "dra", g = {"MHWI"}},
    {name = {def = "Shen Gaoren", en = "Shen Gaoren"}, spe = "car", g = {"MH2", "MHF-G6", "MHF-S1"}},
    {name = {def = "Slagtoth", en = "Slagtoth"}, spe = "her", g = {"MHP3rd", "MH4", "MH3U", "MHGen", "MHRise"}},
    {name = {def = "Slicemargl", en = "Slicemargl"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Slicemargl pourpre", en = "Purple Slicemargl"}, spe = "bet", g = {"MHO"}},
    {name = {def = "Somnacanth", en = "Somnacanth"}, spe = "lev", g = {"MHRise"}},
    {name = {def = "Taikun Zamuza", en = "Taikun Zamuza"}, spe = "car", g = {"MHF-F.3"}},
    {name = {def = "Tartaronis", en = "Tartaronis"}, spe = "dra", g = {"MHO"}},
    {name = {def = "Tartaronis infernal", en = "Infernal Tartaronis"}, spe = "dra", g = {"MHO"}},
    {name = {def = "Teostra", en = "Teostra"}, spe = "dra", g = {"MHGen", "MHW", "MH2", "MHF-S1", "MH4", "MHRise"}},
    {name = {def = "Teppeki Shen Gaoren", en = "Teppeki Shen Gaoren"}, spe = "car", g = {"MHO"}},
    {name = {def = "Tetranadon", en = "Tetranadon"}, spe = "amp", g = {"MHRise"}},
    {name = {def = "Tetsucabra", en = "Tetsucabra"}, spe = "amp", g = {"MH4", "MHGen"}},
    {name = {def = "Tetsucabra féroce", en = "Berserk Tetsucabra"}, spe = "amp", g = {"MH4U"}},
    {name = {def = "Tetsucabra Brise-roc", en = "Drilltusk Tetsucabra"}, spe = "amp", g = {"MHGen"}},
    {name = {def = "Tigrex", en = "Tigrex"}, spe = "vol", g = {"MHO", "MHP3rd", "MHXR", "MHGen", "MHWI", "MHF2", "MHF-S1", "MH4", "MHST", "MHRise"}},
    {name = {def = "Tigrex berserk", en = "Brute Tigrex"}, spe = "vol", g = {"MHWI", "MHP3rd", "MH4"}},
    {name = {def = "Tigrex EX", en = "Tigrex EX"}, spe = "vol", g = {"MHST"}},
    {name = {def = "Tigrex magma", en = "Molten Tigrex"}, spe = "vol", g = {"MH4"}},
    {name = {def = "Tigrex Griffe-sombre", en = "Grimclaw Tigrex"}, spe = "vol", g = {"MHGen"}},
    {name = {def = "Tigrex Zénith", en = "Zenith Tigrex"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Tigrex ardent", en = "Flame Tigrex"}, spe = "vol", g = {"MHO"}},
    {name = {def = "Tigrex Unité-02", en = "Evangelion Tigrex"}, spe = "vol", g = {"MHXR"}},
    {name = {def = "Toa Tesukatora", en = "Toa Tesukatora"}, spe = "dra", g = {"MHF-G9"}},
    {name = {def = "Tobi-Kadachi", en = "Tobi-Kadachi"}, spe = "cro", g = {"MHW", "MHRise"}},
    {name = {def = "Tobi-Kadachi vipère", en = "Viper Tobi-Kadachi"}, spe = "cro", g = {"MHWI"}},
    {name = {def = "Toridcless", en = "Toridcless"}, spe = "vol", g = {"MHF-G9"}},
    {name = {def = "Tzitzi-Ya-Ku", en = "Tzitzi-Ya-Ku"}, spe = "rap", g = {"MHW"}},
    {name = {def = "Ukanlos", en = "Ukanlos"}, spe = "vol", g = {"MHP3rd", "MH4U", "MHFU", "MHGen"}},
    {name = {def = "Uragaan", en = "Uragaan"}, spe = "ter", g = {"MHO", "MHF-G9", "MH3", "MHP3rd", "MHGen", "MHW", "MHST"}},
    {name = {def = "Uragaan citrouille", en = "Pumpkin Uragaan"}, spe = "ter", g = {"MHXR"}},
    {name = {def = "Uragaan EX", en = "Uragaan EX"}, spe = "ter", g = {"MHST"}},
    {name = {def = "Uragaan pastèque", en = "Watermelon Uragaan"}, spe = "ter", g = {"MHXR"}},
    {name = {def = "Uragaan d'acier", en = "Steel Uragaan"}, spe = "ter", g = {""}},
    {name = {def = "Uragaan gemme", en = "Shiningrock Uragaan"}, spe = "ter", g = {"MHXR"}},
    {name = {def = "Uragaan Roi-cristal", en = "Crystalbeard Uragaan"}, spe = "ter", g = {"MHGen"}},
    {name = {def = "Uroktor", en = "Uroktor"}, spe = "lev", g = {"MH3", "MHP3rd", "MHGen", "MHRise"}},
    {name = {def = "Uroktor EX", en = "Uroktor EX"}, spe = "lev", g = {"MHST"}},
    {name = {def = "Uruki", en = "Uruki"}, spe = "lyn", g = {"MHF-GG"}},
    {name = {def = "Vaal Hazak", en = "Vaal Hazak"}, spe = "dra", g = {"MHW"}},
    {name = {def = "Vaal Hazak fléau", en = "Blackveil Vaal Hazak"}, spe = "dra", g = {"MHWI"}},
    {name = {def = "Valstrax", en = "Valstrax"}, spe = "dra", g = {"MHGU"}},
    {name = {def = "Valstrax écarlate", en = "Crimson Glow Valstrax"}, spe = "dra", g = {"MHRise"}},
    {name = {def = "Varusaburosu", en = "Varusaburosu"}, spe = "vol", g = {"MHF-G6"}},
    {name = {def = "Velkhana", en = "Velkhana"}, spe = "dra", g = {"MHWI"}},
    {name = {def = "Velocidrome", en = "Velocidrome"}, spe = "rap", g = {"MHO", "MHGen", "MH", "MH2", "MHS", "MHF-S1", "MH4"}},
    {name = {def = "Velociprey", en = "Velociprey"}, spe = "rap", g = {"MHO", "MHGen", "MH", "MH2", "MH4"}},
    {name = {def = "Versa Pietru", en = "Versa Pietru"}, spe = "dra", g = {"MHST"}},
    {name = {def = "Vespoid", en = "Vespoid"}, spe = "neo", g = {"MH", "MH2", "MHGen", "MHW", "MHF-S1", "MHO", "MHST"}},
    {name = {def = "Vieux Leshen", en = "Ancient Leshen"}, spe = "rel", g = {"MHW"}},
    {name = {def = "Voljang", en = "Voljang"}, spe = "bet", g = {"MHF-G10"}},
    {name = {def = "Volvidon", en = "Volvidon"}, spe = "bet", g = {"MHP3rd", "MH3U", "MHGen", "MHRise"}},
    {name = {def = "Volvidon de Noël", en = "Christmas Volvidon"}, spe = "bet", g = {"MHXR"}},
    {name = {def = "Volvidon étoile noire", en = "Black Star Beast Volvidon"}, spe = "bet", g = {"MHXR"}},
    {name = {def = "Wroggi", en = "Wroggi"}, spe = "rap", g = {"MHP3rd", "MH3U", "MHRise"}},
    {name = {def = "Wulg", en = "Wulg"}, spe = "bet", g = {"MHWI"}},
    {name = {def = "Wyverne désastreuse", en = "Disaster Wyverne", ch = "劫龙"}, spe = "ter", g = {"MHO"}},
    {name = {def = "Xeno'jiiva", en = "Xeno'jiiva"}, spe = "dra", g = {"MHW"}},
    {name = {def = "Yama Tsukami", en = "Yama Tsukami"}, spe = "dra", g = {"MHO", "MH2", "MHFU", "MHF-S1"}},
    {name = {def = "Yama Kurai", en = "Yama Kurai"}, spe = "dra", g = {"MHF-G8"}},
    {name = {def = "Yian Garuga", en = "Yian Garuga"}, spe = "rap", g = {"MHO", "MHF", "MHGen", "MH2", "MHF-S1", "MHWI", "MH4"}},
    {name = {def = "Yian Garuga balafré", en = "Scarred Yian Garuga"}, spe = "rap", g = {"MHF", "MH2", "MHF-S1", "MHWI", "MHST", "MH4"}},
    {name = {def = "Yian Garuga Œil-mort", en = "Deadeye Yian Garuga"}, spe = "rap", g = {"MHGen"}},
    {name = {def = "Yian Garuga une-oreille", en = "One-Eared Yian Garuga"}, spe = "rap", g = {"MHO"}},
    {name = {def = "Yian Kut-Ku", en = "Yian Kut-Ku"}, spe = "rap", g = {"MH", "MH2", "MH4", "MHGen"}},
    {name = {def = "Yian Kut-Ku bleu", en = "Blue Yian Kut-Ku"}, spe = "rap", g = {"MHG", "MH2", "MH4"}},
    {name = {def = "Zamite", en = "Zamite"}, spe = "amp", g = {"MH4", "MHGen", "MHRise"}},
    {name = {def = "Zamtrios", en = "Zamtrios"}, spe = "amp", g = {"MH4", "MHGen"}},
    {name = {def = "Zamtrios tigré", en = "Tigerstripe Zamtrios"}, spe = "amp", g = {"MH4U"}},
    {name = {def = "Zenaserisu", en = "Zenaserisu"}, spe = "vol", g = {"MHF-Z"}},
    {name = {def = "Zerureusu", en = "Zerureusu"}, spe = "vol", g = {"MHF-G3"}},
    {name = {def = "Zinogre", en = "Zinogre"}, spe = "cro", g = {"MHO", "MHF-G8", "MH3U", "MHP3rd", "MHGen", "MHWI", "MH4", "MHRise"}},
    {name = {def = "Zinogre FFBE", en = "FFBE Zinogre"}, spe = "cro", g = {"MHXR"}},
    {name = {def = "Zinogre stygien", en = "Stygian Zinogre"}, spe = "cro", g = {"MHWI", "MHF-G10", "MH4", "MH3U"}},
    {name = {def = "Zinogre supérieur", en = "Apex Zinogre"}, spe = "cro", g = {"MHRise"}},
    {name = {def = "Zinogre hurleur", en = "Howling Zinogre"}, spe = "cro", g = {"MHF-G9"}},
    {name = {def = "Zinogre immortel", en = "Immortal Zinogre"}, spe = "cro", g = {"MHXR"}},
    {name = {def = "Zinogre Feu-du-ciel", en = "Thunderlord Zinogre"}, spe = "cro", g = {"MHGen"}},
    {name = {def = "Zorah Magdaros", en = "Zorah Magdaros"}, spe = "dra", g = {"MHW"}},
}
-- Fonctions utiles au code

--[[ 
Remplace les valeurs compressées de la base de donnée par leur version en 
texte plein, modifie la base de données.
]]
local function load_monsters()
   local _, mon, k, v, game, suite, game2, here
   for _, mon in pairs(monsters) do 
       if type(mon.spe) == "string" then
            mon.spe = species[mon.spe]
        else
            for k, v in pairs(mon.spe) do
                mon.spe[k] = species[v]
            end
        end
        -- Ajout de la liste complète des jeux dans lesquels apparaît le monstre
        --[[ Partie désactivée car elle rendait le chargement de la base trop long
        for _, game in ipairs(mon.g) do
            if game ~= "" then
                suite = games_data.suite({args={game, zone=nil, abbr=true}})
                while suite ~= "" do
                    -- On vérifie que le jeu n'est pas déjà présent, pour éviter les doublons
                    here = false
                    for _, game2 in ipairs(mon.g) do
                        here = here or game2 == suite
                    end
                    if not here then
                        table.insert(mon.g, suite)
                    end
                    suite = games_data.suite({args={suite, zone=nil, abbr=true}})
                end
            end
        end]]
    end
end
load_monsters()

--[[
Trouve le monstre par son nom, on peut préciser le jeu ou la langue. 
Renvoie la clé dans le tableau monsters
]]
local function find_monster(name, game, langue, regex) 
    for key, value in pairs(monsters) do
        if langue and accessors.standard_filter(value, "name/"..langue, 
        	name, regex) then
            return value
        end
        if accessors.standard_filter(value, "name/" .. (game or "def"), name, 
        	regex) or value.name.def == name then
            return value
        end
    end
end


-- Fonctions accessibles par l'utilisateur

-- Vérifie l'intégrité de la base de données
function p.check_data() 
    local err, war = "Erreurs : ", "Avertissements : "
    for k, v in pairs(monsters) do
        if v.name then
            if not v.name.def then
                err = err .. "\n* Pas de nom par défaut défini ! (ligne " .. 
                k .. ")"
            end
            if not v.name.en then
                war = war .. "\n* Pas de nom en anglais défini ! (ligne " .. 
                k .. ")"
                if v.name.def then err = err .. " (" .. v.name.def .. ")" end
            end
            if v.spe then
                if not species[v.spe] then
                    err = err .. "\n* L'espèce n'est pas reconnue ! (ligne " .. 
                    k .. ")"
                    if v.name.def then err = err .. " (" .. v.name.def .. ")" end
                end
            else
                err = err .. "\n* Pas d'espèce définie ! (ligne " .. k .. ")"
                if v.name.def then err = err .. " (" .. v.name.def .. ")" end
            end
        else
            err = err .. "\n* Pas de nom défini ! (ligne " .. k .. ")"
        end
    end
    return war .. "\n" .. err .. "\nRemarque : les indices de ligne comptent" .. 
    " le numéro des l'entrées dans la table (la première entrée porte le" .. 
    " numéro 0). Ces indices peuvent être différents de ceux vus dans le code."
end

--[[ 
Renvoie son nom par défaut si le monstre en argument d'entré est référencé 
et rien sinon. Possibilité d'ajouter un opus en perticulier ou une langue 
différente
]]
function p.existe(a)
    local val = find_monster(a.args[1], a.args.jeu, a.args.langue, a.args.regex)
    if val 
        then return val.name.def
        else return ""
    end
end

--[[ 
Renvoie l'espèce d'un monstre, son premier argument anonyme est le nom du 
monstre, et "jeu" (optionnel), "noerror" (optionnel) 
]]
function p.espece(a)
    local monster, r_mon, spe = a.args[1]
    a.args.jeu = a.args.jeu or ""
    r_mon = find_monster(monster, a.args.jeu, a.args.langue, a.args.regex)
    if not r_mon then
        if a.args["noerror"] then
            return ""
        else 
            error("Le monstre " .. monster .. 
            	" n'est pas dans la base de données !")
        end
    end
    return accessors.get_value(r_mon["spe"], a.args.jeu, ".+", true)
end

--[[ Renvoie le nom du monstre dans une autre langue. Les arguments sont :
    * Le premier argument est le nom du monstre désiré
    * Le deuxième la langue de destination
    * langue : Si le nom du monstre n'est pas en français, vous devrez la 
    préciser avec cet argument
    * jeu : afin que le nom du monstre en sorti soit adapté à l'opus
    ]]
function p.traduction(a)
    local monster, to_language, from_language, jeu = a.args[1], a.args[2], 
    a.args.langue or "fr", a.args.jeu
    local r_mon = find_monster(monster, jeu, from_language, a.args.regex)
    if not r_mon then
        if a.args["noerror"] then
            return ""
        else 
            error("Le monstre " .. monster .. " n'est pas dans la base" ..
            	" de données !")
        end
    end
    if not r_mon.name[to_language] and not to_language == "fr" then
        if a.args["noerror"] then 
            return ""
        else
            error("Le monstre " .. monster .. " n'a pas de traduction " ..
            	"enregistrée dans la langue désirée ("..to_language..")")
        end
    end
    if to_language == "fr" then
        return r_mon.name[jeu] or r_mon.name.def
    else
        return r_mon.name[to_language]
    end
end

-- Liste des jeux dans lesquels apparaît un monstre
function p.liste_jeux(a)
   local mon = find_monster(a.args[1], a.args.jeu, a.args.langue, a.args.regex)
   local out, sep = "", a.args.sep or " • "
   assert(mon, "Le monstre " .. a.args[1] .. 
   	" ne figure pas dans la base de données !")
   for _, game in pairs(mon.g) do
       out = out .. sep .. game
    end
    return mw.ustring.sub(out, mw.ustring.len(sep) + 1)
end

--[[ 
Renvoie tous les monstres de la base de donnée passant un certain critère, 
les résultats ne sont pas triés. Les résultats sont séparés par "sep" 
(par défaut un espace).

Les critères son définis tels que "paramètre = valeur". Par exemple pour tous 
les monstres se nommant "Rathian", utilisez | name/def = Rathian.
]]
function p.liste_monstres(a)
    local out, sep, _, k, mon, arg, val, m, sub_m, sub_mon, add
    if a.args == nil then
        a.args = {["name/def"] = ".+", regex="Y"}
    end
    sep = a.args.sep or " • "
    out = {}
    for _, mon in pairs(monsters) do
        add = true
        for arg, val in pairs(a.args) do
           if not ({sep=true, jeu=true, regex=true})[arg] and 
           tonumber(arg) == nil then
               add = add and accessors.standard_filter(mon, arg, val, 
               	a.args.regex) 
            end
        end
        if add then
            table.insert(out, mon.name[a.args.jeu] or mon.name.def)
        end
    end
    return table.concat(out, sep)
end


return p