Consider helping out in updating the wiki for 3.5.0 - see Path_of_Exile_Wiki:To-do_list/3.5.0.

Most of the game data is live. Cleanup of old things & new maps will take a bit.

Module:Game

From Path of Exile Wiki
Jump to: navigation, search
This is a programming module, do not invoke it directly.


Overview

This module holds some constants and functions related to path of exile in general.

Stucture

The module has the following structure

game.constants General game constants, such as the attributes or classes
game.constants.item item constants
game.constants.mod Mod constants

Data

Table Id Description Available keys Extra keys
full long_upper long_lower short_upper short_lower
game.constants.characters Character
no
no
no
no
no
  • id - internal id
game.constants.ascendancy Ascendancy class
no
no
no
no
no
  • id - internal id
  • character - character id
game.constants.attributes Attributes
no
yes
yes
yes
yes
game.constants.damage_types Damage type
no
no
no
yes
yes
game.constants.difficulties Difficulties
yes
yes
yes
no
no
  • resistances - resist cap
  • minimum_level - minimum required level to enter
  • label - one letter label
game.constants.passive_types Passive skill
no
yes
no
yes
no
  • type - 'normal' or 'ascendancy'
game.constants.tags internal tags
yes
no
no
no
no
game.constants.item.rarity Rarity
yes
yes
yes
no
no
game.constants.item.class Item class
yes
yes
yes
no
no
game.constants.item.gem_tags Gem tags
yes
yes
yes
yes
yes
game.constants.mod.domains Mod Domain
no
no
no
yes
yes
game.constants.mod.generation_types Mod Generation Type
yes
no
no
yes
yes

local game = {}

game.level_requirement =
{
    full = 'Level Requirement',
    long_upper = 'Level Requirement',
    long_lower = 'level requirement',
    short_upper = 'Req. Lv.',
    short_lower = 'req. lv.',
    icon = '[[Image:Level up icon small.png‎|link=|Lvl.]]',
}

game.constants = {}

-- Characters.dat
game.constants.characters_order = {'Witch', 'Shadow', 'Ranger', 'Duelist', 'Marauder', 'Templar', 'Scion'}
game.constants.characters = {
    Marauder = {
        id = 0,
    },
    Witch = {
        id = 1,
    },
    Scion = {
        id = 2,
    },
    Ranger = {
        id = 3,
    },
    Duelist = {
        id = 4,
    },
    Shadow = {
        id = 5,
    },
    Templar = {
        id = 6,
    },
}

game.constants.leagues = {
    ['Onslaught'] = true,
    ['Anarchy'] = true,
    ['Nemesis'] = true,
    ['Domination'] = true,
    ['Invasion'] = true,
    ['Ambush'] = true,
    ['Beyond'] = true,
    ['Rampage'] = true,
    ['Bloodlines'] = true,
    ['Torment'] = true,
    ['Tempest'] = true,
    ['Warbands'] = true,
    ['Talisman'] = true,
    ['Perandus'] = true,
    ['Prophecy'] = true,
    ['Essence'] = true,
    ['Breach'] = true,
    ['Legacy'] = true,
    ['Harbinger'] = true,
    ['Abyss'] = true,
    ['Bestiary'] = true,
    ['Incursion'] = true,
    ['Delve'] = true,
    ['Betrayal'] = true,
}

-- Ascendancy.dat
game.constants.ascendancy = {
    Juggernaut = {
        id = 0,
        character = 0,
    },
    Berserker = {
        id = 1,
        character = 0,
    },
    Chieftain = {
        id = 2,
        character = 0,
    },
    Raider = {
        id = 3,
        character = 3,
    },
    Deadeye = {
        id = 4,
        character = 3,
    },
    Pathfinder = {
        id = 5,
        character = 3,
    },
    Occultist = {
        id = 6,
        character = 1,
    },
    Elementalist = {
        id = 7,
        character = 1,
    },
    Necromancer = {
        id = 8,
        character = 1,
    },
    Slayer = {
        id = 9,
        character = 4,
    },
    Gladiator = {
        id = 10,
        character = 4,
    },
    Champion = {
        id = 11,
        character = 4,
    },
    Inquisitor = {
        id = 12,
        character = 6,
    },
    Hierophant = {
        id = 13,
        character = 6,
    },
    Guardian = {
        id = 14,
        character = 6,
    },
    Assassin = {
        id = 15,
        character = 5,
    },
    Trickster = {
        id = 16,
        character = 5,
    },
    Saboteur = {
        id = 17,
        character = 5,
    },
    Ascendant = {
        id = 18,
        character = 2,
    },
}

game.constants.attributes = {
    {
        full = 'Strength',
        long_upper = 'Strength',
        long_lower = 'strength',
        short_upper = 'Str',
        short_lower = 'str',
        icon = '[[Image:StrengthIcon small.png|link=|Str.]]',
    },
    {
        full = 'Dexterity',
        long_upper = 'Dexterity',
        long_lower = 'dexterity',
        short_upper = 'Dex',
        short_lower = 'dex',
        icon = '[[Image:DexterityIcon small.png|link=|Dex.]]',
    },
    {
        full = 'Intelligence',
        long_upper = 'Intelligence',
        long_lower = 'intelligence',
        short_upper = 'Int',
        short_lower = 'int',
        icon = '[[Image:IntelligenceIcon small.png|link=|Int.]]',
    },
}

game.constants.damage_types = {
    {
        short_upper = 'Physical',
        short_lower = 'physical',
    },
    {
        short_upper = 'Fire',
        short_lower = 'fire',
    },
    {
        short_upper = 'Cold',
        short_lower = 'cold',
    },
    {
        short_upper = 'Lightning',
        short_lower = 'lightning',
    },
    {
        short_upper = 'Chaos',
        short_lower = 'chaos',
    },
}

-- Difficulties.dat
game.constants.difficulties = {
    {
        full = 'Normal',
        long_upper = 'Normal',
        long_lower = 'normal',
        resistances = 100,
        minimum_level = 0,
        label = 'N',
    },
    {
        full = 'Cruel',
        long_upper = 'Cruel',
        long_lower = 'cruel',
        resistances = 120,
        minimum_level = 20,
        label = 'C',
    },
    {
        full = 'Merciless',
        long_upper = 'Merciless',
        long_lower = 'merciless',
        resistances = 160,
        minimum_level = 35,
        label = 'M',
    },
}

game.constants.difficulties_name_to_index = {
    Normal = 1,
    Cruel = 2,
    Merciless = 3,
    normal = 1,
    cruel = 2,
    merciless = 3,
}

game.constants.passive_types = {
    ['basic'] = {
        short_upper = 'Basic',
        long_upper = 'Basic passive skill',
        type = 'normal',
    },
    ['notable'] = {
        short_upper = 'Notable',
        long_upper = 'Notable passive skill',
        type = 'normal',
    },
    ['keystone'] = {
        short_upper = 'Keystone',
        long_upper = 'Keystone passive skill',
        type = 'normal',
    },
    ['ascendancy basic'] = {
        short_upper = 'Ascendancy basic',
        long_upper = 'Basic ascendancy skill',
        type = 'ascendancy',
    },
    ['ascendancy notable'] = {
        short_upper = 'Ascendancy notable',
        long_upper = 'Notable ascendancy skill',
        type = 'ascendancy',
    },
}

-- Tags.dat
game.constants.tags = {
    ['default'] = {},
    ['shield'] = {},
    ['ring'] = {},
    ['amulet'] = {},
    ['boots'] = {},
    ['bow'] = {},
    ['equipment'] = {},
    ['armour'] = {},
    ['weapon'] = {},
    ['wand'] = {},
    ['staff'] = {},
    ['mace'] = {},
    ['sword'] = {},
    ['dagger'] = {},
    ['claw'] = {},
    ['axe'] = {},
    ['body_armour'] = {},
    ['life_flask'] = {},
    ['mana_flask'] = {},
    ['hybrid_flask'] = {},
    ['flask'] = {},
    ['quiver'] = {},
    ['gloves'] = {},
    ['onehand'] = {},
    ['twohand'] = {},
    ['helmet'] = {},
    ['belt'] = {},
    ['gem'] = {},
    ['relic'] = {},
    ['not_str'] = {},
    ['not_dex'] = {},
    ['not_int'] = {},
    ['ranged'] = {},
    ['not_for_sale'] = {},
    ['caster'] = {},
    ['magic'] = {},
    ['rare'] = {},
    ['sceptre'] = {},
    ['str_armour'] = {},
    ['dex_armour'] = {},
    ['int_armour'] = {},
    ['str_dex_armour'] = {},
    ['str_int_armour'] = {},
    ['dex_int_armour'] = {},
    ['str_dex_int_armour'] = {},
    ['focus'] = {},
    ['utility_flask'] = {},
    ['critical_utility_flask'] = {},
    ['humanoid'] = {},
    ['mammal_beast'] = {},
    ['reptile_beast'] = {},
    ['skeleton'] = {},
    ['zombie'] = {},
    ['ghost'] = {},
    ['earth_elemental'] = {},
    ['water_elemental'] = {},
    ['demon'] = {},
    ['map'] = {},
    ['rapier'] = {},
    ['necromancer_raisable'] = {},
    ['lots_of_life'] = {},
    ['indoors_area'] = {},
    ['beach'] = {},
    ['dungeon'] = {},
    ['cave'] = {},
    ['forest'] = {},
    ['swamp'] = {},
    ['mountain'] = {},
    ['temple'] = {},
    ['urban'] = {},
    ['high_level_map'] = {},
    ['human'] = {},
    ['beast'] = {},
    ['undead'] = {},
    ['construct'] = {},
    ['insect'] = {},
    ['spider'] = {},
    ['undying'] = {},
    ['goatman'] = {},
    ['stone_construct'] = {},
    ['fishing_rod'] = {},
    ['one_hand_weapon'] = {},
    ['two_hand_weapon'] = {},
    ['atziri1'] = {},
    ['atziri2'] = {},
    ['drops_no_mods'] = {},
    ['drops_no_rares'] = {},
    ['drops_no_quality'] = {},
    ['drops_no_sockets'] = {},
    ['drops_not_dupeable'] = {},
    ['shore'] = {},
    ['darkshore'] = {},
    ['inland'] = {},
    ['prison'] = {},
    ['axis'] = {},
    ['cavern'] = {},
    ['southernforest'] = {},
    ['southernforest2'] = {},
    ['church'] = {},
    ['sins'] = {},
    ['forestdark'] = {},
    ['weavers'] = {},
    ['inca'] = {},
    ['city1'] = {},
    ['city2'] = {},
    ['city3'] = {},
    ['crematorium'] = {},
    ['catacombs'] = {},
    ['solaris'] = {},
    ['docks'] = {},
    ['sewers'] = {},
    ['barracks'] = {},
    ['lunaris'] = {},
    ['gardens'] = {},
    ['library'] = {},
    ['scepter'] = {},
    ['secret_area'] = {},
    ['limited_strongbox_benefits'] = {},
    ['no_caster_mods'] = {},
    ['no_attack_mods'] = {},
    ['red_blood'] = {},
    ['ghost_blood'] = {},
    ['mud_blood'] = {},
    ['insect_blood'] = {},
    ['bones'] = {},
    ['water'] = {},
    ['noblood'] = {},
    ['unusable_corpse'] = {},
    ['hidden_monster'] = {},
    ['devourer'] = {},
    ['wb_basic'] = {},
    ['wb_support'] = {},
    ['wb_elite'] = {},
    ['wb_leader'] = {},
    ['rare_minion'] = {},
    ['undeletable_corpse'] = {},
    ['jewel'] = {},
    ['strjewel'] = {},
    ['dexjewel'] = {},
    ['intjewel'] = {},
    ['gladiator'] = {},
    ['karui'] = {},
    ['flying'] = {},
    ['large_model'] = {},
    ['specific_weapon'] = {},
    ['two_handed_mod'] = {},
    ['dual_wielding_mod'] = {},
    ['shield_mod'] = {},
    ['one_handed_mod'] = {},
    ['melee_mod'] = {},
    ['twostonering'] = {},
    ['poison_zombie'] = {},
    ['divination_card'] = {},
    ['currency'] = {},
    ['no_divine'] = {},
    ['unique_map'] = {},
    ['low_tier_map'] = {},
    ['mid_tier_map'] = {},
    ['top_tier_map'] = {},
    ['old_map'] = {},
    ['act_boss_area'] = {},
    ['no_tempests'] = {},
    ['cannot_be_twinned'] = {},
    ['no_shroud_walker'] = {},
    ['no_echo'] = {},
    ['immobile'] = {},
    ['limited_tempests'] = {},
    ['small_staff'] = {},
    ['support_gem'] = {},
    ['level_capped_gem'] = {},
    ['no_effect_flask_mod'] = {},
    ['area_with_water'] = {},
    ['no_bloodlines'] = {},
    ['has_caster_mod'] = {},
    ['has_attack_mod'] = {},
    ['maraketh'] = {},
    ['uses_suicide_explode'] = {},
    ['cannot_be_monolith'] = {},
    ['no_zana_quests'] = {},
    ['atlas_base_type'] = {},
    ['ringatlas1'] = {},
    ['ringatlas2'] = {},
    ['amuletatlas1'] = {},
    ['amuletatlas2'] = {},
    ['beltatlas1'] = {},
    ['beltatlas2'] = {},
    ['helmetatlas1'] = {},
    ['bootsatlas1'] = {},
    ['bootsatlas2'] = {},
    ['bootsatlas3'] = {},
    ['glovesatlasstr'] = {},
    ['glovesatlasdex'] = {},
    ['glovesatlasint'] = {},
    ['shaped_map'] = {},
    ['no_boss'] = {},
    ['no_monster_packs'] = {},
    ['no_strongboxes'] = {},
    ['hall_of_grandmasters'] = {},
    ['vaults_of_atziri'] = {},
    ['cowards_trial'] = {},
    ['breach_map'] = {},
    ['breach_commander'] = {},
    ['breach_leaguestone'] = {},
    ['breachstone'] = {},
    ['breachstone_splinter'] = {},
    ['essence_leaguestone'] = {},
    ['prophecy_leaguestone'] = {},
    ['perandus_leaguestone'] = {},
    ['talisman_leaguestone'] = {},
    ['warbands_leaguestone'] = {},
    ['torment_leaguestone'] = {},
    ['rampage_leaguestone'] = {},
    ['domination_leaguestone'] = {},
    ['tempest_leaguestone'] = {},
    ['bloodlines_leaguestone'] = {},
    ['beyond_leaguestone'] = {},
    ['ambush_leaguestone'] = {},
    ['invasion_leaguestone'] = {},
    ['nemesis_leaguestone'] = {},
    ['anarchy_leaguestone'] = {},
    ['onslaught_leaguestone'] = {},
    ['god'] = {},
    ['unset_ring'] = {},
    ['no_leaguestone'] = {},
    ['chaos_warband'] = {},
    ['templar'] = {},
    ['cultist'] = {},
    ['female'] = {},
    ['str_shield'] = {},
    ['dex_shield'] = {},
    ['str_dex_shield'] = {},
    ['str_int_shield'] = {},
    ['dex_int_shield'] = {},
    ['currency_shard'] = {},
    ['harbinger_orb_shard'] = {},
    ['not_harbinger_minion'] = {},
    ['abyss_jewel_melee'] = {},
    ['abyss_jewel_ranged'] = {},
    ['abyss_jewel_caster'] = {},
    ['abyss_jewel_summoner'] = {},
    ['abyss_jewel'] = {},
    ['abyssal'] = {},
    ['unarmed'] = {},
    ['worlds_map'] = {},
    ['shaper_item'] = {},
    ['elder_item'] = {},
    ['boots_shaper'] = {},
    ['boots_elder'] = {},
    ['sword_shaper'] = {},
    ['sword_elder'] = {},
    ['gloves_shaper'] = {},
    ['gloves_elder'] = {},
    ['helmet_shaper'] = {},
    ['helmet_elder'] = {},
    ['body_armour_shaper'] = {},
    ['body_armour_elder'] = {},
    ['amulet_shaper'] = {},
    ['amulet_elder'] = {},
    ['ring_shaper'] = {},
    ['ring_elder'] = {},
    ['belt_shaper'] = {},
    ['belt_elder'] = {},
    ['quiver_shaper'] = {},
    ['quiver_elder'] = {},
    ['shield_shaper'] = {},
    ['shield_elder'] = {},
    ['2h_sword_shaper'] = {},
    ['2h_sword_elder'] = {},
    ['axe_shaper'] = {},
    ['axe_elder'] = {},
    ['mace_shaper'] = {},
    ['mace_elder'] = {},
    ['claw_shaper'] = {},
    ['claw_elder'] = {},
    ['bow_shaper'] = {},
    ['bow_elder'] = {},
    ['dagger_shaper'] = {},
    ['dagger_elder'] = {},
    ['2h_axe_shaper'] = {},
    ['2h_axe_elder'] = {},
    ['2h_mace_shaper'] = {},
    ['2h_mace_elder'] = {},
    ['staff_shaper'] = {},
    ['staff_elder'] = {},
    ['sceptre_shaper'] = {},
    ['sceptre_elder'] = {},
    ['wand_shaper'] = {},
    ['wand_elder'] = {},
    ['grants_crit_chance_support'] = {},
    ['no_legacy_of_zeal'] = {},
    ['bestiary_beast_boss'] = {},
    ['elder_occupied_map'] = {},
    ['bestiary_wilds'] = {},
    ['bestiary_sands'] = {},
    ['bestiary_caverns'] = {},
    ['bestiary_deep'] = {},
    ['no_elemental_damage_mods'] = {},
    ['no_physical_damage_mods'] = {},
    ['no_cannot_die_aura'] = {},
    ['bestiary_net'] = {},
    ['up_to_level_2_gem'] = {},
    ['up_to_level_8_gem'] = {},
    ['essence'] = {},
    ['talisman'] = {},
    ['armour_divination'] = {},
    ['weapon_divination'] = {},
    ['jewellery_divination'] = {},
    ['delve_chest'] = {},
    ['incursion_monster'] = {},
    ['fire'] = {},
    ['cold'] = {},
    ['lightning'] = {},
    ['chaos'] = {},
    ['physical'] = {},
    ['poison'] = {},
    ['bleed'] = {},
    ['life'] = {},
    ['defences'] = {},
    ['elemental'] = {},
    ['attack'] = {},
    ['minion'] = {},
    ['gem_level'] = {},
    ['aura'] = {},
    ['vaal'] = {},
    ['mana'] = {},
    ['speed'] = {},
    ['flat_life_regen'] = {},
    ['einharbeast'] = {},
    ['einharmonkey'] = {},
    ['einharcavespiders'] = {},
    ['einhardropbear'] = {},
    ['einharsnake'] = {},
    ['einharthornspiders'] = {},
    ['einharrhoa'] = {},
    ['einharbonerhoa'] = {},
    ['einharinsectspawner'] = {},
    ['einharspiker'] = {},
    ['einharkiweth'] = {},
    ['einharchimeral'] = {},
    ['einharvultureparasite'] = {},
    ['einharsandleaper'] = {},
    ['einharfuryhound'] = {},
    ['einharbull'] = {},
    ['einhargoatman'] = {},
    ['einharmountaingoat'] = {},
    ['einharshieldcrab'] = {},
    ['einharcrabparasite'] = {},
    ['einharparasite'] = {},
    ['einharscorpion'] = {},
    ['quality_currency'] = {},
    ['einharmaps'] = {},
    ['rusted_scarab'] = {},
}

