raethkcj / RatingBuster

An item comparison tool for WoW Classic.
GNU General Public License v2.0
58 stars 14 forks source link

ruRU support #9

Closed YujiTFD closed 2 years ago

YujiTFD commented 3 years ago

Hi.

No unit conversion for ruRU TBC Classic. Would you kindly look into it? Thank you in advance. WowClassic_2021 05 30-14 27 20

raethkcj commented 3 years ago

Hi, I added the RatingBuster ruRU file, which should translate the menu for you, but in order to get full tooltip support, we need a ruRU translation for StatLogic as well. I'll try to highlight which patterns need to be translated, but it's not a small project:

https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L50-L59 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L73 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L137-L170 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L188 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L197-L201 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L208-L209 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L215-L216 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L226 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L230-L237 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L243-L470 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L489-L543 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L552-L554 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L558-L560 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L562-L564 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L589-L593 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L598-L613 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L635-L637 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L651-L656 https://github.com/raethkcj/RatingBuster/blob/29b53ef345297a9a71ec8daad492ad0406a79cd3/libs/StatLogic-1.0/ruRU.lua#L686-L690

RENgOLD commented 3 years ago

Issue in ru locale: wrong spell hit detect. Spell hit detects now as melee hit. Need to add {pattern = "рейтинга меткости заклинаний", id = CR_HIT_SPELL}, to \locales\ruRU.lua file (~713 line)

YujiTFD commented 3 years ago

Hello, Thank you for your prompt response, but I meant not actually a translation, but a stats breakdown: as you can see at the screenshot, there are settings for Strength translation into AP and BR, but no actual translation at the item tooltip. WowClassic_2021 05 31-21 11 27

raethkcj commented 3 years ago

Issue in ru locale: wrong spell hit detect. Spell hit detects now as melee hit. Need to add {pattern = "рейтинга меткости заклинаний", id = CR_HIT_SPELL}, to \locales\ruRU.lua file (~713 line)

Added, will be in next release

raethkcj commented 3 years ago

Hello, Thank you for your prompt response, but I meant not actually a translation, but a stats breakdown: as you can see at the screenshot, there are settings for Strength translation into AP and BR, but no actual translation at the item tooltip. WowClassic_2021 05 31-21 11 27

Currently the string I have for Strength is Сила, in your image it looks like К Сила. It looks like this К is before every stat, is that correct for all base stats in Russian? And is it uppercase or lowercase (К or к)?

RENgOLD commented 3 years ago

Hello, Thank you for your prompt response, but I meant not actually a translation, but a stats breakdown: as you can see at the screenshot, there are settings for Strength translation into AP and BR, but no actual translation at the item tooltip. WowClassic_2021 05 31-21 11 27

Currently the string I have for Strength is Сила, in your image it looks like К Сила. It looks like this К is before every stat, is that correct for all base stats in Russian? And is it uppercase or lowercase (К or к)?

"к" (lowercase) means "adds to" here. Also despite "Strength" is "Сила", it is not "к сила", but it is "к силе" in stats, because of wierd russian case system. :) Other stats stings: "+X к ловкости" (Agility) "+X к интеллекту" (Intellect) "+X к духу" (Spirit) "+X к выносливости" (Stamina) "+X к силе" (Strength) You also can check it if you change language at wowhead page (top right corner). For all languages.

raethkcj commented 3 years ago

Alright, I've gone ahead and added the base stat patterns to the localization file and released it. However, as I said in my earlier comment (https://github.com/raethkcj/RatingBuster/issues/9#issuecomment-851055849), we need translations of many, many patterns for everything to work correctly.

I wish there was a better way to do this, and maybe there is, but I'm just porting the version of this addon that existed in 2008 at the end of TBC. And this version at least relies on these hardcoded translations.

YujiTFD commented 3 years ago

Here is preliminary update till string #188. ruRU.zip I struggle to understand regexp meaning sometimes, like when does it happen and what does it trigger. Plus, attempts to squeeze russian wording into english regexps are driving me nuts despite me being native Russian speaker. I'll continue translation, just need to dive deeper into LUA, which I am very rusty with.

raethkcj commented 3 years ago

need add {pattern = "критический удар %(заклинания%)", id = CR_CRIT_SPELL}, {pattern = "меткость %(заклинания%)", id = CR_HIT_SPELL},

Done, thank you!

raethkcj commented 3 years ago

Here is preliminary update till string #188. ruRU.zip I struggle to understand regexp meaning sometimes, like when does it happen and what does it trigger. Plus, attempts to squeeze russian wording into english regexps are driving me nuts despite me being native Russian speaker. I'll continue translation, just need to dive deeper into LUA, which I am very rusty with.

Thank you so much, I added these translations!

thehallowedfire commented 2 years ago

Could you please give current strokes that need to be translated?

raethkcj commented 2 years ago

The most important strings for functionality are the ones in StatIDLookup:

https://github.com/raethkcj/RatingBuster/blob/53c298584c380c7e7475c9f6123958991743e0e7/libs/StatLogic/locales/ruRU.lua#L243-L439

Note that these don't necessarily have a 1-to-1 correspondence with the English strings, and some of them were only used in TBC but are not present in Wrath. So it's okay to start with only the most common format that each stat comes in.

To confirm exactly what value will be looked up in this table, you can type /sldebug in game, and then mouseover an item: image

In this case, the second bit I've underlined is what should be localized. ["повышает рейтинг критического удара"] = {"CRIT_RATING",}, should be added to StatIDLookup, in place of the English CRIT_RATING patterns:

https://github.com/raethkcj/RatingBuster/blob/53c298584c380c7e7475c9f6123958991743e0e7/libs/StatLogic/locales/ruRU.lua#L414-L416

Ultimately, all of the English patterns here should be removed; they're mostly there as an example that multiple patterns might exist for the same stat, since Blizzard is not always consistent. Some of the more unique ones have example items at the end, for example Cloak of Darkness is one of the only items in the game that specifically increases melee crit rating, so it has a unique pattern.

thehallowedfire commented 2 years ago

Ok. I tried and fixed most of errors, but my fix code doesn't look beautiful. I'm sorry ;)

