Module:Game
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 |
| |||||
game.constants.ascendancy | Ascendancy class |
| |||||
game.constants.attributes | Attributes | ||||||
game.constants.damage_types | Damage type | ||||||
game.constants.difficulties | Difficulties |
| |||||
game.constants.passive_types | Passive skill |
| |||||
game.constants.tags | internal tags | ||||||
game.constants.item.rarity | Rarity | ||||||
game.constants.item.class | Item class | ||||||
game.constants.item.gem_tags | Gem tags | ||||||
game.constants.mod.domains | Mod Domain | ||||||
game.constants.mod.generation_types | Mod Generation Type |
Usage
This module should be loaded with mw.loadData()
.
The above documentation is transcluded from Module:Game/doc.
Editors can experiment in this module's sandbox and testcases pages.
Subpages of this module.
Editors can experiment in this module's sandbox and testcases pages.
Subpages of this module.
local game = {}
game.level_requirement =
{
full = 'Level Requirement',
long_upper = 'Level Requirement',
long_lower = 'Level requirement',
short_upper = 'Req. Lv.',
short_lowerr = 'req. lv.',
icon = '[[Image:Level up icon small.png|link=|Lvl.]]',
}
game.constants = {}
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,
}
-- Tags.dat
game.constants.tags = {
{
full = 'default',
},
{
full = 'shield',
},
{
full = 'ring',
},
{
full = 'amulet',
},
{
full = 'boots',
},
{
full = 'bow',
},
{
full = 'equipment',
},
{
full = 'armour',
},
{
full = 'weapon',
},
{
full = 'wand',
},
{
full = 'staff',
},
{
full = 'mace',
},
{
full = 'sword',
},
{
full = 'dagger',
},
{
full = 'claw',
},
{
full = 'axe',
},
{
full = 'body_armour',
},
{
full = 'life_flask',
},
{
full = 'mana_flask',
},
{
full = 'hybrid_flask',
},
{
full = 'flask',
},
{
full = 'quiver',
},
{
full = 'gloves',
},
{
full = 'onehand',
},
{
full = 'twohand',
},
{
full = 'helmet',
},
{
full = 'belt',
},
{
full = 'gem',
},
{
full = 'relic',
},
{
full = 'not_str',
},
{
full = 'not_dex',
},
{
full = 'not_int',
},
{
full = 'ranged',
},
{
full = 'not_for_sale',
},
{
full = 'caster',
},
{
full = 'magic',
},
{
full = 'rare',
},
{
full = 'sceptre',
},
{
full = 'str_armour',
},
{
full = 'dex_armour',
},
{
full = 'int_armour',
},
{
full = 'str_dex_armour',
},
{
full = 'str_int_armour',
},
{
full = 'dex_int_armour',
},
{
full = 'str_dex_int_armour',
},
{
full = 'focus',
},
{
full = 'utility_flask',
},
{
full = 'critical_utility_flask',
},
{
full = 'humanoid',
},
{
full = 'mammal_beast',
},
{
full = 'reptile_beast',
},
{
full = 'skeleton',
},
{
full = 'zombie',
},
{
full = 'ghost',
},
{
full = 'earth_elemental',
},
{
full = 'water_elemental',
},
{
full = 'demon',
},
{
full = 'map',
},
{
full = 'rapier',
},
{
full = 'necromancer_raisable',
},
{
full = 'lots_of_life',
},
{
full = 'indoors_area',
},
{
full = 'beach',
},
{
full = 'dungeon',
},
{
full = 'cave',
},
{
full = 'forest',
},
{
full = 'swamp',
},
{
full = 'mountain',
},
{
full = 'temple',
},
{
full = 'urban',
},
{
full = 'high_level_map',
},
{
full = 'human',
},
{
full = 'beast',
},
{
full = 'undead',
},
{
full = 'construct',
},
{
full = 'insect',
},
{
full = 'spider',
},
{
full = 'undying',
},
{
full = 'goatman',
},
{
full = 'stone_construct',
},
{
full = 'fishing_rod',
},
{
full = 'one_hand_weapon',
},
{
full = 'two_hand_weapon',
},
{
full = 'atziri1',
},
{
full = 'atziri2',
},
{
full = 'drops_no_mods',
},
{
full = 'drops_no_rares',
},
{
full = 'drops_no_quality',
},
{
full = 'drops_no_sockets',
},
{
full = 'drops_not_dupeable',
},
{
full = 'shore',
},
{
full = 'darkshore',
},
{
full = 'inland',
},
{
full = 'prison',
},
{
full = 'axis',
},
{
full = 'cavern',
},
{
full = 'southernforest',
},
{
full = 'southernforest2',
},
{
full = 'church',
},
{
full = 'sins',
},
{
full = 'forestdark',
},
{
full = 'weavers',
},
{
full = 'inca',
},
{
full = 'city1',
},
{
full = 'city2',
},
{
full = 'city3',
},
{
full = 'crematorium',
},
{
full = 'catacombs',
},
{
full = 'solaris',
},
{
full = 'docks',
},
{
full = 'sewers',
},
{
full = 'barracks',
},
{
full = 'lunaris',
},
{
full = 'gardens',
},
{
full = 'library',
},
{
full = 'scepter',
},
{
full = 'secret_area',
},
{
full = 'limited_strongbox_benefits',
},
{
full = 'no_caster_mods',
},
{
full = 'no_attack_mods',
},
{
full = 'red_blood',
},
{
full = 'ghost_blood',
},
{
full = 'mud_blood',
},
{
full = 'insect_blood',
},
{
full = 'bones',
},
{
full = 'water',
},
{
full = 'noblood',
},
{
full = 'unusable_corpse',
},
{
full = 'hidden_monster',
},
{
full = 'devourer',
},
{
full = 'wb_basic',
},
{
full = 'wb_support',
},
{
full = 'wb_elite',
},
{
full = 'wb_leader',
},
{
full = 'rare_minion',
},
{
full = 'undeletable_corpse',
},
{
full = 'jewel',
},
{
full = 'strjewel',
},
{
full = 'dexjewel',
},
{
full = 'intjewel',
},
{
full = 'gladiator',
},
{
full = 'karui',
},
{
full = 'flying',
},
{
full = 'large_model',
},
{
full = 'specific_weapon',
},
{
full = 'two_handed_mod',
},
{
full = 'dual_wielding_mod',
},
{
full = 'shield_mod',
},
{
full = 'one_handed_mod',
},
{
full = 'melee_mod',
},
{
full = 'twostonering',
},
{
full = 'poison_zombie',
},
{
full = 'divination_card',
},
{
full = 'currency',
},
{
full = 'no_divine',
},
{
full = 'unique_map',
},
{
full = 'low_tier_map',
},
{
full = 'mid_tier_map',
},
{
full = 'top_tier_map',
},
{
full = 'old_map',
},
{
full = 'act_boss_area',
},
{
full = 'no_tempests',
},
{
full = 'cannot_be_twinned',
},
{
full = 'no_shroud_walker',
},
{
full = 'no_echo',
},
{
full = 'immobile',
},
{
full = 'limited_tempests',
},
{
full = 'small_staff',
},
{
full = 'tier15_map',
},
{
full = 'support_gem',
},
{
full = 'level_capped_gem',
},
{
full = 'tier14_map',
},
{
full = 'no_effect_flask_mod',
},
{
full = 'area_with_water',
},
{
full = 'no_bloodlines',
},
{
full = 'has_caster_mod',
},
{
full = 'has_attack_mod',
},
{
full = 'tier5_map',
},
{
full = 'maraketh',
},
}
game.constants.item = {}
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',
},
[2] = {
full = 'Mana Flasks',
long_upper = 'Mana Flasks',
long_lower = 'mana flasks',
},
[3] = {
full = 'Hybrid Flasks',
long_upper = 'Hybrid Flasks',
long_lower = 'hybrid flasks',
},
[4] = {
full = 'Currency',
long_upper = 'Currency',
long_lower = 'currency',
},
[5] = {
full = 'Amulets',
long_upper = 'Amulets',
long_lower = 'amulets',
},
[6] = {
full = 'Rings',
long_upper = 'Rings',
long_lower = 'rings',
},
[7] = {
full = 'Claws',
long_upper = 'Claws',
long_lower = 'claws',
},
[8] = {
full = 'Daggers',
long_upper = 'Daggers',
long_lower = 'daggers',
},
[9] = {
full = 'Wands',
long_upper = 'Wands',
long_lower = 'wands',
},
[10] = {
full = 'One Hand Swords',
long_upper = 'One Hand Swords',
long_lower = 'one hand swords',
},
[11] = {
full = 'Thrusting One Hand Swords',
long_upper = 'Thrusting One Hand Swords',
long_lower = 'thrusting one hand swords',
},
[12] = {
full = 'One Hand Axes',
long_upper = 'One Hand Axes',
long_lower = 'one hand axes',
},
[13] = {
full = 'One Hand Maces',
long_upper = 'One Hand Maces',
long_lower = 'one hand maces',
},
[14] = {
full = 'Bows',
long_upper = 'Bows',
long_lower = 'bows',
},
[15] = {
full = 'Staves',
long_upper = 'Staves',
long_lower = 'staves',
},
[16] = {
full = 'Two Hand Swords',
long_upper = 'Two Hand Swords',
long_lower = 'two hand swords',
},
[17] = {
full = 'Two Hand Axes',
long_upper = 'Two Hand Axes',
long_lower = 'two hand axes',
},
[18] = {
full = 'Two Hand Maces',
long_upper = 'Two Hand Maces',
long_lower = 'two hand maces',
},
[19] = {
full = 'Active Skill Gems',
long_upper = 'Active Skill Gems',
long_lower = 'active skill gems',
},
[20] = {
full = 'Support Skill Gems',
long_upper = 'Support Skill Gems',
long_lower = 'support skill gems',
},
[21] = {
full = 'Quivers',
long_upper = 'Quivers',
long_lower = 'quivers',
},
[22] = {
full = 'Belts',
long_upper = 'Belts',
long_lower = 'belts',
},
[23] = {
full = 'Gloves',
long_upper = 'Gloves',
long_lower = 'gloves',
},
[24] = {
full = 'Boots',
long_upper = 'Boots',
long_lower = 'boots',
},
[25] = {
full = 'Body Armours',
long_upper = 'Body Armours',
long_lower = 'body armours',
},
[26] = {
full = 'Helmets',
long_upper = 'Helmets',
long_lower = 'helmets',
},
[27] = {
full = 'Shields',
long_upper = 'Shields',
long_lower = 'shields',
},
[28] = {
full = 'Small Relics',
long_upper = 'Small Relics',
long_lower = 'small relics',
},
[29] = {
full = 'Medium Relics',
long_upper = 'Medium Relics',
long_lower = 'medium relics',
},
[30] = {
full = 'Large Relics',
long_upper = 'Large Relics',
long_lower = 'large relics',
},
[31] = {
full = 'Stackable Currency',
long_upper = 'Stackable Currency',
long_lower = 'stackable currency',
},
[32] = {
full = 'Quest Items',
long_upper = 'Quest Items',
long_lower = 'quest items',
},
[33] = {
full = 'Sceptres',
long_upper = 'Sceptres',
long_lower = 'sceptres',
},
[34] = {
full = 'Utility Flasks',
long_upper = 'Utility Flasks',
long_lower = 'utility flasks',
},
[35] = {
full = 'Critical Utility Flasks',
long_upper = 'Critical Utility Flasks',
long_lower = 'critical utility flasks',
},
[36] = {
full = 'Maps',
long_upper = 'Maps',
long_lower = 'maps',
},
[37] = {
full = 'Unarmed',
long_upper = 'Unarmed',
long_lower = 'Unarmed',
},
[38] = {
full = 'Fishing Rods',
long_upper = 'Fishing Rods',
long_lower = 'fishing rods',
},
[39] = {
full = 'Map Fragments',
long_upper = 'Map Fragments',
long_lower = 'map fragments',
},
[40] = {
full = 'Hideout Doodads',
long_upper = 'Hideout Doodads',
long_lower = 'hideout doodads',
},
[41] = {
full = 'Microtransactions',
long_upper = 'Microtransactions',
long_lower = 'microtransactions',
},
[42] = {
full = 'Jewel',
long_upper = 'Jewel',
long_lower = 'jewel',
},
[43] = {
full = 'Divination Card',
long_upper = 'Divination Card',
long_lower = 'divination card',
},
[44] = {
full = 'Labyrinth Item',
long_upper = 'Labyrinth Item',
long_lower = 'labyrinth item',
},
[45] = {
full = 'Labyrinth Trinket',
long_upper = 'Labyrinth Trinket',
long_lower = 'labyrinth trinket',
},
}
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',
},
}
-- 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',
},
}
-- 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',
},
}
return game