Path of Exile Wiki

Wiki поддерживается сообществом, поэтому подумайте над тем, чтобы внести свой вклад.

ПОДРОБНЕЕ

Path of Exile Wiki
Нет описания правки
Нет описания правки
Строка 352: Строка 352:
 
random_two_implicit_corrupted = string.format('случайный %s %%s %s', m_util.html.poe_color('corrupted', 'осквернённый'), m_util.html.poe_color('corrupted', 'с двумя собственными свойствами')),
 
random_two_implicit_corrupted = string.format('случайный %s %%s %s', m_util.html.poe_color('corrupted', 'осквернённый'), m_util.html.poe_color('corrupted', 'с двумя собственными свойствами')),
 
random_two_implicit_corrupted_two_influenced_item_level_x = string.format('random %s level %%i %%s', m_util.html.poe_color('corrupted', 'two-implicit corrupted')),
 
random_two_implicit_corrupted_two_influenced_item_level_x = string.format('random %s level %%i %%s', m_util.html.poe_color('corrupted', 'two-implicit corrupted')),
random_item_level_x = 'случайный %s %s уровня',
+
random_item_level_x = 'случайный %s %i уровня',
random_item_level_x_2 = 'случайная %s %s уровня',
+
random_item_level_x_2 = 'случайная %s %i уровня',
random_item_level_x_3 = 'случайное %s %s уровня',
+
random_item_level_x_3 = 'случайное %s %i уровня',
random_item_level_x_4 = 'случайные %s %s уровня',
+
random_item_level_x_4 = 'случайные %s %i уровня',
random_x_link = 'случайный %s с %s связанными гнёздами',
+
random_x_link = 'случайный %s с %i связанными гнёздами',
random_x_link_item_level_y = 'случайный %s с %s связанными гнёздами %s уровня',
+
random_x_link_item_level_y = 'случайный %s с %i связанными гнёздами %i уровня',
random_x_link_item_level_y_random_influenced = 'случайный %s с %s связанными гнёздами %s уровня и случайным влиянием',
+
random_x_link_item_level_y_random_influenced = 'случайный %s с %i связанными гнёздами %i уровня и случайным влиянием',
random_x_amount = 'случайный %s (%s шт.)',
+
random_x_amount = 'случайный %s (%i шт.)',
random_x_amount_2 = 'случайная %s (%s шт.)',
+
random_x_amount_2 = 'случайная %s (%i шт.)',
random_x_amount_3 = 'случайное %s (%s шт.)',
+
random_x_amount_3 = 'случайное %s (%i шт.)',
random_x_amount_4 = 'случайные %s (%s шт.)',
+
random_x_amount_4 = 'случайные %s (%i шт.)',
 
random_influenced = 'случайный %s со случайным влиянием',
 
random_influenced = 'случайный %s со случайным влиянием',
 
random_two_influenced = 'случайная %s с двойным влиянием',
 
random_two_influenced = 'случайная %s с двойным влиянием',
random_two_influenced_x_2 = 'случайная %s с двойным влиянием %s уровня',
 
random_two_influenced_x_3 = 'случайное %s с двойным влиянием %s уровня',
 
 
random_shaper = 'случайный %s с влиянием Создателя',
 
random_shaper = 'случайный %s с влиянием Создателя',
random_shaper_item_level_x = 'случайный %s с влиянием Создателя %s уровня',
+
random_shaper_item_level_x = 'случайный %s с влиянием Создателя %i уровня',
random_shaper_item_level_x_2 = 'случайная %s с влиянием Создателя %s уровня',
+
random_shaper_item_level_x_2 = 'случайная %s с влиянием Создателя %i уровня',
random_shaper_item_level_x_3 = 'случайное %s с влиянием Создателя %s уровня',
+
random_shaper_item_level_x_3 = 'случайное %s с влиянием Создателя %i уровня',
random_shaper_item_level_x_4 = 'случайные %s с влиянием Создателя %s уровня',
+
random_shaper_item_level_x_4 = 'случайные %s с влиянием Создателя %i уровня',
random_shaper_hunter_item_level_x = 'случайный %s с влиянием Создателя и Охотника %s уровня',
+
random_shaper_hunter_item_level_x = 'случайный %s с влиянием Создателя и Охотника %i уровня',
random_shaper_hunter_item_level_x_2 = 'случайная %s с влиянием Создателя и Охотника %s уровня',
+
random_shaper_hunter_item_level_x_2 = 'случайная %s с влиянием Создателя и Охотника %i уровня',
random_shaper_hunter_item_level_x_3 = 'случайное %s с влиянием Создателя и Охотника %s уровня',
+
random_shaper_hunter_item_level_x_3 = 'случайное %s с влиянием Создателя и Охотника %i уровня',
random_shaper_hunter_item_level_x_4 = 'случайные %s с влиянием Создателя и Охотника %s уровня',
+
random_shaper_hunter_item_level_x_4 = 'случайные %s с влиянием Создателя и Охотника %i уровня',
random_two_influenced_item_level_x = 'random double-influenced item level %i %s',
+
random_two_influenced_item_level_x = 'случайный %s с двойным влиянием %i уровня',
random_elder_item_level_x = 'случайный %s с влиянием Древнего %s уровня',
+
random_two_influenced_item_level_x_2 = 'случайная %s с двойным влиянием %i уровня',
random_elder_item_level_x_2 = 'случайная %s с влиянием Древнего %s уровня',
+
random_two_influenced_item_level_x_3 = 'случайное %s с двойным влиянием %i уровня',
random_elder_item_level_x_3 = 'случайное %s с влиянием Древнего %s уровня',
+
random_elder_item_level_x = 'случайный %s с влиянием Древнего %i уровня',
random_elder_item_level_x_4 = 'случайные %s с влиянием Древнего %s уровня',
+
random_elder_item_level_x_2 = 'случайная %s с влиянием Древнего %i уровня',
 
