a-sheep-assistant icon indicating copy to clipboard operation
a-sheep-assistant copied to clipboard

用算法模拟点击,有什么思路嘛

Open hwhaocool opened this issue 2 years ago • 9 comments

比如棋盘数据如下(第一关)

{
    "widthNum": 8,
    "heightNum": 10,
    "levelKey": 80001,
    "blockTypeData": {
        "1": 2,
        "4": 1,
        "13": 2
    },
    "levelData": {
        "1": [{
                "id": "1-16-16",
                "type": 0,
                "rolNum": 16,
                "rowNum": 16,
                "layerNum": 1,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "1-28-16",
                "type": 0,
                "rolNum": 28,
                "rowNum": 16,
                "layerNum": 1,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "1-40-16",
                "type": 0,
                "rolNum": 40,
                "rowNum": 16,
                "layerNum": 1,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "1-16-32",
                "type": 0,
                "rolNum": 16,
                "rowNum": 32,
                "layerNum": 1,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "1-28-32",
                "type": 0,
                "rolNum": 28,
                "rowNum": 32,
                "layerNum": 1,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "1-40-32",
                "type": 0,
                "rolNum": 40,
                "rowNum": 32,
                "layerNum": 1,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "1-16-48",
                "type": 0,
                "rolNum": 16,
                "rowNum": 48,
                "layerNum": 1,
                "moldType": 2,
                "blockNode": null
            }, {
                "id": "1-28-48",
                "type": 0,
                "rolNum": 28,
                "rowNum": 48,
                "layerNum": 1,
                "moldType": 2,
                "blockNode": null
            }, {
                "id": "1-40-48",
                "type": 0,
                "rolNum": 40,
                "rowNum": 48,
                "layerNum": 1,
                "moldType": 2,
                "blockNode": null
            }
        ],
        "2": [{
                "id": "2-16-49",
                "type": 0,
                "rolNum": 16,
                "rowNum": 49,
                "layerNum": 2,
                "moldType": 2,
                "blockNode": null
            }, {
                "id": "2-28-49",
                "type": 0,
                "rolNum": 28,
                "rowNum": 49,
                "layerNum": 2,
                "moldType": 2,
                "blockNode": null
            }, {
                "id": "2-40-49",
                "type": 0,
                "rolNum": 40,
                "rowNum": 49,
                "layerNum": 2,
                "moldType": 2,
                "blockNode": null
            }, {
                "id": "2-16-20",
                "type": 1,
                "rolNum": 16,
                "rowNum": 20,
                "layerNum": 2,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "2-28-20",
                "type": 1,
                "rolNum": 28,
                "rowNum": 20,
                "layerNum": 2,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "2-40-20",
                "type": 1,
                "rolNum": 40,
                "rowNum": 20,
                "layerNum": 2,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "2-16-36",
                "type": 0,
                "rolNum": 16,
                "rowNum": 36,
                "layerNum": 2,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "2-28-36",
                "type": 0,
                "rolNum": 28,
                "rowNum": 36,
                "layerNum": 2,
                "moldType": 1,
                "blockNode": null
            }, {
                "id": "2-40-36",
                "type": 0,
                "rolNum": 40,
                "rowNum": 36,
                "layerNum": 2,
                "moldType": 1,
                "blockNode": null
            }
        ]
    }
}

能看出来一点特征,如:

  1. x y z 三个坐标
  2. x=rolNum
  3. y=rowNum
  4. z=layerNum (堆叠)(最上面的数字最大,贴近地板的是1
  5. id 字段就是 xyz 坐标

type moldType 不知道是啥

但是不知道哪个字段是代表图案的,大家有思路嘛

hwhaocool avatar Sep 15 '22 16:09 hwhaocool

这个数据是从哪里得到的,抓包吗?可以分享下吗?感觉有其他的映射数据,这个确定不了图案,算法的话考虑使用有向无环图查找关键路径

blue-snowball avatar Sep 15 '22 18:09 blue-snowball

type的值有0/1,moldType的值有1/2,这两者结合起来可能就是第一关的4种图案? 需要结合第二关的数据来验证一下

yangshi825 avatar Sep 16 '22 03:09 yangshi825

坐等大佬,毫无思路

keepfocusontechnology avatar Sep 16 '22 06:09 keepfocusontechnology

第一关截图 first

第二关截图 second

响应体和 json数据如下

羊了个羊-请求体和json.zip

hwhaocool avatar Sep 16 '22 13:09 hwhaocool

基本上都是死局,模拟点击不顶用,关了

Lcry avatar Sep 18 '22 10:09 Lcry

纯靠抓包的话,得不到地图的正确排列,应该

frg666 avatar Sep 20 '22 05:09 frg666

type是随机生成的 可以参考新版api 有seed参数应该是用来限制随机引擎的

Yc7521 avatar Sep 20 '22 06:09 Yc7521

mark

rslywhj avatar Sep 20 '22 15:09 rslywhj

这个思路可以close了(

Yc7521 avatar Sep 21 '22 04:09 Yc7521