game.constants.item = {}

game.constants.item.jewel_radius_to_size = {
    [800] = 'Small',
    [1200] = 'Medium',
    [1500] = 'Large',
}

game.constants.item.rarity = {
    {
        full = 'Normal',
        long_upper = 'Normal',
        long_lower = 'normal',
    },
    {
        full = 'Magic',
        long_upper = 'Magic',
        long_lower = 'magic',
    },
    {
        full = 'Rare',
        long_upper = 'Rare',
        long_lower = 'rare',
    },
    {
        full = 'Unique',
        long_upper = 'Unique',
        long_lower = 'unique',
    },
}

-- ItemClassDisplay.dat
game.constants.item.class = {
     [1] = {
        id = 'LifeFlask',
        full = 'Life Flasks',
        long_upper = 'Life Flasks',
        long_lower = 'life flasks',
        category= 'Flasks',
    },
     [2] = {
        id = 'ManaFlask',
        full = 'Mana Flasks',
        long_upper = 'Mana Flasks',
        long_lower = 'mana flasks',
        category= 'Flasks',
    },
     [3] = {
        id = 'HybridFlask',
        full = 'Hybrid Flasks',
        long_upper = 'Hybrid Flasks',
        long_lower = 'hybrid flasks',
        category= 'Flasks',
    },
     [4] = {
        id = 'Currency',
        full = 'Currency',
        long_upper = 'Currency',
        long_lower = 'currency',
        category= 'Other',
    },
     [5] = {
        id = 'Amulet',
        full = 'Amulets',
        long_upper = 'Amulets',
        long_lower = 'amulets',
        category= 'Jewellery',
    },
     [6] = {
        id = 'Ring',
        full = 'Rings',
        long_upper = 'Rings',
        long_lower = 'rings',
        category= 'Jewellery',
    },
     [7] = {
        id = 'Claw',
        full = 'Claws',
        long_upper = 'Claws',
        long_lower = 'claws',
        category= 'One Handed Weapon',
    },
     [8] = {
        id = 'Dagger',
        full = 'Daggers',
        long_upper = 'Daggers',
        long_lower = 'daggers',
        category= 'One Handed Weapon',
    },
     [9] = {
        id = 'Wand',
        full = 'Wands',
        long_upper = 'Wands',
        long_lower = 'wands',
        category= 'One Handed Weapon',
    },
     [10] = {
        id = 'One Hand Sword',
        full = 'One Hand Swords',
        long_upper = 'One Hand Swords',
        long_lower = 'one hand swords',
        category= 'One Handed Weapon',
    },
     [11] = {
        id = 'Thrusting One Hand Sword',
        full = 'Thrusting One Hand Swords',
        long_upper = 'Thrusting One Hand Swords',
        long_lower = 'thrusting one hand swords',
        category= 'One Handed Weapon',
    },
     [12] = {
        id = 'One Hand Axe',
        full = 'One Hand Axes',
        long_upper = 'One Hand Axes',
        long_lower = 'one hand axes',
        category= 'One Handed Weapon',
    },
     [13] = {
        id = 'One Hand Mace',
        full = 'One Hand Maces',
        long_upper = 'One Hand Maces',
        long_lower = 'one hand maces',
        category= 'One Handed Weapon',
    },
     [14] = {
        id = 'Bow',
        full = 'Bows',
        long_upper = 'Bows',
        long_lower = 'bows',
        category= 'Two Handed Weapon',
    },
     [15] = {
        id = 'Staff',
        full = 'Staves',
        long_upper = 'Staves',
        long_lower = 'staves',
        category= 'Two Handed Weapon',
    },
     [16] = {
        id = 'Two Hand Sword',
        full = 'Two Hand Swords',
        long_upper = 'Two Hand Swords',
        long_lower = 'two hand swords',
        category= 'Two Handed Weapon',
    },
     [17] = {
        id = 'Two Hand Axe',
        full = 'Two Hand Axes',
        long_upper = 'Two Hand Axes',
        long_lower = 'two hand axes',
        category= 'Two Handed Weapon',
    },
     [18] = {
        id = 'Two Hand Mace',
        full = 'Two Hand Maces',
        long_upper = 'Two Hand Maces',
        long_lower = 'two hand maces',
        category= 'Two Handed Weapon',
    },
     [19] = {
        id = 'Active Skill Gem',
        full = 'Active Skill Gems',
        long_upper = 'Active Skill Gems',
        long_lower = 'active skill gems',
        category= 'Gems',
    },
     [20] = {
        id = 'Support Skill Gem',
        full = 'Support Skill Gems',
        long_upper = 'Support Skill Gems',
        long_lower = 'support skill gems',
        category= 'Gems',
    },
     [21] = {
        id = 'Quiver',
        full = 'Quivers',
        long_upper = 'Quivers',
        long_lower = 'quivers',
        category= 'Off-hand',
    },
     [22] = {
        id = 'Belt',
        full = 'Belts',
        long_upper = 'Belts',
        long_lower = 'belts',
        category= 'Jewellery',
    },
     [23] = {
        id = 'Gloves',
        full = 'Gloves',
        long_upper = 'Gloves',
        long_lower = 'gloves',
        category= 'Armor',
    },
     [24] = {
        id = 'Boots',
        full = 'Boots',
        long_upper = 'Boots',
        long_lower = 'boots',
        category= 'Armor',
    },
     [25] = {
        id = 'Body Armour',
        full = 'Body Armours',
        long_upper = 'Body Armours',
        long_lower = 'body armours',
        category= 'Armor',
    },
     [26] = {
        id = 'Helmet',
        full = 'Helmets',
        long_upper = 'Helmets',
        long_lower = 'helmets',
        category= 'Armor',
    },
     [27] = {
        id = 'Shield',
        full = 'Shields',
        long_upper = 'Shields',
        long_lower = 'shields',
        category= 'Off-hand',
    },
     [28] = {
        id = 'SmallRelic',
        full = 'Small Relics',
        long_upper = 'Small Relics',
        long_lower = 'small relics',
        category= '',
    },
     [29] = {
        id = 'MediumRelic',
        full = 'Medium Relics',
        long_upper = 'Medium Relics',
        long_lower = 'medium relics',
        category= '',
    },
     [30] = {
        id = 'LargeRelic',
        full = 'Large Relics',
        long_upper = 'Large Relics',
        long_lower = 'large relics',
        category= '',
    },
     [31] = {
        id = 'StackableCurrency',
        full = 'Stackable Currency',
        long_upper = 'Stackable Currency',
        long_lower = 'stackable currency',
        category= '',
    },
     [32] = {
        id = 'QuestItem',
        full = 'Quest Items',
        long_upper = 'Quest Items',
        long_lower = 'quest items',
        category= '',
    },
     [33] = {
        id = 'Sceptre',
        full = 'Sceptres',
        long_upper = 'Sceptres',
        long_lower = 'sceptres',
        category= 'One Handed Weapon',
    },
     [34] = {
        id = 'UtilityFlask',
        full = 'Utility Flasks',
        long_upper = 'Utility Flasks',
        long_lower = 'utility flasks',
        category= 'Flasks',
    },
     [35] = {
        id = 'UtilityFlaskCritical',
        full = 'Critical Utility Flasks',
        long_upper = 'Critical Utility Flasks',
        long_lower = 'critical utility flasks',
        category= '',
    },
     [36] = {
        id = 'Map',
        full = 'Maps',
        long_upper = 'Maps',
        long_lower = 'maps',
        category= 'Other',
    },
     [37] = {
        id = 'Unarmed',
        full = 'Unarmed',
        long_upper = 'Unarmed',
        long_lower = 'unarmed',
        category= '',
    },
     [38] = {
        id = 'FishingRod',
        full = 'Fishing Rods',
        long_upper = 'Fishing Rods',
        long_lower = 'fishing rods',
        category= '',
    },
     [39] = {
        id = 'MapFragment',
        full = 'Map Fragments',
        long_upper = 'Map Fragments',
        long_lower = 'map fragments',
        category= 'Other',
    },
     [40] = {
        id = 'HideoutDoodad',
        full = 'Hideout Doodads',
        long_upper = 'Hideout Doodads',
        long_lower = 'hideout doodads',
        category= '',
    },
     [41] = {
        id = 'Microtransaction',
        full = 'Microtransactions',
        long_upper = 'Microtransactions',
        long_lower = 'microtransactions',
        category= 'Microtransactions',
    },
     [42] = {
        id = 'Jewel',
        full = 'Jewel',
        long_upper = 'Jewel',
        long_lower = 'jewel',
        category= 'Other',
    },
     [43] = {
        id = 'DivinationCard',
        full = 'Divination Card',
        long_upper = 'Divination Card',
        long_lower = 'divination card',
        category= 'Other',
    },
     [44] = {
        id = 'LabyrinthItem',
        full = 'Labyrinth Item',
        long_upper = 'Labyrinth Item',
        long_lower = 'labyrinth item',
        category= '',
    },
     [45] = {
        id = 'LabyrinthTrinket',
        full = 'Labyrinth Trinket',
        long_upper = 'Labyrinth Trinket',
        long_lower = 'labyrinth trinket',
        category= '',
    },
     [46] = {
        id = 'LabyrinthMapItem',
        full = 'Labyrinth Map Item',
        long_upper = 'Labyrinth Map Item',
        long_lower = 'labyrinth map item',
        category= '',
    },
     [47] = {
        id = 'MiscMapItem',
        full = 'Misc Map Items',
        long_upper = 'Misc Map Items',
        long_lower = 'misc map items',
        category= 'Other',
    },
     [48] = {
        id = 'Leaguestone',
        full = 'Leaguestones',
        long_upper = 'Leaguestones',
        long_lower = 'leaguestones',
        category= 'Other',
    },
     [49] = {
        id = 'PantheonSoul',
        full = 'Pantheon Soul',
        long_upper = 'Pantheon Soul',
        long_lower = 'pantheon soul',
        category= '',
    },
     [50] = {
        id = 'UniqueFragment',
        full = 'Piece',
        long_upper = 'Piece',
        long_lower = 'piece',
        category= 'Other',
    },
     [51] = {
        id = 'AbyssJewel',
        full = 'Abyss Jewel',
        long_upper = 'Abyss Jewel',
        long_lower = 'abyss jewel',
        category= 'Other',
    },
     [52] = {
        id = 'IncursionItem',
        full = 'Incursion Item',
        long_upper = 'Incursion Item',
        long_lower = 'incursion item',
        category= '',
    },
     [53] = {
        id = 'DelveSocketableCurrency',
        full = 'Delve Socketable Currency',
        long_upper = 'Delve Socketable Currency',
        long_lower = 'delve socketable currency',
        category= '',
    },
}

