Compare commits
No commits in common. "master" and "v4.3" have entirely different histories.
@ -1,5 +1,5 @@
|
|||||||
<Project>
|
<Project>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Version>4.4</Version>
|
<Version>4.3</Version>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
2
LLib
2
LLib
@ -1 +1 @@
|
|||||||
Subproject commit 783fea977a2524dd63e717367fc026c52efe6c23
|
Subproject commit e4bbc05ede6f6f01e7028b24614ed8cb333e909c
|
@ -1,7 +1,6 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||||
"Author": "plogon_enjoyer",
|
"Author": "plogon_enjoyer",
|
||||||
"Disabled": true,
|
|
||||||
"QuestSequence": [
|
"QuestSequence": [
|
||||||
{
|
{
|
||||||
"Sequence": 0,
|
"Sequence": 0,
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||||
"Author": "plogon_enjoyer",
|
"Author": "plogon_enjoyer",
|
||||||
"Disabled": true,
|
|
||||||
"Comment": "WIP too many cases",
|
|
||||||
"QuestSequence": [
|
"QuestSequence": [
|
||||||
{
|
{
|
||||||
"Sequence": 0,
|
"Sequence": 0,
|
||||||
@ -19,118 +17,9 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": -175.15483,
|
|
||||||
"Y": 40,
|
|
||||||
"Z": 159.05237
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "WalkTo",
|
|
||||||
"Fly": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003019,
|
|
||||||
"Position": {
|
|
||||||
"X": -88.059875,
|
|
||||||
"Y": 43.503418,
|
|
||||||
"Z": 149.00427
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, [4], null, null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003022,
|
|
||||||
"Position": {
|
|
||||||
"X": -170.85535,
|
|
||||||
"Y": 39.993896,
|
|
||||||
"Z": 135.45422
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, [5], null, null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003017,
|
|
||||||
"Position": {
|
|
||||||
"X": -97.48993,
|
|
||||||
"Y": 45.792236,
|
|
||||||
"Z": 197.28381
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, [20], null, null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003020,
|
|
||||||
"Position": {
|
|
||||||
"X": -77.836365,
|
|
||||||
"Y": 43.4729,
|
|
||||||
"Z": 155.50464
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, [21], null, null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003015,
|
|
||||||
"Position": {
|
|
||||||
"X": 133.62317,
|
|
||||||
"Y": 13.961914,
|
|
||||||
"Z": 152.26978
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, [36], null, null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003018,
|
|
||||||
"Position": {
|
|
||||||
"X": -100.572266,
|
|
||||||
"Y": 45.76172,
|
|
||||||
"Z": 211.04749
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, [37], null, null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003016,
|
|
||||||
"Position": {
|
|
||||||
"X": 185.19873,
|
|
||||||
"Y": 13.992493,
|
|
||||||
"Z": 231.89136
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, [52, 53], null, null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 30.256956,
|
|
||||||
"Y": 38.639523,
|
|
||||||
"Z": 145.03891
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "WalkTo",
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"DataId": 1005551,
|
"DataId": 1005551,
|
||||||
"Position": {
|
"Position": {
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||||
"Author": "plogon_enjoyer",
|
"Author": "plogon_enjoyer",
|
||||||
"Disabled": true,
|
|
||||||
"QuestSequence": [
|
"QuestSequence": [
|
||||||
{
|
{
|
||||||
"Sequence": 0,
|
"Sequence": 0,
|
||||||
|
@ -1,213 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "plogon_enjoyer",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1005551,
|
|
||||||
"Position": {
|
|
||||||
"X": 98.924194,
|
|
||||||
"Y": 15.29447,
|
|
||||||
"Z": -349.4469
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1005745,
|
|
||||||
"Position": {
|
|
||||||
"X": 22.720581,
|
|
||||||
"Y": 4.240738,
|
|
||||||
"Z": -443.07623
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": -126.48953,
|
|
||||||
"Y": 27.57419,
|
|
||||||
"Z": 138.61473
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "WalkTo",
|
|
||||||
"Fly": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003048,
|
|
||||||
"Position": {
|
|
||||||
"X": -136.85822,
|
|
||||||
"Y": 18.753235,
|
|
||||||
"Z": 116.50256
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [1, 2], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003049,
|
|
||||||
"Position": {
|
|
||||||
"X": -121.78229,
|
|
||||||
"Y": 28.732666,
|
|
||||||
"Z": 140.33716
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [3], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003050,
|
|
||||||
"Position": {
|
|
||||||
"X": -91.96619,
|
|
||||||
"Y": 43.07617,
|
|
||||||
"Z": 156.84741
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [4], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003051,
|
|
||||||
"Position": {
|
|
||||||
"X": -55.40558,
|
|
||||||
"Y": 42.526855,
|
|
||||||
"Z": 192.18738
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [1, 3, 4], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003052,
|
|
||||||
"Position": {
|
|
||||||
"X": 6.668152,
|
|
||||||
"Y": 36.9115,
|
|
||||||
"Z": 207.01917
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [2], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003053,
|
|
||||||
"Position": {
|
|
||||||
"X": 73.31958,
|
|
||||||
"Y": 31.784546,
|
|
||||||
"Z": 153.76514
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [1], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003054,
|
|
||||||
"Position": {
|
|
||||||
"X": 79.42322,
|
|
||||||
"Y": 25.802979,
|
|
||||||
"Z": 208.66711
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [2, 4], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003055,
|
|
||||||
"Position": {
|
|
||||||
"X": 106.889404,
|
|
||||||
"Y": 14.602844,
|
|
||||||
"Z": 147.53943
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"RequiredQuestVariables": [null, null, [3], null, null, null],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 135.42383,
|
|
||||||
"Y": 8.102478,
|
|
||||||
"Z": 178.36267
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Combat",
|
|
||||||
"EnemySpawnType": "AutoOnEnterArea",
|
|
||||||
"KillEnemyDataIds": [2456],
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2003056,
|
|
||||||
"Position": {
|
|
||||||
"X": 135.42383,
|
|
||||||
"Y": 8.102478,
|
|
||||||
"Z": 178.36267
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 3,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": -63.849556,
|
|
||||||
"Y": 26.409807,
|
|
||||||
"Z": -383.9894
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "WalkTo",
|
|
||||||
"AetheryteShortcut": "Southern Thanalan - Little Ala Mhigo",
|
|
||||||
"Mount": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1005745,
|
|
||||||
"Position": {
|
|
||||||
"X": 22.720581,
|
|
||||||
"Y": 4.240738,
|
|
||||||
"Z": -443.07623
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1005551,
|
|
||||||
"Position": {
|
|
||||||
"X": 98.924194,
|
|
||||||
"Y": 15.29447,
|
|
||||||
"Z": -349.4469
|
|
||||||
},
|
|
||||||
"TerritoryId": 146,
|
|
||||||
"InteractionType": "CompleteQuest",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,37 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "liza",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1011030,
|
|
||||||
"Position": {
|
|
||||||
"X": 7.522644,
|
|
||||||
"Y": -1.7667189E-06,
|
|
||||||
"Z": -68.589294
|
|
||||||
},
|
|
||||||
"TerritoryId": 388,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1010472,
|
|
||||||
"Position": {
|
|
||||||
"X": -53.26935,
|
|
||||||
"Y": 0.3093315,
|
|
||||||
"Z": 69.41321
|
|
||||||
},
|
|
||||||
"TerritoryId": 148,
|
|
||||||
"InteractionType": "CompleteQuest",
|
|
||||||
"AetheryteShortcut": "Central Shroud - Bentbranch Meadows"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -22,9 +22,9 @@
|
|||||||
"Steps": [
|
"Steps": [
|
||||||
{
|
{
|
||||||
"Position": {
|
"Position": {
|
||||||
"X": 318.06195,
|
"X": 291.9449,
|
||||||
"Y": -83.027016,
|
"Y": -62.62814,
|
||||||
"Z": -226.5931
|
"Z": -214.1033
|
||||||
},
|
},
|
||||||
"TerritoryId": 613,
|
"TerritoryId": 613,
|
||||||
"InteractionType": "WalkTo",
|
"InteractionType": "WalkTo",
|
||||||
@ -153,6 +153,16 @@
|
|||||||
{
|
{
|
||||||
"Sequence": 2,
|
"Sequence": 2,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 804.21405,
|
||||||
|
"Y": 1.4000988,
|
||||||
|
"Z": 720.92487
|
||||||
|
},
|
||||||
|
"TerritoryId": 613,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"Fly": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"DataId": 1024460,
|
"DataId": 1024460,
|
||||||
"Position": {
|
"Position": {
|
||||||
@ -162,11 +172,6 @@
|
|||||||
},
|
},
|
||||||
"TerritoryId": 613,
|
"TerritoryId": 613,
|
||||||
"InteractionType": "Interact",
|
"InteractionType": "Interact",
|
||||||
"AetheryteShortcut": "Kugane",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Kugane] Aetheryte Plaza",
|
|
||||||
"[Kugane] The Ruby Price"
|
|
||||||
],
|
|
||||||
"Fly": true
|
"Fly": true
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@ -182,8 +187,8 @@
|
|||||||
},
|
},
|
||||||
"TerritoryId": 613,
|
"TerritoryId": 613,
|
||||||
"InteractionType": "WalkTo",
|
"InteractionType": "WalkTo",
|
||||||
"AetheryteShortcut": "Ruby Sea - Tamamizu",
|
"Fly": true,
|
||||||
"Fly": true
|
"AetheryteShortcut": "Ruby Sea - Tamamizu"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"DataId": 1024217,
|
"DataId": 1024217,
|
||||||
|
@ -28,7 +28,6 @@
|
|||||||
},
|
},
|
||||||
"TerritoryId": 613,
|
"TerritoryId": 613,
|
||||||
"InteractionType": "WalkTo",
|
"InteractionType": "WalkTo",
|
||||||
"RestartNavigationIfCancelled": false,
|
|
||||||
"Fly": true
|
"Fly": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -39,7 +38,6 @@
|
|||||||
},
|
},
|
||||||
"TerritoryId": 613,
|
"TerritoryId": 613,
|
||||||
"InteractionType": "WalkTo",
|
"InteractionType": "WalkTo",
|
||||||
"RestartNavigationIfCancelled": false,
|
|
||||||
"Fly": true
|
"Fly": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -60,9 +58,9 @@
|
|||||||
"Steps": [
|
"Steps": [
|
||||||
{
|
{
|
||||||
"Position": {
|
"Position": {
|
||||||
"X": 367.17773,
|
"X": 368.39856,
|
||||||
"Y": -119.94679,
|
"Y": -116.624695,
|
||||||
"Z": -292.3781
|
"Z": -291.34058
|
||||||
},
|
},
|
||||||
"TerritoryId": 613,
|
"TerritoryId": 613,
|
||||||
"InteractionType": "UseItem",
|
"InteractionType": "UseItem",
|
||||||
|
@ -1,103 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "plogon_enjoyer",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1032659,
|
|
||||||
"Position": {
|
|
||||||
"X": 802.79236,
|
|
||||||
"Y": -45.91779,
|
|
||||||
"Z": -218.58557
|
|
||||||
},
|
|
||||||
"TerritoryId": 817,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1027716,
|
|
||||||
"Position": {
|
|
||||||
"X": 494.9873,
|
|
||||||
"Y": -6.555339,
|
|
||||||
"Z": -224.93329
|
|
||||||
},
|
|
||||||
"TerritoryId": 817,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AetheryteShortcut": "Rak'tika - Fanow",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1032732,
|
|
||||||
"Position": {
|
|
||||||
"X": -26.93219,
|
|
||||||
"Y": -24.638563,
|
|
||||||
"Z": 319.35608
|
|
||||||
},
|
|
||||||
"TerritoryId": 817,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AetheryteShortcut": "Rak'tika - Slitherbough",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 3,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1032750,
|
|
||||||
"Position": {
|
|
||||||
"X": -523.827,
|
|
||||||
"Y": 0.143766,
|
|
||||||
"Z": 227.55774
|
|
||||||
},
|
|
||||||
"TerritoryId": 817,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 4,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1032750,
|
|
||||||
"Position": {
|
|
||||||
"X": -523.827,
|
|
||||||
"Y": 0.143766,
|
|
||||||
"Z": 227.55774
|
|
||||||
},
|
|
||||||
"TerritoryId": 817,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1032660,
|
|
||||||
"Position": {
|
|
||||||
"X": 804.4098,
|
|
||||||
"Y": -45.9255,
|
|
||||||
"Z": -216.41876
|
|
||||||
},
|
|
||||||
"TerritoryId": 817,
|
|
||||||
"InteractionType": "CompleteQuest",
|
|
||||||
"AetheryteShortcut": "Rak'tika - Fanow",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,117 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "plogon_enjoyer",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1027234,
|
|
||||||
"Position": {
|
|
||||||
"X": 10.2387085,
|
|
||||||
"Y": 20.185999,
|
|
||||||
"Z": -138.2315
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028326,
|
|
||||||
"Position": {
|
|
||||||
"X": 10.940674,
|
|
||||||
"Y": 20.186,
|
|
||||||
"Z": -142.53455
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"DialogueChoices": [
|
|
||||||
{
|
|
||||||
"Prompt": "TEXT_LUCKLA203_03232_Q1_000_000",
|
|
||||||
"Type": "List",
|
|
||||||
"Answer": "TEXT_LUCKLA203_03232_A1_000_001"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Craft",
|
|
||||||
"ItemId": 27247,
|
|
||||||
"ItemCount": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1027234,
|
|
||||||
"Position": {
|
|
||||||
"X": 10.2387085,
|
|
||||||
"Y": 20.185999,
|
|
||||||
"Z": -138.2315
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 3,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028438,
|
|
||||||
"Position": {
|
|
||||||
"X": -55.832825,
|
|
||||||
"Y": 3.9998174,
|
|
||||||
"Z": 198.6571
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Crystarium] The Crystalline Mean",
|
|
||||||
"[Crystarium] Musica Universalis Markets"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 4,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028438,
|
|
||||||
"Position": {
|
|
||||||
"X": -55.832825,
|
|
||||||
"Y": 3.9998174,
|
|
||||||
"Z": 198.6571
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1027234,
|
|
||||||
"Position": {
|
|
||||||
"X": 10.2387085,
|
|
||||||
"Y": 20.185999,
|
|
||||||
"Z": -138.2315
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "CompleteQuest",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Crystarium] Musica Universalis Markets",
|
|
||||||
"[Crystarium] The Crystalline Mean"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,133 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "plogon_enjoyer",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1027235,
|
|
||||||
"Position": {
|
|
||||||
"X": -19.516357,
|
|
||||||
"Y": 20.186,
|
|
||||||
"Z": -130.1748
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028484,
|
|
||||||
"Position": {
|
|
||||||
"X": -129.35083,
|
|
||||||
"Y": 0,
|
|
||||||
"Z": -62.912964
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Crystarium] The Crystalline Mean",
|
|
||||||
"[Crystarium] Temenos Rookery"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028484,
|
|
||||||
"Position": {
|
|
||||||
"X": -129.35083,
|
|
||||||
"Y": 0,
|
|
||||||
"Z": -62.912964
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Say",
|
|
||||||
"ChatMessage": {
|
|
||||||
"Key": "TEXT_LUCKLA302_03234_SAYTODO_000_013"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 3,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Craft",
|
|
||||||
"ItemId": 27253,
|
|
||||||
"ItemCount": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1030659,
|
|
||||||
"Position": {
|
|
||||||
"X": -131.15137,
|
|
||||||
"Y": 0,
|
|
||||||
"Z": -65.53754
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 4,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028485,
|
|
||||||
"Position": {
|
|
||||||
"X": -492.3934,
|
|
||||||
"Y": 69.70277,
|
|
||||||
"Z": 570.18384
|
|
||||||
},
|
|
||||||
"TerritoryId": 816,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AetheryteShortcut": "Il Mheg - Lydha Lran",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 5,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028487,
|
|
||||||
"Position": {
|
|
||||||
"X": 337.84998,
|
|
||||||
"Y": 87.30014,
|
|
||||||
"Z": -710.65845
|
|
||||||
},
|
|
||||||
"TerritoryId": 816,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AetheryteShortcut": "Il Mheg - Wolekdorf",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1027235,
|
|
||||||
"Position": {
|
|
||||||
"X": -19.516357,
|
|
||||||
"Y": 20.186,
|
|
||||||
"Z": -130.1748
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "CompleteQuest",
|
|
||||||
"AetheryteShortcut": "Crystarium",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Crystarium] Aetheryte Plaza",
|
|
||||||
"[Crystarium] The Crystalline Mean"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,131 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "plogon_enjoyer",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1027235,
|
|
||||||
"Position": {
|
|
||||||
"X": -19.516357,
|
|
||||||
"Y": 20.186,
|
|
||||||
"Z": -130.1748
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1030659,
|
|
||||||
"Position": {
|
|
||||||
"X": -131.15137,
|
|
||||||
"Y": 0,
|
|
||||||
"Z": -65.53754
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Crystarium] The Crystalline Mean",
|
|
||||||
"[Crystarium] Temenos Rookery"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Craft",
|
|
||||||
"ItemId": 27255,
|
|
||||||
"ItemCount": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1030659,
|
|
||||||
"Position": {
|
|
||||||
"X": -131.15137,
|
|
||||||
"Y": 0,
|
|
||||||
"Z": -65.53754
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 3,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028489,
|
|
||||||
"Position": {
|
|
||||||
"X": 355.42847,
|
|
||||||
"Y": 3.8289368,
|
|
||||||
"Z": 224.17017
|
|
||||||
},
|
|
||||||
"TerritoryId": 813,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AetheryteShortcut": "Lakeland - Fort Jobb",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 4,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1028491,
|
|
||||||
"Position": {
|
|
||||||
"X": 29.251465,
|
|
||||||
"Y": 36.20521,
|
|
||||||
"Z": -207.38544
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 5,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1030659,
|
|
||||||
"Position": {
|
|
||||||
"X": -131.15137,
|
|
||||||
"Y": 0,
|
|
||||||
"Z": -65.53754
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Crystarium] The Amaro Launch",
|
|
||||||
"[Crystarium] Temenos Rookery"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1027235,
|
|
||||||
"Position": {
|
|
||||||
"X": -19.516357,
|
|
||||||
"Y": 20.186,
|
|
||||||
"Z": -130.1748
|
|
||||||
},
|
|
||||||
"TerritoryId": 819,
|
|
||||||
"InteractionType": "CompleteQuest",
|
|
||||||
"AethernetShortcut": [
|
|
||||||
"[Crystarium] Temenos Rookery",
|
|
||||||
"[Crystarium] The Crystalline Mean"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,123 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "liza",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1044156,
|
|
||||||
"Position": {
|
|
||||||
"X": -276.3562,
|
|
||||||
"Y": 39.993896,
|
|
||||||
"Z": 224.26172
|
|
||||||
},
|
|
||||||
"TerritoryId": 1055,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 2013553,
|
|
||||||
"Position": {
|
|
||||||
"X": -389.82227,
|
|
||||||
"Y": 3.250122,
|
|
||||||
"Z": 238.02539
|
|
||||||
},
|
|
||||||
"TerritoryId": 1055,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1046221,
|
|
||||||
"Position": {
|
|
||||||
"X": -303.12048,
|
|
||||||
"Y": 39.993896,
|
|
||||||
"Z": 244.80042
|
|
||||||
},
|
|
||||||
"TerritoryId": 1055,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 3,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1046279,
|
|
||||||
"Position": {
|
|
||||||
"X": -147.17328,
|
|
||||||
"Y": 48.330666,
|
|
||||||
"Z": 164.38538
|
|
||||||
},
|
|
||||||
"TerritoryId": 1055,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"CompletionQuestVariablesFlags": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
128
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1046281,
|
|
||||||
"Position": {
|
|
||||||
"X": -118.21167,
|
|
||||||
"Y": 91.550545,
|
|
||||||
"Z": 398.79456
|
|
||||||
},
|
|
||||||
"TerritoryId": 1055,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"CompletionQuestVariablesFlags": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
64
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 4,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1046221,
|
|
||||||
"Position": {
|
|
||||||
"X": -303.12048,
|
|
||||||
"Y": 39.993896,
|
|
||||||
"Z": 244.80042
|
|
||||||
},
|
|
||||||
"TerritoryId": 1055,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1046284,
|
|
||||||
"Position": {
|
|
||||||
"X": -402.2431,
|
|
||||||
"Y": 1.7196094,
|
|
||||||
"Z": 226.4591
|
|
||||||
},
|
|
||||||
"StopDistance": 5,
|
|
||||||
"TerritoryId": 1055,
|
|
||||||
"InteractionType": "CompleteQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -76,42 +76,6 @@
|
|||||||
{
|
{
|
||||||
"Sequence": 3,
|
"Sequence": 3,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 548.1944,
|
|
||||||
"Y": 6.15866,
|
|
||||||
"Z": -196.99664
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "WalkTo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 610.0975,
|
|
||||||
"Y": 7.8043165,
|
|
||||||
"Z": -228.70596
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "WalkTo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 680.4834,
|
|
||||||
"Y": 10.053757,
|
|
||||||
"Z": -263.73697
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "WalkTo"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 743.98376,
|
|
||||||
"Y": 9.793373,
|
|
||||||
"Z": -263.45914
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "WalkTo"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"DataId": 1052306,
|
"DataId": 1052306,
|
||||||
"Position": {
|
"Position": {
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||||
"Author": "liza",
|
"Author": "liza",
|
||||||
|
"Disabled": true,
|
||||||
"QuestSequence": [
|
"QuestSequence": [
|
||||||
{
|
{
|
||||||
"Sequence": 0,
|
"Sequence": 0,
|
||||||
@ -27,62 +28,6 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 746.76465,
|
|
||||||
"Y": 15.431515,
|
|
||||||
"Z": -201.92921
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "WalkTo",
|
|
||||||
"AetheryteShortcut": "Kozama'uka - Dock Poga",
|
|
||||||
"SkipConditions": {
|
|
||||||
"AetheryteShortcutIf": {
|
|
||||||
"NearPosition": {
|
|
||||||
"Position": {
|
|
||||||
"X": 770.7179,
|
|
||||||
"Y": 12.84657,
|
|
||||||
"Z": -263.99634
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"MaximumDistance": 300
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1051741,
|
|
||||||
"Position": {
|
|
||||||
"X": 744.19763,
|
|
||||||
"Y": 15.431515,
|
|
||||||
"Z": -199.17603
|
|
||||||
},
|
|
||||||
"StopDistance": 7,
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1052341,
|
|
||||||
"Position": {
|
|
||||||
"X": 239.49023,
|
|
||||||
"Y": 111.689354,
|
|
||||||
"Z": 699.3667
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AetheryteShortcut": "Kozama'uka - Many Fires",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||||
"Author": "liza",
|
"Author": "liza",
|
||||||
|
"Disabled": true,
|
||||||
"QuestSequence": [
|
"QuestSequence": [
|
||||||
{
|
{
|
||||||
"Sequence": 0,
|
"Sequence": 0,
|
||||||
@ -27,109 +28,6 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 2014508,
|
|
||||||
"Position": {
|
|
||||||
"X": 566.1554,
|
|
||||||
"Y": 123.552246,
|
|
||||||
"Z": 700.4043
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Combat",
|
|
||||||
"EnemySpawnType": "AfterInteraction",
|
|
||||||
"KillEnemyDataIds": [
|
|
||||||
18177
|
|
||||||
],
|
|
||||||
"AetheryteShortcut": "Kozama'uka - Many Fires",
|
|
||||||
"Fly": true,
|
|
||||||
"RequiredQuestVariables": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"High": 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2014509,
|
|
||||||
"Position": {
|
|
||||||
"X": 557.94604,
|
|
||||||
"Y": 124.65088,
|
|
||||||
"Z": 778.56104
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Combat",
|
|
||||||
"EnemySpawnType": "AfterInteraction",
|
|
||||||
"KillEnemyDataIds": [
|
|
||||||
18177
|
|
||||||
],
|
|
||||||
"Fly": true,
|
|
||||||
"RequiredQuestVariables": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"High": 2
|
|
||||||
}
|
|
||||||
],
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2014507,
|
|
||||||
"Position": {
|
|
||||||
"X": 721.8584,
|
|
||||||
"Y": 123.09448,
|
|
||||||
"Z": 729.9762
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Combat",
|
|
||||||
"EnemySpawnType": "AfterInteraction",
|
|
||||||
"KillEnemyDataIds": [
|
|
||||||
18177
|
|
||||||
],
|
|
||||||
"Fly": true,
|
|
||||||
"RequiredQuestVariables": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"High": 3
|
|
||||||
}
|
|
||||||
],
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1052443,
|
|
||||||
"Position": {
|
|
||||||
"X": 641.8097,
|
|
||||||
"Y": 122.10785,
|
|
||||||
"Z": 730.70874
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
||||||
"Author": "liza",
|
"Author": "liza",
|
||||||
|
"Disabled": true,
|
||||||
"QuestSequence": [
|
"QuestSequence": [
|
||||||
{
|
{
|
||||||
"Sequence": 0,
|
"Sequence": 0,
|
||||||
@ -27,96 +28,6 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 2014511,
|
|
||||||
"Position": {
|
|
||||||
"X": 226.85583,
|
|
||||||
"Y": 2.9450073,
|
|
||||||
"Z": -199.6643
|
|
||||||
},
|
|
||||||
"StopDistance": 1,
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true,
|
|
||||||
"CompletionQuestVariablesFlags": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
64
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2014510,
|
|
||||||
"Position": {
|
|
||||||
"X": 218.1582,
|
|
||||||
"Y": 2.2124634,
|
|
||||||
"Z": -184.92413
|
|
||||||
},
|
|
||||||
"StopDistance": 1,
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"CompletionQuestVariablesFlags": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
128
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 2014512,
|
|
||||||
"Position": {
|
|
||||||
"X": 61.53955,
|
|
||||||
"Y": 8.102478,
|
|
||||||
"Z": -230.79272
|
|
||||||
},
|
|
||||||
"StopDistance": 1,
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true,
|
|
||||||
"CompletionQuestVariablesFlags": [
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
32
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 746.76465,
|
|
||||||
"Y": 15.431515,
|
|
||||||
"Z": -201.92921
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "WalkTo",
|
|
||||||
"AetheryteShortcut": "Kozama'uka - Dock Poga"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1051741,
|
|
||||||
"Position": {
|
|
||||||
"X": 744.19763,
|
|
||||||
"Y": 15.431515,
|
|
||||||
"Z": -199.17603
|
|
||||||
},
|
|
||||||
"StopDistance": 7,
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
@ -128,21 +39,7 @@
|
|||||||
},
|
},
|
||||||
"TerritoryId": 1188,
|
"TerritoryId": 1188,
|
||||||
"InteractionType": "WalkTo",
|
"InteractionType": "WalkTo",
|
||||||
"Fly": true,
|
"AetheryteShortcut": "Kozama'uka - Dock Poga"
|
||||||
"AetheryteShortcut": "Kozama'uka - Dock Poga",
|
|
||||||
"SkipConditions": {
|
|
||||||
"AetheryteShortcutIf": {
|
|
||||||
"NearPosition": {
|
|
||||||
"Position": {
|
|
||||||
"X": 770.7179,
|
|
||||||
"Y": 12.84657,
|
|
||||||
"Z": -263.99634
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"MaximumDistance": 300
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"DataId": 1051711,
|
"DataId": 1051711,
|
||||||
|
@ -1,171 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://git.carvel.li/liza/Questionable/raw/branch/master/QuestPaths/quest-v1.json",
|
|
||||||
"Author": "liza",
|
|
||||||
"QuestSequence": [
|
|
||||||
{
|
|
||||||
"Sequence": 0,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"Position": {
|
|
||||||
"X": 809.655,
|
|
||||||
"Y": 17.004526,
|
|
||||||
"Z": -257.89868
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "WalkTo",
|
|
||||||
"AetheryteShortcut": "Kozama'uka - Dock Poga",
|
|
||||||
"Fly": true,
|
|
||||||
"SkipConditions": {
|
|
||||||
"AetheryteShortcutIf": {
|
|
||||||
"InSameTerritory": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1051710,
|
|
||||||
"Position": {
|
|
||||||
"X": 822.629,
|
|
||||||
"Y": 17.102613,
|
|
||||||
"Z": -263.20288
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "AcceptQuest"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 1,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1051733,
|
|
||||||
"Position": {
|
|
||||||
"X": 553.06323,
|
|
||||||
"Y": 115.84422,
|
|
||||||
"Z": 173.32715
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"AetheryteShortcut": "Kozama'uka - Many Fires"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1051734,
|
|
||||||
"Position": {
|
|
||||||
"X": 588.7998,
|
|
||||||
"Y": 116.71518,
|
|
||||||
"Z": 216.84595
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"DataId": 1051735,
|
|
||||||
"Position": {
|
|
||||||
"X": 614.9232,
|
|
||||||
"Y": 119.49004,
|
|
||||||
"Z": 172.16748
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 2,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1051736,
|
|
||||||
"Position": {
|
|
||||||
"X": 573.3883,
|
|
||||||
"Y": 116,
|
|
||||||
"Z": 202.62451
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 3,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 2014432,
|
|
||||||
"Position": {
|
|
||||||
"X": 663.569,
|
|
||||||
"Y": 117.50964,
|
|
||||||
"Z": 647.9437
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 4,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1051738,
|
|
||||||
"Position": {
|
|
||||||
"X": 661.7991,
|
|
||||||
"Y": 117.68325,
|
|
||||||
"Z": 646.6925
|
|
||||||
},
|
|
||||||
"StopDistance": 5,
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 5,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1051739,
|
|
||||||
"Position": {
|
|
||||||
"X": 410.39136,
|
|
||||||
"Y": 122.23778,
|
|
||||||
"Z": 797.5432
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 6,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1051738,
|
|
||||||
"Position": {
|
|
||||||
"X": 661.7991,
|
|
||||||
"Y": 117.68325,
|
|
||||||
"Z": 646.6925
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "Interact",
|
|
||||||
"Fly": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"Sequence": 255,
|
|
||||||
"Steps": [
|
|
||||||
{
|
|
||||||
"DataId": 1051710,
|
|
||||||
"Position": {
|
|
||||||
"X": 822.629,
|
|
||||||
"Y": 17.102613,
|
|
||||||
"Z": -263.20288
|
|
||||||
},
|
|
||||||
"TerritoryId": 1188,
|
|
||||||
"InteractionType": "CompleteQuest",
|
|
||||||
"AetheryteShortcut": "Kozama'uka - Dock Poga"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,5 +1,5 @@
|
|||||||
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=vendor/@EntryIndexedValue">ExplicitlyExcluded</s:String>
|
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=vendor_005CECommons/@EntryIndexedValue">ExplicitlyExcluded</s:String>
|
||||||
<s:Boolean x:Key="/Default/Environment/AutoImport2/=CSHARP/BlackLists/=Newtonsoft_002E_002A/@EntryIndexedValue">True</s:Boolean>
|
<s:Boolean x:Key="/Default/Environment/AutoImport2/=CSHARP/BlackLists/=Newtonsoft_002E_002A/@EntryIndexedValue">True</s:Boolean>
|
||||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=aporia/@EntryIndexedValue">True</s:Boolean>
|
<s:Boolean x:Key="/Default/UserDictionary/Words/=aporia/@EntryIndexedValue">True</s:Boolean>
|
||||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=arcadion/@EntryIndexedValue">True</s:Boolean>
|
<s:Boolean x:Key="/Default/UserDictionary/Words/=arcadion/@EntryIndexedValue">True</s:Boolean>
|
||||||
|
@ -7,7 +7,7 @@ namespace Questionable;
|
|||||||
|
|
||||||
internal sealed class Configuration : IPluginConfiguration
|
internal sealed class Configuration : IPluginConfiguration
|
||||||
{
|
{
|
||||||
public const int PluginSetupVersion = 2;
|
public const int PluginSetupVersion = 1;
|
||||||
|
|
||||||
public int Version { get; set; } =1 ;
|
public int Version { get; set; } =1 ;
|
||||||
public int PluginSetupCompleteVersion { get; set; }
|
public int PluginSetupCompleteVersion { get; set; }
|
||||||
@ -28,6 +28,7 @@ internal sealed class Configuration : IPluginConfiguration
|
|||||||
public bool HideInAllInstances { get; set; } = true;
|
public bool HideInAllInstances { get; set; } = true;
|
||||||
public bool UseEscToCancelQuesting { get; set; } = true;
|
public bool UseEscToCancelQuesting { get; set; } = true;
|
||||||
public bool ShowIncompleteSeasonalEvents { get; set; } = true;
|
public bool ShowIncompleteSeasonalEvents { get; set; } = true;
|
||||||
|
public bool AutomaticallyCompleteSnipeTasks { get; set; }
|
||||||
public bool ConfigureTextAdvance { get; set; } = true;
|
public bool ConfigureTextAdvance { get; set; } = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -142,7 +142,7 @@ internal sealed class ItemUseModule : ICombatModule
|
|||||||
{
|
{
|
||||||
BattleChara* battleChara = (BattleChara*)gameObject.Address;
|
BattleChara* battleChara = (BattleChara*)gameObject.Address;
|
||||||
if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.Incapacitated)
|
if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.Incapacitated)
|
||||||
return (battleChara->ActorControlFlags & 0x40) != 0;
|
return (*(byte*)((nint)battleChara + 0x1C68) & 0x40) != 0;
|
||||||
|
|
||||||
if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.HealthPercent)
|
if (_combatData.CombatItemUse.Condition == ECombatItemUseCondition.HealthPercent)
|
||||||
return (100f * battleChara->Health / battleChara->MaxHealth) < _combatData.CombatItemUse.Value;
|
return (100f * battleChara->Health / battleChara->MaxHealth) < _combatData.CombatItemUse.Value;
|
||||||
|
@ -12,14 +12,14 @@ namespace Questionable.Controller.Steps.Common;
|
|||||||
internal static class SendNotification
|
internal static class SendNotification
|
||||||
{
|
{
|
||||||
internal sealed class Factory(
|
internal sealed class Factory(
|
||||||
AutomatonIpc automatonIpc,
|
Configuration configuration,
|
||||||
TerritoryData territoryData) : SimpleTaskFactory
|
TerritoryData territoryData) : SimpleTaskFactory
|
||||||
{
|
{
|
||||||
public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step)
|
public override ITask? CreateTask(Quest quest, QuestSequence sequence, QuestStep step)
|
||||||
{
|
{
|
||||||
return step.InteractionType switch
|
return step.InteractionType switch
|
||||||
{
|
{
|
||||||
EInteractionType.Snipe when !automatonIpc.IsAutoSnipeEnabled =>
|
EInteractionType.Snipe when !configuration.General.AutomaticallyCompleteSnipeTasks =>
|
||||||
new Task(step.InteractionType, step.Comment),
|
new Task(step.InteractionType, step.Comment),
|
||||||
EInteractionType.Duty =>
|
EInteractionType.Duty =>
|
||||||
new Task(step.InteractionType, step.ContentFinderConditionId.HasValue
|
new Task(step.InteractionType, step.ContentFinderConditionId.HasValue
|
||||||
|
@ -8,7 +8,6 @@ using FFXIVClientStructs.FFXIV.Client.Game;
|
|||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Questionable.Controller.Steps.Shared;
|
using Questionable.Controller.Steps.Shared;
|
||||||
using Questionable.Controller.Utils;
|
using Questionable.Controller.Utils;
|
||||||
using Questionable.External;
|
|
||||||
using Questionable.Functions;
|
using Questionable.Functions;
|
||||||
using Questionable.Model;
|
using Questionable.Model;
|
||||||
using Questionable.Model.Questing;
|
using Questionable.Model.Questing;
|
||||||
@ -17,7 +16,7 @@ namespace Questionable.Controller.Steps.Interactions;
|
|||||||
|
|
||||||
internal static class Interact
|
internal static class Interact
|
||||||
{
|
{
|
||||||
internal sealed class Factory(AutomatonIpc automatonIpc) : ITaskFactory
|
internal sealed class Factory(Configuration configuration) : ITaskFactory
|
||||||
{
|
{
|
||||||
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
|
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
|
||||||
{
|
{
|
||||||
@ -44,7 +43,7 @@ internal static class Interact
|
|||||||
}
|
}
|
||||||
else if (step.InteractionType == EInteractionType.Snipe)
|
else if (step.InteractionType == EInteractionType.Snipe)
|
||||||
{
|
{
|
||||||
if (!automatonIpc.IsAutoSnipeEnabled)
|
if (!configuration.General.AutomaticallyCompleteSnipeTasks)
|
||||||
yield break;
|
yield break;
|
||||||
}
|
}
|
||||||
else if (step.InteractionType != EInteractionType.Interact)
|
else if (step.InteractionType != EInteractionType.Interact)
|
||||||
|
48
Questionable/Controller/Utils/AutoSnipeHandler.cs
Normal file
48
Questionable/Controller/Utils/AutoSnipeHandler.cs
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
using System;
|
||||||
|
using Dalamud.Hooking;
|
||||||
|
using Dalamud.Plugin.Services;
|
||||||
|
using FFXIVClientStructs.FFXIV.Client.Game.Event;
|
||||||
|
using FFXIVClientStructs.FFXIV.Common.Lua;
|
||||||
|
|
||||||
|
namespace Questionable.Controller.Utils;
|
||||||
|
|
||||||
|
internal sealed unsafe class AutoSnipeHandler : IDisposable
|
||||||
|
{
|
||||||
|
private readonly QuestController _questController;
|
||||||
|
private readonly Configuration _configuration;
|
||||||
|
private readonly Hook<EnqueueSnipeTaskDelegate> _enqueueSnipeTaskHook;
|
||||||
|
|
||||||
|
private delegate ulong EnqueueSnipeTaskDelegate(EventSceneModuleImplBase* scene, lua_State* state);
|
||||||
|
|
||||||
|
public AutoSnipeHandler(QuestController questController, Configuration configuration, IGameInteropProvider gameInteropProvider)
|
||||||
|
{
|
||||||
|
_questController = questController;
|
||||||
|
_configuration = configuration;
|
||||||
|
|
||||||
|
_enqueueSnipeTaskHook =
|
||||||
|
gameInteropProvider.HookFromSignature<EnqueueSnipeTaskDelegate>(
|
||||||
|
"48 89 5C 24 ?? 48 89 6C 24 ?? 48 89 74 24 ?? 57 48 83 EC 50 48 8B F1 48 8D 4C 24 ?? E8 ?? ?? ?? ?? 48 8B 4C 24 ??",
|
||||||
|
EnqueueSnipeTask);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Enable() => _enqueueSnipeTaskHook.Enable();
|
||||||
|
|
||||||
|
private ulong EnqueueSnipeTask(EventSceneModuleImplBase* scene, lua_State* state)
|
||||||
|
{
|
||||||
|
if (_configuration.General.AutomaticallyCompleteSnipeTasks && _questController.IsRunning)
|
||||||
|
{
|
||||||
|
var val = state->top;
|
||||||
|
val->tt = 3;
|
||||||
|
val->value.n = 1;
|
||||||
|
state->top += 1;
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return _enqueueSnipeTaskHook.Original.Invoke(scene, state);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Dispose()
|
||||||
|
{
|
||||||
|
_enqueueSnipeTaskHook.Dispose();
|
||||||
|
}
|
||||||
|
}
|
40
Questionable/External/AutomatonIpc.cs
vendored
40
Questionable/External/AutomatonIpc.cs
vendored
@ -1,40 +0,0 @@
|
|||||||
using Dalamud.Plugin;
|
|
||||||
using Dalamud.Plugin.Ipc;
|
|
||||||
using Dalamud.Plugin.Ipc.Exceptions;
|
|
||||||
using Microsoft.Extensions.Logging;
|
|
||||||
|
|
||||||
namespace Questionable.External;
|
|
||||||
|
|
||||||
internal sealed class AutomatonIpc
|
|
||||||
{
|
|
||||||
private readonly ILogger<AutomatonIpc> _logger;
|
|
||||||
private readonly ICallGateSubscriber<string,bool> _isTweakEnabled;
|
|
||||||
private bool _loggedIpcError;
|
|
||||||
|
|
||||||
public AutomatonIpc(IDalamudPluginInterface pluginInterface, ILogger<AutomatonIpc> logger)
|
|
||||||
{
|
|
||||||
_logger = logger;
|
|
||||||
_isTweakEnabled = pluginInterface.GetIpcSubscriber<string, bool>("Automaton.IsTweakEnabled");
|
|
||||||
logger.LogWarning("Automaton x {IsTweakEnabled}", IsAutoSnipeEnabled);
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool IsAutoSnipeEnabled
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
return _isTweakEnabled.InvokeFunc("AutoSnipeQuests");
|
|
||||||
}
|
|
||||||
catch (IpcError e)
|
|
||||||
{
|
|
||||||
if (!_loggedIpcError)
|
|
||||||
{
|
|
||||||
_loggedIpcError = true;
|
|
||||||
_logger.LogWarning(e, "Could not query automaton for tweak status, probably not installed");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -112,6 +112,7 @@ public sealed class QuestionablePlugin : IDalamudPlugin
|
|||||||
serviceCollection.AddSingleton<ChatFunctions>();
|
serviceCollection.AddSingleton<ChatFunctions>();
|
||||||
serviceCollection.AddSingleton<QuestFunctions>();
|
serviceCollection.AddSingleton<QuestFunctions>();
|
||||||
serviceCollection.AddSingleton<DalamudReflector>();
|
serviceCollection.AddSingleton<DalamudReflector>();
|
||||||
|
serviceCollection.AddSingleton<AutoSnipeHandler>();
|
||||||
|
|
||||||
serviceCollection.AddSingleton<AetherCurrentData>();
|
serviceCollection.AddSingleton<AetherCurrentData>();
|
||||||
serviceCollection.AddSingleton<AetheryteData>();
|
serviceCollection.AddSingleton<AetheryteData>();
|
||||||
@ -127,7 +128,6 @@ public sealed class QuestionablePlugin : IDalamudPlugin
|
|||||||
serviceCollection.AddSingleton<QuestionableIpc>();
|
serviceCollection.AddSingleton<QuestionableIpc>();
|
||||||
serviceCollection.AddSingleton<TextAdvanceIpc>();
|
serviceCollection.AddSingleton<TextAdvanceIpc>();
|
||||||
serviceCollection.AddSingleton<NotificationMasterIpc>();
|
serviceCollection.AddSingleton<NotificationMasterIpc>();
|
||||||
serviceCollection.AddSingleton<AutomatonIpc>();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void AddTaskFactories(ServiceCollection serviceCollection)
|
private static void AddTaskFactories(ServiceCollection serviceCollection)
|
||||||
@ -300,8 +300,8 @@ public sealed class QuestionablePlugin : IDalamudPlugin
|
|||||||
serviceProvider.GetRequiredService<ShopController>();
|
serviceProvider.GetRequiredService<ShopController>();
|
||||||
serviceProvider.GetRequiredService<QuestionableIpc>();
|
serviceProvider.GetRequiredService<QuestionableIpc>();
|
||||||
serviceProvider.GetRequiredService<DalamudInitializer>();
|
serviceProvider.GetRequiredService<DalamudInitializer>();
|
||||||
|
serviceProvider.GetRequiredService<AutoSnipeHandler>().Enable();
|
||||||
serviceProvider.GetRequiredService<TextAdvanceIpc>();
|
serviceProvider.GetRequiredService<TextAdvanceIpc>();
|
||||||
serviceProvider.GetRequiredService<AutomatonIpc>();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
|
@ -115,6 +115,18 @@ internal sealed class ConfigWindow : LWindow, IPersistableWindowConfig
|
|||||||
_configuration.General.ConfigureTextAdvance = configureTextAdvance;
|
_configuration.General.ConfigureTextAdvance = configureTextAdvance;
|
||||||
Save();
|
Save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ImGui.CollapsingHeader("Cheats"))
|
||||||
|
{
|
||||||
|
ImGui.TextColored(ImGuiColors.DalamudRed,
|
||||||
|
"This setting will be removed in a future version, and will be\navailable through TextAdvance instead.");
|
||||||
|
bool automaticallyCompleteSnipeTasks = _configuration.General.AutomaticallyCompleteSnipeTasks;
|
||||||
|
if (ImGui.Checkbox("Automatically complete snipe tasks", ref automaticallyCompleteSnipeTasks))
|
||||||
|
{
|
||||||
|
_configuration.General.AutomaticallyCompleteSnipeTasks = automaticallyCompleteSnipeTasks;
|
||||||
|
Save();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DrawNotificationsTab()
|
private void DrawNotificationsTab()
|
||||||
|
@ -10,11 +10,10 @@ using ImGuiNET;
|
|||||||
using LLib;
|
using LLib;
|
||||||
using LLib.ImGui;
|
using LLib.ImGui;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Questionable.External;
|
|
||||||
|
|
||||||
namespace Questionable.Windows;
|
namespace Questionable.Windows;
|
||||||
|
|
||||||
internal sealed class OneTimeSetupWindow : LWindow
|
internal sealed class OneTimeSetupWindow : LWindow, IDisposable
|
||||||
{
|
{
|
||||||
private static readonly IReadOnlyList<PluginInfo> RequiredPlugins =
|
private static readonly IReadOnlyList<PluginInfo> RequiredPlugins =
|
||||||
[
|
[
|
||||||
@ -23,24 +22,35 @@ internal sealed class OneTimeSetupWindow : LWindow
|
|||||||
vnavmesh handles the navigation within a zone, moving
|
vnavmesh handles the navigation within a zone, moving
|
||||||
your character to the next quest-related objective.
|
your character to the next quest-related objective.
|
||||||
""",
|
""",
|
||||||
new Uri("https://github.com/awgil/ffxiv_navmesh/"),
|
new Uri("https://github.com/awgil/ffxiv_navmesh/")),
|
||||||
new Uri("https://puni.sh/api/repository/veyn")),
|
|
||||||
new("Lifestream",
|
new("Lifestream",
|
||||||
"""
|
"""
|
||||||
Used to travel to aethernet shards in cities.
|
Used to travel to aethernet shards in cities.
|
||||||
""",
|
""",
|
||||||
new Uri("https://github.com/NightmareXIV/Lifestream"),
|
new Uri("https://github.com/NightmareXIV/Lifestream")),
|
||||||
new Uri("https://github.com/NightmareXIV/MyDalamudPlugins/raw/main/pluginmaster.json")),
|
|
||||||
new("TextAdvance",
|
new("TextAdvance",
|
||||||
"""
|
"""
|
||||||
Automatically accepts and turns in quests, skips cutscenes
|
Automatically accepts and turns in quests, skips cutscenes
|
||||||
and dialogue.
|
and dialogue.
|
||||||
""",
|
""",
|
||||||
new Uri("https://github.com/NightmareXIV/TextAdvance"),
|
new Uri("https://github.com/NightmareXIV/TextAdvance")),
|
||||||
new Uri("https://github.com/NightmareXIV/MyDalamudPlugins/raw/main/pluginmaster.json")),
|
|
||||||
];
|
];
|
||||||
|
|
||||||
private readonly IReadOnlyList<PluginInfo> _recommendedPlugins;
|
private static readonly IReadOnlyList<PluginInfo> RecommendedPlugins =
|
||||||
|
[
|
||||||
|
new("Rotation Solver Reborn",
|
||||||
|
"""
|
||||||
|
Automatically handles most combat interactions you encounter
|
||||||
|
during quests, including being interrupted by mobs.
|
||||||
|
""",
|
||||||
|
new Uri("https://github.com/FFXIV-CombatReborn/RotationSolverReborn")),
|
||||||
|
new("NotificationMaster",
|
||||||
|
"""
|
||||||
|
Sends a configurable out-of-game notification if a quest
|
||||||
|
requires manual actions.
|
||||||
|
""",
|
||||||
|
new Uri("https://github.com/NightmareXIV/NotificationMaster")),
|
||||||
|
];
|
||||||
|
|
||||||
private readonly Configuration _configuration;
|
private readonly Configuration _configuration;
|
||||||
private readonly IDalamudPluginInterface _pluginInterface;
|
private readonly IDalamudPluginInterface _pluginInterface;
|
||||||
@ -49,7 +59,7 @@ internal sealed class OneTimeSetupWindow : LWindow
|
|||||||
private readonly ILogger<OneTimeSetupWindow> _logger;
|
private readonly ILogger<OneTimeSetupWindow> _logger;
|
||||||
|
|
||||||
public OneTimeSetupWindow(Configuration configuration, IDalamudPluginInterface pluginInterface, UiUtils uiUtils,
|
public OneTimeSetupWindow(Configuration configuration, IDalamudPluginInterface pluginInterface, UiUtils uiUtils,
|
||||||
DalamudReflector dalamudReflector, ILogger<OneTimeSetupWindow> logger, AutomatonIpc automatonIpc)
|
DalamudReflector dalamudReflector, ILogger<OneTimeSetupWindow> logger)
|
||||||
: base("Questionable Setup###QuestionableOneTimeSetup",
|
: base("Questionable Setup###QuestionableOneTimeSetup",
|
||||||
ImGuiWindowFlags.NoCollapse | ImGuiWindowFlags.AlwaysAutoResize | ImGuiWindowFlags.NoSavedSettings, true)
|
ImGuiWindowFlags.NoCollapse | ImGuiWindowFlags.AlwaysAutoResize | ImGuiWindowFlags.NoSavedSettings, true)
|
||||||
{
|
{
|
||||||
@ -59,33 +69,6 @@ internal sealed class OneTimeSetupWindow : LWindow
|
|||||||
_dalamudReflector = dalamudReflector;
|
_dalamudReflector = dalamudReflector;
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
|
|
||||||
_recommendedPlugins =
|
|
||||||
[
|
|
||||||
new("Rotation Solver Reborn",
|
|
||||||
"""
|
|
||||||
Automatically handles most combat interactions you encounter
|
|
||||||
during quests, including being interrupted by mobs.
|
|
||||||
""",
|
|
||||||
new Uri("https://github.com/FFXIV-CombatReborn/RotationSolverReborn"),
|
|
||||||
new Uri(
|
|
||||||
"https://raw.githubusercontent.com/FFXIV-CombatReborn/CombatRebornRepo/main/pluginmaster.json")),
|
|
||||||
new PluginInfo("Automaton",
|
|
||||||
"""
|
|
||||||
Automaton is a collection of automation-related tweaks.
|
|
||||||
The 'Sniper no sniping' tweak can complete snipe tasks automatically.
|
|
||||||
""",
|
|
||||||
new Uri("https://github.com/Jaksuhn/Automaton"),
|
|
||||||
new Uri("https://puni.sh/api/repository/croizat"),
|
|
||||||
[new PluginDetailInfo("'Sniper no sniping' enabled", () => automatonIpc.IsAutoSnipeEnabled)]),
|
|
||||||
new("NotificationMaster",
|
|
||||||
"""
|
|
||||||
Sends a configurable out-of-game notification if a quest
|
|
||||||
requires manual actions.
|
|
||||||
""",
|
|
||||||
new Uri("https://github.com/NightmareXIV/NotificationMaster"),
|
|
||||||
null),
|
|
||||||
];
|
|
||||||
|
|
||||||
RespectCloseHotkey = false;
|
RespectCloseHotkey = false;
|
||||||
ShowCloseButton = false;
|
ShowCloseButton = false;
|
||||||
AllowPinning = false;
|
AllowPinning = false;
|
||||||
@ -118,7 +101,7 @@ internal sealed class OneTimeSetupWindow : LWindow
|
|||||||
ImGui.Text("The following plugins are recommended, but not required:");
|
ImGui.Text("The following plugins are recommended, but not required:");
|
||||||
using (ImRaii.PushIndent())
|
using (ImRaii.PushIndent())
|
||||||
{
|
{
|
||||||
foreach (var plugin in _recommendedPlugins)
|
foreach (var plugin in RecommendedPlugins)
|
||||||
DrawPlugin(plugin, checklistPadding);
|
DrawPlugin(plugin, checklistPadding);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -166,28 +149,8 @@ internal sealed class OneTimeSetupWindow : LWindow
|
|||||||
using (ImRaii.PushIndent(checklistPadding))
|
using (ImRaii.PushIndent(checklistPadding))
|
||||||
{
|
{
|
||||||
ImGui.TextUnformatted(plugin.Details);
|
ImGui.TextUnformatted(plugin.Details);
|
||||||
if (plugin.DetailsToCheck != null)
|
if (!isInstalled && ImGui.Button("Open Repository"))
|
||||||
{
|
Util.OpenLink(plugin.Uri.ToString());
|
||||||
foreach (var detail in plugin.DetailsToCheck)
|
|
||||||
_uiUtils.ChecklistItem(detail.DisplayName, isInstalled && detail.Predicate());
|
|
||||||
}
|
|
||||||
|
|
||||||
ImGui.Spacing();
|
|
||||||
|
|
||||||
if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Globe, "Open Website"))
|
|
||||||
Util.OpenLink(plugin.WebsiteUri.ToString());
|
|
||||||
|
|
||||||
ImGui.SameLine();
|
|
||||||
if (plugin.DalamudRepositoryUri != null)
|
|
||||||
{
|
|
||||||
if (ImGuiComponents.IconButtonWithText(FontAwesomeIcon.Code, "Open Repository"))
|
|
||||||
Util.OpenLink(plugin.DalamudRepositoryUri.ToString());
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ImGui.AlignTextToFramePadding();
|
|
||||||
ImGuiComponents.HelpMarker("Available on official Dalamud Repository");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -199,12 +162,12 @@ internal sealed class OneTimeSetupWindow : LWindow
|
|||||||
return _dalamudReflector.TryGetDalamudPlugin(internalName, out _, suppressErrors: true, ignoreCache: true);
|
return _dalamudReflector.TryGetDalamudPlugin(internalName, out _, suppressErrors: true, ignoreCache: true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void Dispose()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
private sealed record PluginInfo(
|
private sealed record PluginInfo(
|
||||||
string DisplayName,
|
string DisplayName,
|
||||||
string Details,
|
string Details,
|
||||||
Uri WebsiteUri,
|
Uri Uri);
|
||||||
Uri? DalamudRepositoryUri,
|
|
||||||
List<PluginDetailInfo>? DetailsToCheck = null);
|
|
||||||
|
|
||||||
private sealed record PluginDetailInfo(string DisplayName, Func<bool> Predicate);
|
|
||||||
}
|
}
|
||||||
|
2
vendor/ECommons
vendored
2
vendor/ECommons
vendored
@ -1 +1 @@
|
|||||||
Subproject commit 6ea40a9eea2e805f2f566fe0493749c7c0639ea3
|
Subproject commit 71ee09f7cc2230a73503b945422760da1368405c
|
Loading…
Reference in New Issue
Block a user