IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    一种英雄联盟召唤师战力值算法

    冷石发表于 2022-08-29 09:01:22
    love 0

    研究如何计算一个玩家在对局开始前的战力值

    TL;DR

    一个玩家的战力值由排位分,游戏分,英雄分加其他分数组成。

    前言

    最近尝试计算出对局开始时一个玩家的战力值,顾名思义就是用数值描述这个玩家的能力。初步得出基于排位分 + 游戏分 + 英雄分 + 其他因素的计算公式。

    排位分

    段位越高的玩家自然表示能力越强,排除代练,买号,代打等情况。以前的 Rank 分就是说明,不过现在 Rank 分被段位取代了,所以这里的排位分模拟 Rank 分。

    排位分是一个玩家的基础分数,是决定玩家战力高低的根本,没有定级的玩家会有一个默认分数。

    一种情况是以前的段位比现在高,但是本赛季还没有达到之前的段位,这种情况下会补偿一些分数,表示当前段位不是真实实力。

    另一种情况是以前最高段位比现在低,说明当前的实力上升,这种情况会取当前段位作为计算基础。

    游戏分

    根据玩家最近游戏表现计算,有多种计算维度,获取金钱,补兵数,参团率,伤害占比,KDA 等因素。计算最近 10 局游戏的数据,大乱斗和峡谷数据区分。每一局游戏默认 100 分,再根据玩家的数据进行加减,每种因素对一局游戏的影响力不同,所以分值也不同。

    计算因子

    1. 获得金钱
    2. 获得经验
    3. 获得击杀
    4. 参团率
    5. 伤害量
    6. 承伤量
    7. 治疗量
    8. KDA
    9. 助攻
    10. 死亡数
      …

    英雄分

    玩家的英雄熟练度越高分值越高,同时根据英雄当前版本的层级进行加减分。

    如果没有熟练度,说明是练英雄,那么英雄分将是负分。

    其他因素

    1. 超过多久没玩游戏战力减少,AFK 时间越长战力减少越多;

    2. 组队因素,如果有组队战力值增加;

    3. 分路变化,不熟悉的位置战力减少;

    4. 连败连胜,连胜加分,连败减分

    5. 模式变化 大乱斗 -> 峡谷 战力减少; 特殊模式 -> 峡谷 战力减少;

    总结

    这个计分方式只是个人研究所得,属于抛砖引玉之作,不足之处欢迎指出,如有更好的方案欢迎联系作者讨论。

    参考

    https://minihat.github.io/LoL-Match-Prediction

    https://github.com/real-web-world/hh-lol-prophet/blob/main/%E8%AE%A1%E5%88%86%E6%96%B9%E5%BC%8F.md

    https://shap.readthedocs.io/en/latest/example_notebooks/tabular_examples/tree_based_models/League%20of%20Legends%20Win%20Prediction%20with%20XGBoost.html



沪ICP备19023445号-2号
友情链接