Module:Game: Difference between revisions

From Path of Exile 2 Wiki
Jump to navigation Jump to search
>OmegaK2
m (added harbinger league)
>OmegaK2
(more 3.0.0 updates)
Line 491: Line 491:
     ['str_int_shield'] = {},
     ['str_int_shield'] = {},
     ['dex_int_shield'] = {},
     ['dex_int_shield'] = {},
    ['currency_shard'] = {},
    ['harbinger_orb_shard'] = {},
}
}


Line 812: Line 814:
         long_upper = 'Leaguestones',
         long_upper = 'Leaguestones',
         long_lower = 'leaguestones',
         long_lower = 'leaguestones',
         category= 'Other',
         category = 'Other',
     },
     },
     [49] = {
     [49] = {
Line 818: Line 820:
         long_upper = 'Pantheon Soul',
         long_upper = 'Pantheon Soul',
         long_lower = 'pantheon soul',
         long_lower = 'pantheon soul',
         category='',
        category = '',
    },
    [50] = {
        full = 'Piece',
        long_upper = 'Piece',
        long_lower = 'piece',
         category = '',
     },
     },
}
}
Line 1,032: Line 1,040:
         short_upper = 'Channelling',
         short_upper = 'Channelling',
         short_lower = 'channelling',
         short_lower = 'channelling',
    },
    {
        full = 'Herald',
        long_upper = 'Herald',
        long_lower = 'herald',
        short_upper = 'Herald',
        short_lower = 'herald',
     },
     },
}
}

Revision as of 08:37, 4 August 2017

Module documentation[view] [edit] [history] [purge]


This is a meta module.

This module is meant to be used only by other modules. It should not be invoked in wikitext.

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

Usage

This module should be loaded with mw.loadData().


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 = {
    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,
}

