48
repo/js/TravelersTales/README.md
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
# 自动游逸旅闻
|
||||||
|
自动完成游逸旅闻活动
|
||||||
|
暂仅支持“鎏溢之章”
|
||||||
|
## 路线
|
||||||
|
|
||||||
|
|路径|支持情况|含有键鼠脚本|
|
||||||
|
|--|--|--|
|
||||||
|
|八重神子-1|✔️||
|
||||||
|
|迪希雅-1|✔️||
|
||||||
|
|迪希雅-2|✔️||
|
||||||
|
|菲米尼-1|✔️|✔️|
|
||||||
|
|基尼奇-1|❌[^1]||
|
||||||
|
|柯莱-1|✔️|✔️|
|
||||||
|
|林尼-1|✔️||
|
||||||
|
|琳妮特-1|❌[^2]||
|
||||||
|
|鹿野院平藏-1|✔️||
|
||||||
|
|鹿野院平藏-2|✔️||
|
||||||
|
|鹿野院平藏-3|✔️||
|
||||||
|
|鹿野院平藏-4|✔️||
|
||||||
|
|鹿野院平藏-5|✔️||
|
||||||
|
|梦见月瑞希-1|✔️|✔️|
|
||||||
|
|梦见月瑞希-2|✔️|✔️|
|
||||||
|
|那维莱特-1|✔️||
|
||||||
|
|那维莱特-2|✔️||
|
||||||
|
|那维莱特-3|✔️||
|
||||||
|
|绮良良-1|✔️||
|
||||||
|
|绮良良-2|✔️||
|
||||||
|
|绮良良-3|✔️||
|
||||||
|
|赛诺-1|✔️||
|
||||||
|
|赛诺-2|✔️||
|
||||||
|
|赛诺-3|✔️||
|
||||||
|
|神里绫人-1|✔️||
|
||||||
|
|托马-1|✔️||
|
||||||
|
|托马-2|✔️||
|
||||||
|
|希诺宁-1|❌[^1]||
|
||||||
|
|夏洛蒂-1|✔️||
|
||||||
|
|夏洛蒂-2|✔️||
|
||||||
|
|夏洛蒂-3|✔️||
|
||||||
|
|夏沃蕾-1|✔️||
|
||||||
|
|伊安珊-1|❌[^1]||
|
||||||
|
|伊法-1|❌[^1]||
|
||||||
|
|早柚-1|✔️||
|
||||||
|
|
||||||
|
[^1]: 角色所在位置(圣火竞技场)无法使用地图追踪功能前往,键鼠录制的效果也非常不稳定
|
||||||
|
[^2]: 角色所在位置(灰河)无法使用地图追踪功能前往,键鼠录制的效果也非常不稳定
|
||||||
|
|
||||||
|
## 待完成功能
|
||||||
|
- [x] 连续运行
|
||||||
BIN
repo/js/TravelersTales/assets/avatars/八重神子.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
repo/js/TravelersTales/assets/avatars/夏洛蒂.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
repo/js/TravelersTales/assets/avatars/托马.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
repo/js/TravelersTales/assets/avatars/林尼.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
repo/js/TravelersTales/assets/avatars/柯莱.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
repo/js/TravelersTales/assets/avatars/梦见月瑞希.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
repo/js/TravelersTales/assets/avatars/神里绫人.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
repo/js/TravelersTales/assets/avatars/赛诺.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
repo/js/TravelersTales/assets/avatars/迪希雅.png
Normal file
|
After Width: | Height: | Size: 957 B |
BIN
repo/js/TravelersTales/assets/avatars/那维莱特.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
repo/js/TravelersTales/assets/avatars/鹿野院平藏.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
repo/js/TravelersTales/assets/icon/paimon_menu.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
repo/js/TravelersTales/assets/icon/三个点.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
repo/js/TravelersTales/assets/icon/两个点.png
Normal file
|
After Width: | Height: | Size: 648 B |
1
repo/js/TravelersTales/assets/keymouse/托马-2.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"macroEvents":[{"type":0,"keyCode":68,"mouseX":0,"mouseY":0,"time":1266},{"type":1,"keyCode":68,"mouseX":0,"mouseY":0,"time":1906},{"type":0,"keyCode":87,"mouseX":0,"mouseY":0,"time":3000},{"type":1,"keyCode":87,"mouseX":0,"mouseY":0,"time":4344}],"info":{"name":"","description":"","x":0,"y":0,"width":1920,"height":1080,"recordDpi":1}}
|
||||||
1
repo/js/TravelersTales/assets/keymouse/柯莱-1.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"macroEvents":[{"type":0,"keyCode":87,"mouseX":0,"mouseY":0,"time":2062},{"type":1,"keyCode":87,"mouseX":0,"mouseY":0,"time":3719},{"type":3,"mouseX":7,"mouseY":-4,"time":4010},{"type":3,"mouseX":9,"mouseY":-5,"time":4042},{"type":3,"mouseX":8,"mouseY":-7,"time":4073},{"type":3,"mouseX":6,"mouseY":-4,"time":4104},{"type":3,"mouseX":3,"mouseY":-3,"time":4151},{"type":3,"mouseX":2,"mouseY":-1,"time":4182},{"type":3,"mouseX":1,"mouseY":-2,"time":4214},{"type":3,"mouseX":2,"mouseY":-2,"time":4245},{"type":3,"mouseX":3,"mouseY":-3,"time":4276},{"type":3,"mouseX":2,"mouseY":-3,"time":4307},{"type":3,"mouseX":2,"mouseY":-1,"time":4339},{"type":3,"mouseX":2,"mouseY":-4,"time":4370},{"type":3,"mouseX":2,"mouseY":-2,"time":4401},{"type":3,"mouseX":3,"mouseY":-3,"time":4432},{"type":3,"mouseX":4,"mouseY":-5,"time":4464},{"type":3,"mouseX":1,"mouseY":-2,"time":4495},{"type":3,"mouseX":1,"mouseY":0,"time":4589},{"type":0,"keyCode":87,"mouseX":0,"mouseY":0,"time":4781},{"type":1,"keyCode":87,"mouseX":0,"mouseY":0,"time":13265},{"type":3,"mouseX":-11,"mouseY":5,"time":13870},{"type":3,"mouseX":-28,"mouseY":11,"time":13901},{"type":3,"mouseX":-46,"mouseY":13,"time":13932},{"type":3,"mouseX":-48,"mouseY":13,"time":13964},{"type":3,"mouseX":-25,"mouseY":10,"time":13995},{"type":3,"mouseX":-7,"mouseY":3,"time":14026},{"type":3,"mouseX":-51,"mouseY":22,"time":14057},{"type":3,"mouseX":-44,"mouseY":14,"time":14089},{"type":3,"mouseX":-45,"mouseY":10,"time":14120},{"type":3,"mouseX":-23,"mouseY":6,"time":14151},{"type":3,"mouseX":-29,"mouseY":10,"time":14229},{"type":3,"mouseX":-9,"mouseY":6,"time":14260},{"type":3,"mouseX":-16,"mouseY":10,"time":14292},{"type":3,"mouseX":-23,"mouseY":15,"time":14323},{"type":3,"mouseX":-18,"mouseY":12,"time":14354},{"type":3,"mouseX":-13,"mouseY":9,"time":14385},{"type":3,"mouseX":-12,"mouseY":7,"time":14417},{"type":3,"mouseX":-12,"mouseY":6,"time":14448},{"type":3,"mouseX":-6,"mouseY":5,"time":14479},{"type":3,"mouseX":-8,"mouseY":5,"time":14510},{"type":3,"mouseX":-7,"mouseY":5,"time":14542},{"type":3,"mouseX":-3,"mouseY":4,"time":14573},{"type":3,"mouseX":-5,"mouseY":3,"time":14620},{"type":3,"mouseX":-3,"mouseY":2,"time":14651},{"type":0,"keyCode":87,"mouseX":0,"mouseY":0,"time":15015},{"type":3,"mouseX":0,"mouseY":-1,"time":16339},{"type":1,"keyCode":87,"mouseX":0,"mouseY":0,"time":19625},{"type":3,"mouseX":-3,"mouseY":1,"time":20010},{"type":3,"mouseX":-17,"mouseY":6,"time":20042},{"type":3,"mouseX":-25,"mouseY":3,"time":20073},{"type":3,"mouseX":-23,"mouseY":1,"time":20104},{"type":3,"mouseX":-37,"mouseY":1,"time":20135},{"type":3,"mouseX":-36,"mouseY":0,"time":20167},{"type":3,"mouseX":-27,"mouseY":-1,"time":20198},{"type":3,"mouseX":-17,"mouseY":-2,"time":20229},{"type":3,"mouseX":-15,"mouseY":0,"time":20260},{"type":3,"mouseX":-9,"mouseY":-1,"time":20292},{"type":3,"mouseX":-4,"mouseY":-1,"time":20323},{"type":3,"mouseX":-8,"mouseY":0,"time":20354},{"type":3,"mouseX":-15,"mouseY":-2,"time":20385},{"type":3,"mouseX":-10,"mouseY":-1,"time":20417},{"type":3,"mouseX":-5,"mouseY":-1,"time":20448},{"type":3,"mouseX":-13,"mouseY":0,"time":20479},{"type":3,"mouseX":-12,"mouseY":0,"time":20510},{"type":3,"mouseX":-16,"mouseY":-1,"time":20542},{"type":3,"mouseX":-3,"mouseY":0,"time":20573},{"type":3,"mouseX":-1,"mouseY":-1,"time":20635},{"type":3,"mouseX":7,"mouseY":-2,"time":20760},{"type":3,"mouseX":2,"mouseY":-1,"time":20792},{"type":3,"mouseX":1,"mouseY":-1,"time":20823},{"type":0,"keyCode":87,"mouseX":0,"mouseY":0,"time":21109},{"type":3,"mouseX":0,"mouseY":-1,"time":21417},{"type":1,"keyCode":87,"mouseX":0,"mouseY":0,"time":22500}],"info":{"name":"","description":"","x":0,"y":0,"width":1920,"height":1080,"recordDpi":1}}
|
||||||
1
repo/js/TravelersTales/assets/keymouse/梦见月瑞希-1.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"macroEvents":[{"type":3,"mouseX":0,"mouseY":-1,"time":245},{"type":3,"mouseX":-1,"mouseY":0,"time":713},{"type":3,"mouseX":-11,"mouseY":1,"time":745},{"type":3,"mouseX":-10,"mouseY":0,"time":776},{"type":3,"mouseX":-9,"mouseY":0,"time":807},{"type":3,"mouseX":-10,"mouseY":1,"time":838},{"type":3,"mouseX":-11,"mouseY":0,"time":870},{"type":3,"mouseX":-7,"mouseY":0,"time":901},{"type":3,"mouseX":-8,"mouseY":0,"time":932},{"type":3,"mouseX":-9,"mouseY":0,"time":963},{"type":3,"mouseX":-21,"mouseY":0,"time":995},{"type":3,"mouseX":-14,"mouseY":0,"time":1026},{"type":3,"mouseX":-26,"mouseY":0,"time":1057},{"type":3,"mouseX":-19,"mouseY":0,"time":1088},{"type":3,"mouseX":-17,"mouseY":0,"time":1120},{"type":3,"mouseX":-17,"mouseY":1,"time":1151},{"type":3,"mouseX":-17,"mouseY":1,"time":1182},{"type":3,"mouseX":-14,"mouseY":0,"time":1213},{"type":3,"mouseX":-19,"mouseY":0,"time":1245},{"type":3,"mouseX":-14,"mouseY":1,"time":1276},{"type":3,"mouseX":-12,"mouseY":0,"time":1307},{"type":3,"mouseX":-17,"mouseY":0,"time":1338},{"type":3,"mouseX":-12,"mouseY":0,"time":1370},{"type":3,"mouseX":-18,"mouseY":0,"time":1401},{"type":3,"mouseX":-12,"mouseY":0,"time":1432},{"type":3,"mouseX":-6,"mouseY":0,"time":1463},{"type":3,"mouseX":-8,"mouseY":0,"time":1495},{"type":3,"mouseX":-10,"mouseY":0,"time":1526},{"type":3,"mouseX":-8,"mouseY":0,"time":1557},{"type":3,"mouseX":-10,"mouseY":0,"time":1588},{"type":3,"mouseX":-8,"mouseY":0,"time":1620},{"type":3,"mouseX":-7,"mouseY":1,"time":1651},{"type":3,"mouseX":-6,"mouseY":0,"time":1682},{"type":3,"mouseX":-5,"mouseY":0,"time":1713},{"type":3,"mouseX":-6,"mouseY":0,"time":1745},{"type":3,"mouseX":-5,"mouseY":1,"time":1776},{"type":3,"mouseX":-7,"mouseY":0,"time":1807},{"type":3,"mouseX":-5,"mouseY":0,"time":1838},{"type":3,"mouseX":-4,"mouseY":0,"time":1870},{"type":3,"mouseX":-3,"mouseY":1,"time":1901},{"type":3,"mouseX":-3,"mouseY":0,"time":1932},{"type":3,"mouseX":-1,"mouseY":0,"time":1963},{"type":3,"mouseX":-1,"mouseY":0,"time":1995},{"type":3,"mouseX":-1,"mouseY":0,"time":2026},{"type":0,"keyCode":87,"mouseX":0,"mouseY":0,"time":2640},{"type":1,"keyCode":87,"mouseX":0,"mouseY":0,"time":3734},{"type":0,"keyCode":65,"mouseX":0,"mouseY":0,"time":4484},{"type":1,"keyCode":65,"mouseX":0,"mouseY":0,"time":5765}],"info":{"name":"","description":"","x":318,"y":199,"width":1920,"height":1080,"recordDpi":1.5}}
|
||||||
1
repo/js/TravelersTales/assets/keymouse/梦见月瑞希-2.json
Normal file
1
repo/js/TravelersTales/assets/keymouse/菲米尼-1.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"macroEvents":[{"type":0,"keyCode":68,"mouseX":0,"mouseY":0,"time":328},{"type":1,"keyCode":68,"mouseX":0,"mouseY":0,"time":4250},{"type":0,"keyCode":32,"mouseX":0,"mouseY":0,"time":4875},{"type":1,"keyCode":32,"mouseX":0,"mouseY":0,"time":7360},{"type":4,"mouseX":959,"mouseY":539,"mouseButton":"Middle","time":8063},{"type":3,"mouseX":-8,"mouseY":6,"time":8183},{"type":3,"mouseX":-10,"mouseY":7,"time":8214},{"type":5,"mouseX":959,"mouseY":539,"mouseButton":"Middle","time":8219},{"type":3,"mouseX":0,"mouseY":1,"time":8323},{"type":0,"keyCode":68,"mouseX":0,"mouseY":0,"time":8797},{"type":1,"keyCode":68,"mouseX":0,"mouseY":0,"time":12203},{"type":4,"mouseX":960,"mouseY":540,"mouseButton":"Middle","time":12782},{"type":5,"mouseX":960,"mouseY":540,"mouseButton":"Middle","time":12953},{"type":0,"keyCode":87,"mouseX":0,"mouseY":0,"time":13469},{"type":1,"keyCode":87,"mouseX":0,"mouseY":0,"time":21469}],"info":{"name":"","description":"","x":0,"y":0,"width":1920,"height":1080,"recordDpi":1}}
|
||||||
51
repo/js/TravelersTales/assets/pathing/八重神子-1.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "八重神子-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750328452356
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -4375.716796875,
|
||||||
|
"y": -2498.1533203125,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4393.720703125,
|
||||||
|
"y": -2484.8095703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4398.73828125,
|
||||||
|
"y": -2491.287109375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4424.5078125,
|
||||||
|
"y": -2475.228515625,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "combat_script",
|
||||||
|
"action_params": "keydown(w),wait(3),keyup(w)"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
78
repo/js/TravelersTales/assets/pathing/夏沃蕾-1.json
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "夏沃蕾-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1751036415928
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 4318.32080078125,
|
||||||
|
"y": 3591.339599609375,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "teleport"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4318.32080078125,
|
||||||
|
"y": 3591.339599609375,
|
||||||
|
"action": "combat_script",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "wait(0.2),keydown(SPACE),wait(5),keyup(SPACE)",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4344.07470703125,
|
||||||
|
"y": 3671.5439453125,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4346.1875,
|
||||||
|
"y": 3697.3125,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4343.519,
|
||||||
|
"y": 3701.963,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 4354.89306640625,
|
||||||
|
"y": 3707.44287109375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": 4379.984375,
|
||||||
|
"y": 3716.22900390625,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "combat_script",
|
||||||
|
"action_params": "keypress(w)"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
60
repo/js/TravelersTales/assets/pathing/夏洛蒂-1.json
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "夏洛蒂-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750327464492
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 4610.97021484375,
|
||||||
|
"y": 3601.181640625,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4605.48583984375,
|
||||||
|
"y": 3587.205810546875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4607.0400390625,
|
||||||
|
"y": 3555.32470703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4618.89013671875,
|
||||||
|
"y": 3516.02392578125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "stop_flying",
|
||||||
|
"action_params": "2000"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4618.59521484375,
|
||||||
|
"y": 3518.6279296875,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "combat_script",
|
||||||
|
"action_params": "keypress(w)"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
67
repo/js/TravelersTales/assets/pathing/夏洛蒂-2.json
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "夏洛蒂-2",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 4645.43994140625,
|
||||||
|
"y": 3467.868896484375,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4643.67138671875,
|
||||||
|
"y": 3481.740966796875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4642.9287109375,
|
||||||
|
"y": 3487.9013671875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4645.36962890625,
|
||||||
|
"y": 3493.369140625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4641.8642578125,
|
||||||
|
"y": 3495.07763671875,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 4641.8369140625,
|
||||||
|
"y": 3495.466064453125,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
67
repo/js/TravelersTales/assets/pathing/夏洛蒂-3.json
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "夏洛蒂-3",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "run",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 4454.59033203125,
|
||||||
|
"y": 3444.196044921875,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4430.828125,
|
||||||
|
"y": 3457.917724609375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4425.0263671875,
|
||||||
|
"y": 3503.76220703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4439.91845703125,
|
||||||
|
"y": 3531.34912109375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4440.798828125,
|
||||||
|
"y": 3532.854736328125,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 4443.71435546875,
|
||||||
|
"y": 3537.876708984375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
78
repo/js/TravelersTales/assets/pathing/托马-1.json
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "托马-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "HZYgrandma",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750221072722
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": -4402.515625,
|
||||||
|
"y": -3053.001953125,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4397.998046875,
|
||||||
|
"y": -3062.0732421875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4380.201171875,
|
||||||
|
"y": -3074.171875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4375.798828125,
|
||||||
|
"y": -3083.328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4386.919921875,
|
||||||
|
"y": -3098.255859375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": -4394.58984375,
|
||||||
|
"y": -3124.421875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": -4399.65234375,
|
||||||
|
"y": -3130.015625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
159
repo/js/TravelersTales/assets/pathing/托马-2.json
Normal file
@@ -0,0 +1,159 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "托马-2",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750496772417
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -867.689453125,
|
||||||
|
"y": 2281.361083984375,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -867.8779296875,
|
||||||
|
"y": 2289.819091796875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -874.130859375,
|
||||||
|
"y": 2302.76611328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -882.0615234375,
|
||||||
|
"y": 2317.410888671875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -887.4970703125,
|
||||||
|
"y": 2326.26025390625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": -891.3330078125,
|
||||||
|
"y": 2321.82421875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": -905.26953125,
|
||||||
|
"y": 2313.772216796875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"x": -909.91015625,
|
||||||
|
"y": 2312.240234375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 9,
|
||||||
|
"x": -911.29296875,
|
||||||
|
"y": 2315.97998046875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 10,
|
||||||
|
"x": -918.0234375,
|
||||||
|
"y": 2327.587890625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 11,
|
||||||
|
"x": -921.2900390625,
|
||||||
|
"y": 2327.424072265625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 12,
|
||||||
|
"x": -929.6376953125,
|
||||||
|
"y": 2323.208251953125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 13,
|
||||||
|
"x": -935.4296875,
|
||||||
|
"y": 2314.172607421875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 14,
|
||||||
|
"x": -939.9609375,
|
||||||
|
"y": 2306.020751953125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 15,
|
||||||
|
"x": -945.205078125,
|
||||||
|
"y": 2307.8359375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "jump",
|
||||||
|
"action": "stop_flying",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 16,
|
||||||
|
"x": -929.5537109375,
|
||||||
|
"y": 2301.4296875,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "stop_flying",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
94
repo/js/TravelersTales/assets/pathing/早柚-1.json
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "早柚-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "run",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": -4402.552734375,
|
||||||
|
"y": -3053.0302734375,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4394.763671875,
|
||||||
|
"y": -3064.9873046875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4365.87890625,
|
||||||
|
"y": -3091.501953125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4363.03125,
|
||||||
|
"y": -3094.111328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4330.353515625,
|
||||||
|
"y": -3137.642578125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "stop_flying",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": -4327.9609375,
|
||||||
|
"y": -3140.708984375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": -4327.91796875,
|
||||||
|
"y": -3140.705078125,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"x": -4327.04296875,
|
||||||
|
"y": -3140.8291015625,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 9,
|
||||||
|
"x": -4326.71875,
|
||||||
|
"y": -3140.927734375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
78
repo/js/TravelersTales/assets/pathing/林尼-1.json
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "林尼-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750236621542
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 4301.302734375,
|
||||||
|
"y": 4765.01025390625,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4289.541015625,
|
||||||
|
"y": 4764.77734375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4268.943359375,
|
||||||
|
"y": 4759.98681640625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4237.4873046875,
|
||||||
|
"y": 4783.37353515625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4230.89111328125,
|
||||||
|
"y": 4788.2646484375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "jump",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 4209.32958984375,
|
||||||
|
"y": 4804.1025390625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": 4197.10400390625,
|
||||||
|
"y": 4805.5341796875,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
105
repo/js/TravelersTales/assets/pathing/柯莱-1.json
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "柯莱-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750225668959
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 2694.0634765625,
|
||||||
|
"y": -416.45068359375,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 2708.0478515625,
|
||||||
|
"y": -422.43115234375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 2725.3505859375,
|
||||||
|
"y": -418.0947265625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 2737.44140625,
|
||||||
|
"y": -414.5146484375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 2758.19140625,
|
||||||
|
"y": -408.62158203125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 2775.984375,
|
||||||
|
"y": -394.5595703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": 2795.8076171875,
|
||||||
|
"y": -397.115234375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"x": 2810.3837890625,
|
||||||
|
"y": -393.03857421875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 9,
|
||||||
|
"x": 2827.4443359375,
|
||||||
|
"y": -388.52685546875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 10,
|
||||||
|
"x": 2843.248046875,
|
||||||
|
"y": -384.18798828125,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
60
repo/js/TravelersTales/assets/pathing/梦见月瑞希-1.json
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "梦见月瑞希-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750325435366
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -4402.470703125,
|
||||||
|
"y": -3053.05078125,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4407.0234375,
|
||||||
|
"y": -3066.736328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4439.341796875,
|
||||||
|
"y": -3106.0869140625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4455.4921875,
|
||||||
|
"y": -3116.537109375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4458.6171875,
|
||||||
|
"y": -3111.31640625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
60
repo/js/TravelersTales/assets/pathing/梦见月瑞希-2.json
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "梦见月瑞希-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750325435366
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -4402.470703125,
|
||||||
|
"y": -3053.05078125,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4407.0234375,
|
||||||
|
"y": -3066.736328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4439.341796875,
|
||||||
|
"y": -3106.0869140625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4455.4921875,
|
||||||
|
"y": -3116.537109375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4458.6171875,
|
||||||
|
"y": -3111.31640625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
60
repo/js/TravelersTales/assets/pathing/神里绫人-1.json
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "神里绫人-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750412953192
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": -4492.0078125,
|
||||||
|
"y": -3208.1435546875,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4479.404296875,
|
||||||
|
"y": -3185.94921875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4490.958984375,
|
||||||
|
"y": -3143.4794921875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4473.443359375,
|
||||||
|
"y": -3131.95703125,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "dash",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4470.8359375,
|
||||||
|
"y": -3130.203125,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "combat_script",
|
||||||
|
"action_params": "keypress(w)"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
51
repo/js/TravelersTales/assets/pathing/绮良良-1.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "绮良良-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "HZYgrandma",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750220971981
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 267.9384765625,
|
||||||
|
"y": -665.15576171875,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 247.98046875,
|
||||||
|
"y": -665.54345703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 232.5732421875,
|
||||||
|
"y": -664.62890625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 230.8349609375,
|
||||||
|
"y": -671.86962890625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
51
repo/js/TravelersTales/assets/pathing/绮良良-2.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "绮良良-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "HZYgrandma",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750220971981
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 267.9384765625,
|
||||||
|
"y": -665.15576171875,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 247.98046875,
|
||||||
|
"y": -665.54345703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 232.5732421875,
|
||||||
|
"y": -664.62890625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 230.8349609375,
|
||||||
|
"y": -671.86962890625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
112
repo/js/TravelersTales/assets/pathing/绮良良-3.json
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "绮良良-3",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -4578.759765625,
|
||||||
|
"y": -2577.7197265625,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4568.271484375,
|
||||||
|
"y": -2599.685546875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4539.041015625,
|
||||||
|
"y": -2642.1279296875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4522.158203125,
|
||||||
|
"y": -2652.9345703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4499.05078125,
|
||||||
|
"y": -2652.861328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": -4484.30859375,
|
||||||
|
"y": -2659.0625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": -4478.20703125,
|
||||||
|
"y": -2656.6845703125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"x": -4472.6015625,
|
||||||
|
"y": -2654.2275390625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 9,
|
||||||
|
"x": -4472.626953125,
|
||||||
|
"y": -2654.2333984375,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 10,
|
||||||
|
"x": -4472.626953125,
|
||||||
|
"y": -2654.2333984375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 11,
|
||||||
|
"x": -4473.568359375,
|
||||||
|
"y": -2655.318359375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
24
repo/js/TravelersTales/assets/pathing/菲米尼-1.json
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "菲米尼-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750225048040
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 4212,
|
||||||
|
"y": 2996.5,
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
60
repo/js/TravelersTales/assets/pathing/赛诺-1.json
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "赛诺-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750225356014
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 3097.2314453125,
|
||||||
|
"y": -355.9384765625,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 3077.6220703125,
|
||||||
|
"y": -314.19384765625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 3058.3193359375,
|
||||||
|
"y": -272.73779296875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 3058.193359375,
|
||||||
|
"y": -269.69873046875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 3062.4736328125,
|
||||||
|
"y": -267.92431640625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
78
repo/js/TravelersTales/assets/pathing/赛诺-2.json
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "赛诺-2",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750500484149
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 3097.2197265625,
|
||||||
|
"y": -355.92333984375,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 3086.1279296875,
|
||||||
|
"y": -343.08251953125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 3080.5048828125,
|
||||||
|
"y": -321.27294921875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 3075.7685546875,
|
||||||
|
"y": -312.60498046875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 3059.2041015625,
|
||||||
|
"y": -276.119140625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 3057.1142578125,
|
||||||
|
"y": -271.5478515625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": 3059.7607421875,
|
||||||
|
"y": -268.31884765625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
51
repo/js/TravelersTales/assets/pathing/赛诺-3.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "赛诺-3",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1751042155932
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 2867.2216796875,
|
||||||
|
"y": -381.30224609375,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 2864.5419921875,
|
||||||
|
"y": -381.12060546875,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 2862.8505859375,
|
||||||
|
"y": -381.5927734375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 2861.4150390625,
|
||||||
|
"y": -381.31591796875,
|
||||||
|
"action": "combat_script",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "keypress(w),wait(1)",
|
||||||
|
"type": "orientation"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
69
repo/js/TravelersTales/assets/pathing/迪希雅-1.json
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "迪希雅-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "HZYgrandma",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750221371509
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 3774.046875,
|
||||||
|
"y": 3784.006103515625,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 3786.087890625,
|
||||||
|
"y": 3775.61328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 3782.7685546875,
|
||||||
|
"y": 3737.6064453125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 3777.861328125,
|
||||||
|
"y": 3682.564453125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 3772.1533203125,
|
||||||
|
"y": 3611.31591796875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "stop_flying",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 3771.6982421875,
|
||||||
|
"y": 3608.28466796875,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
87
repo/js/TravelersTales/assets/pathing/迪希雅-2.json
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "迪希雅-2",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750500882383
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 4454.61328125,
|
||||||
|
"y": 3444.1884765625,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4454.59912109375,
|
||||||
|
"y": 3449.80712890625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4449.28466796875,
|
||||||
|
"y": 3491.033935546875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4452.33056640625,
|
||||||
|
"y": 3508.1708984375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4451.8212890625,
|
||||||
|
"y": 3514.510986328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 4436.044921875,
|
||||||
|
"y": 3516.88330078125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": 4436.0830078125,
|
||||||
|
"y": 3528.451416015625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"x": 4436.166015625,
|
||||||
|
"y": 3539.046630859375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
58
repo/js/TravelersTales/assets/pathing/那维莱特-1.json
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "那维莱特-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 3635.4814453125,
|
||||||
|
"y": 3801.474365234375,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 3635.5458984375,
|
||||||
|
"y": 3801.385009765625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 3595.3310546875,
|
||||||
|
"y": 3796.18896484375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 3595.4423828125,
|
||||||
|
"y": 3798.190185546875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 3596.189453125,
|
||||||
|
"y": 3801.076171875,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
69
repo/js/TravelersTales/assets/pathing/那维莱特-2.json
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "那维莱特-2",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750501056343
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": 4454.62060546875,
|
||||||
|
"y": 3444.1884765625,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4469.05615234375,
|
||||||
|
"y": 3460.261962890625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "fly",
|
||||||
|
"action": "stop_flying",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4477.69140625,
|
||||||
|
"y": 3484.501953125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4475.39306640625,
|
||||||
|
"y": 3511.39111328125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4474.451171875,
|
||||||
|
"y": 3527.21875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 4472.65234375,
|
||||||
|
"y": 3553.238037109375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
76
repo/js/TravelersTales/assets/pathing/那维莱特-3.json
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "那维莱特-3",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "run",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": 4749.50341796875,
|
||||||
|
"y": 2636.222412109375,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": 4776.52978515625,
|
||||||
|
"y": 2646.732177734375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": 4790.2392578125,
|
||||||
|
"y": 2655.89453125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "run",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": 4793.83740234375,
|
||||||
|
"y": 2658.263427734375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": 4794.06396484375,
|
||||||
|
"y": 2658.477294921875,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": 4796.341796875,
|
||||||
|
"y": 2660.043701171875,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": 4796.982421875,
|
||||||
|
"y": 2660.5205078125,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
87
repo/js/TravelersTales/assets/pathing/鹿野院平藏-1.json
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "鹿野院平藏-1",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "Tool_tingsu",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750225271847
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -4402.529296875,
|
||||||
|
"y": -3053.0478515625,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4404.390625,
|
||||||
|
"y": -3063.318359375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4419.326171875,
|
||||||
|
"y": -3081.58984375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4434.171875,
|
||||||
|
"y": -3100.005859375,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4445.580078125,
|
||||||
|
"y": -3109.501953125,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": -4465.625,
|
||||||
|
"y": -3124.6982421875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": -4458.404296875,
|
||||||
|
"y": -3136.1962890625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"x": -4459.763671875,
|
||||||
|
"y": -3140.841796875,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
78
repo/js/TravelersTales/assets/pathing/鹿野院平藏-2.json
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "鹿野院平藏-2",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750324635349
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -4402.529296875,
|
||||||
|
"y": -3053.0478515625,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "teleport"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4404.390625,
|
||||||
|
"y": -3063.318359375,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4419.326171875,
|
||||||
|
"y": -3081.58984375,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4434.171875,
|
||||||
|
"y": -3100.005859375,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4445.580078125,
|
||||||
|
"y": -3109.501953125,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": -4465.625,
|
||||||
|
"y": -3124.6982421875,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action_params": "",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"x": -4467.0078125,
|
||||||
|
"y": -3127.4365234375,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
51
repo/js/TravelersTales/assets/pathing/鹿野院平藏-3.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "鹿野院平藏-3",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "ddaodan",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0",
|
||||||
|
"tags": [],
|
||||||
|
"last_modified_time": 1750527027100
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"x": -4402.58984375,
|
||||||
|
"y": -3052.966796875,
|
||||||
|
"type": "teleport",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4413.51171875,
|
||||||
|
"y": -3052.0634765625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4421.5859375,
|
||||||
|
"y": -3044.1337890625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4416.76171875,
|
||||||
|
"y": -3037.1416015625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
49
repo/js/TravelersTales/assets/pathing/鹿野院平藏-4.json
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "鹿野院平藏-4",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": -4232.08203125,
|
||||||
|
"y": -3001.919921875,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4231.97265625,
|
||||||
|
"y": -3001.6142578125,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4232.4296875,
|
||||||
|
"y": -2999.6240234375,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4232.515625,
|
||||||
|
"y": -2998.97265625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
67
repo/js/TravelersTales/assets/pathing/鹿野院平藏-5.json
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
"info": {
|
||||||
|
"name": "鹿野院平藏-5",
|
||||||
|
"type": "collect",
|
||||||
|
"author": "哈少",
|
||||||
|
"version": "1.0",
|
||||||
|
"description": "",
|
||||||
|
"map_name": "Teyvat",
|
||||||
|
"bgi_version": "0.45.0"
|
||||||
|
},
|
||||||
|
"positions": [
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"action": "",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"type": "teleport",
|
||||||
|
"x": -4232.6796875,
|
||||||
|
"y": -3002.3818359375,
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"x": -4232.58984375,
|
||||||
|
"y": -3001.791015625,
|
||||||
|
"type": "path",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"x": -4232.3828125,
|
||||||
|
"y": -3000.5322265625,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"x": -4231.89453125,
|
||||||
|
"y": -2999.8427734375,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"x": -4231.140625,
|
||||||
|
"y": -2998.328125,
|
||||||
|
"type": "target",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"x": -4231.52734375,
|
||||||
|
"y": -2998.3193359375,
|
||||||
|
"type": "orientation",
|
||||||
|
"move_mode": "walk",
|
||||||
|
"action": "",
|
||||||
|
"action_params": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
2
repo/js/TravelersTales/config.json
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
||||||
79
repo/js/TravelersTales/data.json
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
{
|
||||||
|
"errorThreshold": 100,
|
||||||
|
"mapPositions": [
|
||||||
|
{
|
||||||
|
"name": "须弥",
|
||||||
|
"x": 2872,
|
||||||
|
"y": -378,
|
||||||
|
"country": "须弥"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "枫丹",
|
||||||
|
"x": 4514,
|
||||||
|
"y": 3631,
|
||||||
|
"country": "枫丹",
|
||||||
|
"zoom": 3.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "露泽咖啡厅",
|
||||||
|
"x": 4520,
|
||||||
|
"y": 3518,
|
||||||
|
"country": "枫丹",
|
||||||
|
"zoom": 1.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "塔拉塔海谷锚点",
|
||||||
|
"x": 4330,
|
||||||
|
"y": 3962,
|
||||||
|
"country": "枫丹"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "茉洁站锚点",
|
||||||
|
"x": 3776,
|
||||||
|
"y": 3785,
|
||||||
|
"country": "枫丹",
|
||||||
|
"zoom": 2.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "厄里那斯七天神像",
|
||||||
|
"x": 4750,
|
||||||
|
"y": 2638,
|
||||||
|
"country": "枫丹",
|
||||||
|
"zoom": 2.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "璃月",
|
||||||
|
"x": 270,
|
||||||
|
"y": -666,
|
||||||
|
"country": "璃月"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "稻妻",
|
||||||
|
"x": -4399,
|
||||||
|
"y": -3049,
|
||||||
|
"country": "稻妻",
|
||||||
|
"zoom": 3.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "镇守之森锚点",
|
||||||
|
"x": -4428,
|
||||||
|
"y": -2797,
|
||||||
|
"country": "稻妻",
|
||||||
|
"zoom": 2.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "鸣神大社锚点",
|
||||||
|
"x": -4375,
|
||||||
|
"y": -2497,
|
||||||
|
"country": "稻妻",
|
||||||
|
"zoom": 1.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "蒙德",
|
||||||
|
"x": -876,
|
||||||
|
"y": 2277,
|
||||||
|
"country": "蒙德",
|
||||||
|
"zoom": 2.0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
477
repo/js/TravelersTales/main.js
Normal file
@@ -0,0 +1,477 @@
|
|||||||
|
|
||||||
|
// 全局变量声明
|
||||||
|
let data, config;
|
||||||
|
let characterX, characterY;
|
||||||
|
let avatar;
|
||||||
|
let failed = false;
|
||||||
|
|
||||||
|
(async function () {
|
||||||
|
setGameMetrics(1920, 1080, 1);
|
||||||
|
await genshin.returnMainUi();
|
||||||
|
dispatcher.addTimer(new RealtimeTimer("AutoSkip")); // 开启自动剧情
|
||||||
|
await loadData();
|
||||||
|
|
||||||
|
// 角色点位信息(提前定义以便全局使用)
|
||||||
|
const characterPositions = [ // 角色点位信息
|
||||||
|
{ name: "柯莱-1", x: 2843, y: -384, hasKeyMouse: true },
|
||||||
|
{ name: "迪希雅-1", x: 3771, y: 3608 },
|
||||||
|
{ name: "迪希雅-2", x: 4436, y: 3539 },
|
||||||
|
{ name: "赛诺-1", x: 3062, y: -268 },
|
||||||
|
{ name: "赛诺-2", x: 3059, y: -268 },
|
||||||
|
{ name: "赛诺-3", x: 2863, y: -380 },
|
||||||
|
{ name: "林尼-1", x: 4197, y: 4805 },
|
||||||
|
{ name: "夏沃蕾-1", x: 4356, y: 3707 },
|
||||||
|
{ name: "菲米尼-1", x: 4202, y: 3037, hasKeyMouse: true },
|
||||||
|
{ name: "夏洛蒂-1", x: 4618, y: 3518 },
|
||||||
|
{ name: "夏洛蒂-2", x: 4642, y: 3495 },
|
||||||
|
{ name: "夏洛蒂-3", x: 4443, y: 3538 },
|
||||||
|
{ name: "绮良良-1", x: 231, y: -672 },
|
||||||
|
{ name: "绮良良-2", x: 231, y: -672 },
|
||||||
|
{ name: "绮良良-3", x: -4473, y: -2655 },
|
||||||
|
{ name: "鹿野院平藏-1", x: -4459, y: -3141 },
|
||||||
|
{ name: "鹿野院平藏-2", x: -4467, y: -3127 },
|
||||||
|
{ name: "鹿野院平藏-3", x: -4417, y: -3037 },
|
||||||
|
{ name: "鹿野院平藏-4", x: -4232, y: -2999 },
|
||||||
|
{ name: "鹿野院平藏-5", x: -4232, y: -2999 },
|
||||||
|
{ name: "托马-1", x: -4399, y: -3130 },
|
||||||
|
{ name: "托马-2", x: -929, y: 2301, hasKeyMouse: true },
|
||||||
|
{ name: "梦见月瑞希-1", x: -4458, y: -3111, hasKeyMouse: true },
|
||||||
|
{ name: "梦见月瑞希-2", x: -4458, y: -3111, hasKeyMouse: true },
|
||||||
|
{ name: "八重神子-1", x: -4424, y: -2475 },
|
||||||
|
{ name: "那维莱特-1", x: 3600, y: 3804 },
|
||||||
|
{ name: "那维莱特-2", x: 4472, y: 3553 },
|
||||||
|
{ name: "那维莱特-3", x: 4797, y: 2660 },
|
||||||
|
{ name: "神里绫人-1", x: -4473, y: -3132 },
|
||||||
|
{ name: "早柚-1", x: -4327, y: -3141 },
|
||||||
|
];
|
||||||
|
|
||||||
|
// 检查进度并显示统计信息
|
||||||
|
const progressInfo = checkProgress(characterPositions);
|
||||||
|
|
||||||
|
log.info(`=== 对话进度统计 ===`);
|
||||||
|
log.info(`总角色数量: ${progressInfo.total}`);
|
||||||
|
log.info(`已完成: ${progressInfo.completed} (${progressInfo.completionRate}%)`);
|
||||||
|
log.info(`待完成: ${progressInfo.remaining}`);
|
||||||
|
|
||||||
|
// 处理重置设置
|
||||||
|
await handleResetSettings();
|
||||||
|
|
||||||
|
// 重新检查进度(可能已重置)
|
||||||
|
let currentProgress = checkProgress(characterPositions);
|
||||||
|
|
||||||
|
if (currentProgress.remaining === 0) {
|
||||||
|
log.info("所有角色都已完成对话!");
|
||||||
|
log.info("如需在其他账号使用,请在设置中启用自动重置选项");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (currentProgress.remaining > 0) {
|
||||||
|
log.info(`未完成的角色: ${currentProgress.remainingCharacters.join(", ")}`);
|
||||||
|
} // 前往七天神像
|
||||||
|
// await genshin.tpToStatueOfTheSeven();
|
||||||
|
let runCount = 0;
|
||||||
|
const maxRuns = parseInt(settings.maxRuns) || 50;
|
||||||
|
|
||||||
|
log.info(`最大运行次数: ${maxRuns}`);
|
||||||
|
showCurrentSettings();
|
||||||
|
|
||||||
|
let failCount = 0;
|
||||||
|
let lastProgress = -1;
|
||||||
|
|
||||||
|
let skipList = [];
|
||||||
|
|
||||||
|
while (runCount < maxRuns) {
|
||||||
|
log.info(`开始第${runCount + 1}次运行`);
|
||||||
|
|
||||||
|
// 在每次运行前检查是否还有未完成的角色
|
||||||
|
currentProgress = checkProgress(characterPositions);
|
||||||
|
|
||||||
|
if (currentProgress.remaining === lastProgress) {
|
||||||
|
log.warn("与上轮循环剩余数量一致,可能所有点位都不可用或运行失败");
|
||||||
|
failCount++;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
failCount = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
lastProgress = currentProgress.remaining;
|
||||||
|
|
||||||
|
if (failCount >= 4) {
|
||||||
|
log.error("连续五轮循环剩余数量没有变化,结束循环,请手动清理现在在地图上的旅闻后重新启动js")
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (currentProgress.remaining === 0) {
|
||||||
|
log.info("🎉 所有角色都已完成对话!任务结束。");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
log.info(`当前进度: ${currentProgress.completed}/${currentProgress.total} (剩余${currentProgress.remaining}个)`);
|
||||||
|
|
||||||
|
const detectedCharacters = await find();
|
||||||
|
let pathingName = null;
|
||||||
|
let hasKeyMouse = false;
|
||||||
|
let found = false;
|
||||||
|
let matchedNames = [];
|
||||||
|
for (const pos of characterPositions) {
|
||||||
|
//如果启用了跳过已完成角色的设置,则跳过已完成的角色
|
||||||
|
if (settings.skipCompletedCharacters && config[pos.name]) {
|
||||||
|
skipList.push(pos.name);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 使用 Set 去除重复项
|
||||||
|
skipList = [...new Set(skipList)];
|
||||||
|
|
||||||
|
if (isNearPosition(characterX, characterY, pos.x, pos.y)) {
|
||||||
|
matchedNames.push(pos.name);
|
||||||
|
/*
|
||||||
|
pathingName = pos.name;
|
||||||
|
hasKeyMouse = !!pos.hasKeyMouse;
|
||||||
|
found = true;
|
||||||
|
log.info(`找到角色,执行路线:${pathingName}`);
|
||||||
|
break;
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (matchedNames.length === 1) {
|
||||||
|
pathingName = matchedNames[0];
|
||||||
|
const pos = characterPositions.find(p => p.name === pathingName);
|
||||||
|
hasKeyMouse = !!(pos && pos.hasKeyMouse);
|
||||||
|
found = true;
|
||||||
|
log.info(`找到角色,执行路线:${pathingName}`);
|
||||||
|
} else if (matchedNames.length > 1) {
|
||||||
|
log.info(`找到多个路线:${matchedNames.join(", ")}`);
|
||||||
|
|
||||||
|
// 首先尝试通过检测到的角色名字进行匹配
|
||||||
|
let foundByName = false;
|
||||||
|
for (const name of matchedNames) {
|
||||||
|
if (skipList.includes(name)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
const avatarName = name.split("-")[0];
|
||||||
|
if (detectedCharacters.includes(avatarName)) {
|
||||||
|
pathingName = name;
|
||||||
|
const pos = characterPositions.find(p => p.name === pathingName);
|
||||||
|
hasKeyMouse = !!(pos && pos.hasKeyMouse);
|
||||||
|
found = true;
|
||||||
|
log.info(`通过角色名字匹配到路线:${pathingName} (角色:${avatarName})`);
|
||||||
|
foundByName = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 如果通过角色名字没有找到,则回退到原来的图像识别方法
|
||||||
|
if (!foundByName) {
|
||||||
|
for (const name of matchedNames) {
|
||||||
|
if (skipList.includes(name)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
const avatarName = name.split("-")[0];
|
||||||
|
const isChar = captureGameRegion().findMulti(RecognitionObject.TemplateMatch(file.ReadImageMatSync(`assets/avatars/${avatarName}.png`)));
|
||||||
|
if (isChar && isChar.count > 0) {
|
||||||
|
pathingName = name;
|
||||||
|
const pos = characterPositions.find(p => p.name === pathingName);
|
||||||
|
hasKeyMouse = !!(pos && pos.hasKeyMouse);
|
||||||
|
found = true;
|
||||||
|
log.info(`通过图像识别匹配到路线:${pathingName}`);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!found) {
|
||||||
|
currentProgress = checkProgress(characterPositions);
|
||||||
|
log.error("未找到角色,或者角色未被收录");
|
||||||
|
log.error(`当前位置可能没有未完成的角色对话`);
|
||||||
|
log.error(`剩余未完成角色: ${currentProgress.remainingCharacters.join(", ")}`);
|
||||||
|
log.info("继续寻找下一个角色...");
|
||||||
|
continue; // 继续下一次循环而不是直接返回
|
||||||
|
}
|
||||||
|
log.info(`正在前往 ${pathingName} 所在位置...`);
|
||||||
|
if (pathingName == "赛诺-3") { // 特殊处理
|
||||||
|
await genshin.moveMapTo(2871, -377, "须弥");
|
||||||
|
await genshin.setBigMapZoomLevel(1.0);
|
||||||
|
await genshin.tp(2871, -377);
|
||||||
|
}
|
||||||
|
await pathingScript.runFile(`assets/pathing/${pathingName}.json`)
|
||||||
|
keyPress("F");
|
||||||
|
if (!hasKeyMouse) {
|
||||||
|
log.info("开始对话...");
|
||||||
|
}
|
||||||
|
await sleep(3000);
|
||||||
|
await waitToMain(hasKeyMouse);
|
||||||
|
if (hasKeyMouse) {
|
||||||
|
log.info("执行对应键鼠脚本");
|
||||||
|
await keyMouseScript.runFile(`assets/keymouse/${pathingName}.json`)
|
||||||
|
keyPress("F");
|
||||||
|
log.info("开始对话...");
|
||||||
|
await sleep(3000);
|
||||||
|
await waitToMain(hasKeyMouse);
|
||||||
|
}
|
||||||
|
if (failed) {
|
||||||
|
log.info("本次运行结果不会被保存");
|
||||||
|
// 将 pathingName 加入 skipList
|
||||||
|
skipList.push(pathingName);
|
||||||
|
} else {
|
||||||
|
config[pathingName] = true;
|
||||||
|
await file.writeText("config.json", JSON.stringify(config, null, 4));
|
||||||
|
log.info(`对话完成,已保存本次运行结果`);
|
||||||
|
}
|
||||||
|
runCount++;
|
||||||
|
if (runCount < maxRuns) {
|
||||||
|
log.info(`第${runCount}次运行完成`);
|
||||||
|
// 根据设置决定进度更新间隔
|
||||||
|
const updateInterval = parseInt(settings.progressUpdateInterval) || 3;
|
||||||
|
if (runCount % updateInterval === 0) {
|
||||||
|
currentProgress = checkProgress(characterPositions);
|
||||||
|
log.info(`=== 进度更新 (第${runCount}次运行后) ===`);
|
||||||
|
log.info(`完成进度: ${currentProgress.completed}/${currentProgress.total} (${currentProgress.completionRate}%)`);
|
||||||
|
if (currentProgress.remaining > 0) {
|
||||||
|
log.info(`剩余角色: ${currentProgress.remainingCharacters.slice(0, 5).join(", ")}${currentProgress.remaining > 5 ? '...' : ''}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 最终统计
|
||||||
|
const finalProgress = checkProgress(characterPositions);
|
||||||
|
log.info(`=== 任务完成统计 ===`);
|
||||||
|
log.info(`总运行次数: ${runCount}`);
|
||||||
|
log.info(`最终完成进度: ${finalProgress.completed}/${finalProgress.total} (${finalProgress.completionRate}%)`);
|
||||||
|
|
||||||
|
if (finalProgress.remaining === 0) {
|
||||||
|
log.info("🎉 恭喜!所有角色对话已完成!");
|
||||||
|
} else {
|
||||||
|
log.info(`还有 ${finalProgress.remaining} 个角色未完成:`);
|
||||||
|
log.info(finalProgress.remainingCharacters.join(", "));
|
||||||
|
}
|
||||||
|
log.info(`程序结束`);
|
||||||
|
})();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 加载数据
|
||||||
|
* @returns {Promise<void>}
|
||||||
|
*/
|
||||||
|
async function loadData() {
|
||||||
|
try {
|
||||||
|
data = JSON.parse(await file.readText("data.json"));
|
||||||
|
config = JSON.parse(await file.readText("config.json"));
|
||||||
|
} catch (error) {
|
||||||
|
log.error(`加载配置文件失败: ${error.message}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 寻找角色
|
||||||
|
* @async
|
||||||
|
* @returns {Promise<string[]>} 找到的角色名字数组,如果没有找到则返回空数组
|
||||||
|
*/
|
||||||
|
async function find() {
|
||||||
|
log.info(`开始寻找角色...`);
|
||||||
|
const positions = data.mapPositions; // 读取data.json中的点位数据
|
||||||
|
for (let retryCount = 0; retryCount < positions.length; retryCount++) {
|
||||||
|
const position = positions[retryCount];
|
||||||
|
|
||||||
|
log.info(`第 ${retryCount + 1} 次尝试定位...`);
|
||||||
|
log.info(`移动到位置:(${position.x}, ${position.y}), ${position.name || '未命名位置'}`);
|
||||||
|
|
||||||
|
await genshin.moveMapTo(position.x, position.y, position.country);
|
||||||
|
try {
|
||||||
|
const detectedNames = await locate();
|
||||||
|
if (detectedNames && detectedNames.length > 0) {
|
||||||
|
return detectedNames; // 保持兼容性,设置全局变量
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
log.error("寻找所有角色可能存在的位置都没有找到角色");
|
||||||
|
throw new Error("在所有可能的位置都没有找到角色,结束任务,请手动清理出现在地图上的旅闻后重新启动js");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 定位角色并获取坐标
|
||||||
|
* @async
|
||||||
|
* @returns {Promise<string[]>} 检测到的角色名字数组
|
||||||
|
*/
|
||||||
|
async function locate() {
|
||||||
|
await sleep(500); // 确保画面稳定
|
||||||
|
await genshin.setBigMapZoomLevel((data && typeof data.zoom === "number") ? data.zoom : 6.0);
|
||||||
|
|
||||||
|
let character = captureGameRegion().findMulti(RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/icon/三个点.png")));
|
||||||
|
|
||||||
|
if (character && character.count > 0) {
|
||||||
|
avatar = character[0];
|
||||||
|
|
||||||
|
const center = genshin.getPositionFromBigMap();
|
||||||
|
const mapZoomLevel = genshin.getBigMapZoomLevel();
|
||||||
|
const mapScaleFactor = 2.361;
|
||||||
|
|
||||||
|
characterX = (960 - avatar.x - 13) * mapZoomLevel / mapScaleFactor + center.x + 20;
|
||||||
|
characterY = (540 - avatar.y - 13) * mapZoomLevel / mapScaleFactor + center.y + 20;
|
||||||
|
log.info(`找到角色的大致坐标:(${characterX}, ${characterY})`);
|
||||||
|
|
||||||
|
await sleep(200);
|
||||||
|
click(avatar.x + 20, avatar.y + 20);
|
||||||
|
await sleep(2000);
|
||||||
|
let resList = captureGameRegion().findMulti(RecognitionObject.ocrThis);
|
||||||
|
|
||||||
|
// 识别text中的角色名字
|
||||||
|
const characterNames = [
|
||||||
|
"柯莱", "迪希雅", "赛诺", "林尼", "夏沃蕾", "菲米尼", "夏洛蒂",
|
||||||
|
"绮良良", "鹿野院平藏", "托马", "梦见月瑞希", "八重神子",
|
||||||
|
"那维莱特", "神里绫人", "早柚"
|
||||||
|
];
|
||||||
|
let foundNames = [];
|
||||||
|
for (let i = 0; i < resList.count; i++) {
|
||||||
|
let res = resList[i];
|
||||||
|
for (let j = 0; j < characterNames.length; j++) {
|
||||||
|
if (res.text.includes(characterNames[j])) {
|
||||||
|
log.info("识别到角色:{} ({x},{y})", characterNames[j]);
|
||||||
|
foundNames.push(characterNames[j]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
log.info(`识别到的角色名字:${foundNames.length > 0 ? foundNames.join(", ") : "未知"}`);
|
||||||
|
await sleep(200);
|
||||||
|
keyPress("VK_ESCAPE"); // 关闭菜单
|
||||||
|
await sleep(1000); // 等待菜单关闭
|
||||||
|
return foundNames;
|
||||||
|
} else {
|
||||||
|
log.warn("未找到角色");
|
||||||
|
throw new Error("未找到角色,当前位置没有角色");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检查是否存在派蒙菜单图标,等待游戏返回主菜单
|
||||||
|
*
|
||||||
|
* @param {boolean} hasKeyMouse - 是否需要执行键鼠操作
|
||||||
|
* @returns {Promise<boolean>} - 如果检测到主菜单,则返回 true,否则在超时时返回 false。
|
||||||
|
*/
|
||||||
|
async function waitToMain(hasKeyMouse = false) {
|
||||||
|
log.info("等待返回主界面...");
|
||||||
|
const paimonMenuRo = RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/icon/paimon_menu.png"), 0, 0, genshin.width / 3.0, genshin.width / 5.0);
|
||||||
|
const maxRetries = 180; // 设置最大重试次数以防止无限循环
|
||||||
|
let retries = 0;
|
||||||
|
let enteredLoop = false;
|
||||||
|
while (captureGameRegion().Find(paimonMenuRo).isEmpty()) {
|
||||||
|
enteredLoop = true;
|
||||||
|
if (retries >= maxRetries) {
|
||||||
|
log.error("返回主界面超时");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
await sleep(1000);
|
||||||
|
retries++;
|
||||||
|
}
|
||||||
|
if (!enteredLoop && !hasKeyMouse) {
|
||||||
|
log.error("进入对话失败");
|
||||||
|
failed = true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
failed = false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 判断坐标是否在指定位置附近(误差范围内)
|
||||||
|
* @param {number} x - 当前X坐标
|
||||||
|
* @param {number} y - 当前Y坐标
|
||||||
|
* @param {number} targetX - 目标X坐标
|
||||||
|
* @param {number} targetY - 目标Y坐标
|
||||||
|
* @returns {boolean} 是否在指定范围内
|
||||||
|
*/
|
||||||
|
function isNearPosition(x, y, targetX, targetY) {
|
||||||
|
// 使用配置中的阈值或默认值100
|
||||||
|
const errorThreshold = 150;
|
||||||
|
return Math.abs(x - targetX) <= errorThreshold && Math.abs(y - targetY) <= errorThreshold;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检查对话进度并返回统计信息
|
||||||
|
* @param {Object[]} characterPositions - 角色点位信息数组
|
||||||
|
* @returns {Object} 包含进度统计的对象
|
||||||
|
*/
|
||||||
|
function checkProgress(characterPositions) {
|
||||||
|
const total = characterPositions.length;
|
||||||
|
let completed = 0;
|
||||||
|
const remainingCharacters = [];
|
||||||
|
const completedCharacters = [];
|
||||||
|
|
||||||
|
for (const pos of characterPositions) {
|
||||||
|
if (config[pos.name]) {
|
||||||
|
completed++;
|
||||||
|
completedCharacters.push(pos.name);
|
||||||
|
} else {
|
||||||
|
remainingCharacters.push(pos.name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const remaining = total - completed;
|
||||||
|
const completionRate = total > 0 ? Math.round((completed / total) * 100) : 0;
|
||||||
|
|
||||||
|
return {
|
||||||
|
total,
|
||||||
|
completed,
|
||||||
|
remaining,
|
||||||
|
completionRate,
|
||||||
|
remainingCharacters,
|
||||||
|
completedCharacters
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 重置所有对话配置
|
||||||
|
* @returns {Promise<void>}
|
||||||
|
*/
|
||||||
|
async function resetAllProgress() {
|
||||||
|
log.info("重置所有对话进度...");
|
||||||
|
config = {};
|
||||||
|
await file.writeText("config.json", JSON.stringify(config, null, 4));
|
||||||
|
log.info("✅ 所有对话进度已重置,将重新开始所有角色的对话");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检查是否有未完成的角色,如果没有则提前结束
|
||||||
|
* @param {Object[]} characterPositions - 角色点位信息数组
|
||||||
|
* @returns {boolean} 是否还有未完成的角色
|
||||||
|
*/
|
||||||
|
function hasRemainingCharacters(characterPositions) {
|
||||||
|
for (const pos of characterPositions) {
|
||||||
|
if (!config[pos.name]) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// === 设置管理相关函数 (BetterGI 自动处理设置) ===
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 显示当前设置
|
||||||
|
*/
|
||||||
|
function showCurrentSettings() {
|
||||||
|
log.info("=== 当前设置 ===");
|
||||||
|
log.info(`启动时重置进度: ${settings.resetOnStart ? "✅ 启用" : "❌ 禁用"}`);
|
||||||
|
log.info(`进度更新间隔: ${settings.progressUpdateInterval} 次`);
|
||||||
|
log.info(`最大运行次数: ${settings.maxRuns}`);
|
||||||
|
log.info(`跳过已完成角色: ${settings.skipCompletedCharacters ? "✅ 启用" : "❌ 禁用"}`);
|
||||||
|
log.info("===============");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理重置相关设置
|
||||||
|
* @param {Object[]} characterPositions - 角色点位信息数组
|
||||||
|
* @returns {Promise<boolean>} 是否继续执行程序
|
||||||
|
*/
|
||||||
|
async function handleResetSettings() {
|
||||||
|
// 启动时重置
|
||||||
|
if (settings.resetOnStart) {
|
||||||
|
log.info("⚠️ 检测到启动时重置设置已启用");
|
||||||
|
log.info("将在 5 秒后重置所有进度,如需取消请立即停止程序");
|
||||||
|
await sleep(5000);
|
||||||
|
|
||||||
|
await resetAllProgress();
|
||||||
|
log.info("🔄 已根据设置重置所有进度");
|
||||||
|
}
|
||||||
|
}
|
||||||
21
repo/js/TravelersTales/manifest.json
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"manifest_version": 1,
|
||||||
|
"name": "游逸旅闻",
|
||||||
|
"version": "0.1.3",
|
||||||
|
"bgi_version": "0.45.1",
|
||||||
|
"description": "自动游逸旅闻",
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "ddaodan",
|
||||||
|
"link": "https://github.com/ddaodan"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "秋云"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "mno"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"settings_ui": "settings.json",
|
||||||
|
"main": "main.js"
|
||||||
|
}
|
||||||
33
repo/js/TravelersTales/settings.json
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"name": "resetOnStart",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "启动时重置所有进度",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "progressUpdateInterval",
|
||||||
|
"type": "select",
|
||||||
|
"label": "进度更新间隔(次数)",
|
||||||
|
"options": [
|
||||||
|
"1",
|
||||||
|
"3",
|
||||||
|
"5",
|
||||||
|
"10",
|
||||||
|
"20"
|
||||||
|
],
|
||||||
|
"default": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "maxRuns",
|
||||||
|
"type": "input-text",
|
||||||
|
"label": "最大运行次数",
|
||||||
|
"default": "50"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "skipCompletedCharacters",
|
||||||
|
"type": "checkbox",
|
||||||
|
"label": "跳过已完成的角色",
|
||||||
|
"default": true
|
||||||
|
}
|
||||||
|
]
|
||||||