game.constants.item.classes = {
    ['LifeFlask'] = {
        id = 1,
        full = 'Life Flasks',
        long_upper = 'Life Flasks',
        long_lower = 'life flasks',
        category= 'Flasks',
    },
     ['ManaFlask'] = {
        id = 2,
        full = 'Mana Flasks',
        long_upper = 'Mana Flasks',
        long_lower = 'mana flasks',
        category= 'Flasks',
    },
     ['HybridFlask'] = {
        id = 3,
        full = 'Hybrid Flasks',
        long_upper = 'Hybrid Flasks',
        long_lower = 'hybrid flasks',
        category= 'Flasks',
    },
     ['Currency'] = {
        id = 4,
        full = 'Currency',
        long_upper = 'Currency',
        long_lower = 'currency',
        category= 'Other',
    },
     ['Amulet'] = {
        id = 5,
        full = 'Amulets',
        long_upper = 'Amulets',
        long_lower = 'amulets',
        category= 'Jewellery',
    },
     ['Ring'] = {
        id = 6,
        full = 'Rings',
        long_upper = 'Rings',
        long_lower = 'rings',
        category= 'Jewellery',
    },
     ['Claw'] = {
        id = 7,
        full = 'Claws',
        long_upper = 'Claws',
        long_lower = 'claws',
        category= 'One Handed Weapon',
    },
     ['Dagger'] = {
        id = 8,
        full = 'Daggers',
        long_upper = 'Daggers',
        long_lower = 'daggers',
        category= 'One Handed Weapon',
    },
     ['Wand'] = {
        id = 9,
        full = 'Wands',
        long_upper = 'Wands',
        long_lower = 'wands',
        category= 'One Handed Weapon',
    },
     ['One Hand Sword'] = {
        id = 10,
        full = 'One Hand Swords',
        long_upper = 'One Hand Swords',
        long_lower = 'one hand swords',
        category= 'One Handed Weapon',
    },
     ['Thrusting One Hand Sword'] = {
        id = 11,
        full = 'Thrusting One Hand Swords',
        long_upper = 'Thrusting One Hand Swords',
        long_lower = 'thrusting one hand swords',
        category= 'One Handed Weapon',
    },
     ['One Hand Axe'] = {
        id = 12,
        full = 'One Hand Axes',
        long_upper = 'One Hand Axes',
        long_lower = 'one hand axes',
        category= 'One Handed Weapon',
    },
     ['One Hand Mace'] = {
        id = 13,
        full = 'One Hand Maces',
        long_upper = 'One Hand Maces',
        long_lower = 'one hand maces',
        category= 'One Handed Weapon',
    },
     ['Bow'] = {
        id = 14,
        full = 'Bows',
        long_upper = 'Bows',
        long_lower = 'bows',
        category= 'Two Handed Weapon',
    },
     ['Staff'] = {
        id = 15,
        full = 'Staves',
        long_upper = 'Staves',
        long_lower = 'staves',
        category= 'Two Handed Weapon',
    },
     ['Two Hand Sword'] = {
        id = 16,
        full = 'Two Hand Swords',
        long_upper = 'Two Hand Swords',
        long_lower = 'two hand swords',
        category= 'Two Handed Weapon',
    },
     ['Two Hand Axe'] = {
        id = 17,
        full = 'Two Hand Axes',
        long_upper = 'Two Hand Axes',
        long_lower = 'two hand axes',
        category= 'Two Handed Weapon',
    },
     ['Two Hand Mace'] = {
        id = 18,
        full = 'Two Hand Maces',
        long_upper = 'Two Hand Maces',
        long_lower = 'two hand maces',
        category= 'Two Handed Weapon',
    },
     ['Active Skill Gem'] = {
        id = 19,
        full = 'Active Skill Gems',
        long_upper = 'Active Skill Gems',
        long_lower = 'active skill gems',
        category= 'Gems',
    },
     ['Support Skill Gem'] = {
        id = 20,
        full = 'Support Skill Gems',
        long_upper = 'Support Skill Gems',
        long_lower = 'support skill gems',
        category= 'Gems',
    },
     ['Quiver'] = {
        id = 21,
        full = 'Quivers',
        long_upper = 'Quivers',
        long_lower = 'quivers',
        category= 'Off-hand',
    },
     ['Belt'] = {
        id = 22,
        full = 'Belts',
        long_upper = 'Belts',
        long_lower = 'belts',
        category= 'Jewellery',
    },
     ['Gloves'] = {
        id = 23,
        full = 'Gloves',
        long_upper = 'Gloves',
        long_lower = 'gloves',
        category= 'Armor',
    },
     ['Boots'] = {
        id = 24,
        full = 'Boots',
        long_upper = 'Boots',
        long_lower = 'boots',
        category= 'Armor',
    },
     ['Body Armour'] = {
        id = 25,
        full = 'Body Armours',
        long_upper = 'Body Armours',
        long_lower = 'body armours',
        category= 'Armor',
    },
     ['Helmet'] = {
        id = 26,
        full = 'Helmets',
        long_upper = 'Helmets',
        long_lower = 'helmets',
        category= 'Armor',
    },
     ['Shield'] = {
        id = 27,
        full = 'Shields',
        long_upper = 'Shields',
        long_lower = 'shields',
        category= 'Off-hand',
    },
     ['SmallRelic'] = {
        id = 28,
        full = 'Small Relics',
        long_upper = 'Small Relics',
        long_lower = 'small relics',
        category= '',
    },
     ['MediumRelic'] = {
        id = 29,
        full = 'Medium Relics',
        long_upper = 'Medium Relics',
        long_lower = 'medium relics',
        category= '',
    },
     ['LargeRelic'] = {
        id = 30,
        full = 'Large Relics',
        long_upper = 'Large Relics',
        long_lower = 'large relics',
        category= '',
    },
     ['StackableCurrency'] = {
        id = 31,
        full = 'Stackable Currency',
        long_upper = 'Stackable Currency',
        long_lower = 'stackable currency',
        category= '',
    },
     ['QuestItem'] = {
        id = 32,
        full = 'Quest Items',
        long_upper = 'Quest Items',
        long_lower = 'quest items',
        category= '',
    },
     ['Sceptre'] = {
        id = 33,
        full = 'Sceptres',
        long_upper = 'Sceptres',
        long_lower = 'sceptres',
        category= 'One Handed Weapon',
    },
     ['UtilityFlask'] = {
        id = 34,
        full = 'Utility Flasks',
        long_upper = 'Utility Flasks',
        long_lower = 'utility flasks',
        category= 'Flasks',
    },
     ['UtilityFlaskCritical'] = {
        id = 35,
        full = 'Critical Utility Flasks',
        long_upper = 'Critical Utility Flasks',
        long_lower = 'critical utility flasks',
        category= '',
    },
     ['Map'] = {
        id = 36,
        full = 'Maps',
        long_upper = 'Maps',
        long_lower = 'maps',
        category= 'Other',
    },
     ['Unarmed'] = {
        id = 37,
        full = 'Unarmed',
        long_upper = 'Unarmed',
        long_lower = 'unarmed',
        category= '',
    },
     ['FishingRod'] = {
        id = 38,
        full = 'Fishing Rods',
        long_upper = 'Fishing Rods',
        long_lower = 'fishing rods',
        category= '',
    },
     ['MapFragment'] = {
        id = 39,
        full = 'Map Fragments',
        long_upper = 'Map Fragments',
        long_lower = 'map fragments',
        category= 'Other',
    },
     ['HideoutDoodad'] = {
        id = 40,
        full = 'Hideout Doodads',
        long_upper = 'Hideout Doodads',
        long_lower = 'hideout doodads',
        category= '',
    },
     ['Microtransaction'] = {
        id = 41,
        full = 'Microtransactions',
        long_upper = 'Microtransactions',
        long_lower = 'microtransactions',
        category= 'Microtransactions',
    },
     ['Jewel'] = {
        id = 42,
        full = 'Jewel',
        long_upper = 'Jewel',
        long_lower = 'jewel',
        category= 'Other',
    },
     ['DivinationCard'] = {
        id = 43,
        full = 'Divination Card',
        long_upper = 'Divination Card',
        long_lower = 'divination card',
        category= 'Other',
    },
     ['LabyrinthItem'] = {
        id = 44,
        full = 'Labyrinth Item',
        long_upper = 'Labyrinth Item',
        long_lower = 'labyrinth item',
        category= '',
    },
     ['LabyrinthTrinket'] = {
        id = 45,
        full = 'Labyrinth Trinket',
        long_upper = 'Labyrinth Trinket',
        long_lower = 'labyrinth trinket',
        category= '',
    },
     ['LabyrinthMapItem'] = {
        id = 46,
        full = 'Labyrinth Map Item',
        long_upper = 'Labyrinth Map Item',
        long_lower = 'labyrinth map item',
        category= '',
    },
     ['MiscMapItem'] = {
        id = 47,
        full = 'Misc Map Items',
        long_upper = 'Misc Map Items',
        long_lower = 'misc map items',
        category= 'Other',
    },
     ['Leaguestone'] = {
        id = 48,
        full = 'Leaguestones',
        long_upper = 'Leaguestones',
        long_lower = 'leaguestones',
        category= 'Other',
    },
     ['PantheonSoul'] = {
        id = 49,
        full = 'Pantheon Soul',
        long_upper = 'Pantheon Soul',
        long_lower = 'pantheon soul',
        category= '',
    },
     ['UniqueFragment'] = {
        id = 50,
        full = 'Piece',
        long_upper = 'Piece',
        long_lower = 'piece',
        category= 'Other',
    },
     ['AbyssJewel'] = {
        id = 51,
        full = 'Abyss Jewel',
        long_upper = 'Abyss Jewel',
        long_lower = 'abyss jewel',
        category= 'Other',
    },
     ['IncursionItem'] = {
        id = 52,
        full = 'Incursion Item',
        long_upper = 'Incursion Item',
        long_lower = 'incursion item',
        category= '',
    },
     ['DelveSocketableCurrency'] = {
        id = 53,
        full = 'Delve Socketable Currency',
        long_upper = 'Delve Socketable Currency',
        long_lower = 'delve socketable currency',
        category= '',
    },
}

