From cb90bf0bd56f8ff997b6f3fc3ea2b483aab8c4f2 Mon Sep 17 00:00:00 2001 From: David <56174894+Constrat@users.noreply.github.com> Date: Sat, 7 Oct 2023 18:39:58 +0200 Subject: [PATCH] docs: json codeblock tweak --- docs/3.5-肉鸽辅助协议.md | 146 +++++++++++++++++---------------------- 1 file changed, 65 insertions(+), 81 deletions(-) diff --git a/docs/3.5-肉鸽辅助协议.md b/docs/3.5-肉鸽辅助协议.md index e2fa35313f..4f547de8bd 100644 --- a/docs/3.5-肉鸽辅助协议.md +++ b/docs/3.5-肉鸽辅助协议.md @@ -93,7 +93,7 @@ icon: ri:game-fill | ***炮灰*** | 吸收炮弹、再部署 | 特种、召唤物 | M3、红、桃金娘、预备干员 | | ***高台预备*** | 有一定输出能力 | | 梓兰、预备干员 | -3. 需要特殊操作的群组 +2. 需要特殊操作的群组 除了上面那些比较笼统的分组,我们有时候需要对一些干员或者干员种类进行一些定制的精细化操作,比如 | 分组 | 包括干员 | 主要特点 | @@ -151,51 +151,52 @@ icon: ri:game-fill 1. 群组内的顺序代表部署检测的优先度 2. 群组内干员各个字段的意思和脚本相关的逻辑 - ```json - { +```json +{ "theme": "Phantom", "priority": [ - "name": "地面阻挡", // 群组名(这里是地面阻挡组) - "doc": "标准线为1档(清杂能力或者站场能力比山强)>山>2档(阻挡>2,可自回)>斑点,站场能力小于斑点放到单切或者炮灰组", - // 带“doc”字段均为json内备注文档,对程序运行没有影响 - "opers": [ // 该包括哪些干员,有序,代表部署优先度 - { - "name": "百炼嘉维尔", // 干员名称(这里是百嘉,在组内第1位,表示需要部署地面阻挡组的时候,首先检测是不是百嘉) - "skill": 3, // 使用几技能(这里举例使用3技能) - "skill_usage": 2, // 技能使用模式,参考3-3战斗流程协议,不填或者1为自动放,2为只放x次(x通过"skill_times"字段设置),3暂时不支持 - "skill_times": 2, // 技能使用次数,默认为1,在"skill_usage"字段为2时生效 - "alternate_skill": 2, // 当没有指定技能时使用的备选技能,一般是6星干员未精二且精二后使用3技能时才需要指定(这里指没有3技能时使用2技能) - "alternate_skill_usage": 1 // 备选技能的技能使用模式(该字段尚未实现) - "alternate_skill_times": 1 // 备选技能的技能使用次数(该字段尚未实现) - "recruit_priority": 900, // 招募优先级,数字越大优先级越高,900以上属于看到必招,400以下招募优先级比一些关键干员精二优先度还低 - // 临时招募的干员优先度自动+800 - "promote_priority": 600, // 进阶优先级,数字越大优先级越高,900以上属于有希望就精二,400以下招募优先级低于招募普通三星干员 - // 小技巧:当你将招募优先度压低或者不写,拉高一些精二优先度,实际上就是在拉高临时招募到这些干员的精二优先度 - "is_key": true, // true为key(关键)干员,false或省略为非key干员。在阵容完备检测未通过时,仅招募key干员与0希望干员,保存希望。 - "is_start": true, // true为开局选择干员,false或省略为非开局干员。在队伍中没有start干员时,仅招募start干员与0希望干员,用户填写的干员会强制未start干员 - "auto_retreat": 0, // 部署几秒后自动撤退,整数,大于 0 时生效,主要用于特种干员和投锋,由于肉鸽一般是2倍速,推荐设置为技能持续时间/2 - "promote_priority_when_team_full": 850, - "recruit_priority_offsets": [ // 按当前阵容调控招募优先级 - { - "groups": [ // 需要哪些组满足条件 - "凯尔希", - "地面阻挡", - "棘刺" - ], - "is_less": false, // 条件是大于还是小于,false或者省略是大于,true是小于 - "threshold": 2, // 满足条件的数量 - "offset": -300 // 满足后对招募优先级的调整 - // (这里表示当 凯尔希、地面阻挡、棘刺 这三个群组中有2名以上干员时,百炼嘉维尔的招募优先级减300) - } - ] - }, - ... + "name": "地面阻挡", // 群组名(这里是地面阻挡组) + "doc": "标准线为1档(清杂能力或者站场能力比山强)>山>2档(阻挡>2,可自回)>斑点,站场能力小于斑点放到单切或者炮灰组", + // 带“doc”字段均为json内备注文档,对程序运行没有影响 + "opers": [ // 该包括哪些干员,有序,代表部署优先度 + { + "name": "百炼嘉维尔", // 干员名称(这里是百嘉,在组内第1位,表示需要部署地面阻挡组的时候,首先检测是不是百嘉) + "skill": 3, // 使用几技能(这里举例使用3技能) + "skill_usage": 2, // 技能使用模式,参考3-3战斗流程协议,不填或者1为自动放,2为只放x次(x通过"skill_times"字段设置),3暂时不支持 + "skill_times": 2, // 技能使用次数,默认为1,在"skill_usage"字段为2时生效 + "alternate_skill": 2, // 当没有指定技能时使用的备选技能,一般是6星干员未精二且精二后使用3技能时才需要指定(这里指没有3技能时使用2技能) + "alternate_skill_usage": 1 // 备选技能的技能使用模式(该字段尚未实现) + "alternate_skill_times": 1 // 备选技能的技能使用次数(该字段尚未实现) + "recruit_priority": 900, // 招募优先级,数字越大优先级越高,900以上属于看到必招,400以下招募优先级比一些关键干员精二优先度还低 + // 临时招募的干员优先度自动+800 + "promote_priority": 600, // 进阶优先级,数字越大优先级越高,900以上属于有希望就精二,400以下招募优先级低于招募普通三星干员 + // 小技巧:当你将招募优先度压低或者不写,拉高一些精二优先度,实际上就是在拉高临时招募到这些干员的精二优先度 + "is_key": true, // true为key(关键)干员,false或省略为非key干员。在阵容完备检测未通过时,仅招募key干员与0希望干员,保存希望。 + "is_start": true, // true为开局选择干员,false或省略为非开局干员。在队伍中没有start干员时,仅招募start干员与0希望干员,用户填写的干员会强制未start干员 + "auto_retreat": 0, // 部署几秒后自动撤退,整数,大于 0 时生效,主要用于特种干员和投锋,由于肉鸽一般是2倍速,推荐设置为技能持续时间/2 + "promote_priority_when_team_full": 850, + "recruit_priority_offsets": [ // 按当前阵容调控招募优先级 + { + "groups": [ // 需要哪些组满足条件 + "凯尔希", + "地面阻挡", + "棘刺" + ], + "is_less": false, // 条件是大于还是小于, false或者省略是大于, true是小于 + "threshold": 2, // 满足条件的数量 + "offset": -300 // 满足后对招募优先级的调整 + // (这里表示当 凯尔希, 地面阻挡, 棘刺 这三个群组中有2名以上干员时, 百炼嘉维尔的招募优先级减300) + } + ] + }, + ... ], + ], "team_complete_condition": [ - ... - ] - } - ``` + ... + ] +} +``` 3. 按照你的理解新增群组和干员 新增群组后,你可以从已有的群组中复制干员过来,参考大佬们已有的评分,在此基础上修改 @@ -234,7 +235,7 @@ icon: ri:game-fill 或者有些关卡有多个蓝门,MAA不知道哪个蓝门对应哪个红门,也会胡乱部署, - 这个时候你需要打开[地图wiki](https://map.ark-nights.com/areas)一边对着地图一边在脑海里指挥作战了 + 这个时候你需要打开[地图wiki](https://map.ark-nights.com/areas?coord_override=MAA)一边对着地图一边在脑海里指挥作战了 首先在`设置`里将`坐标展示`切换为`MAA` @@ -301,29 +302,28 @@ icon: ri:game-fill 1. 使用各个群组部署干员 ```json - "deploy_plan": [ // 部署逻辑,按从上到下、从左到右的顺序进行检索,并尝试部署找到的第一个干员,如果没有就跳过 - { - "groups": [ "百嘉", "基石", "地面C", "号角", "挡人先锋" ],//这一步从这些群组中寻找干员 - "location": [ 6, 4 ], //遍历百嘉群组、基石群组、地面C群组等等群组 - "direction": "left" //将找到的第一个干员部署到6,4这个坐标上并朝向左边 - }, //没找到就进行下一个部署操作 - { - "groups": [ "召唤" ], - "location": [ 6, 3 ], - "direction": "left" - }, - { - "groups": [ "单奶", "群奶" ], - "location": [ 6, 2 ], - "direction": "down" - } - ] - + "deploy_plan": [ // 部署逻辑,按从上到下、从左到右的顺序进行检索,并尝试部署找到的第一个干员,如果没有就跳过 + { + "groups": [ "百嘉", "基石", "地面C", "号角", "挡人先锋" ],//这一步从这些群组中寻找干员 + "location": [ 6, 4 ], //遍历百嘉群组、基石群组、地面C群组等等群组 + "direction": "left" //将找到的第一个干员部署到6,4这个坐标上并朝向左边 + }, //没找到就进行下一个部署操作 + { + "groups": [ "召唤" ], + "location": [ 6, 3 ], + "direction": "left" + }, + { + "groups": [ "单奶", "群奶" ], + "location": [ 6, 2 ], + "direction": "down" + } + ] ``` ::: info 注意 - maa会将所有部署指令扁平化后,执行最优先级部署操作 - 例:在[6,4]部署[ "百嘉", "基石", "地面C"],在[6,3]部署[ "基石", "地面C"],那么maa会将部署指令扁平化成附带坐标的[ "百嘉", "基石", "地面C","基石", "地面C"] + MAA会将所有部署指令扁平化后,执行最优先级部署操作 + 例:在[6,4]部署[ "百嘉", "基石", "地面C"],在[6,3]部署[ "基石", "地面C"],那么MAA会将部署指令扁平化成附带坐标的[ "百嘉", "基石", "地面C","基石", "地面C"] 如果在战斗中[6,4]位置的"百嘉"组干员倒下,手里有有可部署的“基石”组干员,会优先布置到[6,4]而不是[6,3] ::: @@ -474,16 +474,15 @@ OCR识别不期而遇事件,但是选项是操作固定的位置 ### 根据队伍情况动态调整某些选项的优先度(TODO) - ## 肉鸽第四步--商店藏品的优先度 `resource/roguelike/主题名/shopping.json` 描述了商店购买藏品(和战斗后选择藏品?)的策略 - ```json { "theme": "Phantom", //肉鸽主题名(这里是傀影) - "priority": [ //优先度,有序,顺序即为优先级,越在前面越优先购买,但优先级判断在chars,roles的筛选之前,可能出现高优先级商品被筛掉,什么都不买的情况 + "priority": [ //优先度,有序,顺序即为优先级,越在前面越优先购买, + //但优先级判断在chars,roles的筛选之前, 可能出现高优先级商品被筛掉, 什么都不买的情况 { "name": "金酒之杯", //藏品名字(这里金杯) "no_longer_buy": true, //true表示获得该藏品后不在花钱买藏品,false或者省略表示继续花钱买藏品 @@ -521,8 +520,6 @@ OCR识别不期而遇事件,但是选项是操作固定的位置 }, ``` - - ## 希望实现的逻辑(todo) ### 自动编队逻辑 @@ -542,16 +539,3 @@ OCR识别不期而遇事件,但是选项是操作固定的位置 ### 技能关闭 对弹药类干员有用 - - - - - - - - - - - - -