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心得

    <input type="hidden" id="history_chart_json" data-json="#{smartDeviceMon ...

  2. Python与C/C++相互调用(转)

    原文链接 作者 一.问题 Python模块和C/C++的动态库间相互调用在实际的应用中会有所涉及,在此作一总结. 二.Python调用C/C++ 1.Python调用C动态链接库 Python调用C库 ...

  3. 使用openSSL构造一个支持https的nodejs服务器

    首先通过下面的链接下载openSSL https://slproweb.com/products/Win32OpenSSL.html 下载完毕后,执行openssl进入交互式界面: 使用命令生成pri ...

  4. 14.MySQL主从复制

    1.复制的基本原理 三步骤 + 原理图 1.1 master将改变记录到二进制文件(binary log),这些记录过程叫做二进制日志事件, binary log events 1.2 slave 将 ...

  5. 15.Filter(过滤器)

    1.管理所有WEB资源:(Jsp, Servlet, 静态图片文件或静态 html 文件等)文件等进行拦截,从而实现一些特殊的功能 2.Filter接口中有一个doFilter方法,当我们编写好Fil ...

  6. Maven 依赖的作用域

    Maven的一个哲学是惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile,项目中经常傻傻的分不清,直接默认了 ...

  7. 01_Hive简介及其工作机制

    1.Hive简介 Hive是一个基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一个表.并提供类SQL查询功能, 可以将sql语句转换为MapReduce任务运行.其优点是学习成本低, ...

  8. 2.06_Python网络爬虫_正则表达式

    一:爬虫的四个主要步骤 明确目标 (要知道你准备在哪个范围或者网站去搜索) 爬 (将所有的网站的内容全部爬下来) 取 (过滤和匹配我们需要的数据,去掉没用的数据) 处理数据(按照我们想要的方式存储和使 ...

  9. UCOSII 之 任务统计

    UCOSII 使用空闲任务的计数值(OSIdleCtr)来实现CPU使用率的统计,首先统计一个固定时间内的计数值保存下来为 (MAX),然后再开启一个固定的时间段,当时间到达时得到另外一个(OSIdl ...

  10. 数据结构课后练习题(练习三)7-5 Tree Traversals Again (25 分)

    7-5 Tree Traversals Again (25 分)   An inorder binary tree traversal can be implemented in a non-recu ...