[dismiss]
The wiki is currently a work in progress. If you'd like to help out, please check the Community Portal and our getting started guide. Also, check out our sister project on poewiki.net.
Module:Monster: Difference between revisions
Jump to navigation
Jump to search
>OmegaK2 No edit summary |
>OmegaK2 No edit summary |
||
Line 118: | Line 118: | ||
type = 'String', | type = 'String', | ||
}, | }, | ||
armour_multiplier = { | armour_multiplier = { | ||
field = 'armour_multiplier', | field = 'armour_multiplier', | ||
Line 131: | Line 130: | ||
type = 'Float', | type = 'Float', | ||
}, | }, | ||
damage_spread = { | damage_spread = { | ||
field = 'damage_spread', | field = 'damage_spread', |
Revision as of 15:19, 25 May 2019
The above documentation is transcluded from Module:Monster/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.
-- ----------------------------------------------------------------------------
-- Imports
-- ----------------------------------------------------------------------------
local m_cargo = require('Module:Cargo')
local getArgs = require('Module:Arguments').getArgs
local m_util = require('Module:Util')
local p = {}
-- ----------------------------------------------------------------------------
-- Strings
-- ----------------------------------------------------------------------------
local i18n = {
arg = {
},
}
-- ----------------------------------------------------------------------------
-- Tables
-- ----------------------------------------------------------------------------
local tables = {}
tables.monsters = {
table = 'monsters',
order = {'metadata_id', 'monster_type_id', 'mod_ids', 'part1_mod_ids', 'part2_mod_ids', 'endgame_mod_ids', 'tags', 'skill_ids', 'name', 'size', 'minimum_attack_distance', 'maximum_attack_distance', 'model_size_multiplier', 'experience_multiplier', 'damage_multiplier', 'health_multiplier', 'critical_strike_chance', 'attack_speed'},
fields = {
metadata_id = {
field = 'metadata_id',
type = 'String',
},
monster_type_id = {
field = 'monster_type_id',
type = 'String',
},
mod_ids = {
field = 'mod_ids',
type = 'List (,) of String',
},
part1_mod_ids = {
field = 'part1_mod_ids',
type = 'List (,) of String',
},
part2_mod_ids = {
field = 'part2_mod_ids',
type = 'List (,) of String',
},
endgame_mod_ids = {
field = 'endgame_mod_ids',
type = 'List (,) of String',
},
tags = {
field = 'tags',
type = 'List (,) of String',
},
skill_ids = {
field = 'skill_ids',
type = 'List (,) of String',
},
-- add base type info or just parse it?
name = {
field = 'name',
type = 'String',
},
size = {
field = 'size',
type = 'Integer',
},
minimum_attack_distance = {
field = 'minimum_attack_distance',
type = 'Integer',
},
maximum_attack_distance = {
field = 'maximum_attack_distance',
type = 'Integer',
},
model_size_multiplier = {
field = 'model_size_multiplier',
type = 'Float',
},
experience_multiplier = {
field = 'experience_multiplier',
type = 'Float',
},
damage_multiplier = {
field = 'damage_multiplier',
type = 'Float',
},
health_multiplier = {
field = 'health_multiplier',
type = 'Float',
},
critical_strike_chance = {
field = 'critical_strike_chance',
type = 'Float',
},
attack_speed = {
field = 'attack_speed',
type = 'Float',
},
}
}
tables.monster_types = {
table = 'monster_types',
order = {'id', 'tags', 'monster_resistance_id'},
fields = {
id = {
field = 'id',
type = 'String',
},
tags = {
field = 'tags',
type = 'List (,) of String',
},
monster_resistance_id = {
field = 'monster_resistance_id',
type = 'String',
},
armour_multiplier = {
field = 'armour_multiplier',
type = 'Float',
},
evasion_multiplier = {
field = 'evasion_multiplier',
type = 'Float',
},
energy_shield_multiplier = {
field = 'energy_shield_multiplier',
type = 'Float',
},
damage_spread = {
field = 'damage_spread',
type = 'Float',
},
}
}
tables.monster_resistances = {
table = 'monster_resistances',
order = {'id', 'part1_fire', 'part1_cold', 'part1_lightning', 'part1_chaos', 'part2_fire', 'part2_cold', 'part2_lightning', 'part2_chaos', 'maps_fire', 'maps_cold', 'maps_lightning', 'maps_chaos'},
fields = {
id = {
field = 'id',
type = 'String',
},
part1_fire = {
field = 'size',
type = 'Integer',
},
part1_cold = {
field = 'size',
type = 'Integer',
},
part1_lightning = {
field = 'size',
type = 'Integer',
},
part1_chaos = {
field = 'size',
type = 'Integer',
},
part2_fire = {
field = 'size',
type = 'Integer',
},
part2_cold = {
field = 'size',
type = 'Integer',
},
part2_lightning = {
field = 'size',
type = 'Integer',
},
part2_chaos = {
field = 'size',
type = 'Integer',
},
maps_fire = {
field = 'size',
type = 'Integer',
},
maps_cold = {
field = 'size',
type = 'Integer',
},
maps_lightning = {
field = 'size',
type = 'Integer',
},
maps_chaos = {
field = 'size',
type = 'Integer',
},
}
}
tables.monster_stats = {
table = 'monster_stats',
order = {'level', 'damage', 'evasion', 'accuracy', 'life', 'experience', 'summon_life'},
fields = {
level = {
field = 'level',
type = 'Integer',
},
damage = {
field = 'damage',
type = 'Float',
},
evasion = {
field = 'evasion',
type = 'Integer',
},
accuracy = {
field = 'accuracy',
type = 'Integer',
},
life = {
field = 'life',
type = 'Integer',
},
experience = {
field = 'experience',
type = 'Integer',
},
summon_life = {
field = 'summon_life',
type = 'Integer',
},
-- whole bunch of other values I have no clue about ...
}
}
tables.monster_map_multipliers = {
table = 'monster_map_multipliers',
order = {'level', 'health', 'damage', 'boss_health', 'boss_damage', 'boss_item_rarity', 'boss_item_quantity'},
fields = {
level = {
field = 'level',
type = 'Integer',
},
health = {
field = 'health',
type = 'Integer',
},
damage = {
field = 'damage',
type = 'Integer',
},
boss_health = {
field = 'boss_health',
type = 'Integer',
},
boss_damage = {
field = 'boss_damage',
type = 'Integer',
},
boss_item_rarity = {
field = 'boss_item_rarity',
type = 'Integer',
},
boss_item_quantity = {
field = 'boss_item_quanity',
type = 'Integer',
},
}
}
-- ----------------------------------------------------------------------------
-- Page views
-- ----------------------------------------------------------------------------
p.table_monsters = m_cargo.declare_factory{data=tables.monsters}
p.table_monster_types = m_cargo.declare_factory{data=tables.monster_types}
p.table_monster_resistances = m_cargo.declare_factory{data=tables.monster_resistances}
p.table_monster_stats = m_cargo.declare_factory{data=tables.monster_stats}
p.table_monster_map_multiplier = m_cargo.declare_factory{data=tables.monster_map_multipliers}
--[[
function p.monster_resistance_table (frame)
local tpl_args = getArgs(frame, {
parentFirst = true
})
frame = m_util.misc.get_frame(frame)
end]]
return p