-- 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'] = {},
    ['tier15_map'] = {},
    ['support_gem'] = {},
    ['level_capped_gem'] = {},
    ['tier14_map'] = {},
    ['no_effect_flask_mod'] = {},
    ['area_with_water'] = {},
    ['no_bloodlines'] = {},
    ['has_caster_mod'] = {},
    ['has_attack_mod'] = {},
    ['tier5_map'] = {},
    ['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'] = {},
    ['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'] = {},
}

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] = {
        full = 'Life Flasks',
        long_upper = 'Life Flasks',
        long_lower = 'life flasks',
        category = 'Flasks',
    },
    [2] = {
        full = 'Mana Flasks',
        long_upper = 'Mana Flasks',
        long_lower = 'mana flasks',
        category = 'Flasks',
    },
    [3] = {
        full = 'Hybrid Flasks',
        long_upper = 'Hybrid Flasks',
        long_lower = 'hybrid flasks',
        category = 'Flasks',
    },
    [4] = {
        full = 'Currency',
        long_upper = 'Currency',
        long_lower = 'currency',
        category = 'Other',
    },
    [5] = {
        full = 'Amulets',
        long_upper = 'Amulets',
        long_lower = 'amulets',
        category = 'Jewellery',
    },
    [6] = {
        full = 'Rings',
        long_upper = 'Rings',
        long_lower = 'rings',
        category = 'Jewellery',
    },
    [7] = {
        full = 'Claws',
        long_upper = 'Claws',
        long_lower = 'claws',
        category = 'One Handed Weapon',
    },
    [8] = {
        full = 'Daggers',
        long_upper = 'Daggers',
        long_lower = 'daggers',
        category = 'One Handed Weapon',
    },
    [9] = {
        full = 'Wands',
        long_upper = 'Wands',
        long_lower = 'wands',
        category = 'One Handed Weapon',
    },
    [10] = {
        full = 'One Hand Swords',
        long_upper = 'One Hand Swords',
        long_lower = 'one hand swords',
        category = 'One Handed Weapon',
    },
    [11] = {
        full = 'Thrusting One Hand Swords',
        long_upper = 'Thrusting One Hand Swords',
        long_lower = 'thrusting one hand swords',
        category = 'One Handed Weapon',
    },
    [12] = {
        full = 'One Hand Axes',
        long_upper = 'One Hand Axes',
        long_lower = 'one hand axes',
        category = 'One Handed Weapon',
    },
    [13] = {
        full = 'One Hand Maces',
        long_upper = 'One Hand Maces',
        long_lower = 'one hand maces',
        category = 'One Handed Weapon',
    },
    [14] = {
        full = 'Bows',
        long_upper = 'Bows',
        long_lower = 'bows',
        category = 'Two Handed Weapon',
    },
    [15] = {
        full = 'Staves',
        long_upper = 'Staves',
        long_lower = 'staves',
        category = 'Two Handed Weapon',
    },
    [16] = {
        full = 'Two Hand Swords',
        long_upper = 'Two Hand Swords',
        long_lower = 'two hand swords',
        category = 'Two Handed Weapon',
    },
    [17] = {
        full = 'Two Hand Axes',
        long_upper = 'Two Hand Axes',
        long_lower = 'two hand axes',
        category = 'Two Handed Weapon',
    },
    [18] = {
        full = 'Two Hand Maces',
        long_upper = 'Two Hand Maces',
        long_lower = 'two hand maces',
        category = 'Two Handed Weapon',
    },
    [19] = {
        full = 'Active Skill Gems',
        long_upper = 'Active Skill Gems',
        long_lower = 'active skill gems',
        category = 'Gems',
    },
    [20] = {
        full = 'Support Skill Gems',
        long_upper = 'Support Skill Gems',
        long_lower = 'support skill gems',
        category = 'Gems',
    },
    [21] = {
        full = 'Quivers',
        long_upper = 'Quivers',
        long_lower = 'quivers',
        category = 'Off-hand',
    },
    [22] = {
        full = 'Belts',
        long_upper = 'Belts',
        long_lower = 'belts',
        category = 'Jewellery',
    },
    [23] = {
        full = 'Gloves',
        long_upper = 'Gloves',
        long_lower = 'gloves',
        category = 'Armor',
    },
    [24] = {
        full = 'Boots',
        long_upper = 'Boots',
        long_lower = 'boots',
        category = 'Armor',
    },
    [25] = {
        full = 'Body Armours',
        long_upper = 'Body Armours',
        long_lower = 'body armours',
        category = 'Armor',
    },
    [26] = {
        full = 'Helmets',
        long_upper = 'Helmets',
        long_lower = 'helmets',
        category = 'Armor',
    },
    [27] = {
        full = 'Shields',
        long_upper = 'Shields',
        long_lower = 'shields',
        category = 'Off-hand',
    },
    [28] = {
        full = 'Small Relics',
        long_upper = 'Small Relics',
        long_lower = 'small relics',
        category = '',
    },
    [29] = {
        full = 'Medium Relics',
        long_upper = 'Medium Relics',
        long_lower = 'medium relics',
        category = '',
    },
    [30] = {
        full = 'Large Relics',
        long_upper = 'Large Relics',
        long_lower = 'large relics',
        category = '',
    },
    [31] = {
        full = 'Stackable Currency',
        long_upper = 'Stackable Currency',
        long_lower = 'stackable currency',
        category = '',
    },
    [32] = {
        full = 'Quest Items',
        long_upper = 'Quest Items',
        long_lower = 'quest items',
        category = '',
    },
    [33] = {
        full = 'Sceptres',
        long_upper = 'Sceptres',
        long_lower = 'sceptres',
        category = 'One Handed Weapon',
    },
    [34] = {
        full = 'Utility Flasks',
        long_upper = 'Utility Flasks',
        long_lower = 'utility flasks',
        category = 'Flasks',
    },
    [35] = {
        full = 'Critical Utility Flasks',
        long_upper = 'Critical Utility Flasks',
        long_lower = 'critical utility flasks',
        category = '',
    },
    [36] = {
        full = 'Maps',
        long_upper = 'Maps',
        long_lower = 'maps',
        category = 'Other',
    },
    [37] = {
        full = 'Unarmed',
        long_upper = 'Unarmed',
        long_lower = 'unarmed',
        category = '',
    },
    [38] = {
        full = 'Fishing Rods',
        long_upper = 'Fishing Rods',
        long_lower = 'fishing rods',
        category = '',
    },
    [39] = {
        full = 'Map Fragments',
        long_upper = 'Map Fragments',
        long_lower = 'map fragments',
        category = 'Other',
    },
    [40] = {
        full = 'Hideout Doodads',
        long_upper = 'Hideout Doodads',
        long_lower = 'hideout doodads',
        category = '',
    },
    [41] = {
        full = 'Microtransactions',
        long_upper = 'Microtransactions',
        long_lower = 'microtransactions',
        category = '',
    },
    [42] = {
        full = 'Jewel',
        long_upper = 'Jewel',
        long_lower = 'jewel',
        category = 'Other',
    },
    [43] = {
        full = 'Divination Card',
        long_upper = 'Divination Card',
        long_lower = 'divination card',
        category = 'Other',
    },
    [44] = {
        full = 'Labyrinth Item',
        long_upper = 'Labyrinth Item',
        long_lower = 'labyrinth item',
        category = '',
    },
    [45] = {
        full = 'Labyrinth Trinket',
        long_upper = 'Labyrinth Trinket',
        long_lower = 'labyrinth trinket',
        category = '',
    },
    [46] = {
        full = 'Labyrinth Map Item',
        long_upper = 'Labyrinth Map Item',
        long_lower = 'labyrinth map item',
        category = 'Other',
    },
    [47] = {
        full = 'Misc Map Items',
        long_upper = 'Misc Map Items',
        long_lower = 'misc map items',
        category= '',
    },
    [48] = {
        full = 'Leaguestones',
        long_upper = 'Leaguestones',
        long_lower = 'leaguestones',
        category = 'Other',
    },
    [49] = {
        full = 'Pantheon Soul',
        long_upper = 'Pantheon Soul',
        long_lower = 'pantheon soul',
        category = '',
    },
    [50] = {
        full = 'Piece',
        long_upper = 'Piece',
        long_lower = 'piece',
        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',
    },
}