game.constants.item.gem_tags = {
    {
        full = 'Fire',
        long_upper = 'Fire',
        long_lower = 'fire',
        short_upper = 'Fire',
        short_lower = 'fire',
    },
    {
        full = 'Cold',
        long_upper = 'Cold',
        long_lower = 'cold',
        short_upper = 'Cold',
        short_lower = 'cold',
    },
    {
        full = 'Lightning',
        long_upper = 'Lightning',
        long_lower = 'lightning',
        short_upper = 'Lightning',
        short_lower = 'lightning',
    },
    {
        full = 'Chaos',
        long_upper = 'Chaos',
        long_lower = 'chaos',
        short_upper = 'Chaos',
        short_lower = 'chaos',
    },
    {
        full = 'Spell',
        long_upper = 'Spell',
        long_lower = 'spell',
        short_upper = 'Spell',
        short_lower = 'spell',
    },
    {
        full = 'Projectile',
        long_upper = 'Projectile',
        long_lower = 'projectile',
        short_upper = 'Projectile',
        short_lower = 'projectile',
    },
    {
        full = 'Bow',
        long_upper = 'Bow',
        long_lower = 'bow',
        short_upper = 'Bow',
        short_lower = 'bow',
    },
    {
        full = 'Melee',
        long_upper = 'Melee',
        long_lower = 'melee',
        short_upper = 'Melee',
        short_lower = 'melee',
    },
    {
        full = 'Minion',
        long_upper = 'Minion',
        long_lower = 'minion',
        short_upper = 'Minion',
        short_lower = 'minion',
    },
    {
        full = '',
        long_upper = '',
        long_lower = 'strength',
        short_upper = '',
        short_lower = 'strength',
    },
    {
        full = '',
        long_upper = '',
        long_lower = 'dexterity',
        short_upper = '',
        short_lower = 'dexterity',
    },
    {
        full = '',
        long_upper = '',
        long_lower = 'intelligence',
        short_upper = '',
        short_lower = 'intelligence',
    },
    {
        full = 'Aura',
        long_upper = 'Aura',
        long_lower = 'aura',
        short_upper = 'Aura',
        short_lower = 'aura',
    },
    {
        full = 'Attack',
        long_upper = 'Attack',
        long_lower = 'attack',
        short_upper = 'Attack',
        short_lower = 'attack',
    },
    {
        full = 'AoE',
        long_upper = 'AoE',
        long_lower = 'area',
        short_upper = 'AoE',
        short_lower = 'area',
    },
    {
        full = 'Duration',
        long_upper = 'Duration',
        long_lower = 'duration',
        short_upper = 'Duration',
        short_lower = 'duration',
    },
    {
        full = 'Support',
        long_upper = 'Support',
        long_lower = 'support',
        short_upper = 'Support',
        short_lower = 'support',
    },
    {
        full = 'Curse',
        long_upper = 'Curse',
        long_lower = 'curse',
        short_upper = 'Curse',
        short_lower = 'curse',
    },
    {
        full = 'Chaining',
        long_upper = 'Chaining',
        long_lower = 'chaining',
        short_upper = 'Chaining',
        short_lower = 'chaining',
    },
    {
        full = 'Totem',
        long_upper = 'Totem',
        long_lower = 'totem',
        short_upper = 'Totem',
        short_lower = 'totem',
    },
    {
        full = 'Trap',
        long_upper = 'Trap',
        long_lower = 'trap',
        short_upper = 'Trap',
        short_lower = 'trap',
    },
    {
        full = 'Mine',
        long_upper = 'Mine',
        long_lower = 'mine',
        short_upper = 'Mine',
        short_lower = 'mine',
    },
    {
        full = 'Movement',
        long_upper = 'Movement',
        long_lower = 'movement',
        short_upper = 'Movement',
        short_lower = 'movement',
    },
    {
        full = 'Cast',
        long_upper = 'Cast',
        long_lower = 'cast',
        short_upper = 'Cast',
        short_lower = 'cast',
    },
    {
        full = 'Vaal',
        long_upper = 'Vaal',
        long_lower = 'vaal',
        short_upper = 'Vaal',
        short_lower = 'vaal',
    },
    {
        full = '',
        long_upper = '',
        long_lower = 'active_skill',
        short_upper = '',
        short_lower = 'active_skill',
    },
    {
        full = 'Trigger',
        long_upper = 'Trigger',
        long_lower = 'trigger',
        short_upper = 'Trigger',
        short_lower = 'trigger',
    },
    {
        full = 'Warcry',
        long_upper = 'Warcry',
        long_lower = 'warcry',
        short_upper = 'Warcry',
        short_lower = 'warcry',
    },
    {
        full = 'Golem',
        long_upper = 'Golem',
        long_lower = 'golem',
        short_upper = 'Golem',
        short_lower = 'golem',
    },
    {
        full = 'Channelling',
        long_upper = 'Channelling',
        long_lower = 'channelling',
        short_upper = 'Channelling',
        short_lower = 'channelling',
    },
    {
        full = 'Herald',
        long_upper = 'Herald',
        long_lower = 'herald',
        short_upper = 'Herald',
        short_lower = 'herald',
    },
    {
        full = 'Brand',
        long_upper = 'Brand',
        long_lower = 'brand',
        short_upper = 'Brand',
        short_lower = 'brand',
    },
}

