用python写个云顶之弈阵容助手,助你今晚“吃鸡”遗传算法

于是,我灵机一动,想要编写一个阵容助手(Python),根据你想要玩的英雄,基于遗传算法为你推荐阵容。目前该助手适配9.19版本,如果有新的阵容出现,修改起来也很方便。另外,增加了铲子功能,但只能增加一个(增加两个计算量大,不够实时)。爬取相关网站内容获取英雄信息 这一步可以通过手动输入来实现...
用python写个云顶之弈阵容助手,助你今晚“吃鸡”遗传算法
前言:

自从自走棋游戏开始受到关注,不少人也预见到LOL版的自走棋将会变得极为流行。从用户的角度来看,这种流行的趋势无疑会越来越旺盛。今天,我将为大家介绍如何使用Python编写一个云顶之弈阵容助手,帮助你在今晚实现“吃鸡”(使用遗传算法)。

LOL云顶之弈人工智障助手

通过爬取相关网站内容获取英雄信息,阵容搭配与得分,利用遗传算法进行设计,运行结果,以及完整代码——欢迎在Github上star。

概述

作为一名云顶新手,我已经很久没有玩过LOL了。最近被朋友推荐了云顶之弈,玩了两天后觉得这个游戏挺有意思的。然而,游戏的阵容搭配种类繁多,如果不是天天研究这个游戏的,想要实现“吃鸡”可不是件容易的事情。于是,我灵机一动,想要编写一个阵容助手(Python),根据你想要玩的英雄,基于遗传算法为你推荐阵容。目前该助手适配9.19版本,如果有新的阵容出现,修改起来也很方便。另外,增加了铲子功能,但只能增加一个(增加两个计算量大,不够实时)。

爬取相关网站内容获取英雄信息

这一步可以通过手动输入来实现,但作为一名倔强的程序员,显然不能做这种事(手动狗头)。

一开始我尝试使用lol官网,但花了很长时间都没有成功(技术不够,泪目)。

后来我发现,多玩游戏的话,爬取信息会更容易一些。

结果如下:

另外,我还保存了英雄的昵称与其对应的id,方便输入(有时候真想不起来英雄的真名啊)。

阵容搭配与得分

建立一个列表,记录各种阵容搭配,包括所需人口数目和铲子能增加的羁绊。

计算英雄阵容与所需金币总数。

在计算得分时,不考虑羁绊效果不平衡的情况。另外,默认组成人口越多,羁绊效果增加得越多(采用平方得分函数)。

接下来是:遗传算法设计

编码时,我使用了实数编码,得分函数选择是上述阵容得分+所需金币数(越贵的英雄越强)。选择策略是得分最高的个体直接复制到下一代,得分最低的9个个体直接全部重抽。

结果运行得出:

效果还不错,大概几秒钟就能运行出结果,不影响游戏进度。同时,我为不熟悉Python的小伙伴制作了一个双击直接运行的版本,双击后,在cmd里根据提示输入参数即可。

(至少需要安装pandas库,命令:pip install pandas)

以上就是本文的全部内容啦!2024-08-10
mengvlog 阅读 7 次 更新于 2025-07-20 03:14:16 我来答关注问题0
  •  翡希信息咨询 用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

    1. 数据准备 爬取英雄信息:从相关游戏网站或API获取英雄的基本信息,包括英雄ID、昵称、技能、羁绊等。 阵容搭配与得分:建立阵容搭配数据库,记录不同阵容所需的人口数目、羁绊效果以及得分规则。得分可以基于羁绊效果的平衡性、人口数目等因素设计。2. 遗传算法设计 编码:使用实数编码或其他合适的编码方...

  • 编码时,我使用了实数编码,得分函数选择是上述阵容得分+所需金币数(越贵的英雄越强)。选择策略是得分最高的个体直接复制到下一代,得分最低的9个个体直接全部重抽。结果运行得出:效果还不错,大概几秒钟就能运行出结果,不影响游戏进度。同时,我为不熟悉Python的小伙伴制作了一个双击直接运行的版...

  •  科创17 python爬虫---爬取LOL云顶之弈数据

    八爪鱼采集器是一款功能全面、操作简单、适用范围广泛的互联网数据采集器。它可以帮助用户快速抓取互联网上的各种数据,包括文字、图片、视频等多种格式。八爪鱼采集器使用简单且完全可视化操作,无需编写代码,内置海量模板,支持任意网络数据抓取。如果您需要采集LOL云顶之弈数据,八爪鱼采集器可以为您提供智...

檬味博客在线解答立即免费咨询

Python相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部