diff --git a/AGENTS.md b/AGENTS.md index 9661124..43ba7bd 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -98,7 +98,7 @@ climperor/ | `web/fetch_item_shop.py` | 官网商店 11 列目录(dota2.com.cn/itemscategory)+ 合成图 → `web/data/item_shop.json` + 图标 | | `web/fetch_items_meta.py` | Valve/OpenDota 装备描述 → 机制标签 → `web/data/items_meta.json`(`%token%` 用 special_values 填数;查询类 tags 共用 `mechanic_tags.py`) | | `web/mechanic_tags.py` | 上分帝 Web「机制」页共用标签(弱/强驱散、缠绕/缴械/沉默/锁闭/眩晕/妖术/破坏、睡眠/恐惧/嘲讽/致盲/束缚、隐身/虚无/吹风)+ 中文 labels;语义为「施加该效果」 | -| `web/loc_format.py` | Valve 文案共用:去 HTML、填充 `%token%` / `{s:token}` | +| `web/loc_format.py` | Valve 文案共用:去 HTML、填充 `%token%` / `{s:token}`(键 casefold;魔晶/神杖 `%bonus_%` 走 `values_shard`/`values_scepter`) | | `web/fetch_hero_abilities.py` | Valve herodata 技能/魔晶/神杖/天赋 + 驱散汇总 → `web/data/hero_abilities.json`;每条 ability 另有「施加」类 `tags`(与 `dispellable` 区分;`--tags-only` 可只重算);`has_scepter`/`has_shard` 只信 Valve 显式 flag,Valve 移除升级后残留的 `scepter_loc`/`shard_loc` 文案会被清空;逐级相同的 `cast_points`/`channel_times` 合并为单值(施法前摇/吟唱时间);可选 `--icons` / `--icons-only` 缓存 Steam CDN 技能图标 → `web/assets/ability_icons/`(先天用共用 `innate.png`,不拉 CDN) | | `web/fetch_ability_videos.py` | 官网技能演示 webm/mp4(Steam CDN;限速)→ `web/assets/ability_videos/`;A 杖/魔晶赋予技能(`granted_by_scepter`/`granted_by_shard`)CDN 名用 `_aghanims_scepter`/`_aghanims_shard`,本地文件名仍用 ability key | | `web/fetch_item_counter_stats.py` | OpenDota Explorer 近场次聚合:对阵英雄时敌方终局装备购买率/胜率,与同窗口该装备全局队伍基线作差 → `web/data/item_counter_stats.json`(可再生成缓存;观测证据,不作因果结论;weekly 软失败) | diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f810ab..8080ba1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,19 @@ ## [Unreleased] +## [0.5.87] - 2026-07-29 + +### Fixed + +- 技能/物品文案填充:Valve 中文 `%token%` 与 `special_values` 名称大小写不一致、 + 以及魔晶/神杖 `%bonus_%` 指向升级通道时不再留下 `?`(如乌尔萨震撼大地 + 「减速4秒」、祸乱蚀脑魔晶冷却)。 +- 技能详情有演示视频时加宽右侧文案列、收窄视频上限,空间够时技能介绍尽量单行。 +- 技能详情特殊数值标签不再露出 Valve `` 原文(如「眩晕时间」);数值级差 + 保持单行;冷却/文案同底栏下沉,避免介绍区窄列竖排与多余滚轮。 +- 技能详情底栏蓝量靠右,不再贴着冷却时间。 +- 版本页笔记剥离 Valve `` / `` 等标签,只保留换行。 + ## [0.5.86] - 2026-07-29 ### Changed diff --git a/web/data/hero_abilities.json b/web/data/hero_abilities.json index c1cb90e..6853a1e 100644 --- a/web/data/hero_abilities.json +++ b/web/data/hero_abilities.json @@ -2,9 +2,8 @@ "meta": { "source": "valve+opendota", "attribution": "https://www.dota2.com ; https://www.opendota.com", - "fetched_at": "2026-07-28T13:11:32.471806+00:00", + "fetched_at": "2026-07-29T11:12:44.164126+00:00", "heroes": 127, - "tags_only": true, "mechanic_tag_order": [ "basic_dispel", "strong_dispel", @@ -23,7 +22,8 @@ "invis", "ethereal", "cyclone" - ] + ], + "abilities_with_tags": 177 }, "by_hero": { "antimage": { @@ -206,7 +206,7 @@ "value": "1" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.3" }, { @@ -617,7 +617,7 @@ "key": "bane_brain_sap", "name_loc": "蚀脑", "desc_loc": "暴食一个敌方单位的生命能量,造成伤害并回复自身生命值。", - "shard_loc": "减少?秒冷却时间。蚀脑变成550作用范围的技能。次级目标只有30%治疗效果。", + "shard_loc": "减少3秒冷却时间。蚀脑变成550作用范围的技能。次级目标只有30%治疗效果。", "scepter_loc": "", "has_shard": true, "has_scepter": false, @@ -638,7 +638,7 @@ "mana_cost": "105 / 120 / 135 / 150", "specials": [ { - "label": "治疗/伤害", + "label": "治疗/伤害", "value": "90 / 160 / 230 / 300" } ], @@ -688,7 +688,7 @@ "name_loc": "魔爪", "desc_loc": "持续施法 - 抓住一个敌方单位,使其失去行动能力并持续受到大量伤害,同时每0.5秒按目标最大魔法值一定比例吸取魔法。", "shard_loc": "", - "scepter_loc": "魔爪的冷却时间减少?秒。魔爪将产生两个不可控制的幻象,幻象也将对目标持续施放魔爪。幻象承受225%伤害,并且被打断后立刻消失。伤害不会叠加。", + "scepter_loc": "魔爪的冷却时间减少45秒。魔爪将产生两个不可控制的幻象,幻象也将对目标持续施放魔爪。幻象承受225%伤害,并且被打断后立刻消失。伤害不会叠加。", "has_shard": false, "has_scepter": true, "granted_by_shard": false, @@ -754,7 +754,7 @@ "value": "5" }, { - "label": "每层恐惧降低状态抗性", + "label": "每层恐惧降低状态抗性", "value": "5%" } ], @@ -900,7 +900,7 @@ "value": "600" }, { - "label": "沉默持续时间", + "label": "沉默持续时间", "value": "3 / 4 / 5 / 6" }, { @@ -986,11 +986,11 @@ "mana_cost": "0", "specials": [ { - "label": "最大生命值治疗", + "label": "最大生命值治疗", "value": "0%" }, { - "label": "半额治疗作用范围", + "label": "半额治疗作用范围", "value": "300" } ], @@ -1296,11 +1296,11 @@ "mana_cost": "0", "specials": [ { - "label": "魔法转为护盾", + "label": "魔法转为护盾", "value": "30%" }, { - "label": "护盾持续时间", + "label": "护盾持续时间", "value": "8" } ], @@ -1310,7 +1310,7 @@ { "key": "crystal_maiden_freezing_field", "name_loc": "极寒领域", - "desc_loc": "持续施法 - 以水晶室女为中心召唤100次随机冰爆轰炸敌人,将其减速并造成大量伤害。持续?秒。", + "desc_loc": "持续施法 - 以水晶室女为中心召唤100次随机冰爆轰炸敌人,将其减速并造成大量伤害。持续10秒。", "shard_loc": "", "scepter_loc": "使自身在极寒领域期间可以移动、施法和攻击。仍然可以被敌人打断。在此期间移动速度降低75%。冰爆总数提升20%。对极寒领域内停留超过3秒的所有单位都会施加冰封禁制。", "has_shard": false, @@ -1420,7 +1420,7 @@ { "key": "drow_ranger_frost_arrows", "name_loc": "霜冻之箭", - "desc_loc": "卓尔游侠在箭矢中附上冰冻效果,减缓敌人的移动速度并造成额外伤害。持续?秒。", + "desc_loc": "卓尔游侠在箭矢中附上冰冻效果,减缓敌人的移动速度并造成额外伤害。持续1.5秒。", "shard_loc": "", "scepter_loc": "霜冻之箭现在对敌人施加低温的叠加效果,提升霜冻之箭的伤害,并且每层叠加效果都会降低生命回复。若敌人在低温效果下阵亡,他们将会爆炸,对范围内的敌人造成伤害和减速。", "has_shard": false, @@ -1514,7 +1514,7 @@ "value": "250" }, { - "label": "沉默持续时间", + "label": "沉默持续时间", "value": "3 / 4 / 5 / 6" }, { @@ -1534,7 +1534,7 @@ { "key": "drow_ranger_multishot", "name_loc": "数箭齐发", - "desc_loc": "持续施法 - 卓尔游侠在最多?秒内不断地射出阵阵箭矢,对击中的敌人造成额外伤害,并施加霜冻之箭效果。 卓尔游侠在施放数箭齐发时可以缓慢移动和使用物品。", + "desc_loc": "持续施法 - 卓尔游侠在最多1.75秒内不断地射出阵阵箭矢,对击中的敌人造成额外伤害,并施加霜冻之箭效果。 卓尔游侠在施放数箭齐发时可以缓慢移动和使用物品。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -1786,7 +1786,7 @@ "value": "6.5 / 7 / 7.5 / 8" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1 / 1.2 / 1.4 / 1.6" }, { @@ -1794,7 +1794,7 @@ "value": "100 / 160 / 220 / 280" }, { - "label": "沟壑余震眩晕", + "label": "沟壑余震眩晕", "value": "0%" }, { @@ -2098,7 +2098,7 @@ { "key": "juggernaut_healing_ward", "name_loc": "治疗守卫", - "desc_loc": "召唤一个治疗守卫,按周围友军单位最大生命值的一定比例治疗他们。治疗守卫可以移动,移动速度为325。持续?秒。", + "desc_loc": "召唤一个治疗守卫,按周围友军单位最大生命值的一定比例治疗他们。治疗守卫可以移动,移动速度为325。持续18 / 20 / 22 / 24秒。", "shard_loc": "提升守卫的治疗量和生命值。", "scepter_loc": "", "has_shard": true, @@ -2438,11 +2438,11 @@ "value": "3000" }, { - "label": "最短眩晕时间", + "label": "最短眩晕时间", "value": "0.01" }, { - "label": "最长眩晕时间", + "label": "最长眩晕时间", "value": "2.6 / 3.4 / 4.2 / 5" }, { @@ -2719,11 +2719,11 @@ "value": "1 / 1.5 / 2 / 2.5" }, { - "label": "最短眩晕", + "label": "最短眩晕", "value": "0.5" }, { - "label": "最长眩晕", + "label": "最长眩晕", "value": "1.4 / 1.8 / 2.2 / 2.6" }, { @@ -2885,7 +2885,7 @@ "value": "25%" }, { - "label": "力量转为减速抗性", + "label": "力量转为减速抗性", "value": "25%" } ], @@ -3123,15 +3123,15 @@ "value": "-5 / -10 / -15%" }, { - "label": "每道魔能恐惧时间", + "label": "每道魔能恐惧时间", "value": "0.6" }, { - "label": "最长恐惧时间", + "label": "最长恐惧时间", "value": "2.15" }, { - "label": "回归治疗", + "label": "回归治疗", "value": "0%" }, { @@ -3758,7 +3758,7 @@ "value": "175 / 250 / 325" }, { - "label": "破碎眩晕持续时间", + "label": "破碎眩晕持续时间", "value": "1.5 / 2 / 2.5" }, { @@ -3884,7 +3884,7 @@ "name_loc": "腐烂", "desc_loc": "能够造成持续伤害并减缓敌人移动速度的毒性云雾——同时对敌军和自身造成伤害。", "shard_loc": "", - "scepter_loc": "腐烂的作用范围提升?,伤害提升?点,并且可以降低敌人的20%生命回复。", + "scepter_loc": "腐烂的作用范围提升200,伤害提升90点,并且可以降低敌人的20%生命回复。", "has_shard": false, "has_scepter": true, "granted_by_shard": false, @@ -4415,7 +4415,7 @@ "mana_cost": "100 / 110 / 120 / 130", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2 / 1.4 / 1.6 / 1.8" } ], @@ -4557,7 +4557,7 @@ { "key": "sandking_epicenter", "name_loc": "地震", - "desc_loc": "经过?秒施法前摇后,沙王向地中发送扰动,引起大地剧烈震动。所有范围内的敌人会受到伤害并被减速。每次后续震波都会提高伤害传播半径。", + "desc_loc": "经过2秒施法前摇后,沙王向地中发送扰动,引起大地剧烈震动。所有范围内的敌人会受到伤害并被减速。每次后续震波都会提高伤害传播半径。", "shard_loc": "提升地震波伤害,每3秒都会在沙王身上产生一道较小的地震波。", "scepter_loc": "地震的脉冲开始时每0.5秒会在随机地点产生3片尾刺的攻击区域,每片区域为地震当前范围的35%,对击中的敌人造成40%尾刺伤害。魔晶的地震波会产生1次攻击。", "has_shard": true, @@ -4687,7 +4687,7 @@ { "key": "storm_spirit_static_remnant", "name_loc": "残影", - "desc_loc": "风暴之灵制造一个充满爆炸性能量的自身残影,会向目标地点走去,持续?秒。如果有人接近就会引爆造成伤害,残影持续?秒。", + "desc_loc": "风暴之灵制造一个充满爆炸性能量的自身残影,会向目标地点走去,持续12秒。如果有人接近就会引爆造成伤害,残影持续12秒。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -4995,7 +4995,7 @@ "mana_cost": "110", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1 / 1.25 / 1.5 / 1.75" }, { @@ -5093,7 +5093,7 @@ "value": "0" }, { - "label": "物理护盾数值", + "label": "物理护盾数值", "value": "0" } ], @@ -5103,7 +5103,7 @@ { "key": "sven_gods_strength", "name_loc": "神之力量", - "desc_loc": "斯温爆发出他流浪剑客的力量,获得攻击力加成和减速抗性,持续?秒。", + "desc_loc": "斯温爆发出他流浪剑客的力量,获得攻击力加成和减速抗性,持续30秒。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -5129,7 +5129,7 @@ "value": "110 / 150 / 190%" }, { - "label": "减速抗性", + "label": "减速抗性", "value": "40%" } ], @@ -5437,11 +5437,11 @@ "mana_cost": "0", "specials": [ { - "label": "减速抗性的力量值系数", + "label": "减速抗性的力量值系数", "value": "15%" }, { - "label": "状态抗性的力量值系数", + "label": "状态抗性的力量值系数", "value": "10%" } ], @@ -5651,7 +5651,7 @@ "mana_cost": "90 / 95 / 100 / 105", "specials": [ { - "label": "眩晕持续时间", + "label": "眩晕持续时间", "value": "1.2 / 1.4 / 1.6 / 1.8" }, { @@ -5808,11 +5808,11 @@ "mana_cost": "100 / 150 / 200", "specials": [ { - "label": "护盾持续时间", + "label": "护盾持续时间", "value": "10" }, { - "label": "伤害/护盾", + "label": "伤害/护盾", "value": "150 / 300 / 450" } ], @@ -5934,7 +5934,7 @@ { "key": "windrunner_powershot", "name_loc": "强力击", - "desc_loc": "持续施法 - 风行者为她的弓蓄力,射出一支强力的箭矢,最长可蓄力?秒,其间可以打断蓄力,蓄力时间越长,箭矢伤害越高。这支箭会对穿过的所有敌方单位造成伤害和减速效果,并破坏树木。每伤害一个单位,箭矢的伤害和减速效果都会降低。", + "desc_loc": "持续施法 - 风行者为她的弓蓄力,射出一支强力的箭矢,最长可蓄力1秒,其间可以打断蓄力,蓄力时间越长,箭矢伤害越高。这支箭会对穿过的所有敌方单位造成伤害和减速效果,并破坏树木。每伤害一个单位,箭矢的伤害和减速效果都会降低。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -6290,7 +6290,7 @@ "value": "5" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.35" } ], @@ -6618,7 +6618,7 @@ "value": "1 / 2 / 3 / 4" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.4" }, { @@ -6844,7 +6844,7 @@ "value": "450" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2" } ], @@ -6984,7 +6984,7 @@ "value": "0.5" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2 / 1.6 / 2 / 2.4" }, { @@ -7243,7 +7243,7 @@ "value": "105 / 170 / 235 / 300" }, { - "label": "眩晕持续时间", + "label": "眩晕持续时间", "value": "1.3 / 1.6 / 1.9 / 2.2" } ], @@ -7586,7 +7586,7 @@ "mana_cost": "125 / 140 / 155 / 170", "specials": [ { - "label": "总伤害/治疗", + "label": "总伤害/治疗", "value": "100 / 160 / 220 / 280" }, { @@ -7872,7 +7872,7 @@ "value": "3 / 4 / 5 / 6" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.8" }, { @@ -7926,7 +7926,7 @@ "value": "35 / 90 / 145 / 200" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1" } ], @@ -7970,7 +7970,7 @@ "value": "1.8" }, { - "label": "状态抗性", + "label": "状态抗性", "value": "0%" }, { @@ -8452,7 +8452,7 @@ "mana_cost": "80 / 100 / 120 / 140", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.8" }, { @@ -8506,7 +8506,7 @@ "value": "650" }, { - "label": "治疗", + "label": "治疗", "value": "20 / 30 / 40 / 50" }, { @@ -8623,7 +8623,7 @@ { "key": "witch_doctor_death_ward", "name_loc": "死亡守卫", - "desc_loc": "持续施法 - 召唤一个死亡守卫,会优先攻击其攻击距离内的敌方英雄。最多持续?秒。死亡守卫拥有50%额外必中率。", + "desc_loc": "持续施法 - 召唤一个死亡守卫,会优先攻击其攻击距离内的敌方英雄。最多持续8秒。死亡守卫拥有50%额外必中率。", "shard_loc": "", "scepter_loc": "死亡守卫的攻击会向附近英雄弹射。", "has_shard": false, @@ -8729,7 +8729,7 @@ { "key": "lich_frost_nova", "name_loc": "寒霜爆发", - "desc_loc": "破坏性的寒霜在目标敌方单位身上爆发,造成范围伤害并降低范围内敌人的移动和攻击速度,持续?秒。主要目标所受伤害最高。", + "desc_loc": "破坏性的寒霜在目标敌方单位身上爆发,造成范围伤害并降低范围内敌人的移动和攻击速度,持续4秒。主要目标所受伤害最高。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -9357,7 +9357,7 @@ "mana_cost": "100 / 110 / 120 / 130", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.3 / 0.5 / 0.7 / 0.9" }, { @@ -9365,7 +9365,7 @@ "value": "55 / 70 / 85 / 100" }, { - "label": "眩晕次数", + "label": "眩晕次数", "value": "3" } ], @@ -9687,11 +9687,11 @@ "value": "13 / 22 / 31 / 40" }, { - "label": "每秒治疗", + "label": "每秒治疗", "value": "0" }, { - "label": "治疗持续时间", + "label": "治疗持续时间", "value": "0" } ], @@ -9941,7 +9941,7 @@ { "key": "sniper_shrapnel", "name_loc": "榴霰弹", - "desc_loc": "消耗一点能量射出一发带有爆炸弹片的榴霰弹,在目标区域降下弹雨。区域内的敌军受到伤害并被减速。榴霰弹将给予目标区域的视野。榴霰弹的能量每过?秒恢复1点。", + "desc_loc": "消耗一点能量射出一发带有爆炸弹片的榴霰弹,在目标区域降下弹雨。区域内的敌军受到伤害并被减速。榴霰弹将给予目标区域的视野。榴霰弹的能量每过35秒恢复1点。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -10181,7 +10181,7 @@ "value": "300 / 400 / 500" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0" }, { @@ -10293,7 +10293,7 @@ "value": "500" }, { - "label": "治疗量", + "label": "治疗量", "value": "70 / 90 / 110 / 130" } ], @@ -10482,7 +10482,7 @@ "value": "0.7 / 0.8 / 0.9" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.5" }, { @@ -10634,7 +10634,7 @@ "mana_cost": "110 / 120 / 130 / 140", "specials": [ { - "label": "治疗/伤害", + "label": "治疗/伤害", "value": "15 / 25 / 35 / 45" }, { @@ -10652,7 +10652,7 @@ { "key": "warlock_upheaval", "name_loc": "剧变", - "desc_loc": "持续施法 - 随施法时间增强的减速气流,还会造成伤害。持续最多?秒。在魔法结束或目标离开生效区域后,敌人仍会被减速1秒。", + "desc_loc": "持续施法 - 随施法时间增强的减速气流,还会造成伤害。持续最多10 / 12 / 14 / 16秒。在魔法结束或目标离开生效区域后,敌人仍会被减速1秒。", "shard_loc": "持续施法时每2秒术士会召唤一个魔童,持续15秒,魔童死亡时会爆炸,对周围所有敌人造成伤害。", "scepter_loc": "", "has_shard": true, @@ -10790,7 +10790,7 @@ "value": "8 / 12 / 14" }, { - "label": "地狱火减速抗性", + "label": "地狱火减速抗性", "value": "60%" } ], @@ -10998,7 +10998,7 @@ "value": "60 / 95 / 130 / 165" }, { - "label": "缠绕持续时间", + "label": "缠绕持续时间", "value": "0.4 / 0.6 / 0.8 / 1" } ], @@ -11088,11 +11088,11 @@ "value": "70" }, { - "label": "英雄伤害治疗量", + "label": "英雄伤害治疗量", "value": "20%" }, { - "label": "非英雄伤害治疗量", + "label": "非英雄伤害治疗量", "value": "5%" } ], @@ -11124,7 +11124,7 @@ "mana_cost": "100 / 125 / 150", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "3 / 3.5 / 4" }, { @@ -11641,7 +11641,7 @@ "name_loc": "恶性瘟疫", "desc_loc": "使一名敌人感染致命的瘟疫,施加时造成伤害,然后减速目标,并且基于目标的最大生命值造成持续伤害。不论负面状态以何种方式消失,瘟疫都会带着剧毒术士施加给初始目标的所有负面状态一起扩散到附近目标。第一次以外的额外扩散不会造成初始伤害。", "shard_loc": "", - "scepter_loc": "冷却时间减少?秒。感染的单位拥有的魔法抗性会降低。来自英雄目标的额外扩散会造成全额的击中伤害。", + "scepter_loc": "冷却时间减少35秒。感染的单位拥有的魔法抗性会降低。来自英雄目标的额外扩散会造成全额的击中伤害。", "has_shard": false, "has_scepter": true, "granted_by_shard": false, @@ -12083,7 +12083,7 @@ "mana_cost": "95 / 110 / 125 / 140", "specials": [ { - "label": "眩晕持续时间", + "label": "眩晕持续时间", "value": "1 / 1.2 / 1.4 / 1.6" }, { @@ -12503,7 +12503,7 @@ { "key": "death_prophet_exorcism", "name_loc": "驱使恶灵", - "desc_loc": "释放恶灵偷走敌方单位和建筑的生命。恶灵需要回到她身上才能再次攻击。持续时间结束后,死亡先知根据造成的伤害量,获得一定比例的治疗。对建筑造成50%伤害。持续?秒。", + "desc_loc": "释放恶灵偷走敌方单位和建筑的生命。恶灵需要回到她身上才能再次攻击。持续时间结束后,死亡先知根据造成的伤害量,获得一定比例的治疗。对建筑造成50%伤害。持续40秒。", "shard_loc": "", "scepter_loc": "敌人受到死亡先知的技能作用,或被死亡先知攻击时,会有一只恶灵飞出攻击敌人,造成高于平常的伤害,再返回使自身回复生命。", "has_shard": false, @@ -12991,7 +12991,7 @@ "mana_cost": "80", "specials": [ { - "label": "友军治疗增强", + "label": "友军治疗增强", "value": "10 / 15 / 20 / 25%" }, { @@ -13096,8 +13096,8 @@ "key": "pugna_life_drain", "name_loc": "生命汲取", "desc_loc": "持续施法 - 使用生命汲取时,帕格纳吸取目标敌方单位的生命值,并获得其视野。 向队友施放可以将自己的生命值转移给队友。", - "shard_loc": "生命汲取可以对幽冥守卫施放,使生命汲取可以折射至守卫附近?范围内所有敌方英雄,造成75%效果。守卫被摧毁后效果将会中断。", - "scepter_loc": "冷却时间减少?秒。以敌方英雄为目标时,帕格纳每秒降低他们8%技能伤害输出,最高可达到75%,并且自身的技能伤害输出提升,最高可达到100%。魔晶升级下对幽冥守卫施放时降低和提升的速率为4%。负面效果持续8秒。", + "shard_loc": "生命汲取可以对幽冥守卫施放,使生命汲取可以折射至守卫附近700范围内所有敌方英雄,造成75%效果。守卫被摧毁后效果将会中断。", + "scepter_loc": "冷却时间减少50秒。以敌方英雄为目标时,帕格纳每秒降低他们8%技能伤害输出,最高可达到75%,并且自身的技能伤害输出提升,最高可达到100%。魔晶升级下对幽冥守卫施放时降低和提升的速率为4%。负面效果持续8秒。", "has_shard": true, "has_scepter": true, "granted_by_shard": false, @@ -13121,7 +13121,7 @@ "value": "150 / 250 / 350" }, { - "label": "每秒友军汲取/治疗", + "label": "每秒友军汲取/治疗", "value": "150 / 250 / 350" }, { @@ -13227,7 +13227,7 @@ "value": "3 / 4 / 5 / 6" }, { - "label": "单层护盾数值", + "label": "单层护盾数值", "value": "30" }, { @@ -13327,7 +13327,7 @@ { "key": "templar_assassin_trap_teleport", "name_loc": "灵能投射", - "desc_loc": "持续施法 - 圣堂刺客经过?秒持续施法后可以传送至任意灵能陷阱,到达时引爆灵能陷阱,陷阱总是最大效果,并且立刻造成400点额外伤害。灵能投射在持续施法时不会脱离隐匿效果。", + "desc_loc": "持续施法 - 圣堂刺客经过2秒持续施法后可以传送至任意灵能陷阱,到达时引爆灵能陷阱,陷阱总是最大效果,并且立刻造成400点额外伤害。灵能投射在持续施法时不会脱离隐匿效果。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -13392,7 +13392,7 @@ "value": "200 / 300 / 400" }, { - "label": "最短沉默持续时间", + "label": "最短沉默持续时间", "value": "0" }, { @@ -13876,7 +13876,7 @@ "value": "75 / 150 / 225 / 300" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.6" }, { @@ -14206,7 +14206,7 @@ "mana_cost": "70 / 80 / 90 / 100", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.8 / 2 / 2.2 / 2.4" }, { @@ -14252,7 +14252,7 @@ "value": "10 / 20 / 30 / 40" }, { - "label": "作用范围加成", + "label": "作用范围加成", "value": "25 / 50 / 75 / 100" } ], @@ -14351,7 +14351,7 @@ "granted_by_scepter": false, "dispellable": "no", "immunity": 3, - "bkbpierce": null, + "bkbpierce": "Yes", "is_innate": false, "target_label": "无目标", "affects_label": "", @@ -14380,31 +14380,31 @@ "value": "350" }, { - "label": "腐蚀持续时间:", + "label": "腐蚀持续时间", "value": "3" }, { - "label": "腐蚀伤害:", + "label": "腐蚀伤害", "value": "25 / 25 / 25 / 35" }, { - "label": "溅射伤害:", + "label": "溅射伤害", "value": "0 / 75 / 75 / 100%" }, { - "label": "溅射范围:", + "label": "溅射范围", "value": "0 / 275 / 275 / 350" }, { - "label": "冰霜持续时间:", + "label": "冰霜持续时间", "value": "0 / 0 / 3 / 3" }, { - "label": "冰霜减缓移速:", + "label": "冰霜减缓移速", "value": "0 / 0 / 30 / 45%" }, { - "label": "冰霜降低攻速:", + "label": "冰霜降低攻速", "value": "0 / 0 / 50 / 65" } ], @@ -14554,7 +14554,7 @@ "value": "4 / 4.5 / 5 / 5.5" }, { - "label": "每缺失10%生命增强治疗", + "label": "每缺失10%生命增强治疗", "value": "3 / 5 / 7 / 9%" } ], @@ -14594,7 +14594,7 @@ "value": "185" }, { - "label": "最大治疗目标数", + "label": "最大治疗目标数", "value": "4 / 5 / 6 / 7" }, { @@ -14678,7 +14678,7 @@ "value": "1.4 / 1.6 / 1.8" }, { - "label": "薄葬治疗", + "label": "薄葬治疗", "value": "225 / 300 / 375" }, { @@ -14942,7 +14942,7 @@ "value": "50%" }, { - "label": "发射钩爪额外眩晕时间", + "label": "发射钩爪额外眩晕时间", "value": "50%" }, { @@ -15028,7 +15028,7 @@ "mana_cost": "100 / 125 / 150", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2 / 1.4 / 1.6" }, { @@ -15164,7 +15164,7 @@ "mana_cost": "80 / 100 / 120 / 140", "specials": [ { - "label": "眩晕延迟", + "label": "眩晕延迟", "value": "0.35" }, { @@ -15172,7 +15172,7 @@ "value": "150 / 170 / 190 / 210" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.7" } ], @@ -15346,7 +15346,7 @@ "mana_cost": "0", "specials": [ { - "label": "作用范围加成", + "label": "作用范围加成", "value": "0" } ], @@ -15840,7 +15840,7 @@ "value": "7" }, { - "label": "伤害转为治疗", + "label": "伤害转为治疗", "value": "20 / 30 / 40 / 50%" }, { @@ -15876,7 +15876,7 @@ "mana_cost": "0", "specials": [ { - "label": "来自目标最大生命值的治疗", + "label": "来自目标最大生命值的治疗", "value": "1.45 / 2.05 / 2.65 / 3.25%" }, { @@ -15936,7 +15936,7 @@ "name_loc": "感染", "desc_loc": "噬魂鬼进入目标单位的身体,无法被察觉,而且自身在体内时每秒恢复最大生命值的一定百分比。接着可以从宿主体内现身,对周围所有敌方单位造成伤害。如果被感染单位是敌方非英雄单位或中立生物,噬魂鬼可以控制其进行移动和攻击,而且该生物会持续失去最大生命值的一部分。无法对敌方英雄生效。 驱散类型:弱驱散", "shard_loc": "吞噬感染的中立生物会使敌人沾满鲜血,根据宿主的剩余生命值造成持续伤害。", - "scepter_loc": "提升施法距离并且冷却时间降低至?秒。感染可以对敌方英雄施放,持续时间较短,并在他们体内发动攻击,同时提升噬魂鬼的恢复速率。", + "scepter_loc": "提升施法距离并且冷却时间降低至20秒。感染可以对敌方英雄施放,持续时间较短,并在他们体内发动攻击,同时提升噬魂鬼的恢复速率。", "has_shard": true, "has_scepter": true, "granted_by_shard": false, @@ -16198,7 +16198,7 @@ "mana_cost": "0", "specials": [ { - "label": "最大眩晕时间", + "label": "最大眩晕时间", "value": "1.25" }, { @@ -16749,7 +16749,7 @@ "mana_cost": "90 / 105 / 120 / 135", "specials": [ { - "label": "治疗/伤害", + "label": "治疗/伤害", "value": "90 / 160 / 230 / 300" }, { @@ -17047,7 +17047,7 @@ "mana_cost": "70", "specials": [ { - "label": "对英雄:
移动速度减缓", + "label": "对英雄: \n移动速度减缓", "value": "-30 / -40 / -50 / -60%" }, { @@ -17055,7 +17055,7 @@ "value": "50 / 100 / 150 / 200" }, { - "label": "
对非英雄单位:
最大生命值加成", + "label": "对非英雄单位:\n最大生命值加成", "value": "150 / 250 / 350 / 450" }, { @@ -17105,7 +17105,7 @@ "value": "7 / 9 / 11 / 13" }, { - "label": "每秒治疗量", + "label": "每秒治疗量", "value": "4 / 8 / 12 / 16" }, { @@ -17117,7 +17117,7 @@ "value": "9" }, { - "label": "最高总治疗量", + "label": "最高总治疗量", "value": "0" } ], @@ -17201,11 +17201,11 @@ "value": "1200" }, { - "label": "最短缠绕持续时间", + "label": "最短缠绕持续时间", "value": "2" }, { - "label": "每个单位增加缠绕时间", + "label": "每个单位增加缠绕时间", "value": "0.5" } ], @@ -17492,7 +17492,7 @@ "value": "0" }, { - "label": "每个负面效果提供最大生命值治疗", + "label": "每个负面效果提供最大生命值治疗", "value": "0%" } ], @@ -17799,7 +17799,7 @@ "name_loc": "暗夜猎影", "desc_loc": "暗夜魔王在夜晚如鱼得水,攻击和移动都变得迅速。", "shard_loc": "", - "scepter_loc": "移动速度加成提升?%,攻击速度加成提升?。击杀敌方英雄会重置所有基础技能的冷却时间。", + "scepter_loc": "移动速度加成提升15%,攻击速度加成提升50。击杀敌方英雄会重置所有基础技能的冷却时间。", "has_shard": false, "has_scepter": true, "granted_by_shard": false, @@ -18093,7 +18093,7 @@ "value": "2" }, { - "label": "缠绕持续时间", + "label": "缠绕持续时间", "value": "3" }, { @@ -18135,7 +18135,7 @@ "mana_cost": "0", "specials": [ { - "label": "英雄生命值治疗", + "label": "英雄生命值治疗", "value": "1.9%" } ], @@ -18361,15 +18361,15 @@ "mana_cost": "50", "specials": [ { - "label": "隐身持续时间", + "label": "隐身持续时间", "value": "20 / 25 / 30 / 35" }, { - "label": "进入隐身时间", + "label": "进入隐身时间", "value": "1 / 0.75 / 0.5 / 0.25" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1 / 1.2 / 1.4 / 1.6" }, { @@ -18634,7 +18634,7 @@ "value": "175" }, { - "label": "进入隐身时间", + "label": "进入隐身时间", "value": "0.25" }, { @@ -18688,7 +18688,7 @@ "name_loc": "时光倒流", "desc_loc": "编织者回到五秒前的时间点,获得当时的生命值和魔法值。不影响冷却时间、金钱和经验。 驱散类型:强驱散", "shard_loc": "", - "scepter_loc": "时光倒流可以对?施法距离内的友方英雄施放。", + "scepter_loc": "时光倒流可以对500施法距离内的友方英雄施放。", "has_shard": false, "has_scepter": true, "granted_by_shard": false, @@ -18905,7 +18905,7 @@ "value": "0.2" }, { - "label": "最大眩晕时间", + "label": "最大眩晕时间", "value": "1.25 / 1.5 / 1.75 / 2" }, { @@ -19574,7 +19574,7 @@ "value": "5 / 10 / 15 / 20" }, { - "label": "治疗增强", + "label": "治疗增强", "value": "5 / 10 / 15 / 20%" } ], @@ -19638,11 +19638,11 @@ "mana_cost": "200 / 300 / 400", "specials": [ { - "label": "初始治疗", + "label": "初始治疗", "value": "200 / 300 / 400" }, { - "label": "每秒治疗量", + "label": "每秒治疗量", "value": "20 / 30 / 40" }, { @@ -20014,7 +20014,7 @@ "value": "725 / 750 / 775 / 800" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.8 / 2.2 / 2.6 / 3" } ], @@ -20392,7 +20392,7 @@ "value": "4" }, { - "label": "眩晕持续时间", + "label": "眩晕持续时间", "value": "0.66" } ], @@ -20535,7 +20535,7 @@ { "key": "ursa_earthshock", "name_loc": "震撼大地", - "desc_loc": "熊战士向前跳跃250距离并猛击地面带来强烈的冲击,对附近范围内的所有敌方单位造成伤害并减速?秒。", + "desc_loc": "熊战士向前跳跃250距离并猛击地面带来强烈的冲击,对附近范围内的所有敌方单位造成伤害并减速4秒。", "shard_loc": "震撼大地对击中的敌人施加3层怒意狂击。", "scepter_loc": "", "has_shard": true, @@ -20601,7 +20601,7 @@ "value": "400" }, { - "label": "减速抗性", + "label": "减速抗性", "value": "25%" }, { @@ -20713,7 +20713,7 @@ "value": "80%" }, { - "label": "状态抗性", + "label": "状态抗性", "value": "50%" }, { @@ -20831,7 +20831,7 @@ "value": "275 / 325 / 375 / 425" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.3 / 1.6 / 1.9 / 2.2" } ], @@ -20867,7 +20867,7 @@ "value": "8 / 12 / 16 / 20%" }, { - "label": "状态抗性", + "label": "状态抗性", "value": "40 / 50 / 60 / 70%" }, { @@ -20903,7 +20903,7 @@ "mana_cost": "0", "specials": [ { - "label": "重击概率", + "label": "重击概率", "value": "17%" }, { @@ -20911,7 +20911,7 @@ "value": "25 / 30 / 35 / 40%" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.9 / 1.1 / 1.3 / 1.5" }, { @@ -21187,7 +21187,7 @@ "value": "6" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.3 / 1.7 / 2.1 / 2.5" }, { @@ -21203,7 +21203,7 @@ { "key": "gyrocopter_flak_cannon", "name_loc": "高射火炮", - "desc_loc": "矮人直升机的攻击会击中目标周围一定范围内的所有敌人,持续一定次数的攻击。只有主要目标会受到致命一击等攻击特效。持续?秒或攻击次数耗尽。", + "desc_loc": "矮人直升机的攻击会击中目标周围一定范围内的所有敌人,持续一定次数的攻击。只有主要目标会受到致命一击等攻击特效。持续12秒或攻击次数耗尽。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -21486,7 +21486,7 @@ "mana_cost": "100", "specials": [ { - "label": "最长眩晕时间", + "label": "最长眩晕时间", "value": "1.7 / 2.2 / 2.7 / 3.2" }, { @@ -21936,7 +21936,7 @@ "mana_cost": "100", "specials": [ { - "label": "急速冷却持续时间()", + "label": "急速冷却持续时间(冰)", "value": "3 / 3.4 / 3.8 / 4.2 / 4.6 / 5 / 5.4 / 5.8 / 6.2" }, { @@ -21944,11 +21944,11 @@ "value": "0.4" }, { - "label": "冻结冷却时间()", + "label": "冻结冷却时间(冰)", "value": "0.8 / 0.77 / 0.74 / 0.71 / 0.68 / 0.65 / 0.62 / 0.59 / 0.56" }, { - "label": "冷却伤害()", + "label": "冷却伤害(冰)", "value": "28 / 36 / 44 / 52 / 60 / 68 / 76 / 84 / 92" } ], @@ -21988,19 +21988,19 @@ "value": "450" }, { - "label": "敌方减速()", + "label": "敌方减速(冰)", "value": "-20 / -25 / -30 / -35 / -40 / -45 / -50 / -55 / -60%" }, { - "label": "自身速度变化()", + "label": "自身速度变化(雷)", "value": "-20 / -15 / -10 / -5 / 0 / 5 / 10 / 15 / 20%" }, { - "label": "生命恢复()", + "label": "生命恢复(冰)", "value": "2 / 4 / 6 / 8 / 10 / 12 / 14 / 16 / 18" }, { - "label": "魔法恢复()", + "label": "魔法恢复(雷)", "value": "2 / 4 / 6 / 8 / 10 / 12 / 14 / 16 / 18" } ], @@ -22034,7 +22034,7 @@ "mana_cost": "140", "specials": [ { - "label": "最大距离()", + "label": "最大距离(雷)", "value": "1500 / 1800 / 2100 / 2400 / 2700 / 3000 / 3300 / 3600 / 3900" }, { @@ -22042,7 +22042,7 @@ "value": "200" }, { - "label": "滞空时间()", + "label": "滞空时间(冰)", "value": "1.2 / 1.4 / 1.6 / 1.8 / 2 / 2.2 / 2.4 / 2.6 / 2.8" }, { @@ -22050,15 +22050,15 @@ "value": "50" }, { - "label": "加成伤害()", + "label": "加成伤害(雷)", "value": "45 / 90 / 135 / 180 / 225 / 270 / 315 / 360 / 405" }, { - "label": "气旋每秒伤害()", + "label": "气旋每秒伤害(雷)", "value": "0" }, { - "label": "气旋持续时间()", + "label": "气旋持续时间(冰)", "value": "0" } ], @@ -22100,7 +22100,7 @@ "value": "675" }, { - "label": "最大燃烧魔法量()", + "label": "最大燃烧魔法量(雷)", "value": "100 / 175 / 250 / 325 / 400 / 475 / 550 / 625 / 700" }, { @@ -22140,11 +22140,11 @@ "mana_cost": "75", "specials": [ { - "label": "攻击速度提升()", + "label": "攻击速度提升(雷)", "value": "10 / 22 / 34 / 46 / 58 / 70 / 82 / 94 / 106" }, { - "label": "攻击力提升()", + "label": "攻击力提升(火)", "value": "10 / 22 / 34 / 46 / 58 / 70 / 82 / 94 / 106" }, { @@ -22188,7 +22188,7 @@ "value": "275" }, { - "label": "滚动距离()", + "label": "滚动距离(雷)", "value": "465 / 615 / 780 / 930 / 1095 / 1245 / 1410 / 1575 / 1725" }, { @@ -22196,7 +22196,7 @@ "value": "0.5" }, { - "label": "撞击伤害()", + "label": "撞击伤害(火)", "value": "55 / 75 / 95 / 115 / 135 / 155 / 175 / 195 / 215" }, { @@ -22204,7 +22204,7 @@ "value": "3" }, { - "label": "每秒烧灼伤害()", + "label": "每秒烧灼伤害(火)", "value": "10 / 15 / 20 / 25 / 30 / 35 / 40 / 45 / 50" } ], @@ -22244,7 +22244,7 @@ "value": "175" }, { - "label": "伤害()", + "label": "伤害(火)", "value": "175 / 225 / 275 / 325 / 375 / 425 / 475 / 525 / 575" } ], @@ -22276,31 +22276,31 @@ "mana_cost": "75", "specials": [ { - "label": "攻击力()", + "label": "攻击力(火)", "value": "20 / 30 / 40 / 50 / 60 / 70 / 80 / 90 / 100" }, { - "label": "护甲()", + "label": "护甲(火)", "value": "0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8" }, { - "label": "攻击距离()", + "label": "攻击距离(冰)", "value": "305 / 360 / 415 / 470 / 525 / 580 / 635 / 690 / 745" }, { - "label": "生命值()", + "label": "生命值(冰)", "value": "300 / 400 / 500 / 600 / 700 / 800 / 900 / 1000 / 1100" }, { - "label": "持续时间()", + "label": "持续时间(冰)", "value": "24 / 30 / 36 / 42 / 48 / 54 / 60 / 66 / 72" }, { - "label": "精灵数量()", + "label": "精灵数量(冰)", "value": "1 / 1 / 1 / 2 / 2 / 2 / 2 / 3 / 3" }, { - "label": "精灵数量()", + "label": "精灵数量(火)", "value": "1 / 1 / 1 / 2 / 2 / 2 / 2 / 3 / 3" } ], @@ -22332,11 +22332,11 @@ "mana_cost": "125", "specials": [ { - "label": "持续时间()", + "label": "持续时间(冰)", "value": "3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11" }, { - "label": "减速()", + "label": "减速(冰)", "value": "-30 / -45 / -60 / -75 / -90 / -105 / -120 / -135 / -150%" }, { @@ -22344,7 +22344,7 @@ "value": "2" }, { - "label": "每秒伤害()", + "label": "每秒伤害(火)", "value": "30 / 36 / 42 / 48 / 54 / 60 / 66 / 72 / 78" }, { @@ -22356,11 +22356,11 @@ "value": "105" }, { - "label": "缠绕时间()", + "label": "缠绕时间(冰)", "value": "0" }, { - "label": "缠绕伤害()", + "label": "缠绕伤害(冰)", "value": "0" } ], @@ -22398,15 +22398,15 @@ "value": "1000" }, { - "label": "伤害()", + "label": "伤害(火)", "value": "70 / 110 / 150 / 190 / 230 / 270 / 310 / 350 / 390" }, { - "label": "击退持续时间()", + "label": "击退持续时间(冰)", "value": "1.1 / 1.2 / 1.3 / 1.4 / 1.5 / 1.6 / 1.7 / 1.8 / 1.9" }, { - "label": "缴械持续时间()", + "label": "缴械持续时间(雷)", "value": "1.5 / 2 / 2.5 / 3 / 3.5 / 4 / 4.5 / 5 / 5.5" } ], @@ -22608,7 +22608,7 @@ "value": "4" }, { - "label": "沉默持续时间", + "label": "沉默持续时间", "value": "3 / 4 / 5 / 6" } ], @@ -22866,11 +22866,11 @@ "mana_cost": "175", "specials": [ { - "label": "护盾", + "label": "护盾", "value": "120 / 180 / 240 / 300" }, { - "label": "最大魔法值转为护盾", + "label": "最大魔法值转为护盾", "value": "12%" }, { @@ -23471,31 +23471,31 @@ "mana_cost": "0", "specials": [ { - "label": "魔法抗性", + "label": "魔法抗性", "value": "8 / 12 / 16 / 20%" }, { - "label": "护甲", + "label": "护甲", "value": "3 / 5 / 7 / 9" }, { - "label": "闪避", + "label": "闪避", "value": "15 / 20 / 25 / 30%" }, { - "label": "移动速度", + "label": "移动速度", "value": "4 / 6 / 8 / 10%" }, { - "label": "致命一击几率", + "label": "致命一击几率", "value": "20%" }, { - "label": "致命一击伤害", + "label": "致命一击伤害", "value": "120 / 140 / 160 / 180%" }, { - "label": "攻击速度", + "label": "攻击速度", "value": "10 / 20 / 30 / 40" } ], @@ -23527,7 +23527,7 @@ "mana_cost": "0", "specials": [ { - "label": "最高状态抗性", + "label": "最高状态抗性", "value": "10%" }, { @@ -23571,27 +23571,27 @@ "value": "16 / 20 / 24 / 24" }, { - "label": "大地战士生命值", + "label": "大地战士生命值", "value": "1400 / 2300 / 3200 / 4100" }, { - "label": "大地战士攻击力", + "label": "大地战士攻击力", "value": "35 / 70 / 105 / 140" }, { - "label": "狂风战士生命值", + "label": "狂风战士生命值", "value": "1000 / 1500 / 2000 / 2500" }, { - "label": "狂风战士攻击力", + "label": "狂风战士攻击力", "value": "30 / 50 / 70 / 90" }, { - "label": "烈火战士生命值", + "label": "烈火战士生命值", "value": "1300 / 1450 / 1600 / 1750" }, { - "label": "烈火战士攻击力", + "label": "烈火战士攻击力", "value": "70 / 120 / 170 / 220" } ], @@ -23823,7 +23823,7 @@ "mana_cost": "150", "specials": [ { - "label": "净愈治疗", + "label": "净愈治疗", "value": "450" }, { @@ -24009,11 +24009,11 @@ "value": "10" }, { - "label": "缠绕持续时间", + "label": "缠绕持续时间", "value": "1.2 / 1.6 / 2 / 2.4" }, { - "label": "每秒缠绕伤害", + "label": "每秒缠绕伤害", "value": "90" } ], @@ -24316,11 +24316,11 @@ "mana_cost": "110", "specials": [ { - "label": "最短眩晕", + "label": "最短眩晕", "value": "1.25 / 1.5 / 1.75 / 2" }, { - "label": "最长眩晕", + "label": "最长眩晕", "value": "1.75 / 2.25 / 2.75 / 3.25" }, { @@ -24968,7 +24968,7 @@ "value": "0.9 / 1.1 / 1.3 / 1.5" }, { - "label": "伤害转为治疗", + "label": "伤害转为治疗", "value": "20%" }, { @@ -24976,7 +24976,7 @@ "value": "20 / 40 / 60 / 80" }, { - "label": "治疗作用范围", + "label": "治疗作用范围", "value": "650" } ], @@ -25011,7 +25011,7 @@ "mana_cost": "65 / 70 / 75 / 80", "specials": [ { - "label": "每秒治疗量", + "label": "每秒治疗量", "value": "4 / 7 / 10 / 13" }, { @@ -25208,7 +25208,7 @@ "name_loc": "火焰爆轰", "desc_loc": "以一波火焰轰击一个敌方单位,造成伤害并使目标眩晕。", "shard_loc": "", - "scepter_loc": "很精通的火焰爆轰,冷却时间减少?秒,施法速度提升25%。", + "scepter_loc": "很精通的火焰爆轰,冷却时间减少1秒,施法速度提升25%。", "has_shard": false, "has_scepter": true, "granted_by_shard": false, @@ -25228,7 +25228,7 @@ "mana_cost": "70 / 85 / 100 / 115", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2" }, { @@ -25350,7 +25350,7 @@ "mana_cost": "400", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2" } ], @@ -25610,7 +25610,7 @@ "mana_cost": "80 / 90 / 100 / 110", "specials": [ { - "label": "每个单位提供伤害/治疗量", + "label": "每个单位提供伤害/治疗量", "value": "14 / 26 / 38 / 50" }, { @@ -25622,7 +25622,7 @@ "value": "1300" }, { - "label": "墓碑治疗量", + "label": "墓碑治疗量", "value": "4 / 8 / 12 / 16" }, { @@ -25861,7 +25861,7 @@ "value": "0.95 / 1.2 / 1.45 / 1.7" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.9 / 1.1 / 1.3 / 1.5" }, { @@ -26029,7 +26029,7 @@ "value": "0%" }, { - "label": "作用范围加成", + "label": "作用范围加成", "value": "0" } ], @@ -26433,7 +26433,7 @@ "mana_cost": "90 / 100 / 110 / 120", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.1 / 1.4 / 1.7 / 2" }, { @@ -26515,7 +26515,7 @@ "value": "2" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.7 / 1 / 1.3 / 1.6" }, { @@ -26618,7 +26618,7 @@ "key": "nyx_assassin_vendetta", "name_loc": "复仇", "desc_loc": "司夜刺客进入隐身状态并获得移动速度加成。如果司夜刺客以攻击打破隐身,当次攻击将造成超高额外伤害,并对目标施加破坏效果。司夜刺客当次攻击具有75额外攻击距离,并且攻击动作加快70%。", - "shard_loc": "冷却时间减少?秒。在复仇的最初15秒内,司夜刺客为极速状态,并且移动无视地形。", + "shard_loc": "冷却时间减少10秒。在复仇的最初15秒内,司夜刺客为极速状态,并且移动无视地形。", "scepter_loc": "", "has_shard": true, "has_scepter": false, @@ -26651,7 +26651,7 @@ "value": "300 / 400 / 500" }, { - "label": "破坏持续时间", + "label": "破坏持续时间", "value": "4" } ], @@ -27230,7 +27230,7 @@ "value": "100 / 175 / 250" }, { - "label": "冲击波治疗", + "label": "冲击波治疗", "value": "70%" } ], @@ -27602,7 +27602,7 @@ "value": "4%" }, { - "label": "最高治疗增强", + "label": "最高治疗增强", "value": "4%" }, { @@ -27610,7 +27610,7 @@ "value": "0%" }, { - "label": "当前治疗增强", + "label": "当前治疗增强", "value": "0%" } ], @@ -28072,11 +28072,11 @@ "value": "700" }, { - "label": "束缚持续时间", + "label": "束缚持续时间", "value": "2.5 / 2.75 / 3 / 3.25" }, { - "label": "束缚作用范围", + "label": "束缚作用范围", "value": "400" }, { @@ -29031,7 +29031,7 @@ "value": "70 / 140 / 210 / 280" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.6 / 1.8 / 2 / 2.2" }, { @@ -29483,7 +29483,7 @@ "value": "0.6" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.75" } ], @@ -29521,7 +29521,7 @@ "value": "50%" }, { - "label": "减速抗性", + "label": "减速抗性", "value": "24%" } ], @@ -29561,7 +29561,7 @@ "value": "100 / 200 / 300" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "2.5 / 3 / 3.5" } ], @@ -30373,11 +30373,11 @@ "value": "40 / 65 / 90 / 115" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.6 / 0.8 / 1 / 1.2" }, { - "label": "每个英雄提升眩晕时间", + "label": "每个英雄提升眩晕时间", "value": "0.2" }, { @@ -30959,7 +30959,7 @@ "value": "40%" }, { - "label": "伤害/治疗", + "label": "伤害/治疗", "value": "95 / 170 / 245 / 320" } ], @@ -31001,7 +31001,7 @@ "value": "675" }, { - "label": "全伤害护盾", + "label": "全伤害护盾", "value": "120 / 150 / 180 / 210" }, { @@ -31550,11 +31550,11 @@ "value": "6" }, { - "label": "伤害转为护盾", + "label": "伤害转为护盾", "value": "0%" }, { - "label": "护盾持续时间", + "label": "护盾持续时间", "value": "0" } ], @@ -31856,7 +31856,7 @@ "value": "6" }, { - "label": "缴械持续时间", + "label": "缴械持续时间", "value": "2.25 / 2.5 / 2.75 / 3" }, { @@ -31910,7 +31910,7 @@ "value": "200 / 300 / 400 / 500" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.8 / 1 / 1.2 / 1.4" }, { @@ -32264,7 +32264,7 @@ "value": "70%" }, { - "label": "魔法护盾", + "label": "魔法护盾", "value": "60 / 140 / 220 / 300" } ], @@ -32557,11 +32557,11 @@ "value": "60 / 70 / 80 / 90" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.3 / 0.5 / 0.7 / 0.9" }, { - "label": "额外眩晕时间(经过残岩)", + "label": "额外眩晕时间(经过残岩)", "value": "0.3 / 0.5 / 0.7 / 0.9" } ], @@ -32603,7 +32603,7 @@ "value": "900" }, { - "label": "沉默持续时间", + "label": "沉默持续时间", "value": "2.3 / 2.7 / 3.1 / 3.5" }, { @@ -33327,7 +33327,7 @@ "mana_cost": "75", "specials": [ { - "label": "恐惧持续时间", + "label": "恐惧持续时间", "value": "2" }, { @@ -33619,11 +33619,11 @@ "value": "1.5 / 3 / 4.5 / 6%" }, { - "label": "每秒基础治疗", + "label": "每秒基础治疗", "value": "7 / 10 / 13 / 16" }, { - "label": "最大生命值治疗", + "label": "最大生命值治疗", "value": "0.4 / 0.8 / 1.2 / 1.6%" }, { @@ -33664,7 +33664,7 @@ { "key": "phoenix_supernova", "name_loc": "超新星", - "desc_loc": "凤凰十分乐意终结自己现在的生命来换取重生。将自己变为一颗燃烧的恒星,灼烧附近一大片区域内的敌人。恒星受到敌方英雄一定次数的攻击后将会被摧毁。经过?秒后恒星将会爆炸,眩晕周围所有敌人。而凤凰的生命和魔法值都会回到满状态,并且所有技能的冷却时间都会刷新。 驱散类型:强驱散", + "desc_loc": "凤凰十分乐意终结自己现在的生命来换取重生。将自己变为一颗燃烧的恒星,灼烧附近一大片区域内的敌人。恒星受到敌方英雄一定次数的攻击后将会被摧毁。经过6秒后恒星将会爆炸,眩晕周围所有敌人。而凤凰的生命和魔法值都会回到满状态,并且所有技能的冷却时间都会刷新。 驱散类型:强驱散", "shard_loc": "", "scepter_loc": "摧毁超新星所需的攻击次数增加,凤凰可以对友方英雄施放超新星,使双方共同变为恒星进行重生。", "has_shard": false, @@ -33694,7 +33694,7 @@ "value": "50 / 80 / 110" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.6 / 2 / 2.4" }, { @@ -33819,11 +33819,11 @@ "value": "100 / 160 / 220 / 280" }, { - "label": "最短缠绕时间", + "label": "最短缠绕时间", "value": "0.75" }, { - "label": "最长缠绕时间", + "label": "最长缠绕时间", "value": "2.75" }, { @@ -33900,11 +33900,11 @@ "value": "90 / 180 / 270 / 360" }, { - "label": "每秒治疗量", + "label": "每秒治疗量", "value": "15 / 25 / 35 / 45" }, { - "label": "治疗生命值总量", + "label": "治疗生命值总量", "value": "150 / 250 / 350 / 450" }, { @@ -33948,7 +33948,7 @@ "value": "10" }, { - "label": "每秒伤害/治疗", + "label": "每秒伤害/治疗", "value": "30" }, { @@ -33988,7 +33988,7 @@ "value": "7 / 8.5 / 10" }, { - "label": "结算治疗增强", + "label": "结算治疗增强", "value": "100%" } ], @@ -34219,11 +34219,11 @@ "value": "4" }, { - "label": "每秒基础治疗", + "label": "每秒基础治疗", "value": "40 / 45 / 50 / 55" }, { - "label": "每秒最大生命值治疗", + "label": "每秒最大生命值治疗", "value": "2.25 / 3 / 3.75 / 4.5%" }, { @@ -34703,7 +34703,7 @@ "mana_cost": "85 / 90 / 95 / 100", "specials": [ { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.7 / 0.9 / 1.1 / 1.3" }, { @@ -35008,7 +35008,7 @@ "mana_cost": "100 / 120 / 140 / 160", "specials": [ { - "label": "缠绕持续时间", + "label": "缠绕持续时间", "value": "1 / 1.5 / 2 / 2.5" }, { @@ -35090,7 +35090,7 @@ "value": "4" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.5 / 1.8 / 2.1 / 2.4" }, { @@ -35203,7 +35203,7 @@ "value": "450 / 500 / 550" }, { - "label": "恐惧持续时间", + "label": "恐惧持续时间", "value": "2.8 / 3 / 3.2" } ], @@ -35363,11 +35363,11 @@ "value": "60 / 120 / 180 / 240" }, { - "label": "护盾", + "label": "护盾", "value": "60 / 120 / 180 / 240" }, { - "label": "护盾持续时间", + "label": "护盾持续时间", "value": "6" }, { @@ -35513,7 +35513,7 @@ "value": "150" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2" }, { @@ -35767,7 +35767,7 @@ "value": "90 / 180 / 270 / 360" }, { - "label": "最大眩晕时间", + "label": "最大眩晕时间", "value": "1.6 / 2 / 2.4 / 2.8" }, { @@ -35857,7 +35857,7 @@ "value": "6 / 7 / 8" }, { - "label": "束缚作用范围", + "label": "束缚作用范围", "value": "600" } ], @@ -36041,7 +36041,7 @@ "value": "265" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.5 / 1.7 / 1.9 / 2.1" }, { @@ -36465,15 +36465,15 @@ "value": "60 / 110 / 160 / 210" }, { - "label": "护盾持续时间", + "label": "护盾持续时间", "value": "10" }, { - "label": "基础伤害护盾", + "label": "基础伤害护盾", "value": "25 / 50 / 75 / 100" }, { - "label": "每击中一个英雄护盾数值", + "label": "每击中一个英雄护盾数值", "value": "50 / 70 / 90 / 110" }, { @@ -36481,7 +36481,7 @@ "value": "0" }, { - "label": "沉默持续时间", + "label": "沉默持续时间", "value": "0" } ], @@ -36725,11 +36725,11 @@ "value": "75 / 150 / 225 / 300" }, { - "label": "撞击眩晕时间", + "label": "撞击眩晕时间", "value": "1 / 1.4 / 1.8 / 2.2" }, { - "label": "治疗量", + "label": "治疗量", "value": "0" } ], @@ -36842,7 +36842,7 @@ "value": "400" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.2" } ], @@ -37046,7 +37046,7 @@ "value": "900 / 1000 / 1100 / 1200" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.3 / 1.6 / 1.9 / 2.2" }, { @@ -37204,7 +37204,7 @@ "name_loc": "热血竞技场", "desc_loc": "经过短暂的列队时间,玛尔斯召唤出环绕着战士的竞技场,战士们将阻挡敌人的攻击和动向。竞技场内的敌方英雄靠近边缘时将被战矛攻击,受到伤害并被击退。", "shard_loc": "", - "scepter_loc": "冷却时间降低?秒,持续时间提升。如果敌人在竞技场内阵亡,玛尔斯和竞技场内所有友军都会回复35%最大生命和魔法,并且获得35%攻击力加成,持续20秒。这个效果可以叠加。", + "scepter_loc": "冷却时间降低10秒,持续时间提升。如果敌人在竞技场内阵亡,玛尔斯和竞技场内所有友军都会回复35%最大生命和魔法,并且获得35%攻击力加成,持续20秒。这个效果可以叠加。", "has_shard": false, "has_scepter": true, "granted_by_shard": false, @@ -37314,7 +37314,7 @@ { "key": "ringmaster_tame_the_beasts", "name_loc": "驯兽术", - "desc_loc": "持续施法 - 百戏大王卷起他的鞭子,最多持续?秒,然后猛甩出去。被鞭打的敌人会受到伤害,并且被恐惧,逃离百戏大王。持续施法时间会使伤害和恐惧时间成倍增加,但是作用范围减少。", + "desc_loc": "持续施法 - 百戏大王卷起他的鞭子,最多持续1秒,然后猛甩出去。被鞭打的敌人会受到伤害,并且被恐惧,逃离百戏大王。持续施法时间会使伤害和恐惧时间成倍增加,但是作用范围减少。", "shard_loc": "", "scepter_loc": "", "has_shard": false, @@ -37352,11 +37352,11 @@ "value": "180 / 280 / 380 / 480" }, { - "label": "最短恐惧时间", + "label": "最短恐惧时间", "value": "0.1 / 0.2 / 0.3 / 0.4" }, { - "label": "最长恐惧时间", + "label": "最长恐惧时间", "value": "0.6 / 0.8 / 1 / 1.2" } ], @@ -37404,7 +37404,7 @@ "value": "50 / 60 / 70 / 80%" }, { - "label": "减速抗性", + "label": "减速抗性", "value": "100%" }, { @@ -37801,7 +37801,7 @@ "value": "25 / 40 / 55 / 70" }, { - "label": "撞击眩晕时间", + "label": "撞击眩晕时间", "value": "0.6 / 0.8 / 1 / 1.2" }, { @@ -37899,11 +37899,11 @@ "value": "3" }, { - "label": "攻击英雄治疗量", + "label": "攻击英雄治疗量", "value": "35 / 40 / 45 / 50%" }, { - "label": "攻击普通单位治疗减少", + "label": "攻击普通单位治疗减少", "value": "40%" }, { @@ -37987,7 +37987,7 @@ "mana_cost": "150 / 200 / 250", "specials": [ { - "label": "每次脉冲治疗", + "label": "每次脉冲治疗", "value": "45 / 70 / 95" }, { @@ -38003,7 +38003,7 @@ "value": "130 / 160 / 190" }, { - "label": "落地眩晕时间", + "label": "落地眩晕时间", "value": "1.2 / 1.4 / 1.6" }, { @@ -38159,7 +38159,7 @@ "value": "75 / 150 / 225 / 300" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.8 / 1.1 / 1.4 / 1.7" } ], @@ -38205,7 +38205,7 @@ "value": "12 / 18 / 24 / 30%" }, { - "label": "共用护盾数值", + "label": "共用护盾数值", "value": "90 / 160 / 230 / 300" } ], @@ -38410,7 +38410,7 @@ "value": "1.7" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.7 / 1 / 1.3 / 1.6" } ], @@ -38522,7 +38522,7 @@ "value": "0" }, { - "label": "破坏持续时间", + "label": "破坏持续时间", "value": "0" } ], @@ -38576,7 +38576,7 @@ "value": "1.75" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "1.4" }, { @@ -38626,7 +38626,7 @@ "value": "0.75" }, { - "label": "眩晕时间", + "label": "眩晕时间", "value": "0.2" }, { @@ -38668,11 +38668,11 @@ "mana_cost": "0", "specials": [ { - "label": "减速抗性", + "label": "减速抗性", "value": "0%" }, { - "label": "作用范围加成", + "label": "作用范围加成", "value": "0%" } ], @@ -38774,7 +38774,7 @@ "value": "100 / 175 / 250 / 325" }, { - "label": "跳弹恐惧持续时间", + "label": "跳弹恐惧持续时间", "value": "0.8 / 0.95 / 1.1 / 1.25" }, { @@ -38826,7 +38826,7 @@ "value": "-20%" }, { - "label": "沉默持续时间", + "label": "沉默持续时间", "value": "1.5 / 2 / 2.5 / 3" } ], @@ -39178,7 +39178,7 @@ "value": "3 / 6 / 9 / 12%" }, { - "label": "刺中眩晕时间", + "label": "刺中眩晕时间", "value": "0.5" }, { @@ -39344,7 +39344,7 @@ "value": "30 / 35 / 40 / 45%" }, { - "label": "减速抗性", + "label": "减速抗性", "value": "15 / 30 / 45 / 60%" }, { @@ -39388,7 +39388,7 @@ "value": "60 / 120 / 180 / 240" }, { - "label": "沉默持续时间", + "label": "沉默持续时间", "value": "2 / 2.25 / 2.5 / 2.75" } ], @@ -39430,7 +39430,7 @@ "value": "125 / 150 / 175 / 200%" }, { - "label": "印记眩晕时间", + "label": "印记眩晕时间", "value": "0.5 / 0.6 / 0.7 / 0.8" }, { @@ -39442,7 +39442,7 @@ "value": "0%" }, { - "label": "招架额外印记眩晕", + "label": "招架额外印记眩晕", "value": "0" } ], @@ -39864,7 +39864,7 @@ "value": "16 / 20 / 24%" }, { - "label": "减速抗性", + "label": "减速抗性", "value": "70 / 75 / 80%" }, { @@ -39872,7 +39872,7 @@ "value": "1" }, { - "label": "减速抗性持续时间", + "label": "减速抗性持续时间", "value": "0.3" } ], @@ -39904,7 +39904,7 @@ "mana_cost": "25 / 35 / 45", "specials": [ { - "label": "治疗", + "label": "治疗", "value": "34 / 56 / 78" } ], diff --git a/web/export_relations_site.py b/web/export_relations_site.py index cff0f62..844c4e7 100644 --- a/web/export_relations_site.py +++ b/web/export_relations_site.py @@ -51,7 +51,7 @@ from shared.paths import ( from serve_relations import WEB_DIR, build_payload -SITE_VERSION = "0.5.86" +SITE_VERSION = "0.5.87" DEFAULT_OSS_BASE = "https://climperor.oss-cn-shanghai.aliyuncs.com" diff --git a/web/fetch_hero_abilities.py b/web/fetch_hero_abilities.py index 82aeb39..3ac840d 100644 --- a/web/fetch_hero_abilities.py +++ b/web/fetch_hero_abilities.py @@ -328,7 +328,8 @@ def special_rows(sv: list) -> list[dict]: for row in sv: if not isinstance(row, dict): continue - heading = str(row.get("heading_loc") or "").strip().rstrip("::").strip() + # Valve paints effect words with ; strip for plain UI text. + heading = strip_html(str(row.get("heading_loc") or "")).rstrip("::").strip() if not heading: continue value = fmt_num_list( diff --git a/web/frontend/app.js b/web/frontend/app.js index fa00928..3a5f6d6 100644 --- a/web/frontend/app.js +++ b/web/frontend/app.js @@ -2254,7 +2254,7 @@ function mountSkillInspect(root, skillEnt, heroKey) { main.appendChild(head); const desc = document.createElement("div"); desc.className = "skill-info-desc"; - desc.textContent = skillEnt.desc_loc || "暂无描述"; + desc.textContent = stripItemDesc(skillEnt.desc_loc) || "暂无描述"; main.appendChild(desc); // Params panel, dota2.com.cn layout: a two-column "generic" grid of meta @@ -2267,7 +2267,8 @@ function mountSkillInspect(root, skillEnt, heroKey) { row.className = "skill-param"; const lab = document.createElement("span"); lab.className = "skill-param-label"; - lab.textContent = label + ":"; + // Defensive: stale caches may still carry Valve in special labels. + lab.textContent = stripItemDesc(label) + ":"; const val = document.createElement("span"); val.className = "skill-param-value"; val.textContent = value; @@ -2310,7 +2311,10 @@ function mountSkillInspect(root, skillEnt, heroKey) { main.appendChild(params); } - // Cooldown / mana footer with icons (actives only; passives have neither). + // Bottom cluster (costs + lore) shares one margin-top:auto so lore is not + // pushed past the column height after the sunk cooldown row. + const foot = document.createElement("div"); + foot.className = "skill-info-foot"; const passiveLike = skillEnt.target_label === "被动" || skillEnt.target_label === "光环"; if (!passiveLike && (skillEnt.cooldown || skillEnt.mana_cost)) { @@ -2342,15 +2346,16 @@ function mountSkillInspect(root, skillEnt, heroKey) { mp.appendChild(txt); costs.appendChild(mp); } - main.appendChild(costs); + foot.appendChild(costs); } - - // Flavor lore line. if (skillEnt.lore_loc) { const lore = document.createElement("div"); lore.className = "skill-info-lore"; - lore.textContent = skillEnt.lore_loc; - main.appendChild(lore); + lore.textContent = stripItemDesc(skillEnt.lore_loc); + foot.appendChild(lore); + } + if (foot.childElementCount) { + main.appendChild(foot); } body.appendChild(main); @@ -3160,8 +3165,10 @@ function statChip(icon) { } function patchNoteHtml(note) { - const esc = escapeHtml(note == null ? "" : String(note)); - return esc.replace(/<br\s*\/?>/gi, "
"); + // Valve notes carry
, , . + // Keep line breaks; strip the rest so raw tags never leak into the UI. + const plain = stripItemDesc(note); + return escapeHtml(plain).replace(/\n/g, "
"); } function renderNotesList(notes) { @@ -3250,7 +3257,7 @@ function renderPatchSection(root, title, html) { if (!html) return; const sec = document.createElement("section"); sec.className = "patch-section"; - sec.innerHTML = `

${escapeHtml(title)}

${html}`; + sec.innerHTML = `

${escapeHtml(stripItemDesc(title))}

${html}`; root.appendChild(sec); } diff --git a/web/frontend/config.js b/web/frontend/config.js index ac420e5..81e744d 100644 --- a/web/frontend/config.js +++ b/web/frontend/config.js @@ -1,4 +1,4 @@ /* Local defaults; production export overwrites via export_relations_site.py. */ -var SITE_VERSION = "0.5.86"; +var SITE_VERSION = "0.5.87"; var ABILITY_VIDEO_BASE = ""; var STATIC_ASSET_BASE = ""; diff --git a/web/frontend/index.html b/web/frontend/index.html index c9e8402..2fffd21 100644 --- a/web/frontend/index.html +++ b/web/frontend/index.html @@ -5,8 +5,8 @@ DOTA2 上分帝 - - + +