• 注册
  • 一般交流 一般交流 关注:5612 内容:8216

    brotherTraders [bots插件] 更新包20230218 说明

  • 查看作者
  • 打赏作者
  • 当前位置: ODDBA社区 > 离线版交流区 > 一般交流 > 正文
  • 104
  • 一般交流
  • 自成一派

    本插件的作用,是通过游戏的预设界面编辑保存武器,给bot定制使用,用可视化的操作方式,解决了默认bots/types中的每个bot武器和配件搭配不合理,玩家想自己改又不会改,会改的却又改出报错、或者缺配件、缺弹药的问题。

    本插件仅自动生成预设文件、预设文件自动转换成bot武器装备标准格式的文件,并应用这些文件的数据,没有bot的其他项目修改功能。

    本贴为说明内容,下载地址见商人三兄贵brotherTraders原帖:https://sns.oddba.cn/47235.html


    1、使用方法:

    下载更新包,解压后得到的brotherTraders文件夹复制到user/mods目录中,覆盖原brotherTraders,并选择替换相同文件(操作前建议备份);

    2、打开config配置文件,按下面的图片修改bots部分的配置:

    brotherTraders [bots插件] 更新包20230218 说明

    下面是可复制内容,可以直接复制粘贴到配置文件中。

    "bots": {
    		"enable": true,
    		"chances": {
    			"FirstPrimaryWeapon": 100,
    			"SecondPrimaryWeapon": 100,
    			"Holster": 100
    		},
    		"desc": "enable可以选择是否给bot应用定制武器"
    	}

    3、游戏的预设编辑界面中,随意编辑预设(但不要使用自定义武器和配件编辑的预设给ai使用),保存的名称建议如下(名称不分大小写):

    ak101-bot1-bear

    MP5-bot2-usec

    chiappa200ds-bot3-bear

    即:武器名称-武器栏-bot类型

    bot1表示主武器、bot2表示副武器、bot3表示手枪;

    按你自己想给什么武器指定为主还是副,还是放在ai的手枪套中,只要你愿意,可以让某个类型的ai带三把手枪;

    4、当退出游戏时,mod会导出预设文件到bots插件的db目录中,当下次开始游戏时,插件会将这些预设根据不同的ai类型后缀名称,自动转换为标准的武器装备格式导出到插件的weaponPool目录(文件名就是bot类型),并应用到数据中,不需要你自己设置;

    如果在游戏中为某个bot类型又新增了预设,退出后先将weaponPool中的对应的bot类型装备文件删除,启动游戏时bots插件会自动重新生成新的武器装备文件。如果不删除,会一直使用原有的,不会自己更新。

    5、如果不使用游戏中预设界面的编辑功能,也可以把标准预设文件导入到bots插件的db中,文件名按照前面的方法修改就行了,插件也会将它们转换为标准装备格式放在weaponPool目录中。

    6、启动游戏时,如果加载了weaponPool目录中的标准装备格式文件,控制台会显示下面的绿色信息:

    brotherTraders [bots插件] 更新包20230218 说明

    7、bots插件db目录中已经存在的预设文件,如果不想要了,先在配置文件中将bots关闭,然后进入游戏删除预设信息(也可以直接在存档中删除后进入游戏),退出之后再删除db下的文件。

    否则,mod发现你既打开了bots插件,db下又是空的,一旦检测到你存档中还有预设武器是给ai用的,就会重复写入到db中。


    补充说明:

    生成的武器装备中,每个武器的使用几率都相等,默认权重为10;

    每个武器的子弹使用几率也相等,默认权重为10;

    左轮类的武器,使用武器的默认弹药;

    榴弹发射器,如果游戏中发射器只支持一种规格的榴弹,则使用几率100,如果支持多个规格榴弹,则使用各种榴弹的几率相等;

    编辑预设可以使用任何Slots配件,包括下挂榴弹;

    3.5的ai已经比较强了,再配上更好的武器,生存几率名副其实配得上”逃离”塔科夫,不过舔包更有乐趣了。

    建议:

    同一个武器如果编辑了多个不同预设组合,在用于同一个bot类型时,如果某个配件本身没有冲突物品的数据,在这些预设之间会出现配件互相搭配的情况,这是由于服务端bots装备规则导致的,所以同一种武器的不同预设,建议分配给不同的bot类型,或者采用具有相互冲突关系的配件来编辑不同预设。

    自成一派
    置顶

    关于bots插件中遇到的问题,可以在这里反馈,请不要到mod原贴内回复。

  • 2753740684口袋怎么修改成原版的呀
    拉黑 1年前 电脑端回复
  • 夕阳与花@2753740684 到items插件中改,看注释
    拉黑 1年前 手机端回复
  • 3146747351如果想给桐类型bot生成多种配置的武器该怎么办啊?我这预设好了有黄字,游戏里没变化
    拉黑 1年前 电脑端回复
  • 回复
    初窥堂奥

    前排!


    请问这个插件的可用范围是不是我理解的如下这个例子:


    名称-栏位-BOT类型


    名称 随意

    栏位 bot 1-4

    BOT类型 \Aki_Data\Server\database\bots\types\ 里面的所有种类






  • 夕阳与花栏位 bot 1-3 不含近战武器,除了主、副、手枪、其他所有装备都还是游戏默认数据
    拉黑 1年前 电脑端回复
  • 夕阳与花BOT类型 \Aki_Data\Server\database\bots\types\ 里面的所有种类,是的,不分大小写,但拼写必须正确
    拉黑 1年前 电脑端回复
  • Lunatic316 @夕阳与花 是1-3手滑了,哈哈。感谢回复
    拉黑 1年前 电脑端回复
  • Lunatic316 @夕阳与花 刷了几盘发现是完全替换。。。那么有没有一个可能搞一个多武器的预设config或者让只合并随机的item pool但不替换呢。调低mod里面的几率后BOT会空手,但是使用这个mod就要自己手动做一整个武器pool
    拉黑 1年前 电脑端回复
  • Lunatic316 @夕阳与花 另外预设里如果使用Geissele的 30mm镜架装了上面的附属单倍镜会导致不生成主要的瞄准镜,应该是因为先生成了上面单倍镜导致的,因为我这里服务端没有报错。这个问题不知道有没有的搞,这个可能是生成逻辑判断生成了一个scope就停止继续往下生成了。
    拉黑 1年前 电脑端回复
  • 夕阳与花 @Lunatic316 对,我设计的就是替换,所以才叫给ai定制武器,就是不用原来的那些,原本是没有weaponPool中转换后的格式,上一个版本是直接加载到内存的,现在形成文件,也是方便给社友们用来自己改文件,自由发挥。
    拉黑 1年前 电脑端回复
  • 夕阳与花 @Lunatic316 至于为什么替换,不是合并,是因为现在的bots装备中某个配件下如果有多个适用的物品,实际游戏中会随机搭配,并不是按照你想给ai配的,上一个版本中是个总武器池,所有ai共同使用池子里的随机分配到的武器,有玩友提出了这个会随机搭配的问题,希望能给不同的ai调用不同的武器池,综合了大家的意见,所以就按这样写。
    拉黑 1年前 电脑端回复
  • 夕阳与花 @Lunatic316 比如一把M4A1,原来玩友编辑了几把不同预设,用指定的护木搭配指定的枪托,但因为服务端规则,到了游戏里,只要本身不存在装备冲突可以通用,这些护木和枪托之间会乱搭,不再是使用者完全想给ai配的枪了。
    拉黑 1年前 电脑端回复
  • Lunatic316 @夕阳与花 发现个问题,在生成武器的时候还是会固定调用配件,M4如果加入了下挂榴弹,那么上护木必定是URX3.1。并且不会生成其他没装榴弹的preset,感觉还是和塔科夫原始的生成逻辑有关。
    拉黑 1年前 电脑端回复
  • Lunatic316 @夕阳与花 才看到你最新一条回复,明白你的想法了。手动添加点预设不算啥大问题,如果能把这个生成逻辑造成的固定配件问题解决就好了。再次感谢!已经是很棒的mod了。
    拉黑 1年前 电脑端回复
  • 夕阳与花 @Lunatic316 瞄准镜的问题,应该是在configs/bot.json中对应ai类型的weaponModLimits这个值限定的,不过我在插件中已经设定为空对象了,就是插件中下面代码,难道是没起作用? if (botEquipment[bot] && botEquipment[bot].weaponModLimits) { botEquipment[bot].weaponModLimits = {}; }
    拉黑 1年前 电脑端回复
  • 夕阳与花 @Lunatic316 谢谢,我再去看看你刚才提出的下挂榴弹生成固定护木情况,会继续对它进行优化。
    拉黑 1年前 电脑端回复
  • 回复
    自成一派

    牛逼牛逼

    回复
    自成一派
    VIP4

    打开config配置文件,看到的和图片不一样,没有chances下面的代码。 [s-5]

  • 夕阳与花是让你按照这个修改bots,下面还有可复制内容啊,就是方便你复制粘贴过去的
    拉黑 1年前 手机端回复
  • angryhuman @夕阳与花 啊,所说的config是在点开brother traders文件夹下那个json后缀的文件吧?还是bot里面的bots.js?json后缀我试过复制,复制之后显示格式错了,红色条显示最后一个大括号 [s-52]
    拉黑 1年前 电脑端回复
  • 回复
    自成一派

    @angryhuman

    格式错误,就是和上面并列的数据之间少了个逗号,以你的论坛等级,不应该对json数据格式陌生啊。我把修改后的config.json再截大一点,能看明白吧。

  • angryhuman改好了 [s-62]
    拉黑 1年前 电脑端回复
  • 回复
    自成一派
    VIP4

    不陌生 [s-10] ,可以了,谢谢。

  • 514789591从哪里找到的
    拉黑 1年前 电脑端回复
  • 514789591路径是什么 我的打开不是这个内容
    拉黑 1年前 电脑端回复
  • 回复
    渐入佳境
    VIP3

    350开始爆栈频发, 不知道为啥....挺奇怪的

  • 夕阳与花还有其他的方法也爆栈了吗?目前为止,我只发现了BotEquipmentModPoolService会爆,其他的还没发现
    拉黑 1年前 电脑端回复
  • 夕阳与花递归次数多了,极容易爆栈,BotEquipmentModPoolService爆栈的原因就是,它只规定了某个物品Slots中的下级物品还有Slots,就调用自己一次,但没有明确什么条件时终止递归,那种通过指定整个parent分类来达到全配件可用的自定义物品几乎百分百会爆
    拉黑 1年前 电脑端回复
  • 千叶玲花 @夕阳与花 就是BotEquipment, 但是340我基本没见有人发这种报错, 350之后频率高了好多感觉....
    拉黑 1年前 电脑端回复
  • 千叶玲花 @夕阳与花 我每日低保的生成算法好像也是这么写的递归..... [s-20] 但是目前还没遇到过问题
    拉黑 1年前 电脑端回复
  • 夕阳与花 @千叶玲花 我的mod就是在340开始有玩友反馈这个类报错,然后使用超模的也有很多人在问答区提出相同问题。如果递归本身只用来生成并无问题,关键的一点是mod中对这些物品进行了自动适配,自动适配嘛,无非就是检查自定义物品的原型物品id,是不是包含在items中某个物品的Slots中,包含就把自定义物品id也加进去,如果都是物品id也还不会有问题,就是整个分类不断查找,递归的时候也还是整个分类,完全耗死了有限的容量,这就是导致爆栈的根本原因
    拉黑 1年前 电脑端回复
  • 千叶玲花 @夕阳与花 能理解, 但是我不理解的是为什么解析器会解析slot数组里的parentid....bot装备生成也会遇到这种问题, 解析到空物品id会报错, 有点头疼
    拉黑 1年前 电脑端回复
  • 夕阳与花@千叶玲花 那就看服务端自身是怎么处理获取到空物品id的情况了,如果是直接抛出错误对象,那就合理了
    拉黑 1年前 手机端回复
  • 千叶玲花 @夕阳与花 就是告诉你xxxundefined, 也不告诉你是啥....老头疼, 最后我写了个mod遍历slot栏位解决问题
    拉黑 1年前 电脑端回复
  • 回复
    自成一派

    @Lunatic316

    我今天在给bot配枪的时候,把你的两个问题都放在一起核实了,镜子只刷出了一个,确实是因为weaponModLimits这个值的限制造成的

    这是我第一局测试的结果,确实如你所说,镜子因为数量限制只刷出了单倍镜

    但是我选的RIS II护木和下挂榴弹都按照预设刷出了,没发现固定刷URX3.1的情况。


    第二次,我增加了另外一把m4预设,用了不同的KAC RIS护木+下挂榴弹,战局内bot使用的也是按照这个预设刷出的,同样没有遇到固定刷URX3.1的情况。

    关于镜子限制的问题,是我在插件的js中少写了一行去除限制的代码,只要在下面的位置增加红框内的语句,就可以了:

    可以复制下面的代码,请直接粘贴到红框的位置

    botEquipment.pmc.weaponModLimits = { };


    增加上面的代码后,bot携带的镜子就按照预设正常刷出了

  • Lunatic316我的M4配置是两把满配不同护木无榴弹M4,另一个是用了URX3.1鱼骨挂榴弹的。 我想表达的其实是,只要有一个预设里挂了榴弹发射器,整个武器随机的时候就会生成下挂榴弹,然后再考虑护木栏位的适配。由于我只选了URX3.1这一个能兼容的护木,所以刷出来的m4表现为只有URX3.1 我的问题,是我只说了现象,没说我的配置。xD 感谢回复,辛苦!
    拉黑 1年前 电脑端回复
  • 回复
    初窥堂奥

    有关556AR的预设一共有四把,右面四个立着的是我的预设,左面横向是我刷出来的随机生成的USEC(橙色buff是我自己修出来的)


    本来以为只有M4会有榴弹的问题,现在这个ADAR也出现了,而且是在ADAR没有榴弹预设的前提下。


    关于M4我大胆推测是榴弹发射器先生成,然后去找适配的护木,在我的预设里只有URX3.1,所以所有武器都是这个样子。


    但是这个ADAR就很奇妙了。


    有没有可能是因为我装了alevesThings这个mod捏。虽然他最近更新里没写关于榴弹兼容的问题,但这个mod的确会解锁很多原本互不兼容的配件和栏位。


    我再改一下预设试试看

  • 陌潇澄下挂榴弹装在370枪管上,你要是不让Adar刷一就是把他整到bear那或者别用370枪管或者机匣和你那个榴弹m4机匣不一样,不刷那个护木就会把下挂顶掉应该
    拉黑 1年前 手机端回复
  • 回复
    初窥堂奥

    发现一个问题。如果我清空WeaponPool,下一次服务端加载的时候虽然会在WeaponPool里生成对应的 *.json而且也会显示在对应bot类型上加载订制武器,但是游戏里实测只加载了mod替换的武器生成逻辑,但不加载武器参数(我发现一个BOT的武器上能装的地方全装了瞄具)。要想加载武器预设,需要重开服务端才能正确加载。


    然后又去测试了一下榴弹的问题,只要池子里加了榴弹,是真的很爱刷。


    5个ADAR预设,就一个榴弹,2个兼容榴弹的护木,跑了几次工厂发现:带榴弹发射器的ADAR几乎占了一半以上,而且不兼容榴弹的护木刷的非常少。




    尝试了几次都没出现之前M4那种极端案例。


    我把Raider的池子改了之后也没能重现像USEC一样只刷榴弹完全不刷SAI的情况,很迷。


  • Lunatic316ADAR产生了大量半护木的情况,推测是因为原来预设里使用的是上半护木,随机生成的时候下板块护木的栏位没有自动补完。
    拉黑 1年前 电脑端回复
  • 夕阳与花@Lunatic316 清空weaponPool中的文件然后重新生成后需要再一次启动服务端,这是我疏忽,传错了目录所致 [s-30]我的文件夹里有三个bots测试目录,内容都一样,只是判断什么时候执行应用定制装备的条件有改动 [s-30] 等会把最后版本的代码增加到帖子内,修改一下就行了。
    配件的问题可能是因为我的环境没有你提到的解锁冲突Slots有关mod,所以编辑的是什么预设,战局里刷出来的就是什么。不过有一点,服务端的bots装备规则是一个配件可用的下级配件都是以数组形式确定,然后在数组中随机适配,这样的话,当一个护木下可以使用下挂榴弹时,即使你用这个护木分别编辑了两个预设,一个带榴弹,一个不带榴弹,不带榴弹的那个预设也会刷出榴弹来。
    这是因为,我为了考虑使用者在编辑带下挂榴弹预设的时候肯定是希望这个预设在战局中一定必有榴弹,所以默认情况下使用榴弹几率100,但不可避免地,会影响到原本没有榴弹的那个预设。
    如果服务端的bots装备可以像商人的assort中那样,不同的预设可以用一个唯一id编号来区分,就可以完全解决这个问题了。
    拉黑 1年前 手机端回复
  • 夕阳与花 @Lunatic316 已经把更新包重新上传了一次,把之前只刷出一个镜子的代码加了进去,免得还有其他人遇到类似的问题
    拉黑 1年前 电脑端回复
  • Lunatic316 @夕阳与花 牛的!明天试试,晚安。
    拉黑 1年前 电脑端回复
  • 回复
    渐入佳境

    好家伙,看大佬们讨论,只觉得不明觉厉,好厉害的样子,哈哈

  • 夕阳与花都是从小白萌新成长起来的,也希望你早日成为一名大佬 [s-15]
    拉黑 1年前 手机端回复
  • 回复

    请登录之后再进行评论

    登录
    离线版交流区
  • 今日 0
  • 内容 9720
  • 关注 5612
  • 聊天
    关注 1078

    【招募】GRIFFIN TKF项目开工 期待你的加入 || 你是否想加入格里芬书写自己与人形的故事

  • 签到
  • 任务
  • 发布
  • 模式切换
  • 偏好设置
  • 帖子间隔 侧栏位置: