修复:
- 修复战报图中若玩家名有html标签会导致图片排版错乱的问题。
- 修复周报与日报中评分条样式不正确的问题。
改进:
- 现在周报与日报改为图片版,依旧由
ejs
生成。去除配置页中周报与日报的“实验性”标识。(目前周报与日报使用同一模板,未来可能会设计数据更丰富的周报,也可能不会_(:3」∠)_ - 优化播报评语随机选择算法离散性,以避免此前若是有多位玩家的随机种子相近则这些玩家选择结果总是相同。
- 优化追踪比赛逻辑:在追踪到群友比赛后等待解析时,此前为按添加顺序等待队列中的比赛,现在修改了判断逻辑,对当前时间分钟数与等待队列的长度进行取余,周期性访问队列中每一场比赛,这样可以优先发送已解析完成的比赛而不会被早加入但迟迟未解析的比赛阻塞。
- 现在可在战报模板
match_1
和玩家信息模板中正确显示打野玩家的对线结果为“野区霸主”并有对应的图标,而不是跟随默认的中路对线结果。(wiki/match_1也已更新。) 查询英雄
:命石技能的技能名栏位添加对应命石图标与背景色用于标识。
修复:
查询英雄
:修复DOTA2 7.37版本更新后API变动导致部分英雄查询报错。
1.2.9-pre更新日志
改进:
- 尝试修改逻辑:在追踪到群友比赛后等待解析时,此前为按添加顺序等待队列中的比赛,现在修改了判断逻辑,对当前时间分钟数与等待队列的长度进行取余,周期性访问队列中每一场比赛,这样可以优先发送已解析完成的比赛而不会被早加入但迟迟未解析的比赛阻塞。
改进:
- 现在可在战报模板
match_1
和玩家信息模板中正确显示打野玩家的对线结果为“野区霸主”并有对应的图标,而不是跟随默认的中路对线结果。(wiki/match_1也已更新。)
修复&改进:
查询英雄
:尝试修复DOTA2 7.37版本更新后API变动导致部分英雄查询报错。查询英雄
:命石技能的技能名栏位添加对应命石图标与背景色用于标识。
新增:
- 新增周报功能,效果等同日报。
- 日报与周报中新增可关闭总结中显示组合的功能。
改进:
- 现在
查询玩家
与查询最近比赛
指令可在私聊状态下使用,必须提供SteamID参数。 - 将战报中的播报评语由随机选取改为固定种子:比赛ID+玩家SteamID+玩家位置,确保在不同调用时刻、次数及平台下,对同一场比赛中的玩家评语保持一致。
查询玩家
指令图片中,玩家近期比赛表中未解析的场次参战率由"?%"改为估算值,显示为"≈xx%"。查询英雄
指令图片中,由于命石带来的属性数值无法确定作用方式(增加或是替换等),去除命石属性前的“+”,请结合命石说明自行判断。(7.37版本更新带来的API变动,导致使用指令查询某些英雄报错问题,暂无法解决)- 比赛图片模板
match_2
中,现在冠绝排名数字位置更准确了。 - 比赛图片模板
match_2
中,比赛段位可以显示星级了。
为什么未解析的比赛需要“估算”?
比赛未解析无法获取“团队击杀数”,若是将己方所有玩家的击杀数相加,则会漏掉那些由小兵、防御塔等非玩家单位击杀数;若是将敌方所有玩家的死亡数相加,又会多出送野、自杀等不应算在己方战果中的计数。目前程序采用将己方所有击杀数累加的方式来估算参战率,可能会略高于实际值。
1.2.8-pre更新日志
改进:
- 现在
查询玩家
可在私聊状态使用,必须提供SteamID参数。 - 将战报中的播报评语由随机选取改为固定种子:比赛ID+玩家SteamID,确保在不同调用时刻、次数及平台下,对同一场比赛中的玩家评语保持一致。
查询玩家
指令图片中,玩家近期比赛表中未解析的场次参战率由"?%"改为估算值,显示为"≈xx%"
改进:
- 比赛图片模板
match_2
中,现在冠绝排名数字位置更准确了。 - 比赛图片模板
match_2
中,比赛段位可以显示星级了。
- 可在配置页设置查询比赛与发布战报时附带stratz比赛链接、查询玩家信息时附带stratz玩家页面链接、查询英雄数据信息时附带刀塔百科对应英雄页面链接,这些选项均默认关闭。
- 修复当同一个steamId在多个已订阅群组中绑定时,仅会向最早绑定的群组发送战报的问题。
- 现在若所有玩家某项属性都为0时不会错误地将对应称号赋予玩家1,而是取消此称号赋予。(此版本前例如所有玩家治疗量都为0,玩家1会获得“奶”称号,而现在将不会有玩家获得“奶”称号)
- 修复无法获取群组相关信息导致的日报功能失效。
- 修复日报功能中统计组合有可能出现重复的问题。
1.2.7-beta更新日志
- 可在配置页设置发布战报时附带stratz比赛链接、查询玩家信息时附带stratz玩家页面链接,这些选项均默认关闭。
- (beta测试中) 尝试修复当同一个steamId在多个已订阅群组中绑定时,仅会向最早绑定的群组发送战报的问题。
- 现在若所有玩家某项属性都为0时不会错误地将对应称号赋予玩家1,而是取消此称号赋予。(此版本前例如所有玩家治疗量都为0,玩家1会获得“奶”称号,而现在将不会有玩家获得“奶”称号)
修复:尝试修复无法获取群组相关信息导致的日报功能失效。
修复:尝试修复日报功能中统计组合有可能出现重复的问题。
改进&修复:修复了查询英雄
图片中 技能数值未被正确替换、全才英雄基础攻击力显示错误的问题,并优化了命石描述显示方式
改进:调整比赛战报图片样式:解析失败时显示的“第-手”改为“第?手”
改进:为英雄艾欧
添加别名:["艾欧", "小精灵"] → ["艾欧", "小精灵", "精灵", "IO"]
修复:修复查询玩家
图片中场次表现评分为0时显示为?的问题
1.2.6-pre更新日志
改进&修复:修复了查询英雄
图片中 技能数值未被正确替换、全才英雄基础攻击力显示错误的问题,并优化了命石描述显示方式
改进:调整比赛战报图片样式:解析失败时显示的“第-手”改为“第?手”
修复:修复查询玩家
图片中场次表现评分为0时显示为?的问题
改进&修复:彻底完善了查询英雄
图片中所有由命石、神杖、魔晶提供或改变的数值说明,修复命石说明中技能数值为百分数时未带百分号的问题。
改进&修复:继续优化查询英雄
代码结构使由命石、神杖、魔晶改变的技能属性更直观;修复某些技能数据中有旧天赋加成数据留存、导致的天赋数值未被正确填充。
改进:为英雄艾欧
添加别名:["艾欧", "小精灵"] → ["艾欧", "小精灵", "精灵", "IO"]
改进:优化查询玩家
图片中近期战绩列表内未解析比赛的显示效果
修复:修复查询英雄
图片技能属性名多显示了一个冒号的问题
修复:使用临时替代方案修复由koishi-4.17.9的bug引起的无法主动发送消息(播报战报等),待koishi更新修复后回滚此改动。
修复:修复使用替代方案导致日报失效的问题。
修复:修正调用help指令时本插件某些指令的说明错误
修复:修复取消订阅
指令失效的问题
修复:修复了比赛战报图片中称号摸
判定不正确的问题
改进:微调了比赛战报图片模板match_2
中称号的显示样式
移除:取消查询英雄
的缓存功能,原因为valve的API返回的数据可能包含未本地化的字段(例如这次的7.36b更新后获取到的很多改动后技能说明暂时都是英文),这些数据无法根据版本判断是否需要更新缓存。
修复:修复了查询英雄
图片中某些命石提供技能可能被判定为先天技能的问题。
改进:优化比赛战报图片中,对多个同种物品(例如双护腕双挂件一类)的出装时间显示进行优化,原先都将显示为最后一件此种物品的购买时间,现在可以显示不同的时间。
从第一件购买时间算起,例如火枪于1:00 2:00 3:00购买了三个系带,游戏结束前卖出其中之一,则剩余两个则显示为1:00 2:00
改进:出于实用性考虑,比赛战报图片中将不再显示辅助道具的购买时间。
改进:对查询英雄
模板代码进行了调整与部分重写,完成7.36版本的英雄数据匹配,现在可正常使用。
(人话说就是先天技能和命石适配完成了)
移除:因查询英雄
指令已适配7.36版本,7.36
指令退役。(删除)
修复:删除一些留存的测试用代码
修复:修复7.36
指令因DOTA2官网的cdn链接变动导致获取失败的问题,并优化了加载速度。
修复:修复每次在koishi重新启动后,使用指令7.36
都会重新获取数据的问题。
修复:修复一处编译问题导致7.36
指令无法使用的问题
新增:v1.1.6加入的功能等待解析时间现在可以配置,位于插件页配置项dataParsingTimeoutMinutes
修复:修复因v1.1.8修改数据获取方式导致的绑定
指令失效
修复:修复指令查询英雄
报错问题(数据仍为7.35d,等待上游API更新)
改进:兼容Discord、KOOK等频道类平台,将订阅与绑定存储时群组(guild)改为频道(channel),对onebot(qq)类无影响(出现使用问题请联系我)
若此前已在使用频道类平台……
此版本前频道类平台应该无法使用战报功能与日报功能。此版本在订阅本群与绑定玩家时将存储channelId而不是guildID,对于非频道类平台这两个值是一样的,不会造成影响。但频道类平台应该会彻底失效,解决方案只有操作数据库,将channelId填入原先guildId处(兼容原因,未修改数据库字段名[guildId],但实际上存入的已经是channel的ID了;guildId和channelId可参考数据库表channel中的数据),或重新订阅与绑定。(若是重新订阅与绑定,不会覆盖原先存储guildId的数据,也就是说旧数据依然会存在,可根据需求选择是否删除)改进:将数据获取方式从 npm 包 axios
切换为 Koishi 提供的 http
服务,并简化了相关代码(用户体验无差别)。
改进:为 match_2
模板添加了玩家小队标识(效果与 match_1
模板中的相同功能一致,但在显示上进行了微调)。
改进:玩家信息模板中代表位置的图标替换为简约风格图标
修复:于v1.1.5新增的7.36
指令生成英雄改动图片时会额外产生的测试用的remainingContent.html
文件,现已不再生成。(如果之前使用了该命令并产生了此文件,可根据需要手动删除。位于koishi/node_modules/@sjtdev/koishi-plugin-dota2tracker/
)
由于近期stratz网站问题,比赛数据无法自动解析,导致bot会一直等待解析后的战报数据而无法发送。 新增:现在调整为比赛结束1小时后仍然未解析时将直接发出缺失部分数据的战报(缺失包括BP顺序、出装时间、英雄受到伤害等)
修复:修复引发播报未解析比赛战报失败的一个小问题
新增:为新版本7.36添加新指令7.36
7.36 <英雄ID|英雄名|英雄常用别名>
可查询对应英雄的改动信息,未输入英雄查询参数时直接返回官网7.36更新日志链接
添加--refresh|-r
参数可强制重新获取数据,如7.36 -r
,也可在查询时使用,如7.36 敌法师 -r
改进:完善查询玩家指定英雄的生成模板
新增:新增实验性功能【日报昨日总结】,在指定时间播报昨日已订阅群组中已绑定群友的战绩(简略文字),默认关闭,可在插件配置中打开
查询玩家
指令新增功能,现在额外输入参数--hero <英雄ID|英雄名|英雄常用别名>
可查询目标玩家指定英雄的详情(--hero可替换为-o)
例如:
查询玩家 123456789 --hero 敌法师
查询玩家 -o 敌法师
(仍可缺省玩家参数以自查)
改进:完成查询群友功能
修复:修复玩家模板中显示NaN的部分
修复:修复查询远古玩家账号时可能意外失败的问题
改进:调整mvp中的控制分与[控]称号算法
修复:修复初次使用查询英雄指令时,技能名初始化失败导致的错误
改进:为查询群友
添加模板,还在调整布局中
改进:玩家信息模板添加近25场内各个位置表现展示
改进:使用ejs重写模板相关代码使其模块化,使新增模板更方便
新增:为比赛信息添加了仿MAX+模板,效果可见match_2,可在插件配置中切换