diff --git a/tests/static-smoke.test.mjs b/tests/static-smoke.test.mjs index 75c6324..c4f036e 100644 --- a/tests/static-smoke.test.mjs +++ b/tests/static-smoke.test.mjs @@ -2,6 +2,10 @@ import { readFile } from "node:fs/promises"; import { test } from "node:test"; import assert from "node:assert/strict"; +const SNAKE_CASE_RE = /^[a-z0-9]+(?:_[a-z0-9]+)*$/; +const PHYSICAL_HITZONE_KEYS = ["cut", "blunt", "ammo"]; +const ELEMENTAL_HITZONE_KEYS = ["fire", "water", "thunder", "ice", "dragon"]; + function valueAt(object, path) { return path.split(".").reduce((value, key) => value?.[key], object); } @@ -81,6 +85,99 @@ function validateSiteContent(site) { }); } +function assertSnakeCase(value, path) { + assert.equal(typeof value, "string", `${path} must be a string`); + assert.match(value, SNAKE_CASE_RE, `${path} must be snake_case`); +} + +function validateConditionValues(items, path) { + assert.ok(Array.isArray(items), `${path} must be an array`); + items.forEach((item, index) => { + assertSnakeCase(item?.condition, `${path}[${index}].condition`); + assert.ok(Array.isArray(item?.values), `${path}[${index}].values must be an array`); + item.values.forEach((value, valueIndex) => assertSnakeCase(value, `${path}[${index}].values[${valueIndex}]`)); + }); +} + +function validateMonsterData(monsters) { + assert.ok(Array.isArray(monsters), "monsters must be an array"); + const ids = new Set(); + const names = new Set(); + + monsters.forEach((monster, monsterIndex) => { + const path = `monsters[${monsterIndex}]`; + assert.equal(typeof monster.id, "number", `${path}.id must be a number`); + assert.ok(Number.isInteger(monster.id), `${path}.id must be an integer`); + assert.ok(!ids.has(monster.id), `${path}.id must be unique`); + ids.add(monster.id); + + assertSnakeCase(monster.name, `${path}.name`); + assert.ok(!names.has(monster.name), `${path}.name must be unique`); + names.add(monster.name); + assertSnakeCase(monster.type, `${path}.type`); + validateConditionValues(monster.ailments, `${path}.ailments`); + validateConditionValues(monster.weaknesses, `${path}.weaknesses`); + validateConditionValues(monster.weakpoints, `${path}.weakpoints`); + + assert.equal(monster.damage, undefined, `${path}.damage must not be used`); + assert.ok(Array.isArray(monster.hitzones), `${path}.hitzones must be an array`); + assert.ok(monster.hitzones.length > 0, `${path}.hitzones must not be empty`); + monster.hitzones.forEach((hitzone, hitzoneIndex) => { + const hitzonePath = `${path}.hitzones[${hitzoneIndex}]`; + assertSnakeCase(hitzone.name, `${hitzonePath}.name`); + assert.equal(typeof hitzone.physical, "object", `${hitzonePath}.physical must be an object`); + assert.equal(typeof hitzone.elemental, "object", `${hitzonePath}.elemental must be an object`); + PHYSICAL_HITZONE_KEYS.forEach((key) => assert.equal(typeof hitzone.physical[key], "number", `${hitzonePath}.physical.${key} must be a number`)); + ELEMENTAL_HITZONE_KEYS.forEach((key) => assert.equal(typeof hitzone.elemental[key], "number", `${hitzonePath}.elemental.${key} must be a number`)); + }); + }); +} + +function validateEndemicData(endemicPayload) { + ["endemicLife", "aquaticLife"].forEach((collection) => { + assert.ok(Array.isArray(endemicPayload[collection]), `${collection} must be an array`); + endemicPayload[collection].forEach((item, itemIndex) => { + const path = `${collection}[${itemIndex}]`; + assertSnakeCase(item.name, `${path}.name`); + if (item.description) assertSnakeCase(item.description, `${path}.description`); + validateConditionValues(item.locations, `${path}.locations`); + }); + }); +} + +function validateTranslationKeys(translations, path) { + Object.keys(translations).forEach((key) => { + assert.ok(!/\s/.test(key), `${path}.${key} must not contain spaces`); + }); +} + +function validateDiablo4Affixes(payload) { + assert.ok(Array.isArray(payload.categories), "diablo4.categories must be an array"); + assert.ok(payload.categories.length > 0, "diablo4.categories must not be empty"); + assert.ok(Array.isArray(payload.affixes), "diablo4.affixes must be an array"); + assert.ok(payload.affixes.length > 0, "diablo4.affixes must not be empty"); + + const ids = new Set(); + const categoryIds = payload.categories.map((category, index) => { + assertSnakeCase(category.id, `diablo4.categories[${index}].id`); + assertNonEmptyString({ category }, "category.label"); + assertSnakeCase(category.icon, `diablo4.categories[${index}].icon`); + assertSnakeCase(category.tone, `diablo4.categories[${index}].tone`); + return category.id; + }); + payload.affixes.forEach((affix, index) => { + assertSnakeCase(affix.id, `diablo4.affixes[${index}].id`); + assert.ok(!ids.has(affix.id), `diablo4.affixes[${index}].id must be unique`); + ids.add(affix.id); + assertNonEmptyString({ affix }, "affix.label"); + assert.ok(Array.isArray(affix.categories), `diablo4.affixes[${index}].categories must be an array`); + affix.categories.forEach((category, categoryIndex) => { + assertSnakeCase(category, `diablo4.affixes[${index}].categories[${categoryIndex}]`); + assert.ok(categoryIds.includes(category), `diablo4.affixes[${index}].categories[${categoryIndex}] must exist in diablo4.categories`); + }); + }); +} + test("vite entrypoint loads the react application", async () => { const html = await readFile("website/index.html", "utf8"); @@ -103,6 +200,12 @@ test("react application defines the expected local toolbox primitives", async () const iconComponent = await readFile("website/src/components/Icon.jsx", "utf8"); const gamesPage = await readFile("website/src/features/games/GamesPage.jsx", "utf8"); const gameRoute = await readFile("website/src/features/games/GameRoute.jsx", "utf8"); + const diablo4Page = await readFile("website/src/features/games/diablo4/Diablo4Page.jsx", "utf8"); + const diablo4Overview = await readFile("website/src/features/games/diablo4/Diablo4Overview.jsx", "utf8"); + const diablo4Listing = await readFile("website/src/features/games/diablo4/Diablo4Listing.jsx", "utf8"); + const diablo4Filters = await readFile("website/src/features/games/diablo4/Diablo4Filters.jsx", "utf8"); + const diablo4AffixCard = await readFile("website/src/features/games/diablo4/Diablo4AffixCard.jsx", "utf8"); + const diablo4Utils = await readFile("website/src/features/games/diablo4/utils.js", "utf8"); const mhwildsPage = await readFile("website/src/features/games/mhwilds/MhwildsPage.jsx", "utf8"); const mhwildsListing = await readFile("website/src/features/games/mhwilds/MhwildsListing.jsx", "utf8"); const mhwildsFilters = await readFile("website/src/features/games/mhwilds/MhwildsFilters.jsx", "utf8"); @@ -123,6 +226,7 @@ test("react application defines the expected local toolbox primitives", async () assert.match(styles, /@use "nebula"/); assert.match(styles, /@use "toolboxes"/); assert.match(styles, /@use "mhwilds"/); + assert.match(styles, /@use "diablo4"/); assert.match(styleTokens, /--gradient-brand/); assert.match(styleBase, /\.card-icon-button,\n\.drawer-action-button/); assert.match(styleNebula, /@function star-field/); @@ -148,10 +252,21 @@ test("react application defines the expected local toolbox primitives", async () assert.match(gamesPage, /export function GamesPage/); assert.match(gamesPage, /siteContent\.gamesPage/); assert.match(gamesPage, /game-card-cover-link/); + assert.match(gamesPage, /game-card-placeholder/); assert.match(gameRoute, /export function GameRoute/); assert.match(gameRoute, /MhwildsPage/); + assert.match(gameRoute, /Diablo4Page/); + assert.match(diablo4Page, /export function Diablo4Page/); + assert.match(diablo4Overview, /export function Diablo4Overview/); + assert.match(diablo4Listing, /export function Diablo4Listing/); + assert.match(diablo4Filters, /export function Diablo4Filters/); + assert.match(diablo4AffixCard, /export function Diablo4AffixCard/); + assert.match(diablo4AffixCard, /categoryMap/); + assert.match(diablo4Utils, /getFilteredDiablo4Affixes/); + assert.match(diablo4Utils, /getCategoryIconStyle/); assert.match(mhwildsPage, /export function MhwildsPage/); assert.match(mhwildsListing, /export function MhwildsListing/); + assert.match(mhwildsListing, /endemic_life/); assert.match(mhwildsFilters, /export function MhwildsFilters/); assert.match(monsterCard, /export function MonsterCard/); assert.match(monsterCard, /ui-icon-flip/); @@ -182,6 +297,8 @@ test("react application defines the expected local toolbox primitives", async () assert.match(linksModule, /copyText/); assert.match(source, /DEFAULT_SITE_CONTENT/); assert.match(source, /\/data\/site\.json/); + assert.match(source, /\/data\/diablo4\/affixes_types\.json/); + assert.match(source, /filterOptionKeys/); assert.match(source, /APP_STORAGE_LIMIT_BYTES/); assert.match(source, /DEFAULT_TOOLBOX_ICON/); assert.match(source, /TOOLBOX_ICON_FILES/); @@ -240,6 +357,7 @@ test("mhwilds data and assets are available", async () => { const monsters = JSON.parse(await readFile("website/public/data/mhwilds/monsters.json", "utf8")); const endemicLife = JSON.parse(await readFile("website/public/data/mhwilds/endemic_life.json", "utf8")); const translations = JSON.parse(await readFile("website/public/data/mhwilds/i18n/fr.json", "utf8")); + const enTranslations = JSON.parse(await readFile("website/public/data/mhwilds/i18n/en.json", "utf8")); const listingSource = await readFile("website/src/features/games/mhwilds/MhwildsListing.jsx", "utf8"); assert.equal(site.brand.name, "Sokko G"); @@ -252,16 +370,50 @@ test("mhwilds data and assets are available", async () => { assert.match(games.games[0].images.cardCover, /games\/mhwilds\/card-cover\.png/); assert.match(games.games[0].images.heroBg, /games\/mhwilds\/hero-bg\.png/); assert.ok(monsters.monsters.length > 0); + assert.deepEqual(monsters.elements, ["fire", "water", "thunder", "ice", "dragon"]); + validateMonsterData(monsters.monsters); + assert.ok(Array.isArray(endemicLife.locations), "endemicLife.locations must be an array"); + assert.ok(endemicLife.locations.length > 0, "endemicLife.locations must not be empty"); assert.ok(endemicLife.endemicLife.length > 0); + validateEndemicData(endemicLife); + validateTranslationKeys(translations, "fr"); + validateTranslationKeys(enTranslations, "en"); assert.equal(translations.monsters, "monstres"); + assert.equal(translations.dark_hornet, "frelon clair-obscur"); + assert.equal(translations["dark hornet"], undefined); assert.match(listingSource, /function MhwildsListing/); const monsterCardSource = await readFile("website/src/features/games/mhwilds/cards/MonsterCard.jsx", "utf8"); assert.match(monsterCardSource, /monster-card/); + assert.match(monsterCardSource, /monster\.hitzones/); await readFile("website/public/static/img/mhwilds/chatacabra.png"); await readFile("website/public/static/img/games/mhwilds/card-cover.png"); await readFile("website/public/static/img/games/mhwilds/hero-bg.png"); }); +test("diablo4 data and route are available", async () => { + const games = JSON.parse(await readFile("website/public/data/games.json", "utf8")); + const affixes = JSON.parse(await readFile("website/public/data/diablo4/affixes_types.json", "utf8")); + const routeSource = await readFile("website/src/features/games/GameRoute.jsx", "utf8"); + const pageSource = await readFile("website/src/features/games/diablo4/Diablo4Page.jsx", "utf8"); + const listingSource = await readFile("website/src/features/games/diablo4/Diablo4Listing.jsx", "utf8"); + const diablo4Game = games.games.find((game) => game.id === "diablo4"); + + assert.ok(diablo4Game, "games.json must declare diablo4"); + assert.match(diablo4Game.images.cardCover, /games\/diablo4\/card-cover\.png/); + assert.match(diablo4Game.images.heroBg, /games\/diablo4\/hero-bg\.png/); + validateDiablo4Affixes(affixes); + assert.match(routeSource, /game\.id === "diablo4"/); + assert.match(pageSource, /category === "affixes"/); + assert.match(listingSource, /diablo4\.filterOptions\.affixes/); + await readFile("website/public/static/img/games/diablo4/card-cover.png"); + await readFile("website/public/static/img/games/diablo4/hero-bg.png"); + await readFile("website/public/static/img/diablo4/axe.svg"); + await readFile("website/public/static/img/diablo4/cube.svg"); + await readFile("website/public/static/img/diablo4/fire.svg"); + await readFile("website/public/static/img/diablo4/shield.svg"); + await readFile("website/public/static/img/diablo4/wing.svg"); +}); + test("server and vite support local env configuration", async () => { const server = await readFile("server.mjs", "utf8"); const viteConfig = await readFile("vite.config.js", "utf8"); diff --git a/website/public/data/diablo4/affixes_types.json b/website/public/data/diablo4/affixes_types.json new file mode 100644 index 0000000..bed7463 --- /dev/null +++ b/website/public/data/diablo4/affixes_types.json @@ -0,0 +1,428 @@ +{ + "categories": [ + { + "id": "offensif", + "label": "Offensif", + "icon": "axe", + "tone": "red" + }, + { + "id": "defensif", + "label": "Défensif", + "icon": "shield", + "tone": "blue" + }, + { + "id": "attribut", + "label": "Attribut", + "icon": "wing", + "tone": "purple" + }, + { + "id": "mobilite", + "label": "Mobilité", + "icon": "wing", + "tone": "yellow" + }, + { + "id": "ressource", + "label": "Ressource", + "icon": "fire", + "tone": "green" + }, + { + "id": "competence", + "label": "Compétence", + "icon": "cube", + "tone": "gold" + }, + { + "id": "caracteristique", + "label": "Caractéristique", + "icon": "cube", + "tone": "gold" + }, + { + "id": "resistance", + "label": "Résistance", + "icon": "cube", + "tone": "violet" + } + ], + "affixes": [ + { + "id": "force", + "label": "Force", + "categories": [ + "offensif", + "caracteristique" + ] + }, + { + "id": "intelligence", + "label": "Intelligence", + "categories": [ + "offensif", + "caracteristique" + ] + }, + { + "id": "volonte", + "label": "Volonté", + "categories": [ + "offensif", + "caracteristique" + ] + }, + { + "id": "dexterite", + "label": "Dextérité", + "categories": [ + "offensif", + "caracteristique" + ] + }, + { + "id": "degats_arme", + "label": "Dégâts de l'arme", + "categories": [ + "offensif" + ] + }, + { + "id": "vitesse_attaque", + "label": "Vitesse d'attaque", + "categories": [ + "offensif" + ] + }, + { + "id": "chance_coup_critique", + "label": "Chance de coup critique", + "categories": [ + "offensif" + ] + }, + { + "id": "epines", + "label": "Épines", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_critiques", + "label": "Multiplicateur de dégâts critiques", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_tous_degats", + "label": "Multiplicateur de tous les dégâts", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_vulnerables", + "label": "Multiplicateur de dégâts aux cibles vulnérables", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_duree", + "label": "Multiplicateur de dégâts sur la durée", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_feu", + "label": "Multiplicateur de dégâts de feu", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_froid", + "label": "Multiplicateur de dégâts de froid", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_foudre", + "label": "Multiplicateur de dégâts de foudre", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_poison", + "label": "Multiplicateur de dégâts de poison", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_ombre", + "label": "Multiplicateur de dégâts d'ombre", + "categories": [ + "offensif" + ] + }, + { + "id": "multiplicateur_degats_physiques", + "label": "Multiplicateur de dégâts physiques", + "categories": [ + "offensif" + ] + }, + { + "id": "resistance_feu", + "label": "Résistance au feu", + "categories": [ + "defensif", + "resistance" + ] + }, + { + "id": "resistance_froid", + "label": "Résistance au froid", + "categories": [ + "defensif", + "resistance" + ] + }, + { + "id": "resistance_foudre", + "label": "Résistance à la foudre", + "categories": [ + "defensif", + "resistance" + ] + }, + { + "id": "resistance_poison", + "label": "Résistance au poison", + "categories": [ + "defensif", + "resistance" + ] + }, + { + "id": "resistance_ombre", + "label": "Résistance à l'ombre", + "categories": [ + "defensif", + "resistance" + ] + }, + { + "id": "resistance_tous_elements", + "label": "Résistance à tous les éléments", + "categories": [ + "defensif", + "resistance" + ] + }, + { + "id": "points_vie_maximum", + "label": "Points de vie maximum", + "categories": [ + "defensif" + ] + }, + { + "id": "chance_esquive", + "label": "Chance d'esquiver", + "categories": [ + "defensif" + ] + }, + { + "id": "regeneration_vie", + "label": "Régénération de vie", + "categories": [ + "defensif" + ] + }, + { + "id": "reduction_degats", + "label": "Réduction des dégâts", + "categories": [ + "defensif" + ] + }, + { + "id": "points_vie_par_victime", + "label": "Points de vie par victime", + "categories": [ + "defensif" + ] + }, + { + "id": "points_vie_par_coup", + "label": "Points de vie par coup", + "categories": [ + "defensif" + ] + }, + { + "id": "armure", + "label": "Armure", + "categories": [ + "defensif" + ] + }, + { + "id": "rangs_competences_basiques", + "label": "+X rangs aux compétences basiques", + "categories": [ + "attribut", + "competence" + ] + }, + { + "id": "rangs_competences_principales", + "label": "+X rangs aux compétences principales", + "categories": [ + "attribut", + "competence" + ] + }, + { + "id": "rangs_competence", + "label": "+X rangs à une compétence", + "categories": [ + "attribut", + "competence" + ] + }, + { + "id": "rangs_toutes_competences_classe", + "label": "+X rangs à toutes les compétences de la classe", + "categories": [ + "attribut", + "competence" + ] + }, + { + "id": "capacite_potion", + "label": "Capacité de potion", + "categories": [ + "attribut" + ] + }, + { + "id": "generation_fortification", + "label": "Génération de fortification", + "categories": [ + "attribut" + ] + }, + { + "id": "chance_coup_de_chance", + "label": "Chance d'obtenir un coup de chance", + "categories": [ + "attribut" + ] + }, + { + "id": "reduction_temps_recharge", + "label": "Réduction du temps de recharge", + "categories": [ + "attribut" + ] + }, + { + "id": "soins_recus", + "label": "Soins reçus", + "categories": [ + "attribut" + ] + }, + { + "id": "reduction_pertes_controle", + "label": "Réduction des pertes de contrôle", + "categories": [] + }, + { + "id": "generation_barriere", + "label": "Génération de barrière", + "categories": [] + }, + { + "id": "ressource_maximum", + "label": "Maximum de ressource", + "categories": [ + "ressource" + ] + }, + { + "id": "regeneration_ressource", + "label": "Régénération de ressource", + "categories": [ + "ressource" + ] + }, + { + "id": "generation_ressource", + "label": "Génération de ressource", + "categories": [ + "ressource" + ] + }, + { + "id": "ressource_par_victime", + "label": "Ressource par victime", + "categories": [ + "ressource" + ] + }, + { + "id": "reduction_cout_ressource", + "label": "Réduction du coût en ressource", + "categories": [ + "ressource" + ] + }, + { + "id": "recuperation_ressource_principale", + "label": "Récupération de la ressource principale", + "categories": [ + "ressource" + ] + }, + { + "id": "vitesse_deplacement", + "label": "Vitesse de déplacement", + "categories": [ + "mobilite" + ] + }, + { + "id": "charges_esquive_maximum", + "label": "Charges d'esquive maximum", + "categories": [ + "mobilite" + ] + }, + { + "id": "attaques_reduisent_recharge_esquive", + "label": "Les attaques réduisent le temps de recharge d'esquive", + "categories": [ + "mobilite" + ] + }, + { + "id": "vitesse_deplacement_apres_esquive", + "label": "Vitesse de déplacement après une esquive", + "categories": [ + "mobilite" + ] + } + ] +} diff --git a/website/public/data/games.json b/website/public/data/games.json index e4c2e62..233becd 100644 --- a/website/public/data/games.json +++ b/website/public/data/games.json @@ -35,6 +35,26 @@ ] } ] + }, + { + "id": "diablo4", + "title": "Diablo IV", + "eyebrow": "Guide de jeu", + "images": { + "cardCover": "/static/img/games/diablo4/card-cover.png", + "heroBg": "/static/img/games/diablo4/hero-bg.png" + }, + "summary": "Repères rapides pour consulter, filtrer et comparer les affixes utiles pendant la préparation d'un build.", + "sections": [ + { + "title": "Affixes", + "items": [ + "Filtrer par catégorie", + "Rechercher un affixe précis", + "Identifier les familles utiles à un build" + ] + } + ] } ] } diff --git a/website/public/data/mhwilds/endemic_life.json b/website/public/data/mhwilds/endemic_life.json index 1040c74..d02682e 100644 --- a/website/public/data/mhwilds/endemic_life.json +++ b/website/public/data/mhwilds/endemic_life.json @@ -1,4 +1,11 @@ { + "locations": [ + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "iceshard_cliffs", + "ruins_of_wyveria" + ], "endemicLife": [ { "name": "vigorwasp", @@ -6,27 +13,27 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "giant vigorwasp", + "name": "giant_vigorwasp", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "purewasp", @@ -34,66 +41,66 @@ { "condition": "default", "values": [ - "oilwell basin", - "ruins of wyveria" + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "vigormantle bug", + "name": "vigormantle_bug", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "chillmantle bug", + "name": "chillmantle_bug", "locations": [ { "condition": "default", "values": [ - "iceshard cliffs" + "iceshard_cliffs" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "heatmantle bug", + "name": "heatmantle_bug", "locations": [ { "condition": "default", "values": [ - "iceshard cliffs" + "iceshard_cliffs" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "wiggly litchi", + "name": "wiggly_litchi", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "paratoad", @@ -101,13 +108,13 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "nitrotoad", @@ -115,12 +122,12 @@ { "condition": "default", "values": [ - "oilwell basin", - "ruins of wyveria" + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "sleeptoad", @@ -128,12 +135,12 @@ { "condition": "default", "values": [ - "oilwell basin", - "ruins of wyveria" + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "flashflies", @@ -141,51 +148,51 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "dung beetle", + "name": "dung_beetle", "locations": [ { "condition": "default", "values": [ - "windward plains", - "oilwell basin" + "windward_plains", + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "bomb beetle", + "name": "bomb_beetle", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "rime beetle", + "name": "rime_beetle", "locations": [ { "condition": "default", "values": [ - "iceshard cliffs" + "iceshard_cliffs" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "thunderbug", @@ -193,25 +200,25 @@ { "condition": "default", "values": [ - "windward plains", - "ruins of wyveria" + "windward_plains", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "great thunderbugs", + "name": "great_thunderbugs", "locations": [ { "condition": "default", "values": [ - "windward plains", - "ruins of wyveria" + "windward_plains", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "flashbug", @@ -219,14 +226,14 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "godbug", @@ -234,14 +241,14 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "bitterbug", @@ -249,44 +256,44 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "dark hornet", + "name": "dark_hornet", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "wedge beetle", + "name": "wedge_beetle", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "iceshard cliffs", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "iceshard_cliffs", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "windrustler", @@ -294,23 +301,23 @@ { "condition": "default", "values": [ - "windward plains" + "windward_plains" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "black windrustler", + "name": "black_windrustler", "locations": [ { "condition": "default", "values": [ - "windward plains" + "windward_plains" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "nothpecker", @@ -318,23 +325,23 @@ { "condition": "default", "values": [ - "windward plains" + "windward_plains" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "landlight shrimp", + "name": "landlight_shrimp", "locations": [ { "condition": "default", "values": [ - "windward plains" + "windward_plains" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "amstrigian", @@ -342,12 +349,12 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest" + "windward_plains", + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "hymstrigian", @@ -355,12 +362,12 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest" + "windward_plains", + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "rufflizard", @@ -368,23 +375,23 @@ { "condition": "default", "values": [ - "windward plains" + "windward_plains" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "tracktail lizard", + "name": "tracktail_lizard", "locations": [ { "condition": "default", "values": [ - "windward plains" + "windward_plains" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "pallbug", @@ -392,14 +399,14 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "quatreflies", @@ -407,39 +414,39 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "emperor hopper", + "name": "emperor_hopper", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest" + "windward_plains", + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "tyrant hopper", + "name": "tyrant_hopper", "locations": [ { "condition": "default", "values": [ - "ruins of wyveria" + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "sandstar", @@ -447,75 +454,75 @@ { "condition": "default", "values": [ - "windward plains" + "windward_plains" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "leaflugger ant", + "name": "leaflugger_ant", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "florashell crab", + "name": "florashell_crab", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "crudeshell crab", + "name": "crudeshell_crab", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "curioshell crab", + "name": "curioshell_crab", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "smokeshroud gekko", + "name": "smokeshroud_gekko", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest" + "windward_plains", + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "dapperwing", @@ -523,11 +530,11 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "dazzlewing", @@ -535,11 +542,11 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "mimiphyta", @@ -547,23 +554,23 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "scarlet joyperch", + "name": "scarlet_joyperch", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "starduster", @@ -571,11 +578,11 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "vaporonid", @@ -583,12 +590,12 @@ { "condition": "default", "values": [ - "windward plains", - "ruins of wyveria" + "windward_plains", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "omenfly", @@ -596,12 +603,12 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest" + "windward_plains", + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "myriads", @@ -609,83 +616,83 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "jewel scarab", + "name": "jewel_scarab", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "regal jewel scarab", + "name": "regal_jewel_scarab", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "pink landlight shrimp", + "name": "pink_landlight_shrimp", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "ember rufflizard", + "name": "ember_rufflizard", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "azure rufflizard", + "name": "azure_rufflizard", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "gloom gekko", + "name": "gloom_gekko", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "scalebat", @@ -693,25 +700,25 @@ { "condition": "default", "values": [ - "windward plains", - "oilwell basin" + "windward_plains", + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "blink angler", + "name": "blink_angler", "locations": [ { "condition": "default", "values": [ - "windward plains", - "oilwell basin" + "windward_plains", + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "sparklerjelly", @@ -719,35 +726,35 @@ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "peony sparklerjelly", + "name": "peony_sparklerjelly", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "nu yaya", + "name": "nu_yaya", "locations": [ { "condition": "default", "values": [ - "oilwell basin" + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "gawkie", @@ -755,11 +762,11 @@ { "condition": "default", "values": [ - "ruins of wyveria" + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "solanaria", @@ -767,11 +774,11 @@ { "condition": "default", "values": [ - "ruins of wyveria" + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "pillopod", @@ -779,12 +786,12 @@ { "condition": "default", "values": [ - "oilwell basin", - "ruins of wyveria" + "oilwell_basin", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "gillopod", @@ -792,11 +799,11 @@ { "condition": "default", "values": [ - "ruins of wyveria" + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "petalfly", @@ -804,35 +811,35 @@ { "condition": "default", "values": [ - "ruins of wyveria" + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "xu yo", + "name": "xu_yo", "locations": [ { "condition": "default", "values": [ - "ruins of wyveria" + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "downy crake", + "name": "downy_crake", "locations": [ { "condition": "default", "values": [ - "iceshard cliffs" + "iceshard_cliffs" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "hercudrome", @@ -840,50 +847,50 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "gold hercudrome", + "name": "gold_hercudrome", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "prism hercudrome", + "name": "prism_hercudrome", "locations": [ { "condition": "default", "values": [ - "ruins of wyveria" + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" } ], "aquaticLife": [ { - "name": "virid bowfin", + "name": "virid_bowfin", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest" + "windward_plains", + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "sushifish", @@ -891,13 +898,13 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin" + "windward_plains", + "scarlet_forest", + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "whetfish", @@ -905,13 +912,13 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin" + "windward_plains", + "scarlet_forest", + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "goldenfish", @@ -919,14 +926,14 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "iceshard cliffs" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "iceshard_cliffs" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "platinumfish", @@ -934,40 +941,40 @@ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "iceshard cliffs" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "iceshard_cliffs" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "burst arowana", + "name": "burst_arowana", "locations": [ { "condition": "default", "values": [ - "scarlet forest", - "oilwell basin" + "scarlet_forest", + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "bomb arowana", + "name": "bomb_arowana", "locations": [ { "condition": "default", "values": [ - "scarlet forest", - "oilwell basin" + "scarlet_forest", + "oilwell_basin" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "goldenfry", @@ -975,14 +982,14 @@ { "condition": "default", "values": [ - "scarlet forest", - "oilwell basin", - "iceshard cliffs", - "ruins of wyveria" + "scarlet_forest", + "oilwell_basin", + "iceshard_cliffs", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "gunpowderfish", @@ -990,30 +997,30 @@ { "condition": "default", "values": [ - "scarlet forest", - "oilwell basin", - "iceshard cliffs", - "ruins of wyveria" + "scarlet_forest", + "oilwell_basin", + "iceshard_cliffs", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "gravid bowfin", + "name": "gravid_bowfin", "locations": [ { "condition": "default", "values": [ - "windward plains", - "scarlet forest", - "oilwell basin", - "iceshard cliffs", - "ruins of wyveria" + "windward_plains", + "scarlet_forest", + "oilwell_basin", + "iceshard_cliffs", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "escunite", @@ -1021,85 +1028,85 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "grand escunite", + "name": "grand_escunite", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "glass parexus", + "name": "glass_parexus", "locations": [ { "condition": "default", "values": [ - "iceshard cliffs", - "ruins of wyveria" + "iceshard_cliffs", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "blind perch", + "name": "blind_perch", "locations": [ { "condition": "default", "values": [ - "iceshard cliffs", - "ruins of wyveria" + "iceshard_cliffs", + "ruins_of_wyveria" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "gastronome tuna", + "name": "gastronome_tuna", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "goliath squid", + "name": "goliath_squid", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { - "name": "great trevally", + "name": "great_trevally", "locations": [ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "gajau", @@ -1107,11 +1114,11 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" }, { "name": "speartuna", @@ -1119,11 +1126,11 @@ { "condition": "default", "values": [ - "scarlet forest" + "scarlet_forest" ] } ], - "description": "to be completed" + "description": "to_be_completed" } ] } diff --git a/website/public/data/mhwilds/i18n/en.json b/website/public/data/mhwilds/i18n/en.json index 9790e7e..a02869f 100644 --- a/website/public/data/mhwilds/i18n/en.json +++ b/website/public/data/mhwilds/i18n/en.json @@ -1,217 +1,238 @@ { - "and": "and", - "or": "or", - "reset": "reset", - "create checklist": "create checklist", - "to be completed": "to be completed", - "monsters": "monsters", - "endemic life": "endemic life", - "name": "name", - "weaknesses": "weaknesses", - "locations": "locations", + "abdominal_iceplate": "abdominal iceplate", "ailments": "ailments", - "cut": "cut", - "blunt": "blunt", - "ammo": "ammo", - "windward plains": "windward plains", - "scarlet forest": "scarlet forest", - "ruins of wyveria": "ruins of wyveria", - "oilwell basin": "oilwell basin", - "iceshard cliffs": "iceshard cliffs", - "dragon": "dragon", - "fire": "fire", - "ice": "ice", - "thunder": "thunder", - "water": "water", - "dragonblight": "dragonblight", - "fireblight": "fireblight", - "iceblight": "iceblight", - "thunderblight": "thunderblight", - "waterblight": "waterblight", - "frostblight": "frostblight", - "bubbleblight": "bubbleblight", - "stench": "stench", - "sleep": "sleep", - "paralysis": "paralysis", - "blast": "blast", - "poison": "poison", - "webbed": "webbed", - "bleeding": "bleeding", - "stun": "stun", - "frenzy virus": "frenzy virus", - "defense down": "defense down", - "minor wind pressure": "minor wind pressure", - "dragon wind pressure": "dragon wind pressure", - "minor tremor": "minor tremor", - "weak roar": "weak roar", - "strong roar": "strong roar", - "mantle broken": "mantle broken", - "head": "head", - "nose": "nose", - "antenna": "antenna", - "neck": "neck", - "mouth": "mouth", - "torso": "torso", - "membrane": "membrane", - "tongue": "tongue", - "chest": "chest", - "belly": "belly", - "tentacle": "tentacle", - "back": "back", - "left wingarm": "left wingarm", - "right wingarm": "right wingarm", - "front left arm": "front left arm", - "front right arm": "front right arm", - "middle left arm": "middle left arm", - "middle right arm": "middle right arm", - "rear left arm": "rear left arm", - "rear right arm": "rear right arm", - "left wing": "left wing", - "right wing": "right wing", - "left leg": "left leg", - "right leg": "right leg", - "forelegs": "forelegs", - "left foreleg": "left foreleg", - "right foreleg": "right foreleg", - "hindlegs": "hindlegs", - "left hindleg": "left hindleg", - "right hindleg": "right hindleg", - "left chainblade": "left chainblade", - "right chainblade": "right chainblade", - "left claw": "left claw", - "right claw": "right claw", - "abdominal iceplate": "abdominal iceplate", - "large iceplate(hidden)": "large iceplate(hidden)", - "large iceplate(exposed)": "large iceplate(exposed)", - "head (crystallized)": "head (crystallized)", - "left wingarm (crystallized)": "left wingarm (crystallized)", - "right wingarm (crystallized)": "right wingarm (crystallized)", - "back fin": "back fin", - "stinger": "stinger", - "mantle": "mantle", - "petals": "petals", - "tail": "tail", - "tail hair": "tail hair", - "rear": "rear", - "tail tip": "tail tip", - "flying wyvern": "flying wyvern", - "fanged beast": "fanged beast", - "construct": "construct", - "chatacabra": "chatacabra", - "quematrice": "quematrice", - "lala barina": "lala barina", - "congalala": "congalala", - "balahara": "balahara", - "doshaguma": "doshaguma", - "uth duna": "uth duna", - "rompopolo": "rompopolo", - "rey dau": "rey dau", - "nerscylla": "nerscylla", - "hirabami": "hirabami", "ajarakan": "ajarakan", - "nu udra": "nu udra", - "jin dahaad": "jin dahaad", - "xu wu": "xu wu", - "zoh shia": "zoh shia", - "yian kut-ku": "yian kut-ku", - "gypceros": "gypceros", - "rathian": "rathian", - "rathalos": "rathalos", - "gravios": "gravios", - "blangonga": "blangonga", - "gore magala": "gore magala", - "arkveld": "arkveld", - "mizutsune": "mizutsune", - "guardian doshaguma": "guardian doshaguma", - "guardian rathalos": "guardian rathalos", - "guardian ebony odogaron": "guardian ebony odogaron", - "guardian arkveld": "guardian arkveld", - "guardian fulgur anjanath": "guardian fulgur anjanath", - "vigorwasp": "vigorwasp", - "giant vigorwasp": "giant vigorwasp", - "purewasp": "purewasp", - "vigormantle bug": "vigormantle bug", - "chillmantle bug": "chillmantle bug", - "heatmantle bug": "heatmantle bug", - "wiggly litchi": "wiggly litchi", - "paratoad": "paratoad", - "nitrotoad": "nitrotoad", - "sleeptoad": "sleeptoad", - "flashflies": "flashflies", - "dung beetle": "dung beetle", - "bomb beetle": "bomb beetle", - "rime beetle": "rime beetle", - "thunderbug": "thunderbug", - "great thunderbugs": "great thunderbugs", - "flashbug": "flashbug", - "godbug": "godbug", - "bitterbug": "bitterbug", - "dark hornet": "dark hornet", - "wedge beetle": "wedge beetle", - "windrustler": "windrustler", - "black windrustler": "black windrustler", - "nothpecker": "nothpecker", - "landlight shrimp": "landlight shrimp", + "ammo": "ammo", + "amphibian": "amphibian", "amstrigian": "amstrigian", - "hymstrigian": "hymstrigian", - "rufflizard": "rufflizard", - "tracktail lizard": "tracktail lizard", - "pallbug": "pallbug", - "quatreflies": "quatreflies", - "emperor hopper": "emperor hopper", - "tyrant hopper": "tyrant hopper", - "sandstar": "sandstar", - "leaflugger ant": "leaflugger ant", - "florashell crab": "florashell crab", - "crudeshell crab": "crudeshell crab", - "curioshell crab": "curioshell crab", - "smokeshroud gekko": "smokeshroud gekko", + "and": "and", + "antenna": "antenna", + "arkveld": "arkveld", + "azure_rufflizard": "azure rufflizard", + "back": "back", + "back_fin": "back fin", + "back_unity": "back unity", + "balahara": "balahara", + "belly": "belly", + "bitterbug": "bitterbug", + "black_windrustler": "black windrustler", + "blangonga": "blangonga", + "blast": "blast", + "bleeding": "bleeding", + "blind_perch": "blind perch", + "blink_angler": "blink angler", + "blunt": "blunt", + "bomb_arowana": "bomb arowana", + "bomb_beetle": "bomb beetle", + "brute_wyvern": "brute wyvern", + "bubbleblight": "bubbleblight", + "burst_arowana": "burst arowana", + "cephalopod": "cephalopod", + "chainblade": "chainblade", + "chatacabra": "chatacabra", + "chest": "chest", + "chillmantle_bug": "chillmantle bug", + "claw": "claw", + "congalala": "congalala", + "construct": "construct", + "create_checklist": "create checklist", + "crudeshell_crab": "crudeshell crab", + "curioshell_crab": "curioshell crab", + "cut": "cut", "dapperwing": "dapperwing", + "dark_hornet": "dark hornet", "dazzlewing": "dazzlewing", - "mimiphyta": "mimiphyta", - "scarlet joyperch": "scarlet joyperch", - "starduster": "starduster", - "vaporonid": "vaporonid", - "omenfly": "omenfly", - "myriads": "myriads", - "jewel scarab": "jewel scarab", - "regal jewel scarab": "regal jewel scarab", - "pink landlight shrimp": "pink landlight shrimp", - "ember rufflizard": "ember rufflizard", - "azure rufflizard": "azure rufflizard", - "gloom gekko": "gloom gekko", - "scalebat": "scalebat", - "blink angler": "blink angler", - "sparklerjelly": "sparklerjelly", - "peony sparklerjelly": "peony sparklerjelly", - "nu yaya": "nu yaya", - "gawkie": "gawkie", - "solanaria": "solanaria", - "pillopod": "pillopod", - "gillopod": "gillopod", - "petalfly": "petalfly", - "xu yo": "xu yo", - "downy crake": "downy crake", - "hercudrome": "hercudrome", - "gold hercudrome": "gold hercudrome", - "prism hercudrome": "prism hercudrome", - "virid bowfin": "virid bowfin", - "sushifish": "sushifish", - "whetfish": "whetfish", - "goldenfish": "goldenfish", - "platinumfish": "platinumfish", - "burst arowana": "burst arowana", - "bomb arowana": "bomb arowana", - "goldenfry": "goldenfry", - "gunpowderfish": "gunpowderfish", - "gravid bowfin": "gravid bowfin", + "default": "default", + "defense_down": "defense down", + "demi_elder": "demi elder", + "doshaguma": "doshaguma", + "downy_crake": "downy crake", + "dragon": "dragon", + "dragon_wind_pressure": "dragon wind pressure", + "dragonblight": "dragonblight", + "dung_beetle": "dung beetle", + "elder_dragon": "elder dragon", + "ember_rufflizard": "ember rufflizard", + "emperor_hopper": "emperor hopper", + "endemic_life": "endemic life", "escunite": "escunite", - "grand escunite": "grand escunite", - "glass parexus": "glass parexus", - "blind perch": "blind perch", - "gastronome tuna": "gastronome tuna", - "goliath squid": "goliath squid", - "great trevally": "great trevally", + "fanged_beast": "fanged beast", + "fire": "fire", + "fireblight": "fireblight", + "flashbug": "flashbug", + "flashflies": "flashflies", + "florashell_crab": "florashell crab", + "flying_wyvern": "flying wyvern", + "foreleg": "foreleg", + "forelegs": "forelegs", + "frenzy_virus": "frenzy virus", + "front_left_arm": "front left arm", + "front_right_arm": "front right arm", + "frostblight": "frostblight", "gajau": "gajau", - "speartuna": "speartuna" + "gastronome_tuna": "gastronome tuna", + "gawkie": "gawkie", + "giant_vigorwasp": "giant vigorwasp", + "gillopod": "gillopod", + "glass_parexus": "glass parexus", + "gloom_gekko": "gloom gekko", + "godbug": "godbug", + "gogmazios": "gogmazios", + "gold_hercudrome": "gold hercudrome", + "goldenfish": "goldenfish", + "goldenfry": "goldenfry", + "goliath_squid": "goliath squid", + "gore_magala": "gore magala", + "grand_escunite": "grand escunite", + "gravid_bowfin": "gravid bowfin", + "gravios": "gravios", + "great_thunderbugs": "great thunderbugs", + "great_trevally": "great trevally", + "guardian_arkveld": "guardian arkveld", + "guardian_doshaguma": "guardian doshaguma", + "guardian_ebony_odogaron": "guardian ebony odogaron", + "guardian_fulgur_anjanath": "guardian fulgur anjanath", + "guardian_rathalos": "guardian rathalos", + "gunpowderfish": "gunpowderfish", + "gypceros": "gypceros", + "head": "head", + "head_crystallized": "head (crystallized)", + "heatmantle_bug": "heatmantle bug", + "hercudrome": "hercudrome", + "hindlegs": "hindlegs", + "hirabami": "hirabami", + "hp_penalty": "hp penalty", + "hymstrigian": "hymstrigian", + "ice": "ice", + "iceblight": "iceblight", + "iceshard_cliffs": "iceshard cliffs", + "jewel_scarab": "jewel scarab", + "jin_dahaad": "jin dahaad", + "lagiacrus": "lagiacrus", + "lala_barina": "lala barina", + "landlight_shrimp": "landlight shrimp", + "large_iceplate_exposed": "large iceplate(exposed)", + "large_iceplate_hidden": "large iceplate(hidden)", + "leaflugger_ant": "leaflugger ant", + "left_chainblade": "left chainblade", + "left_claw": "left claw", + "left_foreleg": "left foreleg", + "left_hindleg": "left hindleg", + "left_leg": "left leg", + "left_wing": "left wing", + "left_wingarm": "left wingarm", + "left_wingarm_crystallized": "left wingarm (crystallized)", + "leg": "leg", + "legs": "legs", + "leviathan": "leviathan", + "locations": "locations", + "mantle": "mantle", + "mantle_broken": "mantle broken", + "membrane": "membrane", + "middle_left_arm": "middle left arm", + "middle_right_arm": "middle right arm", + "mimiphyta": "mimiphyta", + "minor_tremor": "minor tremor", + "minor_wind_pressure": "minor wind pressure", + "mizutsune": "mizutsune", + "monsters": "monsters", + "mouth": "mouth", + "myriads": "myriads", + "name": "name", + "neck": "neck", + "nerscylla": "nerscylla", + "nitrotoad": "nitrotoad", + "none": "none", + "nose": "nose", + "nothpecker": "nothpecker", + "nu_udra": "nu udra", + "nu_yaya": "nu yaya", + "oilwell_basin": "oilwell basin", + "omega_planetes": "omega planetes", + "omenfly": "omenfly", + "or": "or", + "pallbug": "pallbug", + "paralysis": "paralysis", + "paratoad": "paratoad", + "peony_sparklerjelly": "peony sparklerjelly", + "petalfly": "petalfly", + "petals": "petals", + "pillopod": "pillopod", + "pink_landlight_shrimp": "pink landlight shrimp", + "platinumfish": "platinumfish", + "poison": "poison", + "prism_hercudrome": "prism hercudrome", + "purewasp": "purewasp", + "quatreflies": "quatreflies", + "quematrice": "quematrice", + "rathalos": "rathalos", + "rathian": "rathian", + "rear": "rear", + "rear_left_arm": "rear left arm", + "rear_right_arm": "rear right arm", + "regal_jewel_scarab": "regal jewel scarab", + "reset": "reset", + "rey_dau": "rey dau", + "right_chainblade": "right chainblade", + "right_claw": "right claw", + "right_foreleg": "right foreleg", + "right_hindleg": "right hindleg", + "right_leg": "right leg", + "right_wing": "right wing", + "right_wingarm": "right wingarm", + "right_wingarm_crystallized": "right wingarm (crystallized)", + "rime_beetle": "rime beetle", + "rompopolo": "rompopolo", + "rufflizard": "rufflizard", + "ruins_of_wyveria": "ruins of wyveria", + "sandstar": "sandstar", + "scalebat": "scalebat", + "scarlet_forest": "scarlet forest", + "scarlet_joyperch": "scarlet joyperch", + "seregios": "seregios", + "sleep": "sleep", + "sleeptoad": "sleeptoad", + "smokeshroud_gekko": "smokeshroud gekko", + "solanaria": "solanaria", + "sparklerjelly": "sparklerjelly", + "speartuna": "speartuna", + "starduster": "starduster", + "stench": "stench", + "stinger": "stinger", + "strong_roar": "strong roar", + "stun": "stun", + "sushifish": "sushifish", + "tail": "tail", + "tail_hair": "tail hair", + "tail_tip": "tail tip", + "temnoceran": "temnoceran", + "tentacle": "tentacle", + "thunder": "thunder", + "thunderblight": "thunderblight", + "thunderbug": "thunderbug", + "to_be_completed": "to be completed", + "tongue": "tongue", + "torso": "torso", + "tracktail_lizard": "tracktail lizard", + "tyrant_hopper": "tyrant hopper", + "unknown": "???", + "uth_duna": "uth duna", + "vaporonid": "vaporonid", + "vigormantle_bug": "vigormantle bug", + "vigorwasp": "vigorwasp", + "virid_bowfin": "virid bowfin", + "water": "water", + "waterblight": "waterblight", + "weak_roar": "weak roar", + "weaknesses": "weaknesses", + "webbed": "webbed", + "wedge_beetle": "wedge beetle", + "whetfish": "whetfish", + "wiggly_litchi": "wiggly litchi", + "windrustler": "windrustler", + "windward_plains": "windward plains", + "xu_wu": "xu wu", + "xu_yo": "xu yo", + "yian_kut_ku": "yian kut-ku", + "zoh_shia": "zoh shia" } diff --git a/website/public/data/mhwilds/i18n/fr.json b/website/public/data/mhwilds/i18n/fr.json index 3426394..63e20b6 100644 --- a/website/public/data/mhwilds/i18n/fr.json +++ b/website/public/data/mhwilds/i18n/fr.json @@ -1,217 +1,238 @@ { - "and": "et", - "or": "ou", - "reset": "réinitialiser", - "create checklist": "créer checklist", - "to be completed": "à compléter", - "monsters": "monstres", - "endemic life": "faune endémique", - "name": "nom", - "weaknesses": "faiblesses", - "locations": "localisations", + "abdominal_iceplate": "plaque gelée(flancs)", "ailments": "afflictions", - "cut": "tranchant", - "blunt": "contondant", - "ammo": "projectiles", - "windward plains": "plaines venteuses", - "scarlet forest": "forêt écarlate", - "ruins of wyveria": "ruines de wyveria", - "oilwell basin": "bassin pétrolier", - "iceshard cliffs": "falaises de glaces", - "dragon": "dragon", - "fire": "feu", - "ice": "glace", - "thunder": "foudre", - "water": "eau", - "dragonblight": "fléau-dragon", - "fireblight": "fléau-feu", - "iceblight": "fléau-glace", - "thunderblight": "fléau-foudre", - "waterblight": "fléau-eau", - "frostblight": "fléau-givre", - "bubbleblight": "fléau-bulles", - "stench": "puanteur", - "sleep": "sommeil", - "paralysis": "paralysie", - "blast": "explosion", - "poison": "poison", - "webbed": "toile", - "bleeding": "hémorragie", - "stun": "flash", - "frenzy virus": "furie", - "defense down": "baisse de défense", - "minor wind pressure": "bourrasque mineure", - "dragon wind pressure": "bourrasque draconique", - "minor tremor": "secousse mineure", - "weak roar": "rugissement faible", - "strong roar": "rugissement fort", - "mantle broken": "manteau brisé", - "head": "tête", - "nose": "nez", - "antenna": "antenne", - "neck": "cou", - "mouth": "bouche", - "torso": "torse", - "membrane": "membrane", - "tongue": "langue", - "chest": "poitrine", - "belly": "ventre", - "tentacle": "tentacule", - "back": "dos", - "left wingarm": "patte ailée G", - "right wingarm": "patte ailée D", - "front left arm": "patte av. G", - "front right arm": "patte av. D", - "middle left arm": "patte mid. G", - "middle right arm": "patte mid. D", - "rear left arm": "patte ar. G", - "rear right arm": "patte ar. D", - "left wing": "aile gauche", - "right wing": "aile droite", - "left leg": "patte gauche", - "right leg": "patte droite", - "forelegs": "pattes av.", - "left foreleg": "patte av. G", - "right foreleg": "patte av. D", - "hindlegs": "pattes ar.", - "left hindleg": "patte ar. G", - "right hindleg": "patte ar. D", - "left chainblade": "chaines G", - "right chainblade": "chaines D", - "left claw": "griffes G", - "right claw": "griffes D", - "abdominal iceplate": "plaque gelée(flancs)", - "large iceplate(hidden)": "gde plaque gelée (cachée)", - "large iceplate(exposed)": "gde plaque gelée (visible)", - "head (crystallized)": "tête (cristallisée)", - "left wingarm (crystallized)": "patte ailée G (cristallisée)", - "right wingarm (crystallized)": "patte ailée D (cristallisée)", - "back fin": "nageoire dorsale", - "stinger": "dard", - "mantle": "manteau", - "petals": "petales", - "tail": "queue", - "tail hair": "poils de queue", - "rear": "arrière", - "tail tip": "Bout de queue", - "flying wyvern": "wyverne volante", - "fanged beast": "bête à crocs", - "construct": "artificiel", - "chatacabra": "chatacabra", - "quematrice": "quematrice", - "lala barina": "lala barina", - "congalala": "congalala", - "balahara": "balahara", - "doshaguma": "doshaguma", - "uth duna": "uth duna", - "rompopolo": "rompopolo", - "rey dau": "rey dau", - "nerscylla": "nerscylla", - "hirabami": "hirabami", "ajarakan": "ajarakan", - "nu udra": "nu udra", - "jin dahaad": "jin dahaad", - "xu wu": "xu wu", - "zoh shia": "zoh shia", - "yian kut-ku": "yian kut-ku", - "gypceros": "gypceros", - "rathian": "rathian", - "rathalos": "rathalos", - "gravios": "gravios", - "blangonga": "blangonga", - "gore magala": "gore magala", - "arkveld": "arkveld", - "mizutsune": "mizutsune", - "guardian doshaguma": "doshaguma gardien", - "guardian rathalos": "rathalos gardien", - "guardian ebony odogaron": "odogaron désastre gardien", - "guardian arkveld": "arkveld gardien", - "guardian fulgur anjanath": "anjanath fulgurant gardien", - "vigorwasp": "vitaguêpe", - "giant vigorwasp": "grande vitaguêpe", - "purewasp": "curaguêpe", - "vigormantle bug": "vitanille", - "chillmantle bug": "glacianille", - "heatmantle bug": "calonille", - "wiggly litchi": "chenille-litchi", - "paratoad": "paralycrapaud", - "nitrotoad": "nitrocrapaud", - "sleeptoad": "somnicrapaud", - "flashflies": "flashinsectes", - "dung beetle": "", - "bomb beetle": "scarabombe", - "rime beetle": "scarabée des neiges", - "thunderbug": "foudrinsectes", - "great thunderbugs": "grands foudrinsectes", - "flashbug": "scaralux", - "godbug": "insecte immortel", - "bitterbug": "amerinsecte", - "dark hornet": "frelon clair-obscur", - "wedge beetle": "scaragrappin", - "windrustler": "filovent", - "black windrustler": "filovent noir", - "nothpecker": "", - "landlight shrimp": "crevette terralux", + "ammo": "projectiles", + "amphibian": "amphibian", "amstrigian": "amstrigien", - "hymstrigian": "", - "rufflizard": "gonflézard", - "tracktail lizard": "lézard markoda", - "pallbug": "charoptère", - "quatreflies": "trèflémères", - "emperor hopper": "criquet empereur", - "tyrant hopper": "criquet tyran", - "sandstar": "étoile des sables", - "leaflugger ant": "fourmifolia", - "florashell crab": "floracrabe", - "crudeshell crab": "pétrocrabe", - "curioshell crab": "curiocrabe", - "smokeshroud gekko": "", + "and": "et", + "antenna": "antenne", + "arkveld": "arkveld", + "azure_rufflizard": "", + "back": "dos", + "back_fin": "nageoire dorsale", + "back_unity": "back unity", + "balahara": "balahara", + "belly": "ventre", + "bitterbug": "amerinsecte", + "black_windrustler": "filovent noir", + "blangonga": "blangonga", + "blast": "explosion", + "bleeding": "hémorragie", + "blind_perch": "perche aveugle", + "blink_angler": "poisson cillant", + "blunt": "contondant", + "bomb_arowana": "arowana bombe", + "bomb_beetle": "scarabombe", + "brute_wyvern": "brute wyvern", + "bubbleblight": "fléau-bulles", + "burst_arowana": "arowana explosif", + "cephalopod": "cephalopod", + "chainblade": "chainblade", + "chatacabra": "chatacabra", + "chest": "poitrine", + "chillmantle_bug": "glacianille", + "claw": "claw", + "congalala": "congalala", + "construct": "artificiel", + "create_checklist": "créer checklist", + "crudeshell_crab": "pétrocrabe", + "curioshell_crab": "curiocrabe", + "cut": "tranchant", "dapperwing": "bellaile", + "dark_hornet": "frelon clair-obscur", "dazzlewing": "", - "mimiphyta": "mimiflore", - "scarlet joyperch": "perche rampante", - "starduster": "stellardine", - "vaporonid": "", - "omenfly": "libellule divinatoire", - "myriads": "myriades", - "jewel scarab": "scarajoyau", - "regal jewel scarab": "scarajoyau royal", - "pink landlight shrimp": "crevette terralux rose", - "ember rufflizard": "gonflézard incandescent", - "azure rufflizard": "", - "gloom gekko": "gecko nocturne", - "scalebat": "chauve-souris à écailles", - "blink angler": "poisson cillant", - "sparklerjelly": "flaméduse", - "peony sparklerjelly": "", - "nu yaya": "nu yaya", - "gawkie": "zieuteur", - "solanaria": "solanaria", - "pillopod": "plalimace", - "gillopod": "glalimace", - "petalfly": "pétaluciole", - "xu yo": "", - "downy crake": "", - "hercudrome": "", - "gold hercudrome": "", - "prism hercudrome": "", - "virid bowfin": "amie émeraude", - "sushifish": "sushipoisson", - "whetfish": "poissaiguiseur", - "goldenfish": "poisson d'or", - "platinumfish": "poisson platine", - "burst arowana": "arowana explosif", - "bomb arowana": "arowana bombe", - "goldenfry": "poisson rouge", - "gunpowderfish": "poisson-poudre", - "gravid bowfin": "amie gravide", + "default": "default", + "defense_down": "baisse de défense", + "demi_elder": "demi elder", + "doshaguma": "doshaguma", + "downy_crake": "", + "dragon": "dragon", + "dragon_wind_pressure": "bourrasque draconique", + "dragonblight": "fléau-dragon", + "dung_beetle": "", + "elder_dragon": "elder dragon", + "ember_rufflizard": "gonflézard incandescent", + "emperor_hopper": "criquet empereur", + "endemic_life": "faune endémique", "escunite": "escunite", - "grand escunite": "grande escunite", - "glass parexus": "parexus de verre", - "blind perch": "perche aveugle", - "gastronome tuna": "thon glouton", - "goliath squid": "calmar titan", - "great trevally": "", + "fanged_beast": "bête à crocs", + "fire": "feu", + "fireblight": "fléau-feu", + "flashbug": "scaralux", + "flashflies": "flashinsectes", + "florashell_crab": "floracrabe", + "flying_wyvern": "wyverne volante", + "foreleg": "foreleg", + "forelegs": "pattes av.", + "frenzy_virus": "furie", + "front_left_arm": "patte av. G", + "front_right_arm": "patte av. D", + "frostblight": "fléau-givre", "gajau": "gajau", - "speartuna": "" + "gastronome_tuna": "thon glouton", + "gawkie": "zieuteur", + "giant_vigorwasp": "grande vitaguêpe", + "gillopod": "glalimace", + "glass_parexus": "parexus de verre", + "gloom_gekko": "gecko nocturne", + "godbug": "insecte immortel", + "gogmazios": "gogmazios", + "gold_hercudrome": "", + "goldenfish": "poisson d'or", + "goldenfry": "poisson rouge", + "goliath_squid": "calmar titan", + "gore_magala": "gore magala", + "grand_escunite": "grande escunite", + "gravid_bowfin": "amie gravide", + "gravios": "gravios", + "great_thunderbugs": "grands foudrinsectes", + "great_trevally": "", + "guardian_arkveld": "arkveld gardien", + "guardian_doshaguma": "doshaguma gardien", + "guardian_ebony_odogaron": "odogaron désastre gardien", + "guardian_fulgur_anjanath": "anjanath fulgurant gardien", + "guardian_rathalos": "rathalos gardien", + "gunpowderfish": "poisson-poudre", + "gypceros": "gypceros", + "head": "tête", + "head_crystallized": "tête (cristallisée)", + "heatmantle_bug": "calonille", + "hercudrome": "", + "hindlegs": "pattes ar.", + "hirabami": "hirabami", + "hp_penalty": "hp penalty", + "hymstrigian": "", + "ice": "glace", + "iceblight": "fléau-glace", + "iceshard_cliffs": "falaises de glaces", + "jewel_scarab": "scarajoyau", + "jin_dahaad": "jin dahaad", + "lagiacrus": "lagiacrus", + "lala_barina": "lala barina", + "landlight_shrimp": "crevette terralux", + "large_iceplate_exposed": "gde plaque gelée (visible)", + "large_iceplate_hidden": "gde plaque gelée (cachée)", + "leaflugger_ant": "fourmifolia", + "left_chainblade": "chaines G", + "left_claw": "griffes G", + "left_foreleg": "patte av. G", + "left_hindleg": "patte ar. G", + "left_leg": "patte gauche", + "left_wing": "aile gauche", + "left_wingarm": "patte ailée G", + "left_wingarm_crystallized": "patte ailée G (cristallisée)", + "leg": "leg", + "legs": "legs", + "leviathan": "leviathan", + "locations": "localisations", + "mantle": "manteau", + "mantle_broken": "manteau brisé", + "membrane": "membrane", + "middle_left_arm": "patte mid. G", + "middle_right_arm": "patte mid. D", + "mimiphyta": "mimiflore", + "minor_tremor": "secousse mineure", + "minor_wind_pressure": "bourrasque mineure", + "mizutsune": "mizutsune", + "monsters": "monstres", + "mouth": "bouche", + "myriads": "myriades", + "name": "nom", + "neck": "cou", + "nerscylla": "nerscylla", + "nitrotoad": "nitrocrapaud", + "none": "none", + "nose": "nez", + "nothpecker": "", + "nu_udra": "nu udra", + "nu_yaya": "nu yaya", + "oilwell_basin": "bassin pétrolier", + "omega_planetes": "omega planetes", + "omenfly": "libellule divinatoire", + "or": "ou", + "pallbug": "charoptère", + "paralysis": "paralysie", + "paratoad": "paralycrapaud", + "peony_sparklerjelly": "", + "petalfly": "pétaluciole", + "petals": "petales", + "pillopod": "plalimace", + "pink_landlight_shrimp": "crevette terralux rose", + "platinumfish": "poisson platine", + "poison": "poison", + "prism_hercudrome": "", + "purewasp": "curaguêpe", + "quatreflies": "trèflémères", + "quematrice": "quematrice", + "rathalos": "rathalos", + "rathian": "rathian", + "rear": "arrière", + "rear_left_arm": "patte ar. G", + "rear_right_arm": "patte ar. D", + "regal_jewel_scarab": "scarajoyau royal", + "reset": "réinitialiser", + "rey_dau": "rey dau", + "right_chainblade": "chaines D", + "right_claw": "griffes D", + "right_foreleg": "patte av. D", + "right_hindleg": "patte ar. D", + "right_leg": "patte droite", + "right_wing": "aile droite", + "right_wingarm": "patte ailée D", + "right_wingarm_crystallized": "patte ailée D (cristallisée)", + "rime_beetle": "scarabée des neiges", + "rompopolo": "rompopolo", + "rufflizard": "gonflézard", + "ruins_of_wyveria": "ruines de wyveria", + "sandstar": "étoile des sables", + "scalebat": "chauve-souris à écailles", + "scarlet_forest": "forêt écarlate", + "scarlet_joyperch": "perche rampante", + "seregios": "seregios", + "sleep": "sommeil", + "sleeptoad": "somnicrapaud", + "smokeshroud_gekko": "", + "solanaria": "solanaria", + "sparklerjelly": "flaméduse", + "speartuna": "", + "starduster": "stellardine", + "stench": "puanteur", + "stinger": "dard", + "strong_roar": "rugissement fort", + "stun": "flash", + "sushifish": "sushipoisson", + "tail": "queue", + "tail_hair": "poils de queue", + "tail_tip": "Bout de queue", + "temnoceran": "temnoceran", + "tentacle": "tentacule", + "thunder": "foudre", + "thunderblight": "fléau-foudre", + "thunderbug": "foudrinsectes", + "to_be_completed": "à compléter", + "tongue": "langue", + "torso": "torse", + "tracktail_lizard": "lézard markoda", + "tyrant_hopper": "criquet tyran", + "unknown": "???", + "uth_duna": "uth duna", + "vaporonid": "", + "vigormantle_bug": "vitanille", + "vigorwasp": "vitaguêpe", + "virid_bowfin": "amie émeraude", + "water": "eau", + "waterblight": "fléau-eau", + "weak_roar": "rugissement faible", + "weaknesses": "faiblesses", + "webbed": "toile", + "wedge_beetle": "scaragrappin", + "whetfish": "poissaiguiseur", + "wiggly_litchi": "chenille-litchi", + "windrustler": "filovent", + "windward_plains": "plaines venteuses", + "xu_wu": "xu wu", + "xu_yo": "", + "yian_kut_ku": "yian kut-ku", + "zoh_shia": "zoh shia" } diff --git a/website/public/data/mhwilds/monsters.json b/website/public/data/mhwilds/monsters.json index e552fd0..a624721 100644 --- a/website/public/data/mhwilds/monsters.json +++ b/website/public/data/mhwilds/monsters.json @@ -1,6 +1,14 @@ { + "elements": [ + "fire", + "water", + "thunder", + "ice", + "dragon" + ], "monsters": [ { + "id": 1, "name": "chatacabra", "type": "amphibian", "ailments": [ @@ -28,100 +36,133 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { "name": "tongue", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { "name": "torso", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { - "name": "left foreleg", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "left_foreleg", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "right foreleg", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "right_foreleg", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 0 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 0 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { "name": "rear", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 0 + } } ] }, { + "id": 2, "name": "quematrice", - "type": "brute wyvern", + "type": "brute_wyvern", "ailments": [ { "condition": "default", @@ -146,88 +187,117 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { - "name": "lala barina", + "id": 3, + "name": "lala_barina", "type": "temnoceran", "ailments": [ { @@ -253,127 +323,168 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { "name": "torso", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "left claw", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "left_claw", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "right claw", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "right_claw", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { "name": "petals", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { "name": "tail", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } } ] }, { + "id": 4, "name": "congalala", - "type": "fanged beast", + "type": "fanged_beast", "ailments": [ { "condition": "default", "values": [ - "minor tremor", + "minor_tremor", "poison", "paralysis", "blast", @@ -398,87 +509,116 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 5, "name": "balahara", "type": "leviathan", "ailments": [ @@ -505,106 +645,139 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { "name": "neck", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 6, "name": "doshaguma", - "type": "fanged beast", + "type": "fanged_beast", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor tremor" + "weak_roar", + "minor_tremor" ] } ], @@ -625,94 +798,123 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "tail hair", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "tail_hair", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 0 + } } ] }, { - "name": "uth duna", + "id": 7, + "name": "uth_duna", "type": "leviathan", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "waterblight" ] } @@ -733,94 +935,123 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 8, "name": "rompopolo", - "type": "brute wyvern", + "type": "brute_wyvern", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "poison" ] } @@ -841,105 +1072,138 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "back", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { - "name": "rey dau", - "type": "flying wyvern", + "id": 9, + "name": "rey_dau", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "thunderblight" ] } @@ -961,87 +1225,116 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 2, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 2, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wing", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { - "name": "left leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "name": "left_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { - "name": "right leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "name": "right_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 10, "name": "nerscylla", "type": "temnoceran", "ailments": [ @@ -1062,7 +1355,7 @@ ] }, { - "condition": "mantle broken", + "condition": "mantle_broken", "values": [ "thunder" ] @@ -1076,138 +1369,183 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 0 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 3, - "fire": 2, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 0 + } }, { - "name": "left foreleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 0 + "name": "left_foreleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 0 + } }, { - "name": "right foreleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 0 + "name": "right_foreleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 0 + } }, { - "name": "left claw", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "left_claw", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "right claw", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "right_claw", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { "name": "belly", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { "name": "stinger", - "cut": 2, - "blunt": 2, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { "name": "mantle", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 0 + } } ] }, { + "id": 11, "name": "hirabami", "type": "leviathan", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "frostblight" ] } @@ -1229,106 +1567,139 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 2, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 2, + "ice": 0, + "dragon": 1 + } }, { "name": "neck", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 2, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 2, + "ice": 0, + "dragon": 1 + } }, { "name": "torso", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } } ] }, { + "id": 12, "name": "ajarakan", - "type": "fanged beast", + "type": "fanged_beast", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor tremor", + "weak_roar", + "minor_tremor", "fireblight", "blast" ] @@ -1351,116 +1722,153 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "belly", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "back", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "tail tip", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "tail_tip", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { - "name": "nu udra", + "id": 13, + "name": "nu_udra", "type": "cephalopod", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "fireblight" ] } @@ -1481,140 +1889,185 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "membrane", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "mouth", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tentacle", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "front left arm", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "front_left_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "front right arm", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "front_right_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "middle left arm", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "middle_left_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "middle right arm", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "middle_right_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "rear left arm", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "rear_left_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "rear right arm", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "rear_right_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { - "name": "guardian doshaguma", + "id": 14, + "name": "guardian_doshaguma", "type": "construct", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor tremor", - "defense down" + "weak_roar", + "minor_tremor", + "defense_down" ] } ], @@ -1637,95 +2090,124 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 2 + "name": "left_foreleg", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 2 + } }, { - "name": "right foreleg", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 2 + "name": "right_foreleg", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 2 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 1 + } }, { - "name": "tail hair", - "cut": 2, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 1 + "name": "tail_hair", + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 1 + } } ] }, { - "name": "guardian rathalos", + "id": 15, + "name": "guardian_rathalos", "type": "construct", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor wind pressure", + "weak_roar", + "minor_wind_pressure", "fireblight", "poison" ] @@ -1749,105 +2231,138 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "neck", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "left wing", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "left_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "right wing", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "right_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "left leg", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 2 + "name": "left_leg", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { - "name": "right leg", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 2 + "name": "right_leg", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { "name": "tail", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 0, - "thunder": 1, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 1, + "ice": 0, + "dragon": 1 + } } ] }, { - "name": "jin dahaad", + "id": 16, + "name": "jin_dahaad", "type": "leviathan", "ailments": [ { "condition": "default", "values": [ - "strong roar", + "strong_roar", "iceblight", "frostblight" ] @@ -1870,138 +2385,183 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 2, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 2, + "ice": 0, + "dragon": 1 + } }, { "name": "neck", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 2, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 2, + "ice": 0, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "abdominal iceplate", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "abdominal_iceplate", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "large iceplate(hidden)", - "cut": 1, - "blunt": 1, - "ammo": 1, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "large_iceplate_hidden", + "physical": { + "cut": 1, + "blunt": 1, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "large iceplate(exposed)", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 2, - "ice": 0, - "dragon": 1 + "name": "large_iceplate_exposed", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 2, + "ice": 0, + "dragon": 1 + } } ] }, { - "name": "guardian ebony odogaron", + "id": 17, + "name": "guardian_ebony_odogaron", "type": "construct", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "dragonblight", "bleeding" ] @@ -2024,121 +2584,162 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 2, - "water": 3, - "thunder": 2, - "ice": 2, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 3, + "thunder": 2, + "ice": 2, + "dragon": 1 + } }, { "name": "neck", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 2, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 2, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 2, - "water": 2, - "thunder": 2, - "ice": 2, - "dragon": 2 + "name": "left_foreleg", + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 2, + "thunder": 2, + "ice": 2, + "dragon": 2 + } }, { - "name": "right foreleg", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 2, - "water": 2, - "thunder": 2, - "ice": 2, - "dragon": 2 + "name": "right_foreleg", + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 2, + "thunder": 2, + "ice": 2, + "dragon": 2 + } }, { "name": "back", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 2, - "thunder": 2, - "ice": 2, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 2, + "thunder": 2, + "ice": 2, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 2, - "thunder": 2, - "ice": 2, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 2, + "thunder": 2, + "ice": 2, + "dragon": 1 + } }, { "name": "tail", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 2, - "thunder": 2, - "ice": 2, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 2, + "thunder": 2, + "ice": 2, + "dragon": 2 + } }, { - "name": "tail tip", - "cut": 3, - "blunt": 2, - "ammo": 3, - "fire": 1, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "tail_tip", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 2 + } } ] }, { - "name": "xu wu", + "id": 18, + "name": "xu_wu", "type": "cephalopod", "ailments": [ { @@ -2162,139 +2763,184 @@ "values": [] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { "name": "membrane", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { "name": "mouth", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 3, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 3, + "dragon": 0 + } }, { "name": "torso", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { "name": "tentacle", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { - "name": "front left arm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "name": "front_left_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { - "name": "front right arm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "name": "front_right_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { - "name": "middle left arm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "name": "middle_left_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { - "name": "middle right arm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "name": "middle_right_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { - "name": "rear left arm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "name": "rear_left_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } }, { - "name": "rear right arm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "name": "rear_right_arm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } } ] }, { - "name": "guardian arkveld", + "id": 19, + "name": "guardian_arkveld", "type": "construct", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor wind pressure", + "weak_roar", + "minor_wind_pressure", "dragonblight" ] } @@ -2315,117 +2961,154 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wing", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left chainblade", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "left_chainblade", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { - "name": "right chainblade", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "right_chainblade", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { - "name": "left leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { - "name": "zoh shia", + "id": 20, + "name": "zoh_shia", "type": "construct", "ailments": [ { "condition": "default", "values": [ - "strong roar", - "dragon wind pressure", + "strong_roar", + "dragon_wind_pressure", "fireblight", "thunderblight" ] @@ -2445,160 +3128,213 @@ "values": [] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "head (crystallized)", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "head_crystallized", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "neck", - "cut": 2, - "blunt": 2, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wingarm", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "left_wingarm", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "right wingarm", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "right_wingarm", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "left wingarm (crystallized)", - "cut": 3, - "blunt": 3, - "ammo": 1, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_wingarm_crystallized", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wingarm (crystallized)", - "cut": 3, - "blunt": 3, - "ammo": 1, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_wingarm_crystallized", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 2, - "blunt": 2, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { - "name": "yian kut-ku", - "type": "flying wyvern", + "id": 21, + "name": "yian_kut_ku", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "minor wind pressure", + "minor_wind_pressure", "fireblight" ] } @@ -2621,105 +3357,138 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 2, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 2, + "dragon": 0 + } }, { "name": "neck", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 2, - "thunder": 2, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { "name": "torso", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "left wing", - "cut": 4, - "blunt": 3, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 0 + "name": "left_wing", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { - "name": "right wing", - "cut": 4, - "blunt": 3, - "ammo": 4, - "fire": 1, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 0 + "name": "right_wing", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 0 + } }, { - "name": "left leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "left_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { - "name": "right leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 0 + "name": "right_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 0 + } }, { "name": "tail", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 2, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 2, + "dragon": 0 + } } ] }, { + "id": 22, "name": "gypceros", - "type": "flying wyvern", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "minor wind pressure", + "minor_wind_pressure", "poison", "stun" ] @@ -2742,106 +3511,139 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 0, - "ice": 2, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 0, + "ice": 2, + "dragon": 1 + } }, { "name": "neck", - "cut": 3, - "blunt": 2, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wing", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 1, - "thunder": 0, - "ice": 2, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 0, + "ice": 2, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 1, - "thunder": 0, - "ice": 2, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 0, + "ice": 2, + "dragon": 1 + } }, { - "name": "left leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "name": "left_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { - "name": "right leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "name": "right_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 4, - "blunt": 3, - "ammo": 4, - "fire": 2, - "water": 1, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 4 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 0, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 23, "name": "rathian", - "type": "flying wyvern", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor wind pressure", + "weak_roar", + "minor_wind_pressure", "fireblight", "poison" ] @@ -2864,106 +3666,139 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 0, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { "name": "neck", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "left wing", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "left_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "right wing", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "right_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "left leg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 0, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "left_leg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "right leg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 0, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "right_leg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } } ] }, { - "name": "guardian fulgur anjanath", + "id": 24, + "name": "guardian_fulgur_anjanath", "type": "construct", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor wind pressure", + "weak_roar", + "minor_wind_pressure", "thunderblight" ] } @@ -2986,117 +3821,154 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 2, - "thunder": 0, - "ice": 2, - "dragon": 2 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 0, + "ice": 2, + "dragon": 2 + } }, { "name": "nose", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 2, - "thunder": 0, - "ice": 2, - "dragon": 2 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 0, + "ice": 2, + "dragon": 2 + } }, { "name": "neck", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 2, - "thunder": 0, - "ice": 2, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 0, + "ice": 2, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 2, - "dragon": 0 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 2, + "dragon": 0 + } }, { - "name": "left wing", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 2, - "thunder": 0, - "ice": 2, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 0, + "ice": 2, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 2, - "thunder": 0, - "ice": 2, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 0, + "ice": 2, + "dragon": 1 + } }, { - "name": "left leg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 2, - "dragon": 0 + "name": "left_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 2, + "dragon": 0 + } }, { - "name": "right leg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 1, - "thunder": 0, - "ice": 2, - "dragon": 0 + "name": "right_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 0, + "ice": 2, + "dragon": 0 + } }, { "name": "tail", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 1, - "water": 2, - "thunder": 0, - "ice": 2, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 1, + "water": 2, + "thunder": 0, + "ice": 2, + "dragon": 1 + } } ] }, { + "id": 25, "name": "rathalos", - "type": "flying wyvern", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor wind pressure", + "weak_roar", + "minor_wind_pressure", "fireblight", "poison" ] @@ -3119,106 +3991,139 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 0, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { "name": "neck", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "left wing", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "left_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "right wing", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "name": "right_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { - "name": "left leg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 0, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "left_leg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "right leg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 0, - "thunder": 1, - "ice": 0, - "dragon": 1 + "name": "right_leg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } } ] }, { + "id": 26, "name": "gravios", - "type": "flying wyvern", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "strong roar", - "minor tremor", + "strong_roar", + "minor_tremor", "fireblight", "poison", "sleep" @@ -3246,116 +4151,153 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "neck", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "belly", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "back", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wing", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 2, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 2, + "thunder": 1, + "ice": 1, + "dragon": 2 + } } ] }, { + "id": 27, "name": "blangonga", - "type": "fanged beast", + "type": "fanged_beast", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "iceblight", "frostblight" ] @@ -3378,95 +4320,124 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 4, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 0 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 0 + } }, { "name": "torso", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 2, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 0 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 0 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 0 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 0 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 0 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 0 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 0 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 0 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 0 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 0 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 0 + } } ] }, { - "name": "gore magala", - "type": "demi elder", + "id": 28, + "name": "gore_magala", + "type": "demi_elder", "ailments": [ { "condition": "default", "values": [ - "strong roar", - "frenzy virus" + "strong_roar", + "frenzy_virus" ] } ], @@ -3488,161 +4459,214 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "antenna", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 2, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 2 + } }, { "name": "neck", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wing", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wingarm", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_wingarm", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wingarm", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_wingarm", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 29, "name": "arkveld", - "type": "flying wyvern", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "weak roar", - "minor wind pressure", + "weak_roar", + "minor_wind_pressure", "dragonblight" ] } @@ -3663,116 +4687,153 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wing", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left chainblade", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "left_chainblade", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { - "name": "right chainblade", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "right_chainblade", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { - "name": "left leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right leg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_leg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 30, "name": "mizutsune", "type": "leviathan", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "fireblight", "waterblight", "bubbleblight" @@ -3797,127 +4858,168 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 4, - "blunt": 4, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left claw", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 2 + "name": "left_claw", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { - "name": "right claw", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 2 + "name": "right_claw", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { - "name": "back fin", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "back_fin", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 2 + "name": "left_foreleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { - "name": "right foreleg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 2, - "ice": 1, - "dragon": 2 + "name": "right_foreleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 2, + "ice": 1, + "dragon": 2 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 2, - "ammo": 3, - "fire": 1, - "water": 0, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 1, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 31, "name": "seregios", - "type": "flying wyvern", + "type": "flying_wyvern", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "bleeding" ] } @@ -3939,105 +5041,138 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 1 + } }, { "name": "neck", - "cut": 2, - "blunt": 3, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left wing", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "left_wing", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "right wing", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 1, - "dragon": 1 + "name": "right_wing", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 1, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 2, - "dragon": 1 + "name": "left_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 2, + "dragon": 1 + } }, { - "name": "right hindleg", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 2, - "dragon": 1 + "name": "right_hindleg", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 2, + "dragon": 1 + } }, { "name": "tail", - "cut": 3, - "blunt": 2, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 1 + } } ] }, { + "id": 32, "name": "lagiacrus", "type": "leviathan", "ailments": [ { "condition": "default", "values": [ - "weak roar", + "weak_roar", "thunderblight" ] } @@ -4061,106 +5196,139 @@ ] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 2, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "neck", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "forelegs", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "back", - "cut": 3, - "blunt": 3, - "ammo": 1, - "fire": 3, - "water": 0, - "thunder": 0, - "ice": 2, - "dragon": 2 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 1 + }, + "elemental": { + "fire": 3, + "water": 0, + "thunder": 0, + "ice": 2, + "dragon": 2 + } }, { "name": "hindlegs", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 1 + } }, { "name": "tail", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 3, - "water": 0, - "thunder": 0, - "ice": 1, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 3, + "water": 0, + "thunder": 0, + "ice": 1, + "dragon": 1 + } } ] }, { - "name": "omega planetes", - "type": "???", + "id": 33, + "name": "omega_planetes", + "type": "unknown", "ailments": [ { "condition": "default", "values": [ "fireblight", - "hp penalty" + "hp_penalty" ] } ], @@ -4179,106 +5347,139 @@ "values": [] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 1, - "dragon": 3 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 1, + "dragon": 3 + } }, { "name": "torso", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 0, - "water": 1, - "thunder": 1, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 1, + "ice": 0, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 3, - "blunt": 4, - "ammo": 4, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 1, - "dragon": 3 + "name": "left_foreleg", + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 1, + "dragon": 3 + } }, { - "name": "right foreleg", - "cut": 3, - "blunt": 4, - "ammo": 4, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 1, - "dragon": 3 + "name": "right_foreleg", + "physical": { + "cut": 3, + "blunt": 4, + "ammo": 4 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 1, + "dragon": 3 + } }, { "name": "back", - "cut": 3, - "blunt": 2, - "ammo": 2, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 1, - "dragon": 2 + "physical": { + "cut": 3, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 1, + "dragon": 2 + } }, { - "name": "left hindleg", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 1, - "dragon": 2 + "name": "left_hindleg", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 1, + "dragon": 2 + } }, { - "name": "right hindleg", - "cut": 4, - "blunt": 3, - "ammo": 3, - "fire": 0, - "water": 1, - "thunder": 3, - "ice": 1, - "dragon": 2 + "name": "right_hindleg", + "physical": { + "cut": 4, + "blunt": 3, + "ammo": 3 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 3, + "ice": 1, + "dragon": 2 + } }, { - "name": "back unity", - "cut": 4, - "blunt": 4, - "ammo": 1, - "fire": 0, - "water": 1, - "thunder": 2, - "ice": 1, - "dragon": 4 + "name": "back_unity", + "physical": { + "cut": 4, + "blunt": 4, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 1, + "thunder": 2, + "ice": 1, + "dragon": 4 + } } ] }, { + "id": 34, "name": "gogmazios", - "type": "Elder Dragon", + "type": "elder_dragon", "ailments": [ { "condition": "default", "values": [ - "minor tremor", - "strong roar", + "minor_tremor", + "strong_roar", "fireblight" ] } @@ -4298,138 +5499,186 @@ "values": [] } ], - "damage": [ + "hitzones": [ { "name": "head", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 1 + } }, { "name": "chest", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 1 + } }, { - "name": "left foreleg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 0, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "left_foreleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { - "name": "right foreleg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 0, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "right_foreleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { "name": "belly", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 0, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 0, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { "name": "back", - "cut": 2, - "blunt": 2, - "ammo": 2, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 2 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 1 + } }, { - "name": "left wingarm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 1 + "name": "left_wingarm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 1 + } }, { - "name": "right wingarm", - "cut": 3, - "blunt": 3, - "ammo": 2, - "fire": 2, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 1 + "name": "right_wingarm", + "physical": { + "cut": 3, + "blunt": 3, + "ammo": 2 + }, + "elemental": { + "fire": 2, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 1 + } }, { - "name": "left hindleg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "left_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { - "name": "right hindleg", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 0 + "name": "right_hindleg", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 0 + } }, { "name": "tail", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 1 + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 1 + } }, { - "name": "tail tip", - "cut": 2, - "blunt": 2, - "ammo": 1, - "fire": 1, - "water": 0, - "thunder": 0, - "ice": 0, - "dragon": 1 + "name": "tail_tip", + "physical": { + "cut": 2, + "blunt": 2, + "ammo": 1 + }, + "elemental": { + "fire": 1, + "water": 0, + "thunder": 0, + "ice": 0, + "dragon": 1 + } } ] } diff --git a/website/public/static/img/diablo4/axe.svg b/website/public/static/img/diablo4/axe.svg new file mode 100644 index 0000000..4c959cc --- /dev/null +++ b/website/public/static/img/diablo4/axe.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/website/public/static/img/diablo4/cube.svg b/website/public/static/img/diablo4/cube.svg new file mode 100644 index 0000000..bbef9bb --- /dev/null +++ b/website/public/static/img/diablo4/cube.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/website/public/static/img/diablo4/fire.svg b/website/public/static/img/diablo4/fire.svg new file mode 100644 index 0000000..d45ac09 --- /dev/null +++ b/website/public/static/img/diablo4/fire.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/website/public/static/img/diablo4/shield.svg b/website/public/static/img/diablo4/shield.svg new file mode 100644 index 0000000..eb72e16 --- /dev/null +++ b/website/public/static/img/diablo4/shield.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/website/public/static/img/diablo4/wing.svg b/website/public/static/img/diablo4/wing.svg new file mode 100644 index 0000000..810aedc --- /dev/null +++ b/website/public/static/img/diablo4/wing.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/website/public/static/img/games/diablo4/card-cover.png b/website/public/static/img/games/diablo4/card-cover.png new file mode 100644 index 0000000..72c310e Binary files /dev/null and b/website/public/static/img/games/diablo4/card-cover.png differ diff --git a/website/public/static/img/games/diablo4/hero-bg.png b/website/public/static/img/games/diablo4/hero-bg.png new file mode 100644 index 0000000..98e8d6f Binary files /dev/null and b/website/public/static/img/games/diablo4/hero-bg.png differ diff --git a/website/src/features/games/GameRoute.jsx b/website/src/features/games/GameRoute.jsx index e04520a..b8f1b6d 100644 --- a/website/src/features/games/GameRoute.jsx +++ b/website/src/features/games/GameRoute.jsx @@ -1,4 +1,5 @@ import { GamesPage } from "./GamesPage.jsx"; +import { Diablo4Page } from "./diablo4/Diablo4Page.jsx"; import { MhwildsPage } from "./mhwilds/MhwildsPage.jsx"; export function GameRoute(props) { @@ -7,6 +8,7 @@ export function GameRoute(props) { const heroStyle = game?.images?.heroBg ? { "--game-hero-image": `url("${game.images.heroBg}")` } : undefined; if (!game) return ; + if (game.id === "diablo4") return ; if (game.id === "mhwilds") return ; return ( diff --git a/website/src/features/games/GamesPage.jsx b/website/src/features/games/GamesPage.jsx index 5c153eb..17c61ba 100644 --- a/website/src/features/games/GamesPage.jsx +++ b/website/src/features/games/GamesPage.jsx @@ -20,7 +20,11 @@ export function GamesPage({ siteContent, games, gamesError }) { title={`Ouvrir ${game.title}`} style={{ "--game-cover": game.cover || "var(--gradient-nebula)" }} > - {game.title} + {game.images?.cardCover || game.image ? ( + {game.title} + ) : ( + + )}

{game.eyebrow || "Guide de jeu"}

diff --git a/website/src/features/games/diablo4/Diablo4AffixCard.jsx b/website/src/features/games/diablo4/Diablo4AffixCard.jsx new file mode 100644 index 0000000..1b47d54 --- /dev/null +++ b/website/src/features/games/diablo4/Diablo4AffixCard.jsx @@ -0,0 +1,22 @@ +import { getCategoryIconStyle, getCategoryLabel } from "./utils.js"; + +export function Diablo4AffixCard({ affix, categoryMap }) { + return ( +
+
+

{affix.label}

+
+ {(affix.categories || []).map((categoryId) => { + const category = categoryMap[categoryId] || categoryId; + return ( + + + ); + })} +
+
+
+ ); +} diff --git a/website/src/features/games/diablo4/Diablo4Filters.jsx b/website/src/features/games/diablo4/Diablo4Filters.jsx new file mode 100644 index 0000000..bfa1978 --- /dev/null +++ b/website/src/features/games/diablo4/Diablo4Filters.jsx @@ -0,0 +1,58 @@ +import { Icon } from "../../../components/Icon.jsx"; +import { getCategoryIconStyle, getCategoryId, getCategoryLabel } from "./utils.js"; + +export function Diablo4Filters({ options, filters, setFilters }) { + const selected = new Set(filters.categories || []); + const logicLabel = filters.logic === "or" ? "Ou" : "Et"; + + return ( +
+
+
+

Filtres

+

Catégories

+
+ +
+ +
+ Correspondance + +
+
+ {options.map((option) => ( + + ))} +
+
+ ); +} diff --git a/website/src/features/games/diablo4/Diablo4Listing.jsx b/website/src/features/games/diablo4/Diablo4Listing.jsx new file mode 100644 index 0000000..c1be0e4 --- /dev/null +++ b/website/src/features/games/diablo4/Diablo4Listing.jsx @@ -0,0 +1,45 @@ +import { useMemo } from "react"; +import { Diablo4AffixCard } from "./Diablo4AffixCard.jsx"; +import { Diablo4Filters } from "./Diablo4Filters.jsx"; +import { getCategoryLabel, getFilteredDiablo4Affixes } from "./utils.js"; + +export function Diablo4Listing({ diablo4, filters, setFilters }) { + const activeFilters = filters.diablo4; + const options = [...(diablo4.filterOptions.affixes || [])].sort((a, b) => getCategoryLabel(a).localeCompare(getCategoryLabel(b), "fr")); + const visible = useMemo( + () => getFilteredDiablo4Affixes({ affixes: diablo4.affixes, filters: activeFilters }), + [diablo4.affixes, activeFilters] + ); + + return ( + <> +
+
+

Diablo IV

+
+

Affixes

+ {visible.length} / {diablo4.affixes.length} +
+

Filtrez les affixes par nom et catégories pour retrouver rapidement les statistiques utiles à votre build.

+
+
+
+ +
+
+ {visible.length ? visible.map((affix) => ( + + )) : ( +
+

Aucun résultat

+

Ajustez la recherche ou réinitialisez les filtres actifs.

+
+ )} +
+
+
+ + ); +} diff --git a/website/src/features/games/diablo4/Diablo4Overview.jsx b/website/src/features/games/diablo4/Diablo4Overview.jsx new file mode 100644 index 0000000..3cb53d6 --- /dev/null +++ b/website/src/features/games/diablo4/Diablo4Overview.jsx @@ -0,0 +1,22 @@ +export function Diablo4Overview({ game }) { + const heroStyle = game?.images?.heroBg ? { "--game-hero-image": `url("${game.images.heroBg}")` } : undefined; + + return ( + <> +
+
+

Guide de jeu

+

Diablo IV

+

Consultez rapidement les affixes et leurs catégories pour préparer vos builds sans quitter votre session.

+
+
+
+ + +
+ + ); +} diff --git a/website/src/features/games/diablo4/Diablo4Page.jsx b/website/src/features/games/diablo4/Diablo4Page.jsx new file mode 100644 index 0000000..a720bbd --- /dev/null +++ b/website/src/features/games/diablo4/Diablo4Page.jsx @@ -0,0 +1,38 @@ +import { Diablo4Listing } from "./Diablo4Listing.jsx"; +import { Diablo4Overview } from "./Diablo4Overview.jsx"; + +export function Diablo4Page({ category, game, diablo4, filters, setFilters }) { + const activeCategory = category === "affixes" ? category : ""; + const heroStyle = game?.images?.heroBg ? { "--game-hero-image": `url("${game.images.heroBg}")` } : undefined; + + if (!diablo4.loaded) { + return ( + <> +
+
+

Diablo IV

+

Diablo IV

+

Chargement des affixes et filtres associés.

+
+
+
+

Chargement

+

Préparation des données locales...

+
+ + ); + } + + if (diablo4.error) { + return ( +
+

Impossible de charger Diablo IV

+

{diablo4.error}

+
+ ); + } + + if (!activeCategory) return ; + + return ; +} diff --git a/website/src/features/games/diablo4/utils.js b/website/src/features/games/diablo4/utils.js new file mode 100644 index 0000000..91fe5e8 --- /dev/null +++ b/website/src/features/games/diablo4/utils.js @@ -0,0 +1,36 @@ +export function normalizeText(value) { + return String(value || "").trim().toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/\s+/g, " "); +} + +export function formatCategory(value) { + return String(value || "").replace(/_/g, " "); +} + +export function getCategoryId(category) { + return typeof category === "string" ? category : category?.id || ""; +} + +export function getCategoryLabel(category) { + return typeof category === "string" ? formatCategory(category) : category?.label || formatCategory(category?.id); +} + +export function getCategoryIconStyle(category) { + const icon = typeof category === "string" ? "" : category?.icon; + return icon ? { "--diablo4-category-icon": `url("/static/img/diablo4/${icon}.svg")` } : undefined; +} + +export function getFilteredDiablo4Affixes({ affixes, filters }) { + const selected = filters.categories || []; + const search = normalizeText(filters.name); + + return affixes.filter((affix) => { + const nameMatches = !search || normalizeText(affix.label).includes(search) || normalizeText(affix.id).includes(search); + if (!nameMatches) return false; + if (!selected.length) return true; + + const categories = affix.categories || []; + return filters.logic === "or" && selected.length >= 2 + ? selected.some((category) => categories.includes(category)) + : selected.every((category) => categories.includes(category)); + }); +} diff --git a/website/src/features/games/mhwilds/MhwildsFilters.jsx b/website/src/features/games/mhwilds/MhwildsFilters.jsx index b4a087f..7db6dae 100644 --- a/website/src/features/games/mhwilds/MhwildsFilters.jsx +++ b/website/src/features/games/mhwilds/MhwildsFilters.jsx @@ -3,7 +3,7 @@ import { assetPath } from "./utils.js"; export function MhwildsFilters({ category, filterKey, options, filters, setFilters, t }) { const activeFilters = filters[category]; - const selected = new Set(activeFilters[filterKey]); + const selected = new Set(activeFilters[filterKey] || []); const logicLabel = activeFilters.logic === "or" ? t("or", { capitalize: true }) : t("and", { capitalize: true }); const updateCategory = (updater) => setFilters((state) => ({ ...state, [category]: updater(state[category]) })); diff --git a/website/src/features/games/mhwilds/MhwildsListing.jsx b/website/src/features/games/mhwilds/MhwildsListing.jsx index 646a939..a41b05f 100644 --- a/website/src/features/games/mhwilds/MhwildsListing.jsx +++ b/website/src/features/games/mhwilds/MhwildsListing.jsx @@ -2,15 +2,17 @@ import { useMemo } from "react"; import { EndemicCard } from "./cards/EndemicCard.jsx"; import { MonsterCard } from "./cards/MonsterCard.jsx"; import { MhwildsFilters } from "./MhwildsFilters.jsx"; -import { getFilteredMhwildsItems, getUniqueConditionValues } from "./utils.js"; +import { getFilteredMhwildsItems, getMhwildsFilterKey, getUniqueConditionValues } from "./utils.js"; export function MhwildsListing({ category, mhwilds, filters, setFilters, t }) { const isMonsters = category === "monsters"; - const filterKey = isMonsters ? "weaknesses" : "locations"; + const filterKey = getMhwildsFilterKey(category, mhwilds); const items = isMonsters ? mhwilds.monsters : mhwilds.endemic; - const options = getUniqueConditionValues(items, filterKey, t); - const visible = useMemo(() => getFilteredMhwildsItems({ category, mhwilds, filters, t }), [category, mhwilds, filters, t]); - const label = isMonsters ? t("monsters", { capitalize: true }) : t("endemic life", { capitalize: true }); + const options = (mhwilds.filterOptions?.[category]?.length ? mhwilds.filterOptions[category] : getUniqueConditionValues(items, filterKey, t)) + .filter((value) => value !== "none") + .sort((a, b) => t(a).localeCompare(t(b), "fr")); + const visible = useMemo(() => getFilteredMhwildsItems({ category, filterKey, mhwilds, filters, t }), [category, filterKey, mhwilds, filters, t]); + const label = isMonsters ? t("monsters", { capitalize: true }) : t("endemic_life", { capitalize: true }); return ( <> diff --git a/website/src/features/games/mhwilds/cards/DamageTable.jsx b/website/src/features/games/mhwilds/cards/DamageTable.jsx index f2be021..f6c703b 100644 --- a/website/src/features/games/mhwilds/cards/DamageTable.jsx +++ b/website/src/features/games/mhwilds/cards/DamageTable.jsx @@ -1,16 +1,23 @@ import { assetPath } from "../utils.js"; +const PHYSICAL_COLUMNS = ["cut", "blunt", "ammo"]; +const ELEMENTAL_COLUMNS = ["fire", "water", "thunder", "ice", "dragon"]; +const COLUMNS = ["name", ...PHYSICAL_COLUMNS, ...ELEMENTAL_COLUMNS]; + +function hitzoneValue(row, column) { + if (column === "name") return row.name; + return row.physical?.[column] ?? row.elemental?.[column]; +} + export function DamageTable({ rows, t }) { if (!rows.length) return null; - const columns = Object.keys(rows[0]); - return (
- {columns.map((column) => ( + {COLUMNS.map((column) => ( @@ -20,10 +27,10 @@ export function DamageTable({ rows, t }) { {rows.map((row, rowIndex) => ( - {columns.map((column) => column === "name" ? ( - + {COLUMNS.map((column) => column === "name" ? ( + ) : ( - + ))} ))} diff --git a/website/src/features/games/mhwilds/cards/EndemicCard.jsx b/website/src/features/games/mhwilds/cards/EndemicCard.jsx index d5d9144..7fb62f9 100644 --- a/website/src/features/games/mhwilds/cards/EndemicCard.jsx +++ b/website/src/features/games/mhwilds/cards/EndemicCard.jsx @@ -4,7 +4,10 @@ import { assetPath, getConditionValues, normalizeText } from "../utils.js"; export function EndemicCard({ item, t }) { const locations = getConditionValues(item.locations); const description = t(item.description); - const hasDescription = normalizeText(description) && normalizeText(description) !== normalizeText("à compléter"); + const normalizedDescription = normalizeText(description); + const hasDescription = normalizedDescription + && normalizedDescription !== normalizeText("à compléter") + && normalizedDescription !== normalizeText("to be completed"); return (
diff --git a/website/src/features/games/mhwilds/cards/MonsterCard.jsx b/website/src/features/games/mhwilds/cards/MonsterCard.jsx index 05a192a..2257b61 100644 --- a/website/src/features/games/mhwilds/cards/MonsterCard.jsx +++ b/website/src/features/games/mhwilds/cards/MonsterCard.jsx @@ -45,7 +45,7 @@ export function MonsterCard({ monster, t }) {

Détails

{t(monster.name, { capitalize: true })}

- +
diff --git a/website/src/features/games/mhwilds/utils.js b/website/src/features/games/mhwilds/utils.js index 73c9753..ec3ebb8 100644 --- a/website/src/features/games/mhwilds/utils.js +++ b/website/src/features/games/mhwilds/utils.js @@ -1,7 +1,7 @@ const MHWILDS_IMG_PATH = "/static/img/mhwilds"; export function assetPath(name) { - return encodeURI(`${MHWILDS_IMG_PATH}/${name}.png`); + return encodeURI(`${MHWILDS_IMG_PATH}/${String(name || "").replace(/_/g, " ")}.png`); } export function normalizeText(value) { @@ -18,11 +18,16 @@ export function getUniqueConditionValues(items, property, translate) { .sort((a, b) => translate(a).localeCompare(translate(b), "fr")); } -export function getFilteredMhwildsItems({ category, mhwilds, filters, t }) { +export function getMhwildsFilterKey(category, mhwilds) { + const optionKey = mhwilds.filterOptionKeys?.[category]; + if (optionKey === "elements") return "weaknesses"; + return optionKey || (category === "monsters" ? "weaknesses" : "locations"); +} + +export function getFilteredMhwildsItems({ category, filterKey, mhwilds, filters, t }) { const items = category === "monsters" ? mhwilds.monsters : mhwilds.endemic; const activeFilters = filters[category]; - const filterKey = category === "monsters" ? "weaknesses" : "locations"; - const selected = activeFilters[filterKey]; + const selected = activeFilters[filterKey] || []; const search = normalizeText(activeFilters.name); return items.filter((item) => { diff --git a/website/src/main.jsx b/website/src/main.jsx index 153bd2a..1e40101 100644 --- a/website/src/main.jsx +++ b/website/src/main.jsx @@ -594,10 +594,29 @@ function App() { const [siteContent, setSiteContent] = useState(DEFAULT_SITE_CONTENT); const [games, setGames] = useState([]); const [gamesError, setGamesError] = useState(""); - const [mhwilds, setMhwilds] = useState({ loaded: false, loading: false, error: "", translations: {}, monsters: [], endemic: [] }); + const [mhwilds, setMhwilds] = useState({ + loaded: false, + loading: false, + error: "", + translations: {}, + monsters: [], + endemic: [], + filterOptions: { monsters: [], endemic: [] }, + filterOptionKeys: { monsters: "", endemic: "" } + }); + const [diablo4, setDiablo4] = useState({ + loaded: false, + loading: false, + error: "", + affixes: [], + filterOptions: { affixes: [] }, + categoryMap: {}, + filterOptionKeys: { affixes: "" } + }); const [filters, setFilters] = useState({ monsters: { name: "", weaknesses: [], logic: "and" }, - endemic: { name: "", locations: [], logic: "and" } + endemic: { name: "", locations: [], logic: "and" }, + diablo4: { name: "", categories: [], logic: "and" } }); const [confirmModal, setConfirmModal] = useState(null); const [createModal, setCreateModal] = useState(null); @@ -636,19 +655,68 @@ function App() { endemicResponse.json(), translationsResponse.json() ]); + const monsterFilterKey = Object.keys(monstersJson).find((key) => key !== "monsters") || ""; + const endemicFilterKey = Object.keys(endemicJson).find((key) => key !== "endemicLife" && key !== "aquaticLife") || ""; setMhwilds({ loaded: true, loading: false, error: "", translations, monsters: monstersJson.monsters || [], - endemic: [...(endemicJson.endemicLife || []), ...(endemicJson.aquaticLife || [])] + endemic: [...(endemicJson.endemicLife || []), ...(endemicJson.aquaticLife || [])], + filterOptions: { + monsters: monstersJson[monsterFilterKey] || [], + endemic: endemicJson[endemicFilterKey] || [] + }, + filterOptionKeys: { + monsters: monsterFilterKey, + endemic: endemicFilterKey + } }); - }).catch((error) => setMhwilds({ loaded: true, loading: false, error: error.message, translations: {}, monsters: [], endemic: [] })); + }).catch((error) => setMhwilds({ + loaded: true, + loading: false, + error: error.message, + translations: {}, + monsters: [], + endemic: [], + filterOptions: { monsters: [], endemic: [] }, + filterOptionKeys: { monsters: "", endemic: "" } + })); }, [route, mhwilds.loaded, mhwilds.loading]); + useEffect(() => { + if (!route.startsWith("/games/diablo4") || diablo4.loaded || diablo4.loading) return; + setDiablo4((state) => ({ ...state, loading: true })); + fetch("/data/diablo4/affixes_types.json") + .then(async (response) => { + if (!response.ok) throw new Error("Impossible de charger les données Diablo IV."); + const payload = await response.json(); + const filterKey = Object.keys(payload).find((key) => key !== "affixes") || ""; + const categories = payload[filterKey] || []; + setDiablo4({ + loaded: true, + loading: false, + error: "", + affixes: payload.affixes || [], + filterOptions: { affixes: categories }, + categoryMap: Object.fromEntries(categories.map((category) => [category.id, category])), + filterOptionKeys: { affixes: filterKey } + }); + }) + .catch((error) => setDiablo4({ + loaded: true, + loading: false, + error: error.message, + affixes: [], + filterOptions: { affixes: [] }, + categoryMap: {}, + filterOptionKeys: { affixes: "" } + })); + }, [route, diablo4.loaded, diablo4.loading]); + const t = (key, { capitalize = false } = {}) => { - const value = mhwilds.translations[key] || key; + const value = mhwilds.translations[key] || String(key || "").replace(/_/g, " "); return capitalize ? value.charAt(0).toUpperCase() + value.slice(1) : value; }; const getGame = (gameId) => games.find((item) => item.id === gameId); @@ -829,6 +897,7 @@ function App() { games={games} gamesError={gamesError} mhwilds={mhwilds} + diablo4={diablo4} filters={filters} setFilters={setFilters} t={t} diff --git a/website/src/styles/_diablo4.scss b/website/src/styles/_diablo4.scss new file mode 100644 index 0000000..eec651c --- /dev/null +++ b/website/src/styles/_diablo4.scss @@ -0,0 +1,188 @@ +.game-card-placeholder { + display: grid; + width: 100%; + height: 100%; + min-height: inherit; + place-items: center; + background: + radial-gradient(circle at 78% 22%, rgba(246, 196, 83, 0.18), transparent 28%), + radial-gradient(circle at 22% 70%, rgba(139, 92, 246, 0.28), transparent 38%), + linear-gradient(135deg, rgba(16, 20, 38, 0.92), rgba(53, 18, 45, 0.76)); + color: var(--color-text-primary); + font-size: clamp(1.8rem, 5vw, 3.3rem); + font-weight: 900; + letter-spacing: 0; +} + +.diablo4-home-mark { + display: grid; + width: 100%; + height: 120px; + margin: 0; + place-items: center; + border-bottom: 1px solid rgba(246, 196, 83, 0.42); + background: rgba(5, 7, 17, 0.28); + color: var(--color-text-primary); +} + +.mhwilds-home-card .diablo4-home-mark { + margin: 0; +} + +.diablo4-home-mark::before { + content: ""; + display: block; + width: 72px; + height: 72px; + background: currentColor; + filter: drop-shadow(0 16px 24px rgba(0, 0, 0, 0.44)); + mask: url("/static/img/diablo4/cube.svg") center / contain no-repeat; +} + +.diablo4-affix-grid { + grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); +} + +.diablo4-affix-card { + min-height: 158px; +} + +.diablo4-affix-card-body { + display: flex; + min-height: 100%; + flex-direction: column; + gap: 10px; + padding: var(--space-4); +} + +.diablo4-affix-card h2 { + margin: 0; + font-size: 1rem; + line-height: 1.25; +} + +.diablo4-category-list { + display: flex; + flex-wrap: nowrap; + gap: 4px; + margin-top: auto; +} + +.diablo4-category-list > span { + display: inline-flex; + min-height: 23px; + align-items: center; + gap: 4px; + border: 1px solid rgba(246, 196, 83, 0.22); + border-radius: var(--radius-pill); + background: rgba(246, 196, 83, 0.08); + color: var(--color-text-secondary); + font-size: 0.68rem; + font-weight: 800; + padding: 2px 6px; + text-transform: capitalize; + white-space: nowrap; +} + +.diablo4-filter-chip { + grid-template-columns: 18px 22px 1fr; +} + +.diablo4-filter-chip span { + text-transform: capitalize; +} + +.diablo4-category-icon { + display: inline-block; + width: 18px; + height: 18px; + flex: 0 0 18px; + background: currentColor; + mask: var(--diablo4-category-icon) center / contain no-repeat; +} + +.diablo4-filter-chip .diablo4-category-icon { + width: 22px; + height: 22px; + flex-basis: 22px; +} + +.diablo4-category-list .diablo4-category-icon { + width: 12px; + height: 12px; + flex-basis: 12px; + color: var(--color-text-primary); +} + +.tone-purple .diablo4-category-icon { + color: #c4b5fd; +} + +.diablo4-category-list .tone-purple { + border-color: rgba(168, 85, 247, 0.3); + background: rgba(168, 85, 247, 0.1); +} + +.tone-gold .diablo4-category-icon { + color: #f6c453; +} + +.diablo4-category-list .tone-gold { + border-color: rgba(246, 196, 83, 0.34); + background: rgba(246, 196, 83, 0.1); +} + +.tone-blue .diablo4-category-icon { + color: #93c5fd; +} + +.diablo4-category-list .tone-blue { + border-color: rgba(96, 165, 250, 0.34); + background: rgba(96, 165, 250, 0.1); +} + +.tone-yellow .diablo4-category-icon { + color: #fde047; +} + +.diablo4-category-list .tone-yellow { + border-color: rgba(250, 204, 21, 0.34); + background: rgba(250, 204, 21, 0.1); +} + +.tone-red .diablo4-category-icon { + color: #f87171; +} + +.diablo4-category-list .tone-red { + border-color: rgba(248, 113, 113, 0.34); + background: rgba(248, 113, 113, 0.1); +} + +.tone-violet .diablo4-category-icon { + color: #a78bfa; +} + +.diablo4-category-list .tone-violet { + border-color: rgba(139, 92, 246, 0.34); + background: rgba(139, 92, 246, 0.1); +} + +.tone-green .diablo4-category-icon { + color: #86efac; +} + +.diablo4-category-list .tone-green { + border-color: rgba(74, 222, 128, 0.34); + background: rgba(74, 222, 128, 0.1); +} + +.diablo4-category-list .tone-purple .diablo4-category-icon, +.diablo4-category-list .tone-gold .diablo4-category-icon, +.diablo4-category-list .tone-blue .diablo4-category-icon, +.diablo4-category-list .tone-yellow .diablo4-category-icon, +.diablo4-category-list .tone-red .diablo4-category-icon, +.diablo4-category-list .tone-violet .diablo4-category-icon, +.diablo4-category-list .tone-green .diablo4-category-icon { + color: var(--color-text-primary); +} diff --git a/website/src/styles/_games.scss b/website/src/styles/_games.scss index 9f292fd..e7feb49 100644 --- a/website/src/styles/_games.scss +++ b/website/src/styles/_games.scss @@ -1,4 +1,6 @@ .game-card .card-cover { + display: block; + height: 170px; min-height: 170px; } diff --git a/website/src/styles/_mhwilds.scss b/website/src/styles/_mhwilds.scss index df5b908..f10e196 100644 --- a/website/src/styles/_mhwilds.scss +++ b/website/src/styles/_mhwilds.scss @@ -2,7 +2,7 @@ .mhwilds-home-grid { display: grid; - grid-template-columns: repeat(2, minmax(240px, 380px)); + grid-template-columns: repeat(auto-fit, minmax(240px, 380px)); justify-content: center; gap: var(--space-4); margin-top: var(--space-6); diff --git a/website/src/styles/main.scss b/website/src/styles/main.scss index 909cc53..02fa8b3 100644 --- a/website/src/styles/main.scss +++ b/website/src/styles/main.scss @@ -9,4 +9,5 @@ @use "toolboxes"; @use "overlays"; @use "mhwilds"; +@use "diablo4"; @use "responsive";
{column === "name" ? "" : {t(column,}
{t(row[column], { capitalize: true })}{t(row.name, { capitalize: true })}{`${row[column]}{`${hitzoneValue(row,