某道官方周年智能假人插件(修复版)
1月前

【【【重要说明】】】
    【整个工程目录使用 VsCode 打开,按 F5 可直接运行调试。】
    【外网需要自动寻路、战斗、做任务时,需要将 ..\ConsoleCmds 拷贝到 ..\a01\server_scripts\gs\cmds\ 中进行打包版本。内网测试一样要拷贝】
    【由于机器人代码越来月复杂,所以建议一个 console 跑 200 个机器人】
    【Linux 环境下需要安装 node 环境 (版本:v8.4.0,模块:(npm install --save xxx):async、xml2js)】

配置文件 cfg.js 中相关配置项说明:
    host 配置 aaa 服务器 ip
    port 配置 aaa 服务器的端口
    dist 配置区组名
    users 配置登录的帐号信息
    walkPath 配置行走路径信息,目前配置了四个地图的行走路径,分别是揽仙镇1000、东海渔村11000、无名小镇23000和官道北24000。官道北是练功区地图,在该地图上行走可触发战斗,其他的三个地图为非练功区地图
    combatInterval  : 战斗回合间隔(毫秒)
    randomWalk      : simulateWalking中相信两步移动随机增加值(毫秒)
    userGroup       : 玩家组,每个console每次只上200人,防止登录失败
    enableAutoTask  : 自动跑任务,默认开启

运行前需要先生成一批帐号,然后在 cfg.js 中进行配置
运行 run.bat 前必须先运行 init.bat 拷贝障碍点信息及获取 MapInfo 配表
运行 run.bat 参数说明:
    执行文件路径 主入口 账号前缀 账号数字位数 起始编号 截止编号 登录密码

运行起来后,是一个交互式的环境,支持如下指令:
    setAutoFightAll(true)           : 设置所有玩家进入自动战斗状态
    autoWalkAll(mapId)              : 开始自动行走,mapId 为 cfg.js 中 walkPath 配置的地图,当前可设置为 1000
    stopAutoWalkAll()               : 停止自动行走
    beginAutoWalkAll(mapId, x, y)   : 开始自动行走,可自动寻路到 mapId 地图下的 x, y 坐标。
    setShowMoreUsersAll(true/false) : 设置是否显示较多的玩家
    loginAllClient()                : 登录
    logoutAll()                     : 所有帐号退出游戏
    exit()                          : 工具终止运行
    autoCombatTest(type)            : type为0表示进行自动战斗准备,type为1表示开始进行自动战斗测试。需要在DEBUG版本下导入测试文件测试,屏蔽每回合战斗时间限制。
    switchServerAll(num)            : 测试玩家换线,num 为换线次数。
    teleportTest(num)               : 测试天墉城 <-> 揽仙镇外来回切换地图,num 为执行次数。
    printAllClientStatus()          : 输出所有的连接状态
    checkClientStatus(account)      : 检查连接状态,
    checkConnections()              : 检查所有连接状态
    setDebugOn(flag)                : 打开或关闭消息打印(只对取到的第一个账号玩家进行打印)
    sendTestCmd(testCmd)            : 发送聊天栏命令
    autoChannelTest(num)            : 聊天测试
    traceConnections(type)          : 连接情况
    teamMatchTeam(type)             : 作为队伍开始匹配  1:除暴,13:巡逻
    teamMatchMember(type)           : 作为队员开始匹配  1:除暴,13:巡逻
    startSendRecvTest(num)          : 测试收发包(需要屏蔽服务器的发送频率限制)

移动测试说明
    1、关闭随机过图点
        set_obj_var(find_object("/gs/cmds/normal/cmd_teleport.c"), "random_teleport_pos_flag", FALSE);
    2、行走类型
        beginAutoWalkAll(mapId, x, y):自动寻路到 mapId 地图下的 x, y 坐标。
        randomWalkInMap(mapId): 地图随机行走,目前支持天墉城(5000)。 (cfg.randomWalkRoutes)
        simulateWalking(interval): 循环过图行走, 参数interval表示相邻玩家开始行走的时间差(秒)(cfg.walkAndFlyRoutes)。
        walkToLiZongbing(): 走到李总兵附近。(cfg.birthRoutes)
        randomBirthPos()  : 走到出生点附近。(cfg.lizongbingRoutes)
    如何生成行走路径:
        GS 上执行 set_obj_var(find_object("/gs/cmds/normal/cmd_teleport.c"), "random_teleport_pos_flag", FALSE) 关闭随机过图点
        GS 上执行 GS_DEBUG_D->set_temp("record_move/"+me->get_gid(),1),路径会生成到指定文件
        替换生成的路径信息到 cfg 配置表中

摆摊测试说明:
    1、将 file://10.2.51.97/atmpack/svn/test/patch_test 中的测试文件下载到服务器所在主机的 server_scripts/test 文件夹下。

    2、导入测试代码:
        所有GS: to = reload_object("/test" + STALL_D);
        MSS: to = reload_object("/test" + MSS_STALL_D);

上传的附件:
最新回复 (0)
返回