random_elder_item_level_x_3 = 'случайное %s с влиянием Древнего %i уровня',
  +
random_elder_item_level_x_4 = 'случайные %s с влиянием Древнего %i уровня',
 
random_eternal_labyrinth_enchantment = string.format('случайный %%s со случайным %s', m_util.html.poe_color('enchanted', 'зачарованием Вечного Лабиринта')),
 
random_eternal_labyrinth_enchantment = string.format('случайный %%s со случайным %s', m_util.html.poe_color('enchanted', 'зачарованием Вечного Лабиринта')),
 
random_veiled = 'случайный %s с завуалированным свойством',
 
random_veiled = 'случайный %s с завуалированным свойством',
Строка 387: Строка 387:
 
random_map_level = 'случайная %s, осквернённая и %s уровня',
 
random_map_level = 'случайная %s, осквернённая и %s уровня',
   
tier_x_map = 'карта %s уровня',
+
tier_x_map = 'карта %i уровня',
level_x_gem = 'камень %s уровня',
+
level_x_gem = 'камень %i уровня',
level_x_y_gem = 'камень с меткой "%s" %s уровня',
+
level_x_y_gem = 'камень с меткой "%s" %i уровня',
superior_gem = 'superior gem',
+
superior_gem = 'камень с качеством',
superior_gem_q_x = 'камень с качеством %s',
+
superior_gem_q_x = 'камень с качеством %i%%',
superior_x_gem_q_y = 'камень с меткой "%s" и качеством %s',
+
superior_x_gem_q_y = 'камень с меткой "%s" с качеством %i%%',
superior_level_x_y_gem_q_z = 'камень с меткой "%s" %s уровня и качеством %s',
+
superior_level_x_y_gem_q_z = 'камень с меткой "%s" %i уровня с качеством %i%%',
 
superior_level_x_support_plus_gem_q_y = 'пробужденный камень поддержки %i уровня с качеством %i%%',
superior_skill_gem = 'камень умения случайного качества',
 
superior_level_x_gem_q_y = 'камень %s уровня и качеством %s',
+
alt_level_x_gem_q_y = 'камень %i уровня с альтернативным качеством %i%%',
superior_level_x_support_plus_gem_q_y = 'пробужденный камень поддержки %s уровня и качеством %s',
 
alt_level_x_gem_q_y = 'level %i gem with %i%% alternative quality',
 
 
 
 
x_item = 'предмет %s',
 
x_item = 'предмет %s',

Версия от 17:51, 27 мая 2021

Template info icon Документация модуля[просмотр] [править] [история] [очистить]

Это файл конфигурации для Модуля:Item2. Этот файл можно отредактировать, чтобы облегчить перевод/перенос модуля на другие вики-страницы.

-------------------------------------------------------------------------------
-- 
-- Configuration for Module:Item2 and submodules
-- 
-------------------------------------------------------------------------------

local m_util = require('Module:Util')

local cfg = {}

-- ----------------------------------------------------------------------------
-- i18n
-- ----------------------------------------------------------------------------

cfg.i18n = {}

--
-- Main
--

cfg.i18n.files = {
    inventory_icon = 'File:%s inventory icon.png',
    status_icon = 'File:%s status icon.png',
    divination_card_art = 'File:%s card art.png',
}

cfg.i18n.gem_tag_category = '[[:Категория:%s (тег камня)|%s]]'

cfg.i18n.misc = {
    -- used to identify betrayal map series to avoid showing area infobox.
    betrayal = 'Предательство',
}

cfg.i18n.categories = {
    -- maintenance cats
    improper_modifiers = 'Предметы с неправильными модификаторами',
    missing_release_version = 'Предметы без параметра "release_version"',
    broken_upgraded_from_reference = 'Предметы со сломанными ссылками предметов в параметрах "upgraded_from"', 
    duplicate_upgraded_from_reference = 'Предметы с повторяющимися наборами в параметрах "upgraded_from"',
    duplicate_query_area_ids = 'Предметы с повторяющимися идентификаторами областей из запросов',
    base_items = 'Базовые предметы',
    derived_items = 'Производные предметы',
    sell_prices_override = 'Предметы с изменёнными ценами продаж',

    -- regular cats
    alternate_artwork = 'Предметы с альтернативным внешним видом',

    -- misc
    gem_tag_affix = '%s (тег камня)',
    unique_affix = 'Уникальные %s',
    
    prophecies = 'Пророчества',
    blight_item = 'Масла',
    talismans = 'Талисманы',
    essences = 'Сущности',
}

