魔兽地图编辑器吧 关注:64,651贴子:3,831,481
  • 25回复贴,共1

关于commom.ai文件中的native函数

只看楼主收藏回复

萌新求教有什么方法可以查看诸如 AttackMoveKill 等函数的内部实现逻辑吗,最近在学着做对战AI,遇到好多问题都不知道咋解决,例如攻击组在进攻指定目标时基地遭到攻击,AI会命令攻击组回防,但在击退敌人后又会继续进攻之前指定的目标,哪怕此时攻击组已经没剩多少单位了


IP属地:山东来自Android客户端1楼2024-07-03 11:30回复
    只能拆dll看


    IP属地:安徽2楼2024-07-05 08:58
    收起回复
      commom.ai提供的函数有用的,没几条,源程序猿就没想过让你从脚本里直接控制整个AI框架,就连简单的取消攻击组当前目标,移除攻击组、防御组某个单位都不给你!
      而AI框架本身就存在一些BUG,例如:暗夜被拆掉后的缠绕金矿重新缠绕,AI识别不了(不会再派小精灵缠绕)!
      综合:半吊子AI系统!建议放弃!


      IP属地:广东3楼2024-07-05 10:50
      收起回复
        你有这空不如自己写个wc3


        IP属地:上海4楼2024-07-11 00:00
        回复
          >> 例如攻击组在进攻指定目标时基地遭到攻击,AI会命令攻击组回防,但在击退敌人后又会继续进攻之前指定的目标,哪怕此时攻击组已经没剩多少单位了
          这个应该一般不是问题。
          首先这个情况出现的概率低。
          其次因为难以猜测AI的状态,AttackMoveKill命令通常(且必须)是反复发布的。回防期间如果时间比较久,大概率已经在重新发布的时候判断过了。<=这是假设你重写了那个攻击循环。默认的脚本是彻底错乱的。


          IP属地:上海5楼2024-07-11 00:12
          收起回复
            native函数都是c++写的,在game.dll里,不是简单拆开看源码的


            IP属地:天津来自Android客户端6楼2024-07-11 08:14
            回复