-- NPCMaster.dat
game.constants.masters = {
    {
        full = 'Vorici, Master Assassin',
        long_upper = 'Vorici, Master Assassin',
        short_upper = 'Vorici',
        short_lower = 'vorici',
    },
    {
        full = 'Tora, Master of the Hunt',
        long_upper = 'Tora, Master of the Hunt',
        short_upper = 'Tora',
        short_lower = 'tora',
    },
    {
        full = 'Catarina, Master of the Dead',
        long_upper = 'Catarina, Master of the Dead',
        short_upper = 'Catarina',
        short_lower = 'catarina',
    },
    {
        full = 'Zana, Master Cartographer',
        long_upper = 'Zana, Master Cartographer',
        short_upper = 'Zana',
        short_lower = 'zana',
    },
    {
        full = 'Vagan, Weaponmaster',
        long_upper = 'Vagan, Weaponmaster',
        short_upper = 'Vagan',
        short_lower = 'vagan',
    },
    {
        full = 'Elreon, Loremaster',
        long_upper = 'Elreon, Loremaster',
        short_upper = 'Elreon',
        short_lower = 'elreon',
    },
    {
        full = 'Haku, Armourmaster',
        long_upper = 'Haku, Armourmaster',
        short_upper = 'Haku',
        short_lower = 'haku',
    },
    {
        full = 'Leo, Master of the Arena',
        long_upper = 'Leo, Master of the Arena',
        short_upper = 'Leo',
        short_lower = 'leo',
    },
}

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 = 'Stance',
        short_lower = 'stance',
    },
    [10] = {
        short_upper = 'Master',
        short_lower = 'master',
    },
    [11] = {
        short_upper = 'Jewel',
        short_lower = 'jewel',
    },
    [12] = {
        short_upper = 'Atlas',
        short_lower = 'atlas',
    },
    [13] = {
        short_upper = 'Leaguestone',
        short_lower = 'leaguestone',
    },
}

-- 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',
    },
}

return game