cfg.i18n.stat_skip_patterns = {
    maps = {
        '%d+%% увеличение количества найденных предметов в этой области',
        '%d+%% повышение редкости найденных предметов в этой области',
        '%+%d+%% увеличение размера групп монстров',
        -- ranges
        '%(%d+%-%d+%)%% увеличение количества найденных предметов в этой области',
        '%(%d+%-%d+%)%% повышение редкости найденных предметов в этой области',
        '%+%(%d+%-%d+%)%% увеличение размера групп монстров',
    },
    jewels = {
        'Limited to %d+ %(Hidden%)',
        'Jewel has a radius of %d+ %(Hidden%)',
    },
}

cfg.i18n.help_text_defaults = {
    active_gem = 'Для получения умения выберите предмет и поместите камень в гнездо соответствующего цвета. Щелкните ПКМ, чтобы вынуть камень из гнезда.',
    support_gem = 'Это камень поддержки. Он дает преимущества не герою, а камню умения в связанных гнездах. Вставьте камень поддержки в гнездо, соединенное с гнездом усиливаемого камня активного умения. Щелкните ПКМ, чтобы вынуть камень из гнезда.',
    jewel = 'Поместите самоцвет в доступное гнездо на дереве пассивных умений. Чтобы вынуть самоцвет, щёлкните по нему правой кнопкой мыши.',
}

-- Used by the item info box
cfg.i18n.tooltips = {
    corrupted = m_util.html.poe_color('corrupted', 'Осквернено'),
    support_icon = 'Изображение: %s',
    radius = 'Радиус: %s',
    mana_cost = 'Расход ресурсов: %s маны',
    mana_reserved = 'Удержано ресурсов: %s маны',
    cost = 'Расход ресурсов: %s',
    reservation = 'Удержано ресурсов: %s',
    mana_multiplier = 'Множитель расхода и удержания ресурсов: %s',
    vaal_souls_per_use = 'Разовый расход душ: %s',
    stored_uses = 'Максимум зарядов: %s',
    stored_uses_singular = 'Максимум зарядов: %s',
    stored_uses_plural = 'Максимум зарядов: %s',
    vaal_soul_gain_prevention_time = 'Нельзя получать души: %s',
    cooldown_time = 'Перезарядка: %s',
    uses_quantity = 'uses',
    cast_time = 'Время применения: %s',
    instant_cast_time = 'Мгновенное',
    critical_strike_chance = 'Шанс критического удара: %s',
    attack_speed_multiplier = 'Скорость атаки: %s',
    damage_multiplier = 'Урон от атаки: %s',
    of_base_stat = 'от базовой',
    damage_effectiveness = 'Эффективность добавленного урона: %s',
    projectile_speed = 'Скорость снаряда: %s',
    quality = 'Качество: %s',
    physical_damage = 'Физический урон: %s',
    elemental_damage = 'Урон от стихий: %s',
    chaos_damage = 'Урон хаосом: %s',
    attacks_per_second = 'Атак в секунду: %s',
    weapon_range = 'Дальность оружия: %s',
    map_level = 'Уровень области: %s',
    map_tier = 'Уровень карты: %s',
    map_guild_character = m_util.html.abbr('Редактор тега гильдии', 'При редактировании тега гильдии эта карта может быть использована для данного символа') .. ': %s',
    item_quantity = 'Количество предметов: %s',
    item_rarity = 'Редкость предметов: %s',
    monster_pack_size = 'Размер групп монстров: %s',
    limited_to = 'Максимум: %s',
    flask_mana_recovery = 'Восстанавливает ману: %s за %s сек.',
    flask_life_recovery = 'Восстанавливает здоровье: %s за %s сек.',
    flask_duration = 'Длится %s сек.',
    flask_charges_per_use = 'Расходует %s из %s зарядов при использовании',
    chance_to_block = 'Шанс заблокировать удар: %s',
    armour = 'Броня: %s',
    evasion = 'Уклонение: %s',
    energy_shield = 'Энерг. щит: %s',
    movement_speed = 'Скорость передвижения: %s',
    talisman_tier = 'Уровень талисмана: %s',
    stack_size = 'Размер стопки: %s',
    essence_level = 'Уровень сущности: %s',
    blight_item_tier = 'Уровень масла: %s',
    requires = 'Требуется %s',
    level_inline = 'Уровень %s',
    level = 'Уровень: %s',
    gem_quality = 'За 1% качества:',
    gem_quality_1 = 'По умолчанию',
    gem_quality_2 = 'Аномальный',
    gem_quality_3 = 'Искривлённый',
    gem_quality_4 = 'Фантомный',
    variation_singular = 'Изменений:',
    variation_plural = 'Изменений:',
    favour_cost = 'Цена расположения: %s',
    seal_cost = 'Стоимость печати: <br>%s',
    cannot_be_traded_or_modified = 'Этот предмет нельзя отдать или изменить',
    
    -- harvest seeds
    seed_tier = 'Уровень семени: %s',
    seed_monster = 'При сборе появляется монстр ? уровня',
    seed_lifeforce_gained = 'При сборе даёт ? едениц(-ы) чистой %s жизненной силы',
    seed_growth_cycles = 'Можно собрать после %s циклов роста',
    
    seed_lifeforce_consumed = 'Потребляет (%s%%) единиц(-ы) конденсированной %s жизненной силы из распылителя за цикл роста',
    seed_required_seeds = 'Для роста требует соседства %s %s растений как минимум %s уровня',
    
    -- harvest plant boosters, not used at the moment
    plant_booster_extra_chances = 'Seeds in radius give the rarest of %s chosen Crafting Options when Harvested',
    plant_booster_lifeforce = 'Seeds in radius produce %s more Lifeforce when Harvested',
    plant_booster_additional_crafting_optioons = 'Seeds in radius have %s chance to generate additional Crafting Options when Harvested',
    
    -- heist
    heist_required_npc = 'Этот предмет могут использовать: %s',
    heist_required_job = 'Требуется %s %s уровня',
    heist_any_job = 'Любая роль',
    
    random_mod = '&lt;&lt;случайное свойство %s&gt;&gt;',
    
    --
    -- secondary infobox
    --
    extra_info = 'Дополнительная информация',
    header_overall = 'Диаграмма улучшения области',
    header_upgrades = 'Уровень улучшения',
    header_map_tier = 'Уровень карты',
    header_map_level = 'Уровень области',
    header_connections = 'Соединения',
    
    drop_restrictions = 'Получение',
    league_restriction = m_util.html.abbr('Лига(-и):', 'Предмет может быть получен только в Лиге(-ах)') .. ' %s',
    drop_disabled = 'НЕ ВЫПАДАЕТ',
    
    purchase_costs = m_util.html.abbr('Стоимость покупки', 'Стоимость покупки предмета такого типа у торгующих NPC. Это не означает, действительно ли NPC продаст вам этот предмет.'),
    sell_price = m_util.html.abbr('Цена продажи', 'Товары или валюта, полученные при продаже этого товара у торгующих NPC. Некоторые рецепты торговцев могут переопределить это значение.'),
    default_vendor_offer = 'Обрывок свитка',
    
    damage_per_second = 'УВС Оружия',
    physical_dps = 'Физический',
    fire_dps = 'Огонь',
    cold_dps = 'Холод',
    lightning_dps = 'Молния',
    chaos_dps = 'Хаос',
    elemental_dps = 'Стихийный',
    poison_dps = 'Физ+Хаос',
    dps = 'Общий',
    
    misc = 'Прочее',
    item_class = 'Класс предмета: %s',
    metadata_id = 'Metadata ID: %s',
}

-- Default inventory icons for certain types of items
-- Used with cfg.i18n.files.inventory_icon
cfg.i18n.default_inventory_icons = {
    ['DivinationCard'] = 'Divination card',
    ['Prophecy'] = 'Prophecy',
}

-- Keys are item class ids
cfg.i18n.item_class_map = {
    ['Staff'] = 'Посох',
    ['Bow'] = 'Лук',
    ['Wand'] = 'Жезл',
    ['Two Hand Axe'] = 'Двуручный топор',
    ['Two Hand Sword'] = 'Двуручный меч',
    ['Two Hand Mace'] = 'Двуручная булава',
    ['Warstaff'] = 'Воинский посох',
    ['Sceptre'] = 'Скипетр',
    ['One Hand Mace'] = 'Одноручная булава',
    ['One Hand Axe'] = 'Одноручный топор',
    ['One Hand Sword'] = 'Одноручный меч',
    ['Thrusting One Hand Sword'] = 'Одноручный меч',
    ['Claw'] = 'Когти',
    ['Dagger'] = 'Кинжал',
    ['Rune Dagger'] = 'Рунический кинжал',
    ['FishingRod'] = 'Удочка',
    ['HideoutDoodad'] = 'Предмет для убежища',
}

-- Formatting
cfg.i18n.fmt = {
    standard_damage_range = '%s-%s',
    variable_damage_range = 'от&nbsp;%s&nbsp;до&nbsp;%s',
}

cfg.i18n.debug = {
    base_item_field_not_found = 'Base item property not found: %s.%s',
    field_value_mismatch = 'Значение для аргумента "%s" установлено на что-то другое, чем по умолчанию: %s',
}

cfg.i18n.errors = {
    missing_base_item = 'Rarity is set to above normal, but base item is not set. A base item for rarities above normal is required!',
    missing_rarity = 'Base item parameter is set, but rarity is set to normal. A rarity above normal is required!',
    duplicate_base_items = 'More then one result found for the specified base item. Consider using base_item_page or base_item_id to narrow down the results.',
    base_item_not_found = 'Базовый предмет не найден в базе данных. Проверьте орфографические ошибки или наличие страницы базового предмета на вики. Если страница базового предмета существует на вики, но не может быть найдена, пожалуйста, отредактируйте страницу.',
    invalid_league = '%s не распознаётся как лига',
    invalid_tag = '%s не является допустимым тегом',
    generic_argument_parameter = 'Unrecognized %s parameter "%s"',
    generic_required_parameter = 'Parameter "%s" must be specified for this item type.',
    non_unique_flag = 'Only unique items can are egible for the flag "%s".',
    duplicate_area_id_from_query = 'Query found duplicate area ids that do not need to be set on the item. Duplicate ids: "%s"',
    duplicate_metadata = 'Дубликат metadata_id "%s" на странице "%s"',
    invalid_influence = 'Значение influence "%s" недопустимо. Допустимые значения - "shaper", "elder", "crusader", "redeemer", "hunter" и "warlord".',
    invalid_class = 'The item class name "%s" is invalid.',
    invalid_class_id = 'Данный class_id не верный "%s". Для правильной работы модуля Item2 и шаблона, необходимо использовать правильный идентификатор.',
    invalid_rarity_id = 'Недопустимый rarity_id "%s". Допустимые значения: "normal", "magic", "rare" и "unique".',
    invalid_region_upgrade_count = 'atlas_connection%s_tier: Invalid amount (%s) of connections, only 5 are allowed',
    no_results_found = 'Результатов не найдено',
}

--
-- Upgrade paths
--

cfg.i18n.upgrade_paths = {}

cfg.i18n.upgrade_paths = {
    -- Item names
    agate_amulet = 'амулет с агатом',
    unset_ring = 'кольцо без камня',
    gold_ring = 'золотое кольцо',
    prismatic_ring = 'радужное кольцо',
    two_stone_ring = 'кольцо с двумя камнями',
    crystal_sceptre = 'кристальный скипетр',
    rustic_sash = 'кушак',
    nightmare_bascinet = 'кошмарный бацинет',
    timeless_jewel = 'вневременной самоцвет',
    granite_flask = 'гранитный флакон',
    precursors_emblem = 'Знак предтечи',

    -- Namesakes
    atziri = 'Атзири',
    doedre = 'Доэдре',
    shavronne = 'Шавронн',
    rigwald = 'Ригвальда',
    lioneye = 'Львиного глаза',
    farrul = 'Фаррул',

    -- Strings used in notes
    item = 'предмет',
    shield = 'щит',
    map = 'карта',
    belt = 'пояс',
    armour = 'доспех',
    weapon = 'оружие',
    sword = 'меч',
    jewellery = 'бижутерия',
    axe = 'топор',
    flask = 'флакон',
    amulet = 'амулет',
    ring = 'кольцо',
    wand = 'жезл',
    staff = 'посох',
    claw = 'когти',
    dagger = 'кинжал',
    sceptre = 'скипетр',
    bow = 'лук',
    gloves = 'перчатки',
    jewel = 'самоцвет',
    talisman = 'талисман',
    tier_1_talisman = 'талисман 1 уровня',
    breachstone_splinter = 'осколок Разлома',
    breachstone = 'камень Разлома',
    pure_breachstone = 'очищенный камень Разлома',
    scarab = 'скарабей',
    gilded_scarab = 'золочёный скарабей',
    essence = 'сущность',
    deafening_essence = 'оглушающая сущность',
    shrieking_essence = 'визжащая сущность',
    harbinger_fragment = 'фрагмент Предвестника',
    divination_card = 'гадальная карта',
    body_armour = 'нательный доспех',
    one_hand_weapon = 'одноручное оружие',
    two_hand_weapon = 'двуручное оружие',
    league_specific_item = 'предмет из лиги',
    fated_unique_item_prophecy = 'пророчество на судьбоносный уникальный предмет',
    quality_currency = 'валюта, повышающая качество',
    fossil = 'ископаемое',
    fragment = 'фрагмент',
    sacrifice_fragment = 'фрагмент жертвы',
    mortal_fragment = 'смертный фрагмент',
    uber_elder_fragment = 'фрагмент убер-Древнего',
    helmet = 'шлем',

    life = 'со здоровьем',
    primordial = 'Первородный',
    
    -- used within essences
    essence_plus_one_level = string.format('+1 уровень в результате %s', m_util.html.poe_color('corrupted', 'осквернения')),
    essence_type_change = string.format('изменение типа в результате %s', m_util.html.poe_color('corrupted', 'осквернения')),
}

-- formatters 
cfg.i18n.upgrade_paths.fmt = {
    random = 'случайный %s',
    random_2 = 'случайная %s',
    random_3 = 'случайное %s',
    random_4 = 'случайные %s',
    random_corrupted = string.format('случайный %s %%s', m_util.html.poe_color('corrupted', 'осквернённый')),
    random_corrupted_2 = string.format('случайная %s %%s', m_util.html.poe_color('corrupted', 'осквернённая')),
    random_corrupted_3 = string.format('случайное %s %%s', m_util.html.poe_color('corrupted', 'осквернённое')),
    random_corrupted_4 = string.format('случайные %s %%s', m_util.html.poe_color('corrupted', 'осквернённые')),
    random_unidentified_corrupted = string.format('случайный %s %%s', m_util.html.poe_color('corrupted', 'неопознанный осквернённый')),
    random_unidentified_corrupted_2 = string.format('случайная %s %%s', m_util.html.poe_color('corrupted', 'неопознанная осквернённая')),
    random_two_implicit_corrupted = string.format('случайный %s %%s %s', m_util.html.poe_color('corrupted', 'осквернённый'), m_util.html.poe_color('corrupted', 'с двумя собственными свойствами')),
    random_two_implicit_corrupted_two_influenced_item_level_x = string.format('random %s level %%i %%s', m_util.html.poe_color('corrupted', 'two-implicit corrupted')),
    random_item_level_x = 'случайный %s %i уровня',
    random_item_level_x_2 = 'случайная %s %i уровня',
    random_item_level_x_3 = 'случайное %s %i уровня',
    random_item_level_x_4 = 'случайные %s %i уровня',
    random_x_link = 'случайный %s с %i связанными гнёздами',
    random_x_link_item_level_y = 'случайный %s с %i связанными гнёздами %i уровня',
    random_x_link_item_level_y_random_influenced = 'случайный %s с %i связанными гнёздами %i уровня и случайным влиянием',
    random_x_amount = 'случайный %s (%i шт.)',
    random_x_amount_2 = 'случайная %s (%i шт.)',
    random_x_amount_3 = 'случайное %s (%i шт.)',
    random_x_amount_4 = 'случайные %s (%i шт.)',
    random_influenced = 'случайный %s со случайным влиянием',
    random_two_influenced = 'случайная %s с двойным влиянием',
    random_shaper = 'случайный %s с влиянием Создателя',
    random_shaper_item_level_x = 'случайный %s с влиянием Создателя %i уровня',
    random_shaper_item_level_x_2 = 'случайная %s с влиянием Создателя %i уровня',
    random_shaper_item_level_x_3 = 'случайное %s с влиянием Создателя %i уровня',
    random_shaper_item_level_x_4 = 'случайные %s с влиянием Создателя %i уровня',
    random_shaper_hunter_item_level_x = 'случайный %s с влиянием Создателя и Охотника %i уровня',
    random_shaper_hunter_item_level_x_2 = 'случайная %s с влиянием Создателя и Охотника %i уровня',
    random_shaper_hunter_item_level_x_3 = 'случайное %s с влиянием Создателя и Охотника %i уровня',
    random_shaper_hunter_item_level_x_4 = 'случайные %s с влиянием Создателя и Охотника %i уровня',
    random_two_influenced_item_level_x = 'случайный %s с двойным влиянием %i уровня',
    random_two_influenced_item_level_x_2 = 'случайная %s с двойным влиянием %i уровня',
    random_two_influenced_item_level_x_3 = 'случайное %s с двойным влиянием %i уровня',
    random_elder_item_level_x = 'случайный %s с влиянием Древнего %i уровня',
    random_elder_item_level_x_2 = 'случайная %s с влиянием Древнего %i уровня',
    random_elder_item_level_x_3 = 'случайное %s с влиянием Древнего %i уровня',
    random_elder_item_level_x_4 = 'случайные %s с влиянием Древнего %i уровня',
    random_eternal_labyrinth_enchantment = string.format('случайный %%s со случайным %s', m_util.html.poe_color('enchanted', 'зачарованием Вечного Лабиринта')),
    random_veiled = 'случайный %s с завуалированным свойством',
    random_two_veiled = 'случайный %s с двумя завуалированными свойствами',
    random_primordial = string.format('случайный %s %%s', m_util.html.poe_color('magic', 'Первородный')),
    random_map_level = 'случайная %s, осквернённая и %s уровня',

    tier_x_map = 'карта %i уровня',
    level_x_gem = 'камень %i уровня',
    level_x_y_gem = 'камень с меткой "%s" %i уровня',
    superior_gem = 'камень с качеством',
    superior_gem_q_x = 'камень с качеством %i%%',
    superior_x_gem_q_y = 'камень с меткой "%s" с качеством %i%%',
    superior_level_x_y_gem_q_z = 'камень с меткой "%s" %i уровня с качеством %i%%',
    superior_level_x_support_plus_gem_q_y = 'пробужденный камень поддержки %i уровня с качеством %i%%',
    alt_level_x_gem_q_y = 'камень %i уровня с альтернативным качеством %i%%',
    
    x_item = 'предмет %s',
}

--[[cfg.i18n.upgrade_paths.misc = {
    upgraded_from_map = 'случайная карта уровнем выше того же региона',
}--]]

cfg.i18n.upgrade_paths.errors = {
    missing_amount = 'Item amount is missing or not a number (%s)',
    upgraded_from_broken_reference = 'Item reference in %s is broken (value: %s)',
    upgraded_from_duplicate = 'Automatic upgraded from entry is duplicated on page in upgraded_from_set%s',
}

-- ----------------------------------------------------------------------------
-- Constants
-- ----------------------------------------------------------------------------