ruRU code in StatLogic ```Lua local L = LibStub("AceLocale-3.0"):NewLocale("StatLogic", "ruRU") if not L then return end L["tonumber"] = tonumber --[[ -- Item Stat Scanning Procedure -- Trim spaces using strtrim(text) -- Strip color codes -- 1. Fast Exclude - Exclude obvious lines that do not need to be checked -- Exclude a string by matching the whole string, these strings are indexed in L.Exclude. -- Exclude a string by looking at the first X chars, these strings are indexed in L.Exclude. -- Exclude lines starting with '"'. (Flavor text) -- Exclude lines that are not white and green and normal (normal for Frozen Wrath bonus) -- 2. Whole Text Lookup - Mainly used for enchants or stuff without numbers -- Whole strings are indexed in L.WholeTextLookup -- 3. Single Plus Stat Check - "+10 Spirit" -- String is matched with pattern L.SinglePlusStatCheck, 2 captures are returned. -- If a match is found, the non-number capture is looked up in L.StatIDLookup. -- 4. Single Equip Stat Check - "Equip: Increases attack power by 81." -- String is matched with pattern L.SingleEquipStatCheck, 2 captures are returned. -- If a match is found, the non-number capture is looked up in L.StatIDLookup. -- 5. Pre Scan - Short list of patterns that will be checked before going into Deep Scan. -- 6. Deep Scan - When all the above checks fail, we will use the Deep Scan, this is slow but only about 10% of the lines need it. -- Strip leading "Equip: ", "Socket Bonus: ". -- Strip trailing ".". -- Separate the string using L.DeepScanSeparators. -- Check if the separated strings are found in L.WholeTextLookup. -- Try to match each separated string to patterns in L.DeepScanPatterns in order, patterns in L.DeepScanPatterns should have less inclusive patterns listed first and more inclusive patterns listed last. -- If no match then separae the string using L.DeepScanWordSeparators, then check again. --]] ------------------ -- Fast Exclude -- ------------------ -- By looking at the first ExcludeLen letters of a line we can exclude a lot of lines L["ExcludeLen"] = 5 -- using string.utf8len L["Exclude"] = { [""] = true, [" \n"] = true, [ITEM_BIND_ON_EQUIP] = true, -- ITEM_BIND_ON_EQUIP = "Binds when equipped"; -- Item will be bound when equipped [ITEM_BIND_ON_PICKUP] = true, -- ITEM_BIND_ON_PICKUP = "Binds when picked up"; -- Item wil be bound when picked up [ITEM_BIND_ON_USE] = true, -- ITEM_BIND_ON_USE = "Binds when used"; -- Item will be bound when used [ITEM_BIND_QUEST] = true, -- ITEM_BIND_QUEST = "Quest Item"; -- Item is a quest item (same logic as ON_PICKUP) [ITEM_SOULBOUND] = true, -- ITEM_SOULBOUND = "Soulbound"; -- Item is Soulbound [ITEM_STARTS_QUEST] = true, -- ITEM_STARTS_QUEST = "This Item Begins a Quest"; -- Item is a quest giver [ITEM_CANT_BE_DESTROYED] = true, -- ITEM_CANT_BE_DESTROYED = "That item cannot be destroyed."; -- Attempted to destroy a NO_DESTROY item [ITEM_CONJURED] = true, -- ITEM_CONJURED = "Conjured Item"; -- Item expires [ITEM_DISENCHANT_NOT_DISENCHANTABLE] = true, -- ITEM_DISENCHANT_NOT_DISENCHANTABLE = "Cannot be disenchanted"; -- Items which cannot be disenchanted ever ["Disen"] = true, -- ITEM_DISENCHANT_ANY_SKILL = "Disenchantable"; -- Items that can be disenchanted at any skill level -- ITEM_DISENCHANT_MIN_SKILL = "Disenchanting requires %s (%d)"; -- Minimum enchanting skill needed to disenchant ["Durat"] = true, -- ITEM_DURATION_DAYS = "Длительность, дней: %d"; ["<Изго"] = true, -- ITEM_CREATED_BY = "|cff00ff00<Создатель: %s>|r"; -- %s is the creator of the item ["Восст"] = true, -- ITEM_COOLDOWN_TIME_DAYS = "Откат, дней: %d day"; ["Уника"] = true, -- Unique (20) -- ITEM_UNIQUE = "Уникальная"; -- Item is unique -- ITEM_UNIQUE_MULTIPLE = "Уникальная (%d)"; -- Item is unique ["Требу"] = true, -- Requires Level xx -- ITEM_MIN_LEVEL = "Требуется уровень %d"; -- Required level to use the item ["\nТре"] = true, -- Requires Level xx -- ITEM_MIN_SKILL = "Требуется %s (%d)"; -- Required skill rank to use the item ["Класс"] = true, -- Classes: xx -- ITEM_CLASSES_ALLOWED = "Класс: %s"; -- Lists the classes allowed to use this item ["Расы:"] = true, -- Races: xx (vendor mounts) -- ITEM_RACES_ALLOWED = "Раса: %s"; -- Lists the races allowed to use this item ["Испол"] = true, -- Use: -- ITEM_SPELL_TRIGGER_ONUSE = "Использование:"; ["Chanc"] = true, -- Chance On Hit: -- ITEM_SPELL_TRIGGER_ONPROC = "Шанс при ударе:"; -- Set Bonuses -- ITEM_SET_BONUS = "Set: %s"; -- ITEM_SET_BONUS_GRAY = "(%d) Set: %s"; -- ITEM_SET_NAME = "%s (%d/%d)"; -- Set name (2/5) ["Компл"] = true, ["(2) S"] = true, ["(3) S"] = true, ["(4) S"] = true, ["(5) S"] = true, ["(6) S"] = true, ["(7) S"] = true, ["(8) S"] = true, -- Equip type [GetItemClassInfo(Enum.ItemClass.Projectile)] = true, -- Ice Threaded Arrow ID:19316 [INVTYPE_AMMO] = true, [INVTYPE_HEAD] = true, [INVTYPE_NECK] = true, [INVTYPE_SHOULDER] = true, [INVTYPE_BODY] = true, [INVTYPE_CHEST] = true, [INVTYPE_ROBE] = true, [INVTYPE_WAIST] = true, [INVTYPE_LEGS] = true, [INVTYPE_FEET] = true, [INVTYPE_WRIST] = true, [INVTYPE_HAND] = true, [INVTYPE_FINGER] = true, [INVTYPE_TRINKET] = true, [INVTYPE_CLOAK] = true, [INVTYPE_WEAPON] = true, [INVTYPE_SHIELD] = true, [INVTYPE_2HWEAPON] = true, [INVTYPE_WEAPONMAINHAND] = true, [INVTYPE_WEAPONOFFHAND] = true, [INVTYPE_HOLDABLE] = true, [INVTYPE_RANGED] = true, [GetItemSubClassInfo(Enum.ItemClass.Weapon, Enum.ItemWeaponSubclass.Thrown)] = true, [INVTYPE_RELIC] = true, [INVTYPE_TABARD] = true, [INVTYPE_BAG] = true, } --[[DEBUG stuff, no need to translate textTable = { "Spell Damage +6 and Spell Hit Rating +5", "+3 Stamina, +4 Critical Strike Rating", "+26 Healing Spells & 2% Reduced Threat", "+3 Stamina/+4 Critical Strike Rating", "Socket Bonus: 2 mana per 5 sec.", "Equip: Increases damage and healing done by magical spells and effects by up to 150.", "Equip: Increases the spell critical strike rating of all party members within 30 yards by 28.", "Equip: Increases damage and healing done by magical spells and effects of all party members within 30 yards by up to 33.", "Equip: Increases healing done by magical spells and effects of all party members within 30 yards by up to 62.", "Equip: Increases your spell damage by up to 120 and your healing by up to 300.", "Equip: Restores 11 mana per 5 seconds to all party members within 30 yards.", "Equip: Increases healing done by spells and effects by up to 300.", "Equip: Increases attack power by 420 in Cat, Bear, Dire Bear, and Moonkin forms only.", "+10 Defense Rating/+10 Stamina/+15 Block Value", -- ZG Enchant "+26 Attack Power and +14 Critical Strike Rating", -- Swift Windfire Diamond ID:28556 "+26 Healing Spells & 2% Reduced Threat", -- Bracing Earthstorm Diamond ID:25897 "+6 Spell Damage, +5 Spell Crit Rating", -- Potent Ornate Topaz ID: 28123 ---- "Critical Rating +6 and Dodge Rating +5", -- Assassin's Fire Opal ID:30565 "Healing +11 and 2 mana per 5 sec.", -- Royal Tanzanite ID: 30603 } --]] ----------------------- -- Whole Text Lookup -- ----------------------- -- Mainly used for enchants that doesn't have numbers in the text -- http://wow.allakhazam.com/db/enchant.html?slot=0&locale=enUS L["WholeTextLookup"] = { [EMPTY_SOCKET_RED] = {["EMPTY_SOCKET_RED"] = 1}, -- EMPTY_SOCKET_RED = "Red Socket"; [EMPTY_SOCKET_YELLOW] = {["EMPTY_SOCKET_YELLOW"] = 1}, -- EMPTY_SOCKET_YELLOW = "Yellow Socket"; [EMPTY_SOCKET_BLUE] = {["EMPTY_SOCKET_BLUE"] = 1}, -- EMPTY_SOCKET_BLUE = "Blue Socket"; [EMPTY_SOCKET_META] = {["EMPTY_SOCKET_META"] = 1}, -- EMPTY_SOCKET_META = "Meta Socket"; ["Слабое волшебное масло"] = {["SPELL_DMG"] = 8, ["HEAL"] = 8}, -- ID: 20744 ["Простое волшебное масло"] = {["SPELL_DMG"] = 16, ["HEAL"] = 16}, -- ID: 20746 ["Волшебное масло"] = {["SPELL_DMG"] = 24, ["HEAL"] = 24}, -- ID: 20750 ["Блестящее волшебное масло"] = {["SPELL_DMG"] = 36, ["HEAL"] = 36, ["SPELL_CRIT_RATING"] = 14}, -- ID: 20749 ["Превосходное волшебное масло"] = {["SPELL_DMG"] = 42, ["HEAL"] = 42}, -- ID: 22522 ["Благословленное волшебное масло"] = {["SPELL_DMG_UNDEAD"] = 60}, -- ID: 23123 ["Слабое масло маны"] = {["MANA_REG"] = 4}, -- ID: 20745 ["Простое масло маны"] = {["MANA_REG"] = 8}, -- ID: 20747 ["Блестящее масло маны"] = {["MANA_REG"] = 12, ["HEAL"] = 25}, -- ID: 20748 ["Превосходное масло маны"] = {["MANA_REG"] = 14}, -- ID: 22521 ["Этерниевая леска"] = {["FISHING"] = 5}, -- ["Жестокость"] = {["AP"] = 70}, -- ["Живучесть I"] = {["MANA_REG"] = 4, ["HEALTH_REG"] = 4}, -- Enchant Boots - Vitality http://wow.allakhazam.com/db/spell.html?wspell=27948 ["Ледяная душа"] = {["SHADOW_SPELL_DMG"] = 54, ["FROST_SPELL_DMG"] = 54}, -- ["Солнечный огонь"] = {["ARCANE_SPELL_DMG"] = 50, ["FIRE_SPELL_DMG"] = 50}, -- ["Мифриловые шпоры"] = {["MOUNT_SPEED"] = 4}, -- Mithril Spurs ["Небольшое ускорение верховой езды"] = {["MOUNT_SPEED"] = 2}, -- Enchant Gloves - Riding Skill ["Надето: небольшое ускорение бега."] = {["RUN_SPEED"] = 8}, -- [Highlander's Plate Greaves] ID: 20048 ["Небольшое ускорениеускорение бега"] = {["RUN_SPEED"] = 8}, -- ["Небольшое увеличение скорости"] = {["RUN_SPEED"] = 8}, -- Enchant Boots - Minor Speed "Minor Speed Increase" http://wow.allakhazam.com/db/spell.html?wspell=13890 ["Небольшое увеличение скорости и +6 к ловкости"] = {["RUN_SPEED"] = 8, ["AGI"] = 6}, -- Enchant Boots - Cat's Swiftness "Minor Speed and +6 Agility" http://wow.allakhazam.com/db/spell.html?wspell=34007 ["Небольшое увеличение скорости и +9 к выносливости"] = {["RUN_SPEED"] = 8, ["STA"] = 9}, -- Enchant Boots - Boar's Speed "Minor Speed and +9 Stamina" ["Верный шаг"] = {["MELEE_HIT_RATING"] = 10}, -- Enchant Boots - Surefooted "Surefooted" http://wow.allakhazam.com/db/spell.html?wspell=27954 ["Скрытность"] = {["THREAT_MOD"] = -2}, -- Enchant Cloak - Subtlety ["На 2% уменьшена угроза"] = {["THREAT_MOD"] = -2}, -- StatLogic:GetSum("item:23344:2832") ["Надето: Позволяет дышать под водой."] = false, -- [Band of Icy Depths] ID: 21526 ["Позволяет дышать под водой"] = false, -- -- ["Equip: Immune to Disarm."] = false, -- [Stronghold Gauntlets] ID: 12639 -- Fixed for TBC Classic 2.5.1: no longer immune. ["Надето: Сокращает время разоружения на 50%."] = false, -- [Stronghold Gauntlets] ID: 12639 ["Сокращает время разоружения на 50%"] = false, -- ["Рыцарь"] = false, -- Enchant Crusader ["Вампиризм"] = false, -- Enchant Crusader } ---------------------------- -- Single Plus Stat Check -- ---------------------------- -- depending on locale, it may be -- +19 Stamina = "^%+(%d+) (.-)%.?$" -- Stamina +19 = "^(.-) %+(%d+)%.?$" -- +19 耐力 = "^%+(%d+) (.-)%.?$" -- Some have a "." at the end of string like: -- Enchant Chest - Restore Mana Prime "+6 mana every 5 sec. " L["SinglePlusStatCheck"] = "^([%+%-]%d+) (.-)%.?$" ----------------------------- -- Single Equip Stat Check -- ----------------------------- -- stat1, value, stat2 = strfind -- stat = stat1..stat2 -- "^Equip: (.-) by u?p? ?t?o? ?(%d+) ?(.-)%.?$" L["SingleEquipStatCheck"] = "^Надето: (.-) by u?p? ?t?o? ?(%d+) ?(.-)%.?$" ------------- -- PreScan -- ------------- -- Special cases that need to be dealt with before deep scan L["PreScanPatterns"] = { --["^Equip: Increases attack power by (%d+) in Cat"] = "FERAL_AP", --["^Equip: Increases attack power by (%d+) when fighting Undead"] = "AP_UNDEAD", -- Seal of the Dawn ID:13029 ["^(%d+) Block$"] = "BLOCK_VALUE", ["^Броня: (%d+)$"] = "ARMOR", ["Reinforced %(%+(%d+) Armor%)"] = "ARMOR_BONUS", ["Восполнение (%d+) ед. маны за 5 сек%.$"] = "MANA_REG", ["Урон: ^%+?%d+ %- (%d+) .-$"] = "MAX_DAMAGE", -- Need help! In russian it looks like this: "Урон: 123-321" ["^%(([%d%.]+) ед. урона в секунду%)$"] = "DPS", -- Exclude ["^(%d+) Slot"] = false, -- Set Name (0/9) ["^[%a '%-]+%((%d+)/%d+%)$"] = false, -- Set Name (0/9) ["|cff808080"] = false, -- Gray text " |cff808080Requires at least 2 Yellow gems|r\n |cff808080Requires at least 1 Red gem|r" -- Procs --["[Cc]hance"] = false, -- [Mark of Defiance] ID:27924 -- [Staff of the Qiraji Prophets] ID:21128 -- Commented out because it was blocking [Insightful Earthstorm Diamond] ["[Ss]ometimes"] = false, -- [Darkmoon Card: Heroism] ID:19287 ["[Ww]hen struck in combat"] = false, -- [Essence of the Pure Flame] ID: 18815 } -------------- -- DeepScan -- -------------- -- Strip leading "Equip: ", "Socket Bonus: " L["Equip: "] = "Equip: " -- ITEM_SPELL_TRIGGER_ONEQUIP = "Equip:"; L["Socket Bonus: "] = "Socket Bonus: " -- ITEM_SOCKET_BONUS = "Socket Bonus: %s"; -- Tooltip tag for socketed item matched socket bonuses -- Strip trailing "." L["."] = "." L["DeepScanSeparators"] = { "/", -- "+10 Defense Rating/+10 Stamina/+15 Block Value": ZG Enchant " & ", -- "+26 Healing Spells & 2% Reduced Threat": Bracing Earthstorm Diamond ID:25897 ", ", -- "+6 Spell Damage, +5 Spell Crit Rating": Potent Ornate Topaz ID: 28123 "%. ", -- "Equip: Increases attack power by 81 when fighting Undead. It also allows the acquisition of Scourgestones on behalf of the Argent Dawn.": Seal of the Dawn } L["DeepScanWordSeparators"] = { " and ", -- "Critical Rating +6 and Dodge Rating +5": Assassin's Fire Opal ID:30565 } L["DualStatPatterns"] = { -- all lower case ["^%+(%d+) healing and %+(%d+) spell damage$"] = {{"HEAL",}, {"SPELL_DMG",},}, ["^%+(%d+) healing %+(%d+) spell damage$"] = {{"HEAL",}, {"SPELL_DMG",},}, ["^increases healing done by up to (%d+) and damage done by up to (%d+) for all magical spells and effects$"] = {{"HEAL",}, {"SPELL_DMG",},}, } L["DeepScanPatterns"] = { "^(.-) by u?p? ?t?o? ?(%d+) ?(.-)$", -- "xxx by up to 22 xxx" (scan first) "^(.-) ?([%+%-]%d+) ?(.-)$", -- "xxx xxx +22" or "+22 xxx xxx" or "xxx +22 xxx" (scan 2ed) "^(.-) ?([%d%.]+) ?(.-)$", -- 22.22 xxx xxx (scan last) } ----------------------- -- Stat Lookup Table -- ----------------------- L["StatIDLookup"] = { ["Эффективность брони противника против ваших атак снижена на"] = {"IGNORE_ARMOR"}, -- StatLogic:GetSum("item:33733") (used tbc text) ["% Threat"] = {"THREAT_MOD"}, -- StatLogic:GetSum("item:23344:2613") ["Увеличение уровня эффективного действия незаметности"] = {"STEALTH_LEVEL"}, -- [Nightscape Boots] ID: 8197 ["Weapon Damage"] = {"MELEE_DMG"}, -- Enchant ["Increases mount speed%"] = {"MOUNT_SPEED"}, -- [Highlander's Plate Greaves] ID: 20048 ["ко всем характеристикам"] = {"STR", "AGI", "STA", "INT", "SPI",}, ["к силе"] = {"STR",}, ["силу цели"] = {"STR",}, -- (Added new line) ["к ловкости"] = {"AGI",}, ["к выносливости"] = {"STA",}, ["к интеллекту"] = {"INT",}, ["к духу"] = {"SPI",}, ["Сопротивление тайной магии"] = {"ARCANE_RES",}, ["Сопротивление огню"] = {"FIRE_RES",}, ["Сопротивление силам природы"] = {"NATURE_RES",}, ["Сопротивление магии льда"] = {"FROST_RES",}, ["Сопротивление темной магии"] = {"SHADOW_RES",}, ["сопротивления тайной магии"] = {"ARCANE_RES",}, -- Arcane Armor Kit +8 Arcane Resist ["сопротивления огню"] = {"FIRE_RES",}, -- Flame Armor Kit +8 Fire Resist ["сопротивление силам природы"] = {"NATURE_RES",}, -- Frost Armor Kit +8 Frost Resist (wrong comment?) ["сопротивление магии льда"] = {"FROST_RES",}, -- Nature Armor Kit +8 Nature Resist (wrong comment?) ["сопротивления темной магии"] = {"SHADOW_RES",}, -- Shadow Armor Kit +8 Shadow Resist ["Shadow resistance"] = {"SHADOW_RES",}, -- Demons Blood ID: 10779 (this item doesn't have stats in WotLK) ["сопротивление всем видам магии"] = {"ARCANE_RES", "FIRE_RES", "FROST_RES", "NATURE_RES", "SHADOW_RES",}, ["Resist All"] = {"ARCANE_RES", "FIRE_RES", "FROST_RES", "NATURE_RES", "SHADOW_RES",}, -- (what is this?) ["к рыбной ловле"] = {"FISHING",}, -- Fishing enchant ID:846 ["рыбная ловля"] = {"FISHING",}, -- Fishing lure ["Рыбная ловля"] = {"FISHING",}, -- Equip: Increased Fishing +20. (it actually looks like: Увеличение навыка "Рыбная ловля" на +20) ["к горному делу"] = {"MINING",}, -- Mining enchant ID:844 ["к травничеству"] = {"HERBALISM",}, -- Heabalism enchant ID:845 ["к снятию шкур"] = {"SKINNING",}, -- Skinning enchant ID:865 ["Броня"] = {"ARMOR_BONUS",}, ["Защита"] = {"DEFENSE",}, ["Increased Defense"] = {"DEFENSE",}, ["Блок"] = {"BLOCK_VALUE",}, -- +22 Block Value (block value or chance? item example) ["Block Value"] = {"BLOCK_VALUE",}, -- +22 Block Value (block value or chance? item example) ["к показателю блокирования щита"] = {"BLOCK_VALUE",}, -- +10% Shield Block Value [Eternal Earthstorm Diamond] http://www.wowhead.com/?item=35501 ["Increases the block value of your shield"] = {"BLOCK_VALUE",}, -- (what item?) ["Здоровье"] = {"HEALTH",}, ["HP"] = {"HEALTH",}, -- (example please) ["Мана"] = {"MANA",}, ["Сила атаки"] = {"AP",}, ["Увеличивает силу атаки на"] = {"AP",}, ["повышает силу атаки на"] = {"AP",}, -- (Added new line) ["силы атаки нав бою с нежитью"] = {"AP_UNDEAD",}, -- Actually looks like "Увеличение силы атаки на 45 ед. в бою с нежитью" -- [Wristwraps of Undead Slaying] ID:23093 ["Увеличение силы атаки наед. в битве с нежитью"] = {"AP_UNDEAD",}, -- [Seal of the Dawn] ID:13209 ["Увеличение силы атаки наед. в бою с нежитью. Также позволяет собирать камни Плети от имени и по поручению Серебряного Рассвета"] = {"AP_UNDEAD",}, -- [Seal of the Dawn] ID:13209 ["Increases attack powerwhen fighting Demons"] = {"AP_DEMON",}, -- (item example please) ["Увеличение силы атаки наед. в бою с нежитью и демонами"] = {"AP_UNDEAD", "AP_DEMON",}, -- [Mark of the Champion] ID:23206 ["Attack Power in Cat, Bear, and Dire Bear forms only"] = {"FERAL_AP",}, -- (can't find an item with a such text) ["Увеличивает силу атаки нав облике кошки, медведя, лютого медведя и лунного совуха"] = {"FERAL_AP",}, ["Сила атаки дальнего боя"] = {"RANGED_AP",}, ["Увеличивает силу атак дальнего боя"] = {"RANGED_AP",}, -- [High Warlord's Crossbow] ID: 18837 ["Health Regen"] = {"MANA_REG",}, ["Health per"] = {"HEALTH_REG",}, ["health per"] = {"HEALTH_REG",}, -- Frostwolf Insignia Rank 6 ID:17909 ["Health every"] = {"MANA_REG",}, ["health every"] = {"HEALTH_REG",}, -- [Resurgence Rod] ID:17743 ["your normal health regeneration"] = {"HEALTH_REG",}, -- Demons Blood ID: 10779 ["Restoreshealth per 5 sec"] = {"HEALTH_REG",}, -- [Onyxia Blood Talisman] ID: 18406 ["Restoreshealth every 5 sec"] = {"HEALTH_REG",}, -- [Resurgence Rod] ID:17743 ["Mana Regen"] = {"MANA_REG",}, -- Prophetic Aura +4 Mana Regen/+10 Stamina/+24 Healing Spells http://wow.allakhazam.com/db/spell.html?wspell=24167 ["Mana per"] = {"MANA_REG",}, ["mana per"] = {"MANA_REG",}, -- Resurgence Rod ID:17743 Most common ["Mana every"] = {"MANA_REG",}, ["mana every"] = {"MANA_REG",}, ["Mana every 5 seconds"] = {"MANA_REG",}, -- [Royal Nightseye] ID: 24057 ["Mana every 5 Sec"] = {"MANA_REG",}, -- ["mana every 5 sec"] = {"MANA_REG",}, -- Enchant Chest - Restore Mana Prime "+6 mana every 5 sec." http://wow.allakhazam.com/db/spell.html?wspell=33991 ["Mana per 5 Seconds"] = {"MANA_REG",}, -- [Royal Shadow Draenite] ID: 23109 ["Mana Per 5 sec"] = {"MANA_REG",}, -- [Royal Shadow Draenite] ID: 23109 ["Mana per 5 sec"] = {"MANA_REG",}, -- [Cyclone Shoulderpads] ID: 29031 ["mana per 5 sec"] = {"MANA_REG",}, -- [Royal Tanzanite] ID: 30603 ["Restoresmana per 5 sec"] = {"MANA_REG",}, -- [Resurgence Rod] ID:17743 ["восполнениеед. маны за 5 сек."] = {"MANA_REG",}, -- (Added new line) ["Mana restored per 5 seconds"] = {"MANA_REG",}, -- Magister's Armor Kit +3 Mana restored per 5 seconds http://wow.allakhazam.com/db/spell.html?wspell=32399 ["Mana Regenper 5 sec"] = {"MANA_REG",}, -- Enchant Bracer - Mana Regeneration "Mana Regen 4 per 5 sec." http://wow.allakhazam.com/db/spell.html?wspell=23801 ["Mana per 5 Sec"] = {"MANA_REG",}, -- Enchant Bracer - Restore Mana Prime "6 Mana per 5 Sec." http://wow.allakhazam.com/db/spell.html?wspell=27913 ["проникающей способности заклинаний"] = {"SPELLPEN",}, -- Enchant Cloak - Spell Penetration "+20 Spell Penetration" http://wow.allakhazam.com/db/spell.html?wspell=34003 ["увеличивает проникающую способность заклинаний на"] = {"SPELLPEN",}, ["Healing and Spell Damage"] = {"SPELL_DMG", "HEAL",}, -- Arcanum of Focus +8 Healing and Spell Damage http://wow.allakhazam.com/db/spell.html?wspell=22844 ["Damage and Healing Spells"] = {"SPELL_DMG", "HEAL",}, ["Spell Damage and Healing"] = {"SPELL_DMG", "HEAL",}, ["Spell Damage"] = {"SPELL_DMG", "HEAL",}, ["Increases damage and healing done by magical spells and effects"] = {"SPELL_DMG", "HEAL"}, ["Increases damage and healing done by magical spells and effects of all party members within 30 yards"] = {"SPELL_DMG", "HEAL"}, -- Atiesh ["Spell Damage and Healing"] = {"SPELL_DMG", "HEAL",}, --StatLogic:GetSum("item:22630") ["Damage"] = {"SPELL_DMG",}, ["Increases your spell damage"] = {"SPELL_DMG",}, -- Atiesh ID:22630, 22631, 22632, 22589 ["к силе заклинаний"] = {"SPELL_DMG", "HEAL",}, ["Увеличивает силу заклинаний"] = {"SPELL_DMG", "HEAL",}, ["увеличивает силу заклинаний на"] = {"SPELL_DMG", "HEAL",}, ["Holy Damage"] = {"HOLY_SPELL_DMG",}, ["Arcane Damage"] = {"ARCANE_SPELL_DMG",}, ["Fire Damage"] = {"FIRE_SPELL_DMG",}, ["Nature Damage"] = {"NATURE_SPELL_DMG",}, ["Frost Damage"] = {"FROST_SPELL_DMG",}, ["Shadow Damage"] = {"SHADOW_SPELL_DMG",}, ["Holy Spell Damage"] = {"HOLY_SPELL_DMG",}, ["Arcane Spell Damage"] = {"ARCANE_SPELL_DMG",}, ["Fire Spell Damage"] = {"FIRE_SPELL_DMG",}, ["Nature Spell Damage"] = {"NATURE_SPELL_DMG",}, ["Frost Spell Damage"] = {"FROST_SPELL_DMG",}, -- Acrobatic Staff of Frozen Wrath ID:3185:0:0:0:0:0:1957 ["Shadow Spell Damage"] = {"SHADOW_SPELL_DMG",}, ["Increases damage done by Shadow spells and effects"] = {"SHADOW_SPELL_DMG",}, -- Frozen Shadoweave Vest ID:21871 ["Increases damage done by Frost spells and effects"] = {"FROST_SPELL_DMG",}, -- Frozen Shadoweave Vest ID:21871 ["Increases damage done by Holy spells and effects"] = {"HOLY_SPELL_DMG",}, ["Increases damage done by Arcane spells and effects"] = {"ARCANE_SPELL_DMG",}, ["Increases damage done by Fire spells and effects"] = {"FIRE_SPELL_DMG",}, ["Increases damage done by Nature spells and effects"] = {"NATURE_SPELL_DMG",}, ["Increases the damage done by Holy spells and effects"] = {"HOLY_SPELL_DMG",}, -- Drape of the Righteous ID:30642 ["Increases the damage done by Arcane spells and effects"] = {"ARCANE_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Fire spells and effects"] = {"FIRE_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Frost spells and effects"] = {"FROST_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Nature spells and effects"] = {"NATURE_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Shadow spells and effects"] = {"SHADOW_SPELL_DMG",}, -- Added just in case ["Increases damage done to Undead by magical spells and effects"] = {"SPELL_DMG_UNDEAD"}, -- [Robe of Undead Cleansing] ID:23085 ["Increases damage done to Undead by magical spells and effects. It also allows the acquisition of Scourgestones on behalf of the Argent Dawn"] = {"SPELL_DMG_UNDEAD"}, -- [Rune of the Dawn] ID:19812 ["Increases damage done to Undead and Demons by magical spells and effects"] = {"SPELL_DMG_UNDEAD", "SPELL_DMG_DEMON"}, -- [Mark of the Champion] ID:23207 ["Healing Spells"] = {"HEAL",}, -- Enchant Gloves - Major Healing "+35 Healing Spells" http://wow.allakhazam.com/db/spell.html?wspell=33999 ["Increases Healing"] = {"HEAL",}, ["Healing"] = {"HEAL",}, -- StatLogic:GetSum("item:23344:206") ["healing Spells"] = {"HEAL",}, ["Damage Spells"] = {"SPELL_DMG",}, -- 2.3.0 StatLogic:GetSum("item:23344:2343") ["Healing Spells"] = {"HEAL",}, -- [Royal Nightseye] ID: 24057 ["Increases healing done"] = {"HEAL",}, -- 2.3.0 ["damage donefor all magical spells"] = {"SPELL_DMG",}, -- 2.3.0 ["Increases healing done by spells and effects"] = {"HEAL",}, ["Increases healing done by magical spells and effects of all party members within 30 yards"] = {"HEAL",}, -- Atiesh ["your healing"] = {"HEAL",}, -- Atiesh ["damage per second"] = {"DPS",}, ["Addsdamage per second"] = {"DPS",}, -- [Thorium Shells] ID: 15977 ["Defense Rating"] = {"DEFENSE_RATING",}, ["Increases defense rating"] = {"DEFENSE_RATING",}, ["Dodge Rating"] = {"DODGE_RATING",}, ["Increases your dodge rating"] = {"DODGE_RATING",}, ["Parry Rating"] = {"PARRY_RATING",}, ["Increases your parry rating"] = {"PARRY_RATING",}, ["Shield Block Rating"] = {"BLOCK_RATING",}, -- Enchant Shield - Lesser Block +10 Shield Block Rating http://wow.allakhazam.com/db/spell.html?wspell=13689 ["Block Rating"] = {"BLOCK_RATING",}, ["Increases your block rating"] = {"BLOCK_RATING",}, ["Increases your shield block rating"] = {"BLOCK_RATING",}, ["Improves your chance to hit%"] = {"MELEE_HIT"}, ["Hit Rating"] = {"MELEE_HIT_RATING",}, ["Повышает меткость"] = {"MELEE_HIT_RATING",}, -- ITEM_MOD_HIT_RATING ["Меткость в ближнем бою"] = {"MELEE_HIT_RATING",}, -- ITEM_MOD_HIT_MELEE_RATING ["Повышает рейтинг меткости"] = {"MELEE_HIT_RATING",}, ["к рейтингу меткости"] = {"SPELL_HIT_RATING",}, -- Presence of Sight +18 Healing and Spell Damage/+8 Spell Hit http://wow.allakhazam.com/db/spell.html?wspell=24164 ["Improves your chance to hit with spells%"] = {"SPELL_HIT"}, ["Spell Hit Rating"] = {"SPELL_HIT_RATING",}, ["повышает рейтинг меткости на"] = {"SPELL_HIT_RATING",}, -- ITEM_MOD_HIT_SPELL_RATING ["Increases your spell hit rating"] = {"SPELL_HIT_RATING",}, ["Ranged Hit Rating"] = {"RANGED_HIT_RATING",}, ["Improves ranged hit rating"] = {"RANGED_HIT_RATING",}, -- ITEM_MOD_HIT_RANGED_RATING ["Increases your ranged hit rating"] = {"RANGED_HIT_RATING",}, ["Improves your chance to get a critical strike by%"] = {"MELEE_CRIT", "RANGED_CRIT"}, ["Crit Rating"] = {"CRIT_RATING",}, ["Critical Rating"] = {"CRIT_RATING",}, ["Рейтинг критического удара"] = {"CRIT_RATING",}, ["Increases your critical hit rating"] = {"CRIT_RATING",}, ["Increases your critical strike rating"] = {"CRIT_RATING",}, ["повышает рейтинг критического удара на"] = {"CRIT_RATING",}, ["Improves melee critical strike rating"] = {"MELEE_CRIT_RATING",}, -- [Cloak of Darkness] ID:33122 ["Improves your chance to get a critical strike with spells%"] = {"SPELL_CRIT"}, ["Spell Critical Strike Rating"] = {"SPELL_CRIT_RATING",}, ["Spell Critical strike rating"] = {"SPELL_CRIT_RATING",}, ["Spell Critical Rating"] = {"SPELL_CRIT_RATING",}, ["Spell Crit Rating"] = {"SPELL_CRIT_RATING",}, ["к рейтингу критического удара"] = {"SPELL_CRIT_RATING",}, -- TBC Chaotic Skyfire Diamond ["Increases your spell critical strike rating"] = {"SPELL_CRIT_RATING",}, ["Increases the spell critical strike rating of all party members within 30 yards"] = {"SPELL_CRIT_RATING",}, ["Improves spell critical strike rating"] = {"SPELL_CRIT_RATING",}, ["Increases your ranged critical strike rating"] = {"RANGED_CRIT_RATING",}, -- Fletcher's Gloves ID:7348 ["Устойчивость"] = {"RESILIENCE_RATING",}, ["Рейтинг устойчивости"] = {"RESILIENCE_RATING",}, -- Enchant Chest - Major Resilience "+15 Resilience Rating" http://wow.allakhazam.com/db/spell.html?wspell=33992 ["повышает рейтинг устойчивости на"] = {"RESILIENCE_RATING",}, ["Haste Rating"] = {"HASTE_RATING"}, ["рейтингу скорости"] = {"HASTE_RATING"}, -- (added this line) ["Ranged Haste Rating"] = {"HASTE_RATING"}, ["повышает рейтинг скорости боя на"] = {"HASTE_RATING"}, ["Spell Haste Rating"] = {"SPELL_HASTE_RATING"}, ["Improves melee haste rating"] = {"MELEE_HASTE_RATING"}, ["Improves spell haste rating"] = {"SPELL_HASTE_RATING"}, ["Improves ranged haste rating"] = {"RANGED_HASTE_RATING"}, ["Increases dagger skill rating"] = {"DAGGER_WEAPON_RATING"}, ["Increases sword skill rating"] = {"SWORD_WEAPON_RATING"}, -- [Warblade of the Hakkari] ID:19865 ["Increases Two-Handed Swords skill rating"] = {"2H_SWORD_WEAPON_RATING"}, ["Increases axe skill rating"] = {"AXE_WEAPON_RATING"}, ["Two-Handed Axe Skill Rating"] = {"2H_AXE_WEAPON_RATING"}, -- [Ethereum Nexus-Reaver] ID:30722 ["Increases two-handed axes skill rating"] = {"2H_AXE_WEAPON_RATING"}, ["Increases mace skill rating"] = {"MACE_WEAPON_RATING"}, ["Increases two-handed maces skill rating"] = {"2H_MACE_WEAPON_RATING"}, ["Increases gun skill rating"] = {"GUN_WEAPON_RATING"}, ["Increases Crossbow skill rating"] = {"CROSSBOW_WEAPON_RATING"}, ["Increases Bow skill rating"] = {"BOW_WEAPON_RATING"}, ["Increases feral combat skill rating"] = {"FERAL_WEAPON_RATING"}, ["Increases fist weapons skill rating"] = {"FIST_WEAPON_RATING"}, -- Demonblood Eviscerator ["Increases unarmed skill rating"] = {"FIST_WEAPON_RATING"}, -- Demonblood Eviscerator ID:27533 ["Increases staff skill rating"] = {"STAFF_WEAPON_RATING"}, -- Leggings of the Fang ID:10410 ["рейтинг мастерства"] = {"EXPERTISE_RATING"}, ["к рейтингу мастерства"] = {"EXPERTISE_RATING"}, ["Повышает рейтинг пробивания брони на"] = {"ARMOR_PENETRATION_RATING"}, -- Exclude ["sec"] = false, ["to"] = false, ["Slot Bag"] = false, ["Slot Quiver"] = false, ["Slot Ammo Pouch"] = false, ["Increases ranged attack speed"] = false, -- AV quiver } local D = LibStub("AceLocale-3.0"):NewLocale("StatLogicD", "enUS", true) ---------------- -- Stat Names -- ---------------- -- Please localize these strings too, global strings were used in the enUS locale just to have minimum -- localization effect when a locale is not available for that language, you don't have to use global -- strings in your localization. D["StatIDToName"] = { --[StatID] = {FullName, ShortName}, --------------------------------------------------------------------------- -- Tier1 Stats - Stats parsed directly off items ["EMPTY_SOCKET_RED"] = {EMPTY_SOCKET_RED, EMPTY_SOCKET_RED}, -- EMPTY_SOCKET_RED = "Red Socket"; ["EMPTY_SOCKET_YELLOW"] = {EMPTY_SOCKET_YELLOW, EMPTY_SOCKET_YELLOW}, -- EMPTY_SOCKET_YELLOW = "Yellow Socket"; ["EMPTY_SOCKET_BLUE"] = {EMPTY_SOCKET_BLUE, EMPTY_SOCKET_BLUE}, -- EMPTY_SOCKET_BLUE = "Blue Socket"; ["EMPTY_SOCKET_META"] = {EMPTY_SOCKET_META, EMPTY_SOCKET_META}, -- EMPTY_SOCKET_META = "Meta Socket"; ["IGNORE_ARMOR"] = {"Ignore Armor", "Ignore Armor"}, ["THREAT_MOD"] = {"Threat(%)", "Threat(%)"}, ["STEALTH_LEVEL"] = {"Stealth Level", "Stealth"}, ["MELEE_DMG"] = {"Melee Weapon "..DAMAGE, "Wpn Dmg"}, -- DAMAGE = "Damage" ["MOUNT_SPEED"] = {"Mount Speed(%)", "Mount Spd(%)"}, ["RUN_SPEED"] = {"Run Speed(%)", "Run Spd(%)"}, ["STR"] = {SPELL_STAT1_NAME, "Str"}, ["AGI"] = {SPELL_STAT2_NAME, "Agi"}, ["STA"] = {SPELL_STAT3_NAME, "Sta"}, ["INT"] = {SPELL_STAT4_NAME, "Int"}, ["SPI"] = {SPELL_STAT5_NAME, "Spi"}, ["ARMOR"] = {ARMOR, ARMOR}, ["ARMOR_BONUS"] = {ARMOR.." from bonus", ARMOR.."(Bonus)"}, ["FIRE_RES"] = {RESISTANCE2_NAME, "FR"}, ["NATURE_RES"] = {RESISTANCE3_NAME, "NR"}, ["FROST_RES"] = {RESISTANCE4_NAME, "FrR"}, ["SHADOW_RES"] = {RESISTANCE5_NAME, "SR"}, ["ARCANE_RES"] = {RESISTANCE6_NAME, "AR"}, ["FISHING"] = {"Fishing", "Fishing"}, ["MINING"] = {"Mining", "Mining"}, ["HERBALISM"] = {"Herbalism", "Herbalism"}, ["SKINNING"] = {"Skinning", "Skinning"}, ["BLOCK_VALUE"] = {"Block Value", "Block Value"}, ["AP"] = {ATTACK_POWER_TOOLTIP, "AP"}, ["RANGED_AP"] = {RANGED_ATTACK_POWER, "RAP"}, ["FERAL_AP"] = {"Feral "..ATTACK_POWER_TOOLTIP, "Feral AP"}, ["AP_UNDEAD"] = {ATTACK_POWER_TOOLTIP.." (Undead)", "AP(Undead)"}, ["AP_DEMON"] = {ATTACK_POWER_TOOLTIP.." (Demon)", "AP(Demon)"}, ["HEAL"] = {"Healing", "Heal"}, ["SPELL_DMG"] = {PLAYERSTAT_SPELL_COMBAT.." "..DAMAGE, PLAYERSTAT_SPELL_COMBAT.." Dmg"}, ["SPELL_DMG_UNDEAD"] = {PLAYERSTAT_SPELL_COMBAT.." "..DAMAGE.." (Undead)", PLAYERSTAT_SPELL_COMBAT.." Dmg".."(Undead)"}, ["SPELL_DMG_DEMON"] = {PLAYERSTAT_SPELL_COMBAT.." "..DAMAGE.." (Demon)", PLAYERSTAT_SPELL_COMBAT.." Dmg".."(Demon)"}, ["HOLY_SPELL_DMG"] = {SPELL_SCHOOL1_CAP.." "..DAMAGE, SPELL_SCHOOL1_CAP.." Dmg"}, ["FIRE_SPELL_DMG"] = {SPELL_SCHOOL2_CAP.." "..DAMAGE, SPELL_SCHOOL2_CAP.." Dmg"}, ["NATURE_SPELL_DMG"] = {SPELL_SCHOOL3_CAP.." "..DAMAGE, SPELL_SCHOOL3_CAP.." Dmg"}, ["FROST_SPELL_DMG"] = {SPELL_SCHOOL4_CAP.." "..DAMAGE, SPELL_SCHOOL4_CAP.." Dmg"}, ["SHADOW_SPELL_DMG"] = {SPELL_SCHOOL5_CAP.." "..DAMAGE, SPELL_SCHOOL5_CAP.." Dmg"}, ["ARCANE_SPELL_DMG"] = {SPELL_SCHOOL6_CAP.." "..DAMAGE, SPELL_SCHOOL6_CAP.." Dmg"}, ["SPELLPEN"] = {PLAYERSTAT_SPELL_COMBAT.." "..SPELL_PENETRATION, SPELL_PENETRATION}, ["HEALTH"] = {HEALTH, HP}, ["MANA"] = {MANA, MP}, ["HEALTH_REG"] = {HEALTH.." Regen", "HP5"}, ["MANA_REG"] = {MANA.." Regen", "MP5"}, ["MAX_DAMAGE"] = {"Max Damage", "Max Dmg"}, ["DPS"] = {"Damage Per Second", "DPS"}, ["DEFENSE_RATING"] = {COMBAT_RATING_NAME2, COMBAT_RATING_NAME2}, -- COMBAT_RATING_NAME2 = "Defense Rating" ["DODGE_RATING"] = {COMBAT_RATING_NAME3, COMBAT_RATING_NAME3}, -- COMBAT_RATING_NAME3 = "Dodge Rating" ["PARRY_RATING"] = {COMBAT_RATING_NAME4, COMBAT_RATING_NAME4}, -- COMBAT_RATING_NAME4 = "Parry Rating" ["BLOCK_RATING"] = {COMBAT_RATING_NAME5, COMBAT_RATING_NAME5}, -- COMBAT_RATING_NAME5 = "Block Rating" ["MELEE_HIT_RATING"] = {COMBAT_RATING_NAME6, COMBAT_RATING_NAME6}, -- COMBAT_RATING_NAME6 = "Hit Rating" ["RANGED_HIT_RATING"] = {PLAYERSTAT_RANGED_COMBAT.." "..COMBAT_RATING_NAME6, PLAYERSTAT_RANGED_COMBAT.." "..COMBAT_RATING_NAME6}, -- PLAYERSTAT_RANGED_COMBAT = "Ranged" ["SPELL_HIT_RATING"] = {PLAYERSTAT_SPELL_COMBAT.." "..COMBAT_RATING_NAME6, PLAYERSTAT_SPELL_COMBAT.." "..COMBAT_RATING_NAME6}, -- PLAYERSTAT_SPELL_COMBAT = "Spell" ["MELEE_CRIT_RATING"] = {COMBAT_RATING_NAME9, COMBAT_RATING_NAME9}, -- COMBAT_RATING_NAME9 = "Crit Rating" ["RANGED_CRIT_RATING"] = {PLAYERSTAT_RANGED_COMBAT.." "..COMBAT_RATING_NAME9, PLAYERSTAT_RANGED_COMBAT.." "..COMBAT_RATING_NAME9}, ["SPELL_CRIT_RATING"] = {PLAYERSTAT_SPELL_COMBAT.." "..COMBAT_RATING_NAME9, PLAYERSTAT_SPELL_COMBAT.." "..COMBAT_RATING_NAME9}, ["RESILIENCE_RATING"] = {COMBAT_RATING_NAME15, COMBAT_RATING_NAME15}, -- COMBAT_RATING_NAME15 = "Resilience" ["MELEE_HASTE_RATING"] = {"Haste "..RATING, "Haste "..RATING}, -- ["RANGED_HASTE_RATING"] = {PLAYERSTAT_RANGED_COMBAT.." Haste "..RATING, PLAYERSTAT_RANGED_COMBAT.." Haste "..RATING}, ["SPELL_HASTE_RATING"] = {PLAYERSTAT_SPELL_COMBAT.." Haste "..RATING, PLAYERSTAT_SPELL_COMBAT.." Haste "..RATING}, ["DAGGER_WEAPON_RATING"] = {"Dagger "..SKILL.." "..RATING, "Dagger "..RATING}, -- SKILL = "Skill" ["SWORD_WEAPON_RATING"] = {"Sword "..SKILL.." "..RATING, "Sword "..RATING}, ["2H_SWORD_WEAPON_RATING"] = {"Two-Handed Sword "..SKILL.." "..RATING, "2H Sword "..RATING}, ["AXE_WEAPON_RATING"] = {"Axe "..SKILL.." "..RATING, "Axe "..RATING}, ["2H_AXE_WEAPON_RATING"] = {"Two-Handed Axe "..SKILL.." "..RATING, "2H Axe "..RATING}, ["MACE_WEAPON_RATING"] = {"Mace "..SKILL.." "..RATING, "Mace "..RATING}, ["2H_MACE_WEAPON_RATING"] = {"Two-Handed Mace "..SKILL.." "..RATING, "2H Mace "..RATING}, ["GUN_WEAPON_RATING"] = {"Gun "..SKILL.." "..RATING, "Gun "..RATING}, ["CROSSBOW_WEAPON_RATING"] = {"Crossbow "..SKILL.." "..RATING, "Crossbow "..RATING}, ["BOW_WEAPON_RATING"] = {"Bow "..SKILL.." "..RATING, "Bow "..RATING}, ["FERAL_WEAPON_RATING"] = {"Feral "..SKILL.." "..RATING, "Feral "..RATING}, ["FIST_WEAPON_RATING"] = {"Unarmed "..SKILL.." "..RATING, "Unarmed "..RATING}, ["STAFF_WEAPON_RATING"] = {"Staff "..SKILL.." "..RATING, "Staff "..RATING}, -- Leggings of the Fang ID:10410 ["EXPERTISE_RATING"] = {"Expertise".." "..RATING, "Expertise".." "..RATING}, --------------------------------------------------------------------------- -- Tier2 Stats - Stats that only show up when broken down from a Tier1 stat -- Str -> AP, Block Value -- Agi -> AP, Crit, Dodge -- Sta -> Health -- Int -> Mana, Spell Crit -- Spi -> mp5nc, hp5oc -- Ratings -> Effect ["HEALTH_REG_OUT_OF_COMBAT"] = {HEALTH.." Regen (Out of combat)", "HP5(OC)"}, ["MANA_REG_NOT_CASTING"] = {MANA.." Regen (Not casting)", "MP5(NC)"}, ["MELEE_CRIT_DMG_REDUCTION"] = {"Crit Damage Reduction(%)", "Crit Dmg Reduc(%)"}, ["RANGED_CRIT_DMG_REDUCTION"] = {PLAYERSTAT_RANGED_COMBAT.." Crit Damage Reduction(%)", PLAYERSTAT_RANGED_COMBAT.." Crit Dmg Reduc(%)"}, ["SPELL_CRIT_DMG_REDUCTION"] = {PLAYERSTAT_SPELL_COMBAT.." Crit Damage Reduction(%)", PLAYERSTAT_SPELL_COMBAT.." Crit Dmg Reduc(%)"}, ["DEFENSE"] = {DEFENSE, "Def"}, ["DODGE"] = {DODGE.."(%)", DODGE.."(%)"}, ["PARRY"] = {PARRY.."(%)", PARRY.."(%)"}, ["BLOCK"] = {BLOCK.."(%)", BLOCK.."(%)"}, ["AVOIDANCE"] = {"Avoidance(%)", "Avoidance(%)"}, ["MELEE_HIT"] = {"Hit Chance(%)", "Hit(%)"}, ["RANGED_HIT"] = {PLAYERSTAT_RANGED_COMBAT.." Hit Chance(%)", PLAYERSTAT_RANGED_COMBAT.." Hit(%)"}, ["SPELL_HIT"] = {PLAYERSTAT_SPELL_COMBAT.." Hit Chance(%)", PLAYERSTAT_SPELL_COMBAT.." Hit(%)"}, ["MELEE_HIT_AVOID"] = {"Hit Avoidance(%)", "Hit Avd(%)"}, ["MELEE_CRIT"] = {MELEE_CRIT_CHANCE.."(%)", "Crit(%)"}, -- MELEE_CRIT_CHANCE = "Crit Chance" ["RANGED_CRIT"] = {PLAYERSTAT_RANGED_COMBAT.." "..MELEE_CRIT_CHANCE.."(%)", PLAYERSTAT_RANGED_COMBAT.." Crit(%)"}, ["SPELL_CRIT"] = {PLAYERSTAT_SPELL_COMBAT.." "..MELEE_CRIT_CHANCE.."(%)", PLAYERSTAT_SPELL_COMBAT.." Crit(%)"}, ["MELEE_CRIT_AVOID"] = {"Crit Avoidance(%)", "Crit Avd(%)"}, ["MELEE_HASTE"] = {"Haste(%)", "Haste(%)"}, -- ["RANGED_HASTE"] = {PLAYERSTAT_RANGED_COMBAT.." Haste(%)", PLAYERSTAT_RANGED_COMBAT.." Haste(%)"}, ["SPELL_HASTE"] = {PLAYERSTAT_SPELL_COMBAT.." Haste(%)", PLAYERSTAT_SPELL_COMBAT.." Haste(%)"}, ["DAGGER_WEAPON"] = {"Dagger "..SKILL, "Dagger"}, -- SKILL = "Skill" ["SWORD_WEAPON"] = {"Sword "..SKILL, "Sword"}, ["2H_SWORD_WEAPON"] = {"Two-Handed Sword "..SKILL, "2H Sword"}, ["AXE_WEAPON"] = {"Axe "..SKILL, "Axe"}, ["2H_AXE_WEAPON"] = {"Two-Handed Axe "..SKILL, "2H Axe"}, ["MACE_WEAPON"] = {"Mace "..SKILL, "Mace"}, ["2H_MACE_WEAPON"] = {"Two-Handed Mace "..SKILL, "2H Mace"}, ["GUN_WEAPON"] = {"Gun "..SKILL, "Gun"}, ["CROSSBOW_WEAPON"] = {"Crossbow "..SKILL, "Crossbow"}, ["BOW_WEAPON"] = {"Bow "..SKILL, "Bow"}, ["FERAL_WEAPON"] = {"Feral "..SKILL, "Feral"}, ["FIST_WEAPON"] = {"Unarmed "..SKILL, "Unarmed"}, ["STAFF_WEAPON"] = {"Staff "..SKILL, "Staff"}, -- Leggings of the Fang ID:10410 --["EXPERTISE"] = {STAT_EXPERTISE, STAT_EXPERTISE}, ["EXPERTISE"] = {"Expertise", "Expertise"}, --------------------------------------------------------------------------- -- Tier3 Stats - Stats that only show up when broken down from a Tier2 stat -- Defense -> Crit Avoidance, Hit Avoidance, Dodge, Parry, Block -- Weapon Skill -> Crit, Hit, Dodge Neglect, Parry Neglect, Block Neglect -- Expertise -> Dodge Neglect, Parry Neglect ["DODGE_NEGLECT"] = {DODGE.." Neglect(%)", DODGE.." Neglect(%)"}, ["PARRY_NEGLECT"] = {PARRY.." Neglect(%)", PARRY.." Neglect(%)"}, ["BLOCK_NEGLECT"] = {BLOCK.." Neglect(%)", BLOCK.." Neglect(%)"}, --------------------------------------------------------------------------- -- Talants ["MELEE_CRIT_DMG"] = {"Crit Damage(%)", "Crit Dmg(%)"}, ["RANGED_CRIT_DMG"] = {PLAYERSTAT_RANGED_COMBAT.." Crit Damage(%)", PLAYERSTAT_RANGED_COMBAT.." Crit Dmg(%)"}, ["SPELL_CRIT_DMG"] = {PLAYERSTAT_SPELL_COMBAT.." Crit Damage(%)", PLAYERSTAT_SPELL_COMBAT.." Crit Dmg(%)"}, --------------------------------------------------------------------------- -- Spell Stats -- These values can be prefixed with a @ and spell name, using reverse translation to english from Babble-Spell-2.2 -- Ex: "Heroic Strike@RAGE_COST" for Heroic Strike rage cost -- Ex: "Heroic Strike@THREAT" for Heroic Strike threat value -- Use strsplit("@", text) to seperate the spell name and statid ["THREAT"] = {"Threat", "Threat"}, ["CAST_TIME"] = {"Casting Time", "Cast Time"}, ["MANA_COST"] = {"Mana Cost", "Mana Cost"}, ["RAGE_COST"] = {"Rage Cost", "Rage Cost"}, ["ENERGY_COST"] = {"Energy Cost", "Energy Cost"}, ["COOLDOWN"] = {"Cooldown", "CD"}, --------------------------------------------------------------------------- -- Stats Mods ["MOD_STR"] = {"Mod "..SPELL_STAT1_NAME.."(%)", "Mod Str(%)"}, ["MOD_AGI"] = {"Mod "..SPELL_STAT2_NAME.."(%)", "Mod Agi(%)"}, ["MOD_STA"] = {"Mod "..SPELL_STAT3_NAME.."(%)", "Mod Sta(%)"}, ["MOD_INT"] = {"Mod "..SPELL_STAT4_NAME.."(%)", "Mod Int(%)"}, ["MOD_SPI"] = {"Mod "..SPELL_STAT5_NAME.."(%)", "Mod Spi(%)"}, ["MOD_HEALTH"] = {"Mod "..HEALTH.."(%)", "Mod "..HP.."(%)"}, ["MOD_MANA"] = {"Mod "..MANA.."(%)", "Mod "..MP.."(%)"}, ["MOD_ARMOR"] = {"Mod "..ARMOR.."from Items".."(%)", "Mod "..ARMOR.."(Items)".."(%)"}, ["MOD_BLOCK_VALUE"] = {"Mod Block Value".."(%)", "Mod Block Value".."(%)"}, ["MOD_DMG"] = {"Mod Damage".."(%)", "Mod Dmg".."(%)"}, ["MOD_DMG_TAKEN"] = {"Mod Damage Taken".."(%)", "Mod Dmg Taken".."(%)"}, ["MOD_CRIT_DAMAGE"] = {"Mod Crit Damage".."(%)", "Mod Crit Dmg".."(%)"}, ["MOD_CRIT_DAMAGE_TAKEN"] = {"Mod Crit Damage Taken".."(%)", "Mod Crit Dmg Taken".."(%)"}, ["MOD_THREAT"] = {"Mod Threat".."(%)", "Mod Threat".."(%)"}, ["MOD_AP"] = {"Mod "..ATTACK_POWER_TOOLTIP.."(%)", "Mod AP".."(%)"}, ["MOD_RANGED_AP"] = {"Mod "..PLAYERSTAT_RANGED_COMBAT.." "..ATTACK_POWER_TOOLTIP.."(%)", "Mod RAP".."(%)"}, ["MOD_SPELL_DMG"] = {"Mod "..PLAYERSTAT_SPELL_COMBAT.." "..DAMAGE.."(%)", "Mod "..PLAYERSTAT_SPELL_COMBAT.." Dmg".."(%)"}, ["MOD_HEALING"] = {"Mod Healing".."(%)", "Mod Heal".."(%)"}, ["MOD_CAST_TIME"] = {"Mod Casting Time".."(%)", "Mod Cast Time".."(%)"}, ["MOD_MANA_COST"] = {"Mod Mana Cost".."(%)", "Mod Mana Cost".."(%)"}, ["MOD_RAGE_COST"] = {"Mod Rage Cost".."(%)", "Mod Rage Cost".."(%)"}, ["MOD_ENERGY_COST"] = {"Mod Energy Cost".."(%)", "Mod Energy Cost".."(%)"}, ["MOD_COOLDOWN"] = {"Mod Cooldown".."(%)", "Mod CD".."(%)"}, --------------------------------------------------------------------------- -- Misc Stats ["WEAPON_RATING"] = {"Weapon "..SKILL.." "..RATING, "Weapon"..SKILL.." "..RATING}, ["WEAPON_SKILL"] = {"Weapon "..SKILL, "Weapon"..SKILL}, ["MAINHAND_WEAPON_RATING"] = {"Main Hand Weapon "..SKILL.." "..RATING, "MH Weapon"..SKILL.." "..RATING}, ["OFFHAND_WEAPON_RATING"] = {"Off Hand Weapon "..SKILL.." "..RATING, "OH Weapon"..SKILL.." "..RATING}, ["RANGED_WEAPON_RATING"] = {"Ranged Weapon "..SKILL.." "..RATING, "Ranged Weapon"..SKILL.." "..RATING}, } ```

