forked from liza/Questionable
Gridania start, various quest fixes, automatically start GC quest, automatically start chocobo quest
This commit is contained in:
parent
5a4a693d66
commit
5bcaba7eba
@ -48,6 +48,9 @@ public class QuestSourceGenerator : ISourceGenerator
|
|||||||
quests.Add((id, quest));
|
quests.Add((id, quest));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (quests.Count == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
quests = quests.OrderBy(x => x.Item1).ToList();
|
quests = quests.OrderBy(x => x.Item1).ToList();
|
||||||
|
|
||||||
var code =
|
var code =
|
||||||
|
@ -0,0 +1,210 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"TerritoryBlacklist": [
|
||||||
|
225
|
||||||
|
],
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000421,
|
||||||
|
"Position": {
|
||||||
|
"X": 98.25281,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -78.446655
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000465,
|
||||||
|
"Position": {
|
||||||
|
"X": 298.63428,
|
||||||
|
"Y": 9.999997,
|
||||||
|
"Z": 119.035645
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000465,
|
||||||
|
"Position": {
|
||||||
|
"X": 298.63428,
|
||||||
|
"Y": 9.999997,
|
||||||
|
"Z": 119.035645
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WaitForManualProgress",
|
||||||
|
"Comment": "Manual Quest Progress (very combat heavy)",
|
||||||
|
"$": "TODO Remove later"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000512,
|
||||||
|
"Position": {
|
||||||
|
"X": 311.69592,
|
||||||
|
"Y": 14.8470745,
|
||||||
|
"Z": 164.47693
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Disabled": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
128
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000513,
|
||||||
|
"Position": {
|
||||||
|
"X": 303.8833,
|
||||||
|
"Y": 15.899703,
|
||||||
|
"Z": 160.87585
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Disabled": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
64
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000514,
|
||||||
|
"Position": {
|
||||||
|
"X": 296.1012,
|
||||||
|
"Y": 15.999987,
|
||||||
|
"Z": 171.4961
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Disabled": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
32
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000515,
|
||||||
|
"Position": {
|
||||||
|
"X": 291.21838,
|
||||||
|
"Y": 19.86808,
|
||||||
|
"Z": 175.21924
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Disabled": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
16
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000516,
|
||||||
|
"Position": {
|
||||||
|
"X": 284.65698,
|
||||||
|
"Y": 21.97319,
|
||||||
|
"Z": 188.18945
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Disabled": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
8
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 3,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000740,
|
||||||
|
"Position": {
|
||||||
|
"X": 260.18152,
|
||||||
|
"Y": 24.000002,
|
||||||
|
"Z": 192.2179
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "SinglePlayerDuty"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 5,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 319.9492,
|
||||||
|
"Y": 13.866494,
|
||||||
|
"Z": 156.2647
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WalkTo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000465,
|
||||||
|
"Position": {
|
||||||
|
"X": 298.63428,
|
||||||
|
"Y": 9.999997,
|
||||||
|
"Z": 119.035645
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Gridania",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Aetheryte Plaza",
|
||||||
|
"[Gridania] Airship Landing"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
165
QuestPaths/ARealmReborn/MSQ-1/Gridania/161_Leia's Legacy.json
Normal file
165
QuestPaths/ARealmReborn/MSQ-1/Gridania/161_Leia's Legacy.json
Normal file
@ -0,0 +1,165 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000471,
|
||||||
|
"Position": {
|
||||||
|
"X": -60.471558,
|
||||||
|
"Y": 0.19999865,
|
||||||
|
"Z": 6.301941
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000484,
|
||||||
|
"Position": {
|
||||||
|
"X": 2.0598755,
|
||||||
|
"Y": -7.9139543,
|
||||||
|
"Z": -22.171448
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
32
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000476,
|
||||||
|
"Position": {
|
||||||
|
"X": 27.0542,
|
||||||
|
"Y": -6.881897,
|
||||||
|
"Z": 14.145081
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
128
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000483,
|
||||||
|
"Position": {
|
||||||
|
"X": 85.496216,
|
||||||
|
"Y": -6.0870457,
|
||||||
|
"Z": 67.00232
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
64
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000471,
|
||||||
|
"Position": {
|
||||||
|
"X": -60.471558,
|
||||||
|
"Y": 0.19999865,
|
||||||
|
"Z": 6.301941
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 3,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 9.630515,
|
||||||
|
"Y": -22.580793,
|
||||||
|
"Z": 242.32327
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WalkTo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1003002,
|
||||||
|
"Position": {
|
||||||
|
"X": -189.13562,
|
||||||
|
"Y": -26.70127,
|
||||||
|
"Z": 295.52136
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "SinglePlayerDuty"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 4,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1003002,
|
||||||
|
"Position": {
|
||||||
|
"X": -189.13562,
|
||||||
|
"Y": -26.70127,
|
||||||
|
"Z": 295.52136
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 5,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000471,
|
||||||
|
"Position": {
|
||||||
|
"X": -60.471558,
|
||||||
|
"Y": 0.19999865,
|
||||||
|
"Z": 6.301941
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Central Shroud - Bentbranch Meadows"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000471,
|
||||||
|
"Position": {
|
||||||
|
"X": -60.471558,
|
||||||
|
"Y": 0.19999865,
|
||||||
|
"Z": 6.301941
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,117 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000449,
|
||||||
|
"Position": {
|
||||||
|
"X": 201.83093,
|
||||||
|
"Y": -5.5419664,
|
||||||
|
"Z": -107.25574
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Comment": "Very likely this needs manual combat and/or manual continues",
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2000141,
|
||||||
|
"Position": {
|
||||||
|
"X": 179.4613,
|
||||||
|
"Y": -10.666138,
|
||||||
|
"Z": 99.56506
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
128
|
||||||
|
],
|
||||||
|
"$": "QuestVariables if done first: 17 0 16 0 0 128"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2000147,
|
||||||
|
"Position": {
|
||||||
|
"X": 168.07812,
|
||||||
|
"Y": -12.008911,
|
||||||
|
"Z": 120.80554
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
64
|
||||||
|
],
|
||||||
|
"$": "QuestVariables if done first: 17 16 17 0 0 192"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2000149,
|
||||||
|
"Position": {
|
||||||
|
"X": 154.0398,
|
||||||
|
"Y": -10.75769,
|
||||||
|
"Z": 120.3479
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
16
|
||||||
|
],
|
||||||
|
"$": "QuestVariables if done first: 33 17 17 16 0 208"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2000148,
|
||||||
|
"Position": {
|
||||||
|
"X": 126.14636,
|
||||||
|
"Y": -12.008911,
|
||||||
|
"Z": 142.35144
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
32
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000685,
|
||||||
|
"Position": {
|
||||||
|
"X": 287.92236,
|
||||||
|
"Y": -3.297,
|
||||||
|
"Z": -32.6391
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,48 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 3,
|
||||||
|
"Position": {
|
||||||
|
"X": 13.076904,
|
||||||
|
"Y": 0.56451416,
|
||||||
|
"Z": 35.90442
|
||||||
|
},
|
||||||
|
"StopDistance": 10,
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "AttuneAetheryte",
|
||||||
|
"AethernetShortcut": ["[Gridania] Aetheryte Plaza", "[Gridania] Blue Badger Gate (Central Shroud)"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000470,
|
||||||
|
"Position": {
|
||||||
|
"X": -59.006653,
|
||||||
|
"Y": -0.010835781,
|
||||||
|
"Z": 26.41333
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000421,
|
||||||
|
"Position": {
|
||||||
|
"X": 98.25281,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -78.446655
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000421,
|
||||||
|
"Position": {
|
||||||
|
"X": 98.25281,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -78.446655
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Comment": "All starting gear (except the hat) is ilvl 5 already"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,46 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 158.06026,
|
||||||
|
"Y": -12.97808,
|
||||||
|
"Z": 158.08466
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"TargetTerritoryId": 148
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000421,
|
||||||
|
"Position": {
|
||||||
|
"X": 98.25281,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -78.446655
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,87 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000470,
|
||||||
|
"Position": {
|
||||||
|
"X": -59.006653,
|
||||||
|
"Y": -0.010835781,
|
||||||
|
"Z": 26.41333
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -61.749943,
|
||||||
|
"Y": 0.9481318,
|
||||||
|
"Z": -38.52144
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Jump",
|
||||||
|
"JumpDestination": {
|
||||||
|
"Position": {
|
||||||
|
"X": -67.083466,
|
||||||
|
"Y": -4.478065,
|
||||||
|
"Z": -45.204926
|
||||||
|
},
|
||||||
|
"StopDistance": 3
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000748,
|
||||||
|
"Position": {
|
||||||
|
"X": -125.230774,
|
||||||
|
"Y": 4.1573725,
|
||||||
|
"Z": -43.595093
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -171.87439,
|
||||||
|
"Y": 1.7183347,
|
||||||
|
"Z": -70.586975
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Combat",
|
||||||
|
"EnemySpawnType": "OverworldEnemies",
|
||||||
|
"KillEnemyDataIds": [
|
||||||
|
771
|
||||||
|
],
|
||||||
|
"Comment": "Kill Qiqirn manually"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000748,
|
||||||
|
"Position": {
|
||||||
|
"X": -125.230774,
|
||||||
|
"Y": 4.1573725,
|
||||||
|
"Z": -43.595093
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
197
QuestPaths/ARealmReborn/MSQ-1/Gridania/377_Don't Look Down.json
Normal file
197
QuestPaths/ARealmReborn/MSQ-1/Gridania/377_Don't Look Down.json
Normal file
@ -0,0 +1,197 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000435,
|
||||||
|
"Position": {
|
||||||
|
"X": -127.06189,
|
||||||
|
"Y": 4.1490583,
|
||||||
|
"Z": -44.296997
|
||||||
|
},
|
||||||
|
"StopDistance": 5,
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2000750,
|
||||||
|
"Position": {
|
||||||
|
"X": -151.26276,
|
||||||
|
"Y": 14.358704,
|
||||||
|
"Z": -73.014465
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
32
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2000749,
|
||||||
|
"Position": {
|
||||||
|
"X": -164.11078,
|
||||||
|
"Y": 23.025818,
|
||||||
|
"Z": -86.167725
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
64
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -180.18181,
|
||||||
|
"Y": 31.66525,
|
||||||
|
"Z": -91.84381
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
-128
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -184.41872,
|
||||||
|
"Y": 29.940958,
|
||||||
|
"Z": -93.809525
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"DisableNavmesh": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
-128
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2000748,
|
||||||
|
"Position": {
|
||||||
|
"X": -189.25769,
|
||||||
|
"Y": 30.44165,
|
||||||
|
"Z": -98.83276
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DisableNavmesh": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
128
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -179.84062,
|
||||||
|
"Y": 31.476957,
|
||||||
|
"Z": -91.05707
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"DisableNavmesh": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
-16
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -171.76294,
|
||||||
|
"Y": 23.022184,
|
||||||
|
"Z": -76.32822
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
-16
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2000751,
|
||||||
|
"Position": {
|
||||||
|
"X": -169.3294,
|
||||||
|
"Y": 18.600708,
|
||||||
|
"Z": -72.129456
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DisableNavmesh": true,
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
16
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -166.56161,
|
||||||
|
"Y": 0.63666093,
|
||||||
|
"Z": -61.089085
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"DisableNavmesh": true,
|
||||||
|
"Comment": "Jumping back up isn't trivial"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000436,
|
||||||
|
"Position": {
|
||||||
|
"X": -193.22504,
|
||||||
|
"Y": 56.264572,
|
||||||
|
"Z": -116.47211
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,66 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000436,
|
||||||
|
"Position": {
|
||||||
|
"X": -193.22504,
|
||||||
|
"Y": 56.264572,
|
||||||
|
"Z": -116.47211
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000748,
|
||||||
|
"Position": {
|
||||||
|
"X": -125.230774,
|
||||||
|
"Y": 4.1573725,
|
||||||
|
"Z": -43.595093
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2000689,
|
||||||
|
"Position": {
|
||||||
|
"X": -95.47571,
|
||||||
|
"Y": 3.4942627,
|
||||||
|
"Z": -150.80493
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000748,
|
||||||
|
"Position": {
|
||||||
|
"X": -125.230774,
|
||||||
|
"Y": 4.1573725,
|
||||||
|
"Z": -43.595093
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,66 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000748,
|
||||||
|
"Position": {
|
||||||
|
"X": -125.230774,
|
||||||
|
"Y": 4.1573725,
|
||||||
|
"Z": -43.595093
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1001280,
|
||||||
|
"Position": {
|
||||||
|
"X": 89.28052,
|
||||||
|
"Y": -6.351089,
|
||||||
|
"Z": -121.96539
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000483,
|
||||||
|
"Position": {
|
||||||
|
"X": 85.496216,
|
||||||
|
"Y": -6.0870457,
|
||||||
|
"Z": 67.00232
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000741,
|
||||||
|
"Position": {
|
||||||
|
"X": -66.7583,
|
||||||
|
"Y": 0.2,
|
||||||
|
"Z": 11.36792
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,55 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000741,
|
||||||
|
"Position": {
|
||||||
|
"X": -66.7583,
|
||||||
|
"Y": 0.2,
|
||||||
|
"Z": 11.36792
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2001006,
|
||||||
|
"Position": {
|
||||||
|
"X": 99.65662,
|
||||||
|
"Y": -15.732117,
|
||||||
|
"Z": 193.01135
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Combat",
|
||||||
|
"EnemySpawnType": "AfterInteraction",
|
||||||
|
"KillEnemyDataIds": [
|
||||||
|
12
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000491,
|
||||||
|
"Position": {
|
||||||
|
"X": 47.958984,
|
||||||
|
"Y": -24,
|
||||||
|
"Z": 228.5343
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000491,
|
||||||
|
"Position": {
|
||||||
|
"X": 47.958984,
|
||||||
|
"Y": -24,
|
||||||
|
"Z": 228.5343
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1002932,
|
||||||
|
"Position": {
|
||||||
|
"X": -65.049255,
|
||||||
|
"Y": -36.79766,
|
||||||
|
"Z": 477.59204
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000503,
|
||||||
|
"Position": {
|
||||||
|
"X": 178.33215,
|
||||||
|
"Y": -32.015224,
|
||||||
|
"Z": 333.30273
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,55 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000421,
|
||||||
|
"Position": {
|
||||||
|
"X": 98.25281,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -78.446655
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 194.08282,
|
||||||
|
"Y": -8.422037,
|
||||||
|
"Z": -47.295006
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Combat",
|
||||||
|
"EnemySpawnType": "OverworldEnemies",
|
||||||
|
"KillEnemyDataIds": [
|
||||||
|
43
|
||||||
|
],
|
||||||
|
"Comment": "Kill Chigoes manually"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000449,
|
||||||
|
"Position": {
|
||||||
|
"X": 201.83093,
|
||||||
|
"Y": -5.5419664,
|
||||||
|
"Z": -107.25574
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,79 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000685,
|
||||||
|
"Position": {
|
||||||
|
"X": 287.92236,
|
||||||
|
"Y": -3.297,
|
||||||
|
"Z": -32.6391
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Comment": "TODO Figure out quest flags if picking up egg first OR doing the combat first",
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2000010,
|
||||||
|
"Position": {
|
||||||
|
"X": 480.88794,
|
||||||
|
"Y": 30.746826,
|
||||||
|
"Z": -49.729187
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 480.88794,
|
||||||
|
"Y": 30.746826,
|
||||||
|
"Z": -49.729187
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Combat",
|
||||||
|
"EnemySpawnType": "OverworldEnemies",
|
||||||
|
"KillEnemyDataIds": [142],
|
||||||
|
"Comment": "Depending on how many enemies you fought on the way to the egg, this step could be optional"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000685,
|
||||||
|
"Position": {
|
||||||
|
"X": 287.92236,
|
||||||
|
"Y": -3.297,
|
||||||
|
"Z": -32.6391
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000408,
|
||||||
|
"Position": {
|
||||||
|
"X": 106.85889,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -75.669556
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,66 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000503,
|
||||||
|
"Position": {
|
||||||
|
"X": 178.33215,
|
||||||
|
"Y": -32.015224,
|
||||||
|
"Z": 333.30273
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2001018,
|
||||||
|
"Position": {
|
||||||
|
"X": 155.47412,
|
||||||
|
"Y": -23.66681,
|
||||||
|
"Z": 490.74524
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Combat",
|
||||||
|
"EnemySpawnType": "AutoOnEnterArea",
|
||||||
|
"KillEnemyDataIds": [
|
||||||
|
26
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2001016,
|
||||||
|
"Position": {
|
||||||
|
"X": 152.60547,
|
||||||
|
"Y": -23.758362,
|
||||||
|
"Z": 494.71265
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000470,
|
||||||
|
"Position": {
|
||||||
|
"X": -59.006653,
|
||||||
|
"Y": -0.010835781,
|
||||||
|
"Z": 26.41333
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Central Shroud - Bentbranch Meadows"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1001148,
|
||||||
|
"Position": {
|
||||||
|
"X": 117.112915,
|
||||||
|
"Y": -12.506256,
|
||||||
|
"Z": 143.63306
|
||||||
|
},
|
||||||
|
"TerritoryId": 183,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1001140,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.788818,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.861694
|
||||||
|
},
|
||||||
|
"TerritoryId": 183,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,69 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"TerritoryBlacklist": [
|
||||||
|
233
|
||||||
|
],
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000421,
|
||||||
|
"Position": {
|
||||||
|
"X": 98.25281,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -78.446655
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2000953,
|
||||||
|
"Position": {
|
||||||
|
"X": 323.5979,
|
||||||
|
"Y": 0.3508911,
|
||||||
|
"Z": -309.55975
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "SinglePlayerDuty"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 3,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2001194,
|
||||||
|
"Position": {
|
||||||
|
"X": 323.627,
|
||||||
|
"Y": 0.3168333,
|
||||||
|
"Z": -309.5412
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000421,
|
||||||
|
"Position": {
|
||||||
|
"X": 98.25281,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": -78.446655
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000471,
|
||||||
|
"Position": {
|
||||||
|
"X": -60.471558,
|
||||||
|
"Y": 0.19999865,
|
||||||
|
"Z": 6.301941
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Gridania",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Aetheryte Plaza",
|
||||||
|
"[Gridania] Airship Landing"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,118 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000423,
|
||||||
|
"Position": {
|
||||||
|
"X": 232.04382,
|
||||||
|
"Y": 1.999974,
|
||||||
|
"Z": 45.578613
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": ["[Gridania] Aetheryte Plaza", "[Gridania] Archers' Guild"],
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST007_00447_Q1_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1003061,
|
||||||
|
"Position": {
|
||||||
|
"X": -0.015319824,
|
||||||
|
"Y": 0.500025,
|
||||||
|
"Z": -4.3793945
|
||||||
|
},
|
||||||
|
"StopDistance": 7,
|
||||||
|
"TerritoryId": 204,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DisableNavmesh": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000456,
|
||||||
|
"Position": {
|
||||||
|
"X": -303.5172,
|
||||||
|
"Y": 21.902342,
|
||||||
|
"Z": 127.45862
|
||||||
|
},
|
||||||
|
"TerritoryId": 148,
|
||||||
|
"InteractionType": "SinglePlayerDuty",
|
||||||
|
"AetheryteShortcut": "Central Shroud - Bentbranch Meadows"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000423,
|
||||||
|
"Position": {
|
||||||
|
"X": 232.04382,
|
||||||
|
"Y": 1.999974,
|
||||||
|
"Z": 45.578613
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Gridania",
|
||||||
|
"AethernetShortcut": ["[Gridania] Aetheryte Plaza", "[Gridania] Archers' Guild"],
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST007_00447_Q1_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1003061,
|
||||||
|
"Position": {
|
||||||
|
"X": -0.015319824,
|
||||||
|
"Y": 0.500025,
|
||||||
|
"Z": -4.3793945
|
||||||
|
},
|
||||||
|
"StopDistance": 7,
|
||||||
|
"TerritoryId": 204,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DisableNavmesh": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,102 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1003061,
|
||||||
|
"Position": {
|
||||||
|
"X": -0.015319824,
|
||||||
|
"Y": 0.500025,
|
||||||
|
"Z": -4.3793945
|
||||||
|
},
|
||||||
|
"StopDistance": 7,
|
||||||
|
"TerritoryId": 204,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2001215,
|
||||||
|
"Position": {
|
||||||
|
"X": 0.002457563,
|
||||||
|
"Y": 1.052062,
|
||||||
|
"Z": 9.820032
|
||||||
|
},
|
||||||
|
"TerritoryId": 204,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 132
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Archers' Guild",
|
||||||
|
"[Gridania] Airship Landing"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000153,
|
||||||
|
"Position": {
|
||||||
|
"X": -44.87683,
|
||||||
|
"Y": -1.2500024,
|
||||||
|
"Z": 56.839844
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,112 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "EquipItem",
|
||||||
|
"ItemId": 2651
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000286,
|
||||||
|
"Position": {
|
||||||
|
"X": -53.574463,
|
||||||
|
"Y": 7.2025366,
|
||||||
|
"Z": -118.36426
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Aetheryte Plaza",
|
||||||
|
"[Gridania] Mih Khetto's Amphitheatre"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2000087,
|
||||||
|
"Position": {
|
||||||
|
"X": 0.015197754,
|
||||||
|
"Y": 1.449585,
|
||||||
|
"Z": 7.7057495
|
||||||
|
},
|
||||||
|
"TerritoryId": 179,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 132
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000460,
|
||||||
|
"Position": {
|
||||||
|
"X": -159.41101,
|
||||||
|
"Y": 4.054107,
|
||||||
|
"Z": -4.1047363
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Aetheryte Plaza",
|
||||||
|
"[Gridania] Conjurers' Guild"
|
||||||
|
],
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST009_00449_Q2_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1003027,
|
||||||
|
"Position": {
|
||||||
|
"X": 4.8981323,
|
||||||
|
"Y": -1.92944,
|
||||||
|
"Z": -0.19836426
|
||||||
|
},
|
||||||
|
"TerritoryId": 205,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,383 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1003027,
|
||||||
|
"Position": {
|
||||||
|
"X": 4.8981323,
|
||||||
|
"Y": -1.92944,
|
||||||
|
"Z": -0.19836426
|
||||||
|
},
|
||||||
|
"TerritoryId": 205,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2001216,
|
||||||
|
"Position": {
|
||||||
|
"X": 45.87172,
|
||||||
|
"Y": 7.763558,
|
||||||
|
"Z": 47.41661
|
||||||
|
},
|
||||||
|
"TerritoryId": 205,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 133
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Conjurers' Guild",
|
||||||
|
"[Gridania] Airship Landing"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000106,
|
||||||
|
"Position": {
|
||||||
|
"X": 29.007324,
|
||||||
|
"Y": -19.000002,
|
||||||
|
"Z": 105.485596
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST200_00507_Q1_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 3,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2001666,
|
||||||
|
"Position": {
|
||||||
|
"X": 7.179191,
|
||||||
|
"Y": -21.93796,
|
||||||
|
"Z": 124.1005
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST200_00507_Q2_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 4,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1002703,
|
||||||
|
"Position": {
|
||||||
|
"X": -12.375122,
|
||||||
|
"Y": 91.499985,
|
||||||
|
"Z": -0.5340576
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST200_00507_Q5_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Comment": "Limsa Arrivals Attendant"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1002693,
|
||||||
|
"Position": {
|
||||||
|
"X": -6.515625,
|
||||||
|
"Y": 91.49996,
|
||||||
|
"Z": -13.656921
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 5,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1003583,
|
||||||
|
"Position": {
|
||||||
|
"X": -7.248047,
|
||||||
|
"Y": 91.49999,
|
||||||
|
"Z": -16.128845
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 129,
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "List",
|
||||||
|
"ExcelSheet": "Warp",
|
||||||
|
"Prompt": null,
|
||||||
|
"Answer": 131094
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1001029,
|
||||||
|
"Position": {
|
||||||
|
"X": 9.170593,
|
||||||
|
"Y": 20.999403,
|
||||||
|
"Z": -15.213318
|
||||||
|
},
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 6,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 8,
|
||||||
|
"Position": {
|
||||||
|
"X": -84.00108,
|
||||||
|
"Y": 20.77683,
|
||||||
|
"Z": 0.03414845
|
||||||
|
},
|
||||||
|
"StopDistance": 10,
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "AttuneAetheryte"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 49,
|
||||||
|
"Position": {
|
||||||
|
"X": -213.61108,
|
||||||
|
"Y": 16.739136,
|
||||||
|
"Z": 51.80432
|
||||||
|
},
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Hawkers' Alley"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 43,
|
||||||
|
"Position": {
|
||||||
|
"X": -335.1645,
|
||||||
|
"Y": 12.619202,
|
||||||
|
"Z": 56.381958
|
||||||
|
},
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Arcanists' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 44,
|
||||||
|
"Position": {
|
||||||
|
"X": -179.40033,
|
||||||
|
"Y": 4.8065186,
|
||||||
|
"Z": 182.97095
|
||||||
|
},
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Fishermens' Guild",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Limsa Lominsa] Arcanists' Guild",
|
||||||
|
"[Limsa Lominsa] Hawkers' Alley"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -83.8817,
|
||||||
|
"Y": 18.475962,
|
||||||
|
"Z": -29.903847
|
||||||
|
},
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"TargetTerritoryId": 128,
|
||||||
|
"Comment": "Walk to Culinarians' Guild",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Limsa Lominsa] Fishermens' Guild",
|
||||||
|
"[Limsa Lominsa] Aetheryte Plaza"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 42,
|
||||||
|
"Position": {
|
||||||
|
"X": -56.50421,
|
||||||
|
"Y": 44.47998,
|
||||||
|
"Z": -131.45648
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Culinarians' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 48,
|
||||||
|
"Position": {
|
||||||
|
"X": -5.1728516,
|
||||||
|
"Y": 44.63257,
|
||||||
|
"Z": -218.06671
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Marauders' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 41,
|
||||||
|
"Position": {
|
||||||
|
"X": 16.067688,
|
||||||
|
"Y": 40.787354,
|
||||||
|
"Z": 68.80286
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Aftcastle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1002695,
|
||||||
|
"Position": {
|
||||||
|
"X": -25.92511,
|
||||||
|
"Y": 91.999954,
|
||||||
|
"Z": -3.6774292
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Limsa Lominsa] The Aftcastle",
|
||||||
|
"[Limsa Lominsa] Airship Landing"
|
||||||
|
],
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST200_00507_Q6_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 7,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 2001669,
|
||||||
|
"Position": {
|
||||||
|
"X": -11.12384,
|
||||||
|
"Y": 92.0271,
|
||||||
|
"Z": 17.166382
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST200_00507_Q4_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 8,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1004434,
|
||||||
|
"Position": {
|
||||||
|
"X": -27.17633,
|
||||||
|
"Y": 83.19998,
|
||||||
|
"Z": 2.304016
|
||||||
|
},
|
||||||
|
"TerritoryId": 130,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST200_00507_Q7_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Comment": "Ul'dah Arrivals Attendant"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1004336,
|
||||||
|
"Position": {
|
||||||
|
"X": -12.619263,
|
||||||
|
"Y": 82.99987,
|
||||||
|
"Z": 4.562378
|
||||||
|
},
|
||||||
|
"TerritoryId": 130,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1004339,
|
||||||
|
"Position": {
|
||||||
|
"X": -25.986206,
|
||||||
|
"Y": 81.799995,
|
||||||
|
"Z": -31.99823
|
||||||
|
},
|
||||||
|
"TerritoryId": 130,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 131,
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "List",
|
||||||
|
"ExcelSheet": "Warp",
|
||||||
|
"Prompt": null,
|
||||||
|
"Answer": 131096
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 51,
|
||||||
|
"Position": {
|
||||||
|
"X": 6.6376343,
|
||||||
|
"Y": 30.655273,
|
||||||
|
"Z": -24.826477
|
||||||
|
},
|
||||||
|
"TerritoryId": 131,
|
||||||
|
"InteractionType": "AttuneAethernetShard"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1001821,
|
||||||
|
"Position": {
|
||||||
|
"X": -24.124573,
|
||||||
|
"Y": 38.000004,
|
||||||
|
"Z": 85.31323
|
||||||
|
},
|
||||||
|
"TerritoryId": 131,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
201
QuestPaths/ARealmReborn/MSQ-1/Gridania/85_LNC_Close to Home.json
Normal file
201
QuestPaths/ARealmReborn/MSQ-1/Gridania/85_LNC_Close to Home.json
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1001140,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.788818,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.861694
|
||||||
|
},
|
||||||
|
"TerritoryId": 183,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2,
|
||||||
|
"Position": {
|
||||||
|
"X": 32.913696,
|
||||||
|
"Y": 2.670288,
|
||||||
|
"Z": 30.014404
|
||||||
|
},
|
||||||
|
"StopDistance": 10,
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "AttuneAetheryte",
|
||||||
|
"CompletionQuestVariablesFlags": [
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
128
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 25,
|
||||||
|
"Position": {
|
||||||
|
"X": 166.58276,
|
||||||
|
"Y": -1.7243042,
|
||||||
|
"Z": 86.13721
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Archers' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 102.810745,
|
||||||
|
"Y": 5.4071116,
|
||||||
|
"Z": 12.54738
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"TargetTerritoryId": 133
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000768,
|
||||||
|
"Position": {
|
||||||
|
"X": 172.35059,
|
||||||
|
"Y": 15.5,
|
||||||
|
"Z": -89.951965
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Comment": "TODO Questflags",
|
||||||
|
"$": "If done after aetheryte: 33 1 0 0 0 128"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 26,
|
||||||
|
"Position": {
|
||||||
|
"X": 101.27405,
|
||||||
|
"Y": 9.018005,
|
||||||
|
"Z": -111.31464
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Leatherworkers' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 27,
|
||||||
|
"Position": {
|
||||||
|
"X": 121.23291,
|
||||||
|
"Y": 12.649658,
|
||||||
|
"Z": -229.63306
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Lancers' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000251,
|
||||||
|
"Position": {
|
||||||
|
"X": 147.08167,
|
||||||
|
"Y": 15.5,
|
||||||
|
"Z": -267.99426
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Comment": "Lancer Receptionist"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000251,
|
||||||
|
"Position": {
|
||||||
|
"X": 147.08167,
|
||||||
|
"Y": 15.5,
|
||||||
|
"Z": -267.99426
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"Comment": "Pick up Class Quest"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 30,
|
||||||
|
"Position": {
|
||||||
|
"X": -73.92999,
|
||||||
|
"Y": 7.9804688,
|
||||||
|
"Z": -140.15417
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Lancers' Guild",
|
||||||
|
"[Gridania] Leatherworkers' Guild & Shaded Bower"
|
||||||
|
],
|
||||||
|
"Comment": "Mih Khetto's Amphitheatre"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -174.09056,
|
||||||
|
"Y": 10.91981,
|
||||||
|
"Z": -162.12527
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "WalkTo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 29,
|
||||||
|
"Position": {
|
||||||
|
"X": -311.0857,
|
||||||
|
"Y": 7.94989,
|
||||||
|
"Z": -177.05048
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"Comment": "Botanists' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 28,
|
||||||
|
"Position": {
|
||||||
|
"X": -145.15906,
|
||||||
|
"Y": 4.9591064,
|
||||||
|
"Z": -11.7647705
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "AttuneAethernetShard",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Botanists' Guild",
|
||||||
|
"[Gridania] Mih Khetto's Amphitheatre"
|
||||||
|
],
|
||||||
|
"Comment": "Conjurers' Guild"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000100,
|
||||||
|
"Position": {
|
||||||
|
"X": 23.819275,
|
||||||
|
"Y": -8,
|
||||||
|
"Z": 115.92273
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Conjurers' Guild",
|
||||||
|
"[Gridania] Airship Landing"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -82,6 +82,7 @@
|
|||||||
"Y": 0.9999907,
|
"Y": 0.9999907,
|
||||||
"Z": 211.68835
|
"Z": 211.68835
|
||||||
},
|
},
|
||||||
|
"StopDistance": 7,
|
||||||
"TerritoryId": 129,
|
"TerritoryId": 129,
|
||||||
"InteractionType": "Interact",
|
"InteractionType": "Interact",
|
||||||
"TargetTerritoryId": 138,
|
"TargetTerritoryId": 138,
|
||||||
|
@ -29,7 +29,8 @@
|
|||||||
},
|
},
|
||||||
"TerritoryId": 141,
|
"TerritoryId": 141,
|
||||||
"InteractionType": "Interact",
|
"InteractionType": "Interact",
|
||||||
"Comment": "'Forging the Spirit'"
|
"Comment": "'Forging the Spirit'",
|
||||||
|
"AetheryteShortcut": "Central Thanalan - Black Brush Station"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"DataId": 1001426,
|
"DataId": 1001426,
|
||||||
|
@ -20,6 +20,16 @@
|
|||||||
{
|
{
|
||||||
"Sequence": 1,
|
"Sequence": 1,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -316.29608,
|
||||||
|
"Y": 23.44405,
|
||||||
|
"Z": -345.24487
|
||||||
|
},
|
||||||
|
"TerritoryId": 140,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"AetheryteShortcut": "Western Thanalan - Horizon"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"DataId": 1004603,
|
"DataId": 1004603,
|
||||||
"Position": {
|
"Position": {
|
||||||
@ -28,14 +38,22 @@
|
|||||||
"Z": -381.97913
|
"Z": -381.97913
|
||||||
},
|
},
|
||||||
"TerritoryId": 140,
|
"TerritoryId": 140,
|
||||||
"InteractionType": "Interact",
|
"InteractionType": "Interact"
|
||||||
"AetheryteShortcut": "Western Thanalan - Horizon"
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -493.3852,
|
||||||
|
"Y": 21,
|
||||||
|
"Z": -382.50455
|
||||||
|
},
|
||||||
|
"TerritoryId": 140,
|
||||||
|
"InteractionType": "WalkTo"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"DataId": 2001711,
|
"DataId": 2001711,
|
||||||
"Position": {
|
"Position": {
|
||||||
|
@ -50,6 +50,7 @@
|
|||||||
"Y": 0.32037354,
|
"Y": 0.32037354,
|
||||||
"Z": -166.58276
|
"Z": -166.58276
|
||||||
},
|
},
|
||||||
|
"StopDistance": 10,
|
||||||
"TerritoryId": 141,
|
"TerritoryId": 141,
|
||||||
"InteractionType": "AttuneAetheryte",
|
"InteractionType": "AttuneAetheryte",
|
||||||
"AetheryteShortcut": "Ul'dah",
|
"AetheryteShortcut": "Ul'dah",
|
||||||
@ -68,6 +69,16 @@
|
|||||||
"InteractionType": "WalkTo",
|
"InteractionType": "WalkTo",
|
||||||
"TargetTerritoryId": 145
|
"TargetTerritoryId": 145
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -423.0189,
|
||||||
|
"Y": -37.96352,
|
||||||
|
"Z": 176.73677
|
||||||
|
},
|
||||||
|
"TerritoryId": 145,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "Camp Drybone Lantern"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"DataId": 18,
|
"DataId": 18,
|
||||||
"Position": {
|
"Position": {
|
||||||
@ -75,6 +86,7 @@
|
|||||||
"Y": -57.1756,
|
"Y": -57.1756,
|
||||||
"Z": 142.59558
|
"Z": 142.59558
|
||||||
},
|
},
|
||||||
|
"StopDistance": 10,
|
||||||
"TerritoryId": 145,
|
"TerritoryId": 145,
|
||||||
"InteractionType": "AttuneAetheryte"
|
"InteractionType": "AttuneAetheryte"
|
||||||
},
|
},
|
||||||
|
@ -137,7 +137,7 @@
|
|||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
{
|
{
|
||||||
"TerritoryId": 145,
|
"TerritoryId": 133,
|
||||||
"InteractionType": "UseItem",
|
"InteractionType": "UseItem",
|
||||||
"ItemId": 30362,
|
"ItemId": 30362,
|
||||||
"TargetTerritoryId": 140
|
"TargetTerritoryId": 140
|
||||||
|
@ -95,6 +95,26 @@
|
|||||||
{
|
{
|
||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -378.46735,
|
||||||
|
"Y": -38.009487,
|
||||||
|
"Z": 159.38092
|
||||||
|
},
|
||||||
|
"TerritoryId": 145,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "Camp Drybone cliff jump"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -379.3895,
|
||||||
|
"Y": -59.000004,
|
||||||
|
"Z": 147.99257
|
||||||
|
},
|
||||||
|
"TerritoryId": 145,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"DisableNavmesh": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"DataId": 1003929,
|
"DataId": 1003929,
|
||||||
"Position": {
|
"Position": {
|
||||||
|
@ -46,6 +46,7 @@
|
|||||||
"Y": 48.203125,
|
"Y": 48.203125,
|
||||||
"Z": -227.039
|
"Z": -227.039
|
||||||
},
|
},
|
||||||
|
"StopDistance": 10,
|
||||||
"TerritoryId": 140,
|
"TerritoryId": 140,
|
||||||
"InteractionType": "AttuneAetheryte",
|
"InteractionType": "AttuneAetheryte",
|
||||||
"AethernetShortcut": [
|
"AethernetShortcut": [
|
||||||
|
@ -23,6 +23,16 @@
|
|||||||
{
|
{
|
||||||
"Sequence": 1,
|
"Sequence": 1,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"DataId": 3,
|
"DataId": 3,
|
||||||
"Position": {
|
"Position": {
|
||||||
@ -63,6 +73,17 @@
|
|||||||
{
|
{
|
||||||
"Sequence": 255,
|
"Sequence": 255,
|
||||||
"Steps": [
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": 49.65071,
|
||||||
|
"Y": -8.046952,
|
||||||
|
"Z": 102.32186
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "WalkTo",
|
||||||
|
"$": "New Gridania Navmesh workaround",
|
||||||
|
"AetheryteShortcut": "Gridania"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"DataId": 1000100,
|
"DataId": 1000100,
|
||||||
"Position": {
|
"Position": {
|
||||||
@ -71,8 +92,7 @@
|
|||||||
"Z": 115.92273
|
"Z": 115.92273
|
||||||
},
|
},
|
||||||
"TerritoryId": 132,
|
"TerritoryId": 132,
|
||||||
"InteractionType": "Interact",
|
"InteractionType": "Interact"
|
||||||
"AetheryteShortcut": "Gridania"
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,105 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1004884,
|
||||||
|
"Position": {
|
||||||
|
"X": 38.895264,
|
||||||
|
"Y": 1.2000012,
|
||||||
|
"Z": 3.463745
|
||||||
|
},
|
||||||
|
"TerritoryId": 212,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANFST302_00680_Q1_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1002394,
|
||||||
|
"Position": {
|
||||||
|
"X": -69.5354,
|
||||||
|
"Y": -0.50095016,
|
||||||
|
"Z": -9.99469
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Gridania",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "List",
|
||||||
|
"Prompt": "TEXT_MANFST302_00680_Q2_000_1",
|
||||||
|
"Answer": "TEXT_MANFST302_00680_A2_000_2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1001263,
|
||||||
|
"Position": {
|
||||||
|
"X": 181.41443,
|
||||||
|
"Y": -2.3519497,
|
||||||
|
"Z": -240.40594
|
||||||
|
},
|
||||||
|
"TerritoryId": 133,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 152,
|
||||||
|
"AethernetShortcut": [
|
||||||
|
"[Gridania] Aetheryte Plaza",
|
||||||
|
"[Gridania] Lancers' Guild"
|
||||||
|
],
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "List",
|
||||||
|
"ExcelSheet": "Warp",
|
||||||
|
"Prompt": null,
|
||||||
|
"Answer": 131077
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1004886,
|
||||||
|
"Position": {
|
||||||
|
"X": 30.319702,
|
||||||
|
"Y": 8.422709,
|
||||||
|
"Z": 475.30322
|
||||||
|
},
|
||||||
|
"TerritoryId": 152,
|
||||||
|
"InteractionType": "SinglePlayerDuty"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1002394,
|
||||||
|
"Position": {
|
||||||
|
"X": -69.5354,
|
||||||
|
"Y": -0.50095016,
|
||||||
|
"Z": -9.99469
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Gridania"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -4,8 +4,25 @@
|
|||||||
"QuestSequence": [
|
"QuestSequence": [
|
||||||
{
|
{
|
||||||
"Sequence": 0,
|
"Sequence": 0,
|
||||||
"Steps": [],
|
"Steps": [
|
||||||
"Comment": "Quest start is intentionally empty, so you pick a Grand Company"
|
{
|
||||||
|
"DataId": 1004885,
|
||||||
|
"Position": {
|
||||||
|
"X": 36.453735,
|
||||||
|
"Y": 1.2000011,
|
||||||
|
"Z": 4.6845093
|
||||||
|
},
|
||||||
|
"TerritoryId": 212,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "YesNo",
|
||||||
|
"Prompt": "TEXT_MANSEA302_00681_Q1_000_1",
|
||||||
|
"Yes": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Sequence": 1,
|
"Sequence": 1,
|
||||||
|
@ -0,0 +1,62 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1002394,
|
||||||
|
"Position": {
|
||||||
|
"X": -69.5354,
|
||||||
|
"Y": -0.50095016,
|
||||||
|
"Z": -9.99469
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "UseItem",
|
||||||
|
"ItemId": 30362,
|
||||||
|
"TargetTerritoryId": 140
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -492.96475,
|
||||||
|
"Y": 20.999884,
|
||||||
|
"Z": -380.82272
|
||||||
|
},
|
||||||
|
"TerritoryId": 140,
|
||||||
|
"InteractionType": "WalkTo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 2001711,
|
||||||
|
"Position": {
|
||||||
|
"X": -480.9181,
|
||||||
|
"Y": 18.00103,
|
||||||
|
"Z": -386.862
|
||||||
|
},
|
||||||
|
"TerritoryId": 140,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 212
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1005012,
|
||||||
|
"Position": {
|
||||||
|
"X": 22.507019,
|
||||||
|
"Y": 0.9999986,
|
||||||
|
"Z": -2.02948
|
||||||
|
},
|
||||||
|
"TerritoryId": 212,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000168,
|
||||||
|
"Position": {
|
||||||
|
"X": -75.48645,
|
||||||
|
"Y": -0.5013741,
|
||||||
|
"Z": -5.081299
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1002394,
|
||||||
|
"Position": {
|
||||||
|
"X": -69.5354,
|
||||||
|
"Y": -0.50095016,
|
||||||
|
"Z": -9.99469
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Instruction",
|
||||||
|
"Comment": "Buy Serpent Chocobo Issuance"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1000136,
|
||||||
|
"Position": {
|
||||||
|
"X": 32.303345,
|
||||||
|
"Y": -0.050583772,
|
||||||
|
"Z": 70.29822
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1006001,
|
||||||
|
"Position": {
|
||||||
|
"X": 35.38562,
|
||||||
|
"Y": -0.89902794,
|
||||||
|
"Z": 67.551636
|
||||||
|
},
|
||||||
|
"StopDistance": 7,
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000136,
|
||||||
|
"Position": {
|
||||||
|
"X": 32.303345,
|
||||||
|
"Y": -0.050583772,
|
||||||
|
"Z": 70.29822
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,99 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1003281,
|
||||||
|
"Position": {
|
||||||
|
"X": 97.520386,
|
||||||
|
"Y": 40.248554,
|
||||||
|
"Z": 81.1322
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Limsa Lominsa",
|
||||||
|
"AethernetShortcut": ["[Limsa Lominsa] Aetheryte Plaza", "[Limsa Lominsa] The Aftcastle"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1002387,
|
||||||
|
"Position": {
|
||||||
|
"X": 95.750244,
|
||||||
|
"Y": 40.250286,
|
||||||
|
"Z": 76.67651
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Instruction",
|
||||||
|
"Comment": "Buy Storm Chocobo Issuance"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1003597,
|
||||||
|
"Position": {
|
||||||
|
"X": 8.194031,
|
||||||
|
"Y": 39.999973,
|
||||||
|
"Z": 17.746216
|
||||||
|
},
|
||||||
|
"TerritoryId": 128,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"TargetTerritoryId": 129,
|
||||||
|
"DialogueChoices": [
|
||||||
|
{
|
||||||
|
"Type": "List",
|
||||||
|
"ExcelSheet": "Warp",
|
||||||
|
"Prompt": null,
|
||||||
|
"Answer": 131094
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"DataId": 1001027,
|
||||||
|
"Position": {
|
||||||
|
"X": 45.792236,
|
||||||
|
"Y": 20,
|
||||||
|
"Z": -8.1026
|
||||||
|
},
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 2,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1006002,
|
||||||
|
"Position": {
|
||||||
|
"X": 49.576538,
|
||||||
|
"Y": 20,
|
||||||
|
"Z": -5.722229
|
||||||
|
},
|
||||||
|
"StopDistance": 7,
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 255,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1001027,
|
||||||
|
"Position": {
|
||||||
|
"X": 45.792236,
|
||||||
|
"Y": 20,
|
||||||
|
"Z": -8.1026
|
||||||
|
},
|
||||||
|
"TerritoryId": 129,
|
||||||
|
"InteractionType": "Interact"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
44
QuestPaths/ARealmReborn/MSQ-2/A2/3856_We Come in Peace.json
Normal file
44
QuestPaths/ARealmReborn/MSQ-2/A2/3856_We Come in Peace.json
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://carvel.li/questionable/quest-1.0",
|
||||||
|
"Author": "liza",
|
||||||
|
"QuestSequence": [
|
||||||
|
{
|
||||||
|
"Sequence": 0,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"DataId": 1000168,
|
||||||
|
"Position": {
|
||||||
|
"X": -75.48645,
|
||||||
|
"Y": -0.5013741,
|
||||||
|
"Z": -5.081299
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "Interact",
|
||||||
|
"AetheryteShortcut": "Gridania",
|
||||||
|
"SkipIf": [
|
||||||
|
"AetheryteShortcutIfInSameTerritory"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Sequence": 1,
|
||||||
|
"Steps": [
|
||||||
|
{
|
||||||
|
"Position": {
|
||||||
|
"X": -75.48645,
|
||||||
|
"Y": -0.5013741,
|
||||||
|
"Z": -5.081299
|
||||||
|
},
|
||||||
|
"TerritoryId": 132,
|
||||||
|
"InteractionType": "UseItem",
|
||||||
|
"ItemId": 6001,
|
||||||
|
"SkipIf": [
|
||||||
|
"ChocoboUnlocked"
|
||||||
|
],
|
||||||
|
"Comment": "Use Chocobo whistle (if not yet unlocked)"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -350,7 +350,9 @@
|
|||||||
"Never",
|
"Never",
|
||||||
"FlyingLocked",
|
"FlyingLocked",
|
||||||
"FlyingUnlocked",
|
"FlyingUnlocked",
|
||||||
"DifferentTerritory"
|
"DifferentTerritory",
|
||||||
|
"ChocoboUnlocked",
|
||||||
|
"AetheryteShortcutIfInSameTerritory"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -9,5 +9,7 @@ public sealed class SkipConditionConverter() : EnumConverter<ESkipCondition>(Val
|
|||||||
{ ESkipCondition.Never, "Never" },
|
{ ESkipCondition.Never, "Never" },
|
||||||
{ ESkipCondition.FlyingLocked, "FlyingLocked" },
|
{ ESkipCondition.FlyingLocked, "FlyingLocked" },
|
||||||
{ ESkipCondition.FlyingUnlocked, "FlyingUnlocked" },
|
{ ESkipCondition.FlyingUnlocked, "FlyingUnlocked" },
|
||||||
|
{ ESkipCondition.ChocoboUnlocked, "ChocoboUnlocked" },
|
||||||
|
{ ESkipCondition.AetheryteShortcutIfInSameTerritory, "AetheryteShortcutIfInSameTerritory" },
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -10,4 +10,6 @@ public enum ESkipCondition
|
|||||||
Never,
|
Never,
|
||||||
FlyingLocked,
|
FlyingLocked,
|
||||||
FlyingUnlocked,
|
FlyingUnlocked,
|
||||||
|
ChocoboUnlocked,
|
||||||
|
AetheryteShortcutIfInSameTerritory,
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
using Dalamud.Configuration;
|
using Dalamud.Configuration;
|
||||||
|
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
|
||||||
using LLib.ImGui;
|
using LLib.ImGui;
|
||||||
|
|
||||||
namespace Questionable;
|
namespace Questionable;
|
||||||
@ -15,6 +16,7 @@ internal sealed class Configuration : IPluginConfiguration
|
|||||||
{
|
{
|
||||||
public bool AutoAcceptNextQuest { get; set; }
|
public bool AutoAcceptNextQuest { get; set; }
|
||||||
public uint MountId { get; set; } = 71;
|
public uint MountId { get; set; } = 71;
|
||||||
|
public GrandCompany GrandCompany { get; set; } = GrandCompany.None;
|
||||||
}
|
}
|
||||||
|
|
||||||
internal sealed class AdvancedConfiguration
|
internal sealed class AdvancedConfiguration
|
||||||
|
@ -386,10 +386,8 @@ internal sealed class GameUiController : IDisposable
|
|||||||
{
|
{
|
||||||
if (_questController.CurrentQuest?.Quest.QuestId == 245)
|
if (_questController.CurrentQuest?.Quest.QuestId == 245)
|
||||||
{
|
{
|
||||||
// TODO Test this
|
|
||||||
_logger.LogInformation("Closing ContentsTutorial");
|
_logger.LogInformation("Closing ContentsTutorial");
|
||||||
AtkUnitBase* addon = (AtkUnitBase*)args.Addon;
|
AtkUnitBase* addon = (AtkUnitBase*)args.Addon;
|
||||||
//addon->FireCallbackInt(-2);
|
|
||||||
addon->FireCallbackInt(13);
|
addon->FireCallbackInt(13);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -44,7 +44,7 @@ internal sealed class MovementController : IDisposable
|
|||||||
public bool IsNavmeshReady => _navmeshIpc.IsReady;
|
public bool IsNavmeshReady => _navmeshIpc.IsReady;
|
||||||
public bool IsPathRunning => _navmeshIpc.IsPathRunning;
|
public bool IsPathRunning => _navmeshIpc.IsPathRunning;
|
||||||
public bool IsPathfinding => _pathfindTask is { IsCompleted: false };
|
public bool IsPathfinding => _pathfindTask is { IsCompleted: false };
|
||||||
public DestinationData? Destination { get; private set; }
|
public DestinationData? Destination { get; set; }
|
||||||
public DateTime MovementStartedAt { get; private set; } = DateTime.MaxValue;
|
public DateTime MovementStartedAt { get; private set; } = DateTime.MaxValue;
|
||||||
|
|
||||||
public void Update()
|
public void Update()
|
||||||
|
@ -1,23 +1,12 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Numerics;
|
|
||||||
using System.Threading;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using Dalamud.Game.ClientState.Conditions;
|
|
||||||
using Dalamud.Game.ClientState.Keys;
|
using Dalamud.Game.ClientState.Keys;
|
||||||
using Dalamud.Game.ClientState.Objects.Types;
|
|
||||||
using Dalamud.Plugin.Services;
|
using Dalamud.Plugin.Services;
|
||||||
using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions;
|
|
||||||
using FFXIVClientStructs.FFXIV.Client.Game;
|
|
||||||
using FFXIVClientStructs.FFXIV.Client.Game.UI;
|
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Questionable.Controller.Steps;
|
using Questionable.Controller.Steps;
|
||||||
using Questionable.Data;
|
|
||||||
using Questionable.External;
|
|
||||||
using Questionable.Model;
|
using Questionable.Model;
|
||||||
using Questionable.Model.V1;
|
using Questionable.Model.V1;
|
||||||
using Questionable.Model.V1.Converter;
|
|
||||||
|
|
||||||
namespace Questionable.Controller;
|
namespace Questionable.Controller;
|
||||||
|
|
||||||
@ -464,11 +453,6 @@ internal sealed class QuestController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO is this still required?
|
|
||||||
public sealed record StepProgress(
|
|
||||||
DateTime StartedAt,
|
|
||||||
int DialogueChoicesSelected = 0);
|
|
||||||
|
|
||||||
public void Skip(ushort questQuestId, byte currentQuestSequence)
|
public void Skip(ushort questQuestId, byte currentQuestSequence)
|
||||||
{
|
{
|
||||||
lock (_lock)
|
lock (_lock)
|
||||||
@ -498,4 +482,7 @@ internal sealed class QuestController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public sealed record StepProgress(
|
||||||
|
DateTime StartedAt);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,11 @@ internal static class AetheryteShortcut
|
|||||||
|
|
||||||
var task = serviceProvider.GetRequiredService<UseAetheryteShortcut>()
|
var task = serviceProvider.GetRequiredService<UseAetheryteShortcut>()
|
||||||
.With(step, step.AetheryteShortcut.Value, aetheryteData.TerritoryIds[step.AetheryteShortcut.Value]);
|
.With(step, step.AetheryteShortcut.Value, aetheryteData.TerritoryIds[step.AetheryteShortcut.Value]);
|
||||||
return [new WaitConditionTask(gameFunctions.CanTeleport, "CanTeleport"), task];
|
return
|
||||||
|
[
|
||||||
|
new WaitConditionTask(() => gameFunctions.CanTeleport(step.AetheryteShortcut.Value), "CanTeleport"),
|
||||||
|
task
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public ITask CreateTask(Quest quest, QuestSequence sequence, QuestStep step)
|
public ITask CreateTask(Quest quest, QuestSequence sequence, QuestStep step)
|
||||||
@ -64,6 +68,12 @@ internal static class AetheryteShortcut
|
|||||||
ushort territoryType = clientState.TerritoryType;
|
ushort territoryType = clientState.TerritoryType;
|
||||||
if (ExpectedTerritoryId == territoryType)
|
if (ExpectedTerritoryId == territoryType)
|
||||||
{
|
{
|
||||||
|
if (Step.SkipIf.Contains(ESkipCondition.AetheryteShortcutIfInSameTerritory))
|
||||||
|
{
|
||||||
|
logger.LogInformation("Skipping aetheryte teleport due to SkipIf");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
Vector3 pos = clientState.LocalPlayer!.Position;
|
Vector3 pos = clientState.LocalPlayer!.Position;
|
||||||
if (aetheryteData.CalculateDistance(pos, territoryType, TargetAetheryte) < 11 ||
|
if (aetheryteData.CalculateDistance(pos, territoryType, TargetAetheryte) < 11 ||
|
||||||
(Step.AethernetShortcut != null &&
|
(Step.AethernetShortcut != null &&
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions;
|
using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions;
|
||||||
|
using FFXIVClientStructs.FFXIV.Client.Game.UI;
|
||||||
using FFXIVClientStructs.FFXIV.Client.System.Framework;
|
using FFXIVClientStructs.FFXIV.Client.System.Framework;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
@ -17,11 +20,13 @@ internal static class SkipCondition
|
|||||||
if (step.SkipIf.Contains(ESkipCondition.Never))
|
if (step.SkipIf.Contains(ESkipCondition.Never))
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
if (step.SkipIf.Count == 0 && step.CompletionQuestVariablesFlags.Count == 0)
|
var relevantConditions =
|
||||||
|
step.SkipIf.Where(x => x != ESkipCondition.AetheryteShortcutIfInSameTerritory).ToList();
|
||||||
|
if (relevantConditions.Count == 0 && step.CompletionQuestVariablesFlags.Count == 0)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
return serviceProvider.GetRequiredService<CheckTask>()
|
return serviceProvider.GetRequiredService<CheckTask>()
|
||||||
.With(step, quest.QuestId);
|
.With(step, relevantConditions, quest.QuestId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -30,33 +35,42 @@ internal static class SkipCondition
|
|||||||
GameFunctions gameFunctions) : ITask
|
GameFunctions gameFunctions) : ITask
|
||||||
{
|
{
|
||||||
public QuestStep Step { get; set; } = null!;
|
public QuestStep Step { get; set; } = null!;
|
||||||
|
public List<ESkipCondition> SkipConditions { get; set; } = null!;
|
||||||
public ushort QuestId { get; set; }
|
public ushort QuestId { get; set; }
|
||||||
|
|
||||||
public ITask With(QuestStep step, ushort questId)
|
public ITask With(QuestStep step, List<ESkipCondition> skipConditions, ushort questId)
|
||||||
{
|
{
|
||||||
Step = step;
|
Step = step;
|
||||||
|
SkipConditions = skipConditions;
|
||||||
QuestId = questId;
|
QuestId = questId;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool Start()
|
public unsafe bool Start()
|
||||||
{
|
{
|
||||||
logger.LogInformation("Checking skip conditions; {ConfiguredConditions}", string.Join(",", Step.SkipIf));
|
logger.LogInformation("Checking skip conditions; {ConfiguredConditions}", string.Join(",", SkipConditions));
|
||||||
|
|
||||||
if (Step.SkipIf.Contains(ESkipCondition.FlyingUnlocked) &&
|
if (SkipConditions.Contains(ESkipCondition.FlyingUnlocked) &&
|
||||||
gameFunctions.IsFlyingUnlocked(Step.TerritoryId))
|
gameFunctions.IsFlyingUnlocked(Step.TerritoryId))
|
||||||
{
|
{
|
||||||
logger.LogInformation("Skipping step, as flying is unlocked");
|
logger.LogInformation("Skipping step, as flying is unlocked");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Step.SkipIf.Contains(ESkipCondition.FlyingLocked) &&
|
if (SkipConditions.Contains(ESkipCondition.FlyingLocked) &&
|
||||||
!gameFunctions.IsFlyingUnlocked(Step.TerritoryId))
|
!gameFunctions.IsFlyingUnlocked(Step.TerritoryId))
|
||||||
{
|
{
|
||||||
logger.LogInformation("Skipping step, as flying is locked");
|
logger.LogInformation("Skipping step, as flying is locked");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (SkipConditions.Contains(ESkipCondition.ChocoboUnlocked) &&
|
||||||
|
PlayerState.Instance()->IsMountUnlocked(1))
|
||||||
|
{
|
||||||
|
logger.LogInformation("Skipping step, as chocobo is unlocked");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
if (Step is
|
if (Step is
|
||||||
{
|
{
|
||||||
DataId: not null,
|
DataId: not null,
|
||||||
@ -87,6 +101,6 @@ internal static class SkipCondition
|
|||||||
|
|
||||||
public ETaskResult Update() => ETaskResult.SkipRemainingTasksForStep;
|
public ETaskResult Update() => ETaskResult.SkipRemainingTasksForStep;
|
||||||
|
|
||||||
public override string ToString() => $"CheckSkip({string.Join(", ", Step.SkipIf)})";
|
public override string ToString() => $"CheckSkip({string.Join(", ", SkipConditions)})";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -35,6 +35,7 @@ internal static class WaitAtEnd
|
|||||||
return [
|
return [
|
||||||
serviceProvider.GetRequiredService<WaitDelay>(),
|
serviceProvider.GetRequiredService<WaitDelay>(),
|
||||||
notInCombat,
|
notInCombat,
|
||||||
|
serviceProvider.GetRequiredService<WaitDelay>(),
|
||||||
Next(quest, sequence, step)
|
Next(quest, sequence, step)
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -27,8 +27,7 @@ internal static class EquipItem
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
internal sealed class DoEquip(IDataManager dataManager, ILogger<DoEquip> logger)
|
internal sealed class DoEquip(IDataManager dataManager, ILogger<DoEquip> logger) : ITask
|
||||||
: AbstractDelayedTask(TimeSpan.FromSeconds(1))
|
|
||||||
{
|
{
|
||||||
private static readonly IReadOnlyList<InventoryType> SourceInventoryTypes =
|
private static readonly IReadOnlyList<InventoryType> SourceInventoryTypes =
|
||||||
[
|
[
|
||||||
@ -55,6 +54,8 @@ internal static class EquipItem
|
|||||||
private Item _item = null!;
|
private Item _item = null!;
|
||||||
private List<ushort> _targetSlots = [];
|
private List<ushort> _targetSlots = [];
|
||||||
|
|
||||||
|
private DateTime _continueAt = DateTime.MaxValue;
|
||||||
|
|
||||||
public ITask With(uint itemId)
|
public ITask With(uint itemId)
|
||||||
{
|
{
|
||||||
_itemId = itemId;
|
_itemId = itemId;
|
||||||
@ -64,7 +65,32 @@ internal static class EquipItem
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override unsafe bool StartInternal()
|
public bool Start()
|
||||||
|
{
|
||||||
|
Equip();
|
||||||
|
_continueAt = DateTime.Now.AddSeconds(1);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public unsafe ETaskResult Update()
|
||||||
|
{
|
||||||
|
if (DateTime.Now < _continueAt)
|
||||||
|
return ETaskResult.StillRunning;
|
||||||
|
|
||||||
|
InventoryManager* inventoryManager = InventoryManager.Instance();
|
||||||
|
if (inventoryManager == null)
|
||||||
|
return ETaskResult.StillRunning;
|
||||||
|
|
||||||
|
if (_targetSlots.Any(x =>
|
||||||
|
inventoryManager->GetInventorySlot(InventoryType.EquippedItems, x)->ItemID == _itemId))
|
||||||
|
return ETaskResult.TaskComplete;
|
||||||
|
|
||||||
|
Equip();
|
||||||
|
_continueAt = DateTime.Now.AddSeconds(1);
|
||||||
|
return ETaskResult.StillRunning;
|
||||||
|
}
|
||||||
|
|
||||||
|
private unsafe bool Equip()
|
||||||
{
|
{
|
||||||
var inventoryManager = InventoryManager.Instance();
|
var inventoryManager = InventoryManager.Instance();
|
||||||
if (inventoryManager == null)
|
if (inventoryManager == null)
|
||||||
@ -108,26 +134,13 @@ internal static class EquipItem
|
|||||||
int result = inventoryManager->MoveItemSlot(sourceInventoryType, sourceSlot,
|
int result = inventoryManager->MoveItemSlot(sourceInventoryType, sourceSlot,
|
||||||
InventoryType.EquippedItems, targetSlot, 1);
|
InventoryType.EquippedItems, targetSlot, 1);
|
||||||
logger.LogInformation("MoveItemSlot result: {Result}", result);
|
logger.LogInformation("MoveItemSlot result: {Result}", result);
|
||||||
return true;
|
return result == 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override unsafe ETaskResult UpdateInternal()
|
|
||||||
{
|
|
||||||
InventoryManager* inventoryManager = InventoryManager.Instance();
|
|
||||||
if (inventoryManager == null)
|
|
||||||
return ETaskResult.StillRunning;
|
|
||||||
|
|
||||||
if (_targetSlots.Any(x =>
|
|
||||||
inventoryManager->GetInventorySlot(InventoryType.EquippedItems, x)->ItemID == _itemId))
|
|
||||||
return ETaskResult.TaskComplete;
|
|
||||||
|
|
||||||
return ETaskResult.StillRunning;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static List<ushort>? GetEquipSlot(Item item)
|
private static List<ushort>? GetEquipSlot(Item item)
|
||||||
{
|
{
|
||||||
return item.EquipSlotCategory.Row switch
|
return item.EquipSlotCategory.Row switch
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using FFXIVClientStructs.FFXIV.Client.Game;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
using Questionable.Controller.Steps.BaseTasks;
|
using Questionable.Controller.Steps.BaseTasks;
|
||||||
using Questionable.Model;
|
using Questionable.Model;
|
||||||
using Questionable.Model.V1;
|
using Questionable.Model.V1;
|
||||||
@ -9,6 +11,8 @@ namespace Questionable.Controller.Steps.InteractionFactory;
|
|||||||
|
|
||||||
internal static class UseItem
|
internal static class UseItem
|
||||||
{
|
{
|
||||||
|
public const int VesperBayAetheryteTicket = 30362;
|
||||||
|
|
||||||
internal sealed class Factory(IServiceProvider serviceProvider) : ITaskFactory
|
internal sealed class Factory(IServiceProvider serviceProvider) : ITaskFactory
|
||||||
{
|
{
|
||||||
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
|
public IEnumerable<ITask> CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step)
|
||||||
@ -45,30 +49,58 @@ internal static class UseItem
|
|||||||
=> throw new InvalidOperationException();
|
=> throw new InvalidOperationException();
|
||||||
}
|
}
|
||||||
|
|
||||||
internal abstract class UseItemBase : ITask
|
internal abstract class UseItemBase(ILogger logger) : ITask
|
||||||
{
|
{
|
||||||
private bool _usedItem;
|
private bool _usedItem;
|
||||||
private DateTime _continueAt;
|
private DateTime _continueAt;
|
||||||
|
private int _itemCount;
|
||||||
|
|
||||||
public uint ItemId { get; set; }
|
public uint ItemId { get; set; }
|
||||||
|
|
||||||
protected abstract bool UseItem();
|
protected abstract bool UseItem();
|
||||||
|
|
||||||
public bool Start()
|
public unsafe bool Start()
|
||||||
{
|
{
|
||||||
|
InventoryManager* inventoryManager = InventoryManager.Instance();
|
||||||
|
if (inventoryManager == null)
|
||||||
|
throw new TaskException("No InventoryManager");
|
||||||
|
|
||||||
|
_itemCount = inventoryManager->GetInventoryItemCount(ItemId);
|
||||||
|
if (_itemCount == 0)
|
||||||
|
throw new TaskException($"Don't have any {ItemId} in inventory (NQ only)");
|
||||||
|
|
||||||
_usedItem = UseItem();
|
_usedItem = UseItem();
|
||||||
if (ItemId == 30362) // vesper bay aether ticket
|
if (ItemId == VesperBayAetheryteTicket)
|
||||||
_continueAt = DateTime.Now.AddSeconds(11);
|
_continueAt = DateTime.Now.AddSeconds(11);
|
||||||
else
|
else
|
||||||
_continueAt = DateTime.Now.AddSeconds(2);
|
_continueAt = DateTime.Now.AddSeconds(2);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ETaskResult Update()
|
public unsafe ETaskResult Update()
|
||||||
{
|
{
|
||||||
if (DateTime.Now <= _continueAt)
|
if (DateTime.Now <= _continueAt)
|
||||||
return ETaskResult.StillRunning;
|
return ETaskResult.StillRunning;
|
||||||
|
|
||||||
|
if (ItemId == VesperBayAetheryteTicket)
|
||||||
|
{
|
||||||
|
InventoryManager* inventoryManager = InventoryManager.Instance();
|
||||||
|
if (inventoryManager == null)
|
||||||
|
{
|
||||||
|
logger.LogWarning("InventoryManager is not available");
|
||||||
|
return ETaskResult.StillRunning;
|
||||||
|
}
|
||||||
|
|
||||||
|
int itemCount = inventoryManager->GetInventoryItemCount(ItemId);
|
||||||
|
if (itemCount == _itemCount)
|
||||||
|
{
|
||||||
|
// TODO Better handling for game-provided errors, i.e. reacting to the 'Could not use' messages. UseItem() is successful in this case (and returns 0)
|
||||||
|
logger.LogInformation("Attempted to use vesper bay aetheryte ticket, but it didn't consume an item - reattempting next frame");
|
||||||
|
_usedItem = false;
|
||||||
|
return ETaskResult.StillRunning;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!_usedItem)
|
if (!_usedItem)
|
||||||
{
|
{
|
||||||
_usedItem = UseItem();
|
_usedItem = UseItem();
|
||||||
@ -81,7 +113,7 @@ internal static class UseItem
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
internal sealed class UseOnGround(GameFunctions gameFunctions) : UseItemBase
|
internal sealed class UseOnGround(GameFunctions gameFunctions, ILogger<UseOnGround> logger) : UseItemBase(logger)
|
||||||
{
|
{
|
||||||
public uint DataId { get; set; }
|
public uint DataId { get; set; }
|
||||||
|
|
||||||
@ -97,7 +129,7 @@ internal static class UseItem
|
|||||||
public override string ToString() => $"UseItem({ItemId} on ground at {DataId})";
|
public override string ToString() => $"UseItem({ItemId} on ground at {DataId})";
|
||||||
}
|
}
|
||||||
|
|
||||||
internal sealed class UseOnObject(GameFunctions gameFunctions) : UseItemBase
|
internal sealed class UseOnObject(GameFunctions gameFunctions, ILogger<UseOnObject> logger) : UseItemBase(logger)
|
||||||
{
|
{
|
||||||
public uint DataId { get; set; }
|
public uint DataId { get; set; }
|
||||||
|
|
||||||
@ -113,7 +145,7 @@ internal static class UseItem
|
|||||||
public override string ToString() => $"UseItem({ItemId} on {DataId})";
|
public override string ToString() => $"UseItem({ItemId} on {DataId})";
|
||||||
}
|
}
|
||||||
|
|
||||||
internal sealed class Use(GameFunctions gameFunctions) : UseItemBase
|
internal sealed class Use(GameFunctions gameFunctions, ILogger<Use> logger) : UseItemBase(logger)
|
||||||
{
|
{
|
||||||
public ITask With(uint itemId)
|
public ITask With(uint itemId)
|
||||||
{
|
{
|
||||||
|
@ -32,6 +32,7 @@ using ContentFinderCondition = Lumina.Excel.GeneratedSheets.ContentFinderConditi
|
|||||||
using ContentTalk = Lumina.Excel.GeneratedSheets.ContentTalk;
|
using ContentTalk = Lumina.Excel.GeneratedSheets.ContentTalk;
|
||||||
using Emote = Lumina.Excel.GeneratedSheets.Emote;
|
using Emote = Lumina.Excel.GeneratedSheets.Emote;
|
||||||
using GameObject = Dalamud.Game.ClientState.Objects.Types.GameObject;
|
using GameObject = Dalamud.Game.ClientState.Objects.Types.GameObject;
|
||||||
|
using GrandCompany = FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany;
|
||||||
using Quest = Questionable.Model.Quest;
|
using Quest = Questionable.Model.Quest;
|
||||||
using TerritoryType = Lumina.Excel.GeneratedSheets.TerritoryType;
|
using TerritoryType = Lumina.Excel.GeneratedSheets.TerritoryType;
|
||||||
|
|
||||||
@ -102,6 +103,50 @@ internal sealed unsafe class GameFunctions
|
|||||||
public DateTime ReturnRequestedAt { get; set; } = DateTime.MinValue;
|
public DateTime ReturnRequestedAt { get; set; } = DateTime.MinValue;
|
||||||
|
|
||||||
public (ushort CurrentQuest, byte Sequence) GetCurrentQuest()
|
public (ushort CurrentQuest, byte Sequence) GetCurrentQuest()
|
||||||
|
{
|
||||||
|
var (currentQuest, sequence) = GetCurrentQuestInternal();
|
||||||
|
QuestManager* questManager = QuestManager.Instance();
|
||||||
|
PlayerState* playerState = PlayerState.Instance();
|
||||||
|
|
||||||
|
if (currentQuest == 0)
|
||||||
|
{
|
||||||
|
if (_clientState.TerritoryType == 181) // Starting in Limsa
|
||||||
|
return (107, 0);
|
||||||
|
if (_clientState.TerritoryType == 183) // Starting in Gridania
|
||||||
|
return (39, 0);
|
||||||
|
return default;
|
||||||
|
}
|
||||||
|
else if (currentQuest == 681)
|
||||||
|
{
|
||||||
|
// if we have already picked up the GC quest, just return the progress for it
|
||||||
|
if (questManager->IsQuestAccepted(currentQuest) || QuestManager.IsQuestComplete(currentQuest))
|
||||||
|
return (currentQuest, sequence);
|
||||||
|
|
||||||
|
// The company you keep...
|
||||||
|
return _configuration.General.GrandCompany switch
|
||||||
|
{
|
||||||
|
GrandCompany.TwinAdder => (680, 0),
|
||||||
|
GrandCompany.Maelstrom => (681, 0),
|
||||||
|
_ => default
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else if (currentQuest == 3856 && !playerState->IsMountUnlocked(1)) // we come in peace
|
||||||
|
{
|
||||||
|
ushort chocoboQuest = (GrandCompany)playerState->GrandCompany switch
|
||||||
|
{
|
||||||
|
GrandCompany.TwinAdder => 700,
|
||||||
|
GrandCompany.Maelstrom => 701,
|
||||||
|
_ => 0
|
||||||
|
};
|
||||||
|
|
||||||
|
if (chocoboQuest != 0 && !QuestManager.IsQuestComplete(chocoboQuest))
|
||||||
|
return (chocoboQuest, QuestManager.GetQuestSequence(chocoboQuest));
|
||||||
|
}
|
||||||
|
|
||||||
|
return (currentQuest, sequence);
|
||||||
|
}
|
||||||
|
|
||||||
|
public (ushort CurrentQuest, byte Sequence) GetCurrentQuestInternal()
|
||||||
{
|
{
|
||||||
ushort currentQuest;
|
ushort currentQuest;
|
||||||
|
|
||||||
@ -135,12 +180,7 @@ internal sealed unsafe class GameFunctions
|
|||||||
|
|
||||||
currentQuest = scenarioTree->Data->CurrentScenarioQuest;
|
currentQuest = scenarioTree->Data->CurrentScenarioQuest;
|
||||||
if (currentQuest == 0)
|
if (currentQuest == 0)
|
||||||
{
|
|
||||||
if (_clientState.TerritoryType == 181) // Starting Limsa
|
|
||||||
return (107, 0);
|
|
||||||
|
|
||||||
return default;
|
return default;
|
||||||
}
|
|
||||||
|
|
||||||
return (currentQuest, QuestManager.GetQuestSequence(currentQuest));
|
return (currentQuest, QuestManager.GetQuestSequence(currentQuest));
|
||||||
}
|
}
|
||||||
@ -157,39 +197,23 @@ internal sealed unsafe class GameFunctions
|
|||||||
|
|
||||||
var uiState = UIState.Instance();
|
var uiState = UIState.Instance();
|
||||||
return uiState != null && uiState->IsAetheryteUnlocked(aetheryteId);
|
return uiState != null && uiState->IsAetheryteUnlocked(aetheryteId);
|
||||||
/*
|
|
||||||
var telepo = Telepo.Instance();
|
|
||||||
if (telepo == null || telepo->UpdateAetheryteList() == null)
|
|
||||||
{
|
|
||||||
subIndex = 0;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (ulong i = 0; i < telepo->TeleportList.Size(); ++i)
|
|
||||||
{
|
|
||||||
var data = telepo->TeleportList.Get(i);
|
|
||||||
if (data.AetheryteId == aetheryteId)
|
|
||||||
{
|
|
||||||
subIndex = data.SubIndex;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
subIndex = 0;
|
|
||||||
return false;
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsAetheryteUnlocked(EAetheryteLocation aetheryteLocation)
|
public bool IsAetheryteUnlocked(EAetheryteLocation aetheryteLocation)
|
||||||
=> IsAetheryteUnlocked((uint)aetheryteLocation, out _);
|
=> IsAetheryteUnlocked((uint)aetheryteLocation, out _);
|
||||||
|
|
||||||
public bool CanTeleport() => ActionManager.Instance()->GetActionStatus(ActionType.Action, 5) == 0;
|
public bool CanTeleport(EAetheryteLocation aetheryteLocation)
|
||||||
|
{
|
||||||
|
if ((ushort)aetheryteLocation == PlayerState.Instance()->HomeAetheryteId &&
|
||||||
|
ActionManager.Instance()->GetActionStatus(ActionType.GeneralAction, 8) == 0)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
return ActionManager.Instance()->GetActionStatus(ActionType.Action, 5) == 0;
|
||||||
|
}
|
||||||
|
|
||||||
public bool TeleportAetheryte(uint aetheryteId)
|
public bool TeleportAetheryte(uint aetheryteId)
|
||||||
{
|
{
|
||||||
var status = ActionManager.Instance()->GetActionStatus(ActionType.Action, 5);
|
|
||||||
if (status != 0)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
if (IsAetheryteUnlocked(aetheryteId, out var subIndex))
|
if (IsAetheryteUnlocked(aetheryteId, out var subIndex))
|
||||||
{
|
{
|
||||||
@ -201,8 +225,9 @@ internal sealed unsafe class GameFunctions
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// fallback if return isn't available or (more likely) on a different aetheryte
|
if (ActionManager.Instance()->GetActionStatus(ActionType.Action, 5) == 0)
|
||||||
return Telepo.Instance()->Teleport(aetheryteId, subIndex);
|
// fallback if return isn't available or (more likely) on a different aetheryte
|
||||||
|
return Telepo.Instance()->Teleport(aetheryteId, subIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net8.0-windows</TargetFramework>
|
<TargetFramework>net8.0-windows</TargetFramework>
|
||||||
<Version>0.14</Version>
|
<Version>0.15</Version>
|
||||||
<LangVersion>12</LangVersion>
|
<LangVersion>12</LangVersion>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
|
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Diagnostics.CodeAnalysis;
|
using System.Diagnostics.CodeAnalysis;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using Dalamud.Interface.Colors;
|
using Dalamud.Interface.Colors;
|
||||||
@ -8,6 +7,7 @@ using Dalamud.Plugin.Services;
|
|||||||
using ImGuiNET;
|
using ImGuiNET;
|
||||||
using LLib.ImGui;
|
using LLib.ImGui;
|
||||||
using Lumina.Excel.GeneratedSheets;
|
using Lumina.Excel.GeneratedSheets;
|
||||||
|
using GrandCompany = FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany;
|
||||||
|
|
||||||
namespace Questionable.Windows;
|
namespace Questionable.Windows;
|
||||||
|
|
||||||
@ -19,6 +19,9 @@ internal sealed class ConfigWindow : LWindow, IPersistableWindowConfig
|
|||||||
private readonly uint[] _mountIds;
|
private readonly uint[] _mountIds;
|
||||||
private readonly string[] _mountNames;
|
private readonly string[] _mountNames;
|
||||||
|
|
||||||
|
private readonly string[] _grandCompanyNames =
|
||||||
|
["None (manually pick quest)", "Maelstrom", "Twin Adder"/*, "Immortal Flames"*/];
|
||||||
|
|
||||||
[SuppressMessage("Performance", "CA1861", Justification = "One time initialization")]
|
[SuppressMessage("Performance", "CA1861", Justification = "One time initialization")]
|
||||||
public ConfigWindow(DalamudPluginInterface pluginInterface, Configuration configuration, IDataManager dataManager)
|
public ConfigWindow(DalamudPluginInterface pluginInterface, Configuration configuration, IDataManager dataManager)
|
||||||
: base("Config - Questionable###QuestionableConfig", ImGuiWindowFlags.AlwaysAutoResize)
|
: base("Config - Questionable###QuestionableConfig", ImGuiWindowFlags.AlwaysAutoResize)
|
||||||
@ -58,6 +61,14 @@ internal sealed class ConfigWindow : LWindow, IPersistableWindowConfig
|
|||||||
Save();
|
Save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int grandCompany = (int)_configuration.General.GrandCompany;
|
||||||
|
if (ImGui.Combo("Preferred Grand Company", ref grandCompany, _grandCompanyNames,
|
||||||
|
_grandCompanyNames.Length))
|
||||||
|
{
|
||||||
|
_configuration.General.GrandCompany = (GrandCompany)grandCompany;
|
||||||
|
Save();
|
||||||
|
}
|
||||||
|
|
||||||
ImGui.EndTabItem();
|
ImGui.EndTabItem();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -310,8 +310,12 @@ internal sealed class DebugWindow : LWindow, IPersistableWindowConfig
|
|||||||
map->FlagMapMarker.TerritoryId != _clientState.TerritoryType ||
|
map->FlagMapMarker.TerritoryId != _clientState.TerritoryType ||
|
||||||
!_navmeshIpc.IsReady);
|
!_navmeshIpc.IsReady);
|
||||||
if (ImGui.Button("Move to Flag"))
|
if (ImGui.Button("Move to Flag"))
|
||||||
|
{
|
||||||
|
_movementController.Destination = null;
|
||||||
_gameFunctions.ExecuteCommand(
|
_gameFunctions.ExecuteCommand(
|
||||||
$"/vnav {(_gameFunctions.IsFlyingUnlockedInCurrentZone() ? "flyflag" : "moveflag")}");
|
$"/vnav {(_gameFunctions.IsFlyingUnlockedInCurrentZone() ? "flyflag" : "moveflag")}");
|
||||||
|
}
|
||||||
|
|
||||||
ImGui.EndDisabled();
|
ImGui.EndDisabled();
|
||||||
|
|
||||||
ImGui.SameLine();
|
ImGui.SameLine();
|
||||||
|
Loading…
Reference in New Issue
Block a user