https://tieba.baidu.com/p/5275382967

默认的配置不是很合理,花了点时间读了下silverfish(也就是兄弟用的AI)的代码后也尝试修改了些参数,有没有效果仁者见仁吧。
吧里已有一篇注释翻译,基础请结合那篇的内容看,我补充一点自己对参数的理解和测试结果。

playarround = false;
配置文件单词打错了,AI源码里也打错了,迷。作用是AI防不防AOE,默认是false。本来以为调成true后操作会变好,测试后发现反而打得很迷,保持false就好。

playaroundprob = 50;
playaroundprob2 = 80;
防AOE的参数,测试下来怎么样都不如不防AOE。设置成不防AOE的话这两个参数是没用的,无视就好。

useSecretsPlayArround = false;
防奥秘,同样也是发现设置成false效果打得比较好,默认是true最好改掉。(AI心理战还是玩不过人的啊)

maxwide = 5000;
这个参数影响AI计算的递归深度,应该是最关键的参数之一,理论上越大AI越聪明。默认3000,改到5000或者10000都不会很卡,出牌似乎变好了。(可能是心理作用)这个参数要跟几个参数一起调节,看后面。

twotsamount = 1000;
默认是0,然后只看到EnemyTurnSimulator里引用了能影响斩杀计算,似乎配置文件里面配置没用,运行时会被自动设置成256这个值。
源码中有,
twotsamount = Settings.Instance.secondTurnAmount;
然后,Settings.Instance.secondTurnAmount的值是写死256的。

enemyTurnMaxWide = 40;
enemyTurnMaxWideSecondTime = 200;
maxwide参数的两个变体,作用于对手回合和对手的第二个回合,提高AI递归深度,机器性能好的话可以按比例调高,理论上会变聪明。

nextTurnDeep = 6;
源码注释里面直接就说不要碰这个参数,那我们就不碰了,6就6吧。

nextTurnMaxWide = 20;
看代码里相当于自己下回合的maxwide,影响递归次数,默认值只有20所以可能影响不是很大?我暂时还没尝试调节过这个参数。

nextTurnTotalBoards = 200;
源码里这个参数影响一个循环的次数(在MiniSimulatorNextTurn里),没看得很明白,参数的注释也不是很清楚,建议不要随意调节。

alpha = 50;
分配到当前和第二回合计算的比重,取值1-99(很迷,之前那几个递归深度的参数还不够吗)。第二回合的计算比当前的计算要消耗更多的时间,调大明显感觉得到变卡,机器不好的同学试试把这个调小,但是肯定是会影响AI智商的。

HearthBuddy中_settings.txt的更详细参数解释的更多相关文章

  1. 传奇身上装备升级系列脚本,以及UPGRADEITEMEX 脚本的详细参数解释

    UPGRADEITEMEX 脚本的详细参数解释如下: UPGRADEITEMEX 物品位置(0-12) 属性位置(0-14) 成功机率(0-100) 点数机率(0-255) 是否破碎(0,1) 物品位 ...

  2. 关于高淇JAVA中SORM总结学习笔记详细个人解释

    代码来源于高淇JAVA教学视频 谢谢高淇老师的教学. 因为自己在学习的过程中发现了很多困难点,总结下希望对自己接下来学框架提升.给像我一样得初学者方便. SORM框架是一个简单的ORM,关系对象映射, ...

  3. expdp/impdp 详细参数解释

    任意可以使用expdp/impdp的环境,都可以通过help=y看到帮助文档. 1.expdp参数说明 2.impdp参数说明 3.expdp参数说明(中文) 4.impdp参数说明(中文) expd ...

  4. Oracle11G_R2中共享服务器模式和专用服务器模式参数解释及设置

    sys@MYTESTDB> show parameterNAME TYPE VALUE------------------------------------ ----------- ----- ...

  5. ListView的操作模式的选择的更详细的解释CHOICE_MODE_MULTIPLE与CHOICE_MODE_MULTIPLE_MODAL

    本文介绍了我们将如何取得具体ListView多选择操作.本文将正确使用ListViewCHOICE_MODE_MULTIPLE要么CHOICE_MODE_MULTIPLE_MODAL时间easy误区. ...

  6. JQuery中Ajax详细参数使用案例

    JQuery中Ajax详细参数使用案例 参考文档:http://www.jb51.net/shouce/jquery1.82/ 参考文档:http://jquery.cuishifeng.cn/jQu ...

  7. S5中新增的Array方法详细说明

      ES5中新增的Array方法详细说明 by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wor ...

  8. 编写高质量代码改善C#程序的157个建议[优先考虑泛型、避免在泛型中声明静态成员、为泛型参数设定约束]

    前言 泛型并不是C#语言一开始就带有的特性,而是在FCL2.0之后实现的新功能.基于泛型,我们得以将类型参数化,以便更大范围地进行代码复用.同时,它减少了泛型类及泛型方法中的转型,确保了类型安全.委托 ...

  9. QT中PRO文件写法的详细介绍

    学习Qt时,发现有些知识看了不经常用就忘了,以下是书本上写的一些关于qmake的相关知识,自己看后,打算把一些经常用到的记下来,整理整理. Qt程序一般使用Qt提供的qmake工具来编译. qmake ...

随机推荐

  1. js重点——作用域——作用域分类(三)

    一.作用域可以分为全局作用域,局部作用域(函数作用域)和块级作用域. 1.全局作用域 代码在程序中的任何位置都能被访问到,window对象的内置属性都拥有全局作用域. <script> v ...

  2. SQL学习——BETWEEN运算符

    原文链接 BETWEEN的作用 BETWEEN 操作符用于选取介于两个值之间的数据范围内的值. BETWEEN的边界 BETWEEN运算符选择给定范围内的值.值可以是数字,文本或日期. BETWEEN ...

  3. SSO单点登录 与 CAS

    本文转载自http://www.imooc.com/u/2245641/articles非常好的sso单点登录理解文章 作者: 常明,Java架构师 Web应用系统的演化总是从简单到复杂,从单功能到多 ...

  4. CentOS7 基于 subversion 配置 SVN server

    由于 Window Server 环境下,VisualSVN Server Community 版本只支持 15 个同时在线用户,所以彻底放弃 Windows Server,在 Linux Serve ...

  5. idea中iml文件的问题

    idea中iml文件的问题 iml文件是idea组织工程的文件, 里面记录了各种记录模块, 文件夹以及依赖的信息, 显示如下: <?xml version="1.0" enc ...

  6. centos 最小化安装pycharm

    首先找到安装地址 https://www.jetbrains.com/pycharm/download/#section=linux 选择linux. 打开浏览器的network监视,我用的chrom ...

  7. 【转载】@Component, @Repository, @Service的区别

    @Component, @Repository, @Service的区别 官网引用 引用spring的官方文档中的一段描述: 在Spring2.0之前的版本中,@Repository注解可以标记在任何 ...

  8. json.loads 报错 json.decoder.JSONDecodeError

    json.loads报json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes 出现这个错误其实只 ...

  9. Java8-Stream-No.06

    import java.io.IOException; import java.math.BigDecimal; import java.util.Arrays; import java.util.s ...

  10. 3、docker常用命令:help、镜像命令、容器命令

    1.帮助命令 1.docker version 2.docker info 3.重点掌握:docker --help 2.镜像命令 1.docker,镜像,容器关系 2.docker images ( ...