cfg.image_size = 39

cfg.image_size_full = cfg.image_size * 2

-- TODO: Second pass for i18n item classes
-- base item is default, but will be validated later
-- Notes:
--  inventory_icon must always be before alternate_art_inventory_icons 
--  drop_areas after tags
--  is_relic after rarity
cfg.default_args = {
    'rarity_id', 'rarity', 'name', 'name_list', 'size_x', 'size_y', 
    'drop_rarities_ids', 'drop_rarities', 'drop_enabled', 'drop_level', 'drop_level_maximum', 'drop_leagues',  'drop_text', 'required_level', 'required_level_final', 
    'inventory_icon', 'alternate_art_inventory_icons', 'flavour_text', 'flavour_text_id',
    'cannot_be_traded_or_modified', 'help_text', 'tags', 'metadata_id', 'influences', 'is_fractured', 'is_synthesised', 'is_veiled', 'is_replica', 'is_corrupted', 'is_relic', 'is_fated', 'purchase_costs', 'sell_prices_override', 'mods',
    'drop_areas', 'drop_areas_html', 'drop_monsters',
    
    'upgraded_from_disabled',
    'suppress_improper_modifiers_category',
    
    'is_prophecy', 'is_blight_item',
    
    'class',
    'is_drop_restricted',
}

-- frame_type is needed in stat_text
cfg.late_args = {'frame_type', 'implicit_stat_text', 'explicit_stat_text', 'stat_text'}

cfg.prophecy_args = {'prophecy_id', 'prediction_text', 'seal_cost', 'prophecy_objective', 'prophecy_reward'}

cfg.tables = {'items'}

cfg.class_groups = {
    flasks = {
        tables = {'flasks'},
        keys = {['LifeFlask'] = true, ['ManaFlask'] = true, ['HybridFlask'] = true, ['UtilityFlask'] = true, ['UtilityFlaskCritical'] = true},
        args = {'quality', 'flask_duration', 'charges_max', 'charges_per_use'},
    },
    weapons = {
        tables = {'weapons'},
        keys = {['Claw'] = true, ['Dagger'] = true, ['Wand'] = true, ['One Hand Sword'] = true, ['Thrusting One Hand Sword'] = true, ['One Hand Axe'] = true, ['One Hand Mace'] = true, ['Bow'] = true, ['Staff'] = true, ['Two Hand Sword'] = true, ['Two Hand Axe'] = true, ['Two Hand Mace'] = true, ['Sceptre'] = true, ['FishingRod'] = true, ['Rune Dagger'] = true, ['Warstaff'] = true},
        args = {'quality', 'required_dexterity', 'required_intelligence', 'required_strength', 'critical_strike_chance', 'attack_speed', 'physical_damage_min', 'physical_damage_max', 'lightning_damage_min', 'lightning_damage_max', 'cold_damage_min', 'cold_damage_max', 'fire_damage_min', 'fire_damage_max', 'chaos_damage_min', 'chaos_damage_max', 'weapon_range'},
        late_args = {'physical_damage_html', 'fire_damage_html', 'cold_damage_html', 'lightning_damage_html', 'chaos_damage_html', 'damage_avg', 'damage_html'},
    },
    gems = {
        tables = {'skill_gems'},
        keys = {['Active Skill Gem'] = true, ['Support Skill Gem'] = true},
        args = {'dexterity_percent', 'strength_percent', 'intelligence_percent', 'primary_attribute', 'gem_tags'},
    },
    armor = {
        tables = {'armours'},
        keys = {['Gloves'] = true, ['Boots'] = true, ['Body Armour'] = true, ['Helmet'] = true, ['Shield'] = true},
        args = {'quality', 'required_dexterity', 'required_intelligence', 'required_strength', 'armour', 'energy_shield', 'evasion', 'movement_speed'},
    },
    stackable = {
        tables = {'stackables'},
        keys = {['Currency'] = true, ['StackableCurrency'] = true, ['HideoutDoodad'] = true, ['Microtransaction'] = true, ['DivinationCard'] = true, ['DelveSocketableCurrency'] = true, ['DelveStackableSocketableCurrency'] = true, ['Incubator'] = true, ['HarvestSeed'] = true, ['HarvestPlantBooster'] = true},
        args = {'stack_size', 'stack_size_currency_tab', 'description', 'cosmetic_type'},
    },
    heist_equipment = {
        tables = {'heist_equipment'},
        keys = {['HeistEquipmentWeapon'] = true, ['HeistEquipmentTool'] = true, ['HeistEquipmentUtility'] = true, ['HeistEquipmentReward'] = true},
        args = {'heist_required_job_id', 'heist_required_job_level', 'heist_data'},
    },
    jewellery = {
        keys = {['Amulet'] = true, ['Ring'] = true, ['Belt'] = true},
    },
}

-- Parameters for specific item classes
cfg.class_specifics = {
    ['Amulet'] = {
        tables = {'amulets'},
        args = {'is_talisman', 'talisman_tier'},
    },
    ['LifeFlask'] = {
        args = {'flask_life'},
    },
    ['ManaFlask'] = {
        args = {'flask_mana'},
    },
    ['HybridFlask'] = {
        args = {'flask_life', 'flask_mana'},
    },
    ['UtilityFlask'] = {
        tables = {'item_buffs'},
        args = {'buff_id', 'buff_values', 'buff_stat_text', 'buff_icon'},
    },
    ['UtilityFlaskCritical'] = {
        tables = {'item_buffs'},
        args = {'buff_id', 'buff_values', 'buff_stat_text', 'buff_icon'},
    },
    ['Active Skill Gem'] = {
        defaults = {
            help_text = cfg.i18n.help_text_defaults.active_gem,
            size_x = 1,
            size_y = 1,
        },
        frame_type = 'gem',
    },
    ['Support Skill Gem'] = {
        args = {'support_gem_letter', 'support_gem_letter_html'},
        defaults = {
            help_text = cfg.i18n.help_text_defaults.support_gem,
            size_x = 1,
            size_y = 1,
        },
        frame_type = 'gem',
    },
    ['Shield'] = {
        tables = {'shields'},
        args = {'block'},
    },
    ['Map'] = {
        tables = {'maps', 'atlas_maps'},
        args = {
            'quality', 
            
            'map_tier', 
            'map_guild_character', 
            'map_area_id', 
            'map_area_level', 
            'unique_map_area_id', 
            'unique_map_area_level', 
            'unique_map_guild_character', 
            'map_series', 
            
            'atlas_x', 
            'atlas_y',
            'atlas_region_id',
            'atlas_x0',
            'atlas_x1', 
            'atlas_x2', 
            'atlas_x3', 
            'atlas_x4', 
            'atlas_y0',
            'atlas_y1', 
            'atlas_y2', 
            'atlas_y3', 
            'atlas_y4', 
            'atlas_map_tier0',
            'atlas_map_tier1',
            'atlas_map_tier2',
            'atlas_map_tier3',
            'atlas_map_tier4',
            'atlas_connections', -- pseudo to fill connections table
        },
        skip_stat_lines = cfg.i18n.stat_skip_patterns.maps,
    },
    ['Currency'] = {
        frame_type = 'currency',
    },
    ['StackableCurrency'] = {
        tables = {'essences', 'prophecies', 'blight_items'},
        args = {'is_essence', 'essence_level_restriction', 'essence_level', 'essence_type', 'essence_category', 'blight_item_tier'},
        frame_type = 'currency',
    },
    ['Microtransaction'] = {
        frame_type = 'currency',
    },
    ['HideoutDoodad'] = {
        tables = {'hideout_doodads'},
        args = {'is_master_doodad', 'master', 'master_level_requirement', 'master_favour_cost', 'variation_count'},
        frame_type = 'currency',
    },
    ['Jewel'] = {
        tables = {'jewels'},
        late_args = {'item_limit', 'jewel_radius_html'},
        defaults = {
            help_text = cfg.i18n.help_text_defaults.jewel,
        },
        skip_stat_lines = cfg.i18n.stat_skip_patterns.jewels,
    },
    ['AbyssJewel'] = {
        tables = {'jewels'},
        late_args = {'item_limit', 'jewel_radius_html'},
        skip_stat_lines = cfg.i18n.stat_skip_patterns.jewels,
    },
    ['QuestItem'] = {
        args = {'description'},
        frame_type = 'quest',
    },
    ['DivinationCard'] = {
        tables = {'divination_cards'},
        args = {'card_art',},
        frame_type = 'divicard',
    },
    ['LabyrinthItem'] = {
        frame_type = 'currency',
    },
    ['LabyrinthTrinket'] = {
        tables = {'item_buffs'},
        args = {'description', 'buff_icon'},
        frame_type = 'currency',
    },
    ['PantheonSoul'] = {
        defaults = {
            cannot_be_traded_or_modified = true,
        },
    },
    ['IncursionItem'] = {
        frame_type = 'currency',
    },
    ['Incubator'] = {
        tables = {'incubators'},
        args = {'incubator_effect'},
        frame_type = 'currency',
    },
    ['HarvestSeed'] = {
        tables = {'harvest_seeds'},
        args = {'seed_effect', 'seed_type_id', 'seed_effect', 'seed_type', 'seed_type_html', 'seed_tier', 'seed_growth_cycles', 'seed_required_nearby_seed_tier', 'seed_required_nearby_seed_amount', 'seed_consumed_wild_lifeforce_percentage', 'seed_consumed_vivid_lifeforce_percentage', 'seed_consumed_primal_lifeforce_percentage', 'seed_granted_craft_option_ids'},
        frame_type = 'currency',
    },
    ['HarvestPlantBooster'] = {
        tables = {'harvest_plant_boosters'},
        args = {'plant_booster_radius', 'plant_booster_lifeforce', 'plant_booster_additional_crafting_options', 'plant_booster_extra_chances'},
        frame_type = 'currency',
    },
}

-- Prophecy stuff
cfg.prophecy_base_item = 'Пророчество'
cfg.prophecy_base_item_page = 'Пророчество'

return cfg