-- NPCMaster.dat
game.constants.masters = {
    {
        full = 'Navali',
        long_upper = 'Navali',
        short_upper = 'Navali',
        short_lower = 'navali',
    },
    {
        full = 'Einhar, Beastmaster',
        long_upper = 'Einhar, Beastmaster',
        short_upper = 'Einhar',
        short_lower = 'einhar',
    },
    {
        full = 'Alva, Master Explorer',
        long_upper = 'Alva, Master Explorer',
        short_upper = 'Alva',
        short_lower = 'alva',
    },
    {
        full = 'Helena',
        long_upper = 'Helena',
        short_upper = 'Helena',
        short_lower = 'helena',
    },
    {
        full = 'Niko, Master of the Depths',
        long_upper = 'Niko, Master of the Depths',
        short_upper = 'Niko',
        short_lower = 'niko',
    },
    {
        full = 'Jun, Veiled Master',
        long_upper = 'Jun, Veiled Master',
        short_upper = 'Jun',
        short_lower = 'jun',
    },
    {
        full = 'Zana, Master Cartographer',
        long_upper = 'Zana, Master Cartographer',
        short_upper = 'Zana',
        short_lower = 'zana',
    },
}

game.constants.mod = {}
-- ModDomains.dat, reversed
game.constants.mod.domains = {
    [1] = {
        short_upper = 'Item',
        short_lower = 'item',
    },
    [2] = {
        short_upper = 'Flask',
        short_lower = 'flask',
    },
    [3] = {
        short_upper = 'Monster',
        short_lower = 'monster',
    },
    [4] = {
        short_upper = 'Chest',
        short_lower = 'chest',
    },
    [5] = {
        short_upper = 'Area',
        short_lower = 'area',
    },
    --[6] = {},
    --[7] = {},
    --[8] = {},
    [9] = {
        short_upper = 'Crafted',
        short_lower = 'crafted',
    },
    [10] = {
        short_upper = 'Misc',
        short_lower = 'misc',
    },
    [11] = {
        short_upper = 'Atlas',
        short_lower = 'atlas',
    },
    [12] = {
        short_upper = 'Leaguestone',
        short_lower = 'leaguestone',
    },
    [13] = {
        short_upper = 'Abyss Jewel',
        short_lower = 'abyss_jewel',
    },
    [14] = {
        short_upper = 'Map Device',
        short_lower = 'map_device',
    },
    [15] = {
        short_upper = 'Dummy',
        short_lower = 'dummy',
    },
    [16] = {
        short_upper = 'Delve',
        short_lower = 'delve',
    },
    [17] = {
        short_upper = 'Delve Area',
        short_lower = 'delve area',
    },
}

