/** * Canonical 1.13c Gems & Runes Data Table and Sockets Specification. * * Gold standard reference: * - 1.13c MPQ data\\global\\excel\\Gems.txt * - 1.13c MPQ data\\global\\excel\\Misc.txt (levelreq) * - 1.13c MPQ data\\local\\lng\\eng\\patchstring.tbl * * Tooltip structure: * - Title: Item Name (White for Gems, Orange for Runes) * - Subtitle / Instruction: "Can be Inserted into Socketed Items" ("可镶嵌进有凹槽的装备") * - Slot Lines (White): * Weapons: * Armor: * Helms: * Shields: * - Bottom Line (Red): "Required Level: " ("需要等级: ") */ export interface SocketableSlotInfo { readonly weaponsEn: string readonly weaponsZh: string readonly armorEn: string readonly armorZh: string readonly helmsEn: string readonly helmsZh: string readonly shieldsEn: string readonly shieldsZh: string } export interface GemInfo extends SocketableSlotInfo { readonly code: string readonly nameEn: string readonly nameZh: string readonly gemType: 'amethyst' | 'topaz' | 'sapphire' | 'emerald' | 'ruby' | 'diamond' | 'skull' readonly tier: number readonly reqLevel: number } export interface RuneInfo extends SocketableSlotInfo { readonly code: string readonly num: number readonly letter: string readonly nameEn: string readonly nameZh: string readonly reqLevel: number /** Legacy compatibility alias for weaponsEn */ readonly weapon?: string /** Legacy compatibility alias for armorEn */ readonly armor?: string } export const GEM_INFO: Record = { "gcv": { "code": "gcv", "nameEn": "Chipped Amethyst", "nameZh": "碎裂的紫水晶", "gemType": "amethyst", "tier": 1, "reqLevel": 1, "weaponsEn": "+40 to Attack Rating", "weaponsZh": "+40 准确率", "armorEn": "+3 to Strength", "armorZh": "+3 力量", "helmsEn": "+3 to Strength", "helmsZh": "+3 力量", "shieldsEn": "+8 Defense", "shieldsZh": "+8 防御" }, "gfv": { "code": "gfv", "nameEn": "Flawed Amethyst", "nameZh": "裂开的紫水晶", "gemType": "amethyst", "tier": 2, "reqLevel": 5, "weaponsEn": "+60 to Attack Rating", "weaponsZh": "+60 准确率", "armorEn": "+4 to Strength", "armorZh": "+4 力量", "helmsEn": "+4 to Strength", "helmsZh": "+4 力量", "shieldsEn": "+12 Defense", "shieldsZh": "+12 防御" }, "gsv": { "code": "gsv", "nameEn": "Amethyst", "nameZh": "紫水晶", "gemType": "amethyst", "tier": 3, "reqLevel": 12, "weaponsEn": "+80 to Attack Rating", "weaponsZh": "+80 准确率", "armorEn": "+6 to Strength", "armorZh": "+6 力量", "helmsEn": "+6 to Strength", "helmsZh": "+6 力量", "shieldsEn": "+18 Defense", "shieldsZh": "+18 防御" }, "gzv": { "code": "gzv", "nameEn": "Flawless Amethyst", "nameZh": "无瑕疵的紫水晶", "gemType": "amethyst", "tier": 4, "reqLevel": 15, "weaponsEn": "+100 to Attack Rating", "weaponsZh": "+100 准确率", "armorEn": "+8 to Strength", "armorZh": "+8 力量", "helmsEn": "+8 to Strength", "helmsZh": "+8 力量", "shieldsEn": "+24 Defense", "shieldsZh": "+24 防御" }, "gpv": { "code": "gpv", "nameEn": "Perfect Amethyst", "nameZh": "完美的紫水晶", "gemType": "amethyst", "tier": 5, "reqLevel": 18, "weaponsEn": "+150 to Attack Rating", "weaponsZh": "+150 准确率", "armorEn": "+10 to Strength", "armorZh": "+10 力量", "helmsEn": "+10 to Strength", "helmsZh": "+10 力量", "shieldsEn": "+30 Defense", "shieldsZh": "+30 防御" }, "gcy": { "code": "gcy", "nameEn": "Chipped Topaz", "nameZh": "碎裂的黄宝石", "gemType": "topaz", "tier": 1, "reqLevel": 1, "weaponsEn": "Adds 1-8 Lightning Damage", "weaponsZh": "增加 1-8 闪电伤害", "armorEn": "9% Better Chance of Getting Magic Items", "armorZh": "9% 获得魔法装备几率", "helmsEn": "9% Better Chance of Getting Magic Items", "helmsZh": "9% 获得魔法装备几率", "shieldsEn": "Lightning Resist +12%", "shieldsZh": "抗电 +12%" }, "gfy": { "code": "gfy", "nameEn": "Flawed Topaz", "nameZh": "裂开的黄宝石", "gemType": "topaz", "tier": 2, "reqLevel": 5, "weaponsEn": "Adds 1-14 Lightning Damage", "weaponsZh": "增加 1-14 闪电伤害", "armorEn": "13% Better Chance of Getting Magic Items", "armorZh": "13% 获得魔法装备几率", "helmsEn": "13% Better Chance of Getting Magic Items", "helmsZh": "13% 获得魔法装备几率", "shieldsEn": "Lightning Resist +16%", "shieldsZh": "抗电 +16%" }, "gsy": { "code": "gsy", "nameEn": "Topaz", "nameZh": "黄宝石", "gemType": "topaz", "tier": 3, "reqLevel": 12, "weaponsEn": "Adds 1-22 Lightning Damage", "weaponsZh": "增加 1-22 闪电伤害", "armorEn": "16% Better Chance of Getting Magic Items", "armorZh": "16% 获得魔法装备几率", "helmsEn": "16% Better Chance of Getting Magic Items", "helmsZh": "16% 获得魔法装备几率", "shieldsEn": "Lightning Resist +22%", "shieldsZh": "抗电 +22%" }, "gly": { "code": "gly", "nameEn": "Flawless Topaz", "nameZh": "无瑕疵的黄宝石", "gemType": "topaz", "tier": 4, "reqLevel": 15, "weaponsEn": "Adds 1-30 Lightning Damage", "weaponsZh": "增加 1-30 闪电伤害", "armorEn": "20% Better Chance of Getting Magic Items", "armorZh": "20% 获得魔法装备几率", "helmsEn": "20% Better Chance of Getting Magic Items", "helmsZh": "20% 获得魔法装备几率", "shieldsEn": "Lightning Resist +28%", "shieldsZh": "抗电 +28%" }, "gpy": { "code": "gpy", "nameEn": "Perfect Topaz", "nameZh": "完美的黄宝石", "gemType": "topaz", "tier": 5, "reqLevel": 18, "weaponsEn": "Adds 1-40 Lightning Damage", "weaponsZh": "增加 1-40 闪电伤害", "armorEn": "24% Better Chance of Getting Magic Items", "armorZh": "24% 获得魔法装备几率", "helmsEn": "24% Better Chance of Getting Magic Items", "helmsZh": "24% 获得魔法装备几率", "shieldsEn": "Lightning Resist +40%", "shieldsZh": "抗电 +40%" }, "gcb": { "code": "gcb", "nameEn": "Chipped Sapphire", "nameZh": "碎裂的蓝宝石", "gemType": "sapphire", "tier": 1, "reqLevel": 1, "weaponsEn": "Adds 1-3 Cold Damage - 1 sec Duration", "weaponsZh": "增加 1-3 冰冻伤害 (持续 1 秒)", "armorEn": "+10 to Mana", "armorZh": "+10 法力", "helmsEn": "+10 to Mana", "helmsZh": "+10 法力", "shieldsEn": "Cold Resist +12%", "shieldsZh": "抗寒 +12%" }, "gfb": { "code": "gfb", "nameEn": "Flawed Sapphire", "nameZh": "裂开的蓝宝石", "gemType": "sapphire", "tier": 2, "reqLevel": 5, "weaponsEn": "Adds 3-5 Cold Damage - 1.4 sec Duration", "weaponsZh": "增加 3-5 冰冻伤害 (持续 1.4 秒)", "armorEn": "+17 to Mana", "armorZh": "+17 法力", "helmsEn": "+17 to Mana", "helmsZh": "+17 法力", "shieldsEn": "Cold Resist +16%", "shieldsZh": "抗寒 +16%" }, "gsb": { "code": "gsb", "nameEn": "Sapphire", "nameZh": "蓝宝石", "gemType": "sapphire", "tier": 3, "reqLevel": 12, "weaponsEn": "Adds 4-7 Cold Damage - 2 sec Duration", "weaponsZh": "增加 4-7 冰冻伤害 (持续 2 秒)", "armorEn": "+24 to Mana", "armorZh": "+24 法力", "helmsEn": "+24 to Mana", "helmsZh": "+24 法力", "shieldsEn": "Cold Resist +22%", "shieldsZh": "抗寒 +22%" }, "glb": { "code": "glb", "nameEn": "Flawless Sapphire", "nameZh": "无瑕疵的蓝宝石", "gemType": "sapphire", "tier": 4, "reqLevel": 15, "weaponsEn": "Adds 6-10 Cold Damage - 2.4 sec Duration", "weaponsZh": "增加 6-10 冰冻伤害 (持续 2.4 秒)", "armorEn": "+31 to Mana", "armorZh": "+31 法力", "helmsEn": "+31 to Mana", "helmsZh": "+31 法力", "shieldsEn": "Cold Resist +28%", "shieldsZh": "抗寒 +28%" }, "gpb": { "code": "gpb", "nameEn": "Perfect Sapphire", "nameZh": "完美的蓝宝石", "gemType": "sapphire", "tier": 5, "reqLevel": 18, "weaponsEn": "Adds 10-14 Cold Damage - 3 sec Duration", "weaponsZh": "增加 10-14 冰冻伤害 (持续 3 秒)", "armorEn": "+38 to Mana", "armorZh": "+38 法力", "helmsEn": "+38 to Mana", "helmsZh": "+38 法力", "shieldsEn": "Cold Resist +40%", "shieldsZh": "抗寒 +40%" }, "gcg": { "code": "gcg", "nameEn": "Chipped Emerald", "nameZh": "碎裂的绿宝石", "gemType": "emerald", "tier": 1, "reqLevel": 1, "weaponsEn": "+10 Poison Damage Over 3 Seconds", "weaponsZh": "在 3 秒内造成 10 点毒素伤害", "armorEn": "+3 to Dexterity", "armorZh": "+3 敏捷", "helmsEn": "+3 to Dexterity", "helmsZh": "+3 敏捷", "shieldsEn": "Poison Resist +12%", "shieldsZh": "抗毒 +12%" }, "gfg": { "code": "gfg", "nameEn": "Flawed Emerald", "nameZh": "裂开的绿宝石", "gemType": "emerald", "tier": 2, "reqLevel": 5, "weaponsEn": "+20 Poison Damage Over 4 Seconds", "weaponsZh": "在 4 秒内造成 20 点毒素伤害", "armorEn": "+4 to Dexterity", "armorZh": "+4 敏捷", "helmsEn": "+4 to Dexterity", "helmsZh": "+4 敏捷", "shieldsEn": "Poison Resist +16%", "shieldsZh": "抗毒 +16%" }, "gsg": { "code": "gsg", "nameEn": "Emerald", "nameZh": "绿宝石", "gemType": "emerald", "tier": 3, "reqLevel": 12, "weaponsEn": "+40 Poison Damage Over 5 Seconds", "weaponsZh": "在 5 秒内造成 40 点毒素伤害", "armorEn": "+6 to Dexterity", "armorZh": "+6 敏捷", "helmsEn": "+6 to Dexterity", "helmsZh": "+6 敏捷", "shieldsEn": "Poison Resist +22%", "shieldsZh": "抗毒 +22%" }, "glg": { "code": "glg", "nameEn": "Flawless Emerald", "nameZh": "无瑕疵的绿宝石", "gemType": "emerald", "tier": 4, "reqLevel": 15, "weaponsEn": "+60 Poison Damage Over 6 Seconds", "weaponsZh": "在 6 秒内造成 60 点毒素伤害", "armorEn": "+8 to Dexterity", "armorZh": "+8 敏捷", "helmsEn": "+8 to Dexterity", "helmsZh": "+8 敏捷", "shieldsEn": "Poison Resist +28%", "shieldsZh": "抗毒 +28%" }, "gpg": { "code": "gpg", "nameEn": "Perfect Emerald", "nameZh": "完美的绿宝石", "gemType": "emerald", "tier": 5, "reqLevel": 18, "weaponsEn": "+100 Poison Damage Over 7 Seconds", "weaponsZh": "在 7 秒内造成 100 点毒素伤害", "armorEn": "+10 to Dexterity", "armorZh": "+10 敏捷", "helmsEn": "+10 to Dexterity", "helmsZh": "+10 敏捷", "shieldsEn": "Poison Resist +40%", "shieldsZh": "抗毒 +40%" }, "gcr": { "code": "gcr", "nameEn": "Chipped Ruby", "nameZh": "碎裂的红宝石", "gemType": "ruby", "tier": 1, "reqLevel": 1, "weaponsEn": "Adds 3-4 Fire Damage", "weaponsZh": "增加 3-4 火焰伤害", "armorEn": "+10 to Life", "armorZh": "+10 生命", "helmsEn": "+10 to Life", "helmsZh": "+10 生命", "shieldsEn": "Fire Resist +12%", "shieldsZh": "抗火 +12%" }, "gfr": { "code": "gfr", "nameEn": "Flawed Ruby", "nameZh": "裂开的红宝石", "gemType": "ruby", "tier": 2, "reqLevel": 5, "weaponsEn": "Adds 5-8 Fire Damage", "weaponsZh": "增加 5-8 火焰伤害", "armorEn": "+17 to Life", "armorZh": "+17 生命", "helmsEn": "+17 to Life", "helmsZh": "+17 生命", "shieldsEn": "Fire Resist +16%", "shieldsZh": "抗火 +16%" }, "gsr": { "code": "gsr", "nameEn": "Ruby", "nameZh": "红宝石", "gemType": "ruby", "tier": 3, "reqLevel": 12, "weaponsEn": "Adds 8-12 Fire Damage", "weaponsZh": "增加 8-12 火焰伤害", "armorEn": "+24 to Life", "armorZh": "+24 生命", "helmsEn": "+24 to Life", "helmsZh": "+24 生命", "shieldsEn": "Fire Resist +22%", "shieldsZh": "抗火 +22%" }, "glr": { "code": "glr", "nameEn": "Flawless Ruby", "nameZh": "无瑕疵的红宝石", "gemType": "ruby", "tier": 4, "reqLevel": 15, "weaponsEn": "Adds 10-16 Fire Damage", "weaponsZh": "增加 10-16 火焰伤害", "armorEn": "+31 to Life", "armorZh": "+31 生命", "helmsEn": "+31 to Life", "helmsZh": "+31 生命", "shieldsEn": "Fire Resist +28%", "shieldsZh": "抗火 +28%" }, "gpr": { "code": "gpr", "nameEn": "Perfect Ruby", "nameZh": "完美的红宝石", "gemType": "ruby", "tier": 5, "reqLevel": 18, "weaponsEn": "Adds 15-20 Fire Damage", "weaponsZh": "增加 15-20 火焰伤害", "armorEn": "+38 to Life", "armorZh": "+38 生命", "helmsEn": "+38 to Life", "helmsZh": "+38 生命", "shieldsEn": "Fire Resist +40%", "shieldsZh": "抗火 +40%" }, "gcw": { "code": "gcw", "nameEn": "Chipped Diamond", "nameZh": "碎裂的钻石", "gemType": "diamond", "tier": 1, "reqLevel": 1, "weaponsEn": "+28% Damage to Undead", "weaponsZh": "+28% 对不死生物的伤害", "armorEn": "+20 to Attack Rating", "armorZh": "+20 准确率", "helmsEn": "+20 to Attack Rating", "helmsZh": "+20 准确率", "shieldsEn": "All Resistances +6", "shieldsZh": "所有抗性 +6" }, "gfw": { "code": "gfw", "nameEn": "Flawed Diamond", "nameZh": "裂开的钻石", "gemType": "diamond", "tier": 2, "reqLevel": 5, "weaponsEn": "+34% Damage to Undead", "weaponsZh": "+34% 对不死生物的伤害", "armorEn": "+40 to Attack Rating", "armorZh": "+40 准确率", "helmsEn": "+40 to Attack Rating", "helmsZh": "+40 准确率", "shieldsEn": "All Resistances +8", "shieldsZh": "所有抗性 +8" }, "gsw": { "code": "gsw", "nameEn": "Diamond", "nameZh": "钻石", "gemType": "diamond", "tier": 3, "reqLevel": 12, "weaponsEn": "+44% Damage to Undead", "weaponsZh": "+44% 对不死生物的伤害", "armorEn": "+60 to Attack Rating", "armorZh": "+60 准确率", "helmsEn": "+60 to Attack Rating", "helmsZh": "+60 准确率", "shieldsEn": "All Resistances +11", "shieldsZh": "所有抗性 +11" }, "glw": { "code": "glw", "nameEn": "Flawless Diamond", "nameZh": "无瑕疵的钻石", "gemType": "diamond", "tier": 4, "reqLevel": 15, "weaponsEn": "+54% Damage to Undead", "weaponsZh": "+54% 对不死生物的伤害", "armorEn": "+80 to Attack Rating", "armorZh": "+80 准确率", "helmsEn": "+80 to Attack Rating", "helmsZh": "+80 准确率", "shieldsEn": "All Resistances +14", "shieldsZh": "所有抗性 +14" }, "gpw": { "code": "gpw", "nameEn": "Perfect Diamond", "nameZh": "完美的钻石", "gemType": "diamond", "tier": 5, "reqLevel": 18, "weaponsEn": "+68% Damage to Undead", "weaponsZh": "+68% 对不死生物的伤害", "armorEn": "+100 to Attack Rating", "armorZh": "+100 准确率", "helmsEn": "+100 to Attack Rating", "helmsZh": "+100 准确率", "shieldsEn": "All Resistances +19", "shieldsZh": "所有抗性 +19" }, "skc": { "code": "skc", "nameEn": "Chipped Skull", "nameZh": "碎裂的骷髅", "gemType": "skull", "tier": 1, "reqLevel": 1, "weaponsEn": "2% Life Stolen Per Hit, 1% Mana Stolen Per Hit", "weaponsZh": "每次命中偷取 2% 生命, 每次命中偷取 1% 法力", "armorEn": "Regenerate Mana 8%, Replenish Life +2", "armorZh": "法力恢复速度 8%, 生命恢复 +2", "helmsEn": "Regenerate Mana 8%, Replenish Life +2", "helmsZh": "法力恢复速度 8%, 生命恢复 +2", "shieldsEn": "Attacker Takes Damage of 4", "shieldsZh": "攻击者受到伤害 4" }, "skf": { "code": "skf", "nameEn": "Flawed Skull", "nameZh": "裂开的骷髅", "gemType": "skull", "tier": 2, "reqLevel": 5, "weaponsEn": "2% Life Stolen Per Hit, 2% Mana Stolen Per Hit", "weaponsZh": "每次命中偷取 2% 生命, 每次命中偷取 2% 法力", "armorEn": "Regenerate Mana 8%, Replenish Life +3", "armorZh": "法力恢复速度 8%, 生命恢复 +3", "helmsEn": "Regenerate Mana 8%, Replenish Life +3", "helmsZh": "法力恢复速度 8%, 生命恢复 +3", "shieldsEn": "Attacker Takes Damage of 8", "shieldsZh": "攻击者受到伤害 8" }, "sku": { "code": "sku", "nameEn": "Skull", "nameZh": "骷髅", "gemType": "skull", "tier": 3, "reqLevel": 12, "weaponsEn": "3% Life Stolen Per Hit, 2% Mana Stolen Per Hit", "weaponsZh": "每次命中偷取 3% 生命, 每次命中偷取 2% 法力", "armorEn": "Regenerate Mana 12%, Replenish Life +3", "armorZh": "法力恢复速度 12%, 生命恢复 +3", "helmsEn": "Regenerate Mana 12%, Replenish Life +3", "helmsZh": "法力恢复速度 12%, 生命恢复 +3", "shieldsEn": "Attacker Takes Damage of 12", "shieldsZh": "攻击者受到伤害 12" }, "skl": { "code": "skl", "nameEn": "Flawless Skull", "nameZh": "无瑕疵的骷髅", "gemType": "skull", "tier": 4, "reqLevel": 15, "weaponsEn": "3% Life Stolen Per Hit, 3% Mana Stolen Per Hit", "weaponsZh": "每次命中偷取 3% 生命, 每次命中偷取 3% 法力", "armorEn": "Regenerate Mana 12%, Replenish Life +4", "armorZh": "法力恢复速度 12%, 生命恢复 +4", "helmsEn": "Regenerate Mana 12%, Replenish Life +4", "helmsZh": "法力恢复速度 12%, 生命恢复 +4", "shieldsEn": "Attacker Takes Damage of 16", "shieldsZh": "攻击者受到伤害 16" }, "skz": { "code": "skz", "nameEn": "Perfect Skull", "nameZh": "完美的骷髅", "gemType": "skull", "tier": 5, "reqLevel": 18, "weaponsEn": "4% Life Stolen Per Hit, 3% Mana Stolen Per Hit", "weaponsZh": "每次命中偷取 4% 生命, 每次命中偷取 3% 法力", "armorEn": "Regenerate Mana 19%, Replenish Life +5", "armorZh": "法力恢复速度 19%, 生命恢复 +5", "helmsEn": "Regenerate Mana 19%, Replenish Life +5", "helmsZh": "法力恢复速度 19%, 生命恢复 +5", "shieldsEn": "Attacker Takes Damage of 20", "shieldsZh": "攻击者受到伤害 20" } } export const RUNE_INFO: Record = { "r01": { "code": "r01", "num": 1, "letter": "El", "nameEn": "El Rune", "nameZh": "艾尔", "reqLevel": 11, "weaponsEn": "+50 to Attack Rating, +1 to Light Radius", "weaponsZh": "+50 准确率, +1 光照范围", "armorEn": "+15 Defense, +1 to Light Radius", "armorZh": "+15 防御, +1 光照范围", "helmsEn": "+15 Defense, +1 to Light Radius", "helmsZh": "+15 防御, +1 光照范围", "shieldsEn": "+15 Defense, +1 to Light Radius", "shieldsZh": "+15 防御, +1 光照范围", "weapon": "+50 to Attack Rating, +1 to Light Radius", "armor": "+15 Defense, +1 to Light Radius" }, "r02": { "code": "r02", "num": 2, "letter": "Eld", "nameEn": "Eld Rune", "nameZh": "艾德", "reqLevel": 11, "weaponsEn": "+75% Damage to Undead, +50 to Attack Rating against Undead", "weaponsZh": "+75% 对不死生物的伤害, +50 对不死生物的准确率", "armorEn": "15% Slower Stamina Drain", "armorZh": "减慢体力消耗 15%", "helmsEn": "15% Slower Stamina Drain", "helmsZh": "减慢体力消耗 15%", "shieldsEn": "7% Increased Chance of Blocking", "shieldsZh": "7% 增加格挡几率", "weapon": "+75% Damage to Undead, +50 to Attack Rating against Undead", "armor": "15% Slower Stamina Drain" }, "r03": { "code": "r03", "num": 3, "letter": "Tir", "nameEn": "Tir Rune", "nameZh": "特尔", "reqLevel": 13, "weaponsEn": "+2 to Mana after each Kill", "weaponsZh": "+2 每击杀一个怪物获得法力", "armorEn": "+2 to Mana after each Kill", "armorZh": "+2 每击杀一个怪物获得法力", "helmsEn": "+2 to Mana after each Kill", "helmsZh": "+2 每击杀一个怪物获得法力", "shieldsEn": "+2 to Mana after each Kill", "shieldsZh": "+2 每击杀一个怪物获得法力", "weapon": "+2 to Mana after each Kill", "armor": "+2 to Mana after each Kill" }, "r04": { "code": "r04", "num": 4, "letter": "Nef", "nameEn": "Nef Rune", "nameZh": "那夫", "reqLevel": 13, "weaponsEn": "Knockback", "weaponsZh": "击退", "armorEn": "+30 Defense vs. Missile", "armorZh": "+30 对远距离武器的防御", "helmsEn": "+30 Defense vs. Missile", "helmsZh": "+30 对远距离武器的防御", "shieldsEn": "+30 Defense vs. Missile", "shieldsZh": "+30 对远距离武器的防御", "weapon": "Knockback", "armor": "+30 Defense vs. Missile" }, "r05": { "code": "r05", "num": 5, "letter": "Eth", "nameEn": "Eth Rune", "nameZh": "爱斯", "reqLevel": 15, "weaponsEn": "-25% Target Defense", "weaponsZh": "-25% 目标防御", "armorEn": "Regenerate Mana 15%", "armorZh": "法力恢复速度 15%", "helmsEn": "Regenerate Mana 15%", "helmsZh": "法力恢复速度 15%", "shieldsEn": "Regenerate Mana 15%", "shieldsZh": "法力恢复速度 15%", "weapon": "-25% Target Defense", "armor": "Regenerate Mana 15%" }, "r06": { "code": "r06", "num": 6, "letter": "Ith", "nameEn": "Ith Rune", "nameZh": "伊司", "reqLevel": 15, "weaponsEn": "+9 to Maximum Damage", "weaponsZh": "+9 最大伤害", "armorEn": "15% Damage Taken Goes To Mana", "armorZh": "15% 伤害转化为法力", "helmsEn": "15% Damage Taken Goes To Mana", "helmsZh": "15% 伤害转化为法力", "shieldsEn": "15% Damage Taken Goes To Mana", "shieldsZh": "15% 伤害转化为法力", "weapon": "+9 to Maximum Damage", "armor": "15% Damage Taken Goes To Mana" }, "r07": { "code": "r07", "num": 7, "letter": "Tal", "nameEn": "Tal Rune", "nameZh": "塔尔", "reqLevel": 17, "weaponsEn": "+75 Poison Damage Over 5 Seconds", "weaponsZh": "在 5 秒内造成 75 点毒素伤害", "armorEn": "Poison Resist +30%", "armorZh": "抗毒 +30%", "helmsEn": "Poison Resist +30%", "helmsZh": "抗毒 +30%", "shieldsEn": "Poison Resist +35%", "shieldsZh": "抗毒 +35%", "weapon": "+75 Poison Damage Over 5 Seconds", "armor": "Poison Resist +30%" }, "r08": { "code": "r08", "num": 8, "letter": "Ral", "nameEn": "Ral Rune", "nameZh": "拉尔", "reqLevel": 19, "weaponsEn": "Adds 5-30 Fire Damage", "weaponsZh": "增加 5-30 火焰伤害", "armorEn": "Fire Resist +30%", "armorZh": "抗火 +30%", "helmsEn": "Fire Resist +30%", "helmsZh": "抗火 +30%", "shieldsEn": "Fire Resist +35%", "shieldsZh": "抗火 +35%", "weapon": "Adds 5-30 Fire Damage", "armor": "Fire Resist +30%" }, "r09": { "code": "r09", "num": 9, "letter": "Ort", "nameEn": "Ort Rune", "nameZh": "欧特", "reqLevel": 21, "weaponsEn": "Adds 1-50 Lightning Damage", "weaponsZh": "增加 1-50 闪电伤害", "armorEn": "Lightning Resist +30%", "armorZh": "抗电 +30%", "helmsEn": "Lightning Resist +30%", "helmsZh": "抗电 +30%", "shieldsEn": "Lightning Resist +35%", "shieldsZh": "抗电 +35%", "weapon": "Adds 1-50 Lightning Damage", "armor": "Lightning Resist +30%" }, "r10": { "code": "r10", "num": 10, "letter": "Thul", "nameEn": "Thul Rune", "nameZh": "书尔", "reqLevel": 23, "weaponsEn": "Adds 3-14 Cold Damage (3 sec)", "weaponsZh": "增加 3-14 冰冻伤害 (持续 3 秒)", "armorEn": "Cold Resist +30%", "armorZh": "抗寒 +30%", "helmsEn": "Cold Resist +30%", "helmsZh": "抗寒 +30%", "shieldsEn": "Cold Resist +35%", "shieldsZh": "抗寒 +35%", "weapon": "Adds 3-14 Cold Damage (3 sec)", "armor": "Cold Resist +30%" }, "r11": { "code": "r11", "num": 11, "letter": "Amn", "nameEn": "Amn Rune", "nameZh": "安姆", "reqLevel": 25, "weaponsEn": "7% Life Stolen Per Hit", "weaponsZh": "每次命中偷取 7% 生命", "armorEn": "Attacker Takes Damage of 14", "armorZh": "攻击者受到伤害 14", "helmsEn": "Attacker Takes Damage of 14", "helmsZh": "攻击者受到伤害 14", "shieldsEn": "Attacker Takes Damage of 14", "shieldsZh": "攻击者受到伤害 14", "weapon": "7% Life Stolen Per Hit", "armor": "Attacker Takes Damage of 14" }, "r12": { "code": "r12", "num": 12, "letter": "Sol", "nameEn": "Sol Rune", "nameZh": "索尔", "reqLevel": 27, "weaponsEn": "+9 to Minimum Damage", "weaponsZh": "+9 最小伤害", "armorEn": "Damage Reduced by 7", "armorZh": "伤害减少 7", "helmsEn": "Damage Reduced by 7", "helmsZh": "伤害减少 7", "shieldsEn": "Damage Reduced by 7", "shieldsZh": "伤害减少 7", "weapon": "+9 to Minimum Damage", "armor": "Damage Reduced by 7" }, "r13": { "code": "r13", "num": 13, "letter": "Shael", "nameEn": "Shael Rune", "nameZh": "夏", "reqLevel": 29, "weaponsEn": "20% Increased Attack Speed", "weaponsZh": "+20% 增加攻击速度", "armorEn": "20% Faster Hit Recovery", "armorZh": "+20% 快速打击恢复", "helmsEn": "20% Faster Hit Recovery", "helmsZh": "+20% 快速打击恢复", "shieldsEn": "20% Faster Block Rate", "shieldsZh": "+20% 快速格挡率", "weapon": "20% Increased Attack Speed", "armor": "20% Faster Hit Recovery" }, "r14": { "code": "r14", "num": 14, "letter": "Dol", "nameEn": "Dol Rune", "nameZh": "多尔", "reqLevel": 31, "weaponsEn": "Hit Causes Monster to Flee 25%", "weaponsZh": "击中时使怪物逃跑 25%", "armorEn": "Replenish Life +7", "armorZh": "生命恢复 +7", "helmsEn": "Replenish Life +7", "helmsZh": "生命恢复 +7", "shieldsEn": "Replenish Life +7", "shieldsZh": "生命恢复 +7", "weapon": "Hit Causes Monster to Flee 25%", "armor": "Replenish Life +7" }, "r15": { "code": "r15", "num": 15, "letter": "Hel", "nameEn": "Hel Rune", "nameZh": "海尔", "reqLevel": 0, "weaponsEn": "Requirements -20%", "weaponsZh": "装备需求 -20%", "armorEn": "Requirements -15%", "armorZh": "装备需求 -15%", "helmsEn": "Requirements -15%", "helmsZh": "装备需求 -15%", "shieldsEn": "Requirements -15%", "shieldsZh": "装备需求 -15%", "weapon": "Requirements -20%", "armor": "Requirements -15%" }, "r16": { "code": "r16", "num": 16, "letter": "Io", "nameEn": "Io Rune", "nameZh": "艾欧", "reqLevel": 35, "weaponsEn": "+10 to Vitality", "weaponsZh": "+10 体力", "armorEn": "+10 to Vitality", "armorZh": "+10 体力", "helmsEn": "+10 to Vitality", "helmsZh": "+10 体力", "shieldsEn": "+10 to Vitality", "shieldsZh": "+10 体力", "weapon": "+10 to Vitality", "armor": "+10 to Vitality" }, "r17": { "code": "r17", "num": 17, "letter": "Lum", "nameEn": "Lum Rune", "nameZh": "卢姆", "reqLevel": 37, "weaponsEn": "+10 to Energy", "weaponsZh": "+10 精力", "armorEn": "+10 to Energy", "armorZh": "+10 精力", "helmsEn": "+10 to Energy", "helmsZh": "+10 精力", "shieldsEn": "+10 to Energy", "shieldsZh": "+10 精力", "weapon": "+10 to Energy", "armor": "+10 to Energy" }, "r18": { "code": "r18", "num": 18, "letter": "Ko", "nameEn": "Ko Rune", "nameZh": "科", "reqLevel": 39, "weaponsEn": "+10 to Dexterity", "weaponsZh": "+10 敏捷", "armorEn": "+10 to Dexterity", "armorZh": "+10 敏捷", "helmsEn": "+10 to Dexterity", "helmsZh": "+10 敏捷", "shieldsEn": "+10 to Dexterity", "shieldsZh": "+10 敏捷", "weapon": "+10 to Dexterity", "armor": "+10 to Dexterity" }, "r19": { "code": "r19", "num": 19, "letter": "Fal", "nameEn": "Fal Rune", "nameZh": "法尔", "reqLevel": 41, "weaponsEn": "+10 to Strength", "weaponsZh": "+10 力量", "armorEn": "+10 to Strength", "armorZh": "+10 力量", "helmsEn": "+10 to Strength", "helmsZh": "+10 力量", "shieldsEn": "+10 to Strength", "shieldsZh": "+10 力量", "weapon": "+10 to Strength", "armor": "+10 to Strength" }, "r20": { "code": "r20", "num": 20, "letter": "Lem", "nameEn": "Lem Rune", "nameZh": "蓝姆", "reqLevel": 43, "weaponsEn": "75% Extra Gold from Monsters", "weaponsZh": "+75% 从怪物获得额外金钱", "armorEn": "50% Extra Gold from Monsters", "armorZh": "+50% 从怪物获得额外金钱", "helmsEn": "50% Extra Gold from Monsters", "helmsZh": "+50% 从怪物获得额外金钱", "shieldsEn": "50% Extra Gold from Monsters", "shieldsZh": "+50% 从怪物获得额外金钱", "weapon": "75% Extra Gold from Monsters", "armor": "50% Extra Gold from Monsters" }, "r21": { "code": "r21", "num": 21, "letter": "Pul", "nameEn": "Pul Rune", "nameZh": "普尔", "reqLevel": 45, "weaponsEn": "+75% Damage to Demons, +100 to Attack Rating against Demons", "weaponsZh": "+75% 对恶魔的伤害, +100 对恶魔的准确率", "armorEn": "+30% Enhanced Defense", "armorZh": "+30% 强化防御", "helmsEn": "+30% Enhanced Defense", "helmsZh": "+30% 强化防御", "shieldsEn": "+30% Enhanced Defense", "shieldsZh": "+30% 强化防御", "weapon": "+75% Damage to Demons, +100 to Attack Rating against Demons", "armor": "+30% Enhanced Defense" }, "r22": { "code": "r22", "num": 22, "letter": "Um", "nameEn": "Um Rune", "nameZh": "乌姆", "reqLevel": 47, "weaponsEn": "25% Chance of Open Wounds", "weaponsZh": "25% 几率撕开伤口", "armorEn": "All Resistances +15", "armorZh": "所有抗性 +15", "helmsEn": "All Resistances +15", "helmsZh": "所有抗性 +15", "shieldsEn": "All Resistances +22", "shieldsZh": "所有抗性 +22", "weapon": "25% Chance of Open Wounds", "armor": "All Resistances +15" }, "r23": { "code": "r23", "num": 23, "letter": "Mal", "nameEn": "Mal Rune", "nameZh": "马尔", "reqLevel": 49, "weaponsEn": "Prevent Monster Heal", "weaponsZh": "防止怪物自愈", "armorEn": "Magic Damage Reduced by 7", "armorZh": "魔法伤害减少 7", "helmsEn": "Magic Damage Reduced by 7", "helmsZh": "魔法伤害减少 7", "shieldsEn": "Magic Damage Reduced by 7", "shieldsZh": "魔法伤害减少 7", "weapon": "Prevent Monster Heal", "armor": "Magic Damage Reduced by 7" }, "r24": { "code": "r24", "num": 24, "letter": "Ist", "nameEn": "Ist Rune", "nameZh": "伊斯特", "reqLevel": 51, "weaponsEn": "30% Better Chance of Getting Magic Items", "weaponsZh": "+30% 获得魔法装备几率", "armorEn": "25% Better Chance of Getting Magic Items", "armorZh": "+25% 获得魔法装备几率", "helmsEn": "25% Better Chance of Getting Magic Items", "helmsZh": "+25% 获得魔法装备几率", "shieldsEn": "25% Better Chance of Getting Magic Items", "shieldsZh": "+25% 获得魔法装备几率", "weapon": "30% Better Chance of Getting Magic Items", "armor": "25% Better Chance of Getting Magic Items" }, "r25": { "code": "r25", "num": 25, "letter": "Gul", "nameEn": "Gul Rune", "nameZh": "古尔", "reqLevel": 53, "weaponsEn": "20% Bonus to Attack Rating", "weaponsZh": "+20% 准确率加成", "armorEn": "+5% to Maximum Poison Resist", "armorZh": "+5% 最大抗毒", "helmsEn": "+5% to Maximum Poison Resist", "helmsZh": "+5% 最大抗毒", "shieldsEn": "+5% to Maximum Poison Resist", "shieldsZh": "+5% 最大抗毒", "weapon": "20% Bonus to Attack Rating", "armor": "+5% to Maximum Poison Resist" }, "r26": { "code": "r26", "num": 26, "letter": "Vex", "nameEn": "Vex Rune", "nameZh": "伐克斯", "reqLevel": 55, "weaponsEn": "7% Mana Stolen Per Hit", "weaponsZh": "每次命中偷取 7% 法力", "armorEn": "+5% to Maximum Fire Resist", "armorZh": "+5% 最大抗火", "helmsEn": "+5% to Maximum Fire Resist", "helmsZh": "+5% 最大抗火", "shieldsEn": "+5% to Maximum Fire Resist", "shieldsZh": "+5% 最大抗火", "weapon": "7% Mana Stolen Per Hit", "armor": "+5% to Maximum Fire Resist" }, "r27": { "code": "r27", "num": 27, "letter": "Ohm", "nameEn": "Ohm Rune", "nameZh": "欧姆", "reqLevel": 57, "weaponsEn": "+50% Enhanced Damage", "weaponsZh": "+50% 增强伤害", "armorEn": "+5% to Maximum Cold Resist", "armorZh": "+5% 最大抗寒", "helmsEn": "+5% to Maximum Cold Resist", "helmsZh": "+5% 最大抗寒", "shieldsEn": "+5% to Maximum Cold Resist", "shieldsZh": "+5% 最大抗寒", "weapon": "+50% Enhanced Damage", "armor": "+5% to Maximum Cold Resist" }, "r28": { "code": "r28", "num": 28, "letter": "Lo", "nameEn": "Lo Rune", "nameZh": "罗", "reqLevel": 59, "weaponsEn": "20% Deadly Strike", "weaponsZh": "20% 致命打击", "armorEn": "+5% to Maximum Lightning Resist", "armorZh": "+5% 最大抗电", "helmsEn": "+5% to Maximum Lightning Resist", "helmsZh": "+5% 最大抗电", "shieldsEn": "+5% to Maximum Lightning Resist", "shieldsZh": "+5% 最大抗电", "weapon": "20% Deadly Strike", "armor": "+5% to Maximum Lightning Resist" }, "r29": { "code": "r29", "num": 29, "letter": "Sur", "nameEn": "Sur Rune", "nameZh": "瑟", "reqLevel": 61, "weaponsEn": "Hit Blinds Target", "weaponsZh": "致盲目标", "armorEn": "Increase Maximum Mana 5%", "armorZh": "提升法力上限 5%", "helmsEn": "Increase Maximum Mana 5%", "helmsZh": "提升法力上限 5%", "shieldsEn": "+50 to Mana", "shieldsZh": "+50 法力", "weapon": "Hit Blinds Target", "armor": "Increase Maximum Mana 5%" }, "r30": { "code": "r30", "num": 30, "letter": "Ber", "nameEn": "Ber Rune", "nameZh": "贝", "reqLevel": 63, "weaponsEn": "20% Chance of Crushing Blow", "weaponsZh": "20% 几率造成压碎打击", "armorEn": "Damage Reduced by 8%", "armorZh": "伤害减少 8%", "helmsEn": "Damage Reduced by 8%", "helmsZh": "伤害减少 8%", "shieldsEn": "Damage Reduced by 8%", "shieldsZh": "伤害减少 8%", "weapon": "20% Chance of Crushing Blow", "armor": "Damage Reduced by 8%" }, "r31": { "code": "r31", "num": 31, "letter": "Jah", "nameEn": "Jah Rune", "nameZh": "乔", "reqLevel": 65, "weaponsEn": "Ignore Target's Defense", "weaponsZh": "无视目标防御", "armorEn": "Increase Maximum Life 5%", "armorZh": "提升生命上限 5%", "helmsEn": "Increase Maximum Life 5%", "helmsZh": "提升生命上限 5%", "shieldsEn": "+50 to Life", "shieldsZh": "+50 生命", "weapon": "Ignore Target's Defense", "armor": "Increase Maximum Life 5%" }, "r32": { "code": "r32", "num": 32, "letter": "Cham", "nameEn": "Cham Rune", "nameZh": "查姆", "reqLevel": 67, "weaponsEn": "Freeze Target +3", "weaponsZh": "冻结目标 +3", "armorEn": "Cannot be Frozen", "armorZh": "无法冻结", "helmsEn": "Cannot be Frozen", "helmsZh": "无法冻结", "shieldsEn": "Cannot be Frozen", "shieldsZh": "无法冻结", "weapon": "Freeze Target +3", "armor": "Cannot be Frozen" }, "r33": { "code": "r33", "num": 33, "letter": "Zod", "nameEn": "Zod Rune", "nameZh": "萨德", "reqLevel": 69, "weaponsEn": "Indestructible", "weaponsZh": "无法破坏", "armorEn": "Indestructible", "armorZh": "无法破坏", "helmsEn": "Indestructible", "helmsZh": "无法破坏", "shieldsEn": "Indestructible", "shieldsZh": "无法破坏", "weapon": "Indestructible", "armor": "Indestructible" } } /** * Checks whether an item code is a valid 1.13c Gem. */ export function isGemCode(code: string | undefined): boolean { if (!code) return false return Boolean(GEM_INFO[code.trim().toLowerCase()]) } /** * Checks whether an item code is a valid 1.13c Rune (r01..r33). */ export function isRuneCode(code: string | undefined): boolean { if (!code) return false return Boolean(RUNE_INFO[code.trim().toLowerCase()]) } /** * Returns canonical socketable information for any gem or rune code. */ export function getSocketableInfo(code: string | undefined): (GemInfo | RuneInfo) | undefined { if (!code) return undefined const c = code.trim().toLowerCase() return GEM_INFO[c] || RUNE_INFO[c] }