I added comments to some strokes when I add a new line (for more variables of text) or when I'm not sure what item I should check. I didn't manage to fix an error with the gear set names (for example hunter's T3 set "Доспехи Расхитителя гробниц"). image

Also I can't find any way to fix Strength on items. For example agility in this Scroll of Agility works fine image (it says (+20 RAP) - ranged attack power)

but at the same time strength doesn't work (it's enabled in settings) image

And I found a little bug with Intellect description. RB stats info devides the word "Интеллект" (к интеллект <> у) and looks ugly. image

thehallowedfire commented 2 years ago

I will continue improving translation but just wanted to fix the most common errors first

raethkcj commented 2 years ago

Thank you so much! I opened a pull request to merge your changes and address some of the issues you mentioned.

Also I can't find any way to fix Strength on items.

Fixed in 27362a324bc88752a2607a31fb7d9c20aab4811f

And I found a little bug with Intellect description. RB stats info devides the word "Интеллект" (к интеллект <> у) and looks ugly.

Fixed in 7a71f289f7dc28295b24dfde37162a3880c3b5a9

-- Need help! In russian it looks like this: "Урон: 123-321"

Fixed in 5a1bedfeae8d06b1028cdb96e1e173b1a8543d6e

If you have more changes coming I'll wait to merge it for now. I'll also look into how the Set Bonus (8/9) lines are handled in enUS, you don't need to worry about that.

thehallowedfire commented 2 years ago

You can merge it. I'll just wait next version to continue. Still have a few more classes to level up and look for errors with their stats =)

raethkcj commented 2 years ago

I moved your comments to a new issue, since they're not directly related to Russian support 🙂

thehallowedfire commented 2 years ago

Speaking of improvements for russian client I would like to change some text descriptions/names of stats. They look really bad now and inconsistent. You don't really have such problems on english client =).

image

For example on the screenshot above you can see conversation for Intellect (+0.21% крит закл, +2.5 урона). It probably uses some translations for other strokes or something. Ideally it should be (+2.5 к силе заклинаний, +0.21% к вероятности крит. удара). First, the order in my opinion should be changed so you have 'base' stats first and 'calculated' stats second. In this case it was crit chance (calculated) first and damage second. I changed it in the second 'ideal' option. Second thing is mostly for a russian client. On 3.3.5 client crit looked like "+10 к рейтингу критического удара" (+10 Critical Strike Rating), but on retail it's "+10 к критическому удару". It doesn't mention word 'rating' but I believe it's rating in fact. The issue is that you can understand this retail version as '+10 of something which increases your crit damage'. Not a good thing from blizzard translators actually. So I propose to use more undestandable text for calculated crit chance: "+10% Critical Strike Chance" or "+10% к вероятности крит. удара" or "+10% к вер. крит. удара" (2nd option is very long but 3rd looks a little bit more weird =)).

These text descriptions stay the same no matter what number in front of them. So I could just write translations for all types of these stats for this exact place (additional text in the item stats). And if you will decide to change the order in Stat summary as I suggested it will use these new lines as well without changes (it will look correct on russian). For a simple stats (like crit rating to crit chance conversations) text isn't needed, so it's fine.

There is another translation task for options menu (not everything is translated or it uses 'strokes translation' or just looks ugly) but it's not very important right now =). image

thehallowedfire commented 2 years ago

image Same issue with Spirit as it was with Intellect - stats devide word Spirit ("к духу").

raethkcj commented 2 years ago

The translations for the settings menu are defined here: https://github.com/raethkcj/RatingBuster/blob/0586ad9b38ecd894b0ff5b0da5e88b386690243a/locales/ruRU.lua#L22-L574

And the translations for Stat Breakdowns are at the bottom of the same file, here: https://github.com/raethkcj/RatingBuster/blob/0586ad9b38ecd894b0ff5b0da5e88b386690243a/locales/ruRU.lua#L781-L809

thehallowedfire commented 2 years ago

How can I get rid of this type of errors? image (it says "Восполняет 8 ед. здоровья каждые 5 секунд." ("Restores 8 health every 5 sec"))

It doesn't see the whole stroke as one.

Also wands seem to have another type of damage text. image Format is: "123 - 321 ед. урона от светлой магии" which includes information about magic school. How to deal with this?

Can't find any example of how to 'split' text into 'readable' part and ignored one. For example meta-gem for casters gives 12 crit rating and 3% crit damage increase. I suppose we need to read only crit rating part but not crit damage increase. So it gives error right now (but converts first part with rating) image Similar issue with Riding crops. First part where it says about 10% mount speed increase works fine but second part (which says that it doesn't work on chars higher that lvl 70) has to be ignored.

I fixed Spirit word division and will post a new code a little bit later when I will fix errors above. Also have looked at code that generates summary strokes and it seems to use various tags to build stat names. If you have plans to add left/right positioning feature could you please add a new tags so I could translate it as whole stat name? At least for left (new) orientation.

Right now it looks like this (current right positioning for numbers): Заклинания Урон 123 ("Spells Damage" - read it as separate words, not as one name)

Should be: Урон заклинаний 123 (or I prefer to use word 'power' instead of 'damage' because it means that - "Сила заклинаний")

thehallowedfire commented 2 years ago

It doesn't see the whole stroke as one.

There is many similar errors because they have "сек." in it. We have dot when the word "seconds" is shorten. How to escape it?

raethkcj commented 2 years ago

How can I get rid of this type of errors? [image] (it says "Восполняет 8 ед. здоровья каждые 5 секунд." ("Restores 8 health every 5 sec")) It doesn't see the whole stroke as one.

There is many similar errors because they have "сек." in it. We have dot when the word "seconds" is shorten. How to escape it?

I'm fairly sure this will be a PreScanPattern but I'll check soon.


Also wands seem to have another type of damage text.

I can fix this, but can you give several examples of how it looks for other damage schools? E.g. nature, frost, fire? I checked Wowhead but it uses declension and doesn't include the words от or магии:


Can't find any example of how to 'split' text into 'readable' part and ignored one. For example meta-gem for casters gives 12 crit rating and 3% crit damage increase. I suppose we need to read only crit rating part but not crit damage increase. So it gives error right now (but converts first part with rating)

This is already done. See how S1-1: '+12 к рейтингу критического удара' and S1-2: 'на 3% увеличенный критический урон' are separate? Since на 3% увеличенный критический урон is not a stat we care about, you can just add it at the bottom of StatIDLookup as an Exclude pattern:

["на 3% увеличенный критический урон"] = false,

And do the same with the second half of riding crop, I believe.


Right now it looks like this (current right positioning for numbers): Заклинания Урон 123 ("Spells Damage" - read it as separate words, not as one name)

Should be: Урон заклинаний 123 (or I prefer to use word 'power' instead of 'damage' because it means that - "Сила заклинаний")

These patterns are defined here, and you are welcome to overwrite them so they make more sense. They use GlobalStrings by default so that you get some translation even if no one has done translation work yet 🙂 https://github.com/raethkcj/RatingBuster/blob/0586ad9b38ecd894b0ff5b0da5e88b386690243a/libs/StatLogic/locales/ruRU.lua#L529

thehallowedfire commented 2 years ago

I can fix this, but can you give several examples of how it looks for other damage schools?

This is how text on wands looks like in the game: image image image image

It's Shadow, Holy, Arcane and Fire damage respectively (didn't find Nature but should have the same pattern)

thehallowedfire commented 2 years ago

Aparentely Blizzard added original stat comparison to Wrath Classic client. Didn't see any news about it but it's in the game at the moment (I tested - turned off all addons and it's definetely game feature and not some addon). image Maybe you'll want to implement RatingBuster into these strokes. Russian translation on this new (old) feature is kinda bad by the way. They didn't use perfect localization from 3.3.5 client and just machine-translated it...

I was working on localization for v1.5.7 when you uploaded v1.5.8. And I had to merge my RatingBuster/locales/ruRU.lua and StatLogic/locales/ruRU.lua with the new ones (there are only change for color picking I believe). But addon stopped working correct on my feral druid - it doesn't show summary (but shows conversion). And it works fine on my mage (shows both conversion and summary). Idk maybe it's because of new update?

Also hit/hit rating didn't work for me at all, noticed it a few days ago (I believe before addition of original stat-comparison feature). Hit conversion worked fine but it showed 0%/0 in the summary. And I found a little mistake in russian localization file: some variables were written with capitals when in other localizations (I compared with german one) they had small letters. This was the cause of non-translated things in the addon settings window. I fixed most of these letters and menu became translated. If I accidentely broke something by my translation (if it causes summary to not show on my druid) I could just use template file and carefully copy translations to a new file.

thehallowedfire commented 2 years ago

I'm not very familiar with GitHub pull requests system so I'll just post code here. I'm sorry if it's inconvenient

StatLogic/locales/ruRU.lua ```Lua --ruRU localization by YujiTFD, thehallowedfire local L = LibStub("AceLocale-3.0"):NewLocale("StatLogic", "ruRU") if not L then return end L["tonumber"] = tonumber --[[ -- Item Stat Scanning Procedure -- Trim spaces using strtrim(text) -- Strip color codes -- 1. Fast Exclude - Exclude obvious lines that do not need to be checked -- Exclude a string by matching the whole string, these strings are indexed in L.Exclude. -- Exclude a string by looking at the first X chars, these strings are indexed in L.Exclude. -- Exclude lines starting with '"'. (Flavor text) -- Exclude lines that are not white and green and normal (normal for Frozen Wrath bonus) -- 2. Whole Text Lookup - Mainly used for enchants or stuff without numbers -- Whole strings are indexed in L.WholeTextLookup -- 3. Single Plus Stat Check - "+10 Spirit" -- String is matched with pattern L.SinglePlusStatCheck, 2 captures are returned. -- If a match is found, the non-number capture is looked up in L.StatIDLookup. -- 4. Single Equip Stat Check - "Equip: Increases attack power by 81." -- String is matched with pattern L.SingleEquipStatCheck, 2 captures are returned. -- If a match is found, the non-number capture is looked up in L.StatIDLookup. -- 5. Pre Scan - Short list of patterns that will be checked before going into Deep Scan. -- 6. Deep Scan - When all the above checks fail, we will use the Deep Scan, this is slow but only about 10% of the lines need it. -- Strip leading "Equip: ", "Socket Bonus: ". -- Strip trailing ".". -- Separate the string using L.DeepScanSeparators. -- Check if the separated strings are found in L.WholeTextLookup. -- Try to match each separated string to patterns in L.DeepScanPatterns in order, patterns in L.DeepScanPatterns should have less inclusive patterns listed first and more inclusive patterns listed last. -- If no match then separae the string using L.DeepScanWordSeparators, then check again. --]] ------------------ -- Fast Exclude -- ------------------ -- By looking at the first ExcludeLen letters of a line we can exclude a lot of lines L["ExcludeLen"] = 5 -- using string.utf8len L["Exclude"] = { [""] = true, [" \n"] = true, [ITEM_BIND_ON_EQUIP] = true, -- ITEM_BIND_ON_EQUIP = "Binds when equipped"; -- Item will be bound when equipped [ITEM_BIND_ON_PICKUP] = true, -- ITEM_BIND_ON_PICKUP = "Binds when picked up"; -- Item wil be bound when picked up [ITEM_BIND_ON_USE] = true, -- ITEM_BIND_ON_USE = "Binds when used"; -- Item will be bound when used [ITEM_BIND_QUEST] = true, -- ITEM_BIND_QUEST = "Quest Item"; -- Item is a quest item (same logic as ON_PICKUP) [ITEM_SOULBOUND] = true, -- ITEM_SOULBOUND = "Soulbound"; -- Item is Soulbound [ITEM_STARTS_QUEST] = true, -- ITEM_STARTS_QUEST = "This Item Begins a Quest"; -- Item is a quest giver [ITEM_CANT_BE_DESTROYED] = true, -- ITEM_CANT_BE_DESTROYED = "That item cannot be destroyed."; -- Attempted to destroy a NO_DESTROY item [ITEM_CONJURED] = true, -- ITEM_CONJURED = "Conjured Item"; -- Item expires [ITEM_DISENCHANT_NOT_DISENCHANTABLE] = true, -- ITEM_DISENCHANT_NOT_DISENCHANTABLE = "Cannot be disenchanted"; -- Items which cannot be disenchanted ever ["Для ра"] = true, -- ITEM_DISENCHANT_ANY_SKILL = "Disenchantable"; -- Items that can be disenchanted at any skill level -- ITEM_DISENCHANT_MIN_SKILL = "Disenchanting requires %s (%d)"; -- Minimum enchanting skill needed to disenchant ["Durat"] = true, -- ITEM_DURATION_DAYS = "Длительность, дней: %d"; ["<Изго"] = true, -- ITEM_CREATED_BY = "|cff00ff00<Создатель: %s>|r"; -- %s is the creator of the item ["Восст"] = true, -- ITEM_COOLDOWN_TIME_DAYS = "Откат, дней: %d day"; ["Уника"] = true, -- Unique (20) -- ITEM_UNIQUE = "Уникальная"; -- Item is unique -- ITEM_UNIQUE_MULTIPLE = "Уникальная (%d)"; -- Item is unique ["Требу"] = true, -- Requires Level xx -- ITEM_MIN_LEVEL = "Требуется уровень %d"; -- Required level to use the item ["\nТре"] = true, -- Requires Level xx -- ITEM_MIN_SKILL = "Требуется %s (%d)"; -- Required skill rank to use the item ["Класс"] = true, -- Classes: xx -- ITEM_CLASSES_ALLOWED = "Класс: %s"; -- Lists the classes allowed to use this item ["Тольк"] = true, -- Only for Horde/Alliance (PvP trinkets) ["Расы:"] = true, -- Races: xx (vendor mounts) -- ITEM_RACES_ALLOWED = "Раса: %s"; -- Lists the races allowed to use this item ["Испол"] = true, -- Use: -- ITEM_SPELL_TRIGGER_ONUSE = "Использование:"; ["Шанс "] = true, -- Chance On Hit: -- ITEM_SPELL_TRIGGER_ONPROC = "Шанс при ударе:"; ["Транс"] = true, -- Mount; -- Set Bonuses -- ITEM_SET_BONUS = "Set: %s"; -- ITEM_SET_BONUS_GRAY = "(%d) Set: %s"; -- ITEM_SET_NAME = "%s (%d/%d)"; -- Set name (2/5) ["Компл"] = true, -- ["(2) S"] = true,-- In russian sets always look like this: "Комплект: текст" or "Комплект (2 предмета): текст" -- ["(3) S"] = true, -- ["(4) S"] = true, -- ["(5) S"] = true, -- ["(6) S"] = true, -- ["(7) S"] = true, -- ["(8) S"] = true, -- Equip type [GetItemClassInfo(Enum.ItemClass.Projectile)] = true, -- Ice Threaded Arrow ID:19316 [INVTYPE_AMMO] = true, [INVTYPE_HEAD] = true, [INVTYPE_NECK] = true, [INVTYPE_SHOULDER] = true, [INVTYPE_BODY] = true, [INVTYPE_CHEST] = true, [INVTYPE_ROBE] = true, [INVTYPE_WAIST] = true, [INVTYPE_LEGS] = true, [INVTYPE_FEET] = true, [INVTYPE_WRIST] = true, [INVTYPE_HAND] = true, [INVTYPE_FINGER] = true, [INVTYPE_TRINKET] = true, [INVTYPE_CLOAK] = true, [INVTYPE_WEAPON] = true, [INVTYPE_SHIELD] = true, [INVTYPE_2HWEAPON] = true, [INVTYPE_WEAPONMAINHAND] = true, [INVTYPE_WEAPONOFFHAND] = true, [INVTYPE_HOLDABLE] = true, [INVTYPE_RANGED] = true, [GetItemSubClassInfo(Enum.ItemClass.Weapon, Enum.ItemWeaponSubclass.Thrown)] = true, [INVTYPE_RELIC] = true, [INVTYPE_TABARD] = true, [INVTYPE_BAG] = true, } --[[DEBUG stuff, no need to translate textTable = { "Spell Damage +6 and Spell Hit Rating +5", "+3 Stamina, +4 Critical Strike Rating", "+26 Healing Spells & 2% Reduced Threat", "+3 Stamina/+4 Critical Strike Rating", "Socket Bonus: 2 mana per 5 sec.", "Equip: Increases damage and healing done by magical spells and effects by up to 150.", "Equip: Increases the spell critical strike rating of all party members within 30 yards by 28.", "Equip: Increases damage and healing done by magical spells and effects of all party members within 30 yards by up to 33.", "Equip: Increases healing done by magical spells and effects of all party members within 30 yards by up to 62.", "Equip: Increases your spell damage by up to 120 and your healing by up to 300.", "Equip: Restores 11 mana per 5 seconds to all party members within 30 yards.", "Equip: Increases healing done by spells and effects by up to 300.", "Equip: Increases attack power by 420 in Cat, Bear, Dire Bear, and Moonkin forms only.", "+10 Defense Rating/+10 Stamina/+15 Block Value", -- ZG Enchant "+26 Attack Power and +14 Critical Strike Rating", -- Swift Windfire Diamond ID:28556 "+26 Healing Spells & 2% Reduced Threat", -- Bracing Earthstorm Diamond ID:25897 "+6 Spell Damage, +5 Spell Crit Rating", -- Potent Ornate Topaz ID: 28123 ---- "Critical Rating +6 and Dodge Rating +5", -- Assassin's Fire Opal ID:30565 "Healing +11 and 2 mana per 5 sec.", -- Royal Tanzanite ID: 30603 } --]] ----------------------- -- Whole Text Lookup -- ----------------------- -- Mainly used for enchants that doesn't have numbers in the text -- http://wow.allakhazam.com/db/enchant.html?slot=0&locale=enUS L["WholeTextLookup"] = { [EMPTY_SOCKET_RED] = {["EMPTY_SOCKET_RED"] = 1}, -- EMPTY_SOCKET_RED = "Red Socket"; [EMPTY_SOCKET_YELLOW] = {["EMPTY_SOCKET_YELLOW"] = 1}, -- EMPTY_SOCKET_YELLOW = "Yellow Socket"; [EMPTY_SOCKET_BLUE] = {["EMPTY_SOCKET_BLUE"] = 1}, -- EMPTY_SOCKET_BLUE = "Blue Socket"; [EMPTY_SOCKET_META] = {["EMPTY_SOCKET_META"] = 1}, -- EMPTY_SOCKET_META = "Meta Socket"; ["Слабое волшебное масло"] = {["SPELL_DMG"] = 8, ["HEAL"] = 8}, -- ID: 20744 ["Простое волшебное масло"] = {["SPELL_DMG"] = 16, ["HEAL"] = 16}, -- ID: 20746 ["Волшебное масло"] = {["SPELL_DMG"] = 24, ["HEAL"] = 24}, -- ID: 20750 ["Блестящее волшебное масло"] = {["SPELL_DMG"] = 36, ["HEAL"] = 36, ["SPELL_CRIT_RATING"] = 14}, -- ID: 20749 ["Превосходное волшебное масло"] = {["SPELL_DMG"] = 42, ["HEAL"] = 42}, -- ID: 22522 ["Благословленное волшебное масло"] = {["SPELL_DMG_UNDEAD"] = 60}, -- ID: 23123 ["Слабое масло маны"] = {["MANA_REG"] = 4}, -- ID: 20745 ["Простое масло маны"] = {["MANA_REG"] = 8}, -- ID: 20747 ["Блестящее масло маны"] = {["MANA_REG"] = 12, ["HEAL"] = 25}, -- ID: 20748 ["Превосходное масло маны"] = {["MANA_REG"] = 14}, -- ID: 22521 ["Этерниевая леска"] = {["FISHING"] = 5}, -- ["Жестокость"] = {["AP"] = 70}, -- ["Живучесть I"] = {["MANA_REG"] = 4, ["HEALTH_REG"] = 4}, -- Enchant Boots - Vitality http://wow.allakhazam.com/db/spell.html?wspell=27948 ["Ледяная душа"] = {["SHADOW_SPELL_DMG"] = 54, ["FROST_SPELL_DMG"] = 54}, -- ["+50 к силе заклинаний огня и тайной магии"] = {["ARCANE_SPELL_DMG"] = 50, ["FIRE_SPELL_DMG"] = 50}, -- ["Мифриловые шпоры"] = {["MOUNT_SPEED"] = 4}, -- Mithril Spurs ["Небольшое ускорение верховой езды"] = {["MOUNT_SPEED"] = 2}, -- Enchant Gloves - Riding Skill ["Надето: небольшое ускорение бега."] = {["RUN_SPEED"] = 8}, -- [Highlander's Plate Greaves] ID: 20048 ["Небольшое ускорениеускорение бега"] = {["RUN_SPEED"] = 8}, -- ["Небольшое увеличение скорости"] = {["RUN_SPEED"] = 8}, -- Enchant Boots - Minor Speed "Minor Speed Increase" http://wow.allakhazam.com/db/spell.html?wspell=13890 ["Небольшое увеличение скорости и +6 к ловкости"] = {["RUN_SPEED"] = 8, ["AGI"] = 6}, -- Enchant Boots - Cat's Swiftness "Minor Speed and +6 Agility" http://wow.allakhazam.com/db/spell.html?wspell=34007 ["Небольшое увеличение скорости и +9 к выносливости"] = {["RUN_SPEED"] = 8, ["STA"] = 9}, -- Enchant Boots - Boar's Speed "Minor Speed and +9 Stamina" ["Верный шаг"] = {["MELEE_HIT_RATING"] = 10}, -- Enchant Boots - Surefooted "Surefooted" http://wow.allakhazam.com/db/spell.html?wspell=27954 ["Скрытность"] = {["THREAT_MOD"] = -2}, -- Enchant Cloak - Subtlety ["На 2% уменьшена угроза"] = {["THREAT_MOD"] = -2}, -- StatLogic:GetSum("item:23344:2832") ["+2% угрозы"] = {["THREAT_MOD"] = 2}, -- Formula: Enchant Gloves - Threat ["Надето: Позволяет дышать под водой."] = false, -- [Band of Icy Depths] ID: 21526 ["Позволяет дышать под водой"] = false, -- -- ["Equip: Immune to Disarm."] = false, -- [Stronghold Gauntlets] ID: 12639 -- Fixed for TBC Classic 2.5.1: no longer immune. ["Надето: Сокращает время разоружения на 50%."] = false, -- [Stronghold Gauntlets] ID: 12639 ["Сокращает время разоружения на 50%"] = false, -- ["Рыцарь"] = false, -- Enchant Crusader ["Вампиризм"] = false, ["Мангуст"] = false, -- Enchant Mongoose } ---------------------------- -- Single Plus Stat Check -- ---------------------------- -- depending on locale, it may be -- +19 Stamina = "^%+(%d+) (.-)%.?$" -- Stamina +19 = "^(.-) %+(%d+)%.?$" -- +19 耐力 = "^%+(%d+) (.-)%.?$" -- Some have a "." at the end of string like: -- Enchant Chest - Restore Mana Prime "+6 mana every 5 sec. " L["SinglePlusStatCheck"] = "^([%+%-]%d+) (.-)%.?$" ----------------------------- -- Single Equip Stat Check -- ----------------------------- -- stat1, value, stat2 = strfind -- stat = stat1..stat2 -- "^Equip: (.-) by u?p? ?t?o? ?(%d+) ?(.-)%.?$" L["SingleEquipStatCheck"] = "^Надето: (.-) by u?p? ?t?o? ?(%d+) ?(.-)%.?$" ------------- -- PreScan -- ------------- -- Special cases that need to be dealt with before deep scan L["PreScanPatterns"] = { --["^Equip: Increases attack power by (%d+) in Cat"] = "FERAL_AP", --["^Equip: Increases attack power by (%d+) when fighting Undead"] = "AP_UNDEAD", -- Seal of the Dawn ID:13029 ["^(%d+) Block$"] = "BLOCK_VALUE", ["^Броня: (%d+)$"] = "ARMOR", ["Reinforced %(%+(%d+) Armor%)"] = "ARMOR_BONUS", ["Восполнение (%d+) ед. маны за 5 сек%.$"] = "MANA_REG", ["^Урон: %+?%d+%-(%d+)$"] = "MAX_DAMAGE", ["Восполняет (%d+) ед%. здоровья каждые 5 секунд%."] = "HEALTH_REG", ["^%(([%d%.]+) ед. урона в секунду%)$"] = "DPS", ["^%d+ %- (%d+) ед%. урона от .-$"] = "MAX_DAMAGE", -- Wands: "123 - 321 ед. урона от светлой магии" -- Exclude ["^(%d+) Slot"] = false, -- Set Name (0/9) ["^.+%((%d+)/%d+%)$"] = false, -- Set Name (0/9) ["|cff808080"] = false, -- Gray text " |cff808080Requires at least 2 Yellow gems|r\n |cff808080Requires at least 1 Red gem|r" ["[Пп]одчинение владельца"] = false, -- Corrupted Ashbringer ["[Ее]сли вас превозносят"] = false, -- Shattered Sun Offensive necks -- Procs --["[Cc]hance"] = false, -- [Mark of Defiance] ID:27924 -- [Staff of the Qiraji Prophets] ID:21128 -- Commented out because it was blocking [Insightful Earthstorm Diamond] ["[Ss]ometimes"] = false, -- [Darkmoon Card: Heroism] ID:19287 ["[Ww]hen struck in combat"] = false, -- [Essence of the Pure Flame] ID: 18815 ["[Вв]озможный эффект"] = false, ["[Шш]анс увеличить"] = false, ["с вероятностью"] = false, } -------------- -- DeepScan -- -------------- -- Strip leading "Equip: ", "Socket Bonus: " L["Equip: "] = "Если на персонаже: " -- ITEM_SPELL_TRIGGER_ONEQUIP = "Equip:"; L["Socket Bonus: "] = "При соответствии цвета: " -- ITEM_SOCKET_BONUS = "Socket Bonus: %s"; -- Tooltip tag for socketed item matched socket bonuses -- Strip trailing "." L["."] = "." L["DeepScanSeparators"] = { "/", -- "+10 Defense Rating/+10 Stamina/+15 Block Value": ZG Enchant " & ", -- "+26 Healing Spells & 2% Reduced Threat": Bracing Earthstorm Diamond ID:25897 ", ", -- "+6 Spell Damage, +5 Spell Crit Rating": Potent Ornate Topaz ID: 28123 "%. ", -- "Equip: Increases attack power by 81 when fighting Undead. It also allows the acquisition of Scourgestones on behalf of the Argent Dawn.": Seal of the Dawn } L["DeepScanWordSeparators"] = { " и ", -- "Critical Rating +6 and Dodge Rating +5": Assassin's Fire Opal ID:30565 } L["DualStatPatterns"] = { -- all lower case ["^%+(%d+) healing and %+(%d+) spell damage$"] = {{"HEAL",}, {"SPELL_DMG",},}, ["^%+(%d+) healing %+(%d+) spell damage$"] = {{"HEAL",}, {"SPELL_DMG",},}, ["^increases healing done by up to (%d+) and damage done by up to (%d+) for all magical spells and effects$"] = {{"HEAL",}, {"SPELL_DMG",},}, } L["DeepScanPatterns"] = { "^(.-) на ?(%d+) ?(.-)$", -- "xxx by up to 22 xxx" (scan first) "^(.-) ?([%+%-]%d+) ?(.-)$", -- "xxx xxx +22" or "+22 xxx xxx" or "xxx +22 xxx" (scan 2ed) "^(.-) ?([%d%.]+) ?(.-)$", -- 22.22 xxx xxx (scan last) } ----------------------- -- Stat Lookup Table -- ----------------------- L["StatIDLookup"] = { ["Эффективность брони противника против ваших атак снижена на"] = {"IGNORE_ARMOR"}, -- StatLogic:GetSum("item:33733") (used tbc text) ["% Threat"] = {"THREAT_MOD"}, -- StatLogic:GetSum("item:23344:2613") ["Увеличение уровня эффективного действия незаметности"] = {"STEALTH_LEVEL"}, -- [Nightscape Boots] ID: 8197 ["Weapon Damage"] = {"MELEE_DMG"}, -- Enchant ["увеличение скорости передвижения верхом на%"] = {"MOUNT_SPEED"}, -- [Highlander's Plate Greaves] ID: 20048 ["ко всем характеристикам"] = {"STR", "AGI", "STA", "INT", "SPI",}, ["к силе"] = {"STR",}, ["силу цели"] = {"STR",}, ["к ловкости"] = {"AGI",}, ["к выносливости"] = {"STA",}, ["к интеллекту"] = {"INT",}, ["к духу"] = {"SPI",}, ["сопротивление тайной магии"] = {"ARCANE_RES",}, ["к сопротивлению тайной магии"] = {"ARCANE_RES",}, ["сопротивление огню"] = {"FIRE_RES",}, ["к сопротивлению огню"] = {"FIRE_RES",}, ["сопротивление силам природы"] = {"NATURE_RES",}, ["к сопротивлению силам природы"] = {"NATURE_RES",}, ["сопротивление магии льда"] = {"FROST_RES",}, ["к сопротивлению магии льда"] = {"FROST_RES",}, ["сопротивление темной магии"] = {"SHADOW_RES",}, ["к сопротивлению темной магии"] = {"SHADOW_RES",}, ["сопротивления темной магии"] = {"SHADOW_RES",}, ["сопротивление всем видам магии"] = {"ARCANE_RES", "FIRE_RES", "FROST_RES", "NATURE_RES", "SHADOW_RES",}, ["ко всем видам сопротивления"] = {"ARCANE_RES", "FIRE_RES", "FROST_RES", "NATURE_RES", "SHADOW_RES",}, ["Resist All"] = {"ARCANE_RES", "FIRE_RES", "FROST_RES", "NATURE_RES", "SHADOW_RES",}, ["к рыбной ловле"] = {"FISHING",}, -- Fishing enchant ID:846 ["рыбная ловля"] = {"FISHING",}, -- Equip: Increased Fishing +20. (it actually looks like: Увеличение навыка "Рыбная ловля" на +20) ["к навыку рыбной ловли"] = {"FISHING",}, ["навык рыбной ловли увеличивается на"] = {"FISHING",}, ["к горному делу"] = {"MINING",}, -- Mining enchant ID:844 ["к травничеству"] = {"HERBALISM",}, -- Heabalism enchant ID:845 ["к снятию шкур"] = {"SKINNING",}, -- Skinning enchant ID:865 ["броня"] = {"ARMOR_BONUS",}, ["к броне"] = {"ARMOR_BONUS",}, ["защита"] = {"DEFENSE",}, ["Increased Defense"] = {"DEFENSE",}, ["блок"] = {"BLOCK_VALUE",}, ["блокирование:"] = {"BLOCK_VALUE",}, ["к показателю блокирования щита"] = {"BLOCK_VALUE",}, -- +10% Shield Block Value [Eternal Earthstorm Diamond] http://www.wowhead.com/?item=35501 ["увеличивает показатель блокирования вашего щита наед"] = {"BLOCK_VALUE",}, ["здоровье"] = {"HEALTH",}, ["к здоровью"] = {"HEALTH",}, ["HP"] = {"HEALTH",}, ["мана"] = {"MANA",}, ["сила атаки"] = {"AP",}, ["увеличивает силу атаки на"] = {"AP",}, ["повышает силу атаки на"] = {"AP",}, ["силы атаки нав бою с нежитью"] = {"AP_UNDEAD",}, -- Actually looks like "Увеличение силы атаки на 45 ед. в бою с нежитью" -- [Wristwraps of Undead Slaying] ID:23093 ["увеличение силы атаки наед. в битве с нежитью"] = {"AP_UNDEAD",}, -- [Seal of the Dawn] ID:13209 ["увеличение силы атаки наед. в бою с нежитью. Также позволяет собирать камни Плети от имени и по поручению Серебряного Рассвета"] = {"AP_UNDEAD",}, -- [Seal of the Dawn] ID:13209 ["Increases attack powerwhen fighting Demons"] = {"AP_DEMON",}, -- (item example please) ["увеличение силы атаки наед. в бою с нежитью и демонами"] = {"AP_UNDEAD", "AP_DEMON",}, -- [Mark of the Champion] ID:23206 ["увеличивает силу атаки нав облике кошки, медведя, лютого медведя и лунного совуха"] = {"FERAL_AP",}, ["сила атаки дальнего боя"] = {"RANGED_AP",}, ["увеличивает силу атак дальнего боя"] = {"RANGED_AP",}, -- [High Warlord's Crossbow] ID: 18837 ["Health Regen"] = {"MANA_REG",}, ["Health per"] = {"HEALTH_REG",}, ["health per"] = {"HEALTH_REG",}, -- Frostwolf Insignia Rank 6 ID:17909 ["Health every"] = {"MANA_REG",}, ["health every"] = {"HEALTH_REG",}, -- [Resurgence Rod] ID:17743 ["your normal health regeneration"] = {"HEALTH_REG",}, -- Demons Blood ID: 10779 ["Restoreshealth per 5 sec"] = {"HEALTH_REG",}, -- [Onyxia Blood Talisman] ID: 18406 ["восполняетед. здоровья каждые 5 секунд"] = {"HEALTH_REG",}, -- [Resurgence Rod] ID:17743 ["Mana Regen"] = {"MANA_REG",}, -- Prophetic Aura +4 Mana Regen/+10 Stamina/+24 Healing Spells http://wow.allakhazam.com/db/spell.html?wspell=24167 ["Mana per"] = {"MANA_REG",}, ["mana per"] = {"MANA_REG",}, -- Resurgence Rod ID:17743 Most common ["Mana every"] = {"MANA_REG",}, ["mana every"] = {"MANA_REG",}, ["Mana every 5 Sec"] = {"MANA_REG",}, -- ["mana every 5 sec"] = {"MANA_REG",}, -- Enchant Chest - Restore Mana Prime "+6 mana every 5 sec." http://wow.allakhazam.com/db/spell.html?wspell=33991 ["Mana per 5 Seconds"] = {"MANA_REG",}, -- [Royal Shadow Draenite] ID: 23109 ["Mana Per 5 sec"] = {"MANA_REG",}, -- [Royal Shadow Draenite] ID: 23109 ["Mana per 5 sec"] = {"MANA_REG",}, -- [Cyclone Shoulderpads] ID: 29031 ["mana per 5 sec"] = {"MANA_REG",}, -- [Royal Tanzanite] ID: 30603 ["восполнениеед. маны в 5 секунд"] = {"MANA_REG",}, ["восполнениеед. маны за 5 сек."] = {"MANA_REG",}, ["восполнениеед. маны раз в 5 секунд"] = {"MANA_REG",}, ["Mana restored per 5 seconds"] = {"MANA_REG",}, -- Magister's Armor Kit +3 Mana restored per 5 seconds http://wow.allakhazam.com/db/spell.html?wspell=32399 ["Mana Regenper 5 sec"] = {"MANA_REG",}, -- Enchant Bracer - Mana Regeneration "Mana Regen 4 per 5 sec." http://wow.allakhazam.com/db/spell.html?wspell=23801 ["Mana per 5 Sec"] = {"MANA_REG",}, -- Enchant Bracer - Restore Mana Prime "6 Mana per 5 Sec." http://wow.allakhazam.com/db/spell.html?wspell=27913 ["проникающей способности заклинаний"] = {"SPELLPEN",}, -- Enchant Cloak - Spell Penetration "+20 Spell Penetration" http://wow.allakhazam.com/db/spell.html?wspell=34003 ["увеличивает проникающую способность заклинаний на"] = {"SPELLPEN",}, ["Healing and Spell Damage"] = {"SPELL_DMG", "HEAL",}, -- Arcanum of Focus +8 Healing and Spell Damage http://wow.allakhazam.com/db/spell.html?wspell=22844 ["Damage and Healing Spells"] = {"SPELL_DMG", "HEAL",}, ["Spell Damage and Healing"] = {"SPELL_DMG", "HEAL",}, ["Spell Damage"] = {"SPELL_DMG", "HEAL",}, ["Increases damage and healing done by magical spells and effects"] = {"SPELL_DMG", "HEAL"}, ["повышает рейтинг критичекого поражения заклинаний всех участников группы в радиусе 30 м. на"] = {"SPELL_DMG", "HEAL"}, -- Atiesh ["Spell Damage and Healing"] = {"SPELL_DMG", "HEAL",}, --StatLogic:GetSum("item:22630") ["Damage"] = {"SPELL_DMG",}, ["Increases your spell damage"] = {"SPELL_DMG",}, -- Atiesh ID:22630, 22631, 22632, 22589 ["к силе заклинаний"] = {"SPELL_DMG", "HEAL",}, ["увеличивает силу заклинаний на"] = {"SPELL_DMG", "HEAL",}, ["Holy Damage"] = {"HOLY_SPELL_DMG",}, ["Arcane Damage"] = {"ARCANE_SPELL_DMG",}, ["Fire Damage"] = {"FIRE_SPELL_DMG",}, ["Nature Damage"] = {"NATURE_SPELL_DMG",}, ["Frost Damage"] = {"FROST_SPELL_DMG",}, ["Shadow Damage"] = {"SHADOW_SPELL_DMG",}, ["Holy Spell Damage"] = {"HOLY_SPELL_DMG",}, ["Arcane Spell Damage"] = {"ARCANE_SPELL_DMG",}, ["Fire Spell Damage"] = {"FIRE_SPELL_DMG",}, ["Nature Spell Damage"] = {"NATURE_SPELL_DMG",}, ["Frost Spell Damage"] = {"FROST_SPELL_DMG",}, -- Acrobatic Staff of Frozen Wrath ID:3185:0:0:0:0:0:1957 ["Shadow Spell Damage"] = {"SHADOW_SPELL_DMG",}, ["Increases damage done by Shadow spells and effects"] = {"SHADOW_SPELL_DMG",}, -- Frozen Shadoweave Vest ID:21871 ["Increases damage done by Frost spells and effects"] = {"FROST_SPELL_DMG",}, -- Frozen Shadoweave Vest ID:21871 ["Increases damage done by Holy spells and effects"] = {"HOLY_SPELL_DMG",}, ["Increases damage done by Arcane spells and effects"] = {"ARCANE_SPELL_DMG",}, ["Increases damage done by Fire spells and effects"] = {"FIRE_SPELL_DMG",}, ["Increases damage done by Nature spells and effects"] = {"NATURE_SPELL_DMG",}, ["Increases the damage done by Holy spells and effects"] = {"HOLY_SPELL_DMG",}, -- Drape of the Righteous ID:30642 ["Increases the damage done by Arcane spells and effects"] = {"ARCANE_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Fire spells and effects"] = {"FIRE_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Frost spells and effects"] = {"FROST_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Nature spells and effects"] = {"NATURE_SPELL_DMG",}, -- Added just in case ["Increases the damage done by Shadow spells and effects"] = {"SHADOW_SPELL_DMG",}, -- Added just in case ["увеличивает силу заклинаний, применяемых против нежити, на"] = {"SPELL_DMG_UNDEAD"}, -- [Robe of Undead Cleansing] ID:23085 ["Increases damage done to Undead by magical spells and effects. It also allows the acquisition of Scourgestones on behalf of the Argent Dawn"] = {"SPELL_DMG_UNDEAD"}, -- [Rune of the Dawn] ID:19812 ["Increases damage done to Undead and Demons by magical spells and effects"] = {"SPELL_DMG_UNDEAD", "SPELL_DMG_DEMON"}, -- [Mark of the Champion] ID:23207 ["Healing Spells"] = {"HEAL",}, -- Enchant Gloves - Major Healing "+35 Healing Spells" http://wow.allakhazam.com/db/spell.html?wspell=33999 ["Increases Healing"] = {"HEAL",}, ["Healing"] = {"HEAL",}, -- StatLogic:GetSum("item:23344:206") ["healing Spells"] = {"HEAL",}, ["Damage Spells"] = {"SPELL_DMG",}, -- 2.3.0 StatLogic:GetSum("item:23344:2343") ["Healing Spells"] = {"HEAL",}, -- [Royal Nightseye] ID: 24057 ["Increases healing done"] = {"HEAL",}, -- 2.3.0 ["damage donefor all magical spells"] = {"SPELL_DMG",}, -- 2.3.0 ["Increases healing done by spells and effects"] = {"HEAL",}, ["Increases healing done by magical spells and effects of all party members within 30 yards"] = {"HEAL",}, -- Atiesh ["your healing"] = {"HEAL",}, -- Atiesh ["damage per second"] = {"DPS",}, ["Addsdamage per second"] = {"DPS",}, -- [Thorium Shells] ID: 15977 ["Defense Rating"] = {"DEFENSE_RATING",}, ["повышает рейтинг защиты на"] = {"DEFENSE_RATING",}, ["Dodge Rating"] = {"DODGE_RATING",}, ["к рейтингу уклонения"] = {"DODGE_RATING",}, ["увеличивает рейтинг уклонения"] = {"DODGE_RATING",}, ["увеличивает рейтинг уклонения на"] = {"DODGE_RATING",}, ["повышает рейтинг уклонения на"] = {"DODGE_RATING",}, ["Parry Rating"] = {"PARRY_RATING",}, ["повышает рейтинг парирования на"] = {"PARRY_RATING",}, ["Shield Block Rating"] = {"BLOCK_RATING",}, -- Enchant Shield - Lesser Block +10 Shield Block Rating http://wow.allakhazam.com/db/spell.html?wspell=13689 ["Block Rating"] = {"BLOCK_RATING",}, ["увеличение рейтинга блока наед"] = {"BLOCK_RATING",}, ["увеличивает рейтинг блокирования щитом на"] = {"BLOCK_RATING",}, ["Improves your chance to hit%"] = {"MELEE_HIT"}, ["Hit Rating"] = {"MELEE_HIT_RATING",}, ["повышает меткость"] = {"MELEE_HIT_RATING", "RANGED_HIT_RATING", "SPELL_HIT_RATING",}, -- ITEM_MOD_HIT_RATING ["меткость в ближнем бою"] = {"MELEE_HIT_RATING",}, -- ITEM_MOD_HIT_MELEE_RATING ["повышает рейтинг меткости"] = {"MELEE_HIT_RATING", "RANGED_HIT_RATING", "SPELL_HIT_RATING",}, ["к рейтингу меткости"] = {"MELEE_HIT_RATING", "RANGED_HIT_RATING", "SPELL_HIT_RATING",}, ["Improves your chance to hit with spells%"] = {"SPELL_HIT"}, ["Spell Hit Rating"] = {"SPELL_HIT_RATING",}, ["повышает рейтинг меткости на"] = {"MELEE_HIT_RATING", "RANGED_HIT_RATING", "SPELL_HIT_RATING",}, ["Increases your spell hit rating"] = {"SPELL_HIT_RATING",}, ["Ranged Hit Rating"] = {"RANGED_HIT_RATING",}, ["Improves ranged hit rating"] = {"RANGED_HIT_RATING",}, -- ITEM_MOD_HIT_RANGED_RATING ["Increases your ranged hit rating"] = {"RANGED_HIT_RATING",}, ["Improves your chance to get a critical strike by%"] = {"MELEE_CRIT", "RANGED_CRIT"}, ["Crit Rating"] = {"CRIT_RATING",}, ["Critical Rating"] = {"CRIT_RATING",}, ["рейтинг критического удара"] = {"CRIT_RATING",}, ["Increases your critical hit rating"] = {"CRIT_RATING",}, ["Increases your critical strike rating"] = {"CRIT_RATING",}, ["повышает рейтинг критического удара на"] = {"CRIT_RATING",}, ["Improves melee critical strike rating"] = {"MELEE_CRIT_RATING",}, -- [Cloak of Darkness] ID:33122 ["Improves your chance to get a critical strike with spells%"] = {"SPELL_CRIT"}, ["Spell Critical Strike Rating"] = {"SPELL_CRIT_RATING",}, ["Spell Critical strike rating"] = {"SPELL_CRIT_RATING",}, ["Spell Critical Rating"] = {"SPELL_CRIT_RATING",}, ["Spell Crit Rating"] = {"SPELL_CRIT_RATING",}, ["к рейтингу критического удара"] = {"SPELL_CRIT_RATING",}, -- TBC Chaotic Skyfire Diamond ["Increases your spell critical strike rating"] = {"SPELL_CRIT_RATING",}, ["Increases the spell critical strike rating of all party members within 30 yards"] = {"SPELL_CRIT_RATING",}, ["Improves spell critical strike rating"] = {"SPELL_CRIT_RATING",}, ["Increases your ranged critical strike rating"] = {"RANGED_CRIT_RATING",}, -- Fletcher's Gloves ID:7348 ["устойчивость"] = {"RESILIENCE_RATING",}, ["рейтинг устойчивости"] = {"RESILIENCE_RATING",}, -- Enchant Chest - Major Resilience "+15 Resilience Rating" http://wow.allakhazam.com/db/spell.html?wspell=33992 ["повышает рейтинг устойчивости на"] = {"RESILIENCE_RATING",}, ["к рейтингу устойчивости"] = {"RESILIENCE_RATING",}, ["Haste Rating"] = {"HASTE_RATING"}, ["к рейтингу скорости"] = {"HASTE_RATING"}, -- (added this line) ["Ranged Haste Rating"] = {"HASTE_RATING"}, ["повышает рейтинг скорости боя на"] = {"HASTE_RATING"}, ["Spell Haste Rating"] = {"SPELL_HASTE_RATING"}, ["Improves melee haste rating"] = {"MELEE_HASTE_RATING"}, ["Improves spell haste rating"] = {"SPELL_HASTE_RATING"}, ["Improves ranged haste rating"] = {"RANGED_HASTE_RATING"}, ["Increases dagger skill rating"] = {"DAGGER_WEAPON_RATING"}, ["Increases sword skill rating"] = {"SWORD_WEAPON_RATING"}, -- [Warblade of the Hakkari] ID:19865 ["Increases Two-Handed Swords skill rating"] = {"2H_SWORD_WEAPON_RATING"}, ["Increases axe skill rating"] = {"AXE_WEAPON_RATING"}, ["Two-Handed Axe Skill Rating"] = {"2H_AXE_WEAPON_RATING"}, -- [Ethereum Nexus-Reaver] ID:30722 ["Increases two-handed axes skill rating"] = {"2H_AXE_WEAPON_RATING"}, ["Increases mace skill rating"] = {"MACE_WEAPON_RATING"}, ["Increases two-handed maces skill rating"] = {"2H_MACE_WEAPON_RATING"}, ["Increases gun skill rating"] = {"GUN_WEAPON_RATING"}, ["Increases Crossbow skill rating"] = {"CROSSBOW_WEAPON_RATING"}, ["Increases Bow skill rating"] = {"BOW_WEAPON_RATING"}, ["Increases feral combat skill rating"] = {"FERAL_WEAPON_RATING"}, ["Increases fist weapons skill rating"] = {"FIST_WEAPON_RATING"}, -- Demonblood Eviscerator ["Increases unarmed skill rating"] = {"FIST_WEAPON_RATING"}, -- Demonblood Eviscerator ID:27533 ["Increases staff skill rating"] = {"STAFF_WEAPON_RATING"}, -- Leggings of the Fang ID:10410 ["рейтинг мастерства"] = {"EXPERTISE_RATING"}, ["к рейтингу мастерства"] = {"EXPERTISE_RATING"}, ["повышает рейтинг мастерства на"] = {"EXPERTISE_RATING"}, ["Повышает рейтинг пробивания брони на"] = {"ARMOR_PENETRATION_RATING"}, ["увеличивает рейтинг пробивания брони на"] = {"ARMOR_PENETRATION_RATING"}, ["снижает эффективность брони противника против ваших атак на"] = {"ARMOR_PENETRATION_RATING"}, -- Exclude ["sec"] = false, ["to"] = false, ["Slot Bag"] = false, ["Slot Quiver"] = false, ["Slot Ammo Pouch"] = false, ["Increases ranged attack speed"] = false, -- AV quiver ["на 3% увеличенный критический урон"] = false, -- Chaotic Skyflare Diamond second effect } local D = LibStub("AceLocale-3.0"):NewLocale("StatLogicD", "ruRU") ---------------- -- Stat Names -- ---------------- -- Please localize these strings too, global strings were used in the enUS locale just to have minimum -- localization effect when a locale is not available for that language, you don't have to use global -- strings in your localization. D["StatIDToName"] = { --[StatID] = {FullName, ShortName}, --------------------------------------------------------------------------- -- Tier1 Stats - Stats parsed directly off items ["EMPTY_SOCKET_RED"] = {EMPTY_SOCKET_RED, EMPTY_SOCKET_RED}, -- EMPTY_SOCKET_RED = "Red Socket"; ["EMPTY_SOCKET_YELLOW"] = {EMPTY_SOCKET_YELLOW, EMPTY_SOCKET_YELLOW}, -- EMPTY_SOCKET_YELLOW = "Yellow Socket"; ["EMPTY_SOCKET_BLUE"] = {EMPTY_SOCKET_BLUE, EMPTY_SOCKET_BLUE}, -- EMPTY_SOCKET_BLUE = "Blue Socket"; ["EMPTY_SOCKET_META"] = {EMPTY_SOCKET_META, EMPTY_SOCKET_META}, -- EMPTY_SOCKET_META = "Meta Socket"; ["IGNORE_ARMOR"] = {"Ignore Armor", "Ignore Armor"}, ["THREAT_MOD"] = {"Threat(%)", "Threat(%)"}, ["STEALTH_LEVEL"] = {"Stealth Level", "Stealth"}, ["MELEE_DMG"] = {"Melee Weapon "..DAMAGE, "Wpn Dmg"}, -- DAMAGE = "Damage" ["MOUNT_SPEED"] = {"Mount Speed(%)", "Mount Spd(%)"}, ["RUN_SPEED"] = {"Run Speed(%)", "Run Spd(%)"}, ["STR"] = {"Сила", "Str"}, ["AGI"] = {"Ловкость", "Agi"}, ["STA"] = {"Выносливость", "Sta"}, ["INT"] = {"Интеллект", "Int"}, ["SPI"] = {"Дух", "Spi"}, ["ARMOR"] = {"Броня", ARMOR}, ["ARMOR_BONUS"] = {ARMOR.." from bonus", ARMOR.."(Bonus)"}, ["FIRE_RES"] = {"Сопротивление огню", "FR"}, ["NATURE_RES"] = {"Сопротивление силам природы", "NR"}, ["FROST_RES"] = {"Сопротивление магии льда", "FrR"}, ["SHADOW_RES"] = {"Сопротивление темной магии", "SR"}, ["ARCANE_RES"] = {"Сопротивление тайной магии", "AR"}, ["FISHING"] = {"Рыбная ловля", "Fishing"}, ["MINING"] = {"Горное дело", "Mining"}, ["HERBALISM"] = {"Травничество", "Herbalism"}, ["SKINNING"] = {"Снятие шкур", "Skinning"}, ["BLOCK_VALUE"] = {"Показатель блокирования", "Block Value"}, ["AP"] = {"Сила атаки", "AP"}, ["RANGED_AP"] = {"Сила атаки дальнего боя", "RAP"}, ["FERAL_AP"] = {"Сила атаки в облике зверя", "Feral AP"}, ["AP_UNDEAD"] = {"Сила атаки (против нежити)", "AP(Undead)"}, ["AP_DEMON"] = {"Сила атаки (против демонов)", "AP(Demon)"}, ["HEAL"] = {"Исцеление", "Heal"}, ["SPELL_DMG"] = {"Сила заклинаний", PLAYERSTAT_SPELL_COMBAT.." Dmg"}, ["SPELL_DMG_UNDEAD"] = {"Сила заклинаний (против нежити)", PLAYERSTAT_SPELL_COMBAT.." Dmg".."(Undead)"}, ["SPELL_DMG_DEMON"] = {"Сила заклинаний (против демонов)", PLAYERSTAT_SPELL_COMBAT.." Dmg".."(Demon)"}, ["HOLY_SPELL_DMG"] = {"Сила заклинаний (светлая магия)", SPELL_SCHOOL1_CAP.." Dmg"}, ["FIRE_SPELL_DMG"] = {"Сила заклинаний (огонь)", SPELL_SCHOOL2_CAP.." Dmg"}, ["NATURE_SPELL_DMG"] = {"Сила заклинаний (природа)", SPELL_SCHOOL3_CAP.." Dmg"}, ["FROST_SPELL_DMG"] = {"Сила заклинаний (лед)", SPELL_SCHOOL4_CAP.." Dmg"}, ["SHADOW_SPELL_DMG"] = {"Сила заклинаний (темная магия)", SPELL_SCHOOL5_CAP.." Dmg"}, ["ARCANE_SPELL_DMG"] = {"Сила заклинаний (тайная магия)", SPELL_SCHOOL6_CAP.." Dmg"}, ["SPELLPEN"] = {"Проникающая способность заклинаний", SPELL_PENETRATION}, ["HEALTH"] = {"Здоровье", HP}, ["MANA"] = {"Мана", MP}, ["HEALTH_REG"] = {"Восстановление здоровья раз в 5 сек.", "HP5"}, ["MANA_REG"] = {"Восстановление маны раз в 5 сек.", "MP5"}, ["MAX_DAMAGE"] = {"Max Damage", "Max Dmg"}, ["DPS"] = {"Урон в секунду", "DPS"}, ["DEFENSE_RATING"] = {"Рейтинг защиты", COMBAT_RATING_NAME2}, -- COMBAT_RATING_NAME2 = "Defense Rating" ["DODGE_RATING"] = {"Рейтинг уклонения", COMBAT_RATING_NAME3}, -- COMBAT_RATING_NAME3 = "Dodge Rating" ["PARRY_RATING"] = {"Рейтинг парирования", COMBAT_RATING_NAME4}, -- COMBAT_RATING_NAME4 = "Parry Rating" ["BLOCK_RATING"] = {"Рейтинг блокирования", COMBAT_RATING_NAME5}, -- COMBAT_RATING_NAME5 = "Block Rating" ["MELEE_HIT_RATING"] = {"Рейтинг меткости", COMBAT_RATING_NAME6}, -- COMBAT_RATING_NAME6 = "Hit Rating" ["RANGED_HIT_RATING"] = {"Рейтинг меткости", PLAYERSTAT_RANGED_COMBAT.." "..COMBAT_RATING_NAME6}, -- PLAYERSTAT_RANGED_COMBAT = "Ranged" ["SPELL_HIT_RATING"] = {"Рейтинг меткости", PLAYERSTAT_SPELL_COMBAT.." "..COMBAT_RATING_NAME6}, -- PLAYERSTAT_SPELL_COMBAT = "Spell" ["MELEE_CRIT_RATING"] = {"Рейтинг крит. удара", COMBAT_RATING_NAME9}, -- COMBAT_RATING_NAME9 = "Crit Rating" ["RANGED_CRIT_RATING"] = {"Рейтинг крит. удара", PLAYERSTAT_RANGED_COMBAT.." "..COMBAT_RATING_NAME9}, ["SPELL_CRIT_RATING"] = {"Рейтинг крит. удара", PLAYERSTAT_SPELL_COMBAT.." "..COMBAT_RATING_NAME9}, ["RESILIENCE_RATING"] = {"Рейтинг устойчивости", COMBAT_RATING_NAME15}, -- COMBAT_RATING_NAME15 = "Resilience" ["MELEE_HASTE_RATING"] = {"Рейтинг скорости", "Haste "..RATING}, -- ["RANGED_HASTE_RATING"] = {"Рейтинг скорости", PLAYERSTAT_RANGED_COMBAT.." Haste "..RATING}, ["SPELL_HASTE_RATING"] = {"Рейтинг скорости", PLAYERSTAT_SPELL_COMBAT.." Haste "..RATING}, ["DAGGER_WEAPON_RATING"] = {"Dagger "..SKILL.." "..RATING, "Dagger "..RATING}, -- SKILL = "Skill" ["SWORD_WEAPON_RATING"] = {"Sword "..SKILL.." "..RATING, "Sword "..RATING}, ["2H_SWORD_WEAPON_RATING"] = {"Two-Handed Sword "..SKILL.." "..RATING, "2H Sword "..RATING}, ["AXE_WEAPON_RATING"] = {"Axe "..SKILL.." "..RATING, "Axe "..RATING}, ["2H_AXE_WEAPON_RATING"] = {"Two-Handed Axe "..SKILL.." "..RATING, "2H Axe "..RATING}, ["MACE_WEAPON_RATING"] = {"Mace "..SKILL.." "..RATING, "Mace "..RATING}, ["2H_MACE_WEAPON_RATING"] = {"Two-Handed Mace "..SKILL.." "..RATING, "2H Mace "..RATING}, ["GUN_WEAPON_RATING"] = {"Gun "..SKILL.." "..RATING, "Gun "..RATING}, ["CROSSBOW_WEAPON_RATING"] = {"Crossbow "..SKILL.." "..RATING, "Crossbow "..RATING}, ["BOW_WEAPON_RATING"] = {"Bow "..SKILL.." "..RATING, "Bow "..RATING}, ["FERAL_WEAPON_RATING"] = {"Feral "..SKILL.." "..RATING, "Feral "..RATING}, ["FIST_WEAPON_RATING"] = {"Unarmed "..SKILL.." "..RATING, "Unarmed "..RATING}, ["STAFF_WEAPON_RATING"] = {"Staff "..SKILL.." "..RATING, "Staff "..RATING}, -- Leggings of the Fang ID:10410 ["EXPERTISE_RATING"] = {"Рейтинг мастерства", "Expertise".." "..RATING}, --------------------------------------------------------------------------- -- Tier2 Stats - Stats that only show up when broken down from a Tier1 stat -- Str -> AP, Block Value -- Agi -> AP, Crit, Dodge -- Sta -> Health -- Int -> Mana, Spell Crit -- Spi -> mp5nc, hp5oc -- Ratings -> Effect ["HEALTH_REG_OUT_OF_COMBAT"] = {"Восстановление здоровья раз в 5 сек. (вне боя)", "ХП5 (вне боя)"}, ["MANA_REG_NOT_CASTING"] = {"Восстановление маны раз в 5 сек. (вне каста)", "МП5 (вне каста)"}, ["MELEE_CRIT_DMG_REDUCTION"] = {"Понижение входящего урона от крит. ударов (%)", "Crit Dmg Reduc(%)"}, ["RANGED_CRIT_DMG_REDUCTION"] = {"Понижение входящего урона от крит. ударов (%)", PLAYERSTAT_RANGED_COMBAT.." Crit Dmg Reduc(%)"}, ["SPELL_CRIT_DMG_REDUCTION"] = {"Понижение входящего урона от крит. ударов (%)", PLAYERSTAT_SPELL_COMBAT.." Crit Dmg Reduc(%)"}, ["DEFENSE"] = {"Защита", "Def"}, ["DODGE"] = {"Уклонение (%)", DODGE.."(%)"}, ["PARRY"] = {"Парирование (%)", PARRY.."(%)"}, ["BLOCK"] = {"Блокирование (%)", BLOCK.."(%)"}, ["AVOIDANCE"] = {"Избегание атак (%)", "Avoidance(%)"}, ["MELEE_HIT"] = {"Меткость (%)", "Hit(%)"}, ["RANGED_HIT"] = {"Меткость (%)", PLAYERSTAT_RANGED_COMBAT.." Hit(%)"}, ["SPELL_HIT"] = {"Меткость (%)", PLAYERSTAT_SPELL_COMBAT.." Hit(%)"}, ["MELEE_HIT_AVOID"] = {"Hit Avoidance(%)", "Hit Avd(%)"}, ["MELEE_CRIT"] = {"Вероятность крит. удара (%)", "Crit(%)"}, -- MELEE_CRIT_CHANCE = "Crit Chance" ["RANGED_CRIT"] = {"Вероятность крит. удара (%)", PLAYERSTAT_RANGED_COMBAT.." Crit(%)"}, ["SPELL_CRIT"] = {"Вероятность крит. удара (%)", PLAYERSTAT_SPELL_COMBAT.." Crit(%)"}, ["MELEE_CRIT_AVOID"] = {"Crit Avoidance(%)", "Crit Avd(%)"}, ["MELEE_HASTE"] = {"Скорость (%)", "Haste(%)"}, -- ["RANGED_HASTE"] = {"Скорость (%)", PLAYERSTAT_RANGED_COMBAT.." Haste(%)"}, ["SPELL_HASTE"] = {"Скорость (%)", PLAYERSTAT_SPELL_COMBAT.." Haste(%)"}, ["DAGGER_WEAPON"] = {"Dagger "..SKILL, "Dagger"}, -- SKILL = "Skill" ["SWORD_WEAPON"] = {"Sword "..SKILL, "Sword"}, ["2H_SWORD_WEAPON"] = {"Two-Handed Sword "..SKILL, "2H Sword"}, ["AXE_WEAPON"] = {"Axe "..SKILL, "Axe"}, ["2H_AXE_WEAPON"] = {"Two-Handed Axe "..SKILL, "2H Axe"}, ["MACE_WEAPON"] = {"Mace "..SKILL, "Mace"}, ["2H_MACE_WEAPON"] = {"Two-Handed Mace "..SKILL, "2H Mace"}, ["GUN_WEAPON"] = {"Gun "..SKILL, "Gun"}, ["CROSSBOW_WEAPON"] = {"Crossbow "..SKILL, "Crossbow"}, ["BOW_WEAPON"] = {"Bow "..SKILL, "Bow"}, ["FERAL_WEAPON"] = {"Feral "..SKILL, "Feral"}, ["FIST_WEAPON"] = {"Unarmed "..SKILL, "Unarmed"}, ["STAFF_WEAPON"] = {"Staff "..SKILL, "Staff"}, -- Leggings of the Fang ID:10410 --["EXPERTISE"] = {STAT_EXPERTISE, STAT_EXPERTISE}, ["EXPERTISE"] = {"Мастерство", "Expertise"}, --------------------------------------------------------------------------- -- Tier3 Stats - Stats that only show up when broken down from a Tier2 stat -- Defense -> Crit Avoidance, Hit Avoidance, Dodge, Parry, Block -- Weapon Skill -> Crit, Hit, Dodge Neglect, Parry Neglect, Block Neglect -- Expertise -> Dodge Neglect, Parry Neglect ["DODGE_NEGLECT"] = {"Снижение вер. противника уклониться (%)", DODGE.." Neglect(%)"}, ["PARRY_NEGLECT"] = {"Снижение вер. противника парировать (%)", PARRY.." Neglect(%)"}, ["BLOCK_NEGLECT"] = {"Снижение вер. противника блокировать (%)", BLOCK.." Neglect(%)"}, --------------------------------------------------------------------------- -- Talants ["MELEE_CRIT_DMG"] = {"Crit Damage(%)", "Crit Dmg(%)"}, ["RANGED_CRIT_DMG"] = {PLAYERSTAT_RANGED_COMBAT.." Crit Damage(%)", PLAYERSTAT_RANGED_COMBAT.." Crit Dmg(%)"}, ["SPELL_CRIT_DMG"] = {PLAYERSTAT_SPELL_COMBAT.." Crit Damage(%)", PLAYERSTAT_SPELL_COMBAT.." Crit Dmg(%)"}, --------------------------------------------------------------------------- -- Spell Stats -- These values can be prefixed with a @ and spell name, using reverse translation to english from Babble-Spell-2.2 -- Ex: "Heroic Strike@RAGE_COST" for Heroic Strike rage cost -- Ex: "Heroic Strike@THREAT" for Heroic Strike threat value -- Use strsplit("@", text) to seperate the spell name and statid ["THREAT"] = {"Threat", "Threat"}, ["CAST_TIME"] = {"Casting Time", "Cast Time"}, ["MANA_COST"] = {"Mana Cost", "Mana Cost"}, ["RAGE_COST"] = {"Rage Cost", "Rage Cost"}, ["ENERGY_COST"] = {"Energy Cost", "Energy Cost"}, ["COOLDOWN"] = {"Cooldown", "CD"}, --------------------------------------------------------------------------- -- Stats Mods ["MOD_STR"] = {"Mod "..SPELL_STAT1_NAME.."(%)", "Mod Str(%)"}, ["MOD_AGI"] = {"Mod "..SPELL_STAT2_NAME.."(%)", "Mod Agi(%)"}, ["MOD_STA"] = {"Mod "..SPELL_STAT3_NAME.."(%)", "Mod Sta(%)"}, ["MOD_INT"] = {"Mod "..SPELL_STAT4_NAME.."(%)", "Mod Int(%)"}, ["MOD_SPI"] = {"Mod "..SPELL_STAT5_NAME.."(%)", "Mod Spi(%)"}, ["MOD_HEALTH"] = {"Mod "..HEALTH.."(%)", "Mod "..HP.."(%)"}, ["MOD_MANA"] = {"Mod "..MANA.."(%)", "Mod "..MP.."(%)"}, ["MOD_ARMOR"] = {"Mod "..ARMOR.."from Items".."(%)", "Mod "..ARMOR.."(Items)".."(%)"}, ["MOD_BLOCK_VALUE"] = {"Mod Block Value".."(%)", "Mod Block Value".."(%)"}, ["MOD_DMG"] = {"Mod Damage".."(%)", "Mod Dmg".."(%)"}, ["MOD_DMG_TAKEN"] = {"Mod Damage Taken".."(%)", "Mod Dmg Taken".."(%)"}, ["MOD_CRIT_DAMAGE"] = {"Mod Crit Damage".."(%)", "Mod Crit Dmg".."(%)"}, ["MOD_CRIT_DAMAGE_TAKEN"] = {"Mod Crit Damage Taken".."(%)", "Mod Crit Dmg Taken".."(%)"}, ["MOD_THREAT"] = {"Mod Threat".."(%)", "Mod Threat".."(%)"}, ["MOD_AP"] = {"Mod "..ATTACK_POWER_TOOLTIP.."(%)", "Mod AP".."(%)"}, ["MOD_RANGED_AP"] = {"Mod "..PLAYERSTAT_RANGED_COMBAT.." "..ATTACK_POWER_TOOLTIP.."(%)", "Mod RAP".."(%)"}, ["MOD_SPELL_DMG"] = {"Mod "..PLAYERSTAT_SPELL_COMBAT.." "..DAMAGE.."(%)", "Mod "..PLAYERSTAT_SPELL_COMBAT.." Dmg".."(%)"}, ["MOD_HEALING"] = {"Mod Healing".."(%)", "Mod Heal".."(%)"}, ["MOD_CAST_TIME"] = {"Mod Casting Time".."(%)", "Mod Cast Time".."(%)"}, ["MOD_MANA_COST"] = {"Mod Mana Cost".."(%)", "Mod Mana Cost".."(%)"}, ["MOD_RAGE_COST"] = {"Mod Rage Cost".."(%)", "Mod Rage Cost".."(%)"}, ["MOD_ENERGY_COST"] = {"Mod Energy Cost".."(%)", "Mod Energy Cost".."(%)"}, ["MOD_COOLDOWN"] = {"Mod Cooldown".."(%)", "Mod CD".."(%)"}, --------------------------------------------------------------------------- -- Misc Stats ["WEAPON_RATING"] = {"Weapon "..SKILL.." "..RATING, "Weapon"..SKILL.." "..RATING}, ["WEAPON_SKILL"] = {"Weapon "..SKILL, "Weapon"..SKILL}, ["MAINHAND_WEAPON_RATING"] = {"Main Hand Weapon "..SKILL.." "..RATING, "MH Weapon"..SKILL.." "..RATING}, ["OFFHAND_WEAPON_RATING"] = {"Off Hand Weapon "..SKILL.." "..RATING, "OH Weapon"..SKILL.." "..RATING}, ["RANGED_WEAPON_RATING"] = {"Ranged Weapon "..SKILL.." "..RATING, "Ranged Weapon"..SKILL.." "..RATING}, } ```
RatingBuster/locales/ruRU.lua ```Lua --[[ Name: RatingBuster ruRU locale Revision: $Revision: 343 $ Translated by: - Orsana \ StingerSoft \ Swix ]] local L = LibStub("AceLocale-3.0"):NewLocale("RatingBuster", "ruRU") if not L then return end -- This file is coded in UTF-8 -- If you don't have a editor that can save in UTF-8, I recommend NotePad++ or Ultraedit ---- -- To translate AceLocale strings, replace true with the translation string -- Before: L["Show Item ID"] = true, -- After: L["Show Item ID"] = "Показывать ID", L["RatingBuster Options"] = "Окно настроек" L["Enabled"] = "Включён" L["Suspend/resume this addon"] = "Отключить/Запустить аддон" --------------------------- -- Slash Command Options -- --------------------------- L["Always"] = "Всегда" L["ALT Key"] = "Клавиша ALT" L["CTRL Key"] = "Клавиша CTRL" L["SHIFT Key"] = "Клавиша SHIFT" L["Never"] = "Никогда" L["General Settings"] = "Основные настройки" L["Profiles"] = "Профили" -- /rb win L["Options Window"] = "Окно настроек" L["Shows the Options Window"] = "Показать окно настроек" -- /rb hidebzcomp L["Hide Blizzard Item Comparisons"] = "Скрыть сравнение от Blizzard" L["Disable Blizzard stat change summary when using the built-in comparison tooltip"] = "Отключить сравнение предметов Blizzard, если используется метод сравнения RatingBuster" -- /rb statmod L["Enable Stat Mods"] = "Включить модуль статистики" L["Enable support for Stat Mods"] = "Включает поддержку модуля статистики" -- /rb subtract_equip --L["Enable Subtract Equipped Stats"] = "" --L["Enable for more accurate calculation of Mana Regen from Intellect and Spirit, and diminishing stats like Dodge, Parry, Resilience"] = "" -- /rb usereqlv L["Use required level"] = "Рассчет для мин. уровня" L["Calculate using the required level if you are below the required level"] = "Рассчитывать статы исходя из минимально необходимого для надевания предмета уровня, если вы ниже этого уровня" -- /rb level L["Set level"] = "Задать уровень" L["Set the level used in calculations (0 = your level)"] = "Задать уровень используемый в расчетах (0 - ваш уровень)" -- /rb ilvlid --L["Item Level and ID"] = "" --L["Settings for Item Level and Item ID"] = "" -- /rb ilvlid coloritemlevel --L["Colorize Item Level"] = "" --L["Customize the color of the Item Level text"] = "" -- /rb ilvlid itemlevelall --L["Show Item Level on all items"] = "" --L["Display the Item Level on all items instead of just on equippable items"] = "" -- /rb avoidancedr L["Enable Avoidance Diminishing Returns"] = "Включить убывания уклонений от удара" L["Dodge, Parry, Miss Avoidance values will be calculated using the avoidance deminishing return formula with your current stats"] = "Значения уклонения, парирования, уклонений от удара при расчетах будет использоваться формула убывания (deminishing return) уклонений от удара по вашим текущим данным" -- /rb itemid L["Show ItemID"] = "ID предмета" L["Show the ItemID in tooltips"] = "Показывать ID предмета в описании" -- /rb itemlevel L["Show ItemLevel"] = "Уровень предмета" L["Show the ItemLevel in tooltips"] = "Показывать уровень предмета в описании" --------------------------------------------------------------------------- -- /rb rating L["Rating"] = "Рейтинги" L["Options for Rating display"] = "Настройки отображения рейтингов" -- /rb rating show L["Show Rating Conversions"] = "Конвертация рейтингов" L["Select when to show rating conversions in tooltips. Modifier keys needs to be pressed before showing the tooltips."] = "Выберите когда показывать конвертацию рейтингов в подсказке. Модификатор клавиш должен быть нажатым перед показом подсказки." -- /rb rating spell L["Show Spell Hit/Haste"] = "Меткость/скорость заклинаний" L["Show Spell Hit/Haste from Hit/Haste Rating"] = "Показывать меткость/скорость заклинаний из рейтинга меткости/скорость" -- /rb rating physical L["Show Physical Hit/Haste"] = "Меткость/скорость физических атак" L["Show Physical Hit/Haste from Hit/Haste Rating"] = "Показывать меткость/скорость физических атак из рейтинга меткости" -- /rb rating detail L["Show detailed conversions text"] = "Детальная конвертация рейтингов" L["Show detailed text for Resilience and Expertise conversions"] = "Показывать детальную конвертацию рейтингов мастерства и устойчивости" -- /rb rating exp L["Expertise breakdown"] = "Разбивать уровень мастерства" L["Convert Expertise into Dodge Neglect and Parry Neglect"] = "Разбивать уровень мастерства на игнорирование уклонения и парирования" L["from"] = "от" L["HEALING"] = "Исцеление" L["AP"] = "Сила атаки" L["RANGED_AP"] = "Сила атаки дальнего боя" L["ARMOR"] = "Броня" L["SPELL_DMG"] = "Сила заклинаний" L["SPELL_CRIT"] = "Вер. крит. удара заклинаниями" L["STR"] = "Сила" L["AGI"] = "Ловкость" L["STA"] = "Выносливость" L["INT"] = "Интеллект" L["SPI"] = "Дух" L["PARRY"] = "Парирование" L["MANA_REG"] = "Восполнение маны" L["NORMAL_MANA_REG"] = "Интеллект" .. " & " .. "Дух" -- Intellect & Spirit L["PET_STA"] = "Выносливость питомца" -- Pet Stamina L["PET_INT"] = "Интеллект питомца" -- Pet Intellect L.statModOptionName = function(show, add) return string.format("%s %s ", show, add) end L.statModOptionDesc = function(show, add, from, mod) return string.format("%s %s %s %s ", show, add, from, mod) end --------------------------------------------------------------------------- -- /rb rating color L["Change text color"] = "Изменить цвет текста" L["Changes the color of added text"] = "Изменить цвет добавляемого текста" L["Change number color"] = "Изменить цвет значений" --------------------------------------------------------------------------- -- /rb stat L["Stat Breakdown"] = "Конвертация статов" L["Changes the display of base stats"] = "Показывать расчет базовых характеристик" -- /rb stat show L["Show base stat conversions"] = "Базовые характеристики" L["Select when to show base stat conversions in tooltips. Modifier keys needs to be pressed before showing the tooltips."] = "Выберите когда показывать изменение базовых статов в подсказке. Модификатор клавиш должен быть нажатым перед показом подсказки." --------------------------------------------------------------------------- -- /rb stat str L["Strength"] = "Сила" L["Changes the display of Strength"] = "Изменить отображение силы" -- /rb stat str ap L["Show Attack Power"] = "Сила атаки" L["Show Attack Power from Strength"] = "Показывать расчет силы атаки от силы" -- /rb stat str block L["Show Block Value"] = "Блокирование" L["Show Block Value from Strength"] = "Показывать расчет показателя блокирования от силы" -- /rb stat str dmg L["Show Spell Damage"] = "Сила заклинаний" L["Show Spell Damage from Strength"] = "Показывать расчет силы заклинаний от силы" -- /rb stat str heal L["Show Healing"] = "Исцеление" L["Show Healing from Strength"] = "Показывать расчет исцеления от силы" -- /rb stat str parryrating L["Show Parry Rating"] = "Рейтинг парирования" L["Show Parry Rating from Strength"] = "Показывать расчет рейтинга парирования от силы" -- /rb stat str parry L["Show Parry"] = "Парирование" L["Show Parry from Strength"] = "Показывать расчет парирования от силы" --------------------------------------------------------------------------- -- /rb stat agi L["Agility"] = "Ловкость" L["Changes the display of Agility"] = "Изменить отображение ловкости" -- /rb stat agi crit L["Show Crit"] = "Крит. удар" L["Show Crit chance from Agility"] = "Показывать расчет вероятности крит. удара от ловкости" -- /rb stat agi dodge L["Show Dodge"] = "Уклонение" L["Show Dodge chance from Agility"] = "Показывать расчет вероятности уклонения от ловкости" -- /rb stat agi ap L["Show Attack Power"] = "Сила атаки" L["Show Attack Power from Agility"] = "Показывать расчет силы атаки от ловкости" -- /rb stat agi rap L["Show Ranged Attack Power"] = "Сила атаки дальнего боя" L["Show Ranged Attack Power from Agility"] = "Показывать расчет силы атаки дальнего боя от ловкости" -- /rb stat agi dmg L["Show Spell Damage"] = "Сила заклинаний" L["Show Spell Damage from Agility"] = "Показывать расчет силы заклинаний от ловкости" -- /rb stat agi heal L["Show Healing"] = "Исцеление" L["Show Healing from Agility"] = "Показывать расчет исцеления от ловкости" --------------------------------------------------------------------------- -- /rb stat sta L["Stamina"] = "Выносливость" L["Changes the display of Stamina"] = "Изменить отображение выносливости" -- /rb stat sta hp L["Show Health"] = "Здоровье" L["Show Health from Stamina"] = "Показывать расчет здоровья от выносливости" -- /rb stat sta dmg L["Show Spell Damage"] = "Сила заклинаний" L["Show Spell Damage from Stamina"] = "Показывать расчет силы заклинаний от выносливости" -- /rb stat sta heal L["Show Healing"] = "Исцеление" L["Show Healing from Stamina"] = "Показывать расчет исцеления от выносливости" -- /rb stat sta ap L["Show Attack Power"] = "Сила атаки" L["Show Attack Power from Stamina"] = "Показывать расчет силы атаки от выносливости" --------------------------------------------------------------------------- -- /rb stat int L["Intellect"] = "Интеллект" L["Changes the display of Intellect"] = "Изменить отображение интеллекта" -- /rb stat int spellcrit L["Show Spell Crit"] = "Крит. удар от заклинаний" L["Show Spell Crit chance from Intellect"] = "Показывать расчет вероятности крит. удара заклинаниями от интеллекта" -- /rb stat int mp L["Show Mana"] = "Мана" L["Show Mana from Intellect"] = "Показывать расчет маны от интеллекта" -- /rb stat int dmg L["Show Spell Damage"] = "Сила заклинаний" L["Show Spell Damage from Intellect"] = "Показывать расчет силы заклинаний от интеллекта" -- /rb stat int heal L["Show Healing"] = "Исцеление" L["Show Healing from Intellect"] = "Показывать расчет исцеления от интеллекта" -- /rb stat int mp5 L["Show Combat Mana Regen"] = "Восполнение маны в бою" L["Show Mana Regen while in combat from Intellect"] = "Показывать расчет восполнения маны от интеллекта (в бою)" -- /rb stat int mp5oc L["Show Normal Mana Regen"] = "Восполнения маны вне боя" L["Show Mana Regen while not in combat from Intellect"] = "Показывать расчет восполнения маны от интеллекта (вне боя)" -- /rb stat int rap L["Show Ranged Attack Power"] = "Сила атаки дальнего боя" L["Show Ranged Attack Power from Intellect"] = "Показывать расчет силы атаки дальнего боя от интеллекта" -- /rb stat int ap L["Show Attack Power"] = "Силы атаки" L["Show Attack Power from Intellect"] = "Показывать расчет силы атаки от интеллекта" --------------------------------------------------------------------------- -- /rb stat spi L["Spirit"] = "Дух" L["Changes the display of Spirit"] = "Изменить отображение духа" -- /rb stat spi mp5 L["Show Combat Mana Regen"] = "Восполнение маны в бою" L["Show Mana Regen while in combat from Spirit"] = "Показывать расчет восполнения маны от духа (в бою)" -- /rb stat spi mp5oc L["Show Normal Mana Regen"] = "Восполнения маны вне боя" L["Show Mana Regen while not in combat from Spirit"] = "Показывать расчет восполнения маны от духа (вне боя)" -- /rb stat spi hp5 L["Show Normal Health Regen"] = "Восполнение здаровья вне боя" L["Show Health Regen while not in combat from Spirit"] = "Показывать расчет восполнения здоровья от духа (вне боя)" -- /rb stat spi dmg L["Show Spell Damage"] = "Сила заклинаний" L["Show Spell Damage from Spirit"] = "Показывать расчет силы заклинаний от духа" -- /rb stat spi heal L["Show Healing"] = "Исцеление" L["Show Healing from Spirit"] = "Показывать расчет исцеления от духа" -- /rb stat spi spellcrit L["Show Spell Crit"] = "Крит. удар заклинаниями" L["Show Spell Crit chance from Spirit"] = "Показывать расчет вероятности критического удара заклинаниями от духа" -- /rb stat spi spellhitrating L["Show Spell Hit Rating"] = "Рейтинг меткости заклинаний" L["Show Spell Hit Rating from Spirit"] = "Показывать расчет рейтинга меткости заклинаний от духа" -- /rb stat spi spellhit L["Show Spell Hit"] = "Меткость заклинаний" L["Show Spell Hit from Spirit"] = "Показывать расчет меткости заклинаний от духа" --------------------------------------------------------------------------- -- /rb stat armor L["Armor"] = "Броня" L["Changes the display of Armor"] = "Показывать расчет брони" -- /rb stat armor ap L["Show Attack Power"] = "Сила атаки" L["Show Attack Power from Armor"] = "Показывать расчет силы атаки от брони" --------------------------------------------------------------------------- -- /rb sum L["Stat Summary"] = "Настройки итогов" L["Options for stat summary"] = "Итоги по статам" -- /rb sum show L["Show Stat Summary"] = "Показывать суммарные изменения" L["Select when to show stat summary in tooltips. Modifier keys needs to be pressed before showing the tooltips."] = "Выберите когда показывать суммарные изменения в подсказке. Модификатор клавиш должен быть нажатым перед показом подсказки." -- /rb sum ignore L["Ignore settings"] = "Настройки игнорирования" L["Ignore stuff when calculating the stat summary"] = "Настройка игнорирования при расчете итога" -- /rb sum ignore unused L["Ignore Undesirable Items"] = "Игнорирование неподходящих предметов" L["Hide stat summary for undesirable items"] = "Скрыть итоги по статам для неподходящих предметов" -- /rb sum ignore quality L["Minimum Item Quality"] = "Мин. качество предмета" L["Show stat summary only for selected quality items and up"] = "Показывать итоги по статам только для выбранного качества предметов и выше" -- /rb sum ignore armor L["Armor Types"] = "Тип брони" L["Select armor types you want to ignore"] = "Выберите тип брони, который будет игнорироваться" -- /rb sum ignore armor cloth L["Ignore Cloth"] = "Игнорировать ткань" L["Hide stat summary for all cloth armor"] = "Скрыть итоги по статам для всех доспехов из ткани" -- /rb sum ignore armor leather L["Ignore Leather"] = "Игнорированть кожу" L["Hide stat summary for all leather armor"] = "Скрыть итоги по статам для всех доспехов из кожы" -- /rb sum ignore armor mail L["Ignore Mail"] = "Игнорированть кальчугу" L["Hide stat summary for all mail armor"] = "Скрыть итоги по статам для всех доспехов из кальчуги" -- /rb sum ignore armor plate L["Ignore Plate"] = "Игнорированть латы" L["Hide stat summary for all plate armor"] = "Скрыть итоги по статам для всех доспехов из лат" -- /rb sum ignore equipped L["Ignore equipped items"] = "Не показывать для надетых вещей" L["Hide stat summary for equipped items"] = "Не показывать для надетых вещей" -- /rb sum ignore enchant L["Ignore enchants"] = "Игнорировать чары" L["Ignore enchants on items when calculating the stat summary"] = "Игнорировать чары при расчете итога" -- /rb sum ignore gem L["Ignore gems"] = "Игнорировать самоцветы" L["Ignore gems on items when calculating the stat summary"] = "Игнорировать самоцветы при расчете итога" -- /rb sum ignore prismaticSocket L["Ignore Prismatic Sockets"] = "Игнорировать радужные гнёзда" L["Ignore gems in prismatic sockets when calculating the stat summary"] = "Игнорировать гнезда для радужного самоцвета при расчете итога" -- /rb sum diffstyle L["Display Style For Diff Value"] = "Стиль отображения отличия значений" L["Display diff values in the main tooltip or only in compare tooltips"] = "Отображения различных значений в главной подсказке или только в сравнительных подсказках" -- /rb sum space L["Add empty line"] = "Добавить пустую линию" L["Add a empty line before or after stat summary"] = "Добавить пустую линию перед или после итогов" -- /rb sum space before L["Add before summary"] = "Линия до итога" L["Add a empty line before stat summary"] = "Добавить линию до итога" -- /rb sum space after L["Add after summary"] = "Линия после итога" L["Add a empty line after stat summary"] = "Добавить линию после итога" -- /rb sum icon L["Show icon"] = "Показать иконку" L["Show the sigma icon before summary listing"] = "Показать знак суммы перед итогом" -- /rb sum title L["Show title text"] = "Показать заголовок" L["Show the title text before summary listing"] = "Показать заголовок до списка итога" -- /rb sum showzerostat L["Show zero value stats"] = "Показывать нулевые статы" L["Show zero value stats in summary for consistancy"] = "Показывать нулевые статы" -- /rb sum calcsum L["Calculate stat sum"] = "Рассчитать сумму характеристик" L["Calculate the total stats for the item"] = "Рассчитать все статы для предмета" -- /rb sum calcdiff L["Calculate stat diff"] = "Рассчитывать разницу в статах" L["Calculate the stat difference for the item and equipped items"] = "Рассчитывать разницу в статах с надетой вещью" -- /rb sum sort L["Sort StatSummary alphabetically"] = "Сортировать статы в алфавитном порядке" L["Enable to sort StatSummary alphabetically, disable to sort according to stat type(basic, physical, spell, tank)"] = "Если включено - то по алфавиту, если выключено, то по смыслу (базовые, физические, заклинания, танковые)" -- /rb sum avoidhasblock L["Include Block Chance In Avoidance Summary"] = "Включать вероятность блока в итоге избежаний" L["Enable to include block chance in Avoidance summary, Disable for only dodge, parry, miss"] = "Включать вероятность блока в итоге избежаний, отключение только для уклона, парирования, промоха" --------------------------------------------------------------------------- -- /rb sum basic L["Stat - Basic"] = "Статы - базовые" L["Choose basic stats for summary"] = "Выбор базовых статов для подсчета" -- /rb sum basic hp L["Sum Health"] = "Здоровье" L["Health <- Health, Stamina"] = "Здоровье, выносливость -> Здоровье" -- /rb sum basic mp L["Sum Mana"] = "Мана" L["Mana <- Mana, Intellect"] = "Мана, интеллект -> Мана" -- /rb sum basic mp5 L["Sum Combat Mana Regen"] = "Восст. маны в бою" L["Combat Mana Regen <- Mana Regen, Spirit"] = "Восстановление маны, дух -> Восстановление маны в бою" -- /rb sum basic mp5oc L["Sum Normal Mana Regen"] = "Восст. маны вне боя" L["Normal Mana Regen <- Spirit"] = "Дух -> Сумма восстановления маны вне боя" -- /rb sum basic hp5 L["Sum Combat Health Regen"] = "Восст. здоровья в бою" L["Combat Health Regen <- Health Regen"] = "Восстановление здоровья -> Восстановление здоровья в бою" -- /rb sum basic hp5oc L["Sum Normal Health Regen"] = "Восст. здоровья вне боя" L["Normal Health Regen <- Spirit"] = "Дух -> Сумма восстановления здоровья вне боя" -- /rb sum basic str L["Sum Strength"] = "Сила" L["Strength Summary"] = "Суммировать силу" -- /rb sum basic agi L["Sum Agility"] = "Ловкость" L["Agility Summary"] = "Суммировать ловкость" -- /rb sum basic sta L["Sum Stamina"] = "Выносливость" L["Stamina Summary"] = "Суммировать выносливость" -- /rb sum basic int L["Sum Intellect"] = "Интеллект" L["Intellect Summary"] = "Суммировать интеллект" -- /rb sum basic spi L["Sum Spirit"] = "Дух" L["Spirit Summary"] = "Суммировать дух" -- /rb sum basic mastery L["Sum Mastery"] = "Искусность" L["Mastery Summary"] = "Суммировать искусность" -- /rb sum basic masteryrating L["Sum Mastery Rating"] = "Рейтинг искусности" L["Mastery Rating Summary"] = "Суммировать рейтинг искусности" --------------------------------------------------------------------------- -- /rb sum physical L["Stat - Physical"] = "Статы - физические" L["Choose physical damage stats for summary"] = "Выбор статов физического урона для подсчета" -- /rb sum physical ap L["Sum Attack Power"] = "Сила атаки" L["Attack Power <- Attack Power, Strength, Agility"] = "Сила атаки, сила, ловкость -> Сила атаки" -- /rb sum physical rap L["Sum Ranged Attack Power"] = "Сила атаки дальнего боя" L["Ranged Attack Power <- Ranged Attack Power, Intellect, Attack Power, Strength, Agility"] = "Сила атаки дальнего боя, интеллект, сила атаки, сила, ловкость -> Сила атаки дальнего боя" -- /rb sum physical fap L["Sum Feral Attack Power"] = "Сила атаки в облике зверя" L["Feral Attack Power <- Feral Attack Power, Attack Power, Strength, Agility"] = "Сила атаки в облике зверя, сила атаки, сила, ловкость -> Сила атаки в облике зверя" -- /rb sum physical hit L["Sum Hit Chance"] = "Вероятность попадания" L["Hit Chance <- Hit Rating"] = "Рейтинг меткости -> Вероятность поподания" -- /rb sum physical hitrating L["Sum Hit Rating"] = "Рейтинг меткости" L["Hit Rating Summary"] = "Суммировать рейтинг меткости" -- /rb sum physical crit L["Sum Crit Chance"] = "Вероятность крит. удара" L["Crit Chance <- Crit Rating, Agility"] = "Рейтинг крит. удара, ловкость -> Вероятность крит. удара" -- /rb sum physical critrating L["Sum Crit Rating"] = "Рейтинг крит. удара" L["Crit Rating Summary"] = "Суммировать рейтинг крит. удара" -- /rb sum physical haste L["Sum Haste"] = "Скорость" L["Haste <- Haste Rating"] = "Рейтинг скорости -> Скорость" -- /rb sum physical hasterating L["Sum Haste Rating"] = "Сумма рейтинга скорости" L["Haste Rating Summary"] = "Суммировать рейтинг скорости" -- /rb sum physical rangedhit L["Sum Ranged Hit Chance"] = "Вероятность поподания в дальнем бою" L["Ranged Hit Chance <- Hit Rating, Ranged Hit Rating"] = "Рейтинг меткости, рейтинг меткости дальнего боя -> Вероятность поподания в дальнем бою" -- /rb sum physical rangedhitrating L["Sum Ranged Hit Rating"] = "Рейтинга меткости дальнего боя" L["Ranged Hit Rating Summary"] = "Суммировать рейтинг меткости дальнего боя" -- /rb sum physical rangedcrit L["Sum Ranged Crit Chance"] = "Вероятность крит. удара в дальнем бою" L["Ranged Crit Chance <- Crit Rating, Agility, Ranged Crit Rating"] = "Рейтинг крита, ловкость, рейтинг крит. удара дальнего боя -> Вероятность крит. удара в дальнем бою" -- /rb sum physical rangedcritrating L["Sum Ranged Crit Rating"] = "Рейтинг крит. удара дальнего боя" L["Ranged Crit Rating Summary"] = "Суммировать рейтинг критического удара в дальнем бою" -- /rb sum physical rangedhaste L["Sum Ranged Haste"] = "Скорость дальнего боя" L["Ranged Haste <- Haste Rating, Ranged Haste Rating"] = "Рейтинг скорости, рейтинг скорости дальнего боя -> Скорость дальнего боя" -- /rb sum physical rangedhasterating L["Sum Ranged Haste Rating"] = "Рейтинг скорости дальнего боя" L["Ranged Haste Rating Summary"] = "Суммировать рейтинг скорости дальнего боя" L["Sum Ignore Armor"] = "Игнорирование брони" L["Ignore Armor Summary"] = "Суммировать игнорирование брони" L["Sum Armor Penetration"] = "Пробивание брони" L["Armor Penetration Summary"] = "Суммировать пробивание брони" L["Sum Armor Penetration Rating"] = "Рейтинг пробивания брони" L["Armor Penetration Rating Summary"] = "Суммировать рейтинг пробивания брони" -- /rb sum physical maxdamage L["Sum Weapon Max Damage"] = "Макс. урон оружия" L["Weapon Max Damage Summary"] = "Суммировать макс. урон оружия" -- /rb sum physical weapondps --L["Sum Weapon DPS"] = "Сумма УВС оружия" --L["Weapon DPS Summary"] = "Суммировать урон в секунду от оружия" -- /rb sum physical wpn L["Sum Weapon Skill"] = "Оружейный навык" L["Weapon Skill <- Weapon Skill Rating"] = "Рейтинг владения оружием -> Оружейный навык" -- /rb sum physical exp L["Sum Expertise"] = "Мастерство" L["Expertise <- Expertise Rating"] = "Рейтинг мастерства -> Мастерство" -- /rb sum physical exprating L["Sum Expertise Rating"] = "Рейтинг мастерства" L["Expertise Rating Summary"] = "Суммировать рейтинг мастерства" --------------------------------------------------------------------------- -- /rb sum spell L["Stat - Spell"] = "Статы - заклинания" L["Choose spell damage and healing stats for summary"] = "Выбор магических статов для подсчета" -- /rb sum spell power L["Sum Spell Power"] = "Сила заклинаний" L["Spell Power <- Spell Power, Intellect, Agility, Strength"] = "Сила заклинаний, интеллект, ловкость, сила -> Сила заклинаний" -- /rb sum spell dmg L["Sum Spell Damage"] = "Сила заклинаний" -- Changed from Damage to Power L["Spell Damage <- Spell Damage, Intellect, Spirit, Stamina"] = "Сила заклинаний, интеллект, дух, выносливость -> Сила заклинаний" -- Changed from Damage to Power -- /rb sum spell dmgholy L["Sum Holy Spell Damage"] = "Урон от светлой магии" L["Holy Spell Damage <- Holy Spell Damage, Spell Damage, Intellect, Spirit"] = "Урон от светлой магии, сила заклинаний, интеллект, дух -> Урон от светлой магии" -- /rb sum spell dmgarcane L["Sum Arcane Spell Damage"] = "Урон от тайной магии" L["Arcane Spell Damage <- Arcane Spell Damage, Spell Damage, Intellect"] = "Урон от тайной магии, сила заклинаний, интеллект -> Урон от тайной магии" -- /rb sum spell dmgfire L["Sum Fire Spell Damage"] = "Урон от огня" L["Fire Spell Damage <- Fire Spell Damage, Spell Damage, Intellect, Stamina"] = "Урон от огня, сила заклинаний, интеллект, выносливость -> Урон от огня" -- /rb sum spell dmgnature L["Sum Nature Spell Damage"] = "Урон от сил природы" L["Nature Spell Damage <- Nature Spell Damage, Spell Damage, Intellect"] = "Урон от сил природы, сила заклинаний, интеллект -> Урон от сил природы" -- /rb sum spell dmgfrost L["Sum Frost Spell Damage"] = "Урон от магии льда" L["Frost Spell Damage <- Frost Spell Damage, Spell Damage, Intellect"] = "Урон от магии льда, сила заклинаний, интеллект -> Урон от магии льда" -- /rb sum spell dmgshadow L["Sum Shadow Spell Damage"] = "Урон от темной магии" L["Shadow Spell Damage <- Shadow Spell Damage, Spell Damage, Intellect, Spirit, Stamina"] = "Урон от темной магии, сила заклинаний, интеллект, дух, выносливость -> Урон от темной магии" -- /rb sum spell heal L["Sum Healing"] = "Исцеление" L["Healing <- Healing, Intellect, Spirit, Agility, Strength"] = "Исцеление, интеллект, дух, ловкость, сила -> Исцеление" -- /rb sum spell crit L["Sum Spell Crit Chance"] = "Вероятность крит. удара заклинаниями" L["Spell Crit Chance <- Spell Crit Rating, Intellect"] = "Рейтинг крит. удара заклинаниями, интеллект -> Вероятность крит. удара заклинаниями" -- /rb sum spell hit L["Sum Spell Hit Chance"] = "Вероятность поподания заклинаниями" L["Spell Hit Chance <- Spell Hit Rating"] = "Рейтинг меткости заклинаний -> Вероятность поподания заклинаниями" -- /rb sum spell haste L["Sum Spell Haste"] = "Скорость заклинаний" L["Spell Haste <- Spell Haste Rating"] = "Рейтинг скорости заклинаний -> Скорость заклинаний" -- /rb sum spell pen L["Sum Penetration"] = "Проникающая способность" L["Spell Penetration Summary"] = "Суммировать проникающую способность заклинаний" -- /rb sum spell hitrating L["Sum Spell Hit Rating"] = "Рейтинг меткости заклинаний" L["Spell Hit Rating Summary"] = "Суммировать рейтинг меткости заклинаний" -- /rb sum spell critrating L["Sum Spell Crit Rating"] = "Рейтинг крит. удара заклинаниями" L["Spell Crit Rating Summary"] = "Суммировать рейтинг крит. удара заклинаниями" -- /rb sum spell hasterating L["Sum Spell Haste Rating"] = "Рейтинг скорости заклинаний" L["Spell Haste Rating Summary"] = "Суммировать рейтинг скорости заклинаний" --------------------------------------------------------------------------- -- /rb sum tank L["Stat - Tank"] = "Статы - танк" L["Choose tank stats for summary"] = "Выбор танковских статов для подсчета" -- /rb sum tank armor L["Sum Armor"] = "Броня" L["Armor <- Armor from items and bonuses"] = "Броня с одежды и бонусов -> Броня" -- /rb sum tank dodge L["Sum Dodge Chance"] = "Вероятность уклонения" L["Dodge Chance <- Dodge Rating, Agility"] = "Рейтинг уклонения, ловкость -> Вероятность уклонения" -- /rb sum tank parry L["Sum Parry Chance"] = "Вероятность парирования" L["Parry Chance <- Parry Rating"] = "Рейтинг парирования -> Вероятность парирования" -- /rb sum tank block L["Sum Block Chance"] = "Вероятность блокирования" L["Block Chance <- Block Rating"] = "Рейтинг блокирования -> Вероятность блокирования" -- /rb sum tank neglectdodge L["Sum Dodge Neglect"] = "Сумма игнорирования уклонения" L["Dodge Neglect <- Expertise"] = "Игнорирование уклонения <- Мастерство" -- /rb sum tank neglectparry L["Sum Parry Neglect"] = "Сумма игнорирования парирования" L["Parry Neglect <- Expertise"] = "Игнорирование парирования <- Мастерство" -- /rb sum tank resarcane L["Sum Arcane Resistance"] = "Сумма защиты от тайной магии" L["Arcane Resistance Summary"] = "Суммировать сопротивление тайной магии" -- /rb sum tank resfire L["Sum Fire Resistance"] = "Сумма защиты от огня" L["Fire Resistance Summary"] = "Суммировать сопротивление огню" -- /rb sum tank resnature L["Sum Nature Resistance"] = "Сумма защиты от магии природы" L["Nature Resistance Summary"] = "Суммировать сопротивление силам природы" -- /rb sum tank resfrost L["Sum Frost Resistance"] = "Сумма защиты от магии льда" L["Frost Resistance Summary"] = "Суммировать сопротивление магии льда" -- /rb sum tank resshadow L["Sum Shadow Resistance"] = "Сумма защиты от темной магии" L["Shadow Resistance Summary"] = "Суммировать сопротивление темной магии" -- /rb sum tank dodgerating L["Sum Dodge Rating"] = "Сумма рейтинга уклонения" L["Dodge Rating Summary"] = "Суммировать рейтинг уклонения" -- /rb sum tank parryrating L["Sum Parry Rating"] = "Сумма рейтинга парирования" L["Parry Rating Summary"] = "Суммировать рейтинг парирования" -- /rb sum tank blockrating L["Sum Block Rating"] = "Сумма рейтинга блока" L["Block Rating Summary"] = "Суммировать рейтинг блока" -- /rb sum tank res L["Sum Resilience"] = "Сумма устойчивости" L["Resilience Summary"] = "Суммировать устойчивость" -- /rb sum tank tp L["Sum TankPoints"] = "Самма TankPoints" L["TankPoints <- Health, Total Reduction"] ="TankPoints <- Здоровье, Общее Cнижение" -- /rb sum tank tr L["Sum Total Reduction"] = "Самма общего снижения" L["Total Reduction <- Armor, Dodge, Parry, Block, MobMiss, MobCrit, MobCrush, DamageTakenMods"] = "Общее снижение <- Броня, Уклонение, Парирование, Блок, ПромахСущества, КритСущества, MobCrush, DamageTakenMods" -- /rb sum tank avoid L["Sum Avoidance"] = "Сумма уклонения от удара" L["Avoidance <- Dodge, Parry, MobMiss, Block(Optional)"] = "Уклонение от удара <- Уклонение, Парирование, ПромахСущества, Блок(дополнительный)" --------------------------------------------------------------------------- -- /rb sum gemset L["Gem Set"] = "Набор самоцветов" L["Select a gem set to configure"] = "Для настройки выберите набор самоцветов" L["Default Gem Set 1"] = "Набор по умолчанию 1" L["Default Gem Set 2"] = "Набор по умолчанию 2" L["Default Gem Set 3"] = "Набор по умолчанию 3" -- /rb sum gem L["Auto fill empty gem slots"] = "Автозаполнение пустых слотов" -- /rb sum gem red L["Red Socket"] = EMPTY_SOCKET_RED L["ItemID or Link of the gem you would like to auto fill"] = "ID предмета или ссылка на самоцвет, кторым вы хотите автозаполнять слоты" L[""] = "" L["|cffffff7f%s|r is now set to |cffffff7f[%s]|r"] = "|cffffff7f%s|r в настоящее время установлена на |cffffff7f[%s]|r" L["Invalid input: %s. ItemID or ItemLink required."] = "Ошибочный ввод: %s. Требуется ID предмета либо ссылка." L["Queried server for Gem: %s. Try again in 5 secs."] = "Запрос у сервера самоцвета: %s. Повторная попытка через 5 сек." -- /rb sum gem yellow L["Yellow Socket"] = EMPTY_SOCKET_YELLOW -- /rb sum gem blue L["Blue Socket"] = EMPTY_SOCKET_BLUE -- /rb sum gem meta L["Meta Socket"] = EMPTY_SOCKET_META -- /rb sum gem2 L["Second set of default gems which can be toggled with a modifier key"] = "Второй набор самоцветов по умолчанию который может быть переключен с помощью клавиш" L["Can't use the same modifier as Gem Set 3"] = "Нельзя использовать теже клавиши что и у набора самоцветов 3" -- /rb sum gem2 key L["Toggle Key"] = "Клавиша переключения" L["Use this key to toggle alternate gems"] = "Используйте данную клавишу для переключения альтернативных самоцветов" -- /rb sum gem3 L["Third set of default gems which can be toggled with a modifier key"] = "Третий набор самоцветов по умолчанию который может быть переключен с помощью клавиш" L["Can't use the same modifier as Gem Set 2"] = "Нельзя использовать теже клавиши что и у набора самоцветов 2" ----------------------- -- Item Level and ID -- ----------------------- L["ItemLevel: "] = "Уровень предмета: " L["ItemID: "] = "ID предмета: " ----------------------- -- Matching Patterns -- ----------------------- -- Items to check -- -------------------- -- [Potent Ornate Topaz] -- +6 Spell Damage, +5 Spell Crit Rating -------------------- -- ZG enchant -- +10 Defense Rating/+10 Stamina/+15 Block Value -------------------- -- [Glinting Flam Spessarite] -- +3 Hit Rating and +3 Agility -------------------- -- ItemID: 22589 -- [Atiesh, Greatstaff of the Guardian] warlock version -- Equip: Increases the spell critical strike rating of all party members within 30 yards by 28. -------------------- -- [Brilliant Wizard Oil] -- Use: While applied to target weapon it increases spell damage by up to 36 and increases spell critical strike rating by 14 . Lasts for 30 minutes. ---------------------------------------------------------------------------------------------------- -- I redesigned the tooltip scanner using a more locale friendly, 2 pass matching matching algorithm. -- -- The first pass searches for the rating number, the patterns are read from L["numberPatterns"] here, -- " by (%d+)" will match strings like: "Increases defense rating by 16." -- "%+(%d+)" will match strings like: "+10 Defense Rating" -- You can add additional patterns if needed, its not limited to 2 patterns. -- The separators are a table of strings used to break up a line into multiple lines what will be parsed seperately. -- For example "+3 Hit Rating, +5 Spell Crit Rating" will be split into "+3 Hit Rating" and " +5 Spell Crit Rating" -- -- The second pass searches for the rating name, the names are read from L["statList"] here, -- It will look through the table in order, so you can put common strings at the begining to speed up the search, -- and longer strings should be listed first, like "spell critical strike" should be listed before "critical strike", -- this way "spell critical strike" does get matched by "critical strike". -- Strings need to be in lower case letters, because string.lower is called on lookup -- -- IMPORTANT: there may not exist a one-to-one correspondence, meaning you can't just translate this file, -- but will need to go in game and find out what needs to be put in here. -- For example, in english I found 3 different strings that maps to CR_CRIT_MELEE: "critical strike", "critical hit" and "crit". -- You will need to find out every string that represents CR_CRIT_MELEE, and so on. -- In other languages there may be 5 different strings that should all map to CR_CRIT_MELEE. -- so please check in game that you have all strings, and not translate directly off this table. -- -- Tip1: When doing localizations, I recommend you set debugging to true in RatingBuster.lua -- Find RatingBuster:SetDebugging(false) and change it to RatingBuster:SetDebugging(true) -- or you can type /rb debug to enable it in game -- -- Tip2: The strings are passed into string.find, so you should escape the magic characters ^$()%.[]*+-? with a % L["numberPatterns"] = { {pattern = " на (%d+)%f[^%d%%]", addInfo = "AfterNumber", space = " ", }, {pattern = "([%+%-]%d+)%f[^%d%%] к", addInfo = "AfterStat",}, {pattern = " увеличена на (%d+)", addInfo = "AfterNumber", space = " ", }, {pattern = "(%d+) к ", addInfo = "AfterNumber", space = " ", }, -- тест {pattern = "увеличение (%d+)", addInfo = "AfterNumber", space = " ", }, -- for "grant you xx stat" type pattern, ex: Quel'Serrar, Assassination Armor set {pattern = "дополнительно (%d+)", addInfo = "AfterNumber", space = " ", }, -- for "add xx stat" type pattern, ex: Adamantite Sharpening Stone -- Added [^%%] so that it doesn't match strings like "Increases healing by up to 10% of your total Intellect." [Whitemend Pants] ID: 24261 -- Added [^|] so that it doesn't match enchant strings (JewelTips) {pattern = "на (%d+)([^%d%%|]+)", addInfo = "AfterNumber", space = " ", }, -- [發光的暗影卓奈石] +6法術傷害及5耐力 } L["separators"] = { "/", " и ", ",", "%. ", " для ", "&", ":", -- Fix for [Mirror of Truth] -- Equip: Chance on melee and ranged critical strike to increase your attack power by 1000 for 10 secs. -- 1000 was falsely detected detected as ranged critical strike "повысить вашу", } --[[ Rating ID CR_WEAPON_SKILL = 1; CR_DEFENSE_SKILL = 2; CR_DODGE = 3; CR_PARRY = 4; CR_BLOCK = 5; CR_HIT_MELEE = 6; CR_HIT_RANGED = 7; CR_HIT_SPELL = 8; CR_CRIT_MELEE = 9; CR_CRIT_RANGED = 10; CR_CRIT_SPELL = 11; CR_HIT_TAKEN_MELEE = 12; CR_HIT_TAKEN_RANGED = 13; CR_HIT_TAKEN_SPELL = 14; COMBAT_RATING_RESILIENCE_CRIT_TAKEN = 15; COMBAT_RATING_RESILIENCE_PLAYER_DAMAGE_TAKEN = 16; CR_CRIT_TAKEN_SPELL = 17; CR_HASTE_MELEE = 18; CR_HASTE_RANGED = 19; CR_HASTE_SPELL = 20; CR_WEAPON_SKILL_MAINHAND = 21; CR_WEAPON_SKILL_OFFHAND = 22; CR_WEAPON_SKILL_RANGED = 23; CR_EXPERTISE = 24; -- SPELL_STAT1_NAME = "Strength" SPELL_STAT2_NAME = "Agility" SPELL_STAT3_NAME = "Stamina" SPELL_STAT4_NAME = "Intellect" SPELL_STAT5_NAME = "Spirit" --]] -- для русской локализации надо указывать все используемые склонения рейтингов (рейтинг, рейтинга, -- рейтингу) т.к. иначе распознавание не работает. -- L["statList"] = { {pattern = string.lower("Силе атаки"), id = SPELL_STAT1115_NAME}, --чтобы Сила атаки и сила заклинаний не распознавалась как Сила {pattern = string.lower("Сила атаки"), id = SPELL_STAT1115_NAME}, -- строки SPELL_STAT1115_NAME должны быть впереди {pattern = string.lower("Силу атаки"), id = SPELL_STAT1115_NAME}, {pattern = string.lower("Сила заклинаний"), id = SPELL_STAT1115_NAME}, {pattern = string.lower("Силу заклинаний"), id = SPELL_STAT1115_NAME}, {pattern = string.lower("Силе заклинаний"), id = SPELL_STAT1115_NAME}, -- конец левых строчек {pattern = string.lower(SPELL_STAT1_NAME), id = SPELL_STAT1_NAME}, -- Strength {pattern = "силу", id = SPELL_STAT1_NAME}, -- Strength {pattern = "силе", id = SPELL_STAT1_NAME}, -- Strength {pattern = string.lower(SPELL_STAT2_NAME), id = SPELL_STAT2_NAME}, -- Agility {pattern = "ловкости", id = SPELL_STAT2_NAME}, -- Agility {pattern = string.lower(SPELL_STAT3_NAME), id = SPELL_STAT3_NAME}, -- Stamina {pattern = "выносливости", id = SPELL_STAT3_NAME}, -- Stamina {pattern = "интеллекту", id = SPELL_STAT4_NAME}, -- Intellect {pattern = string.lower(SPELL_STAT4_NAME), id = SPELL_STAT4_NAME}, -- Intellect {pattern = "духу", id = SPELL_STAT5_NAME}, -- Spirit {pattern = string.lower(SPELL_STAT5_NAME), id = SPELL_STAT5_NAME}, -- Spirit {pattern = "рейтинг защиты", id = CR_DEFENSE_SKILL}, {pattern = "рейтингу защиты", id = CR_DEFENSE_SKILL}, {pattern = "рейтинга защиты", id = CR_DEFENSE_SKILL}, {pattern = "рейтинг уклонения", id = CR_DODGE}, {pattern = "рейтингу уклонения", id = CR_DODGE}, {pattern = "рейтинга уклонения", id = CR_DODGE}, {pattern = "рейтинг блокирования щитом", id = CR_BLOCK}, -- block enchant: "+10 Shield Block Rating" {pattern = "рейтинга блокирования щитом", id = CR_BLOCK}, {pattern = "рейтингу блокирования щитом", id = CR_BLOCK}, {pattern = "увеличение рейтинга блокирования щита на", id = CR_BLOCK}, {pattern = "рейтинг блока", id = CR_BLOCK}, {pattern = "рейтинга блока", id = CR_BLOCK}, {pattern = "рейтингу блока", id = CR_BLOCK}, {pattern = "рейтинг парирования", id = CR_PARRY}, {pattern = "рейтинга парирования", id = CR_PARRY}, {pattern = "рейтингу парирования", id = CR_PARRY}, {pattern = "рейтинг критического удара %(заклинания%)", id = CR_CRIT_SPELL}, {pattern = "рейтингу критического удара %(заклинания%)", id = CR_CRIT_SPELL}, {pattern = "рейтинга критического удара %(заклинания%)", id = CR_CRIT_SPELL}, {pattern = "рейтинга критического удара заклинаниями", id = CR_CRIT_SPELL}, {pattern = "рейтингу критического удара заклинаниями", id = CR_CRIT_SPELL}, {pattern = "рейтинг критического удара заклинаниями", id = CR_CRIT_SPELL}, {pattern = "критический удар %(заклинания%)", id = CR_CRIT_SPELL}, {pattern = "меткость %(заклинания%)", id = CR_HIT_SPELL}, {pattern = "к критическому удару в дальнем бою", id = CR_CRIT_RANGED}, -- [Heartseeker Scope] {pattern = "рейтинг критического удара", id = CR_CRIT}, {pattern = "рейтинг критического эффекта", id = CR_CRIT}, {pattern = "рейтингу критического удара", id = CR_CRIT}, {pattern = "рейтинга критического удара", id = CR_CRIT}, {pattern = "рейтинг крит. удара оруж. ближнего боя", id = CR_CRIT_MELEE}, {pattern = "рейтинг меткости %(заклинания%)", id = CR_HIT_SPELL}, {pattern = "рейтингу меткости %(заклинания%)", id = CR_HIT_SPELL}, {pattern = "рейтинга меткости %(заклинания%)", id = CR_HIT_SPELL}, {pattern = "рейтинга меткости заклинаний", id = CR_HIT_SPELL}, {pattern = "рейтингу меткости заклинаний", id = CR_HIT_SPELL}, {pattern = "Рейтинг меткости (оруж. дальн. боя)", id = CR_HIT_RANGED}, {pattern = "рейтинга нанесения удара ближнего боя", id = CR_HIT_MELEE}, {pattern = "рейтинг меткости", id = CR_HIT}, {pattern = "рейтинга меткости", id = CR_HIT}, {pattern = "рейтингу меткости", id = CR_HIT}, {pattern = "рейтинг устойчивости", id = COMBAT_RATING_RESILIENCE_PLAYER_DAMAGE_TAKEN}, -- resilience is implicitly a rating {pattern = "рейтингу устойчивости", id = COMBAT_RATING_RESILIENCE_PLAYER_DAMAGE_TAKEN}, {pattern = "рейтинга устойчивости", id = COMBAT_RATING_RESILIENCE_PLAYER_DAMAGE_TAKEN}, {pattern = "рейтинг скорости %(заклинания%)", id = CR_HASTE_SPELL}, {pattern = "рейтингу скорости %(заклинания%)", id = CR_HASTE_SPELL}, {pattern = "рейтинга скорости %(заклинания%)", id = CR_HASTE_SPELL}, {pattern = "скорости наложения заклинаний", id = CR_HASTE_SPELL}, {pattern = "скорость наложения заклинаний", id = CR_HASTE_SPELL}, {pattern = "рейтинг скорости дальнего боя", id = CR_HASTE_RANGED}, {pattern = "рейтингу скорости дальнего боя", id = CR_HASTE_RANGED}, {pattern = "рейтинга скорости дальнего боя", id = CR_HASTE_RANGED}, {pattern = "рейтинг скорости", id = CR_HASTE}, {pattern = "рейтингу скорости", id = CR_HASTE}, {pattern = "рейтинга скорости", id = CR_HASTE}, {pattern = "рейтинг мастерства", id = CR_EXPERTISE}, {pattern = "рейтингу мастерства", id = CR_EXPERTISE}, {pattern = "рейтинга мастерства", id = CR_EXPERTISE}, {pattern = "рейтинг пробивания брони", id = CR_ARMOR_PENETRATION}, {pattern = "рейтингу пробивания брони", id = CR_ARMOR_PENETRATION}, {pattern = "рейтинга пробивания брони", id = CR_ARMOR_PENETRATION}, {pattern = string.lower(ARMOR), id = ARMOR}, {pattern = "рейтинг искусности", id = CR_MASTERY}, {pattern = "рейтингу искусности", id = CR_MASTERY}, {pattern = "рейтинга искусности", id = CR_MASTERY}, } ------------------------- -- Added info patterns -- ------------------------- -- $value will be replaced with the number -- EX: "$value% Crit" -> "+1.34% Crit" -- EX: "Crit $value%" -> "Crit +1.34%" L["$value% Crit"] = "$value% к вер. крит. удара" L["$value% Spell Crit"] = "$value% к вер. крит. удара" L["$value% Dodge"] = "$value% к вер. уклонения" L["$value HP"] = "$value к здоровью" L["$value MP"] = "$value к мане" L["$value AP"] = "$value к силе атаки" L["$value RAP"] = "$value к силе атаки дал. боя" L["$value Spell Dmg"] = "$value к силе заклинаний" L["$value Heal"] = "$value к исцелению" L["$value Armor"] = "$value к броне" L["$value Block"] = "$value% к вер. блокирования" L["$value MP5"] = "$value маны раз в 5 сек." L["$value MP5(OC)"] = "$value маны раз в 5 сек. (вне боя)" L["$value MP5(NC)"] = "$value маны раз в 5 сек. (вне каста)" L["$value HP5"] = "$value здоровья раз в 5 сек." L["$value to be Dodged/Parried"] = "$value% к вер. уклонения/парирования" L["$value to be Crit"] = "$value% к вер. получения крит. удара" L["$value Crit Dmg Taken"] = "$value к получ. крит. урону" L["$value DOT Dmg Taken"] = "$value к получ. урону от ДоТ" L["$value Parry"] = "$value к вер. парирования" -- for hit rating showing both physical and spell conversions -- (+1.21%, S+0.98%) -- (+1.21%, +0.98% S) L["$value Spell"] = "$value к силе заклинаний" L["$value Spell Hit"] = "$value к меткости заклинаний" L["$value% Parry"] = "$value% к вер. парирования" -- for hit rating showing both physical and spell conversions -- (+1.21%, S+0.98%) -- (+1.21%, +0.98% S) L["$value Spell"] = "$value к силе заклинаний" ------------------ -- Stat Summary -- ------------------ L["Stat Summary"] = "Итого:" ```
raethkcj commented 2 years ago

Thanks! I've added your translations in version 1.5.10.

I moved a couple of things around and I believe I spotted all the differences from when you had to merge your changes.

Thanks for pointing out that Blizzard added their own stat comparison; I've added an option to hide it that's enabled by default.

You were correct to fix those capitalizations; I'm not sure how they got out of sync but thanks for fixing them!

There were some places in StatLogic where you added {"MELEE_HIT_RATING", "RANGED_HIT_RATING", "SPELL_HIT_RATING",},. For ratings that are generic like this, you can just use the style {"HIT_RATING"}, and it will choose the right ones to convert to per expansion (it's different in TBC and Wrath). Keep this in mind if you make changes to Crit or Haste.

Also just a minor note, when Exclude patterns are rare or only show up on one item, like on Corrupted Ashbringer, it can be okay to just leave them missing. Adding the pattern will just make RatingBuster process that items tooltip slightly faster, but will add a small amount of memory usage for everyone who does not have the item. Since you added it, I left it in, just something to keep in mind.

I'm not sure what caused your Summary to disappear; it's possible you were missing a bracket } or comma ,. If it's still broken, you're probably getting a lua error and I'll investigate further.

Mard35 commented 2 years ago

WoWScrnShot_110122_015608 Hello, why armor is converted to x2 attack power in russian locale? The word "усиление" doesn't mean strength here.