-- ModGenerationTypes.dat
game.constants.mod.generation_types = {
    [1] = {
        full = 'Prefix',
        short_upper = 'Prefix',
        short_lower = 'prefix',
    },
    [2] = {
        full = 'Suffix',
        short_upper = 'Suffix',
        short_lower = 'suffix',
    },
    -- given mod
    [3] = {
        full = 'Unique',
        short_upper = 'Unique',
        short_lower = 'unique',
    },
    [4] = {
        full = 'Nemesis',
        short_upper = 'Nemesis',
        short_lower = 'nemesis',
    },
    [5] = {
        full = 'Corrupted',
        short_upper = 'Corrupted',
        short_lower = 'corrupted',
    },
    [6] = {
        full = 'Bloodlines',
        short_upper = 'Bloodlines',
        short_lower = 'bloodlines',
    },
    [7] = {
        full = 'Torment',
        short_upper = 'Torment',
        short_lower = 'torment',
    },
    [8] = {
        full = 'Tempest',
        short_upper = 'Tempest',
        short_lower = 'tempest',
    },
    [9] = {
        full = 'Talisman',
        short_upper = 'Talisman',
        short_lower = 'talisman',
    },
    [10] = {
        full = 'Enchantment',
        short_upper = 'Enchantment',
        short_lower = 'enchantment',
    },
    [11] = {
        full = 'Essence',
        short_upper = 'Essence',
        short_lower = 'essence',
    },
    [12] = {},
    [13] = {
        full = 'Bestiary',
        short_upper = 'Bestiary',
        short_lower = 'bestiary',
    },
    [14] = {
        full = 'Delve Area',
        short_upper = 'Delve Area',
        short_lower = 'delve